|  | @@ -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;
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      },
 |