Commit f6ccb28e by zhangzhen

1

parent dbf6f831
<template>
<view>
<cu-custom bgColor="bg-blue" :isBack="true">
<block slot="backText">
<view class="list-icon" @tap="onBack">
<text class="cuIcon-back text-white text-bold text-xl"></text>
</view>
</block>
<block slot="content">
<text class="text-white">结算单详情</text>
</block>
</cu-custom>
<view v-if="statusBarHeight>0" class="content-black" :style="{height:statusBarHeight+45+'px'}">
</view>
<view class="flex-col content-part-1">
<view class="flex-row header">
<image src="../../static/icon10.png" mode="widthFix"></image>
<text class="text-lg text-bold text-black">详情</text>
</view>
<view class="form-content-box margin-bottom">
<form>
<view class="cu-form-group">
<view class="title">
<text>项目名称:</text>
</view>
<view class="">
<text>{{orderInfo.projName}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>公司名称:</text>
</view>
<view class="">
<text>{{orderInfo.companyName}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>主合同名称:</text>
</view>
<view class="">
<text>{{orderInfo.contractName}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>主合同号:</text>
</view>
<view class="">
<text>{{orderInfo.contractNumber}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>项目编号:</text>
</view>
<view class="">
<text>{{orderInfo.projCode}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>结算编号:</text>
</view>
<view class="">
<text>{{orderInfo.settlementNumber}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>结算类别:</text>
</view>
<view class="">
<text>{{settlementTypeEnum[orderInfo.settlementType]}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>结算金额:</text>
</view>
<view class="">
<text>{{orderInfo.thisSettlementAmount}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>结算税额:</text>
</view>
<view class="">
<text>{{orderInfo.thisSettlementTax}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>结算含税额:</text>
</view>
<view class="">
<text>{{orderInfo.thisPriceTax}}</text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text v-if="orderInfo.reviewStatus !=3" class="text-xl text-red">*</text>
<text>结算日期:</text>
</view>
<view v-if="orderInfo.reviewStatus ==3" class="">
<text>{{orderInfo.contractDate}}</text>
</view>
<view v-else class="text-blue" @tap="onOpenCalendar">
<text>{{orderInfo.contractDate||"请选择日期"}}</text>
<text class="cuIcon-right"></text>
</view>
</view>
<view class="cu-form-group">
<view class="title">
<text>审批状态:</text>
</view>
<view class="">
<text>{{submitStatusEnum[orderInfo.reviewStatus]}}</text>
</view>
</view>
</form>
</view>
</view>
<view v-if="orderInfo.reviewStatus && orderInfo.reviewStatus!=3" class="footer-box">
<button class="cu-btn block bg-blue" @tap="onSubmit(1)">提交</button>
</view>
<u-calendar :show="show2" mode="single" :defaultDate="orderInfo.signingDate" :minDate="minDate" :monthNum='4'
@confirm="onConfirm" @close="onCancel"></u-calendar>
<u-modal :show="show" title="提示" :content='content' :showCancelButton="true" @confirm="onSave"
@cancel="onCancel" :asyncClose="true"></u-modal>
</view>
</template>
<script>
import {
toJsonData
} from "@/utils/tools.js";
import moment from "@/common/moment.js";
import {
getParamsData
} from "@/api/product-warehousing.js";
import { getList } from "@/api/settlement-doc.js";
export default {
data() {
return {
border: 'none',
show: false,
show2: false,
titleText: '添加',
minDate: moment().subtract(2, 'M').format("YYYY-MM-DD"),
content: "请确认是否进行审核操作?",
statusBarHeight: uni.getStorageSync("statusHeight") || 0,
orderInfo: {},
id: '',
submitStatusEnum:{
3:'已提交',
2:'未提交',
1:'已提交',
0:"待审核"
},
settlementTypeEnum:{
1:'部分结算',
2:'最终结算'
}
};
},
onLoad(option) {
if (option && option.id) {
this.id = option.id
this.subId = option.subId || ''
this.titleText = option.subId ? '编辑' : '添加'
}
this.onLoading();
},
methods: {
onSubmit(t) {
this.show = true
},
onOpenCalendar() {
this.show2 = true;
},
onCancel() {
this.show = false;
this.show2 = false;
},
onConfirm(e) {
this.orderInfo.signingDate = e[0];
this.onCancel();
},
onSave() {
this.show = false;
uni.showLoading({
title: "加载中..."
})
updateSubmitStatus({
...this.orderInfo,
reviewStatus:3,
signingDate: moment(this.orderInfo.signingDate).format("YYYYMMDD")
}).then(res => {
uni.hideLoading();
if (res.data.__sys__.status === 0) {
uni.showToast({
icon: "success",
title: "提交成功"
})
setTimeout(() => {
this.onBack();
}, 1500)
}
})
},
onBack() {
uni.redirectTo({
url:'/pages/settlement-doc/list'
})
},
onLoading() {
this.onGetList();
},
onGetList() {
uni.showLoading({
title: "加载中"
})
getList({
id: this.id
}).then(res => {
uni.hideLoading()
let list = toJsonData(res.data.__blocks__.result.rows, res.data.__blocks__.result.meta
.columns);
if (list && list.length) {
this.orderInfo = {
...list[0],
signingDate: moment(list[0].signingDate).format("YYYY-MM-DD")
}
}
})
}
}
}
</script>
<style>
page {
background-color: #f1f1f1;
}
</style>
<style lang="scss" scoped>
.cu-form-group {
picker {
padding-right: 0;
}
}
.header-title {
display: flex;
flex-direction: row;
width: 90%;
align-items: center;
margin: 30upx auto 12upx;
.flex-between {
display: flex;
flex: 1;
justify-content: center;
align-items: center;
border-radius: 20upx;
padding: 16upx 20upx;
background-color: rgba(246, 246, 248, 1);
.image {
width: 34upx;
margin-right: 8upx;
max-height: 42upx;
}
.text-blue {
color: #4a93f8;
font-weight: bold;
}
}
}
.u-tabs-box {
width: 70%;
margin: 0 auto;
}
.data-content {
display: flex;
flex-direction: column;
margin: 0 auto 30upx;
width: 96%;
.circle-par {
display: flex;
justify-content: center;
align-items: center;
}
.header {
border-radius: 12upx 12upx 0 0;
background-color: #eef2fe;
color: #101010;
font-size: 30upx;
border: 1px solid #d1dcfd;
padding: 14upx 24upx;
}
.content {
border-radius: 0 0 12upx 12upx;
background-color: #ffffff;
color: #101010;
font-size: 30upx;
border: 1px solid #cecece;
border-top: none;
}
}
.flex-content {
display: flex;
width: 100%;
justify-content: center;
}
.part-3 {
flex-direction: column;
padding-bottom: 120upx;
.content-item {
display: flex;
flex-direction: column;
width: 90%;
margin: 24upx auto 8upx;
padding-bottom: 24upx;
.header-title {
position: relative;
width: 100%;
margin: 0;
image {
width: 100%;
max-height: 100upx;
}
.flex-between {
position: absolute;
top: 0;
left: 12%;
width: 88%;
height: 70%;
padding: 0;
justify-content: space-between;
background-color: transparent;
}
}
.content-box {
position: relative;
z-index: 2;
box-shadow: 0 0 12upx rgba(0, 0, 0, 0.34);
border-radius: 12upx;
margin-top: -20upx;
background-color: #ffffff;
padding: 24upx;
.flex-wrap {
display: flex;
flex-wrap: wrap;
.margin-sm {
margin: 10upx;
}
}
}
}
.content-item:last-child {
border-bottom: none;
}
}
.flex-center {
display: flex;
align-items: center;
}
.line-progress {
align-items: center;
}
.u-page__item__slot-icon {
width: 24px;
height: 24px;
}
.part-left {
align-items: center;
}
.circle-center {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
.margin-top-sm {
margin-top: 10upx;
}
.flex-row {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
}
}
.icon {
width: 36upx;
max-height: 50upx;
margin-right: 6upx;
}
.flex-row-center {
display: flex;
flex-direction: row;
align-items: center;
}
.content-part-1 {
display: flex;
flex-direction: column;
align-items: center;
.header {
display: flex;
flex-direction: row;
align-items: center;
width: 92%;
padding: 30upx 0;
image {
width: 20px;
height: 20px;
margin-right: 6upx;
}
}
.form-content-box {
width: 100%;
padding: 12upx 0;
border-radius: 4upx;
// box-shadow: 0 0 8upx rgba(0, 0, 0, 0.34);
background-color: #ffffff;
.cu-form-group {
height: 32px;
min-height: 32px;
padding: 1px 10px 1px 30upx;
.title {
display: flex;
flex-direction: row;
width: 220upx;
align-items: center;
}
}
.action-box {
display: flex;
flex-direction: row;
justify-content: flex-end;
}
}
.footer-content {
display: flex;
justify-content: center;
align-items: center;
width: 100vw;
height: 120upx;
margin-bottom: 100upx;
.btn-box {
width: 80%;
}
}
}
.order-content-box {
display: flex;
flex-direction: column;
width: 100%;
background-color: #ffffff;
.header {
display: flex;
flex-direction: row;
align-items: center;
width: 100%;
padding: 24upx;
image {
width: 20px;
height: 20px;
margin-right: 6upx;
}
}
.content-box {
position: relative;
z-index: 2;
padding: 0 24upx 24upx;
.flex-row {
margin: 6upx 0;
.text-title {
font-size: 30upx;
}
.part-1 {
font-size: 32upx;
width: 140upx;
text-align-last: justify;
}
.part-2 {
margin-right: 24upx;
}
}
.btn-box {
position: absolute;
right: 24upx;
bottom: 16upx;
}
}
}
.footer-box {
position: fixed;
left: 0;
bottom: 0;
display: flex;
flex-direction: row;
width: 100%;
padding: 24upx 36upx;
background-color: #ffffff;
z-index: 8;
.cu-btn {
display: flex;
flex: 1;
margin: 0 20upx;
}
}
.content-part-2 {
.form-content-box {
display: flex;
background-color: transparent;
justify-content: center;
}
}
.sub-item-box {
width: 92%;
padding: 20upx;
border-radius: 12upx;
background-color: #ffffff;
box-shadow: 0 4upx 6upx rgba(0, 0, 0, 0.34);
margin-bottom: 120upx;
}
.form-item-label {
display: flex;
flex-direction: row;
align-items: center;
.text-blue {
white-space: normal;
}
}
.cu-form-group uni-picker::after {
color: transparent;
}
</style>
\ No newline at end of file
<template>
<view>
<cu-custom bgColor="bg-blue" :isBack="true">
<block slot="backText">
<view class="list-icon" @tap="onBack">
<text class="cuIcon-back text-white text-bold text-xl"></text>
</view>
</block>
<block slot="content">
<text class="text-white">选择{{selectTypeEnum[selectIndex]}}</text>
</block>
<block slot="right">
<text class="text-white text-bold text-lg margin-right" @tap="onCheck">确 定</text>
</block>
</cu-custom>
<view v-if="statusBarHeight>0" class="content-black" :style="{height:statusBarHeight+45+'px'}">
</view>
<view class="flex-col data-content" >
<view class="flex-col part-3">
<view v-for="(item,k) in projectDataList" :key="k" class="content-item" @tap="onSelect(k)">
<view v-if="selectIndex==3" class="flex-col content-box" :class="k === current?'active':''">
<view class="flex-row">
<text class="text-gray part-1">甲方名称</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.partyA}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">主合同名称</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.contractName}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">主合同号</text>
<text class="text-gray part-2">:</text>
<text class="text-title">{{item.contractNumber}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">项目编号</text>
<text class="text-gray part-2">:</text>
<text class="text-title">{{item.projCode}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">乙方名称</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.partyB}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">合同总价</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{Number(item.totalContractPriceIncluding)}}</text>
</view>
</view>
<view v-else-if="selectIndex==2" class="flex-col content-box" :class="k === current?'active':''">
<view class="flex-row">
<text class="text-gray part-1">甲方名称</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.partyA}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">主合同名称</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.contractName}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">主合同号</text>
<text class="text-gray part-2">:</text>
<text class="text-title">{{item.contractNumber}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">项目编号</text>
<text class="text-gray part-2">:</text>
<text class="text-title">{{item.projCode}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">乙方名称</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.partyB}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">扣款事由</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.contractContent}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">扣款金额</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{Number(item.totalContractPriceIncluding)}}</text>
</view>
</view>
<view v-else-if="selectIndex==1" class="flex-col content-box" :class="k === current?'active':''">
<view class="flex-row">
<text class="text-gray part-1">公司名称</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.companyName}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">清单</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.inventory}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">合同号</text>
<text class="text-gray part-2">:</text>
<text class="text-title">{{item.contractNumber}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">暂定工程量</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{item.provisionalQuantity}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">除税单价/元</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{Number(item.unitPriceExcludingTax)}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">不含税总价</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{Number(item.totalPriceExcluding)}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">含税总价</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{Number(item.totalPriceIncluding)}}</text>
</view>
<view class="flex-row">
<text class="text-gray part-1">人工费/元</text>
<text class="text-gray part-2">:</text>
<text class="text-title ellipsis">{{Number(item.laborCosts)}}</text>
</view>
</view>
</view>
</view>
<view v-if="projectDataList.length <= 0" class="empty-box">
<u-empty text="暂无数据" textColor='#C1C1C1' width="120">
</u-empty>
</view>
</view>
</view>
</template>
<script>
import {toJsonData} from "@/utils/tools.js";
import { getList1,getList2,getList3,getList4,getList5 } from "@/api/settlement-doc.js";
import {getDict} from "@/api/index.js"
export default {
data() {
return {
projectDataList:[],
statusBarHeight: uni.getStorageSync("statusHeight") || 0,
status: 'nomore ',
loadingText: '努力加载中',
loadmoreText: '上划加载',
nomoreText: '到底啦',
queryData: {
contractNumber:''
},
pageData:{
showCount: "true",
limit:1000,
offset:0
},
current:0,
eventChannel: null,
contractType:1,
contractTypeEnum:{},
selectIndex:1,
selectTypeEnum:{
1:"合同清单",
2:"扣款单",
3:"签证单"
}
};
},
onLoad(option) {
if(option && option.selectIndex){
this.selectIndex = option.selectIndex
}
if(option && option.contractNumber){
this.queryData.contractNumber = option.contractNumber
}
if(option && option.contractType){
this.contractType = option.contractType
}
this.eventChannel = this.getOpenerEventChannel();
this.onLoading();
},
methods: {
onCheck(){
let unitPrice = 0;
if(this.selectIndex == 2){
unitPrice = 0 - Number(this.projectDataList[this.current].totalContractPriceIncluding)
}else{
unitPrice = this.projectDataList[this.current].unitPriceExcludingTax || this.projectDataList[this.current].totalContractPriceIncluding
}
let thisEngineeringQuantity = this.projectDataList[this.current].provisionalQuantity || 1
this.eventChannel.emit('acceptDataFromOpenedPage2', {
settlementBasis:this.selectTypeEnum[this.selectIndex],
taskName:'',
engineeringContent:"",
thisEngineeringQuantity,
cumulativeEngineeringQuantity:'',
unit:"",
unitPrice,
totalPrice: Number(thisEngineeringQuantity)* Number(unitPrice),
selectIndex: this.selectIndex
} );
this.onBack();
},
onSelect(k){
this.current = k;
},
onBack(){
uni.navigateBack();
},
onLoading() {
getDict({
codeset:'hggp.cw.contractType'
}).then(res=>{
if(res.data.list && res.data.list.length){
res.data.list.forEach(item=>{
this.contractTypeEnum[item.value] = item.label
})
}
if(this.selectIndex ==1){
if(this.contractType ==2){
this.onGetList4()
}else{
this.onGetList();
}
}else if(this.selectIndex ==2){
this.onGetList2();
}else if(this.selectIndex ==3){
if(this.contractType ==2){
this.onGetList5();
}else{
this.onGetList3();
}
}
})
},
onGetList() {
uni.showLoading({
title: "加载中"
})
getList1({
...this.queryData
},this.pageData).then(res => {
uni.hideLoading();
this.projectDataList= toJsonData(res.data.__blocks__.result.rows,res.data.__blocks__.result.meta.columns);
console.log(this.projectDataList)
})
},
onGetList2() {
uni.showLoading({
title: "加载中"
})
getList2({
...this.queryData
},this.pageData).then(res => {
uni.hideLoading();
this.projectDataList = toJsonData(res.data.__blocks__.result2.rows,res.data.__blocks__.result2.meta.columns)
})
},
onGetList3() {
uni.showLoading({
title: "加载中"
})
getList3({
...this.queryData
},this.pageData).then(res => {
uni.hideLoading();
this.projectDataList = toJsonData(res.data.__blocks__.result3.rows,res.data.__blocks__.result3.meta.columns)
})
},
onGetList4() {
uni.showLoading({
title: "加载中"
})
getList4({
...this.queryData
},this.pageData).then(res => {
uni.hideLoading();
this.projectDataList = toJsonData(res.data.__blocks__.result1.rows,res.data.__blocks__.result1.meta.columns)
})
},
onGetList5() {
uni.showLoading({
title: "加载中"
})
getList5({
...this.queryData
},this.pageData).then(res => {
uni.hideLoading();
this.projectDataList = toJsonData(res.data.__blocks__.result3.rows,res.data.__blocks__.result3.meta.columns)
})
}
}
}
</script>
<style>
page {
background-color: #ffffff;
}
</style>
<style lang="scss" scoped>
.page-content-box{
width: 100vw;
height: 100vh;
overflow: hidden;
}
.cu-form-group {
picker {
padding-right: 0;
}
}
.header-title {
display: flex;
flex-direction: row;
width: 96%;
align-items: center;
margin: 30upx auto 12upx;
.flex-between {
display: flex;
flex: 1;
justify-content: center;
align-items: center;
border-radius: 20upx;
padding: 16upx 20upx;
background-color: rgba(246, 246, 248, 1);
.image {
width: 34upx;
margin-right: 8upx;
max-height: 42upx;
}
.text-blue {
color: #4a93f8;
font-weight: bold;
}
}
}
.u-tabs-box {
width: 100%;
margin: 0 auto;
}
.data-content {
display: flex;
flex-direction: column;
margin: 30upx auto;
width: 96%;
.circle-par {
display: flex;
justify-content: center;
align-items: center;
}
.header {
border-radius: 12upx 12upx 0 0;
background-color: #eef2fe;
color: #101010;
font-size: 30upx;
border: 1px solid #d1dcfd;
padding: 14upx 24upx;
}
.content {
border-radius: 0 0 12upx 12upx;
background-color: #ffffff;
color: #101010;
font-size: 30upx;
border: 1px solid #cecece;
border-top: none;
}
}
.flex-content {
display: flex;
width: 100%;
justify-content: center;
}
.part-3 {
flex-direction: column;
padding-bottom: 40upx;
.content-item {
display: flex;
flex-direction: column;
width: 94%;
margin: 24upx auto 8upx;
padding-bottom: 24upx;
.header-title {
position: relative;
width: 100%;
margin: 0;
image {
width: 100%;
max-height: 100upx;
}
.flex-between {
position: absolute;
top: 0;
left: 12%;
width: 88%;
height: 70%;
padding: 0;
justify-content: space-between;
background-color: transparent;
}
}
.content-box {
position: relative;
z-index: 2;
box-shadow: 0 0 12upx rgba(0, 0, 0, 0.34);
border-radius: 12upx;
margin-top: -20upx;
background-color: #ffffff;
padding: 24upx;
.flex-row{
margin: 6upx 0;
.part-1{
width: 180upx;
text-align-last: justify;
}
.part-2{
margin-right: 24upx;
}
}
}
.active{
box-shadow: 0 0 12upx #4a93f8;
}
}
.content-item:last-child {
border-bottom: none;
}
}
.flex-center {
display: flex;
align-items: center;
}
.line-progress {
align-items: center;
}
.u-page__item__slot-icon {
width: 24px;
height: 24px;
}
.part-left {
align-items: center;
}
.circle-center {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
.margin-top-sm {
margin-top: 10upx;
}
.flex-row {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
}
}
.icon {
width: 36upx;
max-height: 50upx;
margin-right: 6upx;
}
.flex-row-center {
display: flex;
flex-direction: row;
align-items: center;
}
.content-part-1 {
display: flex;
flex-direction: column;
align-items: center;
.header {
display: flex;
flex-direction: row;
align-items: center;
width: 92%;
padding: 30upx 0;
image {
width: 20px;
height: 20px;
margin-right: 6upx;
}
}
.form-content-box {
width: 92%;
padding: 12upx 0;
border-radius: 12upx;
box-shadow: 0 0 8upx rgba(0, 0, 0, 0.34);
background-color: #ffffff;
.cu-form-group {
.title {
display: flex;
flex-direction: row;
width: 240upx;
align-items: center;
}
}
}
.footer-content {
display: flex;
justify-content: center;
align-items: center;
width: 100vw;
height: 120upx;
margin-bottom: 100upx;
.btn-box {
width: 80%;
}
}
}
.float-box{
position: fixed;
display: flex;
justify-content: center;
align-items: center;
width: 50px;
height: 50px;
border-radius: 25px;
background-color: #4a93f8;
color: #ffffff;
box-shadow: 0 0 16upx rgba(74, 147, 248, 0.34),0 0 12upx rgba(74, 147, 248, 0.34) inset;
z-index: 99;
font-size: 32upx;
}
.factory-name{
max-width: 360upx;
.factory-title{
// width: 360upx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
.ellipsis{
max-width: 420upx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
</style>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment