提交代码
This commit is contained in:
parent
063312b5a6
commit
7ba3f01f4c
|
|
@ -26,7 +26,7 @@
|
|||
<div class="bennian" style="margin-left: 10px;">本 年</div>
|
||||
</div>
|
||||
<div class="flexEndCenter" style="margin-top: 11px;">
|
||||
<div class="shangyinianMoney" style="margin-left: 10px;">{{ formatValue(yingshouObj.lastReceivablesDate) }}</div>
|
||||
<div class="shangyinianMoney" style="margin-left: 10px;">{{ formatValue(yingshouObj.LastReceivablesDate) }}</div>
|
||||
<div class="shangyinian" style="margin-left: 10px;">上一年</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -181,6 +181,7 @@ import { getAction } from '@/api/manage'
|
|||
// 获取总支出
|
||||
async zongzhichu() {
|
||||
const res = await getAction(`/contract/bigscreen/expenditureSum`)
|
||||
console.log('总支出', res)
|
||||
this.zongzhichuObj = res.data
|
||||
},
|
||||
// 获取毛利润
|
||||
|
|
|
|||
|
|
@ -12,9 +12,9 @@ export const typeUrls = {
|
|||
export const searchItems = [
|
||||
{ label: "", prop: "keyword", placeholder: "媒体位置/乙方名称/订单编号/项目名称/甲方名称", isExtend: false },
|
||||
{ label: "客户名称", prop: "clientId", placeholder: "请选择", type: 'selector', isExtend: true, available: false },
|
||||
{ label: "媒体类型", prop: "mediaId", placeholder: "请选择", type: 'selector', isExtend: true, available: false},
|
||||
{ label: "媒体类型", prop: "mediaId", placeholder: "请选择", type: 'selector', isExtend: true, available: false },
|
||||
{ label: "甲方", prop: "firstId", placeholder: "请选择", isExtend: true, available: false },
|
||||
{ label: "城市", prop: "cityId", placeholder: "请选择", type: 'multiSelector', isExtend: true, available: false},
|
||||
{ label: "城市", prop: "cityId", placeholder: "请选择", type: 'multiSelector', isExtend: true, available: false },
|
||||
{ label: "是否逾期", prop: "isOverdue", placeholder: "请选择", type: 'selector', isExtend: true, available: false },
|
||||
{ label: "是否比稿", prop: "isCompet", placeholder: "请选择", type: 'selector', isExtend: true, available: false },
|
||||
{ label: "时间范围", prop: "timesRange", placeholder: "请选择", isExtend: true, available: false },
|
||||
|
|
@ -236,7 +236,7 @@ export const tableColumns = [
|
|||
width: [190, 210],
|
||||
},
|
||||
{
|
||||
title: "其他返点",
|
||||
title: "其他返点1",
|
||||
dataIndex: "otherReverPoit",
|
||||
dataIndexType: "media",
|
||||
align: "right",
|
||||
|
|
@ -244,13 +244,29 @@ export const tableColumns = [
|
|||
width: [102, 135],
|
||||
},
|
||||
{
|
||||
title: "其他返点金额",
|
||||
title: "其他返点2",
|
||||
dataIndex: "otherReverPoit2",
|
||||
dataIndexType: "media",
|
||||
align: "right",
|
||||
isCheck: false,
|
||||
width: [102, 135],
|
||||
},
|
||||
{
|
||||
title: "其他返点金额1",
|
||||
dataIndex: "otherReverMoney",
|
||||
dataIndexType: "media",
|
||||
align: "right",
|
||||
isCheck: false,
|
||||
width: [190, 210],
|
||||
},
|
||||
{
|
||||
title: "其他返点金额2",
|
||||
dataIndex: "otherReverMoney2",
|
||||
dataIndexType: "media",
|
||||
align: "right",
|
||||
isCheck: false,
|
||||
width: [190, 210],
|
||||
},
|
||||
// {
|
||||
// title: "合同盖章时间",
|
||||
// dataIndex: "contrantSealTime",
|
||||
|
|
|
|||
|
|
@ -138,7 +138,7 @@
|
|||
</template>
|
||||
<!-- 比稿返点结束 -->
|
||||
|
||||
<!-- 其他返点 -->
|
||||
<!-- 其他返点1 -->
|
||||
<template #otherReverPoit="{ record, isEdit }">
|
||||
<div
|
||||
style="
|
||||
|
|
@ -153,7 +153,24 @@
|
|||
></el-input>
|
||||
</div>
|
||||
</template>
|
||||
<!-- 其他返点结束 -->
|
||||
<!-- 其他返点1结束 -->
|
||||
|
||||
<!-- 其他返点金额2 -->
|
||||
<template #otherReverPoit2="{ record, isEdit }">
|
||||
<div
|
||||
style="
|
||||
display: flex;
|
||||
gap: 5px;
|
||||
align-items: center;
|
||||
text-align: right;
|
||||
"
|
||||
>
|
||||
<el-input
|
||||
v-model="record.otherReverPoit2"
|
||||
></el-input>
|
||||
</div>
|
||||
</template>
|
||||
<!-- 其他返点2结束 -->
|
||||
</el-edit-table>
|
||||
</template>
|
||||
<!-- 媒体信息结束 -->
|
||||
|
|
@ -463,7 +480,7 @@ export default {
|
|||
const sums = [];
|
||||
columns.forEach((column, index) => {
|
||||
let total = "N/A";
|
||||
if (![8, 11, 12, 15, 17].includes(index)) {
|
||||
if (![8, 11, 12, 15, 17, 19].includes(index)) {
|
||||
return;
|
||||
}
|
||||
const values = data.map((item) => Number(item[column.property]));
|
||||
|
|
|
|||
|
|
@ -1,62 +1,37 @@
|
|||
<template>
|
||||
<div class="procurement-contract">
|
||||
<el-group-form
|
||||
ref="formRef"
|
||||
:rules="AEform.rules"
|
||||
:formModel="AEform.formModel"
|
||||
:formGroup="formGroup"
|
||||
>
|
||||
<el-group-form ref="formRef" :rules="AEform.rules" :formModel="AEform.formModel" :formGroup="formGroup">
|
||||
<!-- 发票类型开始 -->
|
||||
<template #invoiceId>
|
||||
<el-custom-select
|
||||
v-model="AEform.formModel.invoiceId"
|
||||
:dataSource="getinvoiceList"
|
||||
:remoteAdd="handleAddInvoice"
|
||||
@change="(v, t) => (AEform.formModel.invoiceName = t)"
|
||||
/>
|
||||
<el-custom-select v-model="AEform.formModel.invoiceId" :dataSource="getinvoiceList"
|
||||
:remoteAdd="handleAddInvoice" @change="(v, t) => (AEform.formModel.invoiceName = t)" />
|
||||
<!-- {{ AEform.formModel.invoiceId }} -->
|
||||
</template>
|
||||
<!-- 发票类型结束 -->
|
||||
<!-- 媒介部门开始 -->
|
||||
<template #mediaDeptId>
|
||||
<el-custom-select
|
||||
v-model="AEform.formModel.mediaDeptId"
|
||||
:dataSource="getMediaDepartment"
|
||||
:remoteAdd="handleAddMediaDepartment"
|
||||
@change="(v, t) => (AEform.formModel.mediaDeptName = t)"
|
||||
/>
|
||||
<el-custom-select v-model="AEform.formModel.mediaDeptId" :dataSource="getMediaDepartment"
|
||||
:remoteAdd="handleAddMediaDepartment" @change="(v, t) => (AEform.formModel.mediaDeptName = t)" />
|
||||
</template>
|
||||
<!-- 媒介部门结束 -->
|
||||
|
||||
<!-- 客户名称开始 -->
|
||||
<template #clientId>
|
||||
<el-custom-select
|
||||
v-model="AEform.formModel.clientId"
|
||||
:dataSource="getclientList"
|
||||
:remoteAdd="handleAddClient"
|
||||
@change="(v, t) => (AEform.formModel.clientName = t)"
|
||||
/>
|
||||
<el-custom-select v-model="AEform.formModel.clientId" :dataSource="getclientList" :remoteAdd="handleAddClient"
|
||||
@change="(v, t) => (AEform.formModel.clientName = t)" />
|
||||
</template>
|
||||
<!-- 客户名称结束 -->
|
||||
|
||||
<!-- 甲方名称开始 -->
|
||||
<template #firstId>
|
||||
<el-custom-select
|
||||
v-model="AEform.formModel.firstId"
|
||||
:dataSource="getFirstPartyList"
|
||||
:remoteAdd="handleAddFirstParty"
|
||||
@change="(v, t) => (AEform.formModel.firstName = t)"
|
||||
/>
|
||||
<el-custom-select v-model="AEform.formModel.firstId" :dataSource="getFirstPartyList"
|
||||
:remoteAdd="handleAddFirstParty" @change="(v, t) => (AEform.formModel.firstName = t)" />
|
||||
</template>
|
||||
<!-- 甲方名称结束 -->
|
||||
|
||||
<!-- 签订时间开始 -->
|
||||
<template #signTime>
|
||||
<el-date-picker
|
||||
v-model="AEform.formModel.signTime"
|
||||
value-format="yyyy-MM-dd"
|
||||
style="width: 100%"
|
||||
/>
|
||||
<el-date-picker v-model="AEform.formModel.signTime" value-format="yyyy-MM-dd" style="width: 100%" />
|
||||
</template>
|
||||
<!-- 签订时间结束 -->
|
||||
|
||||
|
|
@ -68,48 +43,31 @@
|
|||
|
||||
<!-- 媒体信息开始 -->
|
||||
<template #purchaseMediaBoList>
|
||||
<el-edit-table
|
||||
:columns="mediaListColumns"
|
||||
v-model="AEform.formModel.purchaseMediaBoList"
|
||||
show-summary
|
||||
:summary-method="mediaTypeSummary"
|
||||
@update-items="updateItemsPurchaseMediaBoList"
|
||||
>
|
||||
<el-edit-table :columns="mediaListColumns" v-model="AEform.formModel.purchaseMediaBoList" show-summary
|
||||
:summary-method="mediaTypeSummary" @update-items="updateItemsPurchaseMediaBoList">
|
||||
<!-- 城市选择开始 -->
|
||||
<template #cityId="{ record, isEdit }">
|
||||
<el-custom-cascader v-model="record.cityIds" :dataSource="cityList" :cascaderStyle="{ width: '100%' }" @change="(v, t) => (record.cityId = v, record.cityName = t)" />
|
||||
<el-custom-cascader v-model="record.cityIds" :dataSource="cityList" :cascaderStyle="{ width: '100%' }"
|
||||
@change="(v, t) => (record.cityId = v, record.cityName = t)" />
|
||||
</template>
|
||||
<!-- 城市选择结束 -->
|
||||
|
||||
<!-- 媒体类型开始 -->
|
||||
<template #mediaId="{ record, isEdit }">
|
||||
<el-custom-select
|
||||
v-model="record.mediaId"
|
||||
|
||||
:dataSource="mediaTypeList"
|
||||
:remoteAdd="handleAddMediaTypeParty"
|
||||
@change="(v, t) => (record.mediaName = t)"
|
||||
/>
|
||||
<el-custom-select v-model="record.mediaId" :dataSource="mediaTypeList" :remoteAdd="handleAddMediaTypeParty"
|
||||
@change="(v, t) => (record.mediaName = t)" />
|
||||
</template>
|
||||
<!-- 媒体类型结束 -->
|
||||
|
||||
<!-- 上刊时间开始 -->
|
||||
<template #upTime="{ record, isEdit }">
|
||||
<el-date-picker
|
||||
v-model="record.upTime"
|
||||
value-format="yyyy-MM-dd"
|
||||
style="width: 100%"
|
||||
/>
|
||||
<el-date-picker v-model="record.upTime" value-format="yyyy-MM-dd" style="width: 100%" />
|
||||
</template>
|
||||
<!-- 上刊时间结束 -->
|
||||
|
||||
<!-- 下刊时间开始 -->
|
||||
<template #downTime="{ record, isEdit }">
|
||||
<el-date-picker
|
||||
v-model="record.downTime"
|
||||
value-format="yyyy-MM-dd"
|
||||
style="width: 100%"
|
||||
/>
|
||||
<el-date-picker v-model="record.downTime" value-format="yyyy-MM-dd" style="width: 100%" />
|
||||
</template>
|
||||
<!-- 下刊时间结束 -->
|
||||
|
||||
|
|
@ -122,10 +80,7 @@
|
|||
<!-- 折扣开始 -->
|
||||
<template #discount="{ record, isEdit }">
|
||||
<div class="flexRowCenter">
|
||||
<el-input
|
||||
v-model="record.discount"
|
||||
@change="handleNumberChange(record.discount, $event)"
|
||||
></el-input>
|
||||
<el-input v-model="record.discount" @change="handleNumberChange(record.discount, $event)"></el-input>
|
||||
</div>
|
||||
</template>
|
||||
<!-- 折扣结束 -->
|
||||
|
|
@ -135,13 +90,8 @@
|
|||
|
||||
<!-- 付款管理开始 -->
|
||||
<template #purchasePaymentBoList>
|
||||
<el-edit-table
|
||||
:columns="contranctPayListColumns"
|
||||
v-model="AEform.formModel.purchasePaymentBoList"
|
||||
show-summary
|
||||
:summary-method="paymentSummary"
|
||||
@update-items="updateItemsPurchasePaymentBoList"
|
||||
>
|
||||
<el-edit-table :columns="contranctPayListColumns" v-model="AEform.formModel.purchasePaymentBoList" show-summary
|
||||
:summary-method="paymentSummary" @update-items="updateItemsPurchasePaymentBoList">
|
||||
<!-- 笔数开始 -->
|
||||
<template #transactionsNumber="{ record, isEdit }">
|
||||
<el-select v-model="record.transactionsNumber" style="width: 100%;">
|
||||
|
|
@ -155,21 +105,13 @@
|
|||
<!-- 笔数结束 -->
|
||||
<!-- 约定付款时间开始 -->
|
||||
<template #payTime="{ record, isEdit }">
|
||||
<el-date-picker
|
||||
v-model="record.payTime"
|
||||
value-format="yyyy-MM-dd"
|
||||
style="width: 100%"
|
||||
/>
|
||||
<el-date-picker v-model="record.payTime" value-format="yyyy-MM-dd" style="width: 100%" />
|
||||
</template>
|
||||
<!-- 约定付款时间结束 -->
|
||||
|
||||
<!-- 实际付款时间开始 -->
|
||||
<template #arrivalTime="{ record, isEdit }">
|
||||
<el-date-picker
|
||||
v-model="record.arrivalTime"
|
||||
value-format="yyyy-MM-dd"
|
||||
style="width: 100%"
|
||||
/>
|
||||
<el-date-picker v-model="record.arrivalTime" value-format="yyyy-MM-dd" style="width: 100%" />
|
||||
</template>
|
||||
<!-- 实际付款时间结束 -->
|
||||
|
||||
|
|
@ -203,6 +145,12 @@
|
|||
</template>
|
||||
<!-- 合同附件结束 -->
|
||||
|
||||
<!-- 检测照片开始 -->
|
||||
<template #detectPicAttr>
|
||||
<el-file-upload ref="detectPicAttr" />
|
||||
</template>
|
||||
<!-- 检测照片结束 -->
|
||||
|
||||
<!-- 监测报告附件开始 -->
|
||||
<template #reportAttachment>
|
||||
<div class="report-attachment">
|
||||
|
|
@ -298,24 +246,24 @@ export default {
|
|||
const list = this.AEform.formModel.purchaseMediaBoList;
|
||||
return list
|
||||
? list.reduce(
|
||||
(prev, { mediaFee, productFee }) =>
|
||||
new BigNumber(prev).plus(mediaFee).plus(productFee).toNumber(),
|
||||
0
|
||||
)
|
||||
(prev, { mediaFee, productFee }) =>
|
||||
new BigNumber(prev).plus(mediaFee).plus(productFee).toNumber(),
|
||||
0
|
||||
)
|
||||
: 0;
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
// 获取详情
|
||||
async getDetailData () {
|
||||
async getDetailData() {
|
||||
const res = await getAction(`/system/purchase/${this.$route.query.id}`)
|
||||
console.log('%c [ res ]-213', 'font-size:13px; background:pink; color:#bf2c9f;', res)
|
||||
console.log('采购合同详情', res)
|
||||
if (res.data.purchaseMediaVoList) {
|
||||
res.data.purchaseMediaBoList = res.data.purchaseMediaVoList
|
||||
console.log(this.cityList, 'this.cityList')
|
||||
// cityIds
|
||||
res.data.purchaseMediaBoList = res.data.purchaseMediaBoList.map(item => {
|
||||
return { ...item, cityIds: item.cityIds ? item.cityIds.split(',').map((item) => Number(item)) : item.cityIds };
|
||||
return { ...item, cityIds: item.cityIds ? item.cityIds.split(',').map((item) => Number(item)) : item.cityIds };
|
||||
});
|
||||
}
|
||||
if (res.data.conPurchasePaymentVo) {
|
||||
|
|
@ -325,6 +273,9 @@ export default {
|
|||
if (res.data.contractAccessList) {
|
||||
this.$refs.contractAccess.setFileList(res.data.contractAccessList)
|
||||
}
|
||||
if (res.data.detectPicAttrList) {
|
||||
this.$refs.detectPicAttr.setFileList(res.data.detectPicAttrList)
|
||||
}
|
||||
if (res.data.upPrintList) {
|
||||
this.$refs.upPrint.setFileList(res.data.upPrintList)
|
||||
}
|
||||
|
|
@ -353,7 +304,7 @@ export default {
|
|||
this.AEform.formModel.purchaseMediaBoList = newItems
|
||||
},
|
||||
|
||||
updateItemsPurchasePaymentBoList (newItems) {
|
||||
updateItemsPurchasePaymentBoList(newItems) {
|
||||
this.AEform.formModel.purchasePaymentBoList = newItems
|
||||
},
|
||||
|
||||
|
|
@ -540,7 +491,7 @@ export default {
|
|||
const sums = [];
|
||||
columns.forEach((column, index) => {
|
||||
let total = "N/A";
|
||||
if (![11,12].includes(index)) {
|
||||
if (![11, 12].includes(index)) {
|
||||
return;
|
||||
}
|
||||
const values = data.map((item) => Number(item[column.property]));
|
||||
|
|
@ -574,7 +525,7 @@ export default {
|
|||
const sums = [];
|
||||
columns.forEach((column, index) => {
|
||||
let total = "N/A";
|
||||
if (![2,4].includes(index)) {
|
||||
if (![2, 4].includes(index)) {
|
||||
return;
|
||||
}
|
||||
const values = data.map((item) => Number(item[column.property]));
|
||||
|
|
@ -603,18 +554,18 @@ export default {
|
|||
return sums;
|
||||
},
|
||||
formatNumber(num) {
|
||||
if (num) {
|
||||
// 保留两位小数并转换为字符串
|
||||
let [integer, decimal] = num.toFixed(2).split(".");
|
||||
if (num) {
|
||||
// 保留两位小数并转换为字符串
|
||||
let [integer, decimal] = num.toFixed(2).split(".");
|
||||
|
||||
// 正则表达式添加千位分隔符
|
||||
integer = integer.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
|
||||
// 正则表达式添加千位分隔符
|
||||
integer = integer.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
|
||||
|
||||
return `${integer}.${decimal}`;
|
||||
} else {
|
||||
return '0.00'
|
||||
}
|
||||
},
|
||||
return `${integer}.${decimal}`;
|
||||
} else {
|
||||
return '0.00'
|
||||
}
|
||||
},
|
||||
|
||||
//计算逾期天数
|
||||
delayDate(record) {
|
||||
|
|
@ -633,101 +584,117 @@ export default {
|
|||
return "";
|
||||
}
|
||||
const diff = dayjs(downTime || new Date()).diff(upTime, "d");
|
||||
return diff <= 0 ? "" : diff + 1 + "天";
|
||||
return diff <= 0 ? "" : diff + 1 + "天";
|
||||
},
|
||||
|
||||
// 去除附件中的逗号
|
||||
removeLeadingAndTrailingCommas(str) {
|
||||
// 检查并去掉第一个字符的逗号
|
||||
if (str.charAt(0) === ',') {
|
||||
str = str.substring(1);
|
||||
}
|
||||
// 检查并去掉第一个字符的逗号
|
||||
if (str.charAt(0) === ',') {
|
||||
str = str.substring(1);
|
||||
}
|
||||
|
||||
// 检查并去掉最后一个字符的逗号
|
||||
if (str.charAt(str.length - 1) === ',') {
|
||||
str = str.substring(0, str.length - 1);
|
||||
}
|
||||
// 检查并去掉最后一个字符的逗号
|
||||
if (str.charAt(str.length - 1) === ',') {
|
||||
str = str.substring(0, str.length - 1);
|
||||
}
|
||||
|
||||
return str;
|
||||
return str;
|
||||
},
|
||||
// 附件处理
|
||||
annexFunc() {
|
||||
// 合同附件
|
||||
var contractAccess = []
|
||||
for (const i in this.$refs.contractAccess.getFileList()) {
|
||||
contractAccess.push(this.$refs.contractAccess.getFileList()[i].md5)
|
||||
var contractAccess = []
|
||||
for (const i in this.$refs.contractAccess.getFileList()) {
|
||||
contractAccess.push(this.$refs.contractAccess.getFileList()[i].md5)
|
||||
}
|
||||
var contractAccess2 = []
|
||||
if (this.AEform.formModel.contractAccessList && this.AEform.formModel.contractAccessList.length) {
|
||||
for (const i in this.AEform.formModel.contractAccessList) {
|
||||
contractAccess2.push(this.AEform.formModel.contractAccessList[i].identifier)
|
||||
}
|
||||
var contractAccess2 = []
|
||||
if (this.AEform.formModel.contractAccessList && this.AEform.formModel.contractAccessList.length) {
|
||||
for (const i in this.AEform.formModel.contractAccessList) {
|
||||
contractAccess2.push(this.AEform.formModel.contractAccessList[i].identifier)
|
||||
}
|
||||
}
|
||||
var contractAccess3 = [...contractAccess, ...contractAccess2]
|
||||
contractAccess3 = Array.from(new Set(contractAccess3))
|
||||
this.AEform.formModel.contractAccess = contractAccess3.toString()
|
||||
this.AEform.formModel.contractAccess = this.removeLeadingAndTrailingCommas(this.AEform.formModel.contractAccess)
|
||||
}
|
||||
var contractAccess3 = [...contractAccess, ...contractAccess2]
|
||||
contractAccess3 = Array.from(new Set(contractAccess3))
|
||||
this.AEform.formModel.contractAccess = contractAccess3.toString()
|
||||
this.AEform.formModel.contractAccess = this.removeLeadingAndTrailingCommas(this.AEform.formModel.contractAccess)
|
||||
|
||||
// 上刊附件
|
||||
var upPrint = []
|
||||
for (const i in this.$refs.upPrint.getFileList()) {
|
||||
upPrint.push(this.$refs.upPrint.getFileList()[i].md5)
|
||||
// 监测照片附件
|
||||
var detectPicAttr = []
|
||||
for (const i in this.$refs.detectPicAttr.getFileList()) {
|
||||
detectPicAttr.push(this.$refs.detectPicAttr.getFileList()[i].md5)
|
||||
}
|
||||
var detectPicAttr2 = []
|
||||
if (this.AEform.formModel.detectPicAttrList && this.AEform.formModel.detectPicAttrList.length) {
|
||||
for (const i in this.AEform.formModel.detectPicAttrList) {
|
||||
detectPicAttr2.push(this.AEform.formModel.detectPicAttrList[i].identifier)
|
||||
}
|
||||
var upPrint2 = []
|
||||
if (this.AEform.formModel.upPrintList && this.AEform.formModel.upPrintList.length) {
|
||||
for (const i in this.AEform.formModel.upPrintList) {
|
||||
upPrint2.push(this.AEform.formModel.upPrintList[i].identifier)
|
||||
}
|
||||
}
|
||||
var detectPicAttr3 = [...detectPicAttr, ...detectPicAttr2]
|
||||
detectPicAttr3 = Array.from(new Set(detectPicAttr3))
|
||||
this.AEform.formModel.detectPicAttr = detectPicAttr3.toString()
|
||||
this.AEform.formModel.detectPicAttr = this.removeLeadingAndTrailingCommas(this.AEform.formModel.detectPicAttr)
|
||||
|
||||
// 上刊附件
|
||||
var upPrint = []
|
||||
for (const i in this.$refs.upPrint.getFileList()) {
|
||||
upPrint.push(this.$refs.upPrint.getFileList()[i].md5)
|
||||
}
|
||||
var upPrint2 = []
|
||||
if (this.AEform.formModel.upPrintList && this.AEform.formModel.upPrintList.length) {
|
||||
for (const i in this.AEform.formModel.upPrintList) {
|
||||
upPrint2.push(this.AEform.formModel.upPrintList[i].identifier)
|
||||
}
|
||||
var upPrint3 = [...upPrint, ...upPrint2]
|
||||
upPrint3 = Array.from(new Set(upPrint3))
|
||||
this.AEform.formModel.upPrint = upPrint3.toString()
|
||||
this.AEform.formModel.upPrint = this.removeLeadingAndTrailingCommas(this.AEform.formModel.upPrint)
|
||||
// 下刊附件
|
||||
var nextPrint = []
|
||||
for (const i in this.$refs.nextPrint.getFileList()) {
|
||||
nextPrint.push(this.$refs.nextPrint.getFileList()[i].md5)
|
||||
}
|
||||
var upPrint3 = [...upPrint, ...upPrint2]
|
||||
upPrint3 = Array.from(new Set(upPrint3))
|
||||
this.AEform.formModel.upPrint = upPrint3.toString()
|
||||
this.AEform.formModel.upPrint = this.removeLeadingAndTrailingCommas(this.AEform.formModel.upPrint)
|
||||
// 下刊附件
|
||||
var nextPrint = []
|
||||
for (const i in this.$refs.nextPrint.getFileList()) {
|
||||
nextPrint.push(this.$refs.nextPrint.getFileList()[i].md5)
|
||||
}
|
||||
var nextPrint2 = []
|
||||
if (this.AEform.formModel.nextPrintList && this.AEform.formModel.nextPrintList.length) {
|
||||
for (const i in this.AEform.formModel.nextPrintList) {
|
||||
nextPrint2.push(this.AEform.formModel.nextPrintList[i].identifier)
|
||||
}
|
||||
var nextPrint2 = []
|
||||
if (this.AEform.formModel.nextPrintList && this.AEform.formModel.nextPrintList.length) {
|
||||
for (const i in this.AEform.formModel.nextPrintList) {
|
||||
nextPrint2.push(this.AEform.formModel.nextPrintList[i].identifier)
|
||||
}
|
||||
}
|
||||
var nextPrint3 = [...nextPrint, ...nextPrint2]
|
||||
nextPrint3 = Array.from(new Set(nextPrint3))
|
||||
this.AEform.formModel.nextPrint = nextPrint3.toString()
|
||||
this.AEform.formModel.nextPrint = this.removeLeadingAndTrailingCommas(this.AEform.formModel.nextPrint)
|
||||
// 换刊附件
|
||||
var exchangePrint = []
|
||||
for (const i in this.$refs.exchangePrint.getFileList()) {
|
||||
exchangePrint.push(this.$refs.exchangePrint.getFileList()[i].md5)
|
||||
}
|
||||
var exchangePrint2 = []
|
||||
if (this.AEform.formModel.exchangePrintList && this.AEform.formModel.exchangePrintList.length) {
|
||||
for (const i in this.AEform.formModel.exchangePrintList) {
|
||||
exchangePrint2.push(this.AEform.formModel.exchangePrintList[i].identifier)
|
||||
}
|
||||
var nextPrint3 = [...nextPrint, ...nextPrint2]
|
||||
nextPrint3 = Array.from(new Set(nextPrint3))
|
||||
this.AEform.formModel.nextPrint = nextPrint3.toString()
|
||||
this.AEform.formModel.nextPrint = this.removeLeadingAndTrailingCommas(this.AEform.formModel.nextPrint)
|
||||
// 换刊附件
|
||||
var exchangePrint = []
|
||||
for (const i in this.$refs.exchangePrint.getFileList()) {
|
||||
exchangePrint.push(this.$refs.exchangePrint.getFileList()[i].md5)
|
||||
}
|
||||
var exchangePrint3 = [...exchangePrint, ...exchangePrint2]
|
||||
exchangePrint3 = Array.from(new Set(exchangePrint3))
|
||||
this.AEform.formModel.exchangePrint = exchangePrint3.toString()
|
||||
this.AEform.formModel.exchangePrint = this.removeLeadingAndTrailingCommas(this.AEform.formModel.exchangePrint)
|
||||
// 媒体链条附件
|
||||
var mediaLink = []
|
||||
for (const i in this.$refs.mediaLink.getFileList()) {
|
||||
mediaLink.push(this.$refs.mediaLink.getFileList()[i].md5)
|
||||
}
|
||||
var mediaLink2 = []
|
||||
if (this.AEform.formModel.mediaLinkList && this.AEform.formModel.mediaLinkList.length) {
|
||||
for (const i in this.AEform.formModel.mediaLinkList) {
|
||||
mediaLink2.push(this.AEform.formModel.mediaLinkList[i].identifier)
|
||||
}
|
||||
var exchangePrint2 = []
|
||||
if (this.AEform.formModel.exchangePrintList && this.AEform.formModel.exchangePrintList.length) {
|
||||
for (const i in this.AEform.formModel.exchangePrintList) {
|
||||
exchangePrint2.push(this.AEform.formModel.exchangePrintList[i].identifier)
|
||||
}
|
||||
}
|
||||
var exchangePrint3 = [...exchangePrint, ...exchangePrint2]
|
||||
exchangePrint3 = Array.from(new Set(exchangePrint3))
|
||||
this.AEform.formModel.exchangePrint = exchangePrint3.toString()
|
||||
this.AEform.formModel.exchangePrint = this.removeLeadingAndTrailingCommas(this.AEform.formModel.exchangePrint)
|
||||
// 媒体链条附件
|
||||
var mediaLink = []
|
||||
for (const i in this.$refs.mediaLink.getFileList()) {
|
||||
mediaLink.push(this.$refs.mediaLink.getFileList()[i].md5)
|
||||
}
|
||||
var mediaLink2 = []
|
||||
if (this.AEform.formModel.mediaLinkList && this.AEform.formModel.mediaLinkList.length) {
|
||||
for (const i in this.AEform.formModel.mediaLinkList) {
|
||||
mediaLink2.push(this.AEform.formModel.mediaLinkList[i].identifier)
|
||||
}
|
||||
}
|
||||
var mediaLink3 = [...mediaLink, ...mediaLink2]
|
||||
mediaLink3 = Array.from(new Set(mediaLink3))
|
||||
this.AEform.formModel.mediaLink = mediaLink3.toString()
|
||||
this.AEform.formModel.mediaLink = this.removeLeadingAndTrailingCommas(this.AEform.formModel.mediaLink)
|
||||
}
|
||||
var mediaLink3 = [...mediaLink, ...mediaLink2]
|
||||
mediaLink3 = Array.from(new Set(mediaLink3))
|
||||
this.AEform.formModel.mediaLink = mediaLink3.toString()
|
||||
this.AEform.formModel.mediaLink = this.removeLeadingAndTrailingCommas(this.AEform.formModel.mediaLink)
|
||||
},
|
||||
|
||||
verification(tableList, columns) {
|
||||
|
|
@ -783,6 +750,7 @@ export default {
|
|||
});
|
||||
}
|
||||
await this.$refs.formRef.validate();
|
||||
console.log('this.AEform.formModel', this.AEform.formModel)
|
||||
if (this.AEform.formModel.id) {
|
||||
const res = await putAction(`/system/purchase/edit`, { ...this.AEform.formModel })
|
||||
console.log('%c [ res ]-361', 'font-size:13px; background:pink; color:#bf2c9f;', res)
|
||||
|
|
@ -829,7 +797,8 @@ export default {
|
|||
|
||||
.el-group-form {
|
||||
::v-deep {
|
||||
> .el-card {
|
||||
>.el-card {
|
||||
|
||||
&:nth-child(3),
|
||||
&:nth-child(4) {
|
||||
.el-card__body {
|
||||
|
|
@ -847,6 +816,7 @@ export default {
|
|||
|
||||
::v-deep {
|
||||
.media-summary {
|
||||
|
||||
&-title,
|
||||
&-value {
|
||||
font-family: Microsoft YaHei;
|
||||
|
|
|
|||
|
|
@ -35,13 +35,17 @@ export const formGroup = [
|
|||
title: "合同附件",
|
||||
items: [{ slot: true, prop: "contractAccess", span: 24 }],
|
||||
},
|
||||
{
|
||||
title: "检测照片",
|
||||
items: [{ slot: true, prop: "detectPicAttr", span: 25 }],
|
||||
},
|
||||
{
|
||||
title: "监测报告附件",
|
||||
items: [{ slot: true, prop: "reportAttachment", span: 24 }],
|
||||
items: [{ slot: true, prop: "reportAttachment", span: 26 }],
|
||||
},
|
||||
{
|
||||
title: "媒体链条附件",
|
||||
items: [{ slot: true, prop: "mediaLink", span: 24 }],
|
||||
items: [{ slot: true, prop: "mediaLink", span: 27 }],
|
||||
},
|
||||
];
|
||||
// 采购合同媒体信息表格配置
|
||||
|
|
@ -421,7 +425,7 @@ export const SalesContractMediaColumns = [
|
|||
required: true,
|
||||
},
|
||||
{
|
||||
title: "其他返点",
|
||||
title: "其他返点1",
|
||||
dataIndex: "otherReverPoit",
|
||||
width: 120,
|
||||
attrs: { min: 0 },
|
||||
|
|
@ -429,7 +433,7 @@ export const SalesContractMediaColumns = [
|
|||
required: true,
|
||||
},
|
||||
{
|
||||
title: "其他返点金额",
|
||||
title: "其他返点金额1",
|
||||
dataIndex: "otherReverMoney",
|
||||
width: 220,
|
||||
attrs: { min: 0 },
|
||||
|
|
@ -437,6 +441,23 @@ export const SalesContractMediaColumns = [
|
|||
type: "number",
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
title: "其他返点2",
|
||||
dataIndex: "otherReverPoit2",
|
||||
width: 120,
|
||||
attrs: { min: 0 },
|
||||
align: "center",
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
title: "其他返点金额2",
|
||||
dataIndex: "otherReverMoney2",
|
||||
width: 220,
|
||||
attrs: { min: 0 },
|
||||
align: "right",
|
||||
type: "number",
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
title: "备注",
|
||||
dataIndex: "remark",
|
||||
|
|
|
|||
|
|
@ -1,33 +1,16 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<ElQueryTable
|
||||
ref="tableRef"
|
||||
:searchItems="searchItems"
|
||||
:tableConfig="tableConfig"
|
||||
:isExtendAction="false"
|
||||
:selectedRowKeys.sync="selectedRowKeys"
|
||||
:isRowCheck="showColumnBtn"
|
||||
:showCheckFlag="showCheckFlag"
|
||||
@showExtendAction="showExtendAction"
|
||||
@hiddenExtendActionColumn="hiddenExtendActionColumn"
|
||||
@returnTableColumn="returnTableColumn"
|
||||
@update:selectedRowKeys="updateSelectedRowKeys"
|
||||
@search="handleCancelExport"
|
||||
@reset="handleCancelExport"
|
||||
autoresize
|
||||
:class="showCheckFlag? 'is-check-flag-show': ''"
|
||||
>
|
||||
<ElQueryTable ref="tableRef" :searchItems="searchItems" :tableConfig="tableConfig" :isExtendAction="false"
|
||||
:selectedRowKeys.sync="selectedRowKeys" :isRowCheck="showColumnBtn" :showCheckFlag="showCheckFlag"
|
||||
@showExtendAction="showExtendAction" @hiddenExtendActionColumn="hiddenExtendActionColumn"
|
||||
@returnTableColumn="returnTableColumn" @update:selectedRowKeys="updateSelectedRowKeys"
|
||||
@search="handleCancelExport" @reset="handleCancelExport" autoresize
|
||||
:class="showCheckFlag ? 'is-check-flag-show' : ''">
|
||||
<!-- keyword -->
|
||||
<template #query-keyword="{ queryParams }">
|
||||
<div style="width: 1200px">
|
||||
<el-input
|
||||
v-model="queryParams.keyword"
|
||||
type="search"
|
||||
clearable
|
||||
placeholder="媒体位置/乙方姓名/项目编号/项目名称"
|
||||
style="width: 547px"
|
||||
@change="handleSearch"
|
||||
>
|
||||
<el-input v-model="queryParams.keyword" type="search" clearable placeholder="媒体位置/乙方姓名/项目编号/项目名称"
|
||||
style="width: 547px" @change="handleSearch">
|
||||
<i slot="prefix" class="el-input__icon el-icon-search"></i>
|
||||
</el-input>
|
||||
</div>
|
||||
|
|
@ -35,110 +18,70 @@
|
|||
|
||||
<!-- 客户名称 -->
|
||||
<template #query-clientId="{ queryParams }">
|
||||
<el-select
|
||||
v-model="queryParams.clientId"
|
||||
style="width: 200px"
|
||||
placeholder="请选择"
|
||||
clearable
|
||||
@change="handleSearch"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in clientList"
|
||||
:key="item.id"
|
||||
:label="item.clientName"
|
||||
:value="item.id"
|
||||
>
|
||||
<el-select v-model="queryParams.clientId" style="width: 200px" placeholder="请选择" clearable
|
||||
@change="handleSearch">
|
||||
<el-option v-for="item in clientList" :key="item.id" :label="item.clientName" :value="item.id">
|
||||
</el-option>
|
||||
<template #prefix>
|
||||
<span style="position: absolute;left: 150px;color: #3B588A;cursor: pointer;" v-if="queryParams.clientId"
|
||||
@click="() => $refs.tableRef.queryParams.clientId = undefined">✖</span>
|
||||
@click="() => $refs.tableRef.queryParams.clientId = undefined">✖</span>
|
||||
</template>
|
||||
</el-select>
|
||||
</template>
|
||||
<!-- 媒体类型 -->
|
||||
<template #query-mediaId="{ queryParams }">
|
||||
<el-select
|
||||
v-model="queryParams.mediaId"
|
||||
style="width: 200px"
|
||||
placeholder="请选择"
|
||||
clearable
|
||||
@change="handleSearch"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in mediaTypeList"
|
||||
:key="item.id"
|
||||
:label="item.mediaType"
|
||||
:value="item.id"
|
||||
>
|
||||
<el-select v-model="queryParams.mediaId" style="width: 200px" placeholder="请选择" clearable
|
||||
@change="handleSearch">
|
||||
<el-option v-for="item in mediaTypeList" :key="item.id" :label="item.mediaType" :value="item.id">
|
||||
</el-option>
|
||||
<template #prefix>
|
||||
<span style="position: absolute;left: 150px;color: #3B588A;cursor: pointer;" v-if="queryParams.mediaId"
|
||||
@click="() => $refs.tableRef.queryParams.mediaId = undefined">✖</span>
|
||||
@click="() => $refs.tableRef.queryParams.mediaId = undefined">✖</span>
|
||||
</template>
|
||||
</el-select>
|
||||
</template>
|
||||
<!-- 城市 -->
|
||||
<template #query-cityId="{ queryParams }">
|
||||
<el-custom-cascader v-model="queryParams.cityIds" :cascaderStyle="{ width: '200px' }" :dataSource="cityList"
|
||||
@click="() => $refs.tableRef.queryParams.cityIds = undefined"/>
|
||||
@click="() => $refs.tableRef.queryParams.cityIds = undefined" />
|
||||
</template>
|
||||
<!-- 时间段 -->
|
||||
<template #query-timesRange="{ queryParams }">
|
||||
<el-custom-date-range-picker v-model="queryParams.timesRange" @change="handleSearch" style="width: 421px"/>
|
||||
<el-custom-date-range-picker v-model="queryParams.timesRange" @change="handleSearch" style="width: 421px" />
|
||||
</template>
|
||||
<!-- 甲方 乙方 -->
|
||||
<template #query-firstId="{ queryParams }">
|
||||
<el-select
|
||||
v-model="queryParams.firstId"
|
||||
style="width: 200px"
|
||||
placeholder="请选择"
|
||||
clearable
|
||||
@change="handleSearch"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in firstList"
|
||||
:key="item.id"
|
||||
:label="item.firstName"
|
||||
:value="item.id"
|
||||
>
|
||||
<el-select v-model="queryParams.firstId" style="width: 200px" placeholder="请选择" clearable
|
||||
@change="handleSearch">
|
||||
<el-option v-for="item in firstList" :key="item.id" :label="item.firstName" :value="item.id">
|
||||
</el-option>
|
||||
<template #prefix>
|
||||
<span style="position: absolute;left: 150px;color: #3B588A;cursor: pointer;" v-if="queryParams.firstId"
|
||||
@click="() => $refs.tableRef.queryParams.firstId = undefined">✖</span>
|
||||
@click="() => $refs.tableRef.queryParams.firstId = undefined">✖</span>
|
||||
</template>
|
||||
</el-select>
|
||||
</template>
|
||||
<!-- 是否逾期 -->
|
||||
<template #query-isOverdue="{ queryParams }">
|
||||
<el-select v-model="queryParams.isOverdue" placeholder="请选择" style="width: 200px" clearable
|
||||
@change="handleSearch">
|
||||
<el-option
|
||||
v-for="item in isOverdueList"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:value="item.id"
|
||||
>
|
||||
@change="handleSearch">
|
||||
<el-option v-for="item in isOverdueList" :key="item.id" :label="item.label" :value="item.id">
|
||||
</el-option>
|
||||
<template #prefix>
|
||||
<span style="position: absolute;left: 150px;color: #3B588A;cursor: pointer;" v-if="queryParams.isOverdue"
|
||||
@click="() => $refs.tableRef.queryParams.isOverdue = undefined">✖</span>
|
||||
@click="() => $refs.tableRef.queryParams.isOverdue = undefined">✖</span>
|
||||
</template>
|
||||
</el-select>
|
||||
</template>
|
||||
<!-- 是否比稿 -->
|
||||
<template #query-isCompet="{ queryParams }">
|
||||
<el-select v-model="queryParams.isCompet" placeholder="请选择" style="width: 200px" clearable
|
||||
@change="handleSearch">
|
||||
<el-option
|
||||
v-for="item in isCompetList"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:value="item.id"
|
||||
>
|
||||
@change="handleSearch">
|
||||
<el-option v-for="item in isCompetList" :key="item.id" :label="item.label" :value="item.id">
|
||||
</el-option>
|
||||
<template #prefix>
|
||||
<span style="position: absolute;left: 150px;color: #3B588A;cursor: pointer;" v-if="queryParams.isCompet"
|
||||
@click="() => $refs.tableRef.queryParams.isCompet = undefined">✖</span>
|
||||
@click="() => $refs.tableRef.queryParams.isCompet = undefined">✖</span>
|
||||
</template>
|
||||
</el-select>
|
||||
</template>
|
||||
|
|
@ -162,19 +105,14 @@
|
|||
</el-col> -->
|
||||
<el-col :span="1.5">
|
||||
<div class="flexRowCenter">
|
||||
<el-upload
|
||||
class="flexCenterCenter pubBtn"
|
||||
:action="importUrl"
|
||||
:headers="importHeaders"
|
||||
:on-success="handleUploadSuccess"
|
||||
:show-file-list="false"
|
||||
:file-list="fileList">
|
||||
<el-upload class="flexCenterCenter pubBtn" :action="importUrl" :headers="importHeaders"
|
||||
:on-success="handleUploadSuccess" :show-file-list="false" :file-list="fileList">
|
||||
<el-button size="small" style="font-size: 16px" type="primary">导入</el-button>
|
||||
</el-upload>
|
||||
<div class="flexCenterCenter pubBtn" style="width:120px;" @click="downloadTemplate">下载导入模板</div>
|
||||
<div class="flexCenterCenter pubBtn" @click="handleExport" v-if="!showColumnBtn">导出</div>
|
||||
<div class="flexCenterCenter pubBtn" style="margin-right: 10px;" @click="handleCancelExport"
|
||||
v-if="showColumnBtn">取消
|
||||
v-if="showColumnBtn">取消
|
||||
</div>
|
||||
<div class="flexCenterCenter pubBtn" @click="handleSureExport" v-if="showColumnBtn">确认导出</div>
|
||||
<div class="flexCenterCenter pubBtn" @click="handleShowDownList">下载记录</div>
|
||||
|
|
@ -187,22 +125,13 @@
|
|||
<!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="tableConfig.query"></right-toolbar> -->
|
||||
</template>
|
||||
<template #extendSearch>
|
||||
<div
|
||||
v-if="!tableConfig.showExtendSearch"
|
||||
@click="ocClickShowExtendSearch(true)"
|
||||
>
|
||||
<div v-if="!tableConfig.showExtendSearch" @click="ocClickShowExtendSearch(true)">
|
||||
展开
|
||||
<i
|
||||
class="el-icon-arrow-down"
|
||||
style="color: #00a026; margin-left: 10px"
|
||||
/>
|
||||
<i class="el-icon-arrow-down" style="color: #00a026; margin-left: 10px" />
|
||||
</div>
|
||||
<div v-else @click="ocClickShowExtendSearch(false)">
|
||||
折叠
|
||||
<i
|
||||
class="el-icon-arrow-up"
|
||||
style="color: #00a026; margin-left: 10px"
|
||||
/>
|
||||
<i class="el-icon-arrow-up" style="color: #00a026; margin-left: 10px" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
@ -234,7 +163,7 @@
|
|||
<template #table-cityId="{ text, record, index, align }">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''">
|
||||
<span :title="item.cityName">{{ item.cityName }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -242,27 +171,21 @@
|
|||
<template #table-mediaId="{ text, record, index, align }">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''">
|
||||
<span :title="item.mediaName">{{ item.mediaName }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template #table-mediaPosition="{ text, record, index, align }">
|
||||
<div class="table-column-child">
|
||||
<div
|
||||
v-for="item in record.conSaleMediaVoList"
|
||||
:key="index + item.id"
|
||||
:style="
|
||||
align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id" :style="align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
? 'text-align: left;'
|
||||
: align == 'center'
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
"
|
||||
:title="item.mediaPosition"
|
||||
>
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
" :title="item.mediaPosition">
|
||||
{{ item.mediaPosition }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -272,8 +195,8 @@
|
|||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.accountNumber">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.accountNumber">
|
||||
{{ item.accountNumber }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -286,8 +209,8 @@
|
|||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
{{ item.releaseFrequency }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -302,8 +225,8 @@
|
|||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
<!-- {{ item.compet }} -->
|
||||
<span v-if="item.compet == 1" title="是">是</span>
|
||||
<span v-if="item.compet == 2" title="否">否</span>
|
||||
|
|
@ -324,8 +247,8 @@
|
|||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
{{ item.competReverPoit }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -341,8 +264,8 @@
|
|||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
{{ formatNumber(item.competReverMoney) }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -354,13 +277,13 @@
|
|||
<!-- 比稿返点金额结束 -->
|
||||
|
||||
|
||||
<!-- 其他返点开始 -->
|
||||
<!-- 其他返点开始1 -->
|
||||
<template #table-otherReverPoit="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
{{ item.otherReverPoit }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -369,15 +292,15 @@
|
|||
<span :title="record.otherReverPoit">{{ record.otherReverPoit }}</span>
|
||||
</template>
|
||||
</template>
|
||||
<!-- 其他返点结束 -->
|
||||
<!-- 其他返点结束1 -->
|
||||
|
||||
<!-- 其他返点金额开始 -->
|
||||
<!-- 其他返点金额开始1 -->
|
||||
<template #table-otherReverMoney="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
{{ formatNumber(item.otherReverMoney) }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -386,63 +309,80 @@
|
|||
<span :title="record.otherReverMoney">{{ record.otherReverMoney }}</span>
|
||||
</template>
|
||||
</template>
|
||||
<!-- 其他返点金额结束 -->
|
||||
<!-- 其他返点金额结束1 -->
|
||||
|
||||
<!-- 其他返点开始2 -->
|
||||
<template #table-otherReverPoit2="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
{{ item.otherReverPoit2 }}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template v-else>
|
||||
<span :title="record.otherReverPoit2">{{ record.otherReverPoit2 }}</span>
|
||||
</template>
|
||||
</template>
|
||||
<!-- 其他返点结束2 -->
|
||||
|
||||
<!-- 其他返点金额开始2 -->
|
||||
<template #table-otherReverMoney2="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''"
|
||||
:title="item.releaseFrequency">
|
||||
{{ formatNumber(item.otherReverMoney2) }}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template v-else>
|
||||
<span :title="record.otherReverMoney2">{{ record.otherReverMoney2 }}</span>
|
||||
</template>
|
||||
</template>
|
||||
<!-- 其他返点金额结束2 -->
|
||||
|
||||
<template #table-upTime="{ text, record, index, align }">
|
||||
<div class="table-column-child">
|
||||
<div
|
||||
v-for="item in record.conSaleMediaVoList"
|
||||
:key="index + item.id"
|
||||
:style="
|
||||
align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id" :style="align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
? 'text-align: left;'
|
||||
: align == 'center'
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
"
|
||||
:title="item.upTime"
|
||||
>
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
" :title="item.upTime">
|
||||
{{ item.upTime }}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template #table-downTime="{ text, record, index, align }">
|
||||
<div class="table-column-child">
|
||||
<div
|
||||
v-for="item in record.conSaleMediaVoList"
|
||||
:key="index + item.id"
|
||||
:style="
|
||||
align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id" :style="align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
? 'text-align: left;'
|
||||
: align == 'center'
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
"
|
||||
:title="item.downTime"
|
||||
>
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
" :title="item.downTime">
|
||||
{{ item.downTime }}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template #table-period="{ text, record, index, align }">
|
||||
<div class="table-column-child">
|
||||
<div
|
||||
v-for="item in record.conSaleMediaVoList"
|
||||
:key="index + item.id"
|
||||
:style="
|
||||
align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id" :style="align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
? 'text-align: left;'
|
||||
: align == 'center'
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
"
|
||||
:title="item.period"
|
||||
>
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
" :title="item.period">
|
||||
{{ item.period }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -450,7 +390,7 @@
|
|||
<template #table-printPrice="{ text, record, index, align }">
|
||||
<div class="table-column-child">
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id" :title="formatNumber(item.mediaFee)"
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''">
|
||||
:style="align == 'right' ? 'text-align: right;' : align == 'left' ? 'text-align: left;' : align == 'center' ? 'text-align: center;' : ''">
|
||||
{{ formatNumber(item.printPrice) }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -458,20 +398,14 @@
|
|||
<template #table-discount="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div
|
||||
v-for="item in record.conSaleMediaVoList"
|
||||
:key="index + item.id"
|
||||
:style="
|
||||
align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id" :style="align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
? 'text-align: left;'
|
||||
: align == 'center'
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
"
|
||||
:title="item.discount"
|
||||
>
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
" :title="item.discount">
|
||||
{{
|
||||
item.discount
|
||||
}}
|
||||
|
|
@ -485,19 +419,14 @@
|
|||
<template #table-mediaFee="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div
|
||||
v-for="item in record.conSaleMediaVoList"
|
||||
:key="index + item.id"
|
||||
:style="
|
||||
align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id" :style="align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
? 'text-align: left;'
|
||||
: align == 'center'
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
"
|
||||
:title="formatNumber(item.mediaFee)">
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
" :title="formatNumber(item.mediaFee)">
|
||||
{{ formatNumber(item.mediaFee) }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -509,19 +438,14 @@
|
|||
<template #table-productFee="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<div class="table-column-child">
|
||||
<div
|
||||
v-for="item in record.conSaleMediaVoList"
|
||||
:key="index + item.id"
|
||||
:style="
|
||||
align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
<div v-for="item in record.conSaleMediaVoList" :key="index + item.id" :style="align == 'right'
|
||||
? 'text-align: right;'
|
||||
: align == 'left'
|
||||
? 'text-align: left;'
|
||||
: align == 'center'
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
"
|
||||
:title="formatNumber(item.productFee)">
|
||||
? 'text-align: center;'
|
||||
: ''
|
||||
" :title="formatNumber(item.productFee)">
|
||||
{{ formatNumber(item.productFee) }}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -538,41 +462,41 @@
|
|||
<template #table-contractAccess="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<img src="@/assets/images/file-type/file2.png" alt=""
|
||||
:title="record.contractAccessList.map(item => item.realName).join('\n')"
|
||||
v-if="record.contractAccessList && record.contractAccessList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;"/>
|
||||
:title="record.contractAccessList.map(item => item.realName).join('\n')"
|
||||
v-if="record.contractAccessList && record.contractAccessList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;" />
|
||||
</template>
|
||||
</template>
|
||||
<template #table-upPrint="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<img src="@/assets/images/file-type/file2.png" alt=""
|
||||
:title="record.upPrintList.map(item => item.realName).join('\n')"
|
||||
v-if="record.upPrintList && record.upPrintList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;"/>
|
||||
:title="record.upPrintList.map(item => item.realName).join('\n')"
|
||||
v-if="record.upPrintList && record.upPrintList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;" />
|
||||
</template>
|
||||
</template>
|
||||
<template #table-exchangePrint="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<img src="@/assets/images/file-type/file2.png" alt=""
|
||||
:title="record.exchangePrintList.map(item => item.realName).join('\n')"
|
||||
v-if="record.exchangePrintList && record.exchangePrintList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;"/>
|
||||
:title="record.exchangePrintList.map(item => item.realName).join('\n')"
|
||||
v-if="record.exchangePrintList && record.exchangePrintList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;" />
|
||||
</template>
|
||||
</template>
|
||||
<template #table-nextPrint="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<img src="@/assets/images/file-type/file2.png" alt=""
|
||||
:title="record.nextPrintList.map(item => item.realName).join('\n')"
|
||||
v-if="record.nextPrintList && record.nextPrintList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;"/>
|
||||
:title="record.nextPrintList.map(item => item.realName).join('\n')"
|
||||
v-if="record.nextPrintList && record.nextPrintList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;" />
|
||||
</template>
|
||||
</template>
|
||||
<template #table-mediaLink="{ text, record, index, align }">
|
||||
<template v-if="record.serial != '合计'">
|
||||
<img src="@/assets/images/file-type/file2.png" alt=""
|
||||
:title="record.mediaLinkList.map(item => item.realName).join('\n')"
|
||||
v-if="record.mediaLinkList && record.mediaLinkList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;"/>
|
||||
:title="record.mediaLinkList.map(item => item.realName).join('\n')"
|
||||
v-if="record.mediaLinkList && record.mediaLinkList.length > 0" @click="handleDown(record)"
|
||||
style="width: 22px; height: 27px;" />
|
||||
</template>
|
||||
</template>
|
||||
<!-- 附件止 -->
|
||||
|
|
@ -583,18 +507,12 @@
|
|||
</template>
|
||||
<template #table-action="{ record }">
|
||||
<template v-if="!tableConfig.isExtendAction">
|
||||
<img
|
||||
src="@/assets/images/icon-option.png"
|
||||
alt=""
|
||||
style="width: 18px; height: 18px"
|
||||
@click="showOrCloseActionExtend(true)"
|
||||
/>
|
||||
<img src="@/assets/images/icon-option.png" alt="" style="width: 18px; height: 18px"
|
||||
@click="showOrCloseActionExtend(true)" />
|
||||
</template>
|
||||
<template v-else>
|
||||
<template v-if="record.serial != '合计'">
|
||||
<div
|
||||
style="white-space: nowrap; vertical-align: middle; color: #00a026"
|
||||
>
|
||||
<div style="white-space: nowrap; vertical-align: middle; color: #00a026">
|
||||
<template v-if="record.state != 2">
|
||||
<a @click="handleView(record)">查看</a>
|
||||
<span style="margin-left: 5px; margin-right: 5px">|</span>
|
||||
|
|
@ -603,11 +521,7 @@
|
|||
<a @click="handleCollectManage(record)">回款管理</a>
|
||||
<span style="margin-left: 5px; margin-right: 5px">|</span>
|
||||
<a @click="handleDown(record)">下载</a>
|
||||
<span
|
||||
style="margin-left: 5px; margin-right: 5px"
|
||||
v-if="record.state == 1 || record.state == 2"
|
||||
>|</span
|
||||
>
|
||||
<span style="margin-left: 5px; margin-right: 5px" v-if="record.state == 1 || record.state == 2">|</span>
|
||||
</template>
|
||||
<a @click="handleNullify(record)" v-if="record.state == 1">作废</a>
|
||||
<a @click="handleRecovery(record)" v-if="record.state == 2">恢复</a>
|
||||
|
|
@ -619,20 +533,16 @@
|
|||
|
||||
|
||||
<!-- 下载附件的弹窗 -->
|
||||
<el-dialog-copy
|
||||
class="el-custom-form"
|
||||
:visible.sync="enclosureObj.visible"
|
||||
title="附件下载"
|
||||
@close="closeModal"
|
||||
>
|
||||
<el-dialog-copy class="el-custom-form" :visible.sync="enclosureObj.visible" title="附件下载" @close="closeModal">
|
||||
<template #bo>
|
||||
<div class="flexEndCenter" style="margin-bottom: 10px;">
|
||||
<div class="pubBtn flexCenterCenter" @click="downloadAll">全部下载</div>
|
||||
</div>
|
||||
<Enclosure :fileList="enclosureObj.formModel.contractAccessList" title="合同附件"
|
||||
v-if="enclosureObj.formModel.contractAccessList && enclosureObj.formModel.contractAccessList.length"></Enclosure>
|
||||
v-if="enclosureObj.formModel.contractAccessList && enclosureObj.formModel.contractAccessList.length">
|
||||
</Enclosure>
|
||||
<Enclosure :fileList="enclosureObj.formModel.mediaLinkList" title="其他附件"
|
||||
v-if="enclosureObj.formModel.mediaLinkList && enclosureObj.formModel.mediaLinkList.length"></Enclosure>
|
||||
v-if="enclosureObj.formModel.mediaLinkList && enclosureObj.formModel.mediaLinkList.length"></Enclosure>
|
||||
</template>
|
||||
</el-dialog-copy>
|
||||
<DownloadList ref="downloadList"></DownloadList>
|
||||
|
|
@ -642,7 +552,7 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import {getAction, exportAction, postAction, exportAction2} from "@/api/manage";
|
||||
import { getAction, exportAction, postAction, exportAction2 } from "@/api/manage";
|
||||
import moment from "moment";
|
||||
import { mapMutations } from 'vuex';
|
||||
import { cityDataCache } from "@/utils/cityDataCache";
|
||||
|
|
@ -661,7 +571,7 @@ import ElCustomDateRangePicker from '@/components/ElForm/ElCustomDateRangePicker
|
|||
import ChildRows from '@/components/ElTable/ChildRows.vue'
|
||||
import DownloadList from '@/components/ElTable/DownloadList.vue';
|
||||
import store from '@/store'
|
||||
import {getToken} from "@/utils/auth";
|
||||
import { getToken } from "@/utils/auth";
|
||||
import ImportList from "@/components/ElTable/ImportList.vue";
|
||||
|
||||
export default {
|
||||
|
|
@ -669,9 +579,9 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
importData: [],
|
||||
importUrl: process.env.VUE_APP_BASE_API+'/contract/sale/import',
|
||||
importUrl: process.env.VUE_APP_BASE_API + '/contract/sale/import',
|
||||
fileList: [],
|
||||
importHeaders: {Authorization: "Bearer " + getToken()},
|
||||
importHeaders: { Authorization: "Bearer " + getToken() },
|
||||
searchItems,
|
||||
selectedRowKeys: [],
|
||||
showColumnBtn: false,
|
||||
|
|
@ -708,12 +618,12 @@ export default {
|
|||
firstList: [],
|
||||
secondList: [],
|
||||
isOverdueList: [
|
||||
{id: 1, label: '是'},
|
||||
{id: 0, label: '否'},
|
||||
{ id: 1, label: '是' },
|
||||
{ id: 0, label: '否' },
|
||||
],
|
||||
isCompetList: [
|
||||
{id: 1, label: '是'},
|
||||
{id: 2, label: '否'},
|
||||
{ id: 1, label: '是' },
|
||||
{ id: 2, label: '否' },
|
||||
],
|
||||
AEModal: {
|
||||
visible: false,
|
||||
|
|
@ -798,7 +708,7 @@ export default {
|
|||
},
|
||||
async costSummarizing() {
|
||||
this.selectedRowKeys = this.selectedRowKeys.filter(element => element !== undefined);
|
||||
const {code, data, msg} = await postAction(`/contract/sale/getSaleTatol`, {
|
||||
const { code, data, msg } = await postAction(`/contract/sale/getSaleTatol`, {
|
||||
...this.$refs.tableRef.queryParams,
|
||||
...this.$refs.tableRef.pageParams,
|
||||
signTimeStar: this.$refs.tableRef.queryParams.timesRange && this.$refs.tableRef.queryParams.timesRange.length ? moment(this.$refs.tableRef.queryParams.timesRange[0]).format('YYYY-MM-DD') : undefined,
|
||||
|
|
@ -811,6 +721,7 @@ export default {
|
|||
})
|
||||
if (code == 200) {
|
||||
this.summarys = data
|
||||
console.log('summarys', this.summarys)
|
||||
} else {
|
||||
this.$message.error(msg)
|
||||
}
|
||||
|
|
@ -830,7 +741,8 @@ export default {
|
|||
productFeeTotal, // 制作费
|
||||
contractMoneyTotal, // 合同金额
|
||||
competReverMoneySum, // 比稿返点金额
|
||||
otherReverMoneySum, // 其他返点金额
|
||||
otherReverMoneySum, // 其他返点金额1
|
||||
otherReverMoneySum2, // 其他返点金额2
|
||||
} = this.summarys
|
||||
|
||||
const totalEle = this.getSummaryElement('总计', total, '条')
|
||||
|
|
@ -839,7 +751,8 @@ export default {
|
|||
const productFeeEle = this.getSummaryElement('制作费金额', productFeeTotal, '元', '¥')
|
||||
const contractMoneySumEle = this.getSummaryElement('合同总金额', contractMoneyTotal, '元', '¥')
|
||||
const competReverMoneySumEle = this.getSummaryElement('比稿返点金额', competReverMoneySum, '元', '¥')
|
||||
const otherReverMoneySumEle = this.getSummaryElement('其他返点金额', otherReverMoneySum, '元', '¥')
|
||||
const otherReverMoneySumEle = this.getSummaryElement('其他返点金额1', otherReverMoneySum, '元', '¥')
|
||||
const otherReverMoneySumEle2 = this.getSummaryElement('其他返点金额2', otherReverMoneySum2, '元', '¥')
|
||||
|
||||
// 如果显示了多选按钮
|
||||
if (this.showCheckFlag) {
|
||||
|
|
@ -851,6 +764,7 @@ export default {
|
|||
sums[18] = contractMoneySumEle
|
||||
sums[21] = competReverMoneySumEle
|
||||
sums[23] = otherReverMoneySumEle
|
||||
sums[25] = otherReverMoneySumEle2
|
||||
} else {
|
||||
sums[0] = '合计'
|
||||
sums[1] = totalEle
|
||||
|
|
@ -860,6 +774,7 @@ export default {
|
|||
sums[17] = contractMoneySumEle
|
||||
sums[20] = competReverMoneySumEle
|
||||
sums[22] = otherReverMoneySumEle
|
||||
sums[24] = otherReverMoneySumEle2
|
||||
}
|
||||
|
||||
return sums;
|
||||
|
|
@ -925,16 +840,16 @@ export default {
|
|||
handleAdd() {
|
||||
this.showColumnBtn = false
|
||||
this.showCheckFlag = false
|
||||
this.$router.push({path: `/contract/sale/AddSalesContract`})
|
||||
this.$router.push({ path: `/contract/sale/AddSalesContract` })
|
||||
},
|
||||
// 修改
|
||||
handleUpdate(record) {
|
||||
console.log('%c [ record ]-475', 'font-size:13px; background:pink; color:#bf2c9f;', record)
|
||||
this.$router.push({path: `/contract/sale/EditSalesContract`, query: {id: record.id}})
|
||||
this.$router.push({ path: `/contract/sale/EditSalesContract`, query: { id: record.id } })
|
||||
},
|
||||
// 回款管理
|
||||
handleCollectManage(record) {
|
||||
this.$router.push({path: `/contract/sale/SalesCollectManageList`, query: {id: record.id}})
|
||||
this.$router.push({ path: `/contract/sale/SalesCollectManageList`, query: { id: record.id } })
|
||||
},
|
||||
// 附件下载
|
||||
handleDown(record) {
|
||||
|
|
@ -980,10 +895,10 @@ export default {
|
|||
this.handleShowDownList()
|
||||
for (const item of this.downTaskList) {
|
||||
try {
|
||||
this.updateDownloadTask({id: item.taskId, status: 'downloading'});
|
||||
this.updateDownloadTask({ id: item.taskId, status: 'downloading' });
|
||||
await exportAction2(`/fileupload/api/download/${item.identifier}/${item.name}`);
|
||||
this.updateDownloadTask({id: item.taskId, status: 'complete'});
|
||||
this.$notification.success({message: '下载成功'})
|
||||
this.updateDownloadTask({ id: item.taskId, status: 'complete' });
|
||||
this.$notification.success({ message: '下载成功' })
|
||||
} catch (error) {
|
||||
console.log(`全部下载:${error}`)
|
||||
}
|
||||
|
|
@ -998,11 +913,11 @@ export default {
|
|||
},
|
||||
// 查看
|
||||
handleView(record) {
|
||||
this.$router.push({path: `/contract/sale/DetailSalesContract`, query: {id: record.id}})
|
||||
this.$router.push({ path: `/contract/sale/DetailSalesContract`, query: { id: record.id } })
|
||||
},
|
||||
// 作废
|
||||
handleNullify(record) {
|
||||
this.$confirm('确定作废吗?', '提示', {type: 'warning'}).then(async (result) => {
|
||||
this.$confirm('确定作废吗?', '提示', { type: 'warning' }).then(async (result) => {
|
||||
const res = await getAction(`/contract/sale/editAblish/${record.id}`)
|
||||
if (res.code == 200) {
|
||||
this.$message.success('作废成功')
|
||||
|
|
@ -1012,7 +927,7 @@ export default {
|
|||
},
|
||||
// 恢复
|
||||
handleRecovery(record) {
|
||||
this.$confirm('确定恢复吗?', '提示', {type: 'warning'}).then(async (result) => {
|
||||
this.$confirm('确定恢复吗?', '提示', { type: 'warning' }).then(async (result) => {
|
||||
const res = await getAction(`/contract/sale/editRenew/${record.id}`)
|
||||
if (res.code == 200) {
|
||||
this.$message.success('恢复成功')
|
||||
|
|
@ -1065,7 +980,7 @@ export default {
|
|||
return false
|
||||
}
|
||||
const res = await exportAction(`/contract/sale/dynamicexport`, params)
|
||||
this.$notification.success({message: '下载成功'})
|
||||
this.$notification.success({ message: '下载成功' })
|
||||
} catch (error) {
|
||||
console.error('Error downloading the file:', error)
|
||||
}
|
||||
|
|
@ -1141,9 +1056,13 @@ export default {
|
|||
line-height: 45px;
|
||||
text-align: center;
|
||||
border-bottom: 1px solid #e8e8e8;
|
||||
white-space: nowrap; /* 确保文本在一行内显示 */
|
||||
overflow: hidden; /* 超出容器部分隐藏 */
|
||||
text-overflow: ellipsis; /* 超出部分显示为... */
|
||||
white-space: nowrap;
|
||||
/* 确保文本在一行内显示 */
|
||||
overflow: hidden;
|
||||
/* 超出容器部分隐藏 */
|
||||
text-overflow: ellipsis;
|
||||
|
||||
/* 超出部分显示为... */
|
||||
&:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
|
|
@ -1210,7 +1129,7 @@ export default {
|
|||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
> div {
|
||||
>div {
|
||||
flex: 1;
|
||||
|
||||
&:first-child {
|
||||
|
|
@ -1256,4 +1175,3 @@ export default {
|
|||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ module.exports = {
|
|||
proxy: {
|
||||
// detail: https://cli.vuejs.org/config/#devserver-proxy
|
||||
[process.env.VUE_APP_BASE_API]: {
|
||||
target: `http://192.168.1.17:9077`,
|
||||
target: `http://43.143.229.145:9077`,
|
||||
// target: `http://182.40.36.180:9077`,
|
||||
changeOrigin: true,
|
||||
pathRewrite: {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user