|
@@ -1,173 +1,342 @@
|
|
|
<template>
|
|
|
- <div class="container">
|
|
|
- <el-row>
|
|
|
- <el-col :span="12">
|
|
|
- <h2 class="bg-left title">创建销售合同</h2>
|
|
|
- </el-col>
|
|
|
- <el-col :span="12" class="bg-right">
|
|
|
- <el-button class="bg-bottom" type="primary" size="small" @click="returnsales()"><img width="6"
|
|
|
- height="10" style="vertion-align: bottom; margin-right: 3px"
|
|
|
- src="../../../public/img/lujing.png" alt="" />返回</el-button>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
-
|
|
|
- <div class="wenzi">
|
|
|
- <h3>基本信息</h3>
|
|
|
- <p>
|
|
|
- 注:基本信息和货物信息均为必填项,“*”
|
|
|
- 标记的条目提交后不可修改。
|
|
|
- </p>
|
|
|
- </div>
|
|
|
- <div class="center">
|
|
|
- <ws-form ref="deptBudgetList" :model="deptBudgetList">
|
|
|
- <!--基本信息-->
|
|
|
- <ws-info-table>
|
|
|
- <!--合同类型-->
|
|
|
- <ws-form-item label="合同类型" span="1" class="readonly">
|
|
|
- <el-radio v-model="deptBudgetList.agreementType" label="1">销售合同</el-radio>
|
|
|
- <el-radio v-model="deptBudgetList.agreementType" label="2">补充协议</el-radio>
|
|
|
- </ws-form-item>
|
|
|
- <!--合同编号-->
|
|
|
- <ws-form-item label="合同编号" span="1" prop="contractNo" class="readonly"
|
|
|
- v-if="deptBudgetList.agreementType == '1'">
|
|
|
- <ws-input v-model="deptBudgetList.contractNo" placeholder="请输入合同编号" maxlength="50" size="small"
|
|
|
- :rules="ruleDeptBudget" />
|
|
|
- </ws-form-item>
|
|
|
- <!--关联合同-->
|
|
|
- <ws-form-item prop="contractNo" label="关联合同" span="1" v-if="deptBudgetList.agreementType == '2'">
|
|
|
- <ws-select v-model="deptBudgetList.contractNo" placeholder="请选择编号" @change="selectRelation">
|
|
|
- <ws-option v-for="item in contractNoList" :key="item.constKey" :label="item.contractNo"
|
|
|
- :value="item.contractNo"></ws-option>
|
|
|
- </ws-select>
|
|
|
- </ws-form-item>
|
|
|
- <!--补充协议编号-->
|
|
|
- <ws-form-item label="补充协议编号" span="1" prop="agreementNo" class="readonly"
|
|
|
- v-if="deptBudgetList.agreementType == '2'">
|
|
|
- <ws-input v-model="deptBudgetList.agreementNo" placeholder="请输入补充协议编号" maxlength="50"
|
|
|
- size="small" :rules="ruleDeptBudget" />
|
|
|
- </ws-form-item>
|
|
|
- <!--运输方式-->
|
|
|
- <ws-form-item label="运输方式" span="1" prop="shippingType">
|
|
|
- <ws-input v-model="deptBudgetList.shippingType" placeholder="请输入运输方式" maxlength="20"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--买方-->
|
|
|
- <ws-form-item label="买方" span="1" prop="buyer" class="readonly">
|
|
|
- <ws-input v-model="deptBudgetList.buyer" placeholder="请输入买方名称" maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--结算方式-->
|
|
|
- <ws-form-item label="结算方式" span="1" prop="settlementMethod">
|
|
|
- <ws-input v-model="deptBudgetList.settlementMethod" placeholder="请输入结算方式" maxlength="120"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--卖方-->
|
|
|
- <ws-form-item label="卖方" span="1" prop="seller" class="readonly">
|
|
|
- <ws-input v-model="deptBudgetList.seller" placeholder="请输入卖方名称" maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <ws-form-item label="交货方式" span="1" prop="seller" class="readonly">
|
|
|
- <el-radio v-model="deptBudgetList.deliverType" label="1">我方送货</el-radio>
|
|
|
- <el-radio v-model="deptBudgetList.deliverType" label="2">对方自提</el-radio>
|
|
|
- </ws-form-item>
|
|
|
- <!--买方电话-->
|
|
|
- <ws-form-item label="买方电话" span="1" prop="contractNo">
|
|
|
- <ws-input v-model.number="deptBudgetList.buyerPhone" placeholder="请输入买方电话" maxlength="100"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--包装方式-->
|
|
|
- <ws-form-item label="包装方式" span="1" prop="packingMethod">
|
|
|
- <ws-select v-model="deptBudgetList.packingMethod" placeholder="" class="typeselect"
|
|
|
- @change="selectpackingMethod">
|
|
|
- <ws-option v-for="item in packtypeList" :key="item.constKey" :label="item.constValue"
|
|
|
- :value="item.constValue" />
|
|
|
- </ws-select>
|
|
|
- </ws-form-item>
|
|
|
- <!--卖方电话-->
|
|
|
- <ws-form-item label="卖方电话" span="1" prop="sellerPhone">
|
|
|
- <ws-input v-model="deptBudgetList.sellerPhone" placeholder="请输入卖方电话" maxlength="100"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--验收方式-->
|
|
|
- <ws-form-item label="验收方式" span="1" prop="acceptanceMethod">
|
|
|
- <el-select v-model="deptBudgetList.acceptanceMethod" placeholder="请选择验收方式" style="width: 100%"
|
|
|
- filterable @change="selectunitList">
|
|
|
- <el-option v-for="(item, index) in unitList" :key="item.constValue" :label="item.constValue"
|
|
|
- :value="item.constValue">
|
|
|
- <span class="unit-left" style="float: left">
|
|
|
- <span v-if="item.flag == 'delete'">
|
|
|
- {{ item.constValue }}</span>
|
|
|
- <!-- 新增文本框 -->
|
|
|
- <div style="width: 160px" v-if="item.flag !== 'delete'" @click.stop>
|
|
|
- <ws-input v-model="item.constValue" clearable maxlength="10"
|
|
|
- style="width: 100%"></ws-input>
|
|
|
- </div>
|
|
|
- </span>
|
|
|
- <span style="float: right; color: #8492a6; font-size: 13px">
|
|
|
- <!-- 对号 -->
|
|
|
- <i class="el-icon-check" style="line-height: 29px; margin-left: 10px"
|
|
|
- v-if="item.flag !== 'delete'" @click.stop="saveClick(item, index)"></i>
|
|
|
- <!-- 编辑 -->
|
|
|
- <i class="el-icon-edit" style="line-height: 29px; margin-left: 10px"
|
|
|
- v-if="item.flag == 'delete'" @click.stop="editClick(item, index)"></i>
|
|
|
- <!-- 删除 -->
|
|
|
- <i class="el-icon-delete" style="line-height: 29px"
|
|
|
- @click.stop="deleteClick(item, index)"></i>
|
|
|
- </span>
|
|
|
- </el-option>
|
|
|
- <!-- 新增按钮 -->
|
|
|
- <el-option value="" label="">
|
|
|
- <div style="
|
|
|
+ <div class="container">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="12">
|
|
|
+ <h2 class="bg-left title">创建销售合同</h2>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12" class="bg-right">
|
|
|
+ <el-button
|
|
|
+ class="bg-bottom"
|
|
|
+ type="primary"
|
|
|
+ size="small"
|
|
|
+ @click="returnsales()"
|
|
|
+ ><img
|
|
|
+ width="6"
|
|
|
+ height="10"
|
|
|
+ style="vertion-align: bottom; margin-right: 3px"
|
|
|
+ src="../../../public/img/lujing.png"
|
|
|
+ alt=""
|
|
|
+ />返回</el-button
|
|
|
+ >
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+
|
|
|
+ <div class="wenzi">
|
|
|
+ <h3>基本信息</h3>
|
|
|
+ <p>
|
|
|
+ 注:基本信息和货物信息均为必填项,“*”
|
|
|
+ 标记的条目提交后不可修改。
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <div class="center">
|
|
|
+ <ws-form ref="deptBudgetList" :model="deptBudgetList">
|
|
|
+ <!--基本信息-->
|
|
|
+ <ws-info-table>
|
|
|
+ <!--合同类型-->
|
|
|
+ <ws-form-item label="合同类型" span="1" class="readonly">
|
|
|
+ <el-radio v-model="deptBudgetList.agreementType" label="销售合同"
|
|
|
+ >销售合同</el-radio
|
|
|
+ >
|
|
|
+ <el-radio v-model="deptBudgetList.agreementType" label="补充协议"
|
|
|
+ >补充协议</el-radio
|
|
|
+ >
|
|
|
+ </ws-form-item>
|
|
|
+ <!--合同编号-->
|
|
|
+ <ws-form-item
|
|
|
+ label="合同编号"
|
|
|
+ span="1"
|
|
|
+ prop="contractNo"
|
|
|
+ class="readonly"
|
|
|
+ v-if="deptBudgetList.agreementType == '销售合同'"
|
|
|
+ >
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractNo"
|
|
|
+ placeholder="请输入合同编号"
|
|
|
+ maxlength="50"
|
|
|
+ size="small"
|
|
|
+ :rules="ruleDeptBudget"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--关联合同-->
|
|
|
+ <ws-form-item
|
|
|
+ prop="contractNo"
|
|
|
+ label="关联合同"
|
|
|
+ span="1"
|
|
|
+ v-if="deptBudgetList.agreementType == '补充协议'"
|
|
|
+ >
|
|
|
+ <ws-select
|
|
|
+ v-model="deptBudgetList.contractNo"
|
|
|
+ placeholder="请选择编号"
|
|
|
+ @change="selectRelation"
|
|
|
+ >
|
|
|
+ <ws-option
|
|
|
+ v-for="item in contractNoList"
|
|
|
+ :key="item.constKey"
|
|
|
+ :label="item.contractNo"
|
|
|
+ :value="item.contractNo"
|
|
|
+ ></ws-option>
|
|
|
+ </ws-select>
|
|
|
+ </ws-form-item>
|
|
|
+ <!--补充协议编号-->
|
|
|
+ <ws-form-item
|
|
|
+ label="补充协议编号"
|
|
|
+ span="1"
|
|
|
+ prop="agreementNo"
|
|
|
+ class="readonly"
|
|
|
+ v-if="deptBudgetList.agreementType == '补充协议'"
|
|
|
+ >
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.agreementNo"
|
|
|
+ placeholder="请输入补充协议编号"
|
|
|
+ maxlength="50"
|
|
|
+ size="small"
|
|
|
+ :rules="ruleDeptBudget"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--运输方式-->
|
|
|
+ <ws-form-item label="运输方式" span="1" prop="shippingType">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.shippingType"
|
|
|
+ placeholder="请输入运输方式"
|
|
|
+ maxlength="20"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--买方-->
|
|
|
+ <ws-form-item label="买方" span="1" prop="buyer" class="readonly">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.buyer"
|
|
|
+ placeholder="请输入买方名称"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--结算方式-->
|
|
|
+ <ws-form-item label="结算方式" span="1" prop="settlementMethod">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.settlementMethod"
|
|
|
+ placeholder="请输入结算方式"
|
|
|
+ maxlength="120"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--卖方-->
|
|
|
+ <ws-form-item label="卖方" span="1" prop="seller" class="readonly">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.seller"
|
|
|
+ placeholder="请输入卖方名称"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <ws-form-item
|
|
|
+ label="交货方式"
|
|
|
+ span="1"
|
|
|
+ prop="seller"
|
|
|
+ class="readonly"
|
|
|
+ >
|
|
|
+ <el-radio v-model="deptBudgetList.deliverType" label="1"
|
|
|
+ >我方送货</el-radio
|
|
|
+ >
|
|
|
+ <el-radio v-model="deptBudgetList.deliverType" label="2"
|
|
|
+ >对方自提</el-radio
|
|
|
+ >
|
|
|
+ </ws-form-item>
|
|
|
+ <!--买方电话-->
|
|
|
+ <ws-form-item label="买方电话" span="1" prop="contractNo">
|
|
|
+ <ws-input
|
|
|
+ v-model.number="deptBudgetList.buyerPhone"
|
|
|
+ placeholder="请输入买方电话"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--包装方式-->
|
|
|
+ <ws-form-item label="包装方式" span="1" prop="packingMethod">
|
|
|
+ <ws-select
|
|
|
+ v-model="deptBudgetList.packingMethod"
|
|
|
+ placeholder=""
|
|
|
+ class="typeselect"
|
|
|
+ @change="selectpackingMethod"
|
|
|
+ >
|
|
|
+ <ws-option
|
|
|
+ v-for="item in packtypeList"
|
|
|
+ :key="item.constKey"
|
|
|
+ :label="item.constValue"
|
|
|
+ :value="item.constValue"
|
|
|
+ />
|
|
|
+ </ws-select>
|
|
|
+ </ws-form-item>
|
|
|
+ <!--卖方电话-->
|
|
|
+ <ws-form-item label="卖方电话" span="1" prop="sellerPhone">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.sellerPhone"
|
|
|
+ placeholder="请输入卖方电话"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--验收方式-->
|
|
|
+ <ws-form-item label="验收方式" span="1" prop="acceptanceMethod">
|
|
|
+ <el-select
|
|
|
+ v-model="deptBudgetList.acceptanceMethod"
|
|
|
+ placeholder="请选择验收方式"
|
|
|
+ style="width: 100%"
|
|
|
+ filterable
|
|
|
+ @change="selectunitList"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="(item, index) in unitList"
|
|
|
+ :key="item.constValue"
|
|
|
+ :label="item.constValue"
|
|
|
+ :value="item.constValue"
|
|
|
+ >
|
|
|
+ <span class="unit-left" style="float: left">
|
|
|
+ <span v-if="item.flag == 'delete'">
|
|
|
+ {{ item.constValue }}</span
|
|
|
+ >
|
|
|
+ <!-- 新增文本框 -->
|
|
|
+ <div
|
|
|
+ style="width: 160px"
|
|
|
+ v-if="item.flag !== 'delete'"
|
|
|
+ @click.stop
|
|
|
+ >
|
|
|
+ <ws-input
|
|
|
+ v-model="item.constValue"
|
|
|
+ clearable
|
|
|
+ maxlength="10"
|
|
|
+ style="width: 100%"
|
|
|
+ ></ws-input>
|
|
|
+ </div>
|
|
|
+ </span>
|
|
|
+ <span style="float: right; color: #8492a6; font-size: 13px">
|
|
|
+ <!-- 对号 -->
|
|
|
+ <i
|
|
|
+ class="el-icon-check"
|
|
|
+ style="line-height: 29px; margin-left: 10px"
|
|
|
+ v-if="item.flag !== 'delete'"
|
|
|
+ @click.stop="saveClick(item, index)"
|
|
|
+ ></i>
|
|
|
+ <!-- 编辑 -->
|
|
|
+ <i
|
|
|
+ class="el-icon-edit"
|
|
|
+ style="line-height: 29px; margin-left: 10px"
|
|
|
+ v-if="item.flag == 'delete'"
|
|
|
+ @click.stop="editClick(item, index)"
|
|
|
+ ></i>
|
|
|
+ <!-- 删除 -->
|
|
|
+ <i
|
|
|
+ class="el-icon-delete"
|
|
|
+ style="line-height: 29px"
|
|
|
+ @click.stop="deleteClick(item, index)"
|
|
|
+ ></i>
|
|
|
+ </span>
|
|
|
+ </el-option>
|
|
|
+ <!-- 新增按钮 -->
|
|
|
+ <el-option value="" label="">
|
|
|
+ <div
|
|
|
+ style="
|
|
|
text-align: right;
|
|
|
border-top: 1px solid #dcdfe6;
|
|
|
padding: 5px;
|
|
|
- ">
|
|
|
- <ws-button type="primary" @click.stop="addClick">{{
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <ws-button type="primary" @click.stop="addClick">{{
|
|
|
$t('button.add')
|
|
|
}}</ws-button>
|
|
|
- </div>
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </ws-form-item>
|
|
|
- <!--重量(吨)-->
|
|
|
- <ws-form-item label="重量(吨)" span="1" prop="weight">
|
|
|
- <ws-input @input="weightchange" v-model="deptBudgetList.weight" placeholder="请输入重量(吨)"
|
|
|
- maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--交货日期(起)-->
|
|
|
- <ws-form-item label="交货日期(起)" span="1" prop="deliveryDateStart">
|
|
|
- <ws-date-picker v-model="deptBudgetList.deliveryDateStart" type="date" placeholder="请选择交货日期(起)"
|
|
|
- value-format="yyyy-MM-dd" />
|
|
|
- </ws-form-item>
|
|
|
- <!--溢短装(%)-->
|
|
|
- <ws-form-item label="溢短装(%)" span="1" prop="overShort">
|
|
|
- <ws-input v-model="deptBudgetList.overShort" placeholder="请输入溢短装比例(%)" maxlength="100"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--交货日期(止)-->
|
|
|
- <ws-form-item label="交货日期(止)" span="1" prop="deliveryDateEnd">
|
|
|
- <ws-date-picker v-model="deptBudgetList.deliveryDateEnd" type="date" placeholder="请选择交货日期(止)"
|
|
|
- value-format="yyyy-MM-dd" />
|
|
|
- </ws-form-item>
|
|
|
- <!--价格类型-->
|
|
|
- <ws-form-item label="价格类型" span="1" prop="priceType">
|
|
|
- <ws-select v-model="deptBudgetList.priceType" placeholder="请选择价格类型" @change="selectpriceType">
|
|
|
- <ws-option v-for="item in priceTypeList" :key="item" :label="item" :value="item" />
|
|
|
- </ws-select>
|
|
|
- </ws-form-item>
|
|
|
- <!--合同单价(元/吨)-->
|
|
|
- <ws-form-item class="readonly" label="合同单价(元/吨)" span="1" prop="unitContractPrice"
|
|
|
- v-if="deptBudgetList.priceType == '定价销售'">
|
|
|
- <ws-input @input="pricechange" v-model="deptBudgetList.unitContractPrice" placeholder="请输入合同单价"
|
|
|
- maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--合同总价-->
|
|
|
- <ws-form-item label="合同总价" span="1" prop="totalContractPrice"
|
|
|
- v-if="deptBudgetList.priceType == '定价销售'">
|
|
|
- <ws-input v-model="deptBudgetList.totalContractPrice" placeholder="请输入合同总价" maxlength="100"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <ws-form-item label="货源所在地区" span="1" prop="sourceGoods">
|
|
|
- <!-- <el-cascader
|
|
|
+ </div>
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </ws-form-item>
|
|
|
+ <!--重量(吨)-->
|
|
|
+ <ws-form-item label="重量(吨)" span="1" prop="weight">
|
|
|
+ <ws-input
|
|
|
+ @input="weightchange"
|
|
|
+ v-model="deptBudgetList.weight"
|
|
|
+ placeholder="请输入重量(吨)"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--交货日期(起)-->
|
|
|
+ <ws-form-item
|
|
|
+ label="交货日期(起)"
|
|
|
+ span="1"
|
|
|
+ prop="deliveryDateStart"
|
|
|
+ >
|
|
|
+ <ws-date-picker
|
|
|
+ v-model="deptBudgetList.deliveryDateStart"
|
|
|
+ type="date"
|
|
|
+ placeholder="请选择交货日期(起)"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--溢短装(%)-->
|
|
|
+ <ws-form-item label="溢短装(%)" span="1" prop="overShort">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.overShort"
|
|
|
+ placeholder="请输入溢短装比例(%)"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--交货日期(止)-->
|
|
|
+ <ws-form-item label="交货日期(止)" span="1" prop="deliveryDateEnd">
|
|
|
+ <ws-date-picker
|
|
|
+ v-model="deptBudgetList.deliveryDateEnd"
|
|
|
+ type="date"
|
|
|
+ placeholder="请选择交货日期(止)"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--价格类型-->
|
|
|
+ <ws-form-item label="价格类型" span="1" prop="priceType">
|
|
|
+ <ws-select
|
|
|
+ v-model="deptBudgetList.priceType"
|
|
|
+ placeholder="请选择价格类型"
|
|
|
+ @change="selectpriceType"
|
|
|
+ >
|
|
|
+ <ws-option
|
|
|
+ v-for="item in priceTypeList"
|
|
|
+ :key="item"
|
|
|
+ :label="item"
|
|
|
+ :value="item"
|
|
|
+ />
|
|
|
+ </ws-select>
|
|
|
+ </ws-form-item>
|
|
|
+ <!--合同单价(元/吨)-->
|
|
|
+ <ws-form-item
|
|
|
+ class="readonly"
|
|
|
+ label="合同单价(元/吨)"
|
|
|
+ span="1"
|
|
|
+ prop="unitContractPrice"
|
|
|
+ v-if="deptBudgetList.priceType == '定价销售'"
|
|
|
+ >
|
|
|
+ <ws-input
|
|
|
+ @input="pricechange"
|
|
|
+ v-model="deptBudgetList.unitContractPrice"
|
|
|
+ placeholder="请输入合同单价"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--合同总价-->
|
|
|
+ <ws-form-item
|
|
|
+ label="合同总价"
|
|
|
+ span="1"
|
|
|
+ prop="totalContractPrice"
|
|
|
+ v-if="deptBudgetList.priceType == '定价销售'"
|
|
|
+ >
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.totalContractPrice"
|
|
|
+ placeholder="请输入合同总价"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <ws-form-item label="货源所在地区" span="1" prop="sourceGoods">
|
|
|
+ <!-- <el-cascader
|
|
|
:options="options_"
|
|
|
v-model="selectedOptions"
|
|
|
clearable
|
|
@@ -176,16 +345,20 @@
|
|
|
style="width: 200%"
|
|
|
@change="handleChange"
|
|
|
/> -->
|
|
|
- <el-button @click="mapInputClick('source')" class='address-btn'>
|
|
|
- {{newSelectedOptions}}
|
|
|
- </el-button>
|
|
|
- </ws-form-item>
|
|
|
- <ws-form-item label="货源详细地址" span="1" prop="sourceGoods">
|
|
|
- <ws-input v-model="deptBudgetList.sourceGoods" placeholder="请输入货源详细地址" maxlength="20"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <ws-form-item label="交货所在地区" span="1" prop="sourceGoods">
|
|
|
- <!-- <el-cascader
|
|
|
+ <el-button @click="mapInputClick('source')" class="address-btn">
|
|
|
+ {{ newSelectedOptions }}
|
|
|
+ </el-button>
|
|
|
+ </ws-form-item>
|
|
|
+ <ws-form-item label="货源详细地址" span="1" prop="sourceGoods">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.sourceGoods"
|
|
|
+ placeholder="请输入货源详细地址"
|
|
|
+ maxlength="20"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <ws-form-item label="交货所在地区" span="1" prop="sourceGoods">
|
|
|
+ <!-- <el-cascader
|
|
|
:options="options_"
|
|
|
v-model="selectedOptions1"
|
|
|
clearable
|
|
@@ -194,1508 +367,1652 @@
|
|
|
style="width: 200%"
|
|
|
@change="handleChange1"
|
|
|
/> -->
|
|
|
- <el-button @click="mapInputClick('deliveryProv')" class='address-btn'>
|
|
|
- {{newSelectedOptions1}}
|
|
|
- </el-button>
|
|
|
- </ws-form-item>
|
|
|
- <ws-form-item label="交货详细地址" span="1" prop="placeDelivery">
|
|
|
- <ws-input v-model="deptBudgetList.placeDelivery" placeholder="请输入交货详细地址" maxlength="20"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--签订日期-->
|
|
|
- <ws-form-item label="签订日期" span="1" prop="signingDate">
|
|
|
- <ws-date-picker v-model="deptBudgetList.signingDate" type="date" placeholder="请选择合同签订日期"
|
|
|
- value-format="yyyy-MM-dd" />
|
|
|
- </ws-form-item>
|
|
|
- <ws-form-item label="最终实际成交量(吨)" span="1" prop="finalTradingVolume">
|
|
|
- <ws-input v-model="deptBudgetList.finalTradingVolume" placeholder="请输入最终实际成交量" maxlength="100"
|
|
|
- size="small" />
|
|
|
- </ws-form-item>
|
|
|
- </ws-info-table>
|
|
|
- </ws-form>
|
|
|
- </div>
|
|
|
- <div class="wenzi">
|
|
|
- <h3>货物信息</h3>
|
|
|
- </div>
|
|
|
- <div class="center">
|
|
|
- <ws-form ref="deptBudgetList" :rules="ruleDeptBudget" :model="deptBudgetList">
|
|
|
- <!--货物信息-->
|
|
|
-
|
|
|
- <ws-info-table>
|
|
|
- <!--货名-->
|
|
|
- <ws-form-item label="货名" span="1" prop="goodsName" class="readonly">
|
|
|
- <ws-select v-model="deptBudgetList.contractGoodsInfo.goodsName" placeholder=""
|
|
|
- class="typeselect" @change="selectgoodsName">
|
|
|
- <ws-option v-for="item in goodnameList" :key="item.constKey" :label="item.constValue"
|
|
|
- :value="item.constValue" />
|
|
|
- </ws-select>
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--水分(%)<=-->
|
|
|
- <ws-form-item label="水分(%)<=" span="1" prop="waterContent">
|
|
|
- <ws-input v-model="deptBudgetList.contractGoodsInfo.waterContent" placeholder="请输入水分占比"
|
|
|
- maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--品级-->
|
|
|
- <ws-form-item label="品级" span="1" prop="grade" class="readonly">
|
|
|
- <ws-select v-model="deptBudgetList.contractGoodsInfo.grade" placeholder="" class="typeselect"
|
|
|
- @change="selectgrade">
|
|
|
- <ws-option v-for="item in gradeList" :key="item.constKey" :label="item.constValue"
|
|
|
- :value="item.constValue" />
|
|
|
- </ws-select>
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--杂质(%)<=-->
|
|
|
- <ws-form-item label="杂质(%)<=" span="1" prop="impurity">
|
|
|
- <ws-input v-model="deptBudgetList.contractGoodsInfo.impurity" placeholder="请输入杂质占比(%)"
|
|
|
- maxlength="40" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--容重(克/升)>=-->
|
|
|
- <ws-form-item label="容重(克/升)>=" span="1" prop="bulkDensity">
|
|
|
- <ws-input v-model="deptBudgetList.contractGoodsInfo.bulkDensity" placeholder="请输入容重"
|
|
|
- maxlength="40" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--霉变粒(%)<=-->
|
|
|
- <ws-form-item label="霉变粒(%)<=" span="1" prop="mildewGrain">
|
|
|
- <ws-input v-model="deptBudgetList.contractGoodsInfo.mildewGrain" placeholder="请输入霉变粒占比(%)"
|
|
|
- maxlength="40" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--热损伤(%)<=-->
|
|
|
- <ws-form-item label="热损伤(%)<=" span="1" prop="jiaorenli">
|
|
|
- <ws-input v-model="deptBudgetList.contractGoodsInfo.jiaorenli" placeholder="请输入输入热损伤占比(%)"
|
|
|
- maxlength="40" size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--不完善粒(%)<=-->
|
|
|
- <ws-form-item label="不完善粒(%)<=" span="1" prop="imperfectGrain">
|
|
|
- <ws-input v-model="deptBudgetList.contractGoodsInfo.imperfectGrain" placeholder="请输入不完善粒占比(%)"
|
|
|
- maxlength="40" size="small" />
|
|
|
- </ws-form-item>
|
|
|
- </ws-info-table>
|
|
|
- </ws-form>
|
|
|
- </div>
|
|
|
-
|
|
|
- <div class="wenzi">
|
|
|
- <h3>流程信息</h3>
|
|
|
- </div>
|
|
|
- <div class="center">
|
|
|
- <ws-form ref="deptBudgetList" :rules="ruleDeptBudget" :model="deptBudgetList">
|
|
|
- <!--流程信息-->
|
|
|
-
|
|
|
- <ws-info-table>
|
|
|
- <!--合同收入(元)-->
|
|
|
- <ws-form-item label="合同收入(元)" span="1" prop="goodsNameKey">
|
|
|
- <ws-input v-model="deptBudgetList.contractProcessInfo.goodsNameKey" placeholder="请输入合同收入(元)"
|
|
|
- maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--已开发票(元)-->
|
|
|
- <ws-form-item label="已开发票(元)" span="1" prop="goodsName">
|
|
|
- <ws-input v-model="deptBudgetList.contractProcessInfo.goodsName" placeholder="请输入已开发票(元)"
|
|
|
- maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--费用支出(元)-->
|
|
|
- <ws-form-item label="费用支出(元)" span="1" prop="waterContent">
|
|
|
- <ws-input v-model="deptBudgetList.contractProcessInfo.waterContent" placeholder="请输入费用支出(元)"
|
|
|
- maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--未开发票(元)-->
|
|
|
- <ws-form-item label="未开发票(元)" span="1" prop="impurity">
|
|
|
- <ws-input v-model="deptBudgetList.contractProcessInfo.impurity" placeholder="请输入未开发票(元)"
|
|
|
- maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
-
|
|
|
- <!--未回款(元)-->
|
|
|
- <ws-form-item label="未回款(元)" span="1" prop="mildewGrain">
|
|
|
- <ws-input v-model="deptBudgetList.contractProcessInfo.mildewGrain" placeholder="请输入未回款(元)"
|
|
|
- maxlength="100" size="small" />
|
|
|
- </ws-form-item>
|
|
|
- <!--双章原件回收情况-->
|
|
|
- <ws-form-item label="双章原件回收情况" span="1" prop="grade">
|
|
|
- <ws-select v-model="deptBudgetList.contractProcessInfo.grade" placeholder="" class="typeselect"
|
|
|
- @change="selectpackingMethod">
|
|
|
- <ws-option v-for="item in ChapterTwoList" :key="item.constKey" :label="item.constValue"
|
|
|
- :value="item.constValue" />
|
|
|
- </ws-select>
|
|
|
- </ws-form-item>
|
|
|
- </ws-info-table>
|
|
|
- </ws-form>
|
|
|
- </div>
|
|
|
-
|
|
|
- <div class="wenzi">
|
|
|
- <h3>备注信息</h3>
|
|
|
- </div>
|
|
|
- <div class="ce">
|
|
|
- <ws-form ref="deptBudgetList" :rules="ruleDeptBudget" :model="deptBudgetList">
|
|
|
- <!--备注信息-->
|
|
|
- <ws-input v-model="deptBudgetList.remarks" type="textarea" row="3" placeholder="请输入备注信息,不超过200字"
|
|
|
- maxlength="3000" />
|
|
|
- <ws-upload ref="upload" :comp-id="compId" :appendix-ids="deptBudgetList.addressUrl" :size-limit="size"
|
|
|
- @onChange="onChange" accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
|
|
|
- </ws-form>
|
|
|
- <div v-if="dialogVisible" class="map">
|
|
|
- <map-drag @marker="marker" :isShowaddress='true' v-on:addressListen='getAddress' :type="type">
|
|
|
- </map-drag>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div style="text-align: right; padding: 10px" class="center">
|
|
|
- <el-button class="bg-bottom" type="primary" size="small" @click="submit(deptBudgetList)">提交</el-button>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ <el-button
|
|
|
+ @click="mapInputClick('deliveryProv')"
|
|
|
+ class="address-btn"
|
|
|
+ >
|
|
|
+ {{ newSelectedOptions1 }}
|
|
|
+ </el-button>
|
|
|
+ </ws-form-item>
|
|
|
+ <ws-form-item label="交货详细地址" span="1" prop="placeDelivery">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.placeDelivery"
|
|
|
+ placeholder="请输入交货详细地址"
|
|
|
+ maxlength="20"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--签订日期-->
|
|
|
+ <ws-form-item label="签订日期" span="1" prop="signingDate">
|
|
|
+ <ws-date-picker
|
|
|
+ v-model="deptBudgetList.signingDate"
|
|
|
+ type="date"
|
|
|
+ placeholder="请选择合同签订日期"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <ws-form-item
|
|
|
+ label="最终实际成交量(吨)"
|
|
|
+ span="1"
|
|
|
+ prop="finalTradingVolume"
|
|
|
+ >
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.finalTradingVolume"
|
|
|
+ placeholder="请输入最终实际成交量"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ </ws-info-table>
|
|
|
+ </ws-form>
|
|
|
+ </div>
|
|
|
+ <div class="wenzi">
|
|
|
+ <h3>货物信息</h3>
|
|
|
+ </div>
|
|
|
+ <div class="center">
|
|
|
+ <ws-form
|
|
|
+ ref="deptBudgetList"
|
|
|
+ :rules="ruleDeptBudget"
|
|
|
+ :model="deptBudgetList"
|
|
|
+ >
|
|
|
+ <!--货物信息-->
|
|
|
+
|
|
|
+ <ws-info-table>
|
|
|
+ <!--货名-->
|
|
|
+ <ws-form-item label="货名" span="1" prop="goodsName" class="readonly">
|
|
|
+ <ws-select
|
|
|
+ v-model="deptBudgetList.contractGoodsInfo.goodsName"
|
|
|
+ placeholder=""
|
|
|
+ class="typeselect"
|
|
|
+ @change="selectgoodsName"
|
|
|
+ >
|
|
|
+ <ws-option
|
|
|
+ v-for="item in goodnameList"
|
|
|
+ :key="item.constKey"
|
|
|
+ :label="item.constValue"
|
|
|
+ :value="item.constValue"
|
|
|
+ />
|
|
|
+ </ws-select>
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--水分(%)<=-->
|
|
|
+ <ws-form-item label="水分(%)<=" span="1" prop="waterContent">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractGoodsInfo.waterContent"
|
|
|
+ placeholder="请输入水分占比"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--品级-->
|
|
|
+ <ws-form-item label="品级" span="1" prop="grade" class="readonly">
|
|
|
+ <ws-select
|
|
|
+ v-model="deptBudgetList.contractGoodsInfo.grade"
|
|
|
+ placeholder=""
|
|
|
+ class="typeselect"
|
|
|
+ @change="selectgrade"
|
|
|
+ >
|
|
|
+ <ws-option
|
|
|
+ v-for="item in gradeList"
|
|
|
+ :key="item.constKey"
|
|
|
+ :label="item.constValue"
|
|
|
+ :value="item.constValue"
|
|
|
+ />
|
|
|
+ </ws-select>
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--杂质(%)<=-->
|
|
|
+ <ws-form-item label="杂质(%)<=" span="1" prop="impurity">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractGoodsInfo.impurity"
|
|
|
+ placeholder="请输入杂质占比(%)"
|
|
|
+ maxlength="40"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--容重(克/升)>=-->
|
|
|
+ <ws-form-item label="容重(克/升)>=" span="1" prop="bulkDensity">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractGoodsInfo.bulkDensity"
|
|
|
+ placeholder="请输入容重"
|
|
|
+ maxlength="40"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--霉变粒(%)<=-->
|
|
|
+ <ws-form-item label="霉变粒(%)<=" span="1" prop="mildewGrain">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractGoodsInfo.mildewGrain"
|
|
|
+ placeholder="请输入霉变粒占比(%)"
|
|
|
+ maxlength="40"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--热损伤(%)<=-->
|
|
|
+ <ws-form-item label="热损伤(%)<=" span="1" prop="jiaorenli">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractGoodsInfo.jiaorenli"
|
|
|
+ placeholder="请输入输入热损伤占比(%)"
|
|
|
+ maxlength="40"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--不完善粒(%)<=-->
|
|
|
+ <ws-form-item label="不完善粒(%)<=" span="1" prop="imperfectGrain">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractGoodsInfo.imperfectGrain"
|
|
|
+ placeholder="请输入不完善粒占比(%)"
|
|
|
+ maxlength="40"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ </ws-info-table>
|
|
|
+ </ws-form>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="wenzi">
|
|
|
+ <h3>流程信息</h3>
|
|
|
+ </div>
|
|
|
+ <div class="center">
|
|
|
+ <ws-form
|
|
|
+ ref="deptBudgetList"
|
|
|
+ :rules="ruleDeptBudget"
|
|
|
+ :model="deptBudgetList"
|
|
|
+ >
|
|
|
+ <!--流程信息-->
|
|
|
+
|
|
|
+ <ws-info-table>
|
|
|
+ <!--合同收入(元)-->
|
|
|
+ <ws-form-item label="合同收入(元)" span="1" prop="goodsNameKey">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractProcessInfo.goodsNameKey"
|
|
|
+ placeholder="请输入合同收入(元)"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--已开发票(元)-->
|
|
|
+ <ws-form-item label="已开发票(元)" span="1" prop="goodsName">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractProcessInfo.goodsName"
|
|
|
+ placeholder="请输入已开发票(元)"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--费用支出(元)-->
|
|
|
+ <ws-form-item label="费用支出(元)" span="1" prop="waterContent">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractProcessInfo.waterContent"
|
|
|
+ placeholder="请输入费用支出(元)"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--未开发票(元)-->
|
|
|
+ <ws-form-item label="未开发票(元)" span="1" prop="impurity">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractProcessInfo.impurity"
|
|
|
+ placeholder="请输入未开发票(元)"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+
|
|
|
+ <!--未回款(元)-->
|
|
|
+ <ws-form-item label="未回款(元)" span="1" prop="mildewGrain">
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.contractProcessInfo.mildewGrain"
|
|
|
+ placeholder="请输入未回款(元)"
|
|
|
+ maxlength="100"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </ws-form-item>
|
|
|
+ <!--双章原件回收情况-->
|
|
|
+ <ws-form-item label="双章原件回收情况" span="1" prop="grade">
|
|
|
+ <ws-select
|
|
|
+ v-model="deptBudgetList.contractProcessInfo.grade"
|
|
|
+ placeholder=""
|
|
|
+ class="typeselect"
|
|
|
+ @change="selectpackingMethod"
|
|
|
+ >
|
|
|
+ <ws-option
|
|
|
+ v-for="item in ChapterTwoList"
|
|
|
+ :key="item.constKey"
|
|
|
+ :label="item.constValue"
|
|
|
+ :value="item.constValue"
|
|
|
+ />
|
|
|
+ </ws-select>
|
|
|
+ </ws-form-item>
|
|
|
+ </ws-info-table>
|
|
|
+ </ws-form>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="wenzi">
|
|
|
+ <h3>备注信息</h3>
|
|
|
+ </div>
|
|
|
+ <div class="ce">
|
|
|
+ <ws-form
|
|
|
+ ref="deptBudgetList"
|
|
|
+ :rules="ruleDeptBudget"
|
|
|
+ :model="deptBudgetList"
|
|
|
+ >
|
|
|
+ <!--备注信息-->
|
|
|
+ <ws-input
|
|
|
+ v-model="deptBudgetList.remarks"
|
|
|
+ type="textarea"
|
|
|
+ row="3"
|
|
|
+ placeholder="请输入备注信息,不超过200字"
|
|
|
+ maxlength="3000"
|
|
|
+ />
|
|
|
+ <ws-upload
|
|
|
+ ref="upload"
|
|
|
+ :comp-id="compId"
|
|
|
+ :appendix-ids="deptBudgetList.addressUrl"
|
|
|
+ :size-limit="size"
|
|
|
+ @onChange="onChange"
|
|
|
+ accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar"
|
|
|
+ />
|
|
|
+ </ws-form>
|
|
|
+ <div v-if="dialogVisible" class="map">
|
|
|
+ <map-drag
|
|
|
+ @marker="marker"
|
|
|
+ :isShowaddress="true"
|
|
|
+ v-on:addressListen="getAddress"
|
|
|
+ :type="type"
|
|
|
+ >
|
|
|
+ </map-drag>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div style="text-align: right; padding: 10px" class="center">
|
|
|
+ <el-button
|
|
|
+ class="bg-bottom"
|
|
|
+ type="primary"
|
|
|
+ size="small"
|
|
|
+ @click="submit(deptBudgetList)"
|
|
|
+ >提交</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
<script>
|
|
|
- import {
|
|
|
- packList,
|
|
|
- addList,
|
|
|
- xiala,
|
|
|
- addxiala,
|
|
|
- editxiala,
|
|
|
- delxiala,
|
|
|
- getRelationContractNo,
|
|
|
- } from '@/model/contarct/index'
|
|
|
- import WsUpload from '@/components/WsUpload'
|
|
|
- import {
|
|
|
- regionData,
|
|
|
- CodeToText,
|
|
|
- TextToCode
|
|
|
- } from 'element-china-area-data'
|
|
|
- import thirdPartyInspectionReportAddVue from '../system/shipInspection/thirdPartyInspectionReportAdd.vue'
|
|
|
- import mapDrag from '@/components/mapdrag/mapdrag'
|
|
|
- export default {
|
|
|
- name: 'viewSpareMoney',
|
|
|
- components: {
|
|
|
- WsUpload,
|
|
|
- mapDrag
|
|
|
- },
|
|
|
- watch: {
|
|
|
- vesselId(val) {
|
|
|
- this.getVesselData()
|
|
|
- },
|
|
|
- isShow(val) {
|
|
|
- this.showType = val
|
|
|
- },
|
|
|
- },
|
|
|
- data() {
|
|
|
- return {
|
|
|
- //弹出框
|
|
|
- dialogViewSpareMoney: false,
|
|
|
- dialogApproveFormVisible: false,
|
|
|
- // 船舶类型
|
|
|
- monetaryKey: null,
|
|
|
- // 表格显示数据
|
|
|
- tableDate: [],
|
|
|
- // 是否显示
|
|
|
- showType: true,
|
|
|
- // 年
|
|
|
- year: '',
|
|
|
- type: "",
|
|
|
- dialogVisible: false,
|
|
|
- options_: regionData,
|
|
|
- selectedOptions: [],
|
|
|
- newSelectedOptions: '请选择货源所在地',
|
|
|
- selectedOptions1: [],
|
|
|
- newSelectedOptions1: '请选择交货所在地区',
|
|
|
- // 提交类型
|
|
|
- submitType: true,
|
|
|
- tableData: [{
|
|
|
- date: 1111,
|
|
|
- name: 'qqqq',
|
|
|
- address: 'errrtt'
|
|
|
- }],
|
|
|
- trainingMethods: {},
|
|
|
- packtypeList: [],
|
|
|
- compId: sessionStorage.getItem('ws-pf_compId'),
|
|
|
- mainReportAdd: {},
|
|
|
- appendixIdsAdd: '',
|
|
|
- size: 10,
|
|
|
- unitList: [],
|
|
|
- goodnameList: [],
|
|
|
- gradeList: [],
|
|
|
- ChapterTwoList: [],
|
|
|
- deptBudgetList: {
|
|
|
- deliverType: '1',
|
|
|
- agreementType: '1',
|
|
|
- finalTradingVolume: 0,
|
|
|
- totalContractPrice: 0,
|
|
|
- contractGoodsInfo: {
|
|
|
- goodsName: '',
|
|
|
- },
|
|
|
- contractProcessInfo: {},
|
|
|
- addressUrl: '',
|
|
|
- },
|
|
|
- pickerBeginDateBefore: {
|
|
|
- disabledDate: (time) => {
|
|
|
- return time.getTime() > Date.now()
|
|
|
- },
|
|
|
- },
|
|
|
- ruleDeptBudget: {
|
|
|
- contractNo: [{
|
|
|
- required: true,
|
|
|
- message: '请输入活动名称',
|
|
|
- trigger: 'blur'
|
|
|
- },
|
|
|
- {
|
|
|
- min: 6,
|
|
|
- max: 50,
|
|
|
- message: '长度在 6 到 50 个字符',
|
|
|
- trigger: 'blur',
|
|
|
- },
|
|
|
- ],
|
|
|
- },
|
|
|
- selectIntendedShip: {},
|
|
|
- interviewTypeList: {},
|
|
|
- fileList: [],
|
|
|
- priceTypeList: [
|
|
|
- "定价销售",
|
|
|
- "随行就市"
|
|
|
- ],
|
|
|
- contractNoList: [],
|
|
|
- }
|
|
|
- },
|
|
|
- activated() {
|
|
|
- //cg.viewBudget
|
|
|
- //cg.viewSpareMoney
|
|
|
- // this.getVesselData();
|
|
|
- this.deptBudgetList.packingMethod = '散装'
|
|
|
- this.deptBudgetList.packingMethodKey = 1
|
|
|
- this.deptBudgetList.contractGoodsInfo.goodsName = '玉米'
|
|
|
- this.deptBudgetList.contractGoodsInfo.goodsNameKey = 1
|
|
|
- this.deptBudgetList.contractProcessInfo.grade = '未回收'
|
|
|
- this.deptBudgetList.contractProcessInfo.gradeKey = 1
|
|
|
- this.deptBudgetList.contractGoodsInfo.grade = '一等品'
|
|
|
- this.deptBudgetList.contractGoodsInfo.gradeKey = 1
|
|
|
- this.loaddata()
|
|
|
- this.showType = this.isShow
|
|
|
- },
|
|
|
- methods: {
|
|
|
- getAddress(data) {
|
|
|
- console.log("getAddress", data)
|
|
|
- if (data[4] == 'source') {
|
|
|
- this.newSelectedOptions = data[0] + '/' + data[1] + '/' + data[2]
|
|
|
- this.deptBudgetList.sourceProvince = data[0]
|
|
|
- this.deptBudgetList.sourceCity = data[1]
|
|
|
- this.deptBudgetList.sourceArea = data[2]
|
|
|
- this.deptBudgetList.sourceGoods = data[3]
|
|
|
- } else {
|
|
|
- this.newSelectedOptions1 = data[0] + '/' + data[1] + '/' + data[2]
|
|
|
- this.deptBudgetList.deliveryProvince = data[0]
|
|
|
- this.deptBudgetList.deliveryCity = data[1]
|
|
|
- this.deptBudgetList.deliveryArea = data[2]
|
|
|
- this.deptBudgetList.placeDelivery = data[3]
|
|
|
- }
|
|
|
- },
|
|
|
- mapInputClick(type) {
|
|
|
- this.dialogVisible = true
|
|
|
- this.type = type
|
|
|
- },
|
|
|
- // 关闭 dialog时 处理文件url 初始化upload组件
|
|
|
- handleClose() {
|
|
|
- this.dialogViewSpareMoney = false
|
|
|
- },
|
|
|
- handleChange(value) {
|
|
|
- this.selectedOptions = value
|
|
|
- },
|
|
|
- handleChange1(value) {
|
|
|
- this.selectedOptions1 = value
|
|
|
- },
|
|
|
- returnsales() {
|
|
|
- this.$router.push({
|
|
|
- path: 'salesContract'
|
|
|
- })
|
|
|
- },
|
|
|
- loaddata() {
|
|
|
- // 包装方式
|
|
|
- packList({
|
|
|
- constId: 'CON1'
|
|
|
- })
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.packtypeList = response
|
|
|
- })
|
|
|
- // 验收方式
|
|
|
- this.getUnitList()
|
|
|
- // 货名
|
|
|
- packList({
|
|
|
- constId: 'CON2'
|
|
|
- })
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.goodnameList = response
|
|
|
- })
|
|
|
- // 品级
|
|
|
- packList({
|
|
|
- constId: 'CON3'
|
|
|
- })
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.gradeList = response
|
|
|
- })
|
|
|
- // 双章
|
|
|
- packList({
|
|
|
- constId: 'CON4'
|
|
|
- })
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.ChapterTwoList = response
|
|
|
- })
|
|
|
- //关联合同
|
|
|
- getRelationContractNo({
|
|
|
- agreementType: '销售合同',
|
|
|
- goodsType: 1
|
|
|
- })
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.contractNoList = response
|
|
|
- })
|
|
|
- },
|
|
|
- selectRelation(e) {
|
|
|
- // this.deptBudgetList.agreementNo = e
|
|
|
- this.$set(this.deptBudgetList, 'agreementNo', e)
|
|
|
- },
|
|
|
- onChange() {
|
|
|
- this.$refs.upload
|
|
|
- .handleSaveBill()
|
|
|
- .then(async response => {
|
|
|
- this.deptBudgetList.addressUrl = response
|
|
|
- })
|
|
|
- .catch(res => {
|
|
|
- EventBus.$emit('error', (JSON.parse(res) || {}).message)
|
|
|
- this.$refs.upload.clearFiles()
|
|
|
- })
|
|
|
- },
|
|
|
- getUnitList() {
|
|
|
- xiala({
|
|
|
- compId: sessionStorage.getItem('ws-pf_compId'),
|
|
|
- constCode: 'TYPEYAN',
|
|
|
- })
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.unitList = response
|
|
|
- let currItem
|
|
|
- this.unitList.forEach((item, index, arr) => {
|
|
|
- item.flag = 'delete'
|
|
|
- if (this.vModel == item.constKey) {
|
|
|
- currItem = item
|
|
|
- }
|
|
|
- })
|
|
|
- //
|
|
|
- if (currItem) {
|
|
|
- this.selectContract(currItem.constValue)
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
-
|
|
|
- submit() {
|
|
|
- if (!this.deptBudgetList.contractNo) {
|
|
|
- this.$message({
|
|
|
- message: '合同编号不能为空',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- this.deptBudgetList.contractNo.length < 6 ||
|
|
|
- this.deptBudgetList.contractNo.length > 50
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '合同编号长度不符合要求,请输入6到50个字符之内!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.shippingType) {
|
|
|
- this.$message({
|
|
|
- message: '运输方式不能为空',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- this.deptBudgetList.shippingType.length < 1 ||
|
|
|
- this.deptBudgetList.shippingType.length > 20
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '运输方式长度不符合要求,请输入1到20个字符之内!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.buyer) {
|
|
|
- this.$message({
|
|
|
- message: '买方名称不能为空',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (this.deptBudgetList.buyer.length > 30) {
|
|
|
- this.$message({
|
|
|
- message: '买方名称长度不符合要求,请输入30个字符之内!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.settlementMethod) {
|
|
|
- this.$message({
|
|
|
- message: '结算方式不能为空',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- this.deptBudgetList.settlementMethod.length < 1 ||
|
|
|
- this.deptBudgetList.settlementMethod.length > 20
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '结算方式长度不符合要求,请输入1到20个字符之内!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.seller) {
|
|
|
- this.$message({
|
|
|
- message: '请输入卖方名称!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (this.deptBudgetList.seller.length > 30) {
|
|
|
- this.$message({
|
|
|
- message: '卖方名称长度不符合要求,请输入30个字符之内!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.buyerPhone) {
|
|
|
- this.$message({
|
|
|
- message: '请输入买方电话!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (isNaN(this.deptBudgetList.buyerPhone)) {
|
|
|
- this.$message({
|
|
|
- message: '输入买方电话有误!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- this.deptBudgetList.buyerPhone.length < 7 ||
|
|
|
- this.deptBudgetList.buyerPhone.length > 20
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '买方电话长度不符合要求,请输入7到20个字符之内!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.sellerPhone) {
|
|
|
- this.$message({
|
|
|
- message: '请输入卖方电话!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (isNaN(this.deptBudgetList.sellerPhone)) {
|
|
|
- this.$message({
|
|
|
- message: '输入卖方电话有误!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- this.deptBudgetList.sellerPhone.length < 7 ||
|
|
|
- this.deptBudgetList.sellerPhone.length > 20
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '卖方电话长度不符合要求,请输入7到20个字符之内!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.acceptanceMethod) {
|
|
|
- this.$message({
|
|
|
- message: '请选择验收方式',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.weight) {
|
|
|
- this.$message({
|
|
|
- message: '请输入重量!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- isNaN(this.deptBudgetList.weight) ||
|
|
|
- (String(this.deptBudgetList.weight).indexOf('.') != -1 &&
|
|
|
- String(this.deptBudgetList.weight).length -
|
|
|
- (String(this.deptBudgetList.weight).indexOf('.') + 1) >
|
|
|
- 3) ||
|
|
|
- this.deptBudgetList.weight < 0 ||
|
|
|
- this.deptBudgetList.weight > 200000
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '输入重量有误!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.deliveryDateStart) {
|
|
|
- this.$message({
|
|
|
- message: '请选择交货日期(起)',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.overShort) {
|
|
|
- this.$message({
|
|
|
- message: '请输入溢短装!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- isNaN(this.deptBudgetList.overShort) ||
|
|
|
- (String(this.deptBudgetList.overShort).indexOf('.') != -1 &&
|
|
|
- String(this.deptBudgetList.overShort).length -
|
|
|
- (String(this.deptBudgetList.overShort).indexOf('.') + 1) >
|
|
|
- 2) ||
|
|
|
- this.deptBudgetList.overShort < 0 ||
|
|
|
- this.deptBudgetList.overShort > 50
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '溢短装输入有误!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.deliveryDateEnd) {
|
|
|
- this.$message({
|
|
|
- message: '请选择交货日期(止)',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- //时间
|
|
|
- if (
|
|
|
- new Date(this.deptBudgetList.deliveryDateStart).getTime() >
|
|
|
- new Date(this.deptBudgetList.deliveryDateEnd).getTime()
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '交货日期(止)选择错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.priceType) {
|
|
|
- this.$message({
|
|
|
- message: '请选择价格类型',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (this.deptBudgetList.priceType == '定价销售') {
|
|
|
- if (!this.deptBudgetList.unitContractPrice) {
|
|
|
- this.$message({
|
|
|
- message: '请输入合同单价!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- isNaN(this.deptBudgetList.unitContractPrice) ||
|
|
|
- (String(this.deptBudgetList.unitContractPrice).indexOf('.') != -1 &&
|
|
|
- String(this.deptBudgetList.unitContractPrice).length -
|
|
|
- (String(this.deptBudgetList.unitContractPrice).indexOf('.') + 1) >
|
|
|
- 2) ||
|
|
|
- this.deptBudgetList.unitContractPrice <= 0 ||
|
|
|
- this.deptBudgetList.unitContractPrice > 10000
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '合同单价输入有误!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.totalContractPrice) {
|
|
|
- this.$message({
|
|
|
- message: '请输入合同总价!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- isNaN(this.deptBudgetList.totalContractPrice) ||
|
|
|
- (String(this.deptBudgetList.totalContractPrice).indexOf('.') != -1 &&
|
|
|
- String(this.deptBudgetList.totalContractPrice).length -
|
|
|
- (String(this.deptBudgetList.totalContractPrice).indexOf('.') + 1) >
|
|
|
- 2) ||
|
|
|
- this.deptBudgetList.totalContractPrice <= 0 ||
|
|
|
- this.deptBudgetList.totalContractPrice > 1000000000
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '合同总价输入有误!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- if (!this.newSelectedOptions) {
|
|
|
- this.$message({
|
|
|
- message: '请选择货源所在地区!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.sourceGoods) {
|
|
|
- this.$message({
|
|
|
- message: '请输入货源详细地址!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.newSelectedOptions1) {
|
|
|
- this.$message({
|
|
|
- message: '请选择交货所在地区!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.placeDelivery) {
|
|
|
- this.$message({
|
|
|
- message: '请输入交货详细地址!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.signingDate) {
|
|
|
- this.$message({
|
|
|
- message: '请选择签订日期',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- isNaN(this.deptBudgetList.finalTradingVolume) ||
|
|
|
- (String(this.deptBudgetList.finalTradingVolume).indexOf('.') != -1 &&
|
|
|
- String(this.deptBudgetList.finalTradingVolume).length -
|
|
|
- (String(this.deptBudgetList.finalTradingVolume).indexOf('.') + 1) >
|
|
|
- 3) ||
|
|
|
- this.deptBudgetList.finalTradingVolume < 0 ||
|
|
|
- this.deptBudgetList.finalTradingVolume > 200000
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '最终实际成交量有误!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- //货物信息
|
|
|
- if (!this.deptBudgetList.contractGoodsInfo.goodsName) {
|
|
|
- this.$message({
|
|
|
- message: '请选择货名',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.contractGoodsInfo.waterContent) {
|
|
|
- this.$message({
|
|
|
- message: '请输入水分',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- this.deptBudgetList.contractGoodsInfo.waterContent &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.waterContent).indexOf('.') != -1 &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.waterContent).length -
|
|
|
- (String(this.deptBudgetList.contractGoodsInfo.waterContent).indexOf('.') + 1) >
|
|
|
- 2 || this.deptBudgetList.contractGoodsInfo.waterContent > 40 || this.deptBudgetList.contractGoodsInfo
|
|
|
- .waterContent < 0
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '水分输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.contractGoodsInfo.grade) {
|
|
|
- this.$message({
|
|
|
- message: '请选择品级',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.contractGoodsInfo.impurity) {
|
|
|
- this.$message({
|
|
|
- message: '请输入杂质',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- this.deptBudgetList.contractGoodsInfo.impurity &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.impurity).indexOf('.') != -1 &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.impurity).length -
|
|
|
- (String(this.deptBudgetList.contractGoodsInfo.impurity).indexOf('.') + 1) >
|
|
|
- 2 || this.deptBudgetList.contractGoodsInfo.impurity > 40 || this.deptBudgetList.contractGoodsInfo
|
|
|
- .impurity < 0
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '杂质输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.contractGoodsInfo.bulkDensity) {
|
|
|
- this.$message({
|
|
|
- message: '请输入容重',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- (this.deptBudgetList.contractGoodsInfo.bulkDensity &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.bulkDensity).indexOf('.') != -1 &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.bulkDensity).length -
|
|
|
- (String(this.deptBudgetList.contractGoodsInfo.bulkDensity).indexOf('.') + 1) >
|
|
|
- 2) || this.deptBudgetList.contractGoodsInfo.bulkDensity > 1000 || this.deptBudgetList
|
|
|
- .contractGoodsInfo.bulkDensity < 0
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '容重输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.contractGoodsInfo.mildewGrain) {
|
|
|
- this.$message({
|
|
|
- message: '请输入霉变粒',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- !this.deptBudgetList.contractGoodsInfo.mildewGrain ||
|
|
|
- (String(this.deptBudgetList.contractGoodsInfo.mildewGrain).indexOf(
|
|
|
- '.'
|
|
|
- ) != -1 &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.mildewGrain).length -
|
|
|
- (String(this.deptBudgetList.contractGoodsInfo.mildewGrain).indexOf(
|
|
|
- '.'
|
|
|
- ) +
|
|
|
- 1) >
|
|
|
- 2 || this.deptBudgetList.contractGoodsInfo.mildewGrain > 40 || this.deptBudgetList
|
|
|
- .contractGoodsInfo.mildewGrain < 0)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '霉变粒输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.contractGoodsInfo.jiaorenli) {
|
|
|
- this.$message({
|
|
|
- message: '请输入热损伤',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- !this.deptBudgetList.contractGoodsInfo.jiaorenli ||
|
|
|
- (String(this.deptBudgetList.contractGoodsInfo.jiaorenli).indexOf('.') !=
|
|
|
- -1 &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.jiaorenli).length -
|
|
|
- (String(this.deptBudgetList.contractGoodsInfo.jiaorenli).indexOf(
|
|
|
- '.'
|
|
|
- ) +
|
|
|
- 1) >
|
|
|
- 2 || this.deptBudgetList.contractGoodsInfo.jiaorenli > 40 || this.deptBudgetList.contractGoodsInfo
|
|
|
- .jiaorenli < 0)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '热损伤输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.deptBudgetList.contractGoodsInfo.imperfectGrain) {
|
|
|
- this.$message({
|
|
|
- message: '请输入不完善粒',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- !this.deptBudgetList.contractGoodsInfo.imperfectGrain ||
|
|
|
- (String(this.deptBudgetList.contractGoodsInfo.imperfectGrain).indexOf(
|
|
|
- '.'
|
|
|
- ) != -1 &&
|
|
|
- String(this.deptBudgetList.contractGoodsInfo.imperfectGrain).length -
|
|
|
- (String(
|
|
|
- this.deptBudgetList.contractGoodsInfo.imperfectGrain
|
|
|
- ).indexOf('.') +
|
|
|
- 1) >
|
|
|
- 2 || this.deptBudgetList.contractGoodsInfo.imperfectGrain > 40 || this.deptBudgetList
|
|
|
- .contractGoodsInfo.imperfectGrain < 0)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '不完善粒输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- (!this.deptBudgetList.contractProcessInfo.goodsNameKey > 1000000000) ||
|
|
|
- (this.deptBudgetList.contractProcessInfo.goodsNameKey < 100) ||
|
|
|
- (String(this.deptBudgetList.contractProcessInfo.goodsNameKey).indexOf(
|
|
|
- '.'
|
|
|
- ) != -1 &&
|
|
|
- String(this.deptBudgetList.contractProcessInfo.goodsNameKey).length -
|
|
|
- (String(
|
|
|
- this.deptBudgetList.contractProcessInfo.goodsNameKey
|
|
|
- ).indexOf('.') +
|
|
|
- 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '合同收入金额输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- (this.deptBudgetList.contractProcessInfo.waterContent > 10000000) ||
|
|
|
- (this.deptBudgetList.contractProcessInfo.waterContent < 0) ||
|
|
|
- (String(this.deptBudgetList.contractProcessInfo.waterContent).indexOf(
|
|
|
- '.'
|
|
|
- ) != -1 &&
|
|
|
- String(this.deptBudgetList.contractProcessInfo.waterContent).length -
|
|
|
- (String(
|
|
|
- this.deptBudgetList.contractProcessInfo.waterContent
|
|
|
- ).indexOf('.') +
|
|
|
- 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '费用支出输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- (this.deptBudgetList.contractProcessInfo.goodsName > 1000000000) |
|
|
|
- (this.deptBudgetList.contractProcessInfo.goodsName < 0) ||
|
|
|
- (String(this.deptBudgetList.contractProcessInfo.goodsName).indexOf(
|
|
|
- '.'
|
|
|
- ) != -1 &&
|
|
|
- String(this.deptBudgetList.contractProcessInfo.goodsName).length -
|
|
|
- (String(this.deptBudgetList.contractProcessInfo.goodsName).indexOf(
|
|
|
- '.'
|
|
|
- ) +
|
|
|
- 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '已开发票金额输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- (this.deptBudgetList.contractProcessInfo.impurity > 1000000000) |
|
|
|
- (this.deptBudgetList.contractProcessInfo.impurity < 0) ||
|
|
|
- (String(this.deptBudgetList.contractProcessInfo.impurity).indexOf(
|
|
|
- '.'
|
|
|
- ) != -1 &&
|
|
|
- String(this.deptBudgetList.contractProcessInfo.impurity).length -
|
|
|
- (String(this.deptBudgetList.contractProcessInfo.impurity).indexOf(
|
|
|
- '.'
|
|
|
- ) +
|
|
|
- 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '未开发票金额输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (
|
|
|
- (!this.deptBudgetList.contractProcessInfo.mildewGrain > 1000000000) |
|
|
|
- (this.deptBudgetList.contractProcessInfo.mildewGrain < 0) ||
|
|
|
- (String(this.deptBudgetList.contractProcessInfo.mildewGrain).indexOf(
|
|
|
- '.'
|
|
|
- ) != -1 &&
|
|
|
- String(this.deptBudgetList.contractProcessInfo.mildewGrain).length -
|
|
|
- (String(
|
|
|
- this.deptBudgetList.contractProcessInfo.mildewGrain
|
|
|
- ).indexOf('.') +
|
|
|
- 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '未回款金额输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- this.$refs.deptBudgetList.validate((valid) => {
|
|
|
- if (valid) {
|
|
|
- this.deptBudgetList.sourceProvince =
|
|
|
- CodeToText[this.selectedOptions[0]]
|
|
|
- this.deptBudgetList.sourceCity = CodeToText[this.selectedOptions[1]]
|
|
|
-
|
|
|
- this.deptBudgetList.deliveryProvince =
|
|
|
- CodeToText[this.selectedOptions1[0]]
|
|
|
- this.deptBudgetList.deliveryCity =
|
|
|
- CodeToText[this.selectedOptions1[1]]
|
|
|
-
|
|
|
- this.deptBudgetList.compId = this.compId
|
|
|
- this.deptBudgetList.contractType = 1
|
|
|
- this.deptBudgetList.goodsType = 1
|
|
|
-
|
|
|
- if (
|
|
|
- this.deptBudgetList.deliveryProvince == '澳门特别行政区' ||
|
|
|
- this.deptBudgetList.deliveryProvince == '澳门特别行政区'
|
|
|
- ) {
|
|
|
- this.deptBudgetList.deliveryArea = '特别行政区'
|
|
|
- } else {
|
|
|
- this.deptBudgetList.deliveryArea =
|
|
|
- CodeToText[this.selectedOptions1[2]]
|
|
|
- }
|
|
|
- if (
|
|
|
- this.deptBudgetList.sourceProvince == '澳门特别行政区' ||
|
|
|
- this.deptBudgetList.sourceProvince == '澳门特别行政区'
|
|
|
- ) {
|
|
|
- this.deptBudgetList.sourceArea = '特别行政区'
|
|
|
- } else {
|
|
|
- this.deptBudgetList.sourceArea = CodeToText[this.selectedOptions[2]]
|
|
|
- }
|
|
|
- addList(this.deptBudgetList)
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.$message.success('添加成功')
|
|
|
- this.deptBudgetList = {
|
|
|
- deliverType: '1',
|
|
|
- agreementType: '1',
|
|
|
- finalTradingVolume: 0,
|
|
|
- totalContractPrice: 0,
|
|
|
- contractGoodsInfo: {
|
|
|
- goodsName: '',
|
|
|
- },
|
|
|
- contractProcessInfo: {},
|
|
|
- }
|
|
|
-
|
|
|
- this.$router.push({
|
|
|
- path: 'salesContract'
|
|
|
- })
|
|
|
- })
|
|
|
- } else {
|
|
|
- EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
|
|
|
- return false
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- resetForm(deptBudgetList) {
|
|
|
- this.$refs[deptBudgetList].resetFields()
|
|
|
- },
|
|
|
- saveClick(item, index) {
|
|
|
- console.log(item)
|
|
|
-
|
|
|
- if (Object.is(item.id, 1)) {
|
|
|
- return
|
|
|
- }
|
|
|
- if (Object.is(this.unitList[index].flag, 'delete')) {
|
|
|
- this.$set(this.unitList, index, {
|
|
|
- flag: 'check'
|
|
|
- })
|
|
|
- } else {
|
|
|
- this.$set(this.unitList, index, {
|
|
|
- flag: 'delete'
|
|
|
- })
|
|
|
- }
|
|
|
- if (!item.constValue) {
|
|
|
- this.unitList.splice(index, 1)
|
|
|
- return
|
|
|
- }
|
|
|
- if (item.flag == 'add') {
|
|
|
- item.constKey = Math.random() * 20
|
|
|
- this.trainingMethods.compId = sessionStorage.getItem('ws-pf_compId')
|
|
|
- this.trainingMethods.constKey = item.constKey
|
|
|
- this.trainingMethods.constCode = 'TYPEYAN'
|
|
|
- this.trainingMethods.constValue = item.constValue
|
|
|
- this.trainingMethods.id = item.id
|
|
|
- addxiala(this.trainingMethods)
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.getUnitList()
|
|
|
- })
|
|
|
- } else if (item.flag == 'check') {
|
|
|
- this.trainingMethods.compId = sessionStorage.getItem('ws-pf_compId')
|
|
|
- this.trainingMethods.constKey = item.constKey
|
|
|
- this.trainingMethods.constCode = 'TYPEYAN'
|
|
|
- this.trainingMethods.constValue = item.constValue
|
|
|
- this.trainingMethods.id = item.id
|
|
|
- editxiala(this.trainingMethods)
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.getUnitList()
|
|
|
- })
|
|
|
- }
|
|
|
- },
|
|
|
- handleExamine() {},
|
|
|
- approve() {},
|
|
|
- addClick() {
|
|
|
- this.unitList.push({
|
|
|
- flag: 'add',
|
|
|
- constValue: '',
|
|
|
- constKey: '',
|
|
|
- })
|
|
|
- },
|
|
|
- selectChapterTwo(e) {
|
|
|
- for (var i = 0; i < this.ChapterTwoList.length; i++) {
|
|
|
- if (this.ChapterTwoList[i].constValue == e) {
|
|
|
- this.deptBudgetList.gradeKey = this.ChapterTwoList[i].constKey
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- selectunitList(e) {
|
|
|
- for (var i = 0; i < this.unitList.length; i++) {
|
|
|
- if (this.unitList[i].constValue == e) {
|
|
|
- this.deptBudgetList.packingMethodKey = this.unitList[i].constKey
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- selectgrade(e) {
|
|
|
- for (var i = 0; i < this.gradeList.length; i++) {
|
|
|
- if (this.gradeList[i].constValue == e) {
|
|
|
- this.deptBudgetList.gradeKey = this.gradeList[i].constKey
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- selectgoodsName(e) {
|
|
|
- for (var i = 0; i < this.goodnameList.length; i++) {
|
|
|
- if (this.goodnameList[i].constValue == e) {
|
|
|
- this.deptBudgetList.goodsNameKey = this.goodnameList[i].constKey
|
|
|
- this.deptBudgetList.contractGoodsInfo.goodsNameKey = this.goodnameList[i].constKey
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- selectpackingMethod(e) {
|
|
|
- for (var i = 0; i < this.packtypeList.length; i++) {
|
|
|
- if (this.packtypeList[i].constValue == e) {
|
|
|
- this.deptBudgetList.acceptanceMethodKey =
|
|
|
- this.packtypeList[i].constKey
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- selectpriceType(e) {},
|
|
|
- weightchange(e) {
|
|
|
- this.deptBudgetList.finalTradingVolume = e
|
|
|
- },
|
|
|
- pricechange(e) {
|
|
|
- this.deptBudgetList.totalContractPrice = e * this.deptBudgetList.weight
|
|
|
- },
|
|
|
- // 编辑
|
|
|
- editClick(item, index) {
|
|
|
- const map = JSON.parse(JSON.stringify(item))
|
|
|
- if (Object.is(item.id, 1)) {
|
|
|
- return
|
|
|
- }
|
|
|
- if (Object.is(this.unitList[index].flag, 'delete')) {
|
|
|
- map.flag = 'check'
|
|
|
- this.$set(this.unitList, index, map)
|
|
|
- } else {
|
|
|
- map.flag = 'delete'
|
|
|
- this.$set(this.unitList, index, map)
|
|
|
- }
|
|
|
- },
|
|
|
- // 删除
|
|
|
- deleteClick(item, index) {
|
|
|
- if (Object.is(item.constKey, 1)) {
|
|
|
- return
|
|
|
- }
|
|
|
- if (!item.constValue) {
|
|
|
- this.unitList.splice(index, 1)
|
|
|
- return
|
|
|
- }
|
|
|
- delxiala({
|
|
|
- id: this.unitList[index].id
|
|
|
- })
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.getUnitList()
|
|
|
- this.pleaseChoose = ''
|
|
|
- })
|
|
|
- },
|
|
|
- },
|
|
|
- }
|
|
|
+import {
|
|
|
+ packList,
|
|
|
+ addList,
|
|
|
+ xiala,
|
|
|
+ addxiala,
|
|
|
+ editxiala,
|
|
|
+ delxiala,
|
|
|
+ getRelationContractNo,
|
|
|
+} from '@/model/contarct/index'
|
|
|
+import WsUpload from '@/components/WsUpload'
|
|
|
+import { regionData, CodeToText, TextToCode } from 'element-china-area-data'
|
|
|
+import thirdPartyInspectionReportAddVue from '../system/shipInspection/thirdPartyInspectionReportAdd.vue'
|
|
|
+import mapDrag from '@/components/mapdrag/mapdrag'
|
|
|
+export default {
|
|
|
+ name: 'viewSpareMoney',
|
|
|
+ components: {
|
|
|
+ WsUpload,
|
|
|
+ mapDrag,
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ vesselId(val) {
|
|
|
+ this.getVesselData()
|
|
|
+ },
|
|
|
+ isShow(val) {
|
|
|
+ this.showType = val
|
|
|
+ },
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ //弹出框
|
|
|
+ dialogViewSpareMoney: false,
|
|
|
+ dialogApproveFormVisible: false,
|
|
|
+ // 船舶类型
|
|
|
+ monetaryKey: null,
|
|
|
+ // 表格显示数据
|
|
|
+ tableDate: [],
|
|
|
+ // 是否显示
|
|
|
+ showType: true,
|
|
|
+ // 年
|
|
|
+ year: '',
|
|
|
+ type: '',
|
|
|
+ dialogVisible: false,
|
|
|
+ options_: regionData,
|
|
|
+ selectedOptions: [],
|
|
|
+ newSelectedOptions: '请选择货源所在地',
|
|
|
+ selectedOptions1: [],
|
|
|
+ newSelectedOptions1: '请选择交货所在地区',
|
|
|
+ // 提交类型
|
|
|
+ submitType: true,
|
|
|
+ tableData: [
|
|
|
+ {
|
|
|
+ date: 1111,
|
|
|
+ name: 'qqqq',
|
|
|
+ address: 'errrtt',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ trainingMethods: {},
|
|
|
+ packtypeList: [],
|
|
|
+ compId: sessionStorage.getItem('ws-pf_compId'),
|
|
|
+ mainReportAdd: {},
|
|
|
+ appendixIdsAdd: '',
|
|
|
+ size: 10,
|
|
|
+ unitList: [],
|
|
|
+ goodnameList: [],
|
|
|
+ gradeList: [],
|
|
|
+ ChapterTwoList: [],
|
|
|
+ deptBudgetList: {
|
|
|
+ deliverType: '1',
|
|
|
+ agreementType: '销售合同',
|
|
|
+ finalTradingVolume: 0,
|
|
|
+ totalContractPrice: 0,
|
|
|
+ contractGoodsInfo: {
|
|
|
+ goodsName: '',
|
|
|
+ },
|
|
|
+ contractProcessInfo: {},
|
|
|
+ addressUrl: '',
|
|
|
+ },
|
|
|
+ pickerBeginDateBefore: {
|
|
|
+ disabledDate: (time) => {
|
|
|
+ return time.getTime() > Date.now()
|
|
|
+ },
|
|
|
+ },
|
|
|
+ ruleDeptBudget: {
|
|
|
+ contractNo: [
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ message: '请输入活动名称',
|
|
|
+ trigger: 'blur',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ min: 6,
|
|
|
+ max: 50,
|
|
|
+ message: '长度在 6 到 50 个字符',
|
|
|
+ trigger: 'blur',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ selectIntendedShip: {},
|
|
|
+ interviewTypeList: {},
|
|
|
+ fileList: [],
|
|
|
+ priceTypeList: ['定价销售', '随行就市'],
|
|
|
+ contractNoList: [],
|
|
|
+ }
|
|
|
+ },
|
|
|
+ activated() {
|
|
|
+ //cg.viewBudget
|
|
|
+ //cg.viewSpareMoney
|
|
|
+ // this.getVesselData();
|
|
|
+ this.deptBudgetList.packingMethod = '散装'
|
|
|
+ this.deptBudgetList.packingMethodKey = 1
|
|
|
+ this.deptBudgetList.contractGoodsInfo.goodsName = '玉米'
|
|
|
+ this.deptBudgetList.contractGoodsInfo.goodsNameKey = 1
|
|
|
+ this.deptBudgetList.contractProcessInfo.grade = '未回收'
|
|
|
+ this.deptBudgetList.contractProcessInfo.gradeKey = 1
|
|
|
+ this.deptBudgetList.contractGoodsInfo.grade = '一等品'
|
|
|
+ this.deptBudgetList.contractGoodsInfo.gradeKey = 1
|
|
|
+ this.loaddata()
|
|
|
+ this.showType = this.isShow
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ getAddress(data) {
|
|
|
+ console.log('getAddress', data)
|
|
|
+ if (data[4] == 'source') {
|
|
|
+ this.newSelectedOptions = data[0] + '/' + data[1] + '/' + data[2]
|
|
|
+ this.deptBudgetList.sourceProvince = data[0]
|
|
|
+ this.deptBudgetList.sourceCity = data[1]
|
|
|
+ this.deptBudgetList.sourceArea = data[2]
|
|
|
+ this.deptBudgetList.sourceGoods = data[3]
|
|
|
+ } else {
|
|
|
+ this.newSelectedOptions1 = data[0] + '/' + data[1] + '/' + data[2]
|
|
|
+ this.deptBudgetList.deliveryProvince = data[0]
|
|
|
+ this.deptBudgetList.deliveryCity = data[1]
|
|
|
+ this.deptBudgetList.deliveryArea = data[2]
|
|
|
+ this.deptBudgetList.placeDelivery = data[3]
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mapInputClick(type) {
|
|
|
+ this.dialogVisible = true
|
|
|
+ this.type = type
|
|
|
+ },
|
|
|
+ // 关闭 dialog时 处理文件url 初始化upload组件
|
|
|
+ handleClose() {
|
|
|
+ this.dialogViewSpareMoney = false
|
|
|
+ },
|
|
|
+ handleChange(value) {
|
|
|
+ this.selectedOptions = value
|
|
|
+ },
|
|
|
+ handleChange1(value) {
|
|
|
+ this.selectedOptions1 = value
|
|
|
+ },
|
|
|
+ returnsales() {
|
|
|
+ this.$router.push({
|
|
|
+ path: 'salesContract',
|
|
|
+ })
|
|
|
+ },
|
|
|
+ loaddata() {
|
|
|
+ // 包装方式
|
|
|
+ packList({
|
|
|
+ constId: 'CON1',
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.packtypeList = response
|
|
|
+ })
|
|
|
+ // 验收方式
|
|
|
+ this.getUnitList()
|
|
|
+ // 货名
|
|
|
+ packList({
|
|
|
+ constId: 'CON2',
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.goodnameList = response
|
|
|
+ })
|
|
|
+ // 品级
|
|
|
+ packList({
|
|
|
+ constId: 'CON3',
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.gradeList = response
|
|
|
+ })
|
|
|
+ // 双章
|
|
|
+ packList({
|
|
|
+ constId: 'CON4',
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.ChapterTwoList = response
|
|
|
+ })
|
|
|
+ //关联合同
|
|
|
+ getRelationContractNo({
|
|
|
+ agreementType: '销售合同',
|
|
|
+ goodsType: 1,
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.contractNoList = response
|
|
|
+ })
|
|
|
+ },
|
|
|
+ selectRelation(e) {
|
|
|
+ for (var i = 0; i < this.contractNoList.length; i++) {
|
|
|
+ if (this.contractNoList[i].contractNo == e) {
|
|
|
+ this.deptBudgetList = this.contractNoList[i]
|
|
|
+ this.deptBudgetList.agreementNo = this.contractNoList[i].contractNo
|
|
|
+ this.deptBudgetList.agreementType = '补充协议'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ onChange() {
|
|
|
+ this.$refs.upload
|
|
|
+ .handleSaveBill()
|
|
|
+ .then(async (response) => {
|
|
|
+ this.deptBudgetList.addressUrl = response
|
|
|
+ })
|
|
|
+ .catch((res) => {
|
|
|
+ EventBus.$emit('error', (JSON.parse(res) || {}).message)
|
|
|
+ this.$refs.upload.clearFiles()
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getUnitList() {
|
|
|
+ xiala({
|
|
|
+ compId: sessionStorage.getItem('ws-pf_compId'),
|
|
|
+ constCode: 'TYPEYAN',
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.unitList = response
|
|
|
+ let currItem
|
|
|
+ this.unitList.forEach((item, index, arr) => {
|
|
|
+ item.flag = 'delete'
|
|
|
+ if (this.vModel == item.constKey) {
|
|
|
+ currItem = item
|
|
|
+ }
|
|
|
+ })
|
|
|
+ //
|
|
|
+ if (currItem) {
|
|
|
+ this.selectContract(currItem.constValue)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ submit() {
|
|
|
+ if (!this.deptBudgetList.contractNo) {
|
|
|
+ this.$message({
|
|
|
+ message: '合同编号不能为空',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ this.deptBudgetList.contractNo.length < 6 ||
|
|
|
+ this.deptBudgetList.contractNo.length > 50
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '合同编号长度不符合要求,请输入6到50个字符之内!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.shippingType) {
|
|
|
+ this.$message({
|
|
|
+ message: '运输方式不能为空',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ this.deptBudgetList.shippingType.length < 1 ||
|
|
|
+ this.deptBudgetList.shippingType.length > 20
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '运输方式长度不符合要求,请输入1到20个字符之内!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.buyer) {
|
|
|
+ this.$message({
|
|
|
+ message: '买方名称不能为空',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (this.deptBudgetList.buyer.length > 30) {
|
|
|
+ this.$message({
|
|
|
+ message: '买方名称长度不符合要求,请输入30个字符之内!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.settlementMethod) {
|
|
|
+ this.$message({
|
|
|
+ message: '结算方式不能为空',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ this.deptBudgetList.settlementMethod.length < 1 ||
|
|
|
+ this.deptBudgetList.settlementMethod.length > 20
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '结算方式长度不符合要求,请输入1到20个字符之内!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.seller) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入卖方名称!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (this.deptBudgetList.seller.length > 30) {
|
|
|
+ this.$message({
|
|
|
+ message: '卖方名称长度不符合要求,请输入30个字符之内!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.buyerPhone) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入买方电话!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (isNaN(this.deptBudgetList.buyerPhone)) {
|
|
|
+ this.$message({
|
|
|
+ message: '输入买方电话有误!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ this.deptBudgetList.buyerPhone.length < 7 ||
|
|
|
+ this.deptBudgetList.buyerPhone.length > 20
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '买方电话长度不符合要求,请输入7到20个字符之内!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.sellerPhone) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入卖方电话!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (isNaN(this.deptBudgetList.sellerPhone)) {
|
|
|
+ this.$message({
|
|
|
+ message: '输入卖方电话有误!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ this.deptBudgetList.sellerPhone.length < 7 ||
|
|
|
+ this.deptBudgetList.sellerPhone.length > 20
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '卖方电话长度不符合要求,请输入7到20个字符之内!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.acceptanceMethod) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择验收方式',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.weight) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入重量!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ isNaN(this.deptBudgetList.weight) ||
|
|
|
+ (String(this.deptBudgetList.weight).indexOf('.') != -1 &&
|
|
|
+ String(this.deptBudgetList.weight).length -
|
|
|
+ (String(this.deptBudgetList.weight).indexOf('.') + 1) >
|
|
|
+ 3) ||
|
|
|
+ this.deptBudgetList.weight < 0 ||
|
|
|
+ this.deptBudgetList.weight > 200000
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '输入重量有误!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.deliveryDateStart) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择交货日期(起)',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.overShort) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入溢短装!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ isNaN(this.deptBudgetList.overShort) ||
|
|
|
+ (String(this.deptBudgetList.overShort).indexOf('.') != -1 &&
|
|
|
+ String(this.deptBudgetList.overShort).length -
|
|
|
+ (String(this.deptBudgetList.overShort).indexOf('.') + 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.overShort < 0 ||
|
|
|
+ this.deptBudgetList.overShort > 50
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '溢短装输入有误!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.deliveryDateEnd) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择交货日期(止)',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //时间
|
|
|
+ if (
|
|
|
+ new Date(this.deptBudgetList.deliveryDateStart).getTime() >
|
|
|
+ new Date(this.deptBudgetList.deliveryDateEnd).getTime()
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '交货日期(止)选择错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.priceType) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择价格类型',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (this.deptBudgetList.priceType == '定价销售') {
|
|
|
+ if (!this.deptBudgetList.unitContractPrice) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入合同单价!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ isNaN(this.deptBudgetList.unitContractPrice) ||
|
|
|
+ (String(this.deptBudgetList.unitContractPrice).indexOf('.') != -1 &&
|
|
|
+ String(this.deptBudgetList.unitContractPrice).length -
|
|
|
+ (String(this.deptBudgetList.unitContractPrice).indexOf('.') + 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.unitContractPrice <= 0 ||
|
|
|
+ this.deptBudgetList.unitContractPrice > 10000
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '合同单价输入有误!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.totalContractPrice) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入合同总价!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ isNaN(this.deptBudgetList.totalContractPrice) ||
|
|
|
+ (String(this.deptBudgetList.totalContractPrice).indexOf('.') != -1 &&
|
|
|
+ String(this.deptBudgetList.totalContractPrice).length -
|
|
|
+ (String(this.deptBudgetList.totalContractPrice).indexOf('.') +
|
|
|
+ 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.totalContractPrice <= 0 ||
|
|
|
+ this.deptBudgetList.totalContractPrice > 1000000000
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '合同总价输入有误!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!this.newSelectedOptions) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择货源所在地区!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.sourceGoods) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入货源详细地址!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.newSelectedOptions1) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择交货所在地区!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.placeDelivery) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入交货详细地址!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.signingDate) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择签订日期',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ isNaN(this.deptBudgetList.finalTradingVolume) ||
|
|
|
+ (String(this.deptBudgetList.finalTradingVolume).indexOf('.') != -1 &&
|
|
|
+ String(this.deptBudgetList.finalTradingVolume).length -
|
|
|
+ (String(this.deptBudgetList.finalTradingVolume).indexOf('.') + 1) >
|
|
|
+ 3) ||
|
|
|
+ this.deptBudgetList.finalTradingVolume < 0 ||
|
|
|
+ this.deptBudgetList.finalTradingVolume > 200000
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '最终实际成交量有误!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //货物信息
|
|
|
+ if (!this.deptBudgetList.contractGoodsInfo.goodsName) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择货名',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.contractGoodsInfo.waterContent) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入水分',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ (this.deptBudgetList.contractGoodsInfo.waterContent &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.waterContent).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.waterContent).length -
|
|
|
+ (String(this.deptBudgetList.contractGoodsInfo.waterContent).indexOf(
|
|
|
+ '.'
|
|
|
+ ) +
|
|
|
+ 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.waterContent > 40 ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.waterContent < 0
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '水分输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.contractGoodsInfo.grade) {
|
|
|
+ this.$message({
|
|
|
+ message: '请选择品级',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.contractGoodsInfo.impurity) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入杂质',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ (this.deptBudgetList.contractGoodsInfo.impurity &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.impurity).indexOf('.') !=
|
|
|
+ -1 &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.impurity).length -
|
|
|
+ (String(this.deptBudgetList.contractGoodsInfo.impurity).indexOf(
|
|
|
+ '.'
|
|
|
+ ) +
|
|
|
+ 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.impurity > 40 ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.impurity < 0
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '杂质输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.contractGoodsInfo.bulkDensity) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入容重',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ (this.deptBudgetList.contractGoodsInfo.bulkDensity &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.bulkDensity).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.bulkDensity).length -
|
|
|
+ (String(this.deptBudgetList.contractGoodsInfo.bulkDensity).indexOf(
|
|
|
+ '.'
|
|
|
+ ) +
|
|
|
+ 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.bulkDensity > 1000 ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.bulkDensity < 0
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '容重输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.contractGoodsInfo.mildewGrain) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入霉变粒',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ !this.deptBudgetList.contractGoodsInfo.mildewGrain ||
|
|
|
+ (String(this.deptBudgetList.contractGoodsInfo.mildewGrain).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.mildewGrain).length -
|
|
|
+ (String(this.deptBudgetList.contractGoodsInfo.mildewGrain).indexOf(
|
|
|
+ '.'
|
|
|
+ ) +
|
|
|
+ 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.mildewGrain > 40 ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.mildewGrain < 0
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '霉变粒输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.contractGoodsInfo.jiaorenli) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入热损伤',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ !this.deptBudgetList.contractGoodsInfo.jiaorenli ||
|
|
|
+ (String(this.deptBudgetList.contractGoodsInfo.jiaorenli).indexOf('.') !=
|
|
|
+ -1 &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.jiaorenli).length -
|
|
|
+ (String(this.deptBudgetList.contractGoodsInfo.jiaorenli).indexOf(
|
|
|
+ '.'
|
|
|
+ ) +
|
|
|
+ 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.jiaorenli > 40 ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.jiaorenli < 0
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '热损伤输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!this.deptBudgetList.contractGoodsInfo.imperfectGrain) {
|
|
|
+ this.$message({
|
|
|
+ message: '请输入不完善粒',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ !this.deptBudgetList.contractGoodsInfo.imperfectGrain ||
|
|
|
+ (String(this.deptBudgetList.contractGoodsInfo.imperfectGrain).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractGoodsInfo.imperfectGrain).length -
|
|
|
+ (String(
|
|
|
+ this.deptBudgetList.contractGoodsInfo.imperfectGrain
|
|
|
+ ).indexOf('.') +
|
|
|
+ 1) >
|
|
|
+ 2) ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.imperfectGrain > 40 ||
|
|
|
+ this.deptBudgetList.contractGoodsInfo.imperfectGrain < 0
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '不完善粒输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ !this.deptBudgetList.contractProcessInfo.goodsNameKey > 1000000000 ||
|
|
|
+ this.deptBudgetList.contractProcessInfo.goodsNameKey < 100 ||
|
|
|
+ (String(this.deptBudgetList.contractProcessInfo.goodsNameKey).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractProcessInfo.goodsNameKey).length -
|
|
|
+ (String(
|
|
|
+ this.deptBudgetList.contractProcessInfo.goodsNameKey
|
|
|
+ ).indexOf('.') +
|
|
|
+ 1) >
|
|
|
+ 2)
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '合同收入金额输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ this.deptBudgetList.contractProcessInfo.waterContent > 10000000 ||
|
|
|
+ this.deptBudgetList.contractProcessInfo.waterContent < 0 ||
|
|
|
+ (String(this.deptBudgetList.contractProcessInfo.waterContent).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractProcessInfo.waterContent).length -
|
|
|
+ (String(
|
|
|
+ this.deptBudgetList.contractProcessInfo.waterContent
|
|
|
+ ).indexOf('.') +
|
|
|
+ 1) >
|
|
|
+ 2)
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '费用支出输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ (this.deptBudgetList.contractProcessInfo.goodsName > 1000000000) |
|
|
|
+ (this.deptBudgetList.contractProcessInfo.goodsName < 0) ||
|
|
|
+ (String(this.deptBudgetList.contractProcessInfo.goodsName).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractProcessInfo.goodsName).length -
|
|
|
+ (String(this.deptBudgetList.contractProcessInfo.goodsName).indexOf(
|
|
|
+ '.'
|
|
|
+ ) +
|
|
|
+ 1) >
|
|
|
+ 2)
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '已开发票金额输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ (this.deptBudgetList.contractProcessInfo.impurity > 1000000000) |
|
|
|
+ (this.deptBudgetList.contractProcessInfo.impurity < 0) ||
|
|
|
+ (String(this.deptBudgetList.contractProcessInfo.impurity).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractProcessInfo.impurity).length -
|
|
|
+ (String(this.deptBudgetList.contractProcessInfo.impurity).indexOf(
|
|
|
+ '.'
|
|
|
+ ) +
|
|
|
+ 1) >
|
|
|
+ 2)
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '未开发票金额输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ (!this.deptBudgetList.contractProcessInfo.mildewGrain > 1000000000) |
|
|
|
+ (this.deptBudgetList.contractProcessInfo.mildewGrain < 0) ||
|
|
|
+ (String(this.deptBudgetList.contractProcessInfo.mildewGrain).indexOf(
|
|
|
+ '.'
|
|
|
+ ) != -1 &&
|
|
|
+ String(this.deptBudgetList.contractProcessInfo.mildewGrain).length -
|
|
|
+ (String(
|
|
|
+ this.deptBudgetList.contractProcessInfo.mildewGrain
|
|
|
+ ).indexOf('.') +
|
|
|
+ 1) >
|
|
|
+ 2)
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '未回款金额输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.$refs.deptBudgetList.validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ this.deptBudgetList.sourceProvince =
|
|
|
+ CodeToText[this.selectedOptions[0]]
|
|
|
+ this.deptBudgetList.sourceCity = CodeToText[this.selectedOptions[1]]
|
|
|
+
|
|
|
+ this.deptBudgetList.deliveryProvince =
|
|
|
+ CodeToText[this.selectedOptions1[0]]
|
|
|
+ this.deptBudgetList.deliveryCity =
|
|
|
+ CodeToText[this.selectedOptions1[1]]
|
|
|
+
|
|
|
+ this.deptBudgetList.compId = this.compId
|
|
|
+ this.deptBudgetList.contractType = 1
|
|
|
+ this.deptBudgetList.goodsType = 1
|
|
|
+
|
|
|
+ if (
|
|
|
+ this.deptBudgetList.deliveryProvince == '澳门特别行政区' ||
|
|
|
+ this.deptBudgetList.deliveryProvince == '澳门特别行政区'
|
|
|
+ ) {
|
|
|
+ this.deptBudgetList.deliveryArea = '特别行政区'
|
|
|
+ } else {
|
|
|
+ this.deptBudgetList.deliveryArea =
|
|
|
+ CodeToText[this.selectedOptions1[2]]
|
|
|
+ }
|
|
|
+ if (
|
|
|
+ this.deptBudgetList.sourceProvince == '澳门特别行政区' ||
|
|
|
+ this.deptBudgetList.sourceProvince == '澳门特别行政区'
|
|
|
+ ) {
|
|
|
+ this.deptBudgetList.sourceArea = '特别行政区'
|
|
|
+ } else {
|
|
|
+ this.deptBudgetList.sourceArea = CodeToText[this.selectedOptions[2]]
|
|
|
+ }
|
|
|
+ addList(this.deptBudgetList)
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.$message.success('添加成功')
|
|
|
+ this.deptBudgetList = {
|
|
|
+ deliverType: '1',
|
|
|
+ agreementType: '销售合同',
|
|
|
+ finalTradingVolume: 0,
|
|
|
+ totalContractPrice: 0,
|
|
|
+ contractGoodsInfo: {
|
|
|
+ goodsName: '',
|
|
|
+ },
|
|
|
+ contractProcessInfo: {},
|
|
|
+ }
|
|
|
+
|
|
|
+ this.$router.push({
|
|
|
+ path: 'salesContract',
|
|
|
+ })
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ resetForm(deptBudgetList) {
|
|
|
+ this.$refs[deptBudgetList].resetFields()
|
|
|
+ },
|
|
|
+ saveClick(item, index) {
|
|
|
+ console.log(item)
|
|
|
+
|
|
|
+ if (Object.is(item.id, 1)) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (Object.is(this.unitList[index].flag, 'delete')) {
|
|
|
+ this.$set(this.unitList, index, {
|
|
|
+ flag: 'check',
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.$set(this.unitList, index, {
|
|
|
+ flag: 'delete',
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if (!item.constValue) {
|
|
|
+ this.unitList.splice(index, 1)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (item.flag == 'add') {
|
|
|
+ item.constKey = Math.random() * 20
|
|
|
+ this.trainingMethods.compId = sessionStorage.getItem('ws-pf_compId')
|
|
|
+ this.trainingMethods.constKey = item.constKey
|
|
|
+ this.trainingMethods.constCode = 'TYPEYAN'
|
|
|
+ this.trainingMethods.constValue = item.constValue
|
|
|
+ this.trainingMethods.id = item.id
|
|
|
+ addxiala(this.trainingMethods)
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.getUnitList()
|
|
|
+ })
|
|
|
+ } else if (item.flag == 'check') {
|
|
|
+ this.trainingMethods.compId = sessionStorage.getItem('ws-pf_compId')
|
|
|
+ this.trainingMethods.constKey = item.constKey
|
|
|
+ this.trainingMethods.constCode = 'TYPEYAN'
|
|
|
+ this.trainingMethods.constValue = item.constValue
|
|
|
+ this.trainingMethods.id = item.id
|
|
|
+ editxiala(this.trainingMethods)
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.getUnitList()
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handleExamine() {},
|
|
|
+ approve() {},
|
|
|
+ addClick() {
|
|
|
+ this.unitList.push({
|
|
|
+ flag: 'add',
|
|
|
+ constValue: '',
|
|
|
+ constKey: '',
|
|
|
+ })
|
|
|
+ },
|
|
|
+ selectChapterTwo(e) {
|
|
|
+ for (var i = 0; i < this.ChapterTwoList.length; i++) {
|
|
|
+ if (this.ChapterTwoList[i].constValue == e) {
|
|
|
+ this.deptBudgetList.gradeKey = this.ChapterTwoList[i].constKey
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ selectunitList(e) {
|
|
|
+ for (var i = 0; i < this.unitList.length; i++) {
|
|
|
+ if (this.unitList[i].constValue == e) {
|
|
|
+ this.deptBudgetList.packingMethodKey = this.unitList[i].constKey
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ selectgrade(e) {
|
|
|
+ for (var i = 0; i < this.gradeList.length; i++) {
|
|
|
+ if (this.gradeList[i].constValue == e) {
|
|
|
+ this.deptBudgetList.gradeKey = this.gradeList[i].constKey
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ selectgoodsName(e) {
|
|
|
+ for (var i = 0; i < this.goodnameList.length; i++) {
|
|
|
+ if (this.goodnameList[i].constValue == e) {
|
|
|
+ this.deptBudgetList.goodsNameKey = this.goodnameList[i].constKey
|
|
|
+ this.deptBudgetList.contractGoodsInfo.goodsNameKey =
|
|
|
+ this.goodnameList[i].constKey
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ selectpackingMethod(e) {
|
|
|
+ for (var i = 0; i < this.packtypeList.length; i++) {
|
|
|
+ if (this.packtypeList[i].constValue == e) {
|
|
|
+ this.deptBudgetList.acceptanceMethodKey =
|
|
|
+ this.packtypeList[i].constKey
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ selectpriceType(e) {},
|
|
|
+ weightchange(e) {
|
|
|
+ this.deptBudgetList.finalTradingVolume = e
|
|
|
+ },
|
|
|
+ pricechange(e) {
|
|
|
+ this.deptBudgetList.totalContractPrice = e * this.deptBudgetList.weight
|
|
|
+ },
|
|
|
+ // 编辑
|
|
|
+ editClick(item, index) {
|
|
|
+ const map = JSON.parse(JSON.stringify(item))
|
|
|
+ if (Object.is(item.id, 1)) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (Object.is(this.unitList[index].flag, 'delete')) {
|
|
|
+ map.flag = 'check'
|
|
|
+ this.$set(this.unitList, index, map)
|
|
|
+ } else {
|
|
|
+ map.flag = 'delete'
|
|
|
+ this.$set(this.unitList, index, map)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 删除
|
|
|
+ deleteClick(item, index) {
|
|
|
+ if (Object.is(item.constKey, 1)) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (!item.constValue) {
|
|
|
+ this.unitList.splice(index, 1)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ delxiala({
|
|
|
+ id: this.unitList[index].id,
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.getUnitList()
|
|
|
+ this.pleaseChoose = ''
|
|
|
+ })
|
|
|
+ },
|
|
|
+ },
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
- /deep/.ws-info-table .el-form-item .el-form-item__content {
|
|
|
- padding: 0 25px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.ws-info-table .el-form-item {
|
|
|
- border-right: 1px solid #cdd2dc;
|
|
|
- border-bottom: 1px solid #cdd2dc;
|
|
|
- }
|
|
|
-
|
|
|
- .title {
|
|
|
- position: relative;
|
|
|
- }
|
|
|
-
|
|
|
- .title::before {
|
|
|
- content: '';
|
|
|
- display: inline-block;
|
|
|
- width: 5px;
|
|
|
- height: 30px;
|
|
|
- background: #5473e8;
|
|
|
- position: absolute;
|
|
|
- left: 0;
|
|
|
- }
|
|
|
-
|
|
|
- .el-button--primary {
|
|
|
- background-color: #5878e8;
|
|
|
- border-color: #5878e8;
|
|
|
- }
|
|
|
-
|
|
|
- .upload-demo {
|
|
|
- margin-top: 10px;
|
|
|
- }
|
|
|
-
|
|
|
- .el-col {
|
|
|
- background: #f6f7fc;
|
|
|
- }
|
|
|
-
|
|
|
- .readonly {
|
|
|
- position: relative;
|
|
|
- }
|
|
|
-
|
|
|
- .readonly:after {
|
|
|
- content: '*';
|
|
|
- color: #ff2727;
|
|
|
- position: absolute;
|
|
|
- right: 8px;
|
|
|
- z-index: 10;
|
|
|
- top: 21%;
|
|
|
- font-size: 20px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.ws-info-table .el-form-item .el-form-item__content {
|
|
|
- padding: 0 25px;
|
|
|
- border-left: 1px solid #cdd2dc;
|
|
|
- background: #fafbfc;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.ws-info-table .el-form-item .el-form-item__label {
|
|
|
- width: 140px;
|
|
|
- text-align: center;
|
|
|
- background: #f0f2f6;
|
|
|
- // border: 1px solid #cdd2dc;
|
|
|
- }
|
|
|
-
|
|
|
- .button-container {
|
|
|
- display: flex;
|
|
|
- flex-wrap: nowrap;
|
|
|
- justify-content: space-between;
|
|
|
- align-items: center;
|
|
|
- background-color: #fff;
|
|
|
- width: 100%;
|
|
|
- height: 50px;
|
|
|
- padding: 0 10px;
|
|
|
-
|
|
|
- &>div {
|
|
|
- margin-left: 10px;
|
|
|
- display: flex;
|
|
|
- flex-wrap: nowrap;
|
|
|
- flex-direction: row;
|
|
|
-
|
|
|
- &>span {
|
|
|
- line-height: 50px;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.auditFlow-box {
|
|
|
- position: unset;
|
|
|
- margin-left: 10px;
|
|
|
-
|
|
|
- &/deep/.auditFlow-icon {
|
|
|
- width: auto;
|
|
|
- padding-right: 30px;
|
|
|
- }
|
|
|
-
|
|
|
- &/deep/.auditFlow-main {
|
|
|
- position: absolute;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- .box-app {
|
|
|
- display: inline-block;
|
|
|
- float: left;
|
|
|
- margin-left: 30px;
|
|
|
- line-height: 50px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.el-dialog {
|
|
|
- .el-form-item {
|
|
|
- margin-bottom: 0 !important;
|
|
|
-
|
|
|
- .el-input--medium {
|
|
|
- textarea {
|
|
|
- min-height: 100px !important;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- .collapse-bottom {
|
|
|
- margin-bottom: 20px;
|
|
|
- }
|
|
|
-
|
|
|
- .input-main .textarea .el-textarea__inner {
|
|
|
- width: 100%;
|
|
|
- z-index: 1;
|
|
|
- }
|
|
|
-
|
|
|
- .bg-left {
|
|
|
- padding-left: 30px;
|
|
|
- }
|
|
|
-
|
|
|
- .bg-right {
|
|
|
- padding-right: 10px;
|
|
|
- text-align: right;
|
|
|
- }
|
|
|
-
|
|
|
- .bg-bottom {
|
|
|
- margin: 16px 0px;
|
|
|
- }
|
|
|
-
|
|
|
- .wenzi {
|
|
|
- width: 70%;
|
|
|
- margin: 0 auto;
|
|
|
- }
|
|
|
-
|
|
|
- .wenzi h3 {
|
|
|
- display: inline-block;
|
|
|
- left: 10px;
|
|
|
- }
|
|
|
-
|
|
|
- .wenzi p {
|
|
|
- display: inline-block;
|
|
|
- }
|
|
|
-
|
|
|
- .center {
|
|
|
- width: 70%;
|
|
|
- margin: 0 auto;
|
|
|
- }
|
|
|
-
|
|
|
- .el-form-item {
|
|
|
- width: 50%;
|
|
|
- }
|
|
|
-
|
|
|
- .el-form-item__label {
|
|
|
- text-align: center;
|
|
|
- }
|
|
|
-
|
|
|
- .ce {
|
|
|
- width: 70%;
|
|
|
- margin: 0 auto;
|
|
|
- }
|
|
|
-
|
|
|
- /*.crt-main .textarea /deep/ .el-form-item__label {*/
|
|
|
- /* height: 82px;*/
|
|
|
- /*}*/
|
|
|
- // 控制select为只读的时候显示样式
|
|
|
-
|
|
|
- .hide-sel {
|
|
|
- .el-input__inner {
|
|
|
- border: 0px;
|
|
|
- }
|
|
|
-
|
|
|
- .el-icon-arrow-up {
|
|
|
- display: none;
|
|
|
- }
|
|
|
-
|
|
|
- .el-textarea__inner {
|
|
|
- background-color: #fff !important;
|
|
|
- border: 0;
|
|
|
- }
|
|
|
-
|
|
|
- .el-date-editor {
|
|
|
- i {
|
|
|
- display: none;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- .is-disabled {
|
|
|
- .el-input__inner:hover {
|
|
|
- background-color: #fff !important;
|
|
|
- border: 0;
|
|
|
- }
|
|
|
-
|
|
|
- color: #606266;
|
|
|
-
|
|
|
- .el-input__inner {
|
|
|
- background-color: #fff !important;
|
|
|
- border: 0;
|
|
|
- color: #606266;
|
|
|
- }
|
|
|
-
|
|
|
- .el-textarea__inner {
|
|
|
- background-color: #fff !important;
|
|
|
- border: 0;
|
|
|
- color: #606266;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.ws-info-table .el-form-item .el-form-item__label {
|
|
|
- width: 130px;
|
|
|
- }
|
|
|
-
|
|
|
- //*号
|
|
|
- .unchangeable {
|
|
|
- position: absolute;
|
|
|
- width: 9px;
|
|
|
- height: 22px;
|
|
|
- font-size: 16px;
|
|
|
- font-family: PingFangSC-Medium, PingFang SC;
|
|
|
- font-weight: 500;
|
|
|
- color: #ff2727;
|
|
|
- line-height: 22px;
|
|
|
- display: inline-block;
|
|
|
- right: 14px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.el-input,
|
|
|
- /deep/.el-date-editor {
|
|
|
- font-size: 13px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.el-textarea {
|
|
|
- width: 101%;
|
|
|
- margin: 0px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/el-date-editor--date {
|
|
|
- width: 200px;
|
|
|
- }
|
|
|
-
|
|
|
- .unchanged {
|
|
|
- position: absolute;
|
|
|
- left: 37px;
|
|
|
- width: 102px;
|
|
|
- height: 14px;
|
|
|
- font-size: 14px;
|
|
|
- font-family: PingFangSC-Regular, PingFang SC;
|
|
|
- font-weight: 400;
|
|
|
- color: #afb5cb;
|
|
|
- line-height: 14px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.el-input--small .el-input__inner {
|
|
|
- height: 32px;
|
|
|
- line-height: 32px;
|
|
|
- }
|
|
|
-
|
|
|
- // 控制select为只读的时候显示样式
|
|
|
- /deep/.ws-class-table-col {
|
|
|
- height: auto;
|
|
|
- padding: 0px 2px;
|
|
|
-
|
|
|
- /deep/.el-input__inner {
|
|
|
- padding: 0px 2px;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.is-disabled {
|
|
|
- .el-input__prefix,
|
|
|
- .el-input__suffix {
|
|
|
- display: none;
|
|
|
- }
|
|
|
-
|
|
|
- .el-input__inner {
|
|
|
- background-color: #fff;
|
|
|
- border-color: #fff !important;
|
|
|
- color: #000 !important;
|
|
|
- font-size: 14px;
|
|
|
- cursor: text;
|
|
|
- padding: 0 !important;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- .winseaview-view {
|
|
|
- padding: 0 0 20px;
|
|
|
- }
|
|
|
-
|
|
|
- .container {
|
|
|
- overflow: scroll;
|
|
|
- height: 93vh;
|
|
|
- }
|
|
|
-
|
|
|
- .addressUrls {
|
|
|
- width: 100%;
|
|
|
- display: flex;
|
|
|
- margin-top: 10px;
|
|
|
- }
|
|
|
-
|
|
|
- .addressUrls-item {
|
|
|
- position: relative;
|
|
|
- display: flex;
|
|
|
- }
|
|
|
-
|
|
|
- .icon-guanbi {
|
|
|
- position: absolute;
|
|
|
- right: 8px;
|
|
|
- }
|
|
|
-
|
|
|
- .addressUrl {
|
|
|
- margin: 0px 10px;
|
|
|
- border-radius: 3px;
|
|
|
- }
|
|
|
-
|
|
|
- //上传文件成功标识
|
|
|
- /deep/.el-upload-list__item-status-label {
|
|
|
- position: absolute;
|
|
|
- right: 22px;
|
|
|
- top: -1px;
|
|
|
- line-height: inherit;
|
|
|
- display: none;
|
|
|
- }
|
|
|
-
|
|
|
- .map {
|
|
|
- position: fixed;
|
|
|
- top: 0;
|
|
|
- bottom: 0;
|
|
|
- left: 0;
|
|
|
- right: 0;
|
|
|
- margin: auto;
|
|
|
- width: 800px;
|
|
|
- height: 400px;
|
|
|
- background: gainsboro;
|
|
|
- border-radius: 20px;
|
|
|
- padding: 10px;
|
|
|
- box-sizing: border-box;
|
|
|
- z-index: 99;
|
|
|
- }
|
|
|
-
|
|
|
- .amap-container {
|
|
|
- width: 100% !important;
|
|
|
- }
|
|
|
-
|
|
|
- .address-btn {
|
|
|
- width: 100%;
|
|
|
- text-align: left;
|
|
|
- }
|
|
|
+/deep/.ws-info-table .el-form-item .el-form-item__content {
|
|
|
+ padding: 0 25px;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.ws-info-table .el-form-item {
|
|
|
+ border-right: 1px solid #cdd2dc;
|
|
|
+ border-bottom: 1px solid #cdd2dc;
|
|
|
+}
|
|
|
+
|
|
|
+.title {
|
|
|
+ position: relative;
|
|
|
+}
|
|
|
+
|
|
|
+.title::before {
|
|
|
+ content: '';
|
|
|
+ display: inline-block;
|
|
|
+ width: 5px;
|
|
|
+ height: 30px;
|
|
|
+ background: #5473e8;
|
|
|
+ position: absolute;
|
|
|
+ left: 0;
|
|
|
+}
|
|
|
+
|
|
|
+.el-button--primary {
|
|
|
+ background-color: #5878e8;
|
|
|
+ border-color: #5878e8;
|
|
|
+}
|
|
|
+
|
|
|
+.upload-demo {
|
|
|
+ margin-top: 10px;
|
|
|
+}
|
|
|
+
|
|
|
+.el-col {
|
|
|
+ background: #f6f7fc;
|
|
|
+}
|
|
|
+
|
|
|
+.readonly {
|
|
|
+ position: relative;
|
|
|
+}
|
|
|
+
|
|
|
+.readonly:after {
|
|
|
+ content: '*';
|
|
|
+ color: #ff2727;
|
|
|
+ position: absolute;
|
|
|
+ right: 8px;
|
|
|
+ z-index: 10;
|
|
|
+ top: 21%;
|
|
|
+ font-size: 20px;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.ws-info-table .el-form-item .el-form-item__content {
|
|
|
+ padding: 0 25px;
|
|
|
+ border-left: 1px solid #cdd2dc;
|
|
|
+ background: #fafbfc;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.ws-info-table .el-form-item .el-form-item__label {
|
|
|
+ width: 140px;
|
|
|
+ text-align: center;
|
|
|
+ background: #f0f2f6;
|
|
|
+ // border: 1px solid #cdd2dc;
|
|
|
+}
|
|
|
+
|
|
|
+.button-container {
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: nowrap;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ background-color: #fff;
|
|
|
+ width: 100%;
|
|
|
+ height: 50px;
|
|
|
+ padding: 0 10px;
|
|
|
+
|
|
|
+ & > div {
|
|
|
+ margin-left: 10px;
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: nowrap;
|
|
|
+ flex-direction: row;
|
|
|
+
|
|
|
+ & > span {
|
|
|
+ line-height: 50px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /deep/.auditFlow-box {
|
|
|
+ position: unset;
|
|
|
+ margin-left: 10px;
|
|
|
+
|
|
|
+ &/deep/.auditFlow-icon {
|
|
|
+ width: auto;
|
|
|
+ padding-right: 30px;
|
|
|
+ }
|
|
|
+
|
|
|
+ &/deep/.auditFlow-main {
|
|
|
+ position: absolute;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+.box-app {
|
|
|
+ display: inline-block;
|
|
|
+ float: left;
|
|
|
+ margin-left: 30px;
|
|
|
+ line-height: 50px;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.el-dialog {
|
|
|
+ .el-form-item {
|
|
|
+ margin-bottom: 0 !important;
|
|
|
+
|
|
|
+ .el-input--medium {
|
|
|
+ textarea {
|
|
|
+ min-height: 100px !important;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+.collapse-bottom {
|
|
|
+ margin-bottom: 20px;
|
|
|
+}
|
|
|
+
|
|
|
+.input-main .textarea .el-textarea__inner {
|
|
|
+ width: 100%;
|
|
|
+ z-index: 1;
|
|
|
+}
|
|
|
+
|
|
|
+.bg-left {
|
|
|
+ padding-left: 30px;
|
|
|
+}
|
|
|
+
|
|
|
+.bg-right {
|
|
|
+ padding-right: 10px;
|
|
|
+ text-align: right;
|
|
|
+}
|
|
|
+
|
|
|
+.bg-bottom {
|
|
|
+ margin: 16px 0px;
|
|
|
+}
|
|
|
+
|
|
|
+.wenzi {
|
|
|
+ width: 70%;
|
|
|
+ margin: 0 auto;
|
|
|
+}
|
|
|
+
|
|
|
+.wenzi h3 {
|
|
|
+ display: inline-block;
|
|
|
+ left: 10px;
|
|
|
+}
|
|
|
+
|
|
|
+.wenzi p {
|
|
|
+ display: inline-block;
|
|
|
+}
|
|
|
+
|
|
|
+.center {
|
|
|
+ width: 70%;
|
|
|
+ margin: 0 auto;
|
|
|
+}
|
|
|
+
|
|
|
+.el-form-item {
|
|
|
+ width: 50%;
|
|
|
+}
|
|
|
+
|
|
|
+.el-form-item__label {
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+
|
|
|
+.ce {
|
|
|
+ width: 70%;
|
|
|
+ margin: 0 auto;
|
|
|
+}
|
|
|
+
|
|
|
+/*.crt-main .textarea /deep/ .el-form-item__label {*/
|
|
|
+/* height: 82px;*/
|
|
|
+/*}*/
|
|
|
+// 控制select为只读的时候显示样式
|
|
|
+
|
|
|
+.hide-sel {
|
|
|
+ .el-input__inner {
|
|
|
+ border: 0px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-icon-arrow-up {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-textarea__inner {
|
|
|
+ background-color: #fff !important;
|
|
|
+ border: 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-date-editor {
|
|
|
+ i {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .is-disabled {
|
|
|
+ .el-input__inner:hover {
|
|
|
+ background-color: #fff !important;
|
|
|
+ border: 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ color: #606266;
|
|
|
+
|
|
|
+ .el-input__inner {
|
|
|
+ background-color: #fff !important;
|
|
|
+ border: 0;
|
|
|
+ color: #606266;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-textarea__inner {
|
|
|
+ background-color: #fff !important;
|
|
|
+ border: 0;
|
|
|
+ color: #606266;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.ws-info-table .el-form-item .el-form-item__label {
|
|
|
+ width: 130px;
|
|
|
+}
|
|
|
+
|
|
|
+//*号
|
|
|
+.unchangeable {
|
|
|
+ position: absolute;
|
|
|
+ width: 9px;
|
|
|
+ height: 22px;
|
|
|
+ font-size: 16px;
|
|
|
+ font-family: PingFangSC-Medium, PingFang SC;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #ff2727;
|
|
|
+ line-height: 22px;
|
|
|
+ display: inline-block;
|
|
|
+ right: 14px;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.el-input,
|
|
|
+/deep/.el-date-editor {
|
|
|
+ font-size: 13px;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.el-textarea {
|
|
|
+ width: 101%;
|
|
|
+ margin: 0px;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/el-date-editor--date {
|
|
|
+ width: 200px;
|
|
|
+}
|
|
|
+
|
|
|
+.unchanged {
|
|
|
+ position: absolute;
|
|
|
+ left: 37px;
|
|
|
+ width: 102px;
|
|
|
+ height: 14px;
|
|
|
+ font-size: 14px;
|
|
|
+ font-family: PingFangSC-Regular, PingFang SC;
|
|
|
+ font-weight: 400;
|
|
|
+ color: #afb5cb;
|
|
|
+ line-height: 14px;
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.el-input--small .el-input__inner {
|
|
|
+ height: 32px;
|
|
|
+ line-height: 32px;
|
|
|
+}
|
|
|
+
|
|
|
+// 控制select为只读的时候显示样式
|
|
|
+/deep/.ws-class-table-col {
|
|
|
+ height: auto;
|
|
|
+ padding: 0px 2px;
|
|
|
+
|
|
|
+ /deep/.el-input__inner {
|
|
|
+ padding: 0px 2px;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/deep/.is-disabled {
|
|
|
+ .el-input__prefix,
|
|
|
+ .el-input__suffix {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+
|
|
|
+ .el-input__inner {
|
|
|
+ background-color: #fff;
|
|
|
+ border-color: #fff !important;
|
|
|
+ color: #000 !important;
|
|
|
+ font-size: 14px;
|
|
|
+ cursor: text;
|
|
|
+ padding: 0 !important;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+.winseaview-view {
|
|
|
+ padding: 0 0 20px;
|
|
|
+}
|
|
|
+
|
|
|
+.container {
|
|
|
+ overflow: scroll;
|
|
|
+ height: 93vh;
|
|
|
+}
|
|
|
+
|
|
|
+.addressUrls {
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ margin-top: 10px;
|
|
|
+}
|
|
|
+
|
|
|
+.addressUrls-item {
|
|
|
+ position: relative;
|
|
|
+ display: flex;
|
|
|
+}
|
|
|
+
|
|
|
+.icon-guanbi {
|
|
|
+ position: absolute;
|
|
|
+ right: 8px;
|
|
|
+}
|
|
|
+
|
|
|
+.addressUrl {
|
|
|
+ margin: 0px 10px;
|
|
|
+ border-radius: 3px;
|
|
|
+}
|
|
|
+
|
|
|
+//上传文件成功标识
|
|
|
+/deep/.el-upload-list__item-status-label {
|
|
|
+ position: absolute;
|
|
|
+ right: 22px;
|
|
|
+ top: -1px;
|
|
|
+ line-height: inherit;
|
|
|
+ display: none;
|
|
|
+}
|
|
|
+
|
|
|
+.map {
|
|
|
+ position: fixed;
|
|
|
+ top: 0;
|
|
|
+ bottom: 0;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ margin: auto;
|
|
|
+ width: 800px;
|
|
|
+ height: 400px;
|
|
|
+ background: gainsboro;
|
|
|
+ border-radius: 20px;
|
|
|
+ padding: 10px;
|
|
|
+ box-sizing: border-box;
|
|
|
+ z-index: 99;
|
|
|
+}
|
|
|
+
|
|
|
+.amap-container {
|
|
|
+ width: 100% !important;
|
|
|
+}
|
|
|
+
|
|
|
+.address-btn {
|
|
|
+ width: 100%;
|
|
|
+ text-align: left;
|
|
|
+}
|
|
|
</style>
|