From 4d6d23e986f1cc9fed61f3161c46b4f2be069fb7 Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期四, 23 十一月 2023 15:36:25 +0800 Subject: [PATCH] 新建收款计划增加收款期数 --- src/views/sales/salesDetails/AddSalesDetailsDialog.vue | 108 ++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 85 insertions(+), 23 deletions(-) diff --git a/src/views/sales/salesDetails/AddSalesDetailsDialog.vue b/src/views/sales/salesDetails/AddSalesDetailsDialog.vue index 4cead8b..30c0c34 100644 --- a/src/views/sales/salesDetails/AddSalesDetailsDialog.vue +++ b/src/views/sales/salesDetails/AddSalesDetailsDialog.vue @@ -27,10 +27,11 @@ <el-form-item label="鏄庣粏鍗曠紪鍙�" prop="number"> <el-input v-if=" + isView || editConfig.title == '缂栬緫' || (editConfig.title == '鏂板缓' && codenumer && (explain != '' || isIdDisabled)) " - :disabled="editConfig.title == '缂栬緫'" + :disabled="editConfig.title == '缂栬緫' || isView" v-model="editConfig.infomation.number" placeholder="璇疯緭鍏ョ紪鐮�" > @@ -65,16 +66,21 @@ " value-key="name" @select="handleSelectClient('client', $event)" - :disabled="isNameChanceEdit" + :disabled="isNameChanceEdit || isView" ></el-autocomplete> - <div v-if="!isNameChanceEdit" class="common-select-btn" @click="selClientClick('client')"> + <div + v-if="!isNameChanceEdit && !isView" + class="common-select-btn" + @click="selClientClick('client')" + > <i class="el-icon-circle-plus-outline" title="閫夋嫨"></i> </div> <div v-if=" editConfig.infomation.client_name && editConfig.infomation.client_name.length > 0 && - !isNameChanceEdit + !isNameChanceEdit && + !isView " class="common-select-btn" @click="clearupClient('client')" @@ -98,16 +104,21 @@ " value-key="name" @select="handleSelectClient('chance', $event)" - :disabled="isNameChanceEdit" + :disabled="isNameChanceEdit || isView" ></el-autocomplete> - <div v-if="!isNameChanceEdit" class="common-select-btn" @click="selClientClick('chance')"> + <div + v-if="!isNameChanceEdit && !isView" + class="common-select-btn" + @click="selClientClick('chance')" + > <i class="el-icon-circle-plus-outline"></i> </div> <div v-if=" editConfig.infomation.sale_chance_name && editConfig.infomation.sale_chance_name.length > 0 && - !isNameChanceEdit + !isNameChanceEdit && + !isView " class="common-select-btn" @click="clearupClient('chance')" @@ -163,16 +174,21 @@ @select="handleSelectClient('quotation', $event)" style="width: 100%" placeholder="璇峰厛閫夋嫨閿�鍞満浼�" - :disabled="isAddQuatation" + :disabled="isAddQuatation || isView" ></el-autocomplete> - <div v-if="!isAddQuatation" class="common-select-btn" @click="selClientClick('quotation')"> + <div + v-if="!isAddQuatation && !isView" + class="common-select-btn" + @click="selClientClick('quotation')" + > <i class="el-icon-circle-plus-outline" title="閫夋嫨"></i> </div> <div v-if=" editConfig.infomation.quotation_number && editConfig.infomation.quotation_number.length > 0 && - !isAddQuatation + !isAddQuatation && + !isView " class="common-select-btn" @click="clearupClient('quotation')" @@ -190,6 +206,7 @@ type="date" placeholder="閫夋嫨鏃ユ湡" style="width: 100%" + :disabled="isView" > </el-date-picker> </el-form-item> @@ -201,6 +218,7 @@ placeholder="璇烽�夋嫨" size="mini" style="width: 100%" + :disabled="isView" > <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id"> </el-option> @@ -215,6 +233,7 @@ type="date" placeholder="閫夋嫨鏃ユ湡" style="width: 100%" + :disabled="isView" > </el-date-picker> </el-form-item> @@ -226,8 +245,23 @@ placeholder="璇烽�夋嫨" size="mini" style="width: 100%" + :disabled="isView" > <el-option v-for="item in deliveryTypeList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="閫夋嫨椤圭洰" prop="projectId"> + <el-select + v-model="editConfig.infomation.projectId" + placeholder="璇烽�夋嫨" + size="mini" + style="width: 100%" + :disabled="isView" + > + <el-option v-for="item in projectList" :key="item.projectId" :label="item.projectName" :value="item.projectId"> </el-option> </el-select> </el-form-item> @@ -240,12 +274,12 @@ <el-row> <el-col :span="12"> <el-form-item label="鏀惰揣浜�" prop="addressee"> - <el-input v-model="editConfig.infomation.addressee"></el-input> + <el-input v-model="editConfig.infomation.addressee" :disabled="isView"></el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item label="鏀惰揣浜鸿仈绯绘柟寮�" prop="phone"> - <el-input v-model="editConfig.infomation.phone"></el-input> + <el-input v-model="editConfig.infomation.phone" :disabled="isView"></el-input> </el-form-item> </el-col> <el-col :span="12"> @@ -255,17 +289,18 @@ type="textarea" :autosize="{ minRows: 2 }" v-model="editConfig.infomation.address" + :disabled="isView" ></el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item label="鐗╂祦鍏徃" prop="logisticCompany"> - <el-input v-model="editConfig.infomation.logisticCompany"></el-input> + <el-input v-model="editConfig.infomation.logisticCompany" :disabled="isView"></el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item label="鐗╂祦鍗曞彿" prop="logisticNumber"> - <el-input v-model="editConfig.infomation.logisticNumber"></el-input> + <el-input v-model="editConfig.infomation.logisticNumber" :disabled="isView"></el-input> </el-form-item> </el-col> <el-col :span="12"> @@ -277,6 +312,7 @@ :precision="2" :controls="false" style="width: 100%; margin-right: 5px" + :disabled="isView" ></el-input-number> </el-form-item> </el-col> @@ -293,6 +329,7 @@ type="textarea" :autosize="{ minRows: 4 }" v-model="editConfig.infomation.conditions" + :disabled="isView" ></el-input> </el-form-item> </el-col> @@ -308,6 +345,7 @@ type="textarea" :autosize="{ minRows: 2 }" v-model="editConfig.infomation.remark" + :disabled="isView" ></el-input> </el-form-item> </el-col> @@ -345,7 +383,13 @@ 浜у搧绠$悊 <div style="margin-left: 400px"> 甯佺 - <el-select v-model="editConfig.infomation.currency" placeholder="璇烽�夋嫨" size="mini" style="width: 63%"> + <el-select + v-model="editConfig.infomation.currency" + placeholder="璇烽�夋嫨" + size="mini" + style="width: 63%" + :disabled="isView" + > <el-option v-for="item in currencyOptions" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> @@ -355,7 +399,7 @@ <CommonFormTableView ref="commonFormTableView" :detail-enter="true" - :select-box="true" + :select-box="selectBox" :show-summary="showSummary" :product-table-list="productTableList" @inputContent="inputContent" @@ -441,7 +485,7 @@ <script> import CommonFormTableView from "@/components/makepager/CommonFormTableView" import { getAllData } from "@/api/client/client" -import { getAddSalesDetails, getUpdateSalesDetails } from "@/api/sales/salesDetails" +import { getAddSalesDetails, getUpdateSalesDetails,getProjectList,sendSalesDetailsToApsProject } from "@/api/sales/salesDetails" import SelectClientDialog from "@/views/other/commonDialog/SelectClientDialog" import SelectChanceDialog from "@/views/other/commonDialog/SelectChanceDialog" import AddCollectionPlan from "@/views/other/payment/collectionPlan/AddCollectionPlan" @@ -491,7 +535,8 @@ signTime: [{ required: true, message: "璇烽�夋嫨绛剧害鏃ユ湡", trigger: "change" }], memberId: [{ required: true, message: "璇烽�夋嫨閿�鍞礋璐d汉", trigger: "change" }], sale_chance_name: [{ required: true, message: "璇烽�夋嫨閿�鍞満浼�", trigger: "change" }], - quotation_number: [{ required: true, message: "璇烽�夋嫨閿�鍞姤浠峰崟", trigger: "change" }] + quotation_number: [{ required: true, message: "璇烽�夋嫨閿�鍞姤浠峰崟", trigger: "change" }], + deliveryDate: [{ required: true, message: "璇烽�夋嫨浜や粯鏃ユ湡", trigger: "change" }], // approvalOpinion: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }] }, memberOptions: [], @@ -537,10 +582,14 @@ isAddQuatation: true, // 浜や粯绫诲瀷 deliveryTypeList: getDataByType("deliveryType"), + projectList:[], quotationList: [], quotationId: this.editCommonConfig.infomation.quotationId, tableData: [], - selProductData: [] + selProductData: [], + isView: this.editCommonConfig.title === "鏌ョ湅", + selectBox: this.editCommonConfig.title !== "鏌ョ湅", + thatMember:{} } }, created() { @@ -554,6 +603,7 @@ if (this.editConfig.title === "缂栬緫") { this.productTableList.tableData = this.editConfig.infomation.products } + this.getProjectList() }, watch: { "editClientManageConfig.visible"(val) { @@ -608,14 +658,13 @@ this.$message.error("璇烽�夋嫨浜у搧") } else { const params = this.saveParams() - console.log(params) if (this.editConfig.title === "鏂板缓") { getAddSalesDetails(params).then((res) => { console.log(res) this.editConfig.visible = false if (res.code === 200) { - this.tableData.map((item) => { - this.amountTotal += item.total + this.selProductData.map((item) => { + this.amountTotal += parseFloat(item.total) }) let config = { amountTotal: this.amountTotal, @@ -663,7 +712,9 @@ logisticCost: data.logisticCost || 0, logisticNumber: data.logisticNumber || "", quotationId: this.quotationId, - deliverType: data.deliverType || 0 + deliverType: data.deliverType || 0, + status: 1, + projectId:data.projectId||'' } let params = {} if (this.editConfig.title === "鏂板缓") { @@ -773,6 +824,7 @@ }, handleSelectClient(value, item) { if (value === "client") { + this.thatMember=item.member this.editConfig.infomation.subbill_name = "" this.editConfig.infomation.sale_chance_name = "" this.clientId = item.id @@ -880,6 +932,7 @@ { label: "浜у搧鍚嶇О", prop: "name", isRequird: true }, { label: "浜у搧缂栧彿", prop: "number" }, { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true }, + { label: "鍗曚綅", prop: "unit" }, { label: "閿�鍞崟浠�", prop: "price" }, { label: "浠风◣鍚堣", prop: "total" } ] @@ -897,6 +950,15 @@ // 閫夋嫨浜у搧 getSelectArray(val) { this.selProductData = val + }, + // 鑾峰彇椤圭洰鍒楄〃 + async getProjectList(){ + await getProjectList({ + page: 1, + pageSize: 100, + }).then((res) => { + this.projectList=res.data + }) } } } -- Gitblit v1.8.0