|
@@ -112,21 +112,21 @@
|
|
兴光项目报销详情
|
|
兴光项目报销详情
|
|
<el-button size="default" style="margin-left: 20px" type="primary"
|
|
<el-button size="default" style="margin-left: 20px" type="primary"
|
|
:disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
|
|
:disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
|
|
- @click="insertEvent('others')" plain>
|
|
|
|
|
|
+ @click="insertEvent('detail')" plain>
|
|
新增
|
|
新增
|
|
</el-button>
|
|
</el-button>
|
|
</el-divider>
|
|
</el-divider>
|
|
<el-row :gutter="15">
|
|
<el-row :gutter="15">
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
- <vxe-table border show-footer show-overflow :footer-method="footerMethod" ref="detailTableOthers"
|
|
|
|
- class="vxe-table-element" :data="inputForm.detailInfoOthers" style="margin-left: 5em"
|
|
|
|
- :key="detailKeyOthers" highlight-current-row
|
|
|
|
|
|
+ <vxe-table border show-footer show-overflow :footer-method="footerMethod" ref="detailTable"
|
|
|
|
+ class="vxe-table-element" :data="inputForm.detailInfos" style="margin-left: 5em" :key="detailKey"
|
|
|
|
+ highlight-current-row
|
|
:edit-config="{ trigger: 'click', mode: 'row', showStatus: true, autoClear: true, icon: '_' }"
|
|
:edit-config="{ trigger: 'click', mode: 'row', showStatus: true, autoClear: true, icon: '_' }"
|
|
:edit-rules="validRules">
|
|
:edit-rules="validRules">
|
|
<vxe-table-column field="userName" title="报销人" :edit-render="{}" show-overflow="title"
|
|
<vxe-table-column field="userName" title="报销人" :edit-render="{}" show-overflow="title"
|
|
:rules="[{ required: true, message: '请选择报销人', trigger: 'blur' }]">
|
|
:rules="[{ required: true, message: '请选择报销人', trigger: 'blur' }]">
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
- <el-input v-model="scope.row.userName" @focus="userPullListForm4(scope.$rowIndex)"></el-input>
|
|
|
|
|
|
+ <el-input v-model="scope.row.userName" @focus="userPullListForm(scope.$rowIndex)"></el-input>
|
|
<!-- <UserSelectV2 :limit='1' :userName="scope.row.userName" @getValue='(value, label) => {scope.row.userName = label}'></UserSelectV2>-->
|
|
<!-- <UserSelectV2 :limit='1' :userName="scope.row.userName" @getValue='(value, label) => {scope.row.userName = label}'></UserSelectV2>-->
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
@@ -139,14 +139,14 @@
|
|
:rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
|
|
:rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
<el-input v-model="scope.row.typeName"
|
|
<el-input v-model="scope.row.typeName"
|
|
- @focus="typePullForm4(scope.$rowIndex, scope.row.deptId)"></el-input>
|
|
|
|
|
|
+ @focus="typePullForm(scope.$rowIndex, scope.row.deptId)"></el-input>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
<vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
|
|
<vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
|
|
:rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
|
|
:rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
<el-input v-model="scope.row.projectName"
|
|
<el-input v-model="scope.row.projectName"
|
|
- @focus="openProgramPageForm4(scope.$rowIndex, scope.row)"></el-input>
|
|
|
|
|
|
+ @focus="openProgramPageForm(scope.$rowIndex, scope.row)"></el-input>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
<!-- <vxe-table-column field="reportNumber" title="报告号" :edit-render="{}">-->
|
|
<!-- <vxe-table-column field="reportNumber" title="报告号" :edit-render="{}">-->
|
|
@@ -181,7 +181,7 @@
|
|
<vxe-table-column title="操作" width="100">
|
|
<vxe-table-column title="操作" width="100">
|
|
<template #default="scope">
|
|
<template #default="scope">
|
|
<el-button size="default" type="danger"
|
|
<el-button size="default" type="danger"
|
|
- @click="removeEvent(scope.row, scope.$rowIndex, 'others')">删除</el-button>
|
|
|
|
|
|
+ @click="removeEvent(scope.row, scope.$rowIndex, 'detail')">删除</el-button>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
</vxe-table>
|
|
</vxe-table>
|
|
@@ -271,21 +271,21 @@
|
|
兴光报告报销详情
|
|
兴光报告报销详情
|
|
<el-button size="default" style="margin-left: 20px" type="primary"
|
|
<el-button size="default" style="margin-left: 20px" type="primary"
|
|
:disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
|
|
:disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
|
|
- @click="insertEvent('others')" plain>
|
|
|
|
|
|
+ @click="insertEvent('report_detail')" plain>
|
|
新增
|
|
新增
|
|
</el-button>
|
|
</el-button>
|
|
</el-divider>
|
|
</el-divider>
|
|
<el-row :gutter="15">
|
|
<el-row :gutter="15">
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
- <vxe-table border show-footer show-overflow :footer-method="footerMethod" ref="detailTableOthers"
|
|
|
|
- class="vxe-table-element" :data="inputForm.detailInfoOthers" style="margin-left: 5em"
|
|
|
|
- :key="detailKeyOthers" highlight-current-row
|
|
|
|
|
|
+ <vxe-table border show-footer show-overflow :footer-method="footerMethod" ref="detailTableReport"
|
|
|
|
+ class="vxe-table-element" :data="inputForm.detailInfoReports" style="margin-left: 5em"
|
|
|
|
+ :key="detailKeyReport" highlight-current-row
|
|
:edit-config="{ trigger: 'click', mode: 'row', showStatus: true, autoClear: true, icon: '_' }"
|
|
:edit-config="{ trigger: 'click', mode: 'row', showStatus: true, autoClear: true, icon: '_' }"
|
|
:edit-rules="validRules">
|
|
:edit-rules="validRules">
|
|
<vxe-table-column field="userName" title="报销人" :edit-render="{}" show-overflow="title"
|
|
<vxe-table-column field="userName" title="报销人" :edit-render="{}" show-overflow="title"
|
|
:rules="[{ required: true, message: '请选择报销人', trigger: 'blur' }]">
|
|
:rules="[{ required: true, message: '请选择报销人', trigger: 'blur' }]">
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
- <el-input v-model="scope.row.userName" @focus="userPullListForm4(scope.$rowIndex)"></el-input>
|
|
|
|
|
|
+ <el-input v-model="scope.row.userName" @focus="userPullListForm3(scope.$rowIndex)"></el-input>
|
|
<!-- <UserSelectV2 :limit='1' :userName="scope.row.userName" @getValue='(value, label) => {scope.row.userName = label}'></UserSelectV2>-->
|
|
<!-- <UserSelectV2 :limit='1' :userName="scope.row.userName" @getValue='(value, label) => {scope.row.userName = label}'></UserSelectV2>-->
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
@@ -298,14 +298,14 @@
|
|
:rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
|
|
:rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
<el-input v-model="scope.row.typeName"
|
|
<el-input v-model="scope.row.typeName"
|
|
- @focus="typePullForm4(scope.$rowIndex, scope.row.deptId)"></el-input>
|
|
|
|
|
|
+ @focus="typePullForm3(scope.$rowIndex, scope.row.deptId)"></el-input>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
<vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
|
|
<vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
|
|
:rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
|
|
:rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
<el-input v-model="scope.row.projectName"
|
|
<el-input v-model="scope.row.projectName"
|
|
- @focus="openProgramPageForm4(scope.$rowIndex, scope.row)"></el-input>
|
|
|
|
|
|
+ @focus="openProgramPageForm3(scope.$rowIndex, scope.row)"></el-input>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
<!-- <vxe-table-column field="reportNumber" title="报告号" :edit-render="{}">-->
|
|
<!-- <vxe-table-column field="reportNumber" title="报告号" :edit-render="{}">-->
|
|
@@ -340,7 +340,7 @@
|
|
<vxe-table-column title="操作" width="100">
|
|
<vxe-table-column title="操作" width="100">
|
|
<template #default="scope">
|
|
<template #default="scope">
|
|
<el-button size="default" type="danger"
|
|
<el-button size="default" type="danger"
|
|
- @click="removeEvent(scope.row, scope.$rowIndex, 'others')">删除</el-button>
|
|
|
|
|
|
+ @click="removeEvent(scope.row, scope.$rowIndex, 'report_detail')">删除</el-button>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
</vxe-table>
|
|
</vxe-table>
|
|
@@ -510,15 +510,15 @@
|
|
中审项目报销详情
|
|
中审项目报销详情
|
|
<el-button size="default" style="margin-left: 20px" type="primary"
|
|
<el-button size="default" style="margin-left: 20px" type="primary"
|
|
:disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
|
|
:disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
|
|
- @click="insertEvent('others')" plain>
|
|
|
|
|
|
+ @click="insertEvent('zs_project_detail')" plain>
|
|
新增
|
|
新增
|
|
</el-button>
|
|
</el-button>
|
|
</el-divider>
|
|
</el-divider>
|
|
<el-row :gutter="15">
|
|
<el-row :gutter="15">
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
- <vxe-table border show-footer show-overflow :footer-method="footerMethod" ref="detailTableOthers"
|
|
|
|
- class="vxe-table-element" :data="inputForm.detailInfoOthers" style="margin-left: 5em"
|
|
|
|
- :key="detailKeyOthers" highlight-current-row
|
|
|
|
|
|
+ <vxe-table border show-footer show-overflow :footer-method="footerMethod" ref="detailTableProject"
|
|
|
|
+ class="vxe-table-element" :data="inputForm.detailInfoProject" style="margin-left: 5em"
|
|
|
|
+ :key="detailKeyProject" highlight-current-row
|
|
:edit-config="{ trigger: 'click', mode: 'row', showStatus: true, autoClear: true, icon: '_' }"
|
|
:edit-config="{ trigger: 'click', mode: 'row', showStatus: true, autoClear: true, icon: '_' }"
|
|
:edit-rules="validRules" :tooltip-config="{
|
|
:edit-rules="validRules" :tooltip-config="{
|
|
enterable: true
|
|
enterable: true
|
|
@@ -539,14 +539,14 @@
|
|
:rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
|
|
:rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
<el-input v-model="scope.row.typeName"
|
|
<el-input v-model="scope.row.typeName"
|
|
- @focus="typePullForm4(scope.$rowIndex, scope.row.deptId)"></el-input>
|
|
|
|
|
|
+ @focus="typePullForm8(scope.$rowIndex, scope.row.deptId)"></el-input>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
<vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
|
|
<vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
|
|
:rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
|
|
:rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
<el-input v-model="scope.row.projectName"
|
|
<el-input v-model="scope.row.projectName"
|
|
- @focus="openProgramPageForm4(scope.$rowIndex, scope.row)"></el-input>
|
|
|
|
|
|
+ @focus="openProgramPageForm8(scope.$rowIndex, scope.row)"></el-input>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
<vxe-colgroup title="发票号和立项号至少填写一项" header-align="center">
|
|
<vxe-colgroup title="发票号和立项号至少填写一项" header-align="center">
|
|
@@ -599,7 +599,7 @@
|
|
<vxe-table-column title="操作" width="100">
|
|
<vxe-table-column title="操作" width="100">
|
|
<template #default="scope">
|
|
<template #default="scope">
|
|
<el-button size="default" type="danger"
|
|
<el-button size="default" type="danger"
|
|
- @click="removeEvent(scope.row, scope.$rowIndex, 'others')">删除</el-button>
|
|
|
|
|
|
+ @click="removeEvent(scope.row, scope.$rowIndex, 'zs_project_detail')">删除</el-button>
|
|
</template>
|
|
</template>
|
|
</vxe-table-column>
|
|
</vxe-table-column>
|
|
</vxe-table>
|
|
</vxe-table>
|
|
@@ -753,20 +753,24 @@
|
|
<!-- </div>-->
|
|
<!-- </div>-->
|
|
<!-- <ProgramPageForm ref="programPageForm" @getProgram="getProgram"></ProgramPageForm>-->
|
|
<!-- <ProgramPageForm ref="programPageForm" @getProgram="getProgram"></ProgramPageForm>-->
|
|
<CwProgramPageForm ref="cwProgramPageForm" @getProgram="getProgram"></CwProgramPageForm>
|
|
<CwProgramPageForm ref="cwProgramPageForm" @getProgram="getProgram"></CwProgramPageForm>
|
|
- <CwProgramPageForm2 ref="cwProgramPageForm3" @getProgram="getProgram3"></CwProgramPageForm2>
|
|
|
|
|
|
+ <CwProgramPageForm ref="cwProgramPageForm3" @getProgram="getProgram3"></CwProgramPageForm>
|
|
<CwProgramPageForm ref="cwProgramPageForm4" @getProgram="getProgram4"></CwProgramPageForm>
|
|
<CwProgramPageForm ref="cwProgramPageForm4" @getProgram="getProgram4"></CwProgramPageForm>
|
|
<CwProgramPageForm ref="cwProgramPageForm5" @getProgram="getProgram5"></CwProgramPageForm>
|
|
<CwProgramPageForm ref="cwProgramPageForm5" @getProgram="getProgram5"></CwProgramPageForm>
|
|
|
|
+ <CwProgramPageForm ref="cwProgramPageForm8" @getProgram="getProgram8"></CwProgramPageForm>
|
|
<!-- <ReimbursementTypePullForm ref="reimbursementTypePullForm" @getProgramForType="getProgramForType"></ReimbursementTypePullForm>-->
|
|
<!-- <ReimbursementTypePullForm ref="reimbursementTypePullForm" @getProgramForType="getProgramForType"></ReimbursementTypePullForm>-->
|
|
- <CwReimbursementTypePullForm ref="cwReimbursementTypePullForm" @getProgramForType="getProgramForType">
|
|
|
|
- </CwReimbursementTypePullForm>
|
|
|
|
|
|
+ <CwReimbursementTypePullFormZs ref="cwReimbursementTypePullForm" @getProgramForType="getProgramForType">
|
|
|
|
+ </CwReimbursementTypePullFormZs>
|
|
<CwReimbursementTypePullForm ref="cwReimbursementTypePullForm2" @getProgramForType="getProgramForType2">
|
|
<CwReimbursementTypePullForm ref="cwReimbursementTypePullForm2" @getProgramForType="getProgramForType2">
|
|
</CwReimbursementTypePullForm>
|
|
</CwReimbursementTypePullForm>
|
|
- <CwReimbursementTypePullForm ref="cwReimbursementTypePullForm3" @getProgramForType="getProgramForType3">
|
|
|
|
- </CwReimbursementTypePullForm>
|
|
|
|
|
|
+ <CwReimbursementTypePullFormZs ref="cwReimbursementTypePullForm3" @getProgramForType="getProgramForType3">
|
|
|
|
+ </CwReimbursementTypePullFormZs>
|
|
<CwReimbursementTypePullFormZs ref="cwReimbursementTypePullForm4" @getProgramForType="getProgramForType4">
|
|
<CwReimbursementTypePullFormZs ref="cwReimbursementTypePullForm4" @getProgramForType="getProgramForType4">
|
|
</CwReimbursementTypePullFormZs>
|
|
</CwReimbursementTypePullFormZs>
|
|
<CwReimbursementTypePullForm ref="cwReimbursementTypePullForm5" @getProgramForType="getProgramForType5">
|
|
<CwReimbursementTypePullForm ref="cwReimbursementTypePullForm5" @getProgramForType="getProgramForType5">
|
|
</CwReimbursementTypePullForm>
|
|
</CwReimbursementTypePullForm>
|
|
|
|
+ <CwReimbursementTypePullFormZs ref="cwReimbursementTypePullForm8" @getProgramForType="getProgramForType8">
|
|
|
|
+ </CwReimbursementTypePullFormZs>
|
|
|
|
+
|
|
|
|
|
|
<UserPullForm ref="userPullForm" @getProgramForUser="getProgramForUser"></UserPullForm>
|
|
<UserPullForm ref="userPullForm" @getProgramForUser="getProgramForUser"></UserPullForm>
|
|
<UserPullForm ref="userPullForm2" @getProgramForUser="getProgramForUser2"></UserPullForm>
|
|
<UserPullForm ref="userPullForm2" @getProgramForUser="getProgramForUser2"></UserPullForm>
|
|
@@ -901,6 +905,7 @@ export default {
|
|
detailKey: '',
|
|
detailKey: '',
|
|
detailKeyContract: '',
|
|
detailKeyContract: '',
|
|
detailKeyReport: '',
|
|
detailKeyReport: '',
|
|
|
|
+ detailKeyProject: "",
|
|
detailKeyOthers: '',
|
|
detailKeyOthers: '',
|
|
detailKeyProcured: '',
|
|
detailKeyProcured: '',
|
|
inputForm: {
|
|
inputForm: {
|
|
@@ -916,6 +921,7 @@ export default {
|
|
detailInfoContracts: [],
|
|
detailInfoContracts: [],
|
|
detailInfoReports: [],
|
|
detailInfoReports: [],
|
|
detailInfoOthers: [],
|
|
detailInfoOthers: [],
|
|
|
|
+ detailInfoProject: [],
|
|
detailInfoProcured: [],
|
|
detailInfoProcured: [],
|
|
amountInfos: [],
|
|
amountInfos: [],
|
|
invoiceReimbursements: [],
|
|
invoiceReimbursements: [],
|
|
@@ -1038,6 +1044,7 @@ export default {
|
|
detailInfoContracts: [],
|
|
detailInfoContracts: [],
|
|
detailInfoReports: [],
|
|
detailInfoReports: [],
|
|
detailInfoOthers: [],
|
|
detailInfoOthers: [],
|
|
|
|
+ detailInfoProject: [],
|
|
detailInfoProcured: [],
|
|
detailInfoProcured: [],
|
|
amountInfos: [],
|
|
amountInfos: [],
|
|
invoiceReimbursements: [],
|
|
invoiceReimbursements: [],
|
|
@@ -1243,6 +1250,7 @@ export default {
|
|
this.inputForm.detailInfos = []
|
|
this.inputForm.detailInfos = []
|
|
this.inputForm.detailInfoContracts = []
|
|
this.inputForm.detailInfoContracts = []
|
|
this.inputForm.detailInfoReports = []
|
|
this.inputForm.detailInfoReports = []
|
|
|
|
+ this.inputForm.detailInfoProject = []
|
|
this.inputForm.detailInfoOthers = []
|
|
this.inputForm.detailInfoOthers = []
|
|
this.inputForm.detailInfoProcured = []
|
|
this.inputForm.detailInfoProcured = []
|
|
this.inputForm.purchaseNo = ''
|
|
this.inputForm.purchaseNo = ''
|
|
@@ -1277,6 +1285,10 @@ export default {
|
|
this.$refs.detailTableReport.remove(row)
|
|
this.$refs.detailTableReport.remove(row)
|
|
this.inputForm.detailInfoReports.splice(rowIndex, 1)
|
|
this.inputForm.detailInfoReports.splice(rowIndex, 1)
|
|
}
|
|
}
|
|
|
|
+ if (type === 'zs_project_detail') {
|
|
|
|
+ this.$refs.detailTableProject.remove(row)
|
|
|
|
+ this.inputForm.detailInfoProject.splice(rowIndex, 1)
|
|
|
|
+ }
|
|
if (type === 'others') {
|
|
if (type === 'others') {
|
|
this.$refs.detailTableOthers.remove(row)
|
|
this.$refs.detailTableOthers.remove(row)
|
|
this.inputForm.detailInfoOthers.splice(rowIndex, 1)
|
|
this.inputForm.detailInfoOthers.splice(rowIndex, 1)
|
|
@@ -1289,18 +1301,22 @@ export default {
|
|
// 新增
|
|
// 新增
|
|
async insertEvent(type) {
|
|
async insertEvent(type) {
|
|
if (type === 'detail') {
|
|
if (type === 'detail') {
|
|
|
|
+ console.log(111);
|
|
|
|
+
|
|
let d = {
|
|
let d = {
|
|
userName: this.$store.state.user.name,
|
|
userName: this.$store.state.user.name,
|
|
deptName: this.$store.state.user.office.name,
|
|
deptName: this.$store.state.user.office.name,
|
|
userId: this.$store.state.user.id,
|
|
userId: this.$store.state.user.id,
|
|
deptId: this.$store.state.user.office.id
|
|
deptId: this.$store.state.user.office.id
|
|
}
|
|
}
|
|
|
|
+ console.log(3333);
|
|
if (this.commonJS.isEmpty(this.inputForm.detailInfos)) {
|
|
if (this.commonJS.isEmpty(this.inputForm.detailInfos)) {
|
|
this.inputForm.detailInfos = []
|
|
this.inputForm.detailInfos = []
|
|
}
|
|
}
|
|
this.$refs.detailTable.insertAt(d)
|
|
this.$refs.detailTable.insertAt(d)
|
|
this.inputForm.detailInfos.push(d)
|
|
this.inputForm.detailInfos.push(d)
|
|
this.detailKey = Math.random()
|
|
this.detailKey = Math.random()
|
|
|
|
+ console.log(222);
|
|
}
|
|
}
|
|
if (type === 'amount') {
|
|
if (type === 'amount') {
|
|
let d = {}
|
|
let d = {}
|
|
@@ -1348,6 +1364,20 @@ export default {
|
|
this.inputForm.detailInfoReports.push(d)
|
|
this.inputForm.detailInfoReports.push(d)
|
|
this.detailKeyReport = Math.random()
|
|
this.detailKeyReport = Math.random()
|
|
}
|
|
}
|
|
|
|
+ if (type === 'zs_project_detail') {
|
|
|
|
+ let d = {
|
|
|
|
+ userName: this.$store.state.user.name,
|
|
|
|
+ deptName: this.$store.state.user.office.name,
|
|
|
|
+ userId: this.$store.state.user.id,
|
|
|
|
+ deptId: this.$store.state.user.office.id
|
|
|
|
+ }
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoProject)) {
|
|
|
|
+ this.inputForm.detailInfoProject = []
|
|
|
|
+ }
|
|
|
|
+ this.$refs.detailTableProject.insertAt(d)
|
|
|
|
+ this.inputForm.detailInfoProject.push(d)
|
|
|
|
+ this.detailKeyProject = Math.random()
|
|
|
|
+ }
|
|
if (type === 'others') {
|
|
if (type === 'others') {
|
|
let d = {
|
|
let d = {
|
|
userName: this.$store.state.user.name,
|
|
userName: this.$store.state.user.name,
|
|
@@ -1817,19 +1847,7 @@ export default {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
this.indexRow = rowIndex
|
|
this.indexRow = rowIndex
|
|
- this.reimbursementApprovalTypeService.findById(row.typeId).then((data) => {
|
|
|
|
-
|
|
|
|
- let i = data.sort.toString()
|
|
|
|
- i = i.substring(0, 1)
|
|
|
|
- // 非业务报销
|
|
|
|
-
|
|
|
|
- if (i !== '1') {
|
|
|
|
- this.$refs.cwProgramPageForm.init('2', false)
|
|
|
|
- } else {
|
|
|
|
- // 打开单选组件
|
|
|
|
- this.$refs.cwProgramPageForm.init('1', true)
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
|
|
+ this.$refs.cwProgramPageForm.init('2', false)
|
|
},
|
|
},
|
|
openProgramPageForm3(rowIndex, row) {
|
|
openProgramPageForm3(rowIndex, row) {
|
|
if (this.commonJS.isEmpty(row.typeName)) {
|
|
if (this.commonJS.isEmpty(row.typeName)) {
|
|
@@ -1837,17 +1855,7 @@ export default {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
this.indexRow = rowIndex
|
|
this.indexRow = rowIndex
|
|
- this.reimbursementApprovalTypeService.findById(row.typeId).then((data) => {
|
|
|
|
- let i = data.sort.toString()
|
|
|
|
- i = i.substring(0, 1)
|
|
|
|
- // 非业务报销
|
|
|
|
- if (i !== '1') {
|
|
|
|
- this.$refs.cwProgramPageForm3.init('2', false)
|
|
|
|
- } else {
|
|
|
|
- // 打开单选组件
|
|
|
|
- this.$refs.cwProgramPageForm3.init('1', false)
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
|
|
+ this.$refs.cwProgramPageForm3.init('2', false)
|
|
},
|
|
},
|
|
openProgramPageForm4(rowIndex, row) {
|
|
openProgramPageForm4(rowIndex, row) {
|
|
if (this.commonJS.isEmpty(row.typeName)) {
|
|
if (this.commonJS.isEmpty(row.typeName)) {
|
|
@@ -1857,6 +1865,14 @@ export default {
|
|
this.indexRow = rowIndex
|
|
this.indexRow = rowIndex
|
|
this.$refs.cwProgramPageForm4.init('2', false)
|
|
this.$refs.cwProgramPageForm4.init('2', false)
|
|
},
|
|
},
|
|
|
|
+ openProgramPageForm8(rowIndex, row) {
|
|
|
|
+ if (this.commonJS.isEmpty(row.typeName)) {
|
|
|
|
+ this.$message.error('请选择报销类型')
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ this.indexRow = rowIndex
|
|
|
|
+ this.$refs.cwProgramPageForm8.init('2', false)
|
|
|
|
+ },
|
|
openProgramPageForm5(rowIndex, row) {
|
|
openProgramPageForm5(rowIndex, row) {
|
|
if (this.commonJS.isEmpty(row.typeName)) {
|
|
if (this.commonJS.isEmpty(row.typeName)) {
|
|
this.$message.error('请选择报销类型')
|
|
this.$message.error('请选择报销类型')
|
|
@@ -1869,18 +1885,16 @@ export default {
|
|
this.$refs.workContractChooseCom.init(rowIndex)
|
|
this.$refs.workContractChooseCom.init(rowIndex)
|
|
},
|
|
},
|
|
getProgram(rows) {
|
|
getProgram(rows) {
|
|
- if (this.commonJS.isNotEmpty(rows)) {
|
|
|
|
- this.inputForm.detailInfos[this.indexRow].projectId = rows.map(item => { return item.id }).join(',')
|
|
|
|
- this.inputForm.detailInfos[this.indexRow].projectName = rows.map(item => { return item.projectName }).join(',')
|
|
|
|
- // this.inputForm.detailInfos[this.indexRow].reportNumber = rows.map(item => { return item.reportNumber }).join(',')
|
|
|
|
- }
|
|
|
|
|
|
+ this.inputForm.detailInfos[this.indexRow].projectId = rows[0].id
|
|
|
|
+ this.inputForm.detailInfos[this.indexRow].projectName = rows[0].projectName
|
|
|
|
+ this.inputForm.detailInfos[this.indexRow].reportNumber = rows[0].reportNumber
|
|
this.indexRow = ''
|
|
this.indexRow = ''
|
|
this.$forceUpdate()
|
|
this.$forceUpdate()
|
|
},
|
|
},
|
|
getProgram3(rows) {
|
|
getProgram3(rows) {
|
|
- this.inputForm.detailInfoReports[this.indexRow].projectId = rows.id
|
|
|
|
- this.inputForm.detailInfoReports[this.indexRow].projectName = rows.projectName
|
|
|
|
- this.inputForm.detailInfoReports[this.indexRow].reportNumber = rows.reportNumber
|
|
|
|
|
|
+ this.inputForm.detailInfoReports[this.indexRow].projectId = rows[0].id
|
|
|
|
+ this.inputForm.detailInfoReports[this.indexRow].projectName = rows[0].projectName
|
|
|
|
+ this.inputForm.detailInfoReports[this.indexRow].reportNumber = rows[0].reportNumber
|
|
this.indexRow = ''
|
|
this.indexRow = ''
|
|
this.$forceUpdate()
|
|
this.$forceUpdate()
|
|
},
|
|
},
|
|
@@ -1891,6 +1905,13 @@ export default {
|
|
this.indexRow = ''
|
|
this.indexRow = ''
|
|
this.$forceUpdate()
|
|
this.$forceUpdate()
|
|
},
|
|
},
|
|
|
|
+ getProgram8(rows) {
|
|
|
|
+ this.inputForm.detailInfoProject[this.indexRow].projectId = rows[0].id
|
|
|
|
+ this.inputForm.detailInfoProject[this.indexRow].projectName = rows[0].projectName
|
|
|
|
+ this.inputForm.detailInfoProject[this.indexRow].reportNumber = rows[0].reportNumber
|
|
|
|
+ this.indexRow = ''
|
|
|
|
+ this.$forceUpdate()
|
|
|
|
+ },
|
|
getProgram5(rows) {
|
|
getProgram5(rows) {
|
|
this.inputForm.detailInfoProcured[this.indexRow].projectId = rows[0].id
|
|
this.inputForm.detailInfoProcured[this.indexRow].projectId = rows[0].id
|
|
this.inputForm.detailInfoProcured[this.indexRow].projectName = rows[0].projectName
|
|
this.inputForm.detailInfoProcured[this.indexRow].projectName = rows[0].projectName
|
|
@@ -1902,7 +1923,9 @@ export default {
|
|
typePullForm(rowIndex, deptName) {
|
|
typePullForm(rowIndex, deptName) {
|
|
this.indexRow = rowIndex
|
|
this.indexRow = rowIndex
|
|
// this.$refs.reimbursementTypePullForm.init()
|
|
// this.$refs.reimbursementTypePullForm.init()
|
|
- this.$refs.cwReimbursementTypePullForm.init('1', deptName)
|
|
|
|
|
|
+ this.$refs.cwReimbursementTypePullForm.init('2', deptName)
|
|
|
|
+
|
|
|
|
+ //this.$refs.cwReimbursementTypePullForm.init('1', deptName)
|
|
},
|
|
},
|
|
typePullForm2(rowIndex, deptName) {
|
|
typePullForm2(rowIndex, deptName) {
|
|
this.indexRow = rowIndex
|
|
this.indexRow = rowIndex
|
|
@@ -1919,6 +1942,11 @@ export default {
|
|
// this.$refs.reimbursementTypePullForm.init()
|
|
// this.$refs.reimbursementTypePullForm.init()
|
|
this.$refs.cwReimbursementTypePullForm4.init('2', deptName)
|
|
this.$refs.cwReimbursementTypePullForm4.init('2', deptName)
|
|
},
|
|
},
|
|
|
|
+ typePullForm8(rowIndex, deptName) {
|
|
|
|
+ this.indexRow = rowIndex
|
|
|
|
+ // this.$refs.reimbursementTypePullForm.init()
|
|
|
|
+ this.$refs.cwReimbursementTypePullForm8.init('2', deptName)
|
|
|
|
+ },
|
|
typePullForm5(rowIndex, deptName) {
|
|
typePullForm5(rowIndex, deptName) {
|
|
this.indexRow = rowIndex
|
|
this.indexRow = rowIndex
|
|
// this.$refs.reimbursementTypePullForm.init()
|
|
// this.$refs.reimbursementTypePullForm.init()
|
|
@@ -1955,6 +1983,13 @@ export default {
|
|
this.indexRow = ''
|
|
this.indexRow = ''
|
|
this.$forceUpdate()
|
|
this.$forceUpdate()
|
|
},
|
|
},
|
|
|
|
+ getProgramForType8(rows) {
|
|
|
|
+ this.inputForm.detailInfoProject[this.indexRow].typeId = rows.id
|
|
|
|
+ this.inputForm.detailInfoProject[this.indexRow].typeName = rows.name
|
|
|
|
+ this.indexRow = ''
|
|
|
|
+ this.$forceUpdate()
|
|
|
|
+ },
|
|
|
|
+
|
|
// 报销人下拉弹窗
|
|
// 报销人下拉弹窗
|
|
userPullListForm(rowIndex) {
|
|
userPullListForm(rowIndex) {
|
|
this.indexRow = rowIndex
|
|
this.indexRow = rowIndex
|
|
@@ -2048,30 +2083,30 @@ export default {
|
|
throw new Error('请填写报销类型')
|
|
throw new Error('请填写报销类型')
|
|
} else {
|
|
} else {
|
|
if (this.inputForm.sourceType === '1') {
|
|
if (this.inputForm.sourceType === '1') {
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfos)) {
|
|
this.$message.error('至少填写一条报销详情信息')
|
|
this.$message.error('至少填写一条报销详情信息')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('至少填写一条报销详情信息')
|
|
throw new Error('至少填写一条报销详情信息')
|
|
} else {
|
|
} else {
|
|
- let i = this.inputForm.detailInfoOthers.length
|
|
|
|
|
|
+ let i = this.inputForm.detailInfos.length
|
|
for (let j = 0; j < i; j++) {
|
|
for (let j = 0; j < i; j++) {
|
|
let k = j + 1
|
|
let k = j + 1
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].userName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfos[j].userName)) {
|
|
this.$message.error('报销详情第' + k + '行请选择报销人')
|
|
this.$message.error('报销详情第' + k + '行请选择报销人')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请选择报销人')
|
|
throw new Error('报销详情第' + k + '行请选择报销人')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].typeName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfos[j].typeName)) {
|
|
this.$message.error('报销详情第' + k + '行请选择报销类型')
|
|
this.$message.error('报销详情第' + k + '行请选择报销类型')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请选择报销类型')
|
|
throw new Error('报销详情第' + k + '行请选择报销类型')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].projectName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfos[j].projectName)) {
|
|
this.$message.error('报销详情第' + k + '行请填写报销详情')
|
|
this.$message.error('报销详情第' + k + '行请填写报销详情')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请填写报销详情')
|
|
throw new Error('报销详情第' + k + '行请填写报销详情')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].number)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfos[j].number)) {
|
|
this.$message.error('报销详情第' + k + '行请输入费用')
|
|
this.$message.error('报销详情第' + k + '行请输入费用')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请输入费用')
|
|
throw new Error('报销详情第' + k + '行请输入费用')
|
|
@@ -2110,30 +2145,30 @@ export default {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else if (this.inputForm.sourceType === '3') {
|
|
} else if (this.inputForm.sourceType === '3') {
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoReports)) {
|
|
this.$message.error('至少填写一条报销详情信息')
|
|
this.$message.error('至少填写一条报销详情信息')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('至少填写一条报销详情信息')
|
|
throw new Error('至少填写一条报销详情信息')
|
|
} else {
|
|
} else {
|
|
- let i = this.inputForm.detailInfoOthers.length
|
|
|
|
|
|
+ let i = this.inputForm.detailInfoReports.length
|
|
for (let j = 0; j < i; j++) {
|
|
for (let j = 0; j < i; j++) {
|
|
let k = j + 1
|
|
let k = j + 1
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].userName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoReports[j].userName)) {
|
|
this.$message.error('报销详情第' + k + '行请选择报销人')
|
|
this.$message.error('报销详情第' + k + '行请选择报销人')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请选择报销人')
|
|
throw new Error('报销详情第' + k + '行请选择报销人')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].typeName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoReports[j].typeName)) {
|
|
this.$message.error('报销详情第' + k + '行请选择报销类型')
|
|
this.$message.error('报销详情第' + k + '行请选择报销类型')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请选择报销类型')
|
|
throw new Error('报销详情第' + k + '行请选择报销类型')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].projectName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoReports[j].projectName)) {
|
|
this.$message.error('报销详情第' + k + '行请填写报销详情')
|
|
this.$message.error('报销详情第' + k + '行请填写报销详情')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请填写报销详情')
|
|
throw new Error('报销详情第' + k + '行请填写报销详情')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].number)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoReports[j].number)) {
|
|
this.$message.error('报销详情第' + k + '行请输入费用')
|
|
this.$message.error('报销详情第' + k + '行请输入费用')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请输入费用')
|
|
throw new Error('报销详情第' + k + '行请输入费用')
|
|
@@ -2172,36 +2207,36 @@ export default {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else if (this.inputForm.sourceType === '8') {
|
|
} else if (this.inputForm.sourceType === '8') {
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoProject)) {
|
|
this.$message.error('至少填写一条报销详情信息')
|
|
this.$message.error('至少填写一条报销详情信息')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('至少填写一条报销详情信息')
|
|
throw new Error('至少填写一条报销详情信息')
|
|
} else {
|
|
} else {
|
|
- let i = this.inputForm.detailInfoOthers.length
|
|
|
|
|
|
+ let i = this.inputForm.detailInfoProject.length
|
|
for (let j = 0; j < i; j++) {
|
|
for (let j = 0; j < i; j++) {
|
|
let k = j + 1
|
|
let k = j + 1
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].userName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoProject[j].userName)) {
|
|
this.$message.error('报销详情第' + k + '行请选择报销人')
|
|
this.$message.error('报销详情第' + k + '行请选择报销人')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请选择报销人')
|
|
throw new Error('报销详情第' + k + '行请选择报销人')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].typeName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoProject[j].typeName)) {
|
|
this.$message.error('报销详情第' + k + '行请选择报销类型')
|
|
this.$message.error('报销详情第' + k + '行请选择报销类型')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请选择报销类型')
|
|
throw new Error('报销详情第' + k + '行请选择报销类型')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].projectName)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoProject[j].projectName)) {
|
|
this.$message.error('报销详情第' + k + '行请填写报销详情')
|
|
this.$message.error('报销详情第' + k + '行请填写报销详情')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请填写报销详情')
|
|
throw new Error('报销详情第' + k + '行请填写报销详情')
|
|
}
|
|
}
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].number)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoProject[j].number)) {
|
|
this.$message.error('报销详情第' + k + '行请输入费用')
|
|
this.$message.error('报销详情第' + k + '行请输入费用')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行请输入费用')
|
|
throw new Error('报销详情第' + k + '行请输入费用')
|
|
}
|
|
}
|
|
|
|
|
|
- if (this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].projectApprovalNumber) && this.commonJS.isEmpty(this.inputForm.detailInfoOthers[j].invoiceNumber)) {
|
|
|
|
|
|
+ if (this.commonJS.isEmpty(this.inputForm.detailInfoProject[j].projectApprovalNumber) && this.commonJS.isEmpty(this.inputForm.detailInfoProject[j].invoiceNumber)) {
|
|
this.$message.error('报销详情第' + k + '行发票号或者立项号至少填写一项')
|
|
this.$message.error('报销详情第' + k + '行发票号或者立项号至少填写一项')
|
|
this.loading = false
|
|
this.loading = false
|
|
throw new Error('报销详情第' + k + '行发票号或者立项号至少填写一项')
|
|
throw new Error('报销详情第' + k + '行发票号或者立项号至少填写一项')
|