From bdea6f89251e2e11a92d38e41a64edf53b2cb95d Mon Sep 17 00:00:00 2001
From: 石广澎 <shiguangpeng@163.com>
Date: 星期三, 29 十一月 2023 16:22:25 +0800
Subject: [PATCH] feat: 1、物品分发使用人修改,使用记录
---
admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue | 249 +++++++++++++++++++++++++------------------------
admin-web/src/api/stock/transfer.js | 18 +++
admin-web/src/views/departmentitem/itemdis/distribution/index.vue | 2
admin-web/public/static/config.js | 4
admin-web/src/views/departmentitem/itemdis/distribution/detail.vue | 2
5 files changed, 147 insertions(+), 128 deletions(-)
diff --git a/admin-web/public/static/config.js b/admin-web/public/static/config.js
index b7e2788..2c5f21a 100644
--- a/admin-web/public/static/config.js
+++ b/admin-web/public/static/config.js
@@ -4,8 +4,8 @@
// 涓婁紶璺緞
ftpUrl: 'https://yqzx.jinmingyuan.com/lowConsum',//寮�鍙�
// 鎺ュ彛璇锋眰鍦板潃
- // apiBaseURL: 'http://172.16.20.2:8083/lowConsum',//寮�鍙�
- apiBaseURL: 'http://172.16.60.155:8083/lowConsum',//寮�鍙�
+ apiBaseURL: 'http://172.16.20.2:8083/lowConsum',//寮�鍙�
+ // apiBaseURL: 'http://172.16.60.155:8083/lowConsum',//寮�鍙�
// apiBaseURL: 'https://yqzx.jinmingyuan.com/lowConsum',//寮�鍙�
debug: false //璋冭瘯寮�鍏� true鏃朵細杈撳嚭璇锋眰鏃ュ織
};
diff --git a/admin-web/src/api/stock/transfer.js b/admin-web/src/api/stock/transfer.js
index ac8792b..fa88b6a 100644
--- a/admin-web/src/api/stock/transfer.js
+++ b/admin-web/src/api/stock/transfer.js
@@ -83,4 +83,20 @@
// 瀵煎嚭
export function transferDetailListApi(params) {
return '/pc/l/wh/form/transfer/detail/list'
-}
\ No newline at end of file
+}
+// 閮ㄩ棬鐗╁搧浣跨敤浜鸿褰�
+export function useRecord(params) {
+ return request({
+ url: '/pc/l/wh/form/transfer/use/record',
+ method: 'get',
+ params,
+ });
+}
+// 閮ㄩ棬鐗╁搧浣跨敤浜轰慨鏀�
+export function useInfoUpdate(data) {
+ return request({
+ url: '/pc/l/wh/form/transfer/useInfo/update',
+ method: 'POST',
+ data,
+ });
+}
diff --git a/admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue b/admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue
index 43846f4..8314d8e 100644
--- a/admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue
+++ b/admin-web/src/views/departmentitem/itemdis/disDetails/edit.vue
@@ -1,20 +1,20 @@
<template>
<el-dialog
- width="1000px"
- :visible="true"
- :top="'15vh'"
- :close-on-click-modal="false"
- :append-to-body="true"
- :destroy-on-close="true"
- @close="close"
+ width="1000px"
+ :visible="true"
+ :top="'15vh'"
+ :close-on-click-modal="false"
+ :append-to-body="true"
+ :destroy-on-close="true"
+ @close="close"
>
<div slot="title" align="left" class="dialog-title">
<div
- class="tab-item"
- :class="tabIndex == index ? 'active' : ''"
- v-for="(item, index) in tabs"
- :key="index"
- @click="tabIndex = index"
+ class="tab-item"
+ :class="tabIndex == index ? 'active' : ''"
+ v-for="(item, index) in tabs"
+ :key="index"
+ @click="tabIndex = index"
>
{{ item }}
</div>
@@ -24,7 +24,7 @@
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="瑙勬牸鍨嬪彿:">
- {{ item.modelName }}
+ {{ item.baseGoodModelName }}
</el-form-item>
</el-col>
<el-col :span="6">
@@ -33,7 +33,7 @@
</el-form-item>
</el-col>
</el-row>
- <el-row :gutter="20" v-for="(childItem, childIndex) in item.list" :key="childIndex">
+ <el-row :gutter="20" v-for="(childItem, childIndex) in item.recordUserInfos" :key="childIndex">
<el-col :span="6">
<el-form-item label="鍒嗗彂鏁伴噺:">
{{ childItem.count }}
@@ -41,7 +41,8 @@
</el-col>
<el-col :span="6">
<el-form-item label="浣跨敤浜�:">
- {{ childItem.user }}
+ <el-input v-if="childItem.isEdit" v-model="childItem.userName" style="width: 120px"></el-input>
+ <span v-else>{{ childItem.userName }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
@@ -50,72 +51,77 @@
<span v-else>{{ childItem.phone }}</span>
</el-form-item>
</el-col>
- <el-col :span="6" v-if="!childItem.isEdit">
+ <el-col :span="6">
<el-form-item>
- <span class="edit-text" @click="handleEditItem(index, childIndex, childItem.isEdit)">淇敼</span>
+ <span class="edit-text" @click="handleEditItem(childItem)">{{childItem.isEdit?'鍙栨秷':'淇敼'}}</span>
</el-form-item>
</el-col>
</el-row>
+
+ <el-divider v-if="index+1<formData.list.length"></el-divider>
</div>
</el-form>
<el-form
- v-show="tabIndex == 1"
- ref="ruleForm"
- :model="formData"
- :rules="rules"
- class="demo-ruleForm"
- style="width: 96%"
+ v-show="tabIndex == 1"
+ ref="ruleForm"
+ :model="formData"
+ :rules="rules"
+ class="demo-ruleForm"
+ style="width: 96%"
>
- <div v-for="(item, index) in formData.list" :key="index">
+ <div v-for="(item, index) in list" :key="index">
<el-row :gutter="20" class="item-header">
<el-col :span="6">
<el-form-item label="淇敼鏃堕棿:">
- {{ item.time }}
+ {{ item.updateTime }}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="淇敼浜�:">
- {{ item.userName }}
+ {{ item.updateUserName }}
</el-form-item>
</el-col>
</el-row>
- <div class="line"></div>
- <el-row :gutter="20">
- <el-col :span="6">
- <el-form-item label="瑙勬牸鍨嬪彿:">
- {{ item.modelName }}
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item label="鍗曚綅:">
- {{ item.unit }}
- </el-form-item>
- </el-col>
- </el-row>
- <el-row :gutter="20" v-for="(childItem, childIndex) in item.list" :key="childIndex">
- <el-col :span="6">
- <el-form-item label="鍒嗗彂鏁伴噺:">
- {{ childItem.count }}
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item label="浣跨敤浜�:">
- {{ childItem.user }}
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item label="鑱旂郴鐢佃瘽:">
- <span>{{ childItem.phone }}</span>
- </el-form-item>
- </el-col>
- </el-row>
- <div class="line"></div>
+ <el-divider></el-divider>
+ <template v-for="(record,i) in item.recordSkuDtoList">
+ <el-row :key="i" :gutter="20">
+ <el-col :span="6">
+ <el-form-item label="瑙勬牸鍨嬪彿:">
+ {{ record.baseGoodModelName }}
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鍗曚綅:">
+ {{ record.unit }}
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="20" v-for="(use, k) in record.recordUserInfos" :key="k+'_'+i">
+ <el-col :span="6">
+ <el-form-item label="鍒嗗彂鏁伴噺:">
+ {{ use.num }}
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="浣跨敤浜�:">
+ {{ use.useName }}
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鑱旂郴鐢佃瘽:">
+ <span>{{ use.phone }}</span>
+ </el-form-item>
+ </el-col>
+ </el-row>
+<!-- <el-divider v-if="index+1<list.length"></el-divider>-->
+ <el-divider></el-divider>
+ </template>
</div>
</el-form>
<div v-if="tabIndex == 0" slot="footer" align="center" class="dialog-footer">
- <my-button name="鍙栨秷" site="form" @click="close" />
- <my-button name="淇濆瓨" site="form" @click="save" />
+ <my-button name="鍙栨秷" site="form" @click="close"/>
+ <my-button name="淇濆瓨" site="form" @click="save"/>
</div>
</el-dialog>
</template>
@@ -123,62 +129,61 @@
<script>
import myButton from '@/components/myButton/myButton';
import * as finsystenant from '@/api/baseSetting/finsystenant';
+import {transferDetail, useInfoUpdate, useRecord} from "@/api/stock/transfer";
export default {
- components: { myButton },
+ components: {myButton},
props: {
setting: {
type: Object,
- default: () => {},
+ default: () => {
+ },
},
},
data() {
return {
tabs: ['淇敼浣跨敤浜�', '浣跨敤璁板綍'],
tabIndex: 0,
- checkedList: [],
+ list: [],
formData: {
- list: [
- {
- modelName: '鍨嬪彿111111',
- unit: '濂�',
- time: '2023-08-08 10:23:34',
- userName: '绠$悊鍛�',
- list: [
- {
- count: 1,
- user: '寮犱笁',
- phone: '18500000001',
- isEdit: false,
- },
- ],
- },
- {
- modelName: '鍨嬪彿222222',
- unit: '濂�',
- list: [
- {
- count: 1,
- user: '寮犱笁',
- phone: '18500000001',
- isEdit: false,
- },
- ],
- },
- ],
+ list: [],
},
rules: {
- code: [{ required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur' }],
- name: [{ required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur' }],
- status: [{ required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur' }],
+ code: [{required: true, message: '璇疯緭鍏ユ満鏋勭紪鍙�', trigger: 'blur'}],
+ name: [{required: true, message: '璇疯緭鍏ユ満鏋勫悕绉�', trigger: 'blur'}],
+ status: [{required: true, message: '璇烽�夋嫨鐘舵��', trigger: 'blur'}],
},
};
},
- created() {},
+ created() {
+ useRecord({transferOrderId: this.setting.id}).then((res) => {
+ let model = JSON.parse(JSON.stringify(res[0].recordSkuDtoList))
+ model.map(m => {
+ m.recordUserInfos.map(u => {
+ u.baseGoodModelId = m.baseGoodModelId
+ u.baseUnit = m.unit
+ u.businessId = this.setting.id
+ u.count = u.num
+ u.tel = u.phone
+ u.procureModelId = m.procureModelId
+ u.userName = u.useName
+ u.isEdit = false
+ })
+ })
+ this.formData.list = model;
+ this.list = res
+ });
+ },
methods: {
- getEditInfo(id) {},
- handleEditItem(index, childIndex) {
- this.formData.list[index].list[childIndex].isEdit = true;
+ getEditInfo(id) {
+ },
+ handleEditItem(user) {
+ user.isEdit = !user.isEdit;
+ if(!user.isEdit){
+ console.log(user)
+ user.phone = user.tel
+ user.userName = user.useName
+ }
},
close() {
this.$emit('close');
@@ -186,30 +191,19 @@
save() {
this.$refs.ruleForm.validate((valid) => {
if (valid) {
- const params = Object.assign({}, this.formData);
- if (this.setting.id) {
- // 缂栬緫鎺ュ彛
- finsystenant.edit(params).then((res) => {
- if (res) {
- this.$message.success('淇濆瓨鎴愬姛锛�');
- this.close();
- this.$emit('search');
- } else {
- this.$message.error('淇濆瓨澶辫触');
- }
- });
- } else {
- params.orgId = this.setting.orgId;
- finsystenant.add(params).then((res) => {
- if (res) {
- this.$message.success('淇濆瓨鎴愬姛锛�');
- this.close();
- this.$emit('search');
- } else {
- this.$message.error('淇濆瓨澶辫触');
- }
- });
- }
+ let recordInfoList = []
+ this.formData.list.map(item=>{
+ item.recordUserInfos.map(re=>{
+ recordInfoList.push(re)
+ })
+ })
+ useInfoUpdate({recordInfoList}).then((res) => {
+ this.$message.success('淇濆瓨鎴愬姛锛�');
+ this.close();
+ this.$emit('search');
+ }).catch(()=>{
+ this.$message.error('淇濆瓨澶辫触');
+ });
} else {
this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��');
}
@@ -222,6 +216,7 @@
.dialog-title {
display: flex;
align-items: center;
+
.tab-item {
color: #3d3d3d;
font-size: 16px;
@@ -229,6 +224,7 @@
padding: 0 10px;
position: relative;
cursor: pointer;
+
&.active::after {
content: '';
width: 100%;
@@ -240,10 +236,12 @@
}
}
}
+
.edit-text {
color: #409eff;
cursor: pointer;
}
+
.item-header {
::v-deep {
.el-form-item__label,
@@ -252,12 +250,17 @@
}
}
}
+
+::v-deep .el-divider--horizontal {
+ margin: 10px 0;
+}
+
::v-deep {
.el-form-item {
- margin-top: 10px;
- margin-bottom: 10px;
+ margin-bottom: 5px;
}
}
+
.line {
width: 100%;
height: 1px;
diff --git a/admin-web/src/views/departmentitem/itemdis/distribution/detail.vue b/admin-web/src/views/departmentitem/itemdis/distribution/detail.vue
index e27de51..a655472 100644
--- a/admin-web/src/views/departmentitem/itemdis/distribution/detail.vue
+++ b/admin-web/src/views/departmentitem/itemdis/distribution/detail.vue
@@ -225,7 +225,7 @@
};
</script>
<style lang="scss" scoped>
-//@import url(../../../../styles/store.scss);
+@import url(../../../../styles/store.scss);
.card3 {
padding: 10px;
margin-top: 10px;
diff --git a/admin-web/src/views/departmentitem/itemdis/distribution/index.vue b/admin-web/src/views/departmentitem/itemdis/distribution/index.vue
index 681e679..ec48b4d 100644
--- a/admin-web/src/views/departmentitem/itemdis/distribution/index.vue
+++ b/admin-web/src/views/departmentitem/itemdis/distribution/index.vue
@@ -115,7 +115,7 @@
},
{
type: 'select',
- dataIndex: 'inWarehouseId',
+ dataIndex: 'inAgencyId',
label: '鍒嗗彂閮ㄩ棬',
placeholder: '璇烽�夋嫨',
optionsConfig: {
--
Gitblit v1.9.1