Procházet zdrojové kódy

fix:出账详情联调

lazy před 7 měsíci
rodič
revize
6efc41adcf

+ 1 - 1
src/router/moudules/refundManage.js

@@ -9,7 +9,7 @@ export default {
   children: [
     {
       path: '/refundManage/index',
-      name: 'FinancingManage',
+      name: 'FefundManage',
       component: () => import('@/views/refundManage/index'),
       meta: { title: '退款管理', breadcrumb: false }
     },

+ 73 - 279
src/views/financialManagement/components/EditExitAccount.vue

@@ -6,7 +6,7 @@
         <el-input
           v-model="ruleForm.customerName"
           placeholder="请输入核心企业名称"
-          :disabled="disabled"
+          disabled
         >
         </el-input>
       </el-form-item>
@@ -14,7 +14,7 @@
         <el-input
           v-model="ruleForm.businessName"
           placeholder="请输入业务名称"
-          :disabled="disabled"
+          disabled
         >
         </el-input>
       </el-form-item>
@@ -22,7 +22,7 @@
         <el-input
           v-model="ruleForm.businessNumber"
           placeholder="请输入业务编号"
-          :disabled="disabled"
+          disabled
         >
         </el-input>
       </el-form-item>
@@ -30,7 +30,7 @@
         <el-input
           v-model="ruleForm.supplierName"
           placeholder="请输入供应商名称"
-          :disabled="disabled"
+          disabled
         >
         </el-input>
       </el-form-item>
@@ -38,15 +38,15 @@
         <el-input
           v-model="ruleForm.contractNumber"
           placeholder="请输入采购合同编号"
-          :disabled="disabled"
+          disabled
         >
         </el-input>
       </el-form-item>
-      <el-form-item label="类型" prop="type">
+      <el-form-item label="类型" prop="cashTypeDict.name">
         <el-input
-          v-model="ruleForm.type"
+          v-model="ruleForm.cashTypeDict.name"
           placeholder="请输入采购合同编号"
-          :disabled="disabled"
+          disabled
         >
         </el-input>
       </el-form-item>
@@ -54,7 +54,7 @@
         <el-input
           v-model="ruleForm.amount"
           placeholder="请输入金额"
-          :disabled="disabled"
+          disabled
         >
         </el-input>
       </el-form-item>
@@ -65,32 +65,31 @@
           clearable
           placeholder="请选择日期"
           style="width: 100%"
-          :picker-options="pickerOptions"
           value-format="yyyy-MM-dd"
+          disabled
         >
         </el-date-picker>
       </el-form-item>
       <el-form-item style="width: 100%;">
         <el-table
           :data="exitFinanceData"
-          :span-method="spanMethod"
           :default-expand-all="true"
           @expand-change="entryTableExpandChange"
         >
-          <!-- <el-table-column type="expand">
+          <el-table-column type="expand">
             <template slot-scope="props">
               <template v-if="disabled">
                 <div class="entry-table-expand">
-                  {{ (!props.row.xxs || props.row.xxs == '') ? '无附件' : '' }}
+                  {{ (!props.row.fileText || props.row.fileText == '') ? '无附件' : '' }}
                 </div>
               </template>
-              <template v-else>
+              <!-- <template v-else>
                 <div style="width: 100%">
                   <unified-editor :content.sync="props.row.lifeFeedback" />
                 </div>
-              </template>
+              </template> -->
             </template>
-          </el-table-column> -->
+          </el-table-column>
           <el-table-column
             label="序号"
             type="index"
@@ -98,70 +97,53 @@
           >
           </el-table-column>
           <el-table-column
-            property="date"
+            prop="loanDate"
             label="此次放款日期"
             width="120"
             :show-overflow-tooltip="true"
           >
           </el-table-column>
           <el-table-column
-            property="date"
+            prop="loanAmount"
             label="此次放款金额"
             width="120"
             :show-overflow-tooltip="true"
           >
           </el-table-column>
           <el-table-column label="打款账户">
-            <el-table-column label="公司归属" :show-overflow-tooltip="true">
-              <template slot-scope="scope">
-                <el-select v-model="scope.row.companyOwnerId" placeholder="请选择归属公司">
-                  <el-option
-                    v-for="item in companyOwnershipCapitalList"
-                    :key="item.id"
-                    :label="item.institutionName"
-                    :value="item.id"
-                  />
-                </el-select>
-              </template>
+            <el-table-column label="公司归属" prop="fromCompanyBelongName" :show-overflow-tooltip="true">
             </el-table-column>
-            <el-table-column label="银行名称" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="银行卡号" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="银行名称" prop="fromBankName" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="银行卡号" prop="fromBankAccount" :show-overflow-tooltip="true"></el-table-column>
           </el-table-column>
           <el-table-column label="收款账户">
-            <el-table-column label="银行名称" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="银行卡号" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="银行名称" prop="toCompanyBelongName" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column label="银行卡号" prop="toBankName" :show-overflow-tooltip="true"></el-table-column>
           </el-table-column>
           <el-table-column
-            property="date"
+            prop="currExecutor"
             label="当前执行人"
             width="120"
           >
           </el-table-column>
-          <el-table-column label="操作">
+          <!-- <el-table-column label="操作">
             <template slot-scope="scope">
               <el-button type="text" @click="addExitFinanceRow">增加</el-button>
               <el-button v-if="scope.$index !== 0 && exitFinanceData.length >= 2" type="text" @click="delExitFinanceRow(scope.$index, scope.row)">删除</el-button>
             </template>
-          </el-table-column>
+          </el-table-column> -->
         </el-table>
       </el-form-item>
-      <el-form-item label="备注" style="width: 100%">
-        <el-input
-          v-model="ruleForm.remark"
-          placeholder="请输入备注"
-        />
-      </el-form-item>
     </el-form>
   </div>
 </template>
 <script>
 import { mapGetters } from 'vuex'
-import { getEnterprises, getAttributionOfAccount, getCompanyOwnership, getInstitutionName, getNocapitalBankName, getBankCardNo, getBusinessType, getCpitalBankName, cashFlowGetExitDetail } from '@/api/financialManagement/financialManagement'
-import { codeChangeName, filterListData } from '@/utils/index'
+import { cashFlowGetExitDetail } from '@/api/financialManagement/financialManagement'
 export default {
-  components: {
-    UnifiedEditor: () => import('@/components/UnifiedEditor/index.vue')
-  },
+  // components: {
+  //   UnifiedEditor: () => import('@/components/UnifiedEditor/index.vue')
+  // },
   props: {
     disabled: {
       type: Boolean,
@@ -170,11 +152,6 @@ export default {
   },
   data() {
     return {
-      pickerOptions: {
-        disabledDate(time) {
-          return time.getTime() > Date.now()
-        }
-      },
       key: 0,
       ruleForm: {
         id: '',
@@ -185,254 +162,71 @@ export default {
         contractNumber: '',
         amount: '',
         cashDate: '',
-        type: '',
-        remark: ''
-      },
-      rules: {
-        customerName: [
-          { required: true, message: '请输入核心企业名称', trigger: 'change' }
-        ],
-        businessName: [
-          { required: true, message: '请输入业务名称', trigger: 'change' }
-        ],
-        businessNumber: [
-          { required: true, message: '请输入业务编号', trigger: 'change' }
-        ],
-        supplierName: [
-          { required: true, message: '请输入供应商名称', trigger: 'blur' }
-        ],
-        contractNumber: [
-          { required: true, message: '请输入采购合同编号', trigger: 'blur' }
-        ],
-        amount: [
-          { required: true, message: '请输入金额', trigger: 'blur' }
-        ],
-        type: [
-          { required: true, message: '请选择类型', trigger: 'blur' }
-        ],
-        cashDate: [
-          { required: true, message: '请选择出账日期', trigger: 'blur' }
-        ]
+        cashTypeDict: ''
       },
-      exitFinanceData: [
-        {
-          date: '2024-03-22'
-        }
-      ],
-      companyOwnershipCapitalList: [] // 归属公司列表
+      // rules: {
+      //   customerName: [
+      //     { required: true, message: '请输入核心企业名称', trigger: 'change' }
+      //   ],
+      //   businessName: [
+      //     { required: true, message: '请输入业务名称', trigger: 'change' }
+      //   ],
+      //   businessNumber: [
+      //     { required: true, message: '请输入业务编号', trigger: 'change' }
+      //   ],
+      //   supplierName: [
+      //     { required: true, message: '请输入供应商名称', trigger: 'blur' }
+      //   ],
+      //   contractNumber: [
+      //     { required: true, message: '请输入采购合同编号', trigger: 'blur' }
+      //   ],
+      //   amount: [
+      //     { required: true, message: '请输入金额', trigger: 'blur' }
+      //   ],
+      //   type: [
+      //     { required: true, message: '请选择类型', trigger: 'blur' }
+      //   ],
+      //   cashDate: [
+      //     { required: true, message: '请选择出账日期', trigger: 'blur' }
+      //   ]
+      // },
+      exitFinanceData: []
     }
   },
   computed: {
     ...mapGetters([
       'name',
       'constant'
-    ]),
-    getCompanyOwnershipList() {
-      return (attributionOfAccountId) => {
-        const attributionOfAccountCode = codeChangeName(this.attributionOfAccountList, attributionOfAccountId, 'id', 'code')
-        let list = []
-        if (attributionOfAccountCode === 'longSilver') {
-          list = filterListData(this.companyOwnershipList, ['shang_hai_ao_hong', 'xi_an_ao_hong', 'shan_xi_ka_fubao', 'shen_zhen_chang_yin_bao', 'shang_hai_ke_fubao'])
-        } else if (attributionOfAccountCode === 'noLongSilver') {
-          list = filterListData(this.companyOwnershipList, ['zi_guan', 'factoring', 'investment', 'shen_zhen_chang_yin', 'shang_hai_yin_guo'])
-        }
-        return list
-      }
-    },
-    isCapital() {
-      return (attributionOfAccountId) => {
-        const attributionOfAccountCode = codeChangeName(this.attributionOfAccountList, attributionOfAccountId, 'id', 'code')
-        if (attributionOfAccountCode === 'longSilver') {
-          return false
-        } else if (attributionOfAccountCode === 'noLongSilver') {
-          return false
-        } else if (attributionOfAccountCode === 'capital') {
-          return true
-        } else if (attributionOfAccountCode === 'undefined') {
-          return false
-        }
-      }
-    }
+    ])
   },
   created() {
     this.$store.dispatch('getConstant', ['cashFlowEntryType'])
-    this.getEnterprises()
-    this.getAttributionOfAccount()
-    this.getCompanyOwnership()
-    this.getInstitutionName()
 
     this.getCashFlowGetExitDetail()
   },
   methods: {
-    spanMethod({ row, column, rowIndex, columnIndex }) {
-      if (columnIndex === 10) {
-        console.log(column)
-        return { rowspan: 1, colspan: 10 }
-      }
-    },
-    addExitFinanceRow() {
-      this.exitFinanceData.push({ date: '2024-03-23' })
-    },
-    delExitFinanceRow(index) {
-      this.exitFinanceData.splice(index, 1)
-    },
+    // addExitFinanceRow() {
+    //   this.exitFinanceData.push()
+    // },
+    // delExitFinanceRow(index) {
+    //   this.exitFinanceData.splice(index, 1)
+    // },
     // 获取出账详情
     getCashFlowGetExitDetail() {
       const { id } = this.$route.query
       if (id) {
-        cashFlowGetExitDetail(id).then(data => {
-          console.log(data)
+        cashFlowGetExitDetail(id).then(res => {
+          console.log(res)
+          const fieldArr = ['id', 'customerName', 'businessName', 'businessNumber', 'supplierName', 'platformName', 'cashTypeDict', 'amount', 'contractNumber', 'cashDate']
+          fieldArr.forEach(el => {
+            if (res.data.cashFlowManageBaseVo[el]) {
+              this.ruleForm[el] = res.data.cashFlowManageBaseVo[el]
+            }
+          })
+          this.exitFinanceData = res.data.cashFlowManageBaseVo.cashFlowManageOutInfoList
         })
       }
     },
-    getEnterprises() {
-      getEnterprises().then(response => {
-        this.corporateNameList = response.data
-      })
-    },
-    getAttributionOfAccount() {
-      getAttributionOfAccount({ parentCode: 'attributionOfAccount' }).then(response => {
-        this.attributionOfAccountList = response.data
-      })
-    },
-    getCompanyOwnership() {
-      getCompanyOwnership({ parentCode: 'companyOwnership' }).then(response => {
-        this.companyOwnershipList = response.data
-      })
-    },
-    // 获取归属公司列表
-    getInstitutionName() {
-      getInstitutionName().then(response => {
-        this.companyOwnershipCapitalList = response.data.data
-      })
-    },
-    // 归属公司方法chang
-    refinancingManagementChange(companyOwnership) {
-      const params = {
-        refinancingManagementId: companyOwnership
-      }
-      getBusinessType(params).then(({ data }) => {
-        // this.businessTypeList = data.data
-        console.log('businessTypeList -----------')
-        console.log(data.data)
-      })
-    },
-    attributionOfAccountChange() {
-      this.ruleForm.companyOwnershipId = ''
-      this.ruleForm.refinancingManagementId = ''
-      this.ruleForm.bankName = ''
-      this.ruleForm.bankCardNo = ''
-      this.ruleForm.bankCardNoId = ''
-      this.ruleForm.businessTypeId = ''
-      this.ruleForm.businessNumberId = ''
-    },
-    companyOwnershipChange(companyOwnership) {
-      this.ruleForm.bankName = ''
-      this.ruleForm.bankCardNo = ''
-      this.ruleForm.bankCardNoId = ''
-      this.ruleForm.businessTypeId = ''
-      this.ruleForm.businessNumberId = ''
-      const params = {
-        companyOwnershipId: companyOwnership
-      }
-      getNocapitalBankName(params).then(({ data }) => {
-        this.bankList = data
-        this.nanCapitalDataList = data
-      })
-    },
-    // 获取银行列表
-    getBankList() {
-      getCpitalBankName(params).then(({ data }) => {
-        console.log('getCpitalBankName -------------')
-        console.log(data)
-        this.bankList = data
-      })
-    },
-    bankChange() {
-      this.ruleForm.bankCardNo = ''
-      this.ruleForm.bankCardNoId = ''
-      const { bankName, companyOwnershipId, attributionOfAccountId, refinancingManagementId, businessTypeId } = this.ruleForm
-      const attributionOfAccountCode = codeChangeName(this.attributionOfAccountList, attributionOfAccountId, 'id', 'code')
-      let params = {}
-      if (attributionOfAccountCode === 'capital') {
-        params = {
-          refinancingManagementId,
-          bankName,
-          businessType: businessTypeId
-        }
-      } else {
-        params = {
-          companyOwnershipId,
-          bankName
-        }
-      }
-      getBankCardNo(params).then(response => {
-        this.ruleForm.bankCardNo = response.data[0].bankCardNo
-        this.ruleForm.bankCardNoId = response.data[0].id
-      })
-    },
-    getParams() {
-      return new Promise((resolve, reject) => {
-        const { companyId, attributionOfAccountId, companyOwnershipId, refinancingManagementId, bankCardNoId, businessTypeId, businessNumberId, type, incomeDate, incomeAmount, invoiceAmount, realAmount, remark, bankName, bankCardNo, id } = this.ruleForm
-
-        // 账户归属选择为资方的时候校验公司归属和业务类型
-        if (this.isCapital(attributionOfAccountId)) {
-          if (!refinancingManagementId) {
-            this.$message.warning('请选择公司归属')
-            return
-          }
-          if (!businessTypeId) {
-            this.$message.warning('请选择业务类型')
-            return
-          }
-        }
-        if (!this.isCapital(attributionOfAccountId)) {
-          if (!companyOwnershipId) {
-            this.$message.warning('请选择公司归属')
-            return
-          }
-        }
-        // 当类型为现金时校验入账金额
-        if (type === 'entryType_cash') {
-          if (!incomeAmount) {
-            this.$message.warning('请输入账金额')
-            return
-          }
-        }
-        // 当类型为票据贴现时校验票据金额和实际金额
-        if (type === 'entryType_bills_discounted') {
-          if (!invoiceAmount) {
-            this.$message.warning('请输入票据金额')
-            return
-          }
-          if (!realAmount) {
-            this.$message.warning('请输入实际金额')
-            return
-          }
-        }
-
-        const param = {
-          Loading: true,
-          id,
-          companyId,
-          accountBelong: attributionOfAccountId,
-          companyBelong: companyOwnershipId || refinancingManagementId,
-          bankAccountId: bankCardNoId,
-          businessType: businessTypeId,
-          businessTypeNumber: businessNumberId,
-          type,
-          incomeDate,
-          remark,
-          bankName,
-          bankAccount: bankCardNo
-        }
-        this.$refs.ruleForm.validate((valid) => {
-          if (valid) {
-            resolve(param)
-          }
-        })
-      })
-    },
     entryTableExpandChange() {
       return
     }

+ 2 - 1
src/views/financialManagement/indexTable.js

@@ -160,7 +160,8 @@ export default {
       return ({ item, row }) => {
         const { rowPower } = item
         if (rowPower) {
-          if (rowPower.includes(row.cashStatus)) {
+          // entryOutType 出入帐类型 1--入账 2--出账 出账只存在查看按钮
+          if (rowPower.includes(row.cashStatus) || row.entryOutType === '2') {
             return false
           }
           return true

+ 6 - 6
src/views/refundManage/indexTable.js

@@ -92,7 +92,7 @@ export default {
               {
                 msg: '退款申请',
                 icon: 'iconfont icon-xiugai',
-                power: '',
+                power: 'applyRefund',
                 tabPower: ['all'],
                 category: 'edit',
                 rowPower: []
@@ -100,7 +100,7 @@ export default {
               {
                 msg: '查看',
                 icon: 'iconfont icon-Magnifier',
-                power: '',
+                power: 'viewRefundManagement',
                 tabPower: ['all'],
                 // rowPower: ['保证方式确认'],
                 category: 'see'
@@ -110,7 +110,7 @@ export default {
               return (
                 this.tablePower({ item, tab: this.activeName, row }) &&
                 <el-tooltip class='item' effect='dark' content={item.msg} placement='top' >
-                  <span class='table-icon-box'>
+                  <span class='table-icon-box' v-power={item.power}>
                     <i class={item.icon} onClick={() => { this.handlerOperate(item.category, row) }}></i>
                   </span>
                 </el-tooltip>
@@ -201,7 +201,7 @@ export default {
               {
                 msg: '编辑',
                 icon: 'iconfont icon-xiugai',
-                power: '',
+                power: 'applyRefund',
                 tabPower: ['pending'],
                 // rowPower: [''],
                 category: 'edit'
@@ -209,7 +209,7 @@ export default {
               {
                 msg: '查看',
                 icon: 'iconfont icon-Magnifier',
-                power: '',
+                power: 'viewRefundManagement',
                 tabPower: ['all', 'pending'],
                 // rowPower: [''],
                 category: 'see'
@@ -219,7 +219,7 @@ export default {
               return (
                 this.tablePower({ item, tab: this.activeName, row }) &&
                 <el-tooltip class='item' effect='dark' content={item.msg} placement='top' >
-                  <span class='table-icon-box'>
+                  <span class='table-icon-box' v-power={item.power}>
                     <i class={item.icon} onClick={() => { this.handlerOperate(item.category, row) }}></i>
                   </span>
                 </el-tooltip>