From 5e5291e7c7978e4905b1249b7e562d689d89586d Mon Sep 17 00:00:00 2001
From: zuozhengqing <a13193816592@163.com>
Date: 星期二, 02 一月 2024 11:29:47 +0800
Subject: [PATCH] 出入库产品列表添加从..出库,到..位置
---
src/views/overview/AddOverviewDialog.vue | 65 ++++++++++++++++++++++++++------
src/views/overview/OverviewListView.vue | 10 ++++-
src/common/untils/request.js | 2
src/components/makepager/CommonFormTableView.vue | 28 +++++++++++++-
4 files changed, 87 insertions(+), 18 deletions(-)
diff --git a/src/common/untils/request.js b/src/common/untils/request.js
index 305a6f6..6bef5a9 100644
--- a/src/common/untils/request.js
+++ b/src/common/untils/request.js
@@ -25,7 +25,7 @@
prod:`//${window.location.hostname}:9080`,
test:`//192.168.20.119:9080`,
// 鎯宠烦鍒版湰鍦板惎鍔ㄧ殑鐧诲綍椤电殑璇濋渶瑕佹妸dev鏀规垚浣犳湰鍦伴」鐩矾寰�
- dev: `//192.168.20.158:8080`
+ dev: `//192.168.8.112:8080`
}
return loginPathMap[environmentType()]
diff --git a/src/components/makepager/CommonFormTableView.vue b/src/components/makepager/CommonFormTableView.vue
index fae8e86..26afa06 100644
--- a/src/components/makepager/CommonFormTableView.vue
+++ b/src/components/makepager/CommonFormTableView.vue
@@ -285,6 +285,25 @@
</template>
</div>
</el-form-item>
+ <!-- 浠� -->
+ <el-form-item v-else-if="item.formLocation" label=" " :prop="'tableData.' + scope.$index + '.' + item.prop">
+ <div class="custom-name">
+ <span v-if="scope.row.isEdit || scope.row.editable">{{ scope.row.formLocation }}</span>
+ <el-autocomplete
+ v-else
+ style="width: 100%"
+ v-model="scope.row.productCategory"
+ @focus="productTypeFocus"
+ :fetch-suggestions="
+ (queryString, callback) => {
+ querySearchAsync(queryString, callback, 'formLocation')
+ }
+ "
+ value-key="name"
+ @select="handleSelectClient('formLocation', $event)"
+ ></el-autocomplete>
+ </div>
+ </el-form-item>
<!-- 浜у搧绫诲埆 -->
<el-form-item
v-else-if="item.productType"
@@ -369,7 +388,7 @@
<slot name="tableButton" />
</el-table>
</el-form>
- <div v-if="!detailEnter && !isinventory && !islistingrules && !isReorder" style="margin: 10px">
+ <div v-if="!detailEnter && !isinventory && !isReorder" style="margin: 10px">
<el-button size="small" type="primary" @click="add">娣诲姞鏄庣粏琛�</el-button>
<!-- <el-button size="small" type="primary" @click="empty">娓呯┖</el-button> -->
</div>
@@ -458,7 +477,8 @@
locacionId: 0,
productName: "",
productId: "",
- initialPosition: ""
+ initialPosition: "",
+ formLocationList:[],
}
},
created() {
@@ -497,6 +517,7 @@
}
})
},
+ // 涓嬫媺鎼滅储
async handleSelectClient(value, item) {
this.$emit("selProductClick", value, item)
if (value === "product") {
@@ -527,6 +548,8 @@
restaurants = this.productNameOptions
} else if (value === "productType") {
restaurants = this.productTypeNameOptions
+ }else if(value==="formLocation"){
+ restaurants = this.selLocationOptions
}
var results = queryString ? restaurants.filter(this.createStateFilter(queryString, value)) : restaurants
cb(results)
@@ -573,6 +596,7 @@
}
})
},
+
// 浣嶇疆
async getLocationList() {
this.locacionName = ""
diff --git a/src/views/overview/AddOverviewDialog.vue b/src/views/overview/AddOverviewDialog.vue
index 9956ae6..e4cb86c 100644
--- a/src/views/overview/AddOverviewDialog.vue
+++ b/src/views/overview/AddOverviewDialog.vue
@@ -203,9 +203,10 @@
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item v-if="workType !== 1" label="婧愪綅缃�" prop="fromLocationId">
+ <el-form-item v-if="workType !== 1" label="婧愪綅缃�" prop="location">
<el-select
- v-model="editConfig.infomation.fromLocationId"
+ @change="rootLocationChange"
+ v-model="editConfig.infomation.location"
placeholder="璇烽�夋嫨"
size="mini"
style="width: 90%"
@@ -215,7 +216,7 @@
v-for="item in toLocationOptions"
:key="item.id"
:label="item.jointName"
- :value="item.id"
+ :value="{label:item.jointName,value:item.id}"
>
</el-option>
</el-select>
@@ -297,6 +298,8 @@
<!-- 鎿嶄綔 -->
<div v-if="activeName === 'first'">
<CommonFormTableView
+ ref="tableView"
+ :islistingrules="true"
:product-table-list="productTableList"
:detail-enter="!showFooter"
@inputContent="inputContent"
@@ -486,7 +489,7 @@
sourceNumber: [{ required: true, message: "璇疯緭鍏ユ潵婧愬崟鎹�", trigger: "blur" }],
operationDate: [{ required: true, message: "璇烽�夋嫨鏃ユ湡", trigger: "change" }],
toLocationId: [{ required: true, message: "璇烽�夋嫨浠撳簱浣嶇疆", trigger: "change" }],
- fromLocationId: [{ required: true, message: "璇烽�夋嫨婧愪綅缃�", trigger: "change" }],
+ location: [{ required: true, message: "璇烽�夋嫨婧愪綅缃�", trigger: "change" }],
operationTypeId: [{ required: true, message: "璇烽�夋嫨鍏ュ簱绫诲瀷", trigger: "change" }],
number: [{ required: true, validator: this.validateCheckCode, trigger: ["change", "blur"] }]
},
@@ -747,8 +750,19 @@
if (this.isNoProduct) {
this.$message.error("璇锋坊鍔犳槑缁嗚鎴栭�夋嫨浜у搧涓嶈兘涓虹┖")
} else {
- let requestUrl = this.editConfig.title === "鏂板缓" ? addOperation : updateOperation
let params = this.saveParams()
+ if(this.workType===2){
+ params.details.map((item)=>{
+ item.fromLocationId=item.fromLocationId.value
+ })
+ }else if(this.workType===3){
+ params.details.map((item)=>{
+ item.fromLocationId=item.fromLocationId.value
+ item.toLocationId=item.toLocationId.value
+ })
+ }
+ let requestUrl = this.editConfig.title === "鏂板缓" ? addOperation : updateOperation
+ // let params = this.saveParams()
requestUrl({
...params
}).then((res) => {
@@ -794,13 +808,13 @@
contacterID: contacterID,
contacterName: contacterName,
details: this.tableData,
- fromLocationId: data.fromLocationId || 0,
+ locationId: data.location.value || 0,
id: data.id,
number: data.number || "",
operationDate: data.operationDate || "",
operationTypeId: this.showOperationType ? data.operationTypeId : this.editConfig.operationTypeId,
operationTypeName: this.receiptType,
- sourceNumber: data.sourceNumber || "",
+ sourceNumber:data.sourceNumber || "" ,
status: 3,
toLocationId: data.toLocationId || 0,
waybillNumber: data.waybillNumber || "",
@@ -843,16 +857,32 @@
this.tableData = []
}
// this.tableData = this.editConfig.title !== "鏂板缓" ? list : []
- this.productTableList = {
- tableData: this.tableData,
- tableColumn: [
+ let tableColumnArr=[]
+ if(this.workType===1){
+ tableColumnArr= [
{ label: "浜у搧", prop: "productName", productName: true, isRequird: true },
- // { label: "璇存槑", prop: "number", input: true },
- // { label: "鏃ユ湡", prop: "amount", date: true, isRequird: true },
- // { label: "鎴鏃ユ湡", prop: "price", date: true },
{ label: "鏁伴噺", prop: "amount", inputFloat: true },
{ label: "璁¢噺鍗曚綅", prop: "unit" }
]
+ }else if(this.workType===2){
+ tableColumnArr = [
+ { label: "浜у搧", prop: "productName", productName: true, isRequird: true },
+ { label: "浠�", prop: "fromLocationId", sonLocation: true, isRequird: true },
+ { label: "鏁伴噺", prop: "amount", inputFloat: true },
+ { label: "璁¢噺鍗曚綅", prop: "unit" }
+ ]
+ }else if(this.workType===3){
+ tableColumnArr = [
+ { label: "浜у搧", prop: "productName", productName: true, isRequird: true },
+ { label: "浠�", prop: "fromLocationId", sonLocation: true, isRequird: true },
+ { label: "鑷�", prop: "toLocationId", toLocation: true },
+ { label: "鏁伴噺", prop: "amount", inputFloat: true },
+ { label: "璁¢噺鍗曚綅", prop: "unit" }
+ ]
+ }
+ this.productTableList = {
+ tableData: this.tableData,
+ tableColumn: tableColumnArr
}
},
// 鎿嶄綔杈撳叆
@@ -1029,6 +1059,15 @@
console.error(error)
}
}
+ },
+ // 婧愪綅缃�夋嫨
+ rootLocationChange(val){
+ this.productTableList.tableData.map((item)=>{
+ console.log(item,"item")
+ item.toLocationId={}
+ item.fromLocationId={}
+ })
+ this.$refs.tableView.setLocationList(val.label)
}
}
}
diff --git a/src/views/overview/OverviewListView.vue b/src/views/overview/OverviewListView.vue
index 777378c..19b3bd4 100644
--- a/src/views/overview/OverviewListView.vue
+++ b/src/views/overview/OverviewListView.vue
@@ -247,8 +247,8 @@
const list = res.data.map((item) => {
return {
...item,
- from: item.fromLocation.name,
- to: item.toLocation.name
+ // from: item.fromLocation.name,
+ // to: item.toLocation.name
}
})
this.tableList.tableInfomation = list || []
@@ -268,6 +268,12 @@
this.editConfig.visible = true
this.editConfig.title = val
this.editConfig.operationTypeId = this.params.id
+ this.editConfig.code = this.params.code
+ row.details.map((item)=>{
+ item.fromLocationId=item.fromLocation.jointName
+ item.toLocationId=item.toLocation.jointName
+ })
+ row.locationID=row.location.jointName
this.editConfig.infomation = { ...row }
},
// 鏂板缓
--
Gitblit v1.8.0