ソースを参照

Merge branch 'dev1.0' of http://222.90.211.174:3000/suf/factoring-trade-front-end-v2 into dev1.0

sufan 7 ヶ月 前
コミット
2f78042590

+ 0 - 75
src/views/creditManage/projectCredit/components/historyView/CompanyAdd.vue

@@ -1,75 +0,0 @@
-<template>
-  <div class="project-info">
-    <el-form
-      ref="ruleFormRef"
-      :model="ruleForm"
-      label-position="top"
-      label-width="150px"
-      class="rule-form-orange"
-    >
-      <cy-info-title>供应商信息</cy-info-title>
-      <el-form-item label="公司名称" prop="supplierEnterpriseName">
-        <el-input v-model="ruleForm.supplierEnterpriseName" placeholder="请输入公司名称" />
-      </el-form-item>
-      <cy-info-title>核心企业</cy-info-title>
-      <el-form-item label="核心企业名称">
-        <el-input v-model="ruleForm.corporateName" placeholder="请输入项目名称" disabled />
-      </el-form-item>
-      <el-form-item label="统一社会信用代码">
-        <el-input v-model="ruleForm.socialCreditCode" placeholder="请输入项目名称" disabled />
-      </el-form-item>
-      <el-form-item label="法人代表">
-        <el-input v-model="ruleForm.legalRepresentative" placeholder="请输入项目名称" disabled />
-      </el-form-item>
-      <el-form-item label="成立日期">
-        <el-input v-model="ruleForm.startSate" placeholder="请输入项目名称" disabled />
-      </el-form-item>
-      <el-form-item label="注册地址">
-        <el-input v-model="ruleForm.address" placeholder="请输入项目名称" disabled />
-      </el-form-item>
-    </el-form>
-  </div>
-</template>
-
-<script>
-export default {
-  props: {
-    detailsInfo: {
-      type: Object,
-      default: () => {}
-    }
-  },
-  data() {
-    return {
-      ruleForm: {
-        projectType: '',
-        projectName: ''
-      }
-    }
-  },
-  watch: {
-    detailsInfo: {
-      handler(newV) {
-        if (newV && Object.keys(newV).length) {
-          const {
-            projectType,
-            projectName
-          } = JSON.parse(JSON.stringify(newV))
-
-          this.ruleForm = { projectType, projectName }
-        }
-      },
-      immediate: true,
-      deep: true
-    }
-  }
-}
-</script>
-
-  <style lang="scss" scoped>
-  .project-info {
-  .el-form {
-    padding: 10px 20px;
-  }
-  }
-  </style>

+ 32 - 30
src/views/creditManage/projectCredit/components/historyView/CompanySupplement.vue

@@ -17,41 +17,43 @@
           <el-radio :label="0">否</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="与供应商存在历史合作" prop="historicalCooperation" disabled>
-        <el-radio-group v-model="ruleForm.historicalCooperation">
+      <el-form-item label="与供应商存在历史合作" prop="historicalCooperation">
+        <el-radio-group v-model="ruleForm.historicalCooperation" disabled>
           <el-radio :label="1">是</el-radio>
           <el-radio :label="0">否</el-radio>
         </el-radio-group>
       </el-form-item>
 
-      <cy-info-title>历史合作情况</cy-info-title>
-      <el-form-item label="历史合作时间" prop="historicalCooperationDuration">
-        <el-input v-model="ruleForm.historicalCooperationDuration" placeholder="历史合作时间" disabled />
-      </el-form-item>
-      <el-form-item label="历史合作规模" prop="historicalCooperationScale">
-        <el-input v-model="ruleForm.historicalCooperationScale" placeholder="历史合作规模" disabled />
-      </el-form-item>
-      <el-form-item label="累计历史开票金额" prop="historicalCooperationInvoicingAmount">
-        <el-input v-model="ruleForm.historicalCooperationInvoicingAmount" placeholder="累计历史开票金额" disabled />
-      </el-form-item>
-      <el-form-item label="历史回款最长账期" prop="historicalCooperationMaximumAccountingPeriod">
-        <el-input v-model="ruleForm.historicalCooperationMaximumAccountingPeriod" placeholder="历史回款最长账期" disabled />
-      </el-form-item>
-      <el-form-item label="历史合作项目数量" prop="historicalCooperationTimes">
-        <el-input v-model="ruleForm.historicalCooperationMaximumAccountingPeriod" placeholder="历史合作项目数量" disabled />
-      </el-form-item>
-      <el-form-item label="历史合作资料上传" style="width: 100%;">
-        <template slot="label">
-          <span>*历史合作资料上传</span>
-          <span style="color: #A3A8AC; margin-left: 10px; font-weight: 500;">提供近一年与核心企业合作的相关项目,招投标文件、购销合同、订单、验收单、结算单、发票、回单,格式为:pdf</span>
-        </template>
-        <cy-comm-table
-          ref="commTable"
-          :columns="columns"
-          :data="tableData"
-          :count="0"
-        />
-      </el-form-item>
+      <template v-if="ruleForm.historicalCooperation">
+        <cy-info-title>历史合作情况</cy-info-title>
+        <el-form-item label="历史合作时间" prop="historicalCooperationDuration">
+          <el-input v-model="ruleForm.historicalCooperationDuration" placeholder="历史合作时间" disabled />
+        </el-form-item>
+        <el-form-item label="历史合作规模" prop="historicalCooperationScale">
+          <el-input v-model="ruleForm.historicalCooperationScale" placeholder="历史合作规模" disabled />
+        </el-form-item>
+        <el-form-item label="累计历史开票金额" prop="historicalCooperationInvoicingAmount">
+          <el-input v-model="ruleForm.historicalCooperationInvoicingAmount" placeholder="累计历史开票金额" disabled />
+        </el-form-item>
+        <el-form-item label="历史回款最长账期" prop="historicalCooperationMaximumAccountingPeriod">
+          <el-input v-model="ruleForm.historicalCooperationMaximumAccountingPeriod" placeholder="历史回款最长账期" disabled />
+        </el-form-item>
+        <el-form-item label="历史合作项目数量" prop="historicalCooperationTimes">
+          <el-input v-model="ruleForm.historicalCooperationMaximumAccountingPeriod" placeholder="历史合作项目数量" disabled />
+        </el-form-item>
+        <el-form-item label="历史合作资料上传" style="width: 100%;">
+          <template slot="label">
+            <span>*历史合作资料上传</span>
+            <span style="color: #A3A8AC; margin-left: 10px; font-weight: 500;">提供近一年与核心企业合作的相关项目,招投标文件、购销合同、订单、验收单、结算单、发票、回单,格式为:pdf</span>
+          </template>
+          <cy-comm-table
+            ref="commTable"
+            :columns="columns"
+            :data="tableData"
+            :count="0"
+          />
+        </el-form-item>
+      </template>
     </el-form>
   </div>
 </template>

+ 0 - 114
src/views/creditManage/projectCredit/components/historyView/ProjectAdd.vue

@@ -1,114 +0,0 @@
-<template>
-  <div class="project-info">
-
-    <el-form
-      ref="ruleFormRef"
-      :model="ruleForm"
-      label-position="top"
-      label-width="150px"
-      class="rule-form-orange"
-    >
-      <cy-info-title>供应商信息</cy-info-title>
-      <el-form-item label="公司名称" prop="supplierEnterpriseName">
-        <el-input :value="ruleForm.supplierEnterpriseName" placeholder="请输入公司名称" disabled />
-      </el-form-item>
-      <cy-info-title>项目信息</cy-info-title>
-      <el-form-item label="项目类型" prop="projectType">
-        <el-select v-model="ruleForm.projectType" placeholder="请选择项目类型" disabled>
-          <el-option
-            v-for="item in projectTypes"
-            :key="item.value"
-            :label="item.label"
-            :value="item.value"
-          />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="项目名称" class="two-form-item" prop="projectName">
-        <el-input :value="ruleForm.projectName" placeholder="请输入项目名称" disabled />
-      </el-form-item>
-
-      <template v-if="ruleForm.projectType === 'c_project_type_1'">
-        <cy-info-title>项目业主方信息</cy-info-title>
-        <el-form-item label="项目业主方公司名称">
-          <el-input :value="ruleForm.corporateName" placeholder="请输入项目业主方公司名称" disabled />
-        </el-form-item>
-        <el-form-item label="统一社会信用代码">
-          <el-input :value="ruleForm.socialCreditCode" placeholder="请输入统一社会信用代码" disabled />
-        </el-form-item>
-        <el-form-item label="法人代表">
-          <el-input :value="ruleForm.legalRepresentative" placeholder="请输入法人代表" disabled />
-        </el-form-item>
-        <el-form-item label="成立日期">
-          <el-input :value="ruleForm.startSate" placeholder="请输入成立日期" disabled />
-        </el-form-item>
-        <el-form-item label="注册地址">
-          <el-input :value="ruleForm.address" placeholder="请输入注册地址" disabled />
-        </el-form-item>
-        <el-form-item label="是否为项目成立的公司" prop="companyForProject" class="industry">
-          <el-radio-group v-model="ruleForm.companyForProject" disabled>
-            <el-radio :label="1">是</el-radio>
-            <el-radio :label="0">否</el-radio>
-          </el-radio-group>
-        </el-form-item>
-      </template>
-
-    </el-form>
-  </div>
-</template>
-
-<script>
-export default {
-  props: {
-    detailsInfo: {
-      type: Object,
-      default: () => {}
-    }
-  },
-  data() {
-    return {
-      ruleForm: {
-        projectType: '',
-        projectName: ''
-      },
-      projectTypes: [
-        {
-          label: '固定项目',
-          value: 'c_project_type_1'
-        },
-        {
-          label: '集采项目',
-          value: 'c_project_type_2'
-        },
-        {
-          label: '无项目',
-          value: 'c_project_type_3'
-        }
-      ]
-    }
-  },
-  watch: {
-    detailsInfo: {
-      handler(newV) {
-        if (newV && Object.keys(newV).length) {
-          const {
-            projectType,
-            projectName
-          } = JSON.parse(JSON.stringify(newV))
-
-          this.ruleForm = { projectType, projectName }
-        }
-      },
-      immediate: true,
-      deep: true
-    }
-  }
-}
-</script>
-
-<style lang="scss" scoped>
-.project-info {
-.el-form {
-  padding: 10px 20px;
-}
-}
-</style>

+ 5 - 1
src/views/creditManage/projectCredit/dueReview/components/Company/Auditing.vue

@@ -19,7 +19,7 @@
         class="one-form-item"
         :rules="[{ required: ruleForm.enterpriseNature==='enterpriseNature_9', message: '请选择企业性质细分', trigger: 'change' }]"
       >
-        <el-select v-model="ruleForm.enterpriseNatureDetail" placeholder="请选择上市公司类型">
+        <el-select v-model="ruleForm.enterpriseNatureDetail" placeholder="请选择上市公司类型" :disabled="disabled">
           <el-option
             v-for="item in enterpriseNatureDetailList"
             :key="item.code"
@@ -156,6 +156,10 @@ export default {
     details: {
       type: Object,
       default: () => {}
+    },
+    disabled: {
+      type: Boolean,
+      default: false
     }
   },
   data() {

+ 16 - 3
src/views/financialManagement/components/AddAccountsContent.vue

@@ -128,7 +128,7 @@
         v-if="ruleForm.type === 'entryType_bills_discounted'"
         label="票据金额"
         prop="invoiceAmount"
-        class="one-form-item"
+        class="one-form-item form-required"
       >
         <cy-amount-input v-model="ruleForm.invoiceAmount" class="one-form-item" />
       </el-form-item>
@@ -136,7 +136,7 @@
         v-if="ruleForm.type === 'entryType_bills_discounted'"
         label="实际金额"
         prop="realAmount"
-        class="one-form-item"
+        class="one-form-item form-required"
       >
         <cy-amount-input v-model="ruleForm.realAmount" class="one-form-item" />
       </el-form-item>
@@ -261,7 +261,7 @@ export default {
           return false
         } else if (attributionOfAccountCode === 'capital') {
           return true
-        } else if (attributionOfAccountCode == 'undefined') {
+        } else if (attributionOfAccountCode === 'undefined') {
           return false
         }
       }
@@ -417,6 +417,19 @@ export default {
     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 (type === 'entryType_bills_discounted') {
+          if (!invoiceAmount) {
+            this.$message.warning('请输入票据金额')
+            return
+          }
+          if (!realAmount) {
+            this.$message.warning('请输入实际金额')
+            return
+          }
+        }
+
         const param = {
           Loading: true,
           id,

+ 79 - 58
src/views/invoicesManagement/components/ApplyInvoicingContent.vue

@@ -200,7 +200,7 @@
           <el-button style="width: 150px;" @click="() => { $refs.dialog.show = false }">取消</el-button>
         </div>
       </cy-dialog>
-      <cy-info-title style="margin-bottom:20px">
+      <!-- <cy-info-title style="margin-bottom:20px">
         <span>
           采购发票
           <span class="statistics">数量合计: <span>{{ fourMoney(nvoiceNumTotal) }}</span></span>
@@ -212,8 +212,8 @@
           <span style="color: #FE7D0B; margin-right: 20px; cursor: pointer" @click="addInfo">添加</span>
           <span style="color: #FE7D0B; margin-right: 20px; cursor: pointer" @click="view">示例</span>
         </template>
-      </cy-info-title>
-      <div class="table-box" style="width: 100%">
+      </cy-info-title> -->
+      <!-- <div class="table-box" style="width: 100%">
         <el-table :data="procureList">
           <el-table-column type="index" label="序号" width="50" />
           <el-table-column prop="nvoiceNumber" label="发票号码" label-class-name="rule-required">
@@ -276,12 +276,22 @@
             </template>
           </el-table-column>
         </el-table>
-      </div>
-      <el-form-item label="商品大类信息" prop="productBroadInfo">
-        <el-input
+      </div> -->
+      <el-form-item label="开票明细表(含税收分类编码)" prop="invoiceDetailFiles" class="form-required">
+        <!-- <el-input
           v-model="ruleForm.productBroadInfo"
           placeholder="请输入商品大类信息"
           :disabled="disabled"
+        /> -->
+        <cy-upload
+          ref="invoiceDetailFiles"
+          :upload-params="{
+            fileType: 'invoiceDetailFile'
+          }"
+          :file-data="ruleForm.invoiceDetailFiles"
+          :upload-from-orange-status="true"
+          placeholder="请上传开票明细表附件"
+          :disabled="disabled"
         />
       </el-form-item>
       <el-form-item
@@ -336,7 +346,7 @@ export default {
       openAmountTotal: 0,
       openQuantityTotal: 0,
       settlementLoading: false,
-      procureList: [],
+      // procureList: [],
       basicDisabled: false,
       ruleForm: {
         accountBankName: '',
@@ -345,8 +355,9 @@ export default {
         amountKind: 'amount_kind_payment',
         openAmount: '',
         remark: '',
-        productBroadInfo: '',
+        // productBroadInfo: '',
         invoicePurchaseFile: [],
+        invoiceDetailFiles: [], // 发票明细
         enterpriseName: '',
         socialCreditCode: '',
         phoneNumber: '',
@@ -359,8 +370,8 @@ export default {
         accountNumber: [{ required: true, message: '请输入开户账号', trigger: 'blur' }],
         invoiceType: [{ required: true, message: '请选择发票类型', trigger: 'change' }],
         amountKind: [{ required: true, message: '请选择金额种类', trigger: 'change' }],
-        remark: [{ required: true, message: '请输入备注信息', trigger: 'blur' }],
-        productBroadInfo: [{ required: true, message: '请输入商品大类信息', trigger: 'blur' }]
+        remark: [{ required: true, message: '请输入备注信息', trigger: 'blur' }]
+        // productBroadInfo: [{ required: true, message: '请输入商品大类信息', trigger: 'blur' }]
       },
       findByParentCode: [],
       basicInformation: {},
@@ -431,41 +442,43 @@ export default {
       return (val) => {
         return formatMoney(Number(val.openQuantity) * Number(val.salesPrice))
       }
-    },
-    nvoiceNumTotal() {
-      let sum = 0
-      this.procureList.forEach(item => {
-        sum += Number(item.nvoiceNum)
-      })
-      return sum
-    },
-    amountTotal() {
-      let sum = 0
-      this.procureList.forEach(item => {
-        sum += Number(item.amount)
-      })
-      return sum
-    },
-    taxAmountTotal() {
-      let sum = 0
-      this.procureList.forEach(item => {
-        sum += Number(item.taxAmount)
-      })
-      return sum
-    },
-    priceTaxTotalTotal() {
-      let sum = 0
-      this.procureList.forEach(item => {
-        sum += Number(item.priceTaxTotal)
-      })
-      return sum
     }
+    // #region 贸理通4.0版本优化 发票管理
+    // nvoiceNumTotal() {
+    //   let sum = 0
+    //   this.procureList.forEach(item => {
+    //     sum += Number(item.nvoiceNum)
+    //   })
+    //   return sum
+    // },
+    // amountTotal() {
+    //   let sum = 0
+    //   this.procureList.forEach(item => {
+    //     sum += Number(item.amount)
+    //   })
+    //   return sum
+    // },
+    // taxAmountTotal() {
+    //   let sum = 0
+    //   this.procureList.forEach(item => {
+    //     sum += Number(item.taxAmount)
+    //   })
+    //   return sum
+    // },
+    // priceTaxTotalTotal() {
+    //   let sum = 0
+    //   this.procureList.forEach(item => {
+    //     sum += Number(item.priceTaxTotal)
+    //   })
+    //   return sum
+    // }
+    // #endregion
   },
   watch: {
     deatilsInfo: {
       handler(newV) {
         if (this.deatilsInfo && Object.keys(newV).length) {
-          const { purchContractCompletedVo, enterpriseCustomerInfoId, tradingPlatformId, companyName, taxIdentifyNumber, phone, address, accountBankName, accountNumber, invoiceType, openAmount, remark, files, productBroadInfo, invoiceGoodsInfos, purchaseInvoiceInfos } = JSON.parse(JSON.stringify(newV))
+          const { purchContractCompletedVo, enterpriseCustomerInfoId, tradingPlatformId, companyName, taxIdentifyNumber, phone, address, accountBankName, accountNumber, invoiceType, openAmount, remark, files, invoiceGoodsInfos, invoiceDetailList } = JSON.parse(JSON.stringify(newV))
           this.basicInformation = {
             ...purchContractCompletedVo,
             enterpriseCustomerInfoId,
@@ -482,11 +495,12 @@ export default {
             amountKind: 'amount_kind_payment',
             openAmount,
             remark,
-            productBroadInfo,
-            invoicePurchaseFile: files || []
+            // productBroadInfo,
+            invoicePurchaseFile: files || [],
+            invoiceDetailFiles: invoiceDetailList || []
           }
           this.goodsInfoList = invoiceGoodsInfos || []
-          this.procureList = purchaseInvoiceInfos || []
+          // this.procureList = purchaseInvoiceInfos || []
           this.totalOpenQuantity()
         }
       },
@@ -510,7 +524,10 @@ export default {
         phoneNumber: val.phoneNumber,
         address: val.address,
         invoiceType: '',
-        amountKind: 'amount_kind_payment'
+        amountKind: 'amount_kind_payment',
+        accountBankName: val.accountBankName || '',
+        accountNumber: val.accountNumber || '',
+        remark: val.remark || ''
       }
       this.businessNumber = businessNumber
     },
@@ -588,19 +605,21 @@ export default {
       this.openAmountTotal = amount
       this.ruleForm.openAmount = formatMoney(amount)
     },
-    addInfo() {
-      this.procureList.push({
-        nvoiceNumber: '',
-        nvoiceNum: '',
-        amount: '',
-        taxAmount: '',
-        priceTaxTotal: '',
-        sellerName: ''
-      })
-    },
-    view() {
+    // #region comment by lx 贸理通4.0版本优化发票管理
+    // addInfo() {
+    //   this.procureList.push({
+    //     nvoiceNumber: '',
+    //     nvoiceNum: '',
+    //     amount: '',
+    //     taxAmount: '',
+    //     priceTaxTotal: '',
+    //     sellerName: ''
+    //   })
+    // },
+    // view() {
 
-    },
+    // },
+    // #endregion
     getParams() {
       return new Promise((resolve, reject) => {
         // if (!this.goodsInfoList.length) {
@@ -640,8 +659,9 @@ export default {
         //     }
         //   }
         // }
-        const { enterpriseName, socialCreditCode, address, phoneNumber, invoiceType, amountKind, openAmount, remark, productBroadInfo, accountBankName, accountNumber } = this.ruleForm
+        const { enterpriseName, socialCreditCode, address, phoneNumber, invoiceType, amountKind, openAmount, remark, accountBankName, accountNumber } = this.ruleForm
         const invoicePurchaseFileList = this.$refs.invoicePurchaseFile.getFileLists
+        const invoiceDetailFileList = this.$refs.invoiceDetailFiles.getFileLists
         const { id, taskId } = this.$route.query
         this.$refs.basicInformation.getParams().then(item => {
           const params = {
@@ -658,9 +678,10 @@ export default {
             amountKind,
             openAmount,
             remark,
-            productBroadInfo,
-            purchaseInvoiceInfos: this.procureList,
+            // productBroadInfo,
+            // purchaseInvoiceInfos: this.procureList,
             purchaseInvoiceFiles: invoicePurchaseFileList.map(item => item.id),
+            invoiceDetailFiles: invoiceDetailFileList.map(item => item.id),
             invoiceGoodsInfos: this.goodsInfoList
           }
           resolve(params)