From 773a951f1fec234e5697dba92ec972d24311fc16 Mon Sep 17 00:00:00 2001 From: baoge <751575283@qq.com> Date: Wed, 20 Mar 2024 13:40:26 +0800 Subject: [PATCH] =?UTF-8?q?rev:=E4=BF=AE=E6=94=B9=E7=A1=AE=E8=AE=A4?= =?UTF-8?q?=E5=AD=90=E5=8D=B7=E6=9C=A8=E7=AE=B1=E8=A7=84=E6=A0=BC=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E8=83=BD;=20add:=E5=A2=9E=E5=8A=A0=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E5=AD=97=E6=AE=B5=E6=89=A7=E8=A1=8Csql;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PdmBiSubpackagerelationController.java | 2 +- .../dao/PdmBiSubpackagerelation.java | 1 + .../PdmBiSubpackagerelationServiceImpl.java | 1 - .../sch/tasks/first_floor_area/DjqTask.java | 42 +++++++++++---- .../sch/tasks/first_floor_area/ZxqTask.java | 2 - .../controller/BstIvtBoxinfoController.java | 22 ++++++++ .../service/IBstIvtBoxinfoService.java | 19 +++++++ .../impl/BstIvtBoxinfoServiceImpl.java | 31 +++++++++-- .../main/java/org/nl/sql/add_column0320.sql | 7 +++ .../master/rest/MaterialbaseController.java | 1 - .../src/views/wms/pdm/sub/DivDialog.vue | 54 +++++++------------ .../src/views/wms/pdm/sub/MaterDialog.vue | 7 ++- .../src/views/wms/pdm/sub/index.vue | 4 +- 13 files changed, 132 insertions(+), 61 deletions(-) create mode 100644 lms/nladmin-system/src/main/java/org/nl/sql/add_column0320.sql diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/controller/PdmBiSubpackagerelationController.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/controller/PdmBiSubpackagerelationController.java index 5c2b8e733..c9c60d44a 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/controller/PdmBiSubpackagerelationController.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/controller/PdmBiSubpackagerelationController.java @@ -68,7 +68,7 @@ public class PdmBiSubpackagerelationController { * @param whereJson 查询条件 */ @GetMapping("/queryContainerNameBySaleOrder") - @Log("查询订单装箱信息") + @Log("根据订单号查询子卷信息") public ResponseEntity queryContainerNameBySaleOrder(@RequestParam Map whereJson) { return new ResponseEntity<>(TableDataInfo.build(pdmBiSubpackagerelationService.queryContainerNameBySaleOrder(whereJson)), HttpStatus.OK); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/dao/PdmBiSubpackagerelation.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/dao/PdmBiSubpackagerelation.java index 6f9ccfdc8..61f667cb7 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/dao/PdmBiSubpackagerelation.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/dao/PdmBiSubpackagerelation.java @@ -311,6 +311,7 @@ public class PdmBiSubpackagerelation extends Model { private String box_group; + /** * 获取主键值 * diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/service/impl/PdmBiSubpackagerelationServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/service/impl/PdmBiSubpackagerelationServiceImpl.java index 81b88d157..d0becdee4 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/service/impl/PdmBiSubpackagerelationServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/service/impl/PdmBiSubpackagerelationServiceImpl.java @@ -161,7 +161,6 @@ public class PdmBiSubpackagerelationServiceImpl extends ServiceImpl().eq( SchBaseTask::getTask_id, taskObj.getString("task_id")), false); + SchBaseTask schBaseTask = taskService.getOne(new LambdaUpdateWrapper().eq(SchBaseTask::getTask_id, taskObj.getString("task_id")), false); if (schBaseTask == null) { throw new BadRequestException("满轴缓存位 -> 待检区更新接口任务号为空!"); } + if (StringUtils.isBlank(schBaseTask.getVehicle_code())) { + throw new BadRequestException("满轴缓存位 -> 待检区,子卷号不能为空!"); + } if (TaskStatusEnum.EXECUTING.getCode().equals(status)) { // 更新任务状态为执行中 schBaseTask.setTask_status(TaskStatusEnum.EXECUTING.getCode()); @@ -102,12 +110,25 @@ public class DjqTask extends AbstractAcsTask { packageinfoivtService.update(new UpdateWrapper().set("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("空")).set("container_name", null).eq("point_code", schBaseTask.getPoint_code1())); //更新库存记录 packageinfoivtService.update(new UpdateWrapper().set("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("有子卷")).set("container_name", schBaseTask.getVehicle_code()).eq("point_code", schBaseTask.getPoint_code2())); - //todo 3.手持确认包装关系,生产包装关系表数据 - //todo 4.根据子卷包装关系查询木箱号,调刘先源的空木箱出库服务创建出库任务 - //device_code:终点,box_length: 长,box_width: 宽,box_high: 高,num: 子卷数 - // JSONObject boxInfo = new JSONObject(); - // boxInfo.put("device_code", schBaseTask.getPoint_code2()); - // outBoxManageService.outBox(boxInfo); + //PC子卷装箱界面确认包装关系,根据子卷号查询包装关系获取木箱规格 + String vehicleCode = schBaseTask.getVehicle_code(); + PdmBiSubpackagerelation pdmBiSubpackagerelation = pdmBiSubpackagerelationService + .getOne(new LambdaUpdateWrapper().eq(PdmBiSubpackagerelation::getContainer_name, vehicleCode), false); + if (pdmBiSubpackagerelation != null) { + //如果子卷数大于0与木箱规格不为空,代表已确定子卷包装关系,则查询木箱号并木箱出库 + if (pdmBiSubpackagerelation.getQuanlity_in_box().compareTo(BigDecimal.ZERO) > 0 && StringUtils.isNotBlank(pdmBiSubpackagerelation.getBox_type())) { + //device_code:终点,material_code:木箱规格,num: 子卷数 + JSONObject boxInfo = new JSONObject(); + boxInfo.put("device_code", schBaseTask.getPoint_code2()); + boxInfo.put("material_code", pdmBiSubpackagerelation.getBox_type()); + boxInfo.put("num", pdmBiSubpackagerelation.getQuanlity_in_box()); + outBoxManageService.outBox(boxInfo); + //todo 4.根据子卷包装关系查询木箱号,调刘先源的空木箱出库服务创建出库任务 + String boxSn = "MX240115000152"; + //更新子卷包装关系更新木箱号 + pdmBiSubpackagerelationService.update(pdmBiSubpackagerelation, new UpdateWrapper().set("package_box_sn", boxSn)); + } + } //5.查询是否有未下发的输送线->满轴位任务,有就下发 List notIssueTaskList = taskService.list(new LambdaUpdateWrapper() //确定起点 @@ -133,10 +154,9 @@ public class DjqTask extends AbstractAcsTask { jo.put("task_type", PackageInfoIvtEnum.TASK_TYPE.code("待检区->装箱区")); jo.put("point_code1", schBaseTask.getPoint_code2()); jo.put("point_code2", zxqPointList.get(0).getPoint_code()); - jo.put("vehicle_code", schBaseTask.getVehicle_code()); + jo.put("vehicle_code", vehicleCode); zxqTask.createTask(jo); - } - else{ + } else { throw new BadRequestException("装箱区暂无空余库位!"); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/ZxqTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/ZxqTask.java index f31a4049d..20e8148de 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/ZxqTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/ZxqTask.java @@ -47,8 +47,6 @@ public class ZxqTask extends AbstractAcsTask { @Resource private ZxDjwTask zxDjwTask; @Resource - private DjqTask djqTask; - @Resource private IschBaseTaskService taskService; @Resource private IbstIvtPackageinfoivtService packageinfoivtService; diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/controller/BstIvtBoxinfoController.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/controller/BstIvtBoxinfoController.java index 3df8a5633..e3586680d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/controller/BstIvtBoxinfoController.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/controller/BstIvtBoxinfoController.java @@ -1,9 +1,20 @@ package org.nl.b_lms.storage_manage.database.controller; +import org.nl.b_lms.pdm.subpackagerelation.service.IpdmBiSubpackagerelationService; +import org.nl.b_lms.storage_manage.database.service.IBstIvtBoxinfoService; +import org.nl.modules.logging.annotation.Log; +import org.springframework.data.domain.Pageable; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import javax.annotation.Resource; +import java.util.Map; + /** *

* 前端控制器 @@ -16,4 +27,15 @@ import org.springframework.web.bind.annotation.RestController; @RequestMapping("/api/boxinfo") public class BstIvtBoxinfoController { + + @Resource + private IBstIvtBoxinfoService iBstIvtBoxinfoService; + + @GetMapping + @Log("查询木箱信息") + public ResponseEntity query(@RequestParam Map whereJson, Pageable page) { + return new ResponseEntity<>(iBstIvtBoxinfoService.queryAll(whereJson, page), HttpStatus.OK); + } + + } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/service/IBstIvtBoxinfoService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/service/IBstIvtBoxinfoService.java index cca13e463..a752da47c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/service/IBstIvtBoxinfoService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/service/IBstIvtBoxinfoService.java @@ -3,6 +3,9 @@ package org.nl.b_lms.storage_manage.database.service; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.IService; import org.nl.b_lms.storage_manage.database.service.dao.BstIvtBoxinfo; +import org.springframework.data.domain.Pageable; + +import java.util.Map; /** *

@@ -14,6 +17,22 @@ import org.nl.b_lms.storage_manage.database.service.dao.BstIvtBoxinfo; */ public interface IBstIvtBoxinfoService extends IService { + + + /** + * 查询数据分页 + * + * @param whereJson 条件 + * @param page 分页参数 + * @return Map + */ + Map queryAll(Map whereJson, Pageable page); + + + + + + /** * 根据mes信息插入木箱信息 * @param whereJson:{ diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/service/impl/BstIvtBoxinfoServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/service/impl/BstIvtBoxinfoServiceImpl.java index c8d1e65a5..3afdba931 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/service/impl/BstIvtBoxinfoServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/database/service/impl/BstIvtBoxinfoServiceImpl.java @@ -1,17 +1,23 @@ package org.nl.b_lms.storage_manage.database.service.impl; - import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.b_lms.storage_manage.database.service.IBstIvtBoxinfoService; import org.nl.b_lms.storage_manage.database.service.dao.BstIvtBoxinfo; import org.nl.b_lms.storage_manage.database.service.dao.mapper.BstIvtBoxinfoMapper; import org.nl.common.utils.IdUtil; +import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.util.HashMap; +import java.util.Map; /** *

- * 服务实现类 + * 服务实现类 *

* * @author author @@ -19,6 +25,23 @@ import org.springframework.stereotype.Service; */ @Service public class BstIvtBoxinfoServiceImpl extends ServiceImpl implements IBstIvtBoxinfoService { + @Resource + private BstIvtBoxinfoMapper bstIvtBoxinfoMapper; + + + @Override + public Map queryAll(Map whereJson, Pageable page) { + Map mapReslt = new HashMap<>(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (whereJson.containsKey("search")) { + queryWrapper.like(BstIvtBoxinfo::getBox_no, whereJson.get("search")).or().like(BstIvtBoxinfo::getMaterial_code, whereJson.get("search")).or().like(BstIvtBoxinfo::getMaterial_name, whereJson.get("search")); + } + IPage result = bstIvtBoxinfoMapper.selectPage(new Page<>(page.getPageNumber() + 1, page.getPageSize()),queryWrapper); + mapReslt.put("content", result.getRecords()); + mapReslt.put("totalElements", result.getTotal()); + return mapReslt; + } + @Override public BstIvtBoxinfo mesInsert(JSONObject whereJson) { @@ -42,9 +65,9 @@ public class BstIvtBoxinfoServiceImpl extends ServiceImpl - - - - 清空 - - { - debugger - table2.toggleRowSelection(row) + this.$nextTick(() => { + table2.clearSelection() + const selectedRows = this.multipleSelection + selectedRows.forEach(row => { + table2.toggleRowSelection(row) + }) }) // this.$refs.dis_table.clearSelection() // this.multipleSelection.forEach(row => { @@ -270,7 +257,6 @@ export default { }, getMultipleSelection(multipleSelection) { return multipleSelection.reduce((acc, item) => { - debugger const existingItem = acc.find(existing => existing.container_name === item.container_name) if (!existingItem) { acc.push(item) @@ -296,7 +282,7 @@ export default { }, // 表格1的行点击事件 handleRowClick(scope) { - debugger + this.clearSelection() const table2 = this.$refs.dis_table const table2Data = Array.from(this.openParam) const groupValue = scope.box_group === 0 ? scope.container_name : scope.box_group @@ -327,24 +313,24 @@ export default { tableRowClassName({ row, rowIndex }) { row.index = rowIndex }, - tableChanged(row) { + async tableChanged(row) { this.form.tableMater = this.currentSelection this.form.checked = row.material_code + // 父组件传过来的订单号 this.form.sale_order_name = this.sale_order_name - crudPackagerelation.updateEntityList(this.form).then(res => { - crudSubpackagerelation.queryContainerization({ 'sale_order_name': this.sale_order_name }).then(res => { - this.openParam = res.content - this.$emit('childEvent') - this.clearSelection() - }) - this.form.tableMater = [] + try { + await crudPackagerelation.updateEntityList(this.form) + const res = await crudSubpackagerelation.queryContainerization({ 'sale_order_name': this.sale_order_name }) + this.openParam = res.content + this.clearSelection() this.crud.notify('操作成功', CRUD.NOTIFICATION_TYPE.SUCCESS) - }) + } catch (error) { + console.error('更新数据出错:', error) + this.crud.notify('更新数据出错', CRUD.NOTIFICATION_TYPE.ERROR) + } }, divStruct() { - debugger if (this.currentSelection.length > 0 && this.$refs.dis_table.selection.length > 0) { - debugger this.structShow = true this.$refs.child.getMsg(false) } else { @@ -378,7 +364,7 @@ export default { } .search-input { - width: 200px; + width: 251px; } .clear-icon { diff --git a/lms/nladmin-ui/src/views/wms/pdm/sub/MaterDialog.vue b/lms/nladmin-ui/src/views/wms/pdm/sub/MaterDialog.vue index f2417fa47..779c17b55 100644 --- a/lms/nladmin-ui/src/views/wms/pdm/sub/MaterDialog.vue +++ b/lms/nladmin-ui/src/views/wms/pdm/sub/MaterDialog.vue @@ -63,9 +63,9 @@ export default { return CRUD({ title: '木箱规格', optShow: {}, - url: 'api/Materialbase', - idField: 'material_id', - sort: 'material_id,desc', + url: 'api/boxinfo', + idField: 'material_code', + sort: 'material_code,desc', query: { search: '', material_id: '' }, crudMethod: { ...crudMaterattr } }) @@ -168,7 +168,6 @@ export default { this.$emit('update:dialogShow', false) }, submit() { - debugger this.rows = this.$refs.table.selection if (this.rows.length <= 0) { this.$message('请先选择木箱信息') diff --git a/lms/nladmin-ui/src/views/wms/pdm/sub/index.vue b/lms/nladmin-ui/src/views/wms/pdm/sub/index.vue index d56249729..543c4df58 100644 --- a/lms/nladmin-ui/src/views/wms/pdm/sub/index.vue +++ b/lms/nladmin-ui/src/views/wms/pdm/sub/index.vue @@ -158,8 +158,7 @@ const defaultForm = { mass_per_unit_area: null, net_weight: null, length: null, - date_of_production: null, - is_un_plan_production: null, + date_of_production: null, is_un_plan_production: null, un_plan_product_property1: null, un_plan_product_property2: null, un_plan_product_property3: null, @@ -279,7 +278,6 @@ export default { if (this.currentRow !== null) { crud.downloadLoading = true download('/api/packagerelation/download', this.crud.query).then(result => { - debugger downloadFile(result, '子卷包装', 'xlsx') crud.downloadLoading = false }).catch(() => {