Bläddra i källkod

进口 财务

qinbai 3 år sedan
förälder
incheckning
f3725208ed

+ 3 - 0
src/views/financialManagement/paymentRequest/configuration/detailsPage.json

@@ -59,6 +59,7 @@
     {
       "label": "数量",
       "prop": "quantity",
+      "hide": true,
       "index": 4,
       "width":120,
       "overHidden": true
@@ -73,6 +74,7 @@
     {
       "label": "金额",
       "prop": "amount",
+      "cell": true,
       "index": 6,
       "width":120,
       "overHidden": true
@@ -87,6 +89,7 @@
     {
       "label": "汇率",
       "prop": "exchangeRate",
+      "cell": true,
       "index": 8,
       "width":120,
       "overHidden": true

+ 8 - 32
src/views/financialManagement/paymentRequest/paymentRequestDetails.vue

@@ -24,7 +24,6 @@
                      size="small"
                      :loading="buttonLoading"
                      class="el-button--small-yh"
-                     :disabled="checkDisabled"
                      @click.stop="confirmEdit">确认修改
           </el-button>
         </div>
@@ -96,17 +95,6 @@
             </breakdown-select>
             <span v-else>{{ row.itemName }}</span>
           </template>
-          <template slot="quantity" slot-scope="{ row }">
-            <el-input
-              v-if="row.$cellEdit"
-              v-model="row.quantity"
-              placeholder="请输入"
-              size="small"
-              oninput='this.value=this.value.replace(/[^(\d.)]/g,"").replace(/^(\d+)\.(\d\d).*$/, "$1.$2")'
-              @input="quantityChange(row)"
-            ></el-input>
-            <span v-else>{{ row.quantity }}</span>
-          </template>
           <template slot="price" slot-scope="{ row }">
             <el-input
               v-if="row.$cellEdit"
@@ -114,7 +102,6 @@
               placeholder="请输入"
               size="small"
               oninput='this.value=this.value.replace(/[^(\d.)]/g,"").replace(/^(\d+)\.(\d\d).*$/, "$1.$2")'
-              @input="priceChange(row)"
             ></el-input>
             <span v-else>{{ row.price }}</span>
           </template>
@@ -330,22 +317,6 @@
       }
     },
     methods: {
-      priceChange(row){
-        if (!row.price) {
-          row.price = "";
-          row.amount = 0
-        } else {
-          row.amount = _.multiply(row.quantity, row.price).toFixed(2);
-        }
-      },
-      quantityChange(row){
-        if (!row.quantity) {
-          row.quantity = "";
-          row.amount = 0
-        } else {
-          row.amount = _.multiply(row.quantity, row.price).toFixed(2);
-        }
-      },
       //选择客户
       returnBack(corpValue){
         getlistBankBy(corpValue).then(res =>{
@@ -367,10 +338,12 @@
       },
       //选择币别 带汇率
       currencyChange(row){
-        if(row.currency === "USD"){
-            row.exchangeRate = 6.384300
+        if(row.currency === "CNY"){
+            row.exchangeRate = 1
+        }else if(row.currency === "USD"){
+          row.exchangeRate = 6.384300
         }else{
-          row.exchangeRate = 1
+          row.exchangeRate = 7.174900
         }
       },
       rowUpdate(row, index, done, loading) {
@@ -490,6 +463,9 @@
         this.checkDisabled = data.checkStatus === "未请核"?false:true;
         this.$set(this.option,"disabled",this.checkDisabled)
 
+        // const column = this.findObject(this.option.column, "remark");
+        // column.disabled = false;
+
         if(data.itemsList){
           this.dataList = data.itemsList
           this.oldDataList = this.deepClone(data.itemsList)

+ 6 - 2
src/views/financialManagement/paymentSettle/configuration/detailsPage.json

@@ -17,7 +17,7 @@
   "border": true,
   "index": true,
   "selection": false,
-  "menuWidth": 180,
+  "menuWidth": 220,
   "dialogClickModal": false,
   "showSummary": true,
   "summaryText": "合计",
@@ -25,6 +25,10 @@
     {
       "name": "amount",
       "type": "sum"
+    },
+    {
+      "name": "thisAmount",
+      "type": "sum"
     }
   ],
   "column": [
@@ -46,7 +50,7 @@
       "label": "费用名称",
       "prop": "itemName",
       "overHidden": true,
-      "width": 150,
+      "width": 200,
       "index": 4
     },
     {

+ 5 - 5
src/views/financialManagement/paymentSettle/paymentSettleDetailsPage.vue

@@ -25,6 +25,7 @@
         <avue-form class="trading-form" ref="form" v-model="form" :option="option">
           <template slot="corpId">
             <select-component
+              :disabled="financeDisabled"
               v-model="form.corpId"
               @returnBack="returnBack"
               :configuration="configuration"
@@ -33,6 +34,7 @@
           <template slot="accountNo">
             <el-select v-model="form.accountNo"
                        placeholder="请选择"
+                       :disabled="financeDisabled"
                        @change="accountNoChange"
                        clearable
                        filterable>
@@ -328,7 +330,7 @@
 
     },
     mounted() {
-      option.height = window.innerHeight - 640 ;
+
     },
     methods: {
       //选择客户
@@ -384,7 +386,7 @@
 
         this.billDetailDialog = false;
       },
-      rowUpdate(row, index, done, loading) {
+      rowUpdate(row, index, done) {
         done(row);
       },
       rowCell(row,index){
@@ -448,7 +450,6 @@
       saveSettlement(){
         this.$refs["form"].validate((valid,done) => {
           if(valid){
-            console.log(132)
             this.form.billNo = this.dataList.map(item =>{return item.billNo}).join(",")
 
             const params = {
@@ -468,8 +469,7 @@
         this.form = data;
         this.oldForm = Object.assign({},data);
 
-        this.financeDisabled = data.financeStatus === "待结算"?false:true;
-        console.log(this.financeDisabled )
+        this.financeDisabled = data.financeStatus == ("待结算" || "结算完成")?true:false;
         this.$set(this.option,"disabled",this.financeDisabled)
 
         if(data.itemsList){

+ 2 - 2
src/views/importTrade/invoice/config/mainList.json

@@ -68,7 +68,7 @@
       "width":150
     },
     {
-      "label": "数",
+      "label": "数",
       "prop": "quantity",
       "overHidden": true,
       "index": 6,
@@ -82,7 +82,7 @@
       "width":100
     },
     {
-      "label": "发票净重",
+      "label": "发票数量",
       "prop": "invoiceWeight",
       "overHidden": true,
       "index": 8,

+ 4 - 2
src/views/importTrade/invoice/detailsPageEdit.vue

@@ -531,10 +531,12 @@ export default {
   methods: {
     //币别选择
     currencyChange(row){
-      if(row.currency === "USD"){
+      if(row.currency == "CNY"){
+        this.$set(row,"exRate",1)
+      }else if(row.currency == "USD"){
         this.$set(row,"exRate",6.3686)
       }else{
-        this.$set(row,"exRate",1)
+        this.$set(row,"exRate",7.1749)
       }
     },
     //货品物种

+ 2 - 2
src/views/importTrade/receipt/config/mainList.json

@@ -68,7 +68,7 @@
       "width":150
     },
     {
-      "label": "数",
+      "label": "数",
       "prop": "quantity",
       "overHidden": true,
       "index": 6,
@@ -82,7 +82,7 @@
       "width":100
     },
     {
-      "label": "发票重",
+      "label": "发票重",
       "prop": "invoiceWeight",
       "overHidden": true,
       "index": 8,

+ 4 - 2
src/views/importTrade/receipt/detailsPageEdit.vue

@@ -544,10 +544,12 @@ export default {
   methods: {
     //币别选择
     currencyChange(row){
-      if(row.currency === "USD"){
+      if(row.currency == "CNY"){
+        this.$set(row,"exRate",1)
+      }else if(row.currency == "USD"){
         this.$set(row,"exRate",6.3686)
       }else{
-        this.$set(row,"exRate",1)
+        this.$set(row,"exRate",7.1749)
       }
     },
     //货物名称 回显

+ 4 - 4
src/views/purchase/contract/config/mainList.json

@@ -80,7 +80,7 @@
       "width":150
     },
     {
-      "label": "数",
+      "label": "数",
       "prop": "orderQuantity",
       "overHidden": true,
       "index": 6,
@@ -94,21 +94,21 @@
       "width":100
     },
     {
-      "label": "发票重",
+      "label": "发票重",
       "prop": "invoiceWeight",
       "overHidden": true,
       "index": 8,
       "width":100
     },
     {
-      "label": "已收数",
+      "label": "已收数",
       "prop": "actualQuantity",
       "overHidden": true,
       "index": 9,
       "width":100
     },
     {
-      "label": "合同金额",
+      "label": "发票金额",
       "prop": "orderAmount",
       "overHidden": true,
       "index": 10,

+ 43 - 32
src/views/purchase/contract/detailsPage.vue

@@ -17,7 +17,7 @@
                    size="small"
                    class="el-button--small-yh "
                    :loading="buttonLoading"
-                   @click.stop="applyPayment()">申请货款
+                   @click.stop="applyPayment('申请')">申请货款
         </el-button>
 <!--        <el-button type="warning"
                    size="small"
@@ -31,6 +31,12 @@
                    @click="openApplicationDialog"
         >查看申请记录
         </el-button>
+        <el-button type="warning"
+                   size="small"
+                   class="el-button--small-yh "
+                   :loading="buttonLoading"
+                   @click.stop="applyPayment('退款')">退款
+        </el-button>
         <el-button type="success"
                    size="small"
                    :loading="buttonLoading"
@@ -66,25 +72,28 @@
                     :value="data.value"
                   ></el-option>
                 </el-select>
-                <el-input type="age" v-else-if="item.prop === 'orderAmount'" v-model="form[item.prop]" :disabled="takeDisabled" size="small" autocomplete="off" @input="currencyChange" placeholder="请输入"></el-input>
-                <selectComponent v-else-if="item.prop === 'corpId'" v-model="form[item.prop]" :disabled="takeDisabled" :configuration="configuration"/>
-                <selectComponent v-else-if="item.prop === 'purchaserId'" v-model="form[item.prop]" :disabled="takeDisabled" :configuration="pConfiguration"/>
-                <selectComponent v-else-if="item.prop === 'belongToCorpId'" v-model="form[item.prop]" :disabled="takeDisabled" :configuration="bConfiguration"/>
-                <el-select v-else-if="item.prop === 'orderType'"  style="width: 100%"  v-model="form[item.prop]" :disabled="takeDisabled" size="small" placeholder="请选择" clearable filterable>
+                <el-input type="age" v-else-if="item.prop === 'orderAmount'" v-model="form[item.prop]" :disabled="item.disabled?true:false || takeDisabled" size="small" autocomplete="off" @input="currencyChange" placeholder="请输入"></el-input>
+                <selectComponent v-else-if="item.prop === 'corpId'" v-model="form[item.prop]" :disabled="item.disabled?true:false || takeDisabled" :configuration="configuration"/>
+                <selectComponent v-else-if="item.prop === 'purchaserId'" v-model="form[item.prop]" :disabled="item.disabled?true:false || takeDisabled" :configuration="pConfiguration"/>
+                <selectComponent v-else-if="item.prop === 'belongToCorpId'" v-model="form[item.prop]" :disabled="item.disabled?true:false || takeDisabled" :configuration="bConfiguration"/>
+                <el-select v-else-if="item.prop === 'orderType'"  style="width: 100%"  v-model="form[item.prop]" :disabled="item.disabled?true:false || takeDisabled" size="small" placeholder="请选择" clearable filterable>
                   <el-option v-for="(item,index) in contractTypeDic" :key="index" :label="item.dictValue" :value="item.dictValue"></el-option>
                 </el-select>
-                <el-select v-else-if="item.prop === 'currency'" style="width: 100%"    v-model="form[item.prop]" size="small" placeholder="请选择" @change="currencyChange" clearable filterable>
+                <el-select v-else-if="item.prop === 'currency'" style="width: 100%"  :disabled="item.disabled?true:false || takeDisabled"  v-model="form[item.prop]" size="small" placeholder="请选择" @change="currencyChange" clearable filterable>
                   <el-option v-for="(item,index) in currencyDic" :key="index" :label="item.dictValue"  :value="item.dictValue"></el-option>
                 </el-select>
-                <el-input type="age" v-else-if="item.type === 'unit'" v-model="form[item.prop]"  :disabled="item.disabled?true:false" size="small" autocomplete="off"  @change="currencyChange" placeholder="请输入">
+                <el-input type="age" v-else-if="item.type === 'unit'" v-model="form[item.prop]"  :disabled="item.disabled?true:false || takeDisabled" size="small" autocomplete="off"  @change="currencyChange" placeholder="请输入">
                   <template   slot="append">%</template>
                 </el-input>
                 <el-select v-else-if="item.prop === 'paymentType'"  style="width: 100%"  v-model="form[item.prop]" size="small" placeholder="请选择" clearable filterable>
                   <el-option v-for="(item,index) in paymentTypeDic" :key="index" :label="item.dictValue" :value="item.dictValue"></el-option>
                 </el-select>
-                <!--<div v-else-if="item.prop === 'advancePayment'">
-                  <el-input type="textarea" v-else-if="(item.prop === 'advancePayment')" v-model="form[item.prop]"   size="small" autocomplete="off" placeholder="请输入"></el-input>
-                </div>-->
+                <div v-else-if="item.prop === 'advancePayment'">
+                  <el-input type="age" v-model="form[item.prop]" style="width: 70%" :disabled="item.disabled?true:false || takeDisabled"  size="small" autocomplete="off" placeholder="请输入"></el-input>
+                  <el-select v-model="form['prepayCurrency']" size="small" style="width: 30%"  :disabled="item.disabled?true:false || takeDisabled" value="USD"   placeholder="请选择" @change="advCurrencyChange" clearable filterable>
+                    <el-option v-for="(item,index) in currencyDic" :key="index" :label="item.dictValue"  :value="item.dictValue"></el-option>
+                  </el-select>
+                </div>
                 <el-input type="textarea" v-else-if="(item.prop === 'orderRemark')" v-model="form[item.prop]"   size="small" autocomplete="off" placeholder="请输入"></el-input>
                 <el-input type="age" v-else v-model="form[item.prop]" :disabled="item.disabled?true:false || takeDisabled" size="small" autocomplete="off" placeholder="请输入"></el-input>
               </el-form-item>
@@ -340,7 +349,7 @@ export default {
       commodityData: false,
       takeDisabled:false, //收货状态
       tableData: [],
-      billType:"采购申请货款",
+      billType:"",
       billData:{},
       contractTypeDic:[],
       currencyDic:[],
@@ -467,7 +476,6 @@ export default {
           },{
             label: '合同号',
             prop: 'orderNo',
-            disabled:this.takeDisabled,
             rules: [
               {
                 required: true,
@@ -478,7 +486,6 @@ export default {
           }, {
             label: '采购商',
             prop: 'purchaserId',
-            disabled:this.takeDisabled,
             span: 16,
             dicData: [],
             rules: [
@@ -492,7 +499,6 @@ export default {
           {
             label: '合同日期',
             prop: 'businesDate',
-            disabled: this.takeDisabled,
             type:'date',
             rules: [
               {
@@ -505,7 +511,6 @@ export default {
           {
             label: '所属公司',
             prop: 'belongToCorpId',
-            disabled:this.takeDisabled,
             span: 16,
             dicData: [],
             rules: [
@@ -519,7 +524,6 @@ export default {
          {
             label: '合同金额',
             prop: 'orderAmount',
-           disabled:this.takeDisabled,
             rules: [
               {
                 pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/,
@@ -530,7 +534,6 @@ export default {
           }, {
             label: '合同重量',
             prop: 'contractWeight',
-            disabled:this.takeDisabled,
             rules: [
               {
                 required: false,
@@ -663,7 +666,8 @@ export default {
                 trigger: 'blur'
               }
             ]
-          },{
+          },
+          {
             label: '已付金额',
             prop: 'settlmentAmount',
             disabled: true,
@@ -714,7 +718,7 @@ export default {
   async created() {
     this.customerContact = await this.getColumnData(this.getColumnName(37), customerContact);
     //币别
-    this.getWorkDicts("entrance_currency").then(res =>{
+    this.getWorkDicts("currency").then(res =>{
       this.currencyDic = res.data.data
     })
     this.getWorkDicts("contractType").then(res =>{
@@ -736,6 +740,11 @@ export default {
           this.oldContactsData = this.deepClone(res.data.data.itemsVOList)
           //明细列表内是否有 已经收货的 如果有  则禁用一些输入框
           this.takeDisabled = this.contactsData.map(item =>{if(item.actualQuantity != 0) return true}).some(item => {return item == true})
+          this.basicData.column.forEach(item =>{
+            if(item.prop == "businesDate" || item.prop == "requiredDeliveryDate"  || item.prop == "requiredArrivalDate" || item.prop == ""){
+              item.disabled = this.takeDisabled
+            }
+          })
         }
         if(res.data.data.orderFeesList){
           this.orderFeesList = res.data.data.orderFeesList
@@ -772,16 +781,17 @@ export default {
     },
     //带出人民币
     currencyChange(){
-      if(this.form.currency === "CNY" && this.form.exchangeRate == 6.368600){  //如果为人民币
-        this.form.exchangeRate = 1
-        if(this.form.orderAmount){   //合同金额不为0  赋值人民币金额
+      if(this.form.exchangeRate == 1 || this.form.exchangeRate == 6.368600 || this.form.exchangeRate == 7.174900){
+        if(this.form.currency === "CNY"){  //如果为人民币
+          this.$set(this.form,"exchangeRate",1)
           this.$set(this.form,"rmbAmount",this.form.orderAmount)
+        }else if(this.form.currency === "USD"){
+          this.$set(this.form,"exchangeRate",6.3686)
+          this.$set(this.form,"rmbAmount",_.multiply(this.form.orderAmount, 6.3686).toFixed(2))
+        }else{
+          this.$set(this.form,"exchangeRate",7.1749)
+          this.$set(this.form,"rmbAmount",_.multiply(this.form.orderAmount, 7.1749).toFixed(2))
         }
-      }else if(this.form.exchangeRate === 1){
-          this.form.exchangeRate = 6.3686
-          if(this.form.orderAmount){
-            this.$set(this.form,"rmbAmount",_.multiply(this.form.orderAmount, 6.3686).toFixed(2))
-          }
       }else{
         if(this.form.orderAmount && this.form.exchangeRate){
           this.$set(this.form,"rmbAmount",_.multiply(this.form.orderAmount, this.form.exchangeRate).toFixed(2))
@@ -955,7 +965,8 @@ export default {
         })
       }
     },
-    beforeBillData(type){
+    beforeBillData(bool,type){
+      this.billType = type === "申请"?"采购申请货款":"采购退款结算"
       //采购明细提单号 list
       this.billData = {
         srcOrderno:this.form.orderNo,
@@ -969,12 +980,12 @@ export default {
         exchangeRate:this.form.exchangeRate,
         srcParentId:this.form.id,
       }
-      if(type){ //申请货款
+      if(bool){ //申请货款
         this.billData.srcId = -1
       }
     },
     // 付款
-    applyPayment(){
+    applyPayment(type){
       if(contrastObj(this.form,this.oldForm) || contrastList(this.contactsData,this.oldContactsData)
         || contrastList(this.orderFeesList,this.oldFeesList) || contrastList(this.orderFilesList,this.oldFilesList)
       ){
@@ -986,7 +997,7 @@ export default {
           this.editCustomer();
         })
       }else{
-        this.beforeBillData(true);
+        this.beforeBillData(true,type);
         this.applyPaymentDialog = true;
       }
     },

+ 7 - 0
src/views/purchase/stockBill/config/mainList.json

@@ -82,6 +82,13 @@
       "width": 150
     },
     {
+      "label": "可用库存",
+      "prop": "surplusRouteQuantity",
+      "overHidden": true,
+      "index": 6,
+      "width": 120
+    },
+    {
       "label": "入库件数",
       "prop": "inQuantity",
       "overHidden": true,

+ 4 - 4
src/views/salesManagement/salesContract/config/mainList.json

@@ -73,7 +73,7 @@
       "width":150
     },
     {
-      "label": "数",
+      "label": "数",
       "prop": "orderQuantity",
       "overHidden": true,
       "index": 5,
@@ -87,21 +87,21 @@
       "width":100
     },
     {
-      "label": "发票重",
+      "label": "发票重",
       "prop": "invoiceWeight",
       "overHidden": true,
       "index": 7,
       "width":100
     },
     {
-      "label": "已发数",
+      "label": "已发数",
       "prop": "invoiceWeight",
       "overHidden": true,
       "index": 8,
       "width":100
     },
     {
-      "label": "合同金额",
+      "label": "发票金额",
       "prop": "orderAmount",
       "overHidden": true,
       "search": true,

+ 23 - 14
src/views/salesManagement/salesContract/detailsPage.vue

@@ -19,7 +19,14 @@
                    class="el-button--small-yh"
                    :disabled="!form.id"
                    :loading="buttonLoading"
-                   @click.stop="applySettlement">生成账单
+                   @click.stop="applySettlement('账单')">生成账单
+        </el-button>
+        <el-button type="warning"
+                   size="small"
+                   class="el-button--small-yh"
+                   :disabled="!form.id"
+                   :loading="buttonLoading"
+                   @click.stop="applySettlement('退款')">退款
         </el-button>
         <el-button type="success"
                    size="small"
@@ -324,7 +331,7 @@ export default {
       currencyDic:[],
       contractDic:[],
       selectKind:-1,
-      billType:"销售",
+      billType:"",
       billData:{},
       configuration:{
         multipleChoices:false,
@@ -667,7 +674,7 @@ export default {
   async created() {
     this.importInventory = await this.getColumnData(this.getColumnName(39), importInventory);
     //币别
-    this.getWorkDicts("entrance_currency").then(res =>{
+    this.getWorkDicts("currency").then(res =>{
       this.currencyDic = res.data.data
     })
     if (this.detailData.id) {
@@ -695,7 +702,7 @@ export default {
       })
     }else{
       this.$set(this.form,"currency","USD")
-      this.$set(this.form,"exchangeRate",6.3843)
+      this.$set(this.form,"exchangeRate",6.3686)
     }
   },
   components: {
@@ -730,13 +737,14 @@ export default {
     },
     //汇率
     currencyChange(value){
-      if(value === "CNY" &&  this.form.exchangeRate ==6.384300){
-        this.$set(this.form,"exchangeRate",1)
-        this.form.exchangeRate = 1
-        // this.form.rmbAmount = this.form.orderAmount
-      }else if( this.form.exchangeRate ===  1){
-        this.$set(this.form,"exchangeRate",6.384300)
-        // this.form.rmbAmount =  _.multiply(this.form.orderAmount, 6.3843)
+      if(this.form.exchangeRate == 1 || this.form.exchangeRate == 6.368600 || this.form.exchangeRate == 7.174900){
+        if(value == "CNY"){
+          this.$set(this.form,"exchangeRate",1)
+        }else if(value == "USD"){
+          this.$set(this.form,"exchangeRate",6.368600)
+        }else if(value == "EUR"){
+          this.$set(this.form,"exchangeRate",7.174900)
+        }
       }
     },
     //单价
@@ -757,7 +765,8 @@ export default {
         row.amount =_.multiply(row.billWeight,row.price).toFixed(2);
       }
     },
-    beforeBillData(type){
+    beforeBillData(bool,type){
+      this.billType = type ==="账单"? "销售收款结算":"销售申请退款"
       this.billData = {
         srcOrderno:this.form.orderNo,
         itemType:"销售",
@@ -774,7 +783,7 @@ export default {
       }
     },
     //申请结算
-    applySettlement(){
+    applySettlement(type){
       if(contrastObj(this.form,this.oldForm) || contrastList(this.importInventoryData,this.oldInventoryData)
         || contrastList(this.orderFeesList,this.oldFeesList) || contrastList(this.orderFilesList,this.oldFilesList)
       ){
@@ -786,7 +795,7 @@ export default {
           this.editCustomer();
         })
       }else{
-        this.beforeBillData(true)
+        this.beforeBillData(true,type)
         this.applySettlementDialog = true;
         // this.$confirm("是否确认申请结算!", {
         //   confirmButtonText: "确定",