【update】-branch20240105上线代码的调整
This commit is contained in:
@@ -126,6 +126,12 @@ const addPayConfirm = (param) => postAction('/payConfirmPaymentRecord/add', para
|
||||
const editPayConfirm = (param) => postAction('/payConfirmPaymentRecord/edit', param)
|
||||
|
||||
|
||||
// 撤销开票
|
||||
const revokeInvoice = (params) => postAction(`/paymentRecord/payPaymentRecord/backInvoice?id=${params}`)
|
||||
// 撤销确认来款信息
|
||||
const revokeConfirm = (params) => postAction(`/payConfirmPaymentRecord/backIncoming?id=${params}`)
|
||||
|
||||
|
||||
//2023-07-13 工作组相关功能的接口
|
||||
// 判断当前节点 是否可以发邮件
|
||||
const judgeEmailStatus = (param) => getAction('/sys/message/sysMessageTemplate/queryByCode', param)
|
||||
@@ -196,6 +202,9 @@ export {
|
||||
addPayConfirm,
|
||||
editPayConfirm,
|
||||
|
||||
revokeInvoice,
|
||||
revokeConfirm,
|
||||
|
||||
|
||||
judgeEmailStatus
|
||||
}
|
||||
|
||||
@@ -165,15 +165,16 @@ const user = {
|
||||
Logout({ commit, state }) {
|
||||
return new Promise((resolve) => {
|
||||
let logoutToken = state.token
|
||||
commit('SET_TOKEN', '')
|
||||
commit('SET_PERMISSIONLIST', [])
|
||||
Vue.ls.remove(ACCESS_TOKEN)
|
||||
Vue.ls.remove(USER_INFO)
|
||||
Vue.ls.remove(USER_NAME)
|
||||
Vue.ls.remove(UI_CACHE_DB_DICT_DATA)
|
||||
Vue.ls.remove(CACHE_INCLUDED_ROUTES)
|
||||
|
||||
//console.log('logoutToken: '+ logoutToken)
|
||||
logout(logoutToken).then(() => {
|
||||
commit('SET_TOKEN', '')
|
||||
commit('SET_PERMISSIONLIST', [])
|
||||
Vue.ls.remove(ACCESS_TOKEN)
|
||||
Vue.ls.remove(USER_INFO)
|
||||
Vue.ls.remove(USER_NAME)
|
||||
Vue.ls.remove(UI_CACHE_DB_DICT_DATA)
|
||||
Vue.ls.remove(CACHE_INCLUDED_ROUTES)
|
||||
if (process.env.VUE_APP_SSO == 'true') {
|
||||
let sevice = 'http://' + window.location.host + '/'
|
||||
let serviceUrl = encodeURIComponent(sevice)
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<a-row>
|
||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
||||
<a-col :sm="14" :xs="24" v-if="item.fieldName === 'rate'">{{ detailData[item.fieldName] }}%</a-col>
|
||||
<a-col :sm="14" :xs="24" v-else>{{ detailData[item.fieldName] }}</a-col>
|
||||
<a-col :sm="14" :xs="24" v-else>{{ item.format ? item.format(detailData[item.fieldName]) : detailData[item.fieldName] }}</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
</div>
|
||||
@@ -51,7 +51,7 @@
|
||||
:key="index">
|
||||
<a-row>
|
||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ item.format ? item.format(detailData[item.fieldName]) : detailData[item.fieldName] }}</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
</div>
|
||||
@@ -92,7 +92,7 @@
|
||||
<a-col :xxl="4" :xl="8" :sm="12" class="detail-item">
|
||||
<a-row>
|
||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ index + 1 }}阶段应付:</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ item.accountsReceivableAmount }}</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ formatMoney(item.accountsReceivableAmount) }}</a-col>
|
||||
</a-row>
|
||||
</a-col>
|
||||
<a-col :xxl="4" :xl="8" :sm="12" class="detail-item">
|
||||
@@ -104,7 +104,7 @@
|
||||
<a-col :xxl="4" :xl="8" :sm="12" class="detail-item">
|
||||
<a-row>
|
||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ index + 1 }}阶段实付:</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ item.paidAmount }}</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ formatMoney(item.paidAmount) }}</a-col>
|
||||
</a-row>
|
||||
</a-col>
|
||||
<a-col :xxl="4" :xl="8" :sm="12" class="detail-item">
|
||||
@@ -204,6 +204,7 @@ import PageHeaderTitle from '../../../components/layouts/PageHeaderTitle'
|
||||
import IconImg from '@/assets/imgs/icon/icon_revenue_contract.png'
|
||||
import { archiveExpenditureContract, getExpenditureContractById } from '../../../api/incomePaymentsApi'
|
||||
import RevenueContractAduitModule from '../revenueContract/modules/RevenueContractAduitModule'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'ExpenditureContractDetail',
|
||||
@@ -247,13 +248,15 @@ export default {
|
||||
title: '部门名称'
|
||||
}, {
|
||||
fieldName: 'contractAmount',
|
||||
title: '签订合同总金额'
|
||||
title: '签订合同总金额',
|
||||
format: formatMoney
|
||||
}, {
|
||||
fieldName: 'rate',
|
||||
title: '税率'
|
||||
}, {
|
||||
fieldName: 'noTaxAmount',
|
||||
title: '未税金额'
|
||||
title: '未税金额',
|
||||
format: formatMoney
|
||||
}
|
||||
],
|
||||
// 日期节点
|
||||
@@ -273,13 +276,16 @@ export default {
|
||||
accountInfoList: [
|
||||
{
|
||||
fieldName: 'accountsReceivableAmount',
|
||||
title: '应付金额'
|
||||
title: '应付金额',
|
||||
format: formatMoney
|
||||
}, {
|
||||
fieldName: 'amountReceived',
|
||||
title: '已付金额'
|
||||
title: '已付金额',
|
||||
format: formatMoney
|
||||
}, {
|
||||
fieldName: 'amountReceived',
|
||||
title: '未付金额'
|
||||
title: '未付金额',
|
||||
format: formatMoney
|
||||
}, {
|
||||
fieldName: 'accountStatus_dictText',
|
||||
title: '赊账状态'
|
||||
@@ -323,6 +329,7 @@ export default {
|
||||
this.initDetailData()
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
initDetailData() {
|
||||
if (!this.$route.query.revenueId) {
|
||||
return
|
||||
|
||||
@@ -120,6 +120,13 @@
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<!-- <a @click="handleAudit(record.id)" v-has="'expenditureContract:aduit'" v-if="record.status === 2">审核</a>-->
|
||||
@@ -157,6 +164,7 @@ import JDate from '../../../components/tools/JDate'
|
||||
import { archiveExpenditureContract, cancellationExpenditureContract } from '../../../api/incomePaymentsApi'
|
||||
import RevenueContractAduitModule from '../revenueContract/modules/RevenueContractAduitModule'
|
||||
import MailDetailModal from '../modules/MailDetailModal'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'ExpenditureContractList',
|
||||
@@ -221,7 +229,7 @@ export default {
|
||||
align: 'center',
|
||||
dataIndex: 'contractAmount',
|
||||
width: 160,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
scopedSlots: { customRender: 'allMoney' }
|
||||
}, {
|
||||
title: '状态',
|
||||
align: 'center',
|
||||
@@ -253,6 +261,7 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
handleAdd() {
|
||||
this.$router.push({
|
||||
path: '/contractManagement/RevenueContractModule'
|
||||
|
||||
@@ -133,7 +133,13 @@
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<template slot="nameText" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
@@ -179,6 +185,7 @@ import { archiveRevenueContract, cancellationContract } from '../../../api/incom
|
||||
import JYearDate from '../../../components/jero/JYearDate'
|
||||
import MailDetailModal from '../modules/MailDetailModal'
|
||||
import RevenueContractEditNum from './modules/RevenueContractEditNum'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'RevenueContractList',
|
||||
@@ -268,7 +275,8 @@ export default {
|
||||
title: '合同总金额',
|
||||
align: 'center',
|
||||
dataIndex: 'contractAmount',
|
||||
width: 160
|
||||
width: 160,
|
||||
scopedSlots: { customRender: 'allMoney' }
|
||||
}, {
|
||||
title: '状态',
|
||||
align: 'center',
|
||||
@@ -293,6 +301,7 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
searchReset() {
|
||||
this.lastQueryParam = {}
|
||||
this.queryParam = {}
|
||||
|
||||
@@ -12,8 +12,21 @@
|
||||
:loading="associatedProjectLoading"
|
||||
class="j-table-force-nowrap associated-project">
|
||||
|
||||
<!--<template slot="text" slot-scope="text">-->
|
||||
<!-- <j-ellipsis :value="text" :length="18"></j-ellipsis>-->
|
||||
<!--</template>-->
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis :value="text" :length="18"></j-ellipsis>
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record" v-if="canOperate">
|
||||
@@ -29,6 +42,7 @@
|
||||
|
||||
<script>
|
||||
import { cancelAssociatedProject, getAssociatedProject, submitAudit } from '../../../../api/incomePaymentsApi'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'AssociatedProject',
|
||||
@@ -81,13 +95,13 @@ export default {
|
||||
align: 'center',
|
||||
dataIndex: 'receivableAmount',
|
||||
width: 250,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
scopedSlots: { customRender: 'allMoney' }
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'paidAmount',
|
||||
width: 250,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
scopedSlots: { customRender: 'allMoney' }
|
||||
}, {
|
||||
title: '负责人',
|
||||
align: 'center',
|
||||
@@ -131,6 +145,7 @@ export default {
|
||||
this.loadAssociatedProject()
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
/**
|
||||
* 取消关联
|
||||
* @param id
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<a-row>
|
||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
||||
<a-col :sm="14" :xs="24" v-if="item.fieldName === 'rate'">{{ detailData[item.fieldName] }}%</a-col>
|
||||
<a-col :sm="14" :xs="24" v-else>{{ detailData[item.fieldName] }}</a-col>
|
||||
<a-col :sm="14" :xs="24" v-else>{{item.format ? item.format(detailData[item.fieldName]) : detailData[item.fieldName]}}</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
</div>
|
||||
@@ -51,7 +51,7 @@
|
||||
:key="index">
|
||||
<a-row>
|
||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ item.title }}:</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ detailData[item.fieldName] }}</a-col>
|
||||
<a-col :sm="14" :xs="24">{{item.format ? item.format(detailData[item.fieldName]) : detailData[item.fieldName]}}</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
</div>
|
||||
@@ -92,7 +92,7 @@
|
||||
<a-col :xxl="4" :xl="8" :sm="12" class="detail-item">
|
||||
<a-row>
|
||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ index + 1 }}阶段应收:</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ item.accountsReceivableAmount }}</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ formatMoney(item.accountsReceivableAmount) }}</a-col>
|
||||
</a-row>
|
||||
</a-col>
|
||||
<a-col :xxl="4" :xl="8" :sm="12" class="detail-item">
|
||||
@@ -104,7 +104,7 @@
|
||||
<a-col :xxl="4" :xl="8" :sm="12" class="detail-item">
|
||||
<a-row>
|
||||
<a-col :sm="10" :xs="24" class="detail-item-title">{{ index + 1 }}阶段实收:</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ item.paidAmount }}</a-col>
|
||||
<a-col :sm="14" :xs="24">{{ formatMoney(item.paidAmount) }}</a-col>
|
||||
</a-row>
|
||||
</a-col>
|
||||
<a-col :xxl="4" :xl="8" :sm="12" class="detail-item">
|
||||
@@ -208,6 +208,7 @@ import PageHeaderTitle from '@/components/layouts/PageHeaderTitle'
|
||||
import { archiveRevenueContract, getRevenueContractById } from '../../../../api/incomePaymentsApi'
|
||||
import AssociatedProject from './AssociatedProject'
|
||||
import RevenueContractAduitModule from './RevenueContractAduitModule'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'RevenueContractDetail',
|
||||
@@ -242,13 +243,15 @@ export default {
|
||||
title: '部门名称'
|
||||
}, {
|
||||
fieldName: 'contractAmount',
|
||||
title: '签订合同总金额'
|
||||
title: '签订合同总金额',
|
||||
format: formatMoney
|
||||
}, {
|
||||
fieldName: 'rate',
|
||||
title: '税率'
|
||||
}, {
|
||||
fieldName: 'noTaxAmount',
|
||||
title: '未税金额'
|
||||
title: '未税金额',
|
||||
format: formatMoney
|
||||
}
|
||||
],
|
||||
// 日期节点
|
||||
@@ -268,13 +271,16 @@ export default {
|
||||
accountInfoList: [
|
||||
{
|
||||
fieldName: 'accountsReceivableAmount',
|
||||
title: '待确收金额'
|
||||
title: '待确收金额',
|
||||
format: formatMoney
|
||||
}, {
|
||||
fieldName: 'amountReceived',
|
||||
title: '已收金额'
|
||||
title: '已收金额',
|
||||
format: formatMoney
|
||||
}, {
|
||||
fieldName: 'outstandingAmount',
|
||||
title: '未收金额'
|
||||
title: '未收金额',
|
||||
format: formatMoney
|
||||
}, {
|
||||
fieldName: 'accountStatus_dictText',
|
||||
title: '赊账状态'
|
||||
@@ -322,6 +328,7 @@ export default {
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
initDetailData() {
|
||||
this.loading = true
|
||||
let param = {
|
||||
|
||||
@@ -113,7 +113,17 @@
|
||||
</template>
|
||||
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis :value="text" :length="18"></j-ellipsis>
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<template slot="contact" slot-scope="text">
|
||||
@@ -244,6 +254,7 @@ import ConfirmStageModule from './modules/ConfirmStageModule'
|
||||
import {getPayConfirmList} from '../../../api/incomePaymentsApi'
|
||||
import JDictSelectTag from '@comp/dict/JDictSelectTag'
|
||||
import InvoiceInfoChangeModule from '../../packManagement/modules/InvoiceInfoChangeModule'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
// 项目类型 数据字典 的定义 和数据库的保持一致
|
||||
const ProjectTypeEnums = {
|
||||
@@ -331,13 +342,13 @@ export default {
|
||||
align: 'center',
|
||||
width: 100,
|
||||
dataIndex: 'receivableAmount',
|
||||
scopedSlots: {customRender: 'text'}
|
||||
scopedSlots: {customRender: 'allMoney'}
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
width: 100,
|
||||
dataIndex: 'paidAmount',
|
||||
scopedSlots: {customRender: 'text'}
|
||||
scopedSlots: {customRender: 'allMoney'}
|
||||
}, {
|
||||
title: '缴费凭证状态',
|
||||
align: 'center',
|
||||
@@ -413,10 +424,12 @@ export default {
|
||||
computed: {
|
||||
// 批量来款是否可以新增阶段--会员缴费、证书缴费 不能新增阶段
|
||||
canAddStage() {
|
||||
return Number(this.selectProjectType) !== 5 && Number(this.selectProjectType) !== 6
|
||||
// return Number(this.selectProjectType) !== 5 && Number(this.selectProjectType) !== 6
|
||||
return true
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
getPayConfirmList,
|
||||
/**
|
||||
* 来款
|
||||
|
||||
@@ -15,6 +15,9 @@
|
||||
<div class="title">
|
||||
<div class="title-text">第{{ item.chinaNumIndex }}阶段</div>
|
||||
<img src="../../../../assets/imgs/icon/icon_edit.png" @click="handleEdit(item)">
|
||||
<!--证书项目 与会员项目没有撤销功能-->
|
||||
<span class="revoke" @click="handleRevoke(item)" v-has="'incomePaymentAndInvoicing:revokeConfirm'" v-if=" !(projectType === 5 || projectType === 6) ">撤销</span>
|
||||
|
||||
</div>
|
||||
<a-row>
|
||||
<a-col :span="6">
|
||||
@@ -75,7 +78,7 @@
|
||||
|
||||
<script>
|
||||
import ConfirmModule from './ConfirmModule'
|
||||
import {getPayConfirmList} from '../../../../api/incomePaymentsApi'
|
||||
import { getPayConfirmList, revokeConfirm } from "../../../../api/incomePaymentsApi";
|
||||
import {ajaxGetDictItems} from '@api/api'
|
||||
|
||||
export default {
|
||||
@@ -96,6 +99,11 @@ export default {
|
||||
default: false
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
projectType() {
|
||||
return this.$attrs['project-type']
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
title: '确认收入阶段',
|
||||
@@ -153,6 +161,26 @@ export default {
|
||||
this.$refs.confirmModal.title = '编辑阶段'
|
||||
this.$refs.confirmModal.edit(record, this.projectInfo)
|
||||
},
|
||||
/**
|
||||
* 撤销
|
||||
* */
|
||||
handleRevoke(record) {
|
||||
let that = this
|
||||
this.$confirm({
|
||||
title: '确认撤销',
|
||||
content: '确定要撤销确认收入吗?',
|
||||
onOk: function () {
|
||||
revokeConfirm(record.id).then(res => {
|
||||
if (res.success) {
|
||||
that.$message.success(res.message)
|
||||
that.loadData()
|
||||
} else {
|
||||
that.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel() {
|
||||
this.close()
|
||||
},
|
||||
@@ -218,6 +246,12 @@ export default {
|
||||
.stage-box {
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
.revoke {
|
||||
color: #069f99;
|
||||
user-select: none;
|
||||
margin-left: 8px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.title {
|
||||
display: flex;
|
||||
|
||||
@@ -14,6 +14,9 @@
|
||||
<div class="title">
|
||||
<div class="title-text">第{{ item.chinaNumIndex }}阶段</div>
|
||||
<img src="../../../../assets/imgs/icon/icon_edit.png" @click="handleEdit(item)">
|
||||
<!--证书项目 与会员项目没有撤销功能-->
|
||||
<span class="revoke" @click="handleRevoke(item)" v-has="'incomePaymentAndInvoicing:revokeInvoice'" v-if=" !(projectType === 5 || projectType === 6) ">撤销</span>
|
||||
|
||||
</div>
|
||||
<a-row>
|
||||
<a-col :span="6">
|
||||
@@ -88,7 +91,7 @@
|
||||
|
||||
<script>
|
||||
import InvoicingModule from './InvoicingModule'
|
||||
import { payBillList } from '../../../../api/incomePaymentsApi'
|
||||
import { payBillList, revokeInvoice } from '../../../../api/incomePaymentsApi'
|
||||
import {ajaxGetDictItems} from '@api/api'
|
||||
|
||||
export default {
|
||||
@@ -109,6 +112,11 @@ export default {
|
||||
default: false
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
projectType() {
|
||||
return this.$attrs['project-type']
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
title: '开票阶段',
|
||||
@@ -160,6 +168,26 @@ export default {
|
||||
this.$refs.invoicingModal.title = '编辑阶段'
|
||||
this.$refs.invoicingModal.edit(record)
|
||||
},
|
||||
/**
|
||||
* 撤销
|
||||
* */
|
||||
handleRevoke(record) {
|
||||
let that = this
|
||||
this.$confirm({
|
||||
title: '确认撤销',
|
||||
content: '确定要撤销开票吗?',
|
||||
onOk: function () {
|
||||
revokeInvoice(record.id).then(res => {
|
||||
if (res.success) {
|
||||
that.$message.success(res.message)
|
||||
that.loadData()
|
||||
} else {
|
||||
that.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel() {
|
||||
this.close()
|
||||
},
|
||||
@@ -226,6 +254,13 @@ export default {
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.revoke {
|
||||
color: #069f99;
|
||||
user-select: none;
|
||||
margin-left: 8px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
@@ -340,6 +340,14 @@
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<!-- 打包、需要发票、到账、开票、邮寄状态-->
|
||||
<template slot="status" slot-scope="text,record">
|
||||
<status-slot :statu-obj="record" :status-no="text" :status-type="true"></status-slot>
|
||||
@@ -414,6 +422,7 @@ import JImageUpload from '@comp/jero/JImageUpload'
|
||||
import SetGuessUploadFlagModal from './modules/SetGuessUploadFlagModal'
|
||||
import { downloadFile } from '../../../api/manage'
|
||||
import WasicTopicData from './modules/wasicStaticData'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
|
||||
export default {
|
||||
@@ -465,12 +474,14 @@ export default {
|
||||
title: '待确收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'amountReceivable',
|
||||
scopedSlots: {customRender: 'allMoney'},
|
||||
width: 100
|
||||
},
|
||||
{
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'paidAmount',
|
||||
scopedSlots: {customRender: 'allMoney'},
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
@@ -804,6 +815,7 @@ export default {
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
// 处理国际研讨会-WASIC-已经选择的数据如何展示
|
||||
handleWasicLinkTopics(currentMeetingInfo, dictKey) {
|
||||
dictKey = dictKey || 'linkTopics'
|
||||
|
||||
@@ -93,8 +93,17 @@
|
||||
</template>
|
||||
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis v-if="text" :value="text" :length="20"></j-ellipsis>
|
||||
<span v-else></span>
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<template slot="status" slot-scope="text, record">
|
||||
@@ -139,6 +148,7 @@ import '@/assets/less/TableExpand.less'
|
||||
import StatusSlot from '@comp/tools/StatusSlot'
|
||||
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
||||
import JDate from '@comp/tools/JDate'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'CertificateMaintenanceList',
|
||||
@@ -197,13 +207,13 @@ export default {
|
||||
title: '待确收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'amountReceivable',
|
||||
scopedSlots: { customRender: 'text' },
|
||||
scopedSlots: { customRender: 'allMoney' },
|
||||
},
|
||||
{
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'paidAmount',
|
||||
scopedSlots: { customRender: 'text' },
|
||||
scopedSlots: { customRender: 'allMoney' },
|
||||
},
|
||||
{
|
||||
title: '打包',
|
||||
@@ -251,6 +261,9 @@ export default {
|
||||
this.filters.projectId = this.$route.query.id
|
||||
this.loadData(1)
|
||||
},
|
||||
methods: {
|
||||
formatMoney
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
@@ -62,8 +62,17 @@
|
||||
</template>
|
||||
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis v-if="text" :value="text" :length="20"></j-ellipsis>
|
||||
<span v-else></span>
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleEdit(record)" v-has="'memberProject:edit'">编辑</a>
|
||||
@@ -85,6 +94,7 @@ import MemberProjectModal from '@views/incomePayments/memberManage/modules/Membe
|
||||
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
||||
import IconImg from '@/assets/imgs/icon/icon_data_members.png'
|
||||
import '@/assets/less/TableExpand.less'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
mixins: [JeroListMixin, mixinDevice],
|
||||
@@ -118,7 +128,7 @@ export default {
|
||||
title: '收费标准',
|
||||
align: 'center',
|
||||
dataIndex: 'chargeStandard',
|
||||
scopedSlots: {customRender: 'text'}
|
||||
scopedSlots: {customRender: 'allMoney'}
|
||||
},
|
||||
{
|
||||
title: '负责人',
|
||||
@@ -147,6 +157,7 @@ export default {
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
/*
|
||||
* 会员项目成员维护
|
||||
* */
|
||||
|
||||
@@ -47,6 +47,17 @@
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.year"></j-year-date>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="预估到账日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-range-picker
|
||||
style="width: 100%"
|
||||
v-model="queryParam.estimatedArrivalDate"
|
||||
format="YYYY-MM-DD"
|
||||
:placeholder="['开始时间', '结束时间']"
|
||||
@change="onDateChange"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'safeguardMember:search'">查询</a-button>
|
||||
@@ -80,6 +91,7 @@
|
||||
bordered
|
||||
rowKey="id"
|
||||
:columns="columns"
|
||||
:scroll="{x: 1500}"
|
||||
:dataSource="dataSource"
|
||||
:pagination="ipagination"
|
||||
:loading="loading"
|
||||
@@ -88,11 +100,24 @@
|
||||
@change="handleTableChange">
|
||||
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis v-if="text" :value="text" :length="20"></j-ellipsis>
|
||||
<span v-else></span>
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<template slot="member" slot-scope="text,record">
|
||||
<div @click="openDetail(record)" class="primary-color">{{ text }}</div>
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
<div @click="openDetail(record)" class="primary-color table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<template slot="status" slot-scope="text,record">
|
||||
@@ -136,6 +161,7 @@ import ProjectDetailModal from '@comp/ProjectDetailModal'
|
||||
import StatusSlot from '@comp/tools/StatusSlot'
|
||||
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
||||
import PreviewFile from '@comp/jero/PreviewFile'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
|
||||
import {getAction} from '@api/manage'
|
||||
@@ -175,51 +201,69 @@ export default {
|
||||
{
|
||||
title: '企业联系人',
|
||||
align: 'center',
|
||||
width: 120,
|
||||
dataIndex: 'companyContactName',
|
||||
},
|
||||
{
|
||||
title: '待确收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'amountReceivable',
|
||||
scopedSlots: {customRender: 'allMoney'}
|
||||
},
|
||||
{
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'paidAmount',
|
||||
scopedSlots: {customRender: 'allMoney'}
|
||||
},
|
||||
{
|
||||
title: '预估到账日期',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'estimatedArrivalDate',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '打包',
|
||||
align: 'center',
|
||||
width: 80,
|
||||
dataIndex: 'pack',
|
||||
scopedSlots: {customRender: 'status-pack'}
|
||||
},
|
||||
{
|
||||
title: '需要发票',
|
||||
align: 'center',
|
||||
width: 80,
|
||||
dataIndex: 'needInvoice',
|
||||
scopedSlots: {customRender: 'status-pack'}
|
||||
},
|
||||
{
|
||||
title: '到账',
|
||||
align: 'center',
|
||||
width: 80,
|
||||
dataIndex: 'inAccount',
|
||||
scopedSlots: {customRender: 'status'}
|
||||
},
|
||||
{
|
||||
title: '开票',
|
||||
align: 'center',
|
||||
width: 80,
|
||||
dataIndex: 'makeInvoice',
|
||||
scopedSlots: {customRender: 'status-bill'}
|
||||
},
|
||||
{
|
||||
title: '邮寄',
|
||||
align: 'center',
|
||||
width: 80,
|
||||
dataIndex: 'mail',
|
||||
scopedSlots: {customRender: 'status-mail'}
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
width: 180,
|
||||
dataIndex: '',
|
||||
scopedSlots: {customRender: 'action'}
|
||||
},
|
||||
@@ -252,6 +296,15 @@ export default {
|
||||
this.getChargeNoFile()
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
// 重写查询方法--删除预估到账日期属性
|
||||
searchQuery() {
|
||||
this.lastQueryParam = {...this.queryParam}
|
||||
if(this.lastQueryParam.estimatedArrivalDate) {
|
||||
delete this.lastQueryParam.estimatedArrivalDate
|
||||
}
|
||||
this.loadData(1)
|
||||
},
|
||||
/*
|
||||
* 打开项目详情模态框
|
||||
* */
|
||||
@@ -302,6 +355,10 @@ export default {
|
||||
this.currentInfo.fileName = res.result.fileName
|
||||
}
|
||||
})
|
||||
},
|
||||
onDateChange: function (value, dateString) {
|
||||
this.queryParam.estimatedArrivalStartDate = dateString[0]
|
||||
this.queryParam.estimatedArrivalEndDate = dateString[1]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -78,8 +78,17 @@
|
||||
</template>
|
||||
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis v-if="text" :value="text" :length="20"></j-ellipsis>
|
||||
<span v-else></span>
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<template slot="status" slot-scope="text, record">
|
||||
@@ -122,6 +131,7 @@ import ProjectDetailModal from '@comp/ProjectDetailModal'
|
||||
import '@/assets/less/TableExpand.less'
|
||||
import StatusSlot from '@comp/tools/StatusSlot'
|
||||
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'SafeguardStardsMemberList',
|
||||
@@ -196,13 +206,13 @@ export default {
|
||||
title: '待确收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'amountReceivable',
|
||||
scopedSlots: { customRender: 'text' },
|
||||
scopedSlots: { customRender: 'allMoney' }
|
||||
},
|
||||
{
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'paidAmount',
|
||||
scopedSlots: { customRender: 'text' },
|
||||
scopedSlots: { customRender: 'allMoney' }
|
||||
},
|
||||
{
|
||||
title: '打包',
|
||||
@@ -246,6 +256,9 @@ export default {
|
||||
this.filters.projectId = this.$route.query.id
|
||||
this.loadData(1)
|
||||
},
|
||||
methods: {
|
||||
formatMoney
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
@@ -132,6 +132,16 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row>
|
||||
<a-col :xl="12" :sm="24">
|
||||
<a-form-item label="预估到账日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-date placeholder="请选择预估到账日期"
|
||||
style="width: 100%;"
|
||||
v-decorator="['estimatedArrivalDate', validatorRules.estimatedArrivalDate]"
|
||||
:trigger-change="true"
|
||||
date-format="YYYY-MM-DD"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="12" :sm="24">
|
||||
<a-form-item
|
||||
label="需要发票"
|
||||
@@ -274,12 +284,14 @@ import { checkAssociatedProject } from '@/utils/projectCheck'
|
||||
import SelectRevenueContract from '../../../../components/tools/SelectRevenueContract'
|
||||
import JDictSelectTag from '@comp/dict/JDictSelectTag'
|
||||
import {CalcAmountMixin} from '@/mixins/CalcAmountMixin'
|
||||
import JDate from '@/components/tools/JDate'
|
||||
|
||||
export default {
|
||||
name: 'SafeguardMemberModal',
|
||||
mixins:[CalcAmountMixin],
|
||||
components: {
|
||||
JUpload,
|
||||
JDate,
|
||||
JDictSelectTag,
|
||||
CompanySelect,
|
||||
// ContactManagementModule,
|
||||
@@ -290,7 +302,7 @@ export default {
|
||||
return {
|
||||
title: '操作',
|
||||
ysjeKey:'amountReceivable',
|
||||
width: 800,
|
||||
width: 900,
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this),
|
||||
@@ -352,6 +364,10 @@ export default {
|
||||
rules: [{ required: true, message: '请选择发票类型' }],
|
||||
validateTrigger: ['change', 'blur'],
|
||||
initialValue: 0
|
||||
},
|
||||
estimatedArrivalDate: {
|
||||
rules: [{ required: true, message: '请选择预估到账日期' }],
|
||||
validateTrigger: 'change'
|
||||
}
|
||||
},
|
||||
// 来款方式
|
||||
@@ -448,6 +464,7 @@ export default {
|
||||
'taxRate',
|
||||
'tax',
|
||||
'noTaxAmount',
|
||||
'estimatedArrivalDate',
|
||||
'needInvoice',
|
||||
'paymentMethod',
|
||||
'contractNo',
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
size="middle"
|
||||
bordered
|
||||
rowKey="id"
|
||||
:scroll="{x: 1600}"
|
||||
:scroll="{x: 1300}"
|
||||
:columns="columns"
|
||||
:dataSource="dataSource"
|
||||
:pagination="ipagination"
|
||||
@@ -83,7 +83,17 @@
|
||||
</template>
|
||||
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis :value="text" :length="18"></j-ellipsis>
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ text }}</template>
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<span slot="print" slot-scope="text, record" class="action-span-cell">
|
||||
@@ -112,6 +122,7 @@ import JDate from '@comp/tools/JDate'
|
||||
import { downloadFile } from '@/api/manage'
|
||||
import SelectPrincipal from '@/components/company/SelectPrincipal'
|
||||
import ProjectDetailModal from '../../components/ProjectDetailModal'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'BillMail',
|
||||
@@ -143,7 +154,7 @@ export default {
|
||||
},
|
||||
{
|
||||
title: '来款项目',
|
||||
width: 280,
|
||||
width: 240,
|
||||
ellipsis: true,
|
||||
align: 'center',
|
||||
dataIndex: 'projectName',
|
||||
@@ -152,23 +163,24 @@ export default {
|
||||
{
|
||||
title: '票号',
|
||||
align: 'center',
|
||||
width: 200,
|
||||
width: 150,
|
||||
dataIndex: 'billNo',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '开票金额',
|
||||
align: 'center',
|
||||
width: 200,
|
||||
width: 120,
|
||||
dataIndex: 'invoiceAmount',
|
||||
customRender: (text, record) => (
|
||||
<j-ellipsis value={ record.invoiceAmount + '元' } length={ 15 }></j-ellipsis>
|
||||
)
|
||||
scopedSlots: {customRender: 'allMoney'}
|
||||
// customRender: (text, record) => (
|
||||
// <j-ellipsis value={ record.invoiceAmount + '元' } length={ 15 }></j-ellipsis>
|
||||
// )
|
||||
},
|
||||
{
|
||||
title: '项目负责人',
|
||||
align: 'center',
|
||||
width: 280,
|
||||
width: 120,
|
||||
dataIndex: 'principalName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
@@ -189,14 +201,14 @@ export default {
|
||||
{
|
||||
title: '邮寄联系人',
|
||||
align: 'center',
|
||||
width: 280,
|
||||
width: 120,
|
||||
dataIndex: 'contactName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '联系人电话',
|
||||
align: 'center',
|
||||
width: 200,
|
||||
width: 150,
|
||||
dataIndex: 'contactMobile',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
@@ -217,7 +229,7 @@ export default {
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
fixed: 'right',
|
||||
width: 160,
|
||||
width: 120,
|
||||
scopedSlots: { customRender: 'action' }
|
||||
}
|
||||
],
|
||||
@@ -228,6 +240,7 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
// 查看物流
|
||||
goLogistics(record) {
|
||||
const com = Number(record.sendMethod) === 1 && 'ems' || 'shunfeng'
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
size="middle"
|
||||
bordered
|
||||
rowKey="id"
|
||||
:scroll="{x:1600}"
|
||||
:scroll="{x:1300}"
|
||||
:columns="columns"
|
||||
:dataSource="dataSource"
|
||||
:pagination="ipagination"
|
||||
@@ -60,7 +60,7 @@
|
||||
class="j-table-force-nowrap"
|
||||
@change="handleTableChange">
|
||||
|
||||
<template slot="htmlSlot" slot-scope="text, record">
|
||||
<template slot="htmlSlot" slot-scope="text">
|
||||
<div class="primary-color" v-html="text"></div>
|
||||
</template>
|
||||
|
||||
@@ -70,6 +70,13 @@
|
||||
<div class="table-text">{{ text }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
|
||||
<span slot="print" slot-scope="text, record" class="action-span-cell">
|
||||
<a-button type="primary" :disabled="record.sendMethod === '1' ? false : true" @click="goPrint(record)">打印</a-button>
|
||||
@@ -96,6 +103,7 @@ import MailContractModal from './modules/MailContractModal'
|
||||
import { downloadFile } from '@/api/manage'
|
||||
import SelectPrincipal from '@/components/company/SelectPrincipal'
|
||||
import { checkCompanyAduit } from '../../api/incomePaymentsApi'
|
||||
import { formatMoney } from '@/utils/formatMoney'
|
||||
|
||||
export default {
|
||||
name: 'ContractMail',
|
||||
@@ -128,7 +136,7 @@ export default {
|
||||
{
|
||||
title: '合同编号',
|
||||
align: 'center',
|
||||
width: 300,
|
||||
width: 240,
|
||||
dataIndex: 'contractNum',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
@@ -142,51 +150,49 @@ export default {
|
||||
{
|
||||
title: '签订单位',
|
||||
align: 'center',
|
||||
width: 300,
|
||||
width: 280,
|
||||
dataIndex: 'signedCompanyTemporaryName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '负责人',
|
||||
align: 'center',
|
||||
width: 300,
|
||||
width: 120,
|
||||
dataIndex: 'principalName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '合同总金额',
|
||||
align: 'center',
|
||||
width: 200,
|
||||
width: 120,
|
||||
dataIndex: 'contractAmount',
|
||||
customRender: (text, record) => (
|
||||
<j-ellipsis value={ record.contractAmount ? record.contractAmount + '元' : '0.00元' } length={ 15 }></j-ellipsis>
|
||||
)
|
||||
scopedSlots: {customRender: 'allMoney'}
|
||||
},
|
||||
{
|
||||
title: '合同类型',
|
||||
align: 'center',
|
||||
width: 100,
|
||||
width: 80,
|
||||
dataIndex: 'contractType_dictText',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '邮寄联系人',
|
||||
align: 'center',
|
||||
width: 300,
|
||||
width: 120,
|
||||
dataIndex: 'liaisonMan',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '联系人电话',
|
||||
align: 'center',
|
||||
width: 200,
|
||||
width: 150,
|
||||
dataIndex: 'mobile',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '状态',
|
||||
align: 'center',
|
||||
width: 200,
|
||||
width: 100,
|
||||
dataIndex: 'postStatus_dictText',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
@@ -201,7 +207,7 @@ export default {
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
fixed: 'right',
|
||||
width: 160,
|
||||
width: 120,
|
||||
scopedSlots: { customRender: 'action' }
|
||||
}
|
||||
],
|
||||
@@ -212,6 +218,7 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
// 查看物流
|
||||
goLogistics(record) {
|
||||
const com = Number(record.sendMethod) === 1 && 'ems' || 'shunfeng'
|
||||
|
||||
@@ -42,6 +42,17 @@
|
||||
<j-year-date style="width:100%" placeholder="请选择运行年份" v-model="queryParam.year"></j-year-date>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="预估到账日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-range-picker
|
||||
style="width: 100%"
|
||||
v-model="queryParam.estimatedArrivalDate"
|
||||
format="YYYY-MM-DD"
|
||||
:placeholder="['开始时间', '结束时间']"
|
||||
@change="onDateChange"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'generalProject:search'">查询</a-button>
|
||||
@@ -85,6 +96,7 @@
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis :value="text" :length="15"></j-ellipsis>
|
||||
</template>
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
@@ -208,9 +220,15 @@ export default {
|
||||
}, {
|
||||
title: '企业联系人',
|
||||
align: 'center',
|
||||
width: 250,
|
||||
width: 140,
|
||||
dataIndex: 'contactsTemporaryName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '预估到账日期',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'estimatedArrivalDate',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '打包',
|
||||
align: 'center',
|
||||
@@ -259,6 +277,14 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
// 重写查询方法--删除预估到账日期属性
|
||||
searchQuery() {
|
||||
this.lastQueryParam = {...this.queryParam}
|
||||
if(this.lastQueryParam.estimatedArrivalDate) {
|
||||
delete this.lastQueryParam.estimatedArrivalDate
|
||||
}
|
||||
this.loadData(1)
|
||||
},
|
||||
/*
|
||||
* 打开项目详情模态框
|
||||
* */
|
||||
@@ -270,6 +296,10 @@ export default {
|
||||
}
|
||||
this.$refs.basicInfo = basicInfo
|
||||
this.$refs.projectDetail.open(record)
|
||||
},
|
||||
onDateChange: function (value, dateString) {
|
||||
this.queryParam.estimatedArrivalStartDate = dateString[0]
|
||||
this.queryParam.estimatedArrivalEndDate = dateString[1]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,6 +70,17 @@
|
||||
<a-input placeholder="请输入标签名称" v-model="queryParam.label" :maxLength='50'></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="预估到账日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-range-picker
|
||||
style="width: 100%"
|
||||
v-model="queryParam.estimatedArrivalDate"
|
||||
format="YYYY-MM-DD"
|
||||
:placeholder="['开始时间', '结束时间']"
|
||||
@change="onDateChange"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
@@ -135,7 +146,13 @@
|
||||
class="primary-color"
|
||||
@click="openDetailModal(record)"></j-ellipsis>
|
||||
</template>
|
||||
|
||||
<!--金钱 3位一逗号分隔-->
|
||||
<template slot="allMoney" slot-scope="text">
|
||||
<a-tooltip>
|
||||
<template slot="title">{{ formatMoney(text) }}</template>
|
||||
<div class="table-text">{{ formatMoney(text) }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!-- 打包、需要发票、到账、开票、邮寄状态-->
|
||||
<template slot="status" slot-scope="text,record">
|
||||
<status-slot :statu-obj="record" :status-no="text" :status-type="true"></status-slot>
|
||||
@@ -185,7 +202,7 @@
|
||||
import { JeroListMixin } from '@/mixins/JeroListMixin'
|
||||
import JYearDate from '@comp/jero/JYearDate'
|
||||
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
||||
import { getWorkingGroupById, getChargeNotice, dunningReminder } from '@api/incomePaymentsApi'
|
||||
import { getWorkingGroupById, dunningReminder } from '@api/incomePaymentsApi'
|
||||
import StatusSlot from '../../components/tools/StatusSlot'
|
||||
import ProjectDetailModal from '../../components/ProjectDetailModal'
|
||||
import WorkingGroupMemberUnitModule from './modules/WorkingGroupMemberUnitModule'
|
||||
@@ -195,6 +212,7 @@ import { ACCESS_TOKEN } from '../../store/mutation-types'
|
||||
import PreviewFile from '../../components/jero/PreviewFile'
|
||||
import EmailErrorMsgModal from './modules/EmailErrorMsgModal'
|
||||
import WorkGroupSetLabel from './modules/WorkGroupSetLabel'
|
||||
import { formatMoney } from '../../utils/formatMoney'
|
||||
|
||||
// eslint-disable-next-line no-undef,no-unused-vars
|
||||
const Base64 = require('js-base64').Base64
|
||||
@@ -303,23 +321,31 @@ export default {
|
||||
align: 'center',
|
||||
dataIndex: 'receivableAmount',
|
||||
width: 180,
|
||||
customRender: (text, record) => (
|
||||
<j-ellipsis value={ record.receivableAmount + '元' } length={ 15 }></j-ellipsis>
|
||||
)
|
||||
scopedSlots: {customRender: 'allMoney'},
|
||||
// customRender: (text, record) => (
|
||||
// <j-ellipsis value={ record.receivableAmount + '元' } length={ 15 }></j-ellipsis>
|
||||
// )
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'paidAmount',
|
||||
width: 180,
|
||||
customRender: (text, record) => (
|
||||
<j-ellipsis value={ record.paidAmount + '元' } length={ 15 }></j-ellipsis>
|
||||
)
|
||||
scopedSlots: {customRender: 'allMoney'},
|
||||
// customRender: (text, record) => (
|
||||
// <j-ellipsis value={ record.paidAmount + '元' } length={ 15 }></j-ellipsis>
|
||||
// )
|
||||
}, {
|
||||
title: '标签名称',
|
||||
align: 'center',
|
||||
dataIndex: 'label',
|
||||
width: 100,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '预估到账日期',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'estimatedArrivalDate',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
// 2021-10-22需求变更新加
|
||||
title: '收费通知号',
|
||||
@@ -389,6 +415,15 @@ export default {
|
||||
this.initWorkGroupData()
|
||||
},
|
||||
methods: {
|
||||
formatMoney,
|
||||
// 重写查询方法--删除预估到账日期属性
|
||||
searchQuery() {
|
||||
this.lastQueryParam = {...this.queryParam}
|
||||
if(this.lastQueryParam.estimatedArrivalDate) {
|
||||
delete this.lastQueryParam.estimatedArrivalDate
|
||||
}
|
||||
this.loadData(1)
|
||||
},
|
||||
/**
|
||||
* 初始化工作组信息
|
||||
*/
|
||||
@@ -546,6 +581,10 @@ export default {
|
||||
return
|
||||
}
|
||||
this.$refs.workGroupSetLabel.show(this.selectedRowKeys)
|
||||
},
|
||||
onDateChange: function (value, dateString) {
|
||||
this.queryParam.estimatedArrivalStartDate = dateString[0]
|
||||
this.queryParam.estimatedArrivalEndDate = dateString[1]
|
||||
}
|
||||
// 2021 10 11 沟通后去掉了这个功能
|
||||
// searchReset() {
|
||||
|
||||
@@ -140,7 +140,18 @@
|
||||
</a-col>
|
||||
|
||||
</a-row>
|
||||
|
||||
<a-row>
|
||||
<a-col :xl="12" :sm="24">
|
||||
<a-form-item label="预估到账日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-date placeholder="请选择预估到账日期"
|
||||
style="width: 100%;"
|
||||
v-decorator="['estimatedArrivalDate', validatorRules.estimatedArrivalDate]"
|
||||
:trigger-change="true"
|
||||
date-format="YYYY-MM-DD"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row>
|
||||
<a-col :xl="12" :sm="24">
|
||||
<a-form-item label="需要发票" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
@@ -243,10 +254,11 @@ import { USER_INFO } from '../../../store/mutation-types'
|
||||
import { money } from '../../../utils/validate'
|
||||
import { checkAssociatedProject } from '../../../utils/projectCheck'
|
||||
import SelectRevenueContract from '../../../components/tools/SelectRevenueContract'
|
||||
import JDate from '@/components/tools/JDate'
|
||||
|
||||
export default {
|
||||
name: 'GeneralProjectModule',
|
||||
components: { JYearDate, JUpload, CompanySelect, SelectPrincipal, SelectContacts, SelectRevenueContract ,JDictSelectTag},
|
||||
components: { JYearDate, JUpload, JDate,CompanySelect, SelectPrincipal, SelectContacts, SelectRevenueContract ,JDictSelectTag},
|
||||
props: {
|
||||
// 收入合同关联时传入的企业信息,不可修改
|
||||
defaultChargeCompany: {
|
||||
@@ -302,7 +314,7 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
title: '操作',
|
||||
width: 800,
|
||||
width: 900,
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this),
|
||||
@@ -367,7 +379,10 @@ export default {
|
||||
rules: [{ required: false, validator: this.checkNoTaxMoney}],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
|
||||
estimatedArrivalDate: {
|
||||
rules: [{ required: true, message: '请选择预估到账日期' }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
needInvoice: {
|
||||
rules: [{ required: true, message: '请选择发票类型' }],
|
||||
validateTrigger: 'change'
|
||||
@@ -461,7 +476,7 @@ export default {
|
||||
this.chargeWayType = record.chargeWay
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue(pick(this.model, 'chargeProject', 'year', 'principalId', 'chargeCompany', 'chargeUse', 'contactsId', 'mailContactsId', 'receivableAmount','taxRate','tax','noTaxAmount', 'needInvoice', 'chargeWay', 'contractNum', 'chargeNoticeNo', 'chargeNoticeId', 'files', 'remarks'))
|
||||
this.form.setFieldsValue(pick(this.model, 'chargeProject', 'year', 'principalId', 'chargeCompany', 'chargeUse', 'contactsId', 'mailContactsId', 'receivableAmount','taxRate','tax','noTaxAmount', 'estimatedArrivalDate', 'needInvoice', 'chargeWay', 'contractNum', 'chargeNoticeNo', 'chargeNoticeId', 'files', 'remarks'))
|
||||
})
|
||||
},
|
||||
close() {
|
||||
|
||||
@@ -243,6 +243,16 @@
|
||||
|
||||
</template>
|
||||
<a-row>
|
||||
<a-col :xl="12" :sm="24">
|
||||
<a-form-item label="预估到账日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-date placeholder="请选择预估到账日期"
|
||||
style="width: 100%;"
|
||||
v-decorator="['estimatedArrivalDate', validatorRules.estimatedArrivalDate]"
|
||||
:trigger-change="true"
|
||||
date-format="YYYY-MM-DD"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="12" :sm="24" v-if="chargeWayType === 2">
|
||||
<a-form-item label="合同号" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<!-- <a-input placeholder="请输入合同号"-->
|
||||
@@ -395,10 +405,11 @@ import { checkAssociatedProject } from '../../../utils/projectCheck'
|
||||
import SelectRevenueContract from '../../../components/tools/SelectRevenueContract'
|
||||
import JDictSelectTag from '@comp/dict/JDictSelectTag'
|
||||
import { CalcAmountMixin } from '@/mixins/CalcAmountMixin'
|
||||
import JDate from '@/components/tools/JDate'
|
||||
|
||||
export default {
|
||||
name: 'WorkingGroupMemberUnitModule',
|
||||
components: { JUpload, CompanySelect, SelectContacts, SelectRevenueContract, JDictSelectTag },
|
||||
components: { JUpload, JDate, CompanySelect, SelectContacts, SelectRevenueContract, JDictSelectTag },
|
||||
mixins: [CalcAmountMixin],
|
||||
props: {
|
||||
// 默认来款方式(收入合同新增工作组项目,来款方式默认为2--合同)
|
||||
@@ -503,6 +514,10 @@ export default {
|
||||
rules: [{ required: true, validator: this.checkMoney }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
estimatedArrivalDate: {
|
||||
rules: [{ required: true, message: '请选择预估到账日期' }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
contractNum: {
|
||||
rules: [{ required: true, message: '请选择合同号' }],
|
||||
validateTrigger: 'change'
|
||||
@@ -651,7 +666,7 @@ export default {
|
||||
this.pickChargeNoticeType(record.charge, true)
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue(pick(this.model, 'chargeCompany', 'contactsIdOne', 'contactsIdTwo', 'contactsIdThree', 'mailContactsId', 'chargeWay', 'charge', 'receivableAmount', 'taxRate', 'tax', 'noTaxAmount', 'contractNum', 'receivableAmount', 'chargeNoticeId', 'needInvoice', 'remarks', 'remarksOne', 'remarksTwo', 'remarksThree', 'payWorkingGroupSubItemContactsList'))
|
||||
this.form.setFieldsValue(pick(this.model, 'chargeCompany', 'contactsIdOne', 'contactsIdTwo', 'contactsIdThree', 'mailContactsId', 'chargeWay', 'charge', 'receivableAmount', 'taxRate', 'tax', 'noTaxAmount', 'estimatedArrivalDate', 'contractNum', 'receivableAmount', 'chargeNoticeId', 'needInvoice', 'remarks', 'remarksOne', 'remarksTwo', 'remarksThree', 'payWorkingGroupSubItemContactsList'))
|
||||
})
|
||||
},
|
||||
close() {
|
||||
|
||||
Reference in New Issue
Block a user