From 5c06e8d272b06f2c17bda89b163ac49ebdeac6bf Mon Sep 17 00:00:00 2001
From: zuozhengqing <a13193816592@163.com>
Date: 星期二, 14 十一月 2023 19:24:53 +0800
Subject: [PATCH] 修改上家规则列表
---
src/views/overview/AddOverviewDialog.vue | 290 +++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 205 insertions(+), 85 deletions(-)
diff --git a/src/views/overview/AddOverviewDialog.vue b/src/views/overview/AddOverviewDialog.vue
index 6f9807e..2097ac0 100644
--- a/src/views/overview/AddOverviewDialog.vue
+++ b/src/views/overview/AddOverviewDialog.vue
@@ -29,7 +29,6 @@
label-position="right"
label-width="120px"
size="mini"
- style="height: 60vh; overflow-x: hidden"
>
<div>
<!-- <div>aaa</div> -->
@@ -38,8 +37,10 @@
:isValidateClick="isValidateClick"
:isDelClick="isDelClick"
:list="list"
+ :showCancel="showCancel"
@delClick="delClick"
@validateClick="validateClick"
+ @btnCancel="btnCancel"
/>
</div>
<div class="basic-info">
@@ -47,7 +48,7 @@
<el-row>
<el-col :span="12">
<el-form-item prop="companyName">
- <span slot="label">{{ workType === 1 ? "瀹㈡埛" : workType === 2 ? "閫佽揣鍦板潃" : "鑱旂郴浜�" }}</span>
+ <span slot="label">{{ workType === 1 ? "渚涘簲鍟�" : workType === 2 ? "瀹㈡埛" : "鑱旂郴浜�" }}</span>
<el-select
v-model="editConfig.infomation.companyName"
placeholder="璇烽�夋嫨"
@@ -145,7 +146,12 @@
style="width: 90%"
:disabled="!showFooter"
>
- <el-option v-for="item in toLocationOptions" :key="item.id" :label="item.name" :value="item.id">
+ <el-option
+ v-for="item in toLocationOptions"
+ :key="item.id"
+ :label="item.jointName"
+ :value="item.id"
+ >
</el-option>
</el-select>
</el-form-item>
@@ -159,9 +165,60 @@
style="width: 90%"
:disabled="!showFooter"
>
- <el-option v-for="item in toLocationOptions" :key="item.id" :label="item.name" :value="item.id">
+ <el-option
+ v-for="item in toLocationOptions"
+ :key="item.id"
+ :label="item.jointName"
+ :value="item.id"
+ >
</el-option>
</el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="璐熻矗浜�" prop="contacterName">
+ <el-select
+ v-model="editConfig.infomation.contacterName"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 90%"
+ :disabled="!showFooter"
+ @change="contacterChange"
+ >
+ <el-option
+ v-for="item in memberOptions"
+ :key="item.id"
+ :label="item.name"
+ :value="{ value: item.id, label: item.name }"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="12">
+ <el-form-item v-if="workType !== 1" label="閫佽揣绛栫暐" prop="client_name">
+ <el-select
+ v-model="editConfig.infomation.memberId"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 90%"
+ :disabled="!showFooter"
+ >
+ <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="24">
+ <el-form-item label="澶囨敞" prop="comment">
+ <el-input
+ v-model.trim="editConfig.infomation.comment"
+ size="mini"
+ type="textarea"
+ style="width: 96%"
+ :autosize="{ minRows: 3 }"
+ :disabled="!showFooter"
+ ></el-input>
</el-form-item>
</el-col>
</el-row>
@@ -169,57 +226,8 @@
<div class="bottom">
<el-tabs v-model="activeName" type="card">
<!-- <el-tab-pane v-if="workType !== 1" label="璇︽儏" name="detail"> </el-tab-pane> -->
- <el-tab-pane label="鎿嶄綔" name="first"> </el-tab-pane>
- <el-tab-pane label="鍏朵粬淇℃伅" name="second">
- <div class="purchase-view">
- <div class="left">
- <div class="second-label">鍏朵粬淇℃伅</div>
- <!-- <el-form-item v-if="workType !== 1" label="閫佽揣绛栫暐" prop="client_name">
- <el-select
- v-model="editConfig.infomation.memberId"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 90%"
- :disabled="!showFooter"
- >
- <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
- </el-option>
- </el-select>
- </el-form-item> -->
- <el-form-item label="璐熻矗浜�" prop="contacterName">
- <el-select
- v-model="editConfig.infomation.contacterName"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 90%"
- :disabled="!showFooter"
- @change="contacterChange"
- >
- <el-option
- v-for="item in memberOptions"
- :key="item.id"
- :label="item.name"
- :value="{ value: item.id, label: item.name }"
- >
- </el-option>
- </el-select>
- </el-form-item>
- </div>
- <div class="right"></div>
- </div>
- </el-tab-pane>
- <el-tab-pane label="澶囨敞" name="third">
- <el-form-item label="澶囨敞" prop="comment">
- <el-input
- v-model.trim="editConfig.infomation.comment"
- size="mini"
- type="textarea"
- style="width: 85%"
- :autosize="{ minRows: 8 }"
- :disabled="!showFooter"
- ></el-input>
- </el-form-item>
- </el-tab-pane>
+ <el-tab-pane label="浜у搧" name="first"> </el-tab-pane>
+ <el-tab-pane label="鍙戣揣淇℃伅" name="two"></el-tab-pane>
</el-tabs>
<!-- 鎿嶄綔 -->
<div v-if="activeName === 'first'">
@@ -239,6 +247,30 @@
</el-table-column>
</template>
</CommonFormTableView>
+ </div>
+ <!-- 鍙戣揣淇℃伅 -->
+ <div v-if="activeName==='two'">
+ <el-form label-position="left" label-width="80px" :model="shipmentsInfo">
+ <el-form-item label="鎵胯繍鍟�" style="width: 50%;">
+ <el-select :disabled="!showFooter" v-model="editConfig.infomation.logisticCompanyId" placeholder="璇烽�夋嫨" style="width: 100%;">
+ <el-option
+ v-for="item in shipmentsInfo.carrier"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="杩愬崟鍙�" style="width: 50%;">
+ <el-input :disabled="!showFooter" v-model="editConfig.infomation.waybillNumber"></el-input>
+ </el-form-item>
+ <el-form-item label="閲嶉噺" style="width: 50%;">
+ <el-input :disabled="!showFooter" v-model="editConfig.infomation.weight"></el-input>
+ </el-form-item>
+ <el-form-item label="鐗╂祦閲嶉噺" style="width: 50%;">
+ <el-input :disabled="!showFooter" v-model="editConfig.infomation.logisticWeight"></el-input>
+ </el-form-item>
+ </el-form>
</div>
<!-- 璇︽儏 -->
<!-- <div v-if="activeName === 'detail'">
@@ -263,9 +295,9 @@
</div>
</el-form>
<!-- 灏� -->
- <div v-if="showFooter" slot="footer" class="dialog-footer">
+ <div slot="footer" class="dialog-footer">
<!-- <el-button type="primary" size="small" @click="editConfig.visible = false">淇濆苟鎻愪氦瀹℃壒</el-button> -->
- <el-button type="primary" size="small" @click="saveClick('form')">淇濆瓨</el-button>
+ <el-button type="primary" size="small" @click="saveClick('form')" :disabled="!showFooter">淇濆瓨</el-button>
<el-button size="small" @click="editConfig.visible = false">鍙栨秷</el-button>
</div>
</el-dialog>
@@ -279,8 +311,10 @@
addOperation,
updateOperation,
updateStatus,
+ stateCancel,
deleteOperation,
- getOperationType
+ getListTransfer,
+ getLogisticCompanyList
} from "@/api/overview/overview"
import { getCompanyList } from "@/api/common/other"
export default {
@@ -330,7 +364,8 @@
{ label: "鑽夌", status: "todo", value: 1 },
{ label: "姝e湪绛夊緟", status: "todo", value: 2 },
{ label: "灏辩华", status: "todo", value: 3 },
- { label: "瀹屾垚", status: "todo", value: 4 }
+ { label: "瀹屾垚", status: "todo", value: 4 },
+ { label: "宸插彇娑�", status: "todo", value: 5 }
],
showButton: true,
activeName: "first",
@@ -351,7 +386,14 @@
companyObj: {},
contacterObj: {},
isValidateClick: false, // 楠岃瘉鏄惁鏄剧ず
- operationTypeOptions: [] // 鍏ュ簱绫诲瀷鍒楄〃
+ operationTypeOptions: [], // 鍏ュ簱绫诲瀷鍒楄〃
+ shipmentsInfo: {
+ carrier:[],
+ waybillNumber:'',
+ weight:0,
+ logisticWeight:0,
+ },
+ showCancel:false, // 鍙栨秷鏄惁鍙互鏄剧ず
}
},
created() {
@@ -362,16 +404,17 @@
this.getLocationList()
this.receiptType = this.editConfig.title === "鏌ョ湅" ? this.editConfig.infomation.operationTypeName : this.addName
if (this.showOperationType) {
- this.getOperationType()
+ this.getListTransfer()
}
+ this.getLogisticCompanyList()
},
methods: {
// 鑾峰彇鍏徃鍒楄〃
async getCompanyList() {
await getCompanyList().then((res) => {
console.log(res)
- if (res.data.code === 200) {
- this.companyOptions = res.data.data
+ if (res.code === 200) {
+ this.companyOptions = res.data
}
})
},
@@ -379,6 +422,7 @@
async getLocationList() {
await getLocationList({
keyWord: "",
+ jointName: this.editConfig.code,
page: 0,
pageSize: 0
}).then((res) => {
@@ -389,15 +433,15 @@
})
},
// 鑾峰彇浠撳簱绫诲瀷
- async getOperationType() {
- await getOperationType({
+ async getListTransfer() {
+ await getListTransfer({
keyword: "",
page: 0,
pageSize: 0
}).then((res) => {
- console.log(res.data.data)
- if (res.data.code === 200) {
- const list = res.data.data.map((item) => {
+ console.log(res.data)
+ if (res.code === 200) {
+ const list = res.data.map((item) => {
return {
name: item.name,
id: item.id
@@ -409,20 +453,31 @@
},
// 璁剧疆鍒犻櫎/鎵撳嵃/缂栬緫鏄惁鏄剧ず
setBottonView() {
+ console.log(this.editConfig.infomation.status)
if (this.editConfig.title === "鏂板缓") {
this.showButton = false
this.showEdit = false
this.showFooter = true
this.isValidateClick = false
- } else if (
- this.editConfig.title === "鏌ョ湅" &&
- (this.editConfig.infomation.status !== 4 || this.editConfig.infomation.status !== "瀹屾垚")
- ) {
+ } else if (this.editConfig.title === "缂栬緫") {
this.showButton = true
this.showEdit = false
this.isDelClick = true
+ this.showFooter = true
+ } else if (this.editConfig.title === "鏌ョ湅" && this.editConfig.infomation.status !== 4) {
+ this.showButton = true
+ this.showEdit = true
+ this.isDelClick = true
this.showFooter = false
- this.isValidateClick = true
+ if (this.editConfig.infomation.status === "瀹屾垚") {
+ this.isValidateClick = false
+ }else if(this.editConfig.infomation.status === 3){
+ this.isValidateClick = true
+ this.showCancel=true
+ }else{
+ this.isValidateClick = true
+
+ }
} else if (this.editConfig.infomation.status === 4 || this.editConfig.infomation.status === "瀹屾垚") {
this.showButton = true
this.showEdit = false
@@ -440,6 +495,7 @@
this.showEdit = true
this.showFooter = false
this.isValidateClick = true
+ this.showCancel=true
}
if (this.editConfig.title === "鏂板缓") {
this.list[0].status = "active"
@@ -464,6 +520,13 @@
this.showButton = false
this.showFooter = true
this.setTableForm()
+ },
+ async getLogisticCompanyList(){
+ await getLogisticCompanyList().then((res) => {
+ if(res.code===200){
+ this.shipmentsInfo.carrier=res.data
+ }
+ })
},
// 淇濆瓨
saveClick(formName) {
@@ -514,6 +577,7 @@
contacterName = Object.keys(this.contacterObj).length === 0 ? data.contacterName : this.contacterObj.label
}
let params = {
+ baseOperationType: data.baseOperationType,
comment: data.comment || "",
companyID: companyID,
companyName: companyName,
@@ -528,7 +592,11 @@
operationTypeName: this.receiptType,
sourceNumber: data.sourceNumber || "",
status: 3,
- toLocationId: data.toLocationId || 0
+ toLocationId: data.toLocationId || 0,
+ waybillNumber:data.waybillNumber||'',
+ weight:data.weight||0,
+ logisticWeight:data.logisticWeight||0,
+ logisticCompanyId:data.logisticCompanyId,
}
return params
},
@@ -545,7 +613,11 @@
},
// 鎿嶄綔鍒楄〃
setTableForm() {
- if (this.editConfig.title !== "鏂板缓") {
+ if (
+ this.editConfig.title !== "鏂板缓" &&
+ this.editConfig.infomation.details &&
+ this.editConfig.infomation.details.length > 0
+ ) {
const list = this.editConfig.infomation.details.map((item) => {
return {
...item,
@@ -565,7 +637,7 @@
// { label: "璇存槑", prop: "number", input: true },
// { label: "鏃ユ湡", prop: "amount", date: true, isRequird: true },
// { label: "鎴鏃ユ湡", prop: "price", date: true },
- { label: "瀹屾垚", prop: "amount", inputFloat: true },
+ { label: "鏁伴噺", prop: "amount", inputFloat: true },
{ label: "璁¢噺鍗曚綅", prop: "unit" }
]
}
@@ -581,6 +653,7 @@
},
// 鏂板
addProductClick(value) {
+ console.log(value)
if (value === "鎿嶄綔") {
console.log(this.tableData)
for (let i = 0; i < this.tableData.length; i++) {
@@ -689,6 +762,32 @@
this.$parent.getData()
}
})
+ },
+
+ // 鍙栨秷
+ btnCancel(){
+ this.$confirm('纭畾鍙栨秷鍚楋紵', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ stateCancel(this.editConfig.infomation.id).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("鍙栨秷璋冩嫧")
+ this.$parent.getData()
+ }
+ })
+ this.list.map((item) => {
+ if (item.label==="宸插彇娑�") {
+ item.status = "active"
+ } else {
+ item.status = "todo"
+ }
+ })
+ }).catch(() => {
+ });
}
}
}
@@ -716,13 +815,13 @@
height: calc(100% - 80px);
overflow: auto;
margin: 20px;
- border: 1px solid #dcdfe6;
- box-shadow: inset 0 0 2px #dee2e6;
- -moz-box-shadow: inset 0 0 2px #dee2e6;
- -webkit-box-shadow: inset 0 0 2px #dee2e6;
- .basic-info-view {
- margin-top: 20px;
- }
+ // border: 1px solid #dcdfe6;
+ // box-shadow: inset 0 0 2px #dee2e6;
+ // -moz-box-shadow: inset 0 0 2px #dee2e6;
+ // -webkit-box-shadow: inset 0 0 2px #dee2e6;
+ // .basic-info-view {
+ // margin-top: 20px;
+ // }
}
.purchase-view {
display: flex;
@@ -749,13 +848,34 @@
color: #333;
}
}
- .el-tabs--card > .el-tabs__header .el-tabs__nav {
- margin-left: 20px;
+ .el-tabs--card > .el-tabs__header {
+ border-bottom: none;
}
+ // .el-tabs__item.is-active {
+ // color: #333;
+ // background: #f1f3f8;
+ // }
.el-tabs__item {
height: 30px;
line-height: 30px;
font-size: 13px;
+ background: #f3f3f3;
+ }
+ .el-tabs__header {
+ margin: 0 0 1px;
+ }
+ .bottom{
+ .el-form{
+ // border-top: 1px solid #EBEEF5;
+ }
+ .el-form-item{
+ height: 28px;
+ .el-input {
+ input{
+ height: 28px;
+ }
+ }
+ }
}
}
</style>
--
Gitblit v1.8.0