diff --git a/pages/zw/jb-lower-mater.vue b/pages/zw/jb-lower-mater.vue
index 49547b1..b87e99f 100644
--- a/pages/zw/jb-lower-mater.vue
+++ b/pages/zw/jb-lower-mater.vue
@@ -45,15 +45,6 @@
-
-
- 人工转运
-
-
-
-
-
-
@@ -61,30 +52,21 @@
| 工单号 |
- 物料编码 |
物料名称 |
+ 批次号 |
工单状态 |
开工人 |
- 创建者 |
- 计划重量 |
- 实际重量 |
- 计划量 |
- 实际量 |
+ 重量 |
| {{e.workorder_code}} |
- {{e.material_code}} |
{{e.material_name}} |
-
+ {{e.pcsn}} |
{{e.workorder_status_name}} |
{{e.operator}} |
- {{e.create_name}} |
{{e.plan_weight}} |
- {{e.real_weight}} |
- {{e.plan_qty}} |
- {{e.real_qty}} |
@@ -94,7 +76,55 @@
-
+
+
+
+
+
+
+
+ 转运类型:
+
+
+
+ 人工转运
+
+
+
+ AGV转运
+
+
+
+
+
+
+ 库位信息:
+
+ {{ selectStructName || '请选择' }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -102,7 +132,7 @@
+
diff --git a/pages/zw/jb-return-mater.vue b/pages/zw/jb-return-mater.vue
index 0538a7b..8cf3c41 100644
--- a/pages/zw/jb-return-mater.vue
+++ b/pages/zw/jb-return-mater.vue
@@ -35,26 +35,21 @@
| 工单号 |
- 物料编码 |
物料名称 |
-
+ 批次号 |
+ 工单状态 |
开工人 |
- 创建者 |
- 计划量 |
- 实际量 |
+ 重量 |
| {{e.workorder_code}} |
- {{e.material_code}} |
{{e.material_name}} |
-
-
+ {{e.pcsn}} |
+ {{e.workorder_status_name}} |
{{e.operator}} |
- {{e.create_name}} |
- {{e.plan_qty}} |
- {{e.real_qty}} |
+ {{e.plan_weight}} |
@@ -64,7 +59,30 @@
-
+
+
+
+
+
+
+ 转运类型:
+
+
+
+ 人工转运
+
+
+
+ AGV转运
+
+
+
+
+
+
+
+
+
@@ -92,6 +110,8 @@
pkId: '',
pkObj: {},
disabled: false,
+ showDialog: false, // 控制弹窗显示
+ selectType: '0', // 选中的类型
statusMap: {
'1': '未开始',
'3': '生产中',
@@ -117,6 +137,22 @@
this._regionList()
},
methods: {
+ // 关闭弹窗
+ closeDialog() {
+ this.showDialog = false
+ },
+ // 保存并关闭
+ save() {
+ this._jbReturnMaterial()
+ this.showDialog = false
+ },
+ handleSubmit () {
+ if (!this.index || !this.index2 || !this.val1 || !this.pkId) {
+ this.disabled = false
+ return
+ }
+ this.showDialog = true
+ },
async _regionList () {
try {
let res = await regionList()
@@ -222,12 +258,8 @@
},
async _jbReturnMaterial () {
this.disabled = true
- if (!this.index || !this.index2 || !this.val1 || !this.pkId) {
- this.disabled = false
- return
- }
try {
- let res = await jbReturnMaterial(this.index, this.index2, this.val1, this.pkId)
+ let res = await jbReturnMaterial(this.index, this.index2, this.val1, this.pkId, this.selectType)
if (res.code === '200') {
uni.showToast({
title: res.message,
@@ -248,3 +280,98 @@
}
}
+
diff --git a/pages/zw/jb-up-mater.vue b/pages/zw/jb-up-mater.vue
index ab9e608..21ffa00 100644
--- a/pages/zw/jb-up-mater.vue
+++ b/pages/zw/jb-up-mater.vue
@@ -27,30 +27,21 @@
| 工单号 |
- 物料编码 |
物料名称 |
+ 批次号 |
工单状态 |
开工人 |
- 创建者 |
- 计划重量 |
- 实际重量 |
- 计划量 |
- 实际量 |
+ 重量 |
| {{e.workorder_code}} |
- {{e.material_code}} |
{{e.material_name}} |
-
+ {{e.pcsn}} |
{{e.workorder_status_name}} |
{{e.operator}} |
- {{e.create_name}} |
{{e.plan_weight}} |
- {{e.real_weight}} |
- {{e.plan_qty}} |
- {{e.real_qty}} |
@@ -60,9 +51,32 @@
-
+
+
+
+
+
+ 转运类型:
+
+
+
+ 人工转运
+
+
+
+ AGV转运
+
+
+
+
+
+
+
+
+
+
@@ -88,6 +102,8 @@
pkId: '',
pkObj: {},
disabled: false,
+ showDialog: false, // 控制弹窗显示
+ selectType: '0', // 选中的类型
statusMap: {
'1': '未开始',
'3': '生产中',
@@ -113,6 +129,22 @@
this._regionList()
},
methods: {
+ // 关闭弹窗
+ closeDialog() {
+ this.showDialog = false
+ },
+ // 保存并关闭
+ save() {
+ this._callMaterial()
+ this.showDialog = false
+ },
+ handleSubmit () {
+ if (!this.index2 || !this.pkId) {
+ this.disabled = false
+ return
+ }
+ this.showDialog = true
+ },
// 获取状态名称
getStatusName (status) {
return this.statusMap[status] || ''
@@ -204,12 +236,8 @@
},
async _callMaterial () {
this.disabled = true
- if (!this.index2 || !this.pkId) {
- this.disabled = false
- return
- }
try {
- let res = await callMaterial(this.pkId, this.index2, this.index)
+ let res = await callMaterial(this.pkId, this.index2, this.index, this.selectType)
if (res.code === '200') {
uni.showToast({
title: res.message,
@@ -255,3 +283,98 @@
}
}
+
\ No newline at end of file
diff --git a/pages/zw/ll-instore.vue b/pages/zw/ll-instore.vue
index f9e7504..6d55435 100644
--- a/pages/zw/ll-instore.vue
+++ b/pages/zw/ll-instore.vue
@@ -80,7 +80,31 @@
-
+
+
+
+
+
+
+
+ 转运类型:
+
+
+
+ 人工转运
+
+
+
+ AGV转运
+
+
+
+
+
+
+
+
+
@@ -112,7 +136,9 @@
pkId: '',
currentData: {},
flag: false,
- disabled: false
+ disabled: false,
+ showDialog: false, // 控制弹窗显示
+ selectType: '0' // 选中的类型
};
},
onLoad (options) {
@@ -123,6 +149,22 @@
this._getInBillList()
},
methods: {
+ // 关闭弹窗
+ closeDialog() {
+ this.showDialog = false
+ },
+ // 保存并关闭
+ save() {
+ this._zwConfirmIn()
+ this.showDialog = false
+ },
+ handleSubmit () {
+ if (!this.checkedArr.length) {
+ this.disabled = false
+ return
+ }
+ this.showDialog = true
+ },
// async _getPlate () {
// try {
// let res = await getPlate(this.val1)
@@ -182,20 +224,17 @@
async _zwConfirmIn () {
this.disabled = true
this.checkedArr = this.dataList.filter(el => el.checked === true)
- if (!this.checkedArr.length) {
- this.disabled = false
- return
- }
try {
// 去掉checked字段再上传
this.checkedArr.forEach(item => delete item.checked);
- let res = await zwConfirmIn(this.checkedArr)
+ let res = await zwConfirmIn(this.checkedArr, this.selectType)
if (res.code === '200') {
uni.showToast({
title: res.message,
icon: 'none'
})
this.clearUp()
+ this._getInBillList()
} else {
uni.showToast({
title: res.message,
@@ -217,5 +256,98 @@
// background-color: transparent;
// color: #fff;
}
+/* 弹窗:居中 + 无遮罩 */
+.dialog {
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
+ width: 90%;
+ max-width: 600rpx;
+ background: #fff;
+ border-radius: 16rpx;
+ z-index: 100;
+ overflow: hidden;
+}
+
+/* 转运类型行 */
+.form-line {
+ display: flex;
+ align-items: center;
+ padding: 40rpx;
+ padding-top: 50rpx;
+}
+
+.label {
+ font-size: 30rpx;
+ width: 150rpx;
+ flex-shrink: 0;
+}
+
+/* 单选组:横排 + 不换行 */
+.radio-group {
+ display: flex;
+ align-items: center;
+ white-space: nowrap;
+}
+
+.radio-item {
+ display: flex;
+ align-items: center;
+ margin-right: 50rpx;
+}
+
+/* 单选圆圈 */
+.circle {
+ width: 36rpx;
+ height: 36rpx;
+ border: 2rpx solid #ccc;
+ border-radius: 50%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ margin-right: 12rpx;
+}
+
+.dot {
+ width: 20rpx;
+ height: 20rpx;
+ background: #007aff;
+ border-radius: 50%;
+}
+
+.radio-item.active .circle {
+ border-color: #007aff;
+}
+
+.text {
+ font-size: 30rpx;
+ white-space: nowrap; /* 强制不换行 */
+}
+
+/* 底部按钮 */
+.btn-group {
+ display: flex;
+ border-top: 1rpx solid #eee;
+}
+
+.btn {
+ flex: 1;
+ height: 90rpx;
+ line-height: 90rpx;
+ font-size: 30rpx;
+ border: none;
+ background: #fff;
+}
+
+.cancel {
+ border-right: 1rpx solid #eee;
+ color: #666;
+}
+
+.save {
+ color: #007aff;
+ font-weight: 500;
+}
diff --git a/utils/getData4.js b/utils/getData4.js
index 342c785..813274f 100644
--- a/utils/getData4.js
+++ b/utils/getData4.js
@@ -149,9 +149,9 @@ export const getOrderList = (pcode, flag) => request({
data: {point_code: pcode, flag: flag}
})
// 开工
-export const callMaterial = (wid, pcode, area) => request({
+export const callMaterial = (wid, pcode, area, type) => request({
url:'api/pda/jb/callMaterial',
- data: {workorder_id: wid, point_code: pcode, area: area}
+ data: {workorder_id: wid, point_code: pcode, area: area, type: type}
})
// 上料完成
export const callMaterialFinish = (wid, pcode, area) => request({
@@ -166,9 +166,14 @@ export const getWeight = (pcode, wid) => request({
data: {point_code: pcode, workorder_id: wid}
})
// 下料
-export const downMaterial = (wid, area, weight, pcode, tcode, lcode, type) => request({
+export const downMaterial = (wid, area, weight, pcode, tcode, lcode, type, scode, sname) => request({
url:'api/pda/jb/downMaterial',
- data: {workorder_id: wid, area: area, weight: weight, point_code: pcode, tp_code: tcode, lt_code: lcode, type: type}
+ data: {workorder_id: wid, area: area, weight: weight, point_code: pcode, tp_code: tcode, lt_code: lcode, type: type, struct_code: scode, struct_name: sname}
+})
+// 库位信息下拉框,获取库位列表
+export const structListByWorkId = (wid) => request({
+ url:'api/pda/schPoint/structListByWorkId',
+ data: {workorder_id: wid}
})
// 获取解包点位的托盘编码
export const jbGetVehicleCode = (pcode) => request({
@@ -200,9 +205,9 @@ export const jbEmptyTakeOut = (pcode) => request({
// 解包退料
// 解包退料
-export const jbReturnMaterial = (area, pcode, tpcode, wid) => request({
+export const jbReturnMaterial = (area, pcode, tpcode, wid, type) => request({
url:'api/pda/jb/jbReturnMaterial',
- data: {area: area, point_code: pcode, tp_code: tpcode, workorder_id: wid}
+ data: {area: area, point_code: pcode, tp_code: tpcode, workorder_id: wid, type: type}
})
// 人车安全
@@ -224,9 +229,9 @@ export const getAllIntoRegionMembers = (rcode) => request({
// 来料入库
// 来料入库接口
-export const zwConfirmIn = (plist) => request({
+export const zwConfirmIn = (plist, type) => request({
url:'api/pda/iosIn/zwConfirmIn',
- data: {param_list: plist}
+ data: {param_list: plist, type: type}
})
// 获取单据下拉清单
export const getFormDataList = (date) => request({