Forráskód Böngészése

代码提交:
1018报销申请bug修改

sunruiqi 2 éve
szülő
commit
4bb90eb9d9

+ 4 - 4
src/views/modules/finance/invoice/ReimbursementTypePullForm.vue

@@ -1,7 +1,7 @@
 <template>
   <div>
     <el-dialog
-      :title="title"
+      title="报销类型选择"
       :close-on-click-modal="false"
       v-dialogDrag
       width="1100px"
@@ -25,7 +25,7 @@
           border="inner"
           auto-resize
           resizable
-          height="auto"
+          height="500px"
           :loading="loading"
           size="small"
           ref="typeTable"
@@ -86,12 +86,12 @@
       // 表单提交
       getProgramForType () {
         let rows
-        if (this.commonJS.isEmpty(this.$refs.typeTable.getCheckboxRecords())) {
+        if (this.commonJS.isEmpty(this.$refs.typeTable.getCheckboxRecords()) || this.$refs.typeTable.getCheckboxRecords().length > 1) {
           this.$message.error('请选择一条数据')
           return
         }
         rows = this.$refs.typeTable.getCheckboxRecords()
-        if (rows[0].level !== '3') {
+        if (!rows[0].disabled && rows[0].id !== '3') {
           this.$message.error('请选择子集数据')
           return
         }

+ 2 - 2
src/views/modules/finance/invoice/UserPullForm.vue

@@ -4,7 +4,7 @@
       :title="title"
       :close-on-click-modal="false"
       v-dialogDrag
-      width="1100px"
+      width="500px"
       height="500px"
       @close="close"
       @keyup.enter.native=""
@@ -25,7 +25,7 @@
           border="inner"
           auto-resize
           resizable
-          height="auto"
+          height="300px"
           :loading="loading"
           size="small"
           ref="userTable"

+ 2 - 2
src/views/modules/reimbursement/info/InfoList.vue

@@ -151,8 +151,8 @@
           <vxe-column width="200" title="报销类别" field="typeName"></vxe-column>
           <vxe-column width="200" title="报销项目" field="projectName">
             <template slot-scope="scope">
-              <el-link  type="primary" :underline="false" v-if="hasPermission('reimbursement:info:view')" @click="viewProject(scope.row.projectId)">{{scope.row.projectName}}</el-link>
-              <el-link  type="primary" :underline="false" v-else-if="hasPermission('reimbursement:info:view')" @click="viewProject(scope.row.projectId)">{{scope.row.projectName}}</el-link>
+              <el-link  type="primary" :underline="false" v-if="hasPermission('reimbursement:info:view') && scope.row.projectId != undefined" @click="viewProject(scope.row.projectId)">{{scope.row.projectName}}</el-link>
+              <el-link  type="primary" :underline="false" v-else-if="hasPermission('reimbursement:info:view') && scope.row.projectId != undefined" @click="viewProject(scope.row.projectId)">{{scope.row.projectName}}</el-link>
               <span v-else>{{scope.row.projectName}}</span>
             </template>
           </vxe-column>

+ 21 - 6
src/views/modules/reimbursement/info/ReimbursementForm.vue

@@ -68,7 +68,6 @@
           <vxe-table-column field="userName" title="报销人" :edit-render="{}" :rules="[{required: true, message:'请选择报销人', trigger:'blur'}]">
             <template v-slot:edit="scope">
               <el-input v-model="scope.row.userName" @focus="userPullListForm(scope.$rowIndex)"></el-input>
-<!--              <UserSelect :limit='1' :name="scope.row.userName" @getValue='(value, label) => {scope.row.userId = value, scope.row.userName = label}'></UserSelect>-->
             </template>
           </vxe-table-column>
           <vxe-table-column field="deptName" title="报销部门" :edit-render="{}">
@@ -83,7 +82,7 @@
           </vxe-table-column>
           <vxe-table-column field="projectName" title="报销项目" :edit-render="{}" :rules="[{required: true, message:'请选择报销项目', trigger:'blur'}]">
             <template v-slot:edit="scope">
-              <el-input v-model="scope.row.projectName" @focus="openProgramPageForm(scope.$rowIndex)"></el-input>
+              <el-input v-model="scope.row.projectName" @focus="openProgramPageForm(scope.$rowIndex, scope.row)"></el-input>
             </template>
           </vxe-table-column>
           <vxe-table-column field="reportNumber" title="报告号" :edit-render="{}">
@@ -182,6 +181,7 @@
 
 <script>
   import ReimbursementService from '@/api/sys/ReimbursementService'
+  import ReimbursementTypeService from '@/api/sys/ReimbursementTypeService'
   import UpLoadComponent from '@/views/common/UpLoadComponent'
   import SelectUserTree from '@/views/modules/utils/treeUserSelect'
   import SelectTree from '@/components/treeSelect/treeSelect.vue'
@@ -190,7 +190,6 @@
   import ProgramPageForm from '@/views/modules/finance/invoice/ProgramPageForm'
   import ReimbursementTypePullForm from '@/views/modules/finance/invoice/ReimbursementTypePullForm'
   import UserPullForm from '@/views/modules/finance/invoice/UserPullForm'
-  import UserSelect from '@/components/userSelect'
   export default {
     data () {
       return {
@@ -213,6 +212,7 @@
       }
     },
     reimbursementService: null,
+    reimbursementTypeService: null,
     userService: null,
     created () {
       this.reimbursementService = new ReimbursementService()
@@ -221,6 +221,7 @@
       this.inputForm.reimDate = new Date()
       this.inputForm.department = this.officeName
       this.userService = new UserService()
+      this.reimbursementTypeService = new ReimbursementTypeService()
     },
     props: {
       businessId: {
@@ -543,10 +544,24 @@
         }
         row.count = parseFloat(count).toFixed(2)
       },
-      openProgramPageForm (rowIndex) {
+      openProgramPageForm (rowIndex, row) {
+        if (this.commonJS.isEmpty(row.typeName)) {
+          this.$message.error('请选择报销类型')
+          return
+        }
         this.indexRow = rowIndex
-        // 打开单选组件
-        this.$refs.programPageForm.init(null, false)
+        this.reimbursementTypeService.findById(row.typeId).then(({data}) => {
+          console.log('typeInfo', data.sort)
+          let i = data.sort.toString()
+          i = i.substring(0, 1)
+          // 非业务报销
+          if (i === '2') {
+            this.$refs.programPageForm.init('2', false)
+          } else {
+            // 打开单选组件
+            this.$refs.programPageForm.init(null, false)
+          }
+        })
       },
       getProgram (rows) {
         this.inputForm.detailInfos[this.indexRow].projectId = rows[0].id