Jelajahi Sumber

中审项目报销点击报销编号没数据

huangguoce 1 bulan lalu
induk
melakukan
b6ea276a8b
1 mengubah file dengan 49 tambahan dan 36 penghapusan
  1. 49 36
      src/views/zs/reimbursement/info/InfoForm.vue

+ 49 - 36
src/views/zs/reimbursement/info/InfoForm.vue

@@ -111,22 +111,23 @@
         <div v-if="inputForm.sourceType === '1'">
           <el-divider content-position="left"><i class="el-icon-document"></i>
             兴光项目报销详情
-            <el-button style="margin-left: 20px" type="primary" :disabled="method === 'view' || this.formReadOnly"
-              size="mini" @click="insertEvent('others')" plain>
+            <el-button size="default" style="margin-left: 20px" type="primary"
+              :disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
+              @click="insertEvent('detail')" plain>
               新增
             </el-button>
           </el-divider>
           <el-row :gutter="15">
             <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-rules="validRules">
                 <vxe-table-column field="userName" title="报销人" :edit-render="{}" show-overflow="title"
                   :rules="[{ required: true, message: '请选择报销人', trigger: 'blur' }]">
                   <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>-->
                   </template>
                 </vxe-table-column>
@@ -138,14 +139,15 @@
                 <vxe-table-column field="typeName" title="报销类别" :edit-render="{}" show-overflow="title"
                   :rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
                   <template #edit="scope">
-                    <el-input v-model="scope.row.typeName" @focus="typePullForm4(scope.$rowIndex)"></el-input>
+                    <el-input v-model="scope.row.typeName"
+                      @focus="typePullForm(scope.$rowIndex, scope.row.deptId)"></el-input>
                   </template>
                 </vxe-table-column>
-                <vxe-table-column field="projectName" title="报销项目" :edit-render="{}" show-overflow="title"
-                  :rules="[{ required: true, message: '请选择报销项目', trigger: 'blur' }]">
+                <vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
+                  :rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
                   <template #edit="scope">
                     <el-input v-model="scope.row.projectName"
-                      @focus="openProgramPageForm4(scope.$rowIndex, scope.row)"></el-input>
+                      @focus="openProgramPageForm(scope.$rowIndex, scope.row)"></el-input>
                   </template>
                 </vxe-table-column>
                 <!--            <vxe-table-column field="reportNumber" title="报告号" :edit-render="{}">-->
@@ -179,8 +181,8 @@
                 </vxe-table-column>
                 <vxe-table-column title="操作" width="100">
                   <template #default="scope">
-                    <el-button size="mini" type="danger"
-                      @click="removeEvent(scope.row, scope.$rowIndex, 'others')">删除</el-button>
+                    <el-button size="default" type="danger"
+                      @click="removeEvent(scope.row, scope.$rowIndex, 'detail')">删除</el-button>
                   </template>
                 </vxe-table-column>
               </vxe-table>
@@ -269,22 +271,23 @@
         <div v-if="inputForm.sourceType === '3'">
           <el-divider content-position="left"><i class="el-icon-document"></i>
             兴光报告报销详情
-            <el-button style="margin-left: 20px" type="primary" :disabled="method === 'view' || this.formReadOnly"
-              size="mini" @click="insertEvent('others')" plain>
+            <el-button size="default" style="margin-left: 20px" type="primary"
+              :disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
+              @click="insertEvent('report_detail')" plain>
               新增
             </el-button>
           </el-divider>
           <el-row :gutter="15">
             <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-rules="validRules">
                 <vxe-table-column field="userName" title="报销人" :edit-render="{}" show-overflow="title"
                   :rules="[{ required: true, message: '请选择报销人', trigger: 'blur' }]">
                   <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>-->
                   </template>
                 </vxe-table-column>
@@ -296,14 +299,15 @@
                 <vxe-table-column field="typeName" title="报销类别" :edit-render="{}" show-overflow="title"
                   :rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
                   <template #edit="scope">
-                    <el-input v-model="scope.row.typeName" @focus="typePullForm4(scope.$rowIndex)"></el-input>
+                    <el-input v-model="scope.row.typeName"
+                      @focus="typePullForm3(scope.$rowIndex, scope.row.deptId)"></el-input>
                   </template>
                 </vxe-table-column>
-                <vxe-table-column field="projectName" title="报销项目" :edit-render="{}" show-overflow="title"
-                  :rules="[{ required: true, message: '请选择报销项目', trigger: 'blur' }]">
+                <vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
+                  :rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
                   <template #edit="scope">
                     <el-input v-model="scope.row.projectName"
-                      @focus="openProgramPageForm4(scope.$rowIndex, scope.row)"></el-input>
+                      @focus="openProgramPageForm3(scope.$rowIndex, scope.row)"></el-input>
                   </template>
                 </vxe-table-column>
                 <!--            <vxe-table-column field="reportNumber" title="报告号" :edit-render="{}">-->
@@ -337,8 +341,8 @@
                 </vxe-table-column>
                 <vxe-table-column title="操作" width="100">
                   <template #default="scope">
-                    <el-button size="mini" type="danger"
-                      @click="removeEvent(scope.row, scope.$rowIndex, 'others')">删除</el-button>
+                    <el-button size="default" type="danger"
+                      @click="removeEvent(scope.row, scope.$rowIndex, 'report_detail')">删除</el-button>
                   </template>
                 </vxe-table-column>
               </vxe-table>
@@ -509,17 +513,19 @@
             中审项目报销详情
             <el-button size="default" style="margin-left: 20px" type="primary"
               :disabled="method === 'view' || status === 'audit' || status === 'taskFormDetail'"
-              @click="insertEvent('others')" plain>
+              @click="insertEvent('zs_project_detail')" plain>
               新增
             </el-button>
           </el-divider>
           <el-row :gutter="15">
             <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-rules="validRules">
+                :edit-rules="validRules" :tooltip-config="{
+                  enterable: true
+                }">
                 <vxe-table-column field="userName" title="报销人" :edit-render="{}" show-overflow="title"
                   :rules="[{ required: true, message: '请选择报销人', trigger: 'blur' }]">
                   <template #edit="scope">
@@ -536,25 +542,29 @@
                   :rules="[{ required: true, message: '请选择报销类别', trigger: 'blur' }]">
                   <template #edit="scope">
                     <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>
                 </vxe-table-column>
                 <vxe-table-column field="projectName" title="报销详情" :edit-render="{}" show-overflow="title"
                   :rules="[{ required: true, message: '请填写报销详情', trigger: 'blur' }]">
                   <template #edit="scope">
                     <el-input v-model="scope.row.projectName"
-                      @focus="openProgramPageForm4(scope.$rowIndex, scope.row)"></el-input>
+                      @focus="openProgramPageForm8(scope.$rowIndex, scope.row)"></el-input>
                   </template>
                 </vxe-table-column>
                 <vxe-colgroup title="发票号和立项号至少填写一项" header-align="center">
-                  <vxe-table-column field="invoiceNumber" title="发票号" :edit-render="{}" show-overflow="title"
-                    :rules="[{ required: true, message: '请填写发票号', trigger: 'blur' }]">
+                  <vxe-table-column field="invoiceNumber" title="发票号" :edit-render="{}" show-overflow="title">
+                    <template #header>
+                      <i class="vxe-cell--required-icon"></i>发票号
+                    </template>
                     <template #edit="scope">
                       <el-input v-model="scope.row.invoiceNumber"></el-input>
                     </template>
                   </vxe-table-column>
-                  <vxe-table-column field="projectApprovalNumber" title="立项号" :edit-render="{}" show-overflow="title"
-                    :rules="[{ required: true, message: '请填写立项号', trigger: 'blur' }]">
+                  <vxe-table-column field="projectApprovalNumber" title="立项号" :edit-render="{}" show-overflow="title">
+                    <template #header>
+                      <i class="vxe-cell--required-icon"></i>立项号
+                    </template>
                     <template #edit="scope">
                       <el-input v-model="scope.row.projectApprovalNumber"></el-input>
                     </template>
@@ -592,7 +602,7 @@
                 <vxe-table-column title="操作" width="100">
                   <template #default="scope">
                     <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>
                 </vxe-table-column>
               </vxe-table>
@@ -785,6 +795,7 @@ export default {
         detailInfoContracts: [],
         detailInfoReports: [],
         detailInfoOthers: [],
+        detailInfoProject: [],
         detailInfoProcured: [],
         amountInfos: [],
         invoiceReimbursements: [],
@@ -837,6 +848,7 @@ export default {
         detailInfoContracts: [],
         detailInfoReports: [],
         detailInfoOthers: [],
+        detailInfoProject: [],
         detailInfoProcured: [],
         sourceType: '',
         preList: [],
@@ -961,6 +973,7 @@ export default {
       this.inputForm.detailInfoContracts = []
       this.inputForm.detailInfoReports = []
       this.inputForm.detailInfoOthers = []
+      this.inputForm.detailInfoProject = []
       this.inputForm.detailInfoProcured = []
       this.inputForm.purchaseNo = ''
       this.inputForm.preList = ''