From 3632d035496c49f6509ef7c89b961c64fcaa06e8 Mon Sep 17 00:00:00 2001 From: liuxy Date: Wed, 14 Jan 2026 19:55:58 +0800 Subject: [PATCH] =?UTF-8?q?rev=EF=BC=9A=E9=80=80=E6=96=99=E7=BB=84?= =?UTF-8?q?=E7=9B=98=E9=A1=B5=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/GroupController.java | 12 ++ .../service/IPdmBomCallMaterialService.java | 4 +- .../dao/mapper/PdmBomCallMaterialMapper.java | 9 +- .../dao/mapper/PdmBomCallMaterialMapper.xml | 21 ++ .../impl/PdmBomCallMaterialServiceImpl.java | 12 +- .../service/IMdPbGroupplateService.java | 20 ++ .../impl/MdPbGroupplateServiceImpl.java | 40 +++- .../wms/basedata/group/AddReceiveDtl.vue | 181 ++++++++++++------ .../src/views/wms/basedata/group/group.js | 19 +- 9 files changed, 244 insertions(+), 74 deletions(-) diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/controller/GroupController.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/controller/GroupController.java index 2bc161d..5fcbc3a 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/controller/GroupController.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/controller/GroupController.java @@ -127,4 +127,16 @@ public class GroupController { iMdPbGroupplateService.importExcel(file, request); return new ResponseEntity<>(HttpStatus.OK); } + + @PostMapping("/queryVehicle") + @Log("查询点位下的载具") + public ResponseEntity queryVehicle(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(iMdPbGroupplateService.queryVehicle(whereJson), HttpStatus.OK); + } + + @PostMapping("/queryVehicleType") + @Log("获取载具类型") + public ResponseEntity queryVehicleType(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(iMdPbGroupplateService.queryVehicleType(whereJson), HttpStatus.OK); + } } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/IPdmBomCallMaterialService.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/IPdmBomCallMaterialService.java index 1c4539f..1429f91 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/IPdmBomCallMaterialService.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/IPdmBomCallMaterialService.java @@ -85,9 +85,9 @@ public interface IPdmBomCallMaterialService extends IService * @param whereJson { * material_id * } - * @return List + * @return List */ - List queryMaterialBom(JSONObject whereJson); + List queryMaterialBom(JSONObject whereJson); /** * 添加领导人 diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/dao/mapper/PdmBomCallMaterialMapper.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/dao/mapper/PdmBomCallMaterialMapper.java index 6bfafb8..3eaf55d 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/dao/mapper/PdmBomCallMaterialMapper.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/dao/mapper/PdmBomCallMaterialMapper.java @@ -46,5 +46,12 @@ public interface PdmBomCallMaterialMapper extends BaseMapper */ List queryBomInfo(@Param("param") JSONObject whereJson); - + /** + * 查询当天工单 + * @param whereJson { + * material_id + * } + * @return List + */ + List queryMaterialBom(@Param("param") JSONObject whereJson); } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/dao/mapper/PdmBomCallMaterialMapper.xml b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/dao/mapper/PdmBomCallMaterialMapper.xml index b14a1f0..92c8ebc 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/dao/mapper/PdmBomCallMaterialMapper.xml +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/dao/mapper/PdmBomCallMaterialMapper.xml @@ -129,4 +129,25 @@ ORDER BY bom.create_time Desc + + diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/impl/PdmBomCallMaterialServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/impl/PdmBomCallMaterialServiceImpl.java index 1bc5064..7a9aa43 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/impl/PdmBomCallMaterialServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm_manage/service/impl/PdmBomCallMaterialServiceImpl.java @@ -157,14 +157,10 @@ public class PdmBomCallMaterialServiceImpl extends ServiceImpl queryMaterialBom(JSONObject whereJson) { - return this.list( - new QueryWrapper().lambda() - .eq(PdmBomCallMaterial::getStart_time, DateUtil.today()) - .eq(PdmBomCallMaterial::getMaterial_id, whereJson.getString("material_id")) - .eq(PdmBomCallMaterial::getBom_status, BomEnum.CALL_BOM_STATUS.code("完成")) - .orderByDesc(PdmBomCallMaterial::getReal_weigh_qty) - ); + public List queryMaterialBom(JSONObject whereJson) { + whereJson.put("to_day", DateUtil.today()); + this.baseMapper.queryMaterialBom(whereJson); + return this.baseMapper.queryMaterialBom(whereJson); } @Override diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/IMdPbGroupplateService.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/IMdPbGroupplateService.java index e30aa90..5e21b37 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/IMdPbGroupplateService.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/IMdPbGroupplateService.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.core.JsonProcessingException; import org.nl.common.domain.query.PageQuery; import org.nl.wms.basedata_manage.service.dao.MdCsSupplierbase; import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase; +import org.nl.wms.basedata_manage.service.dao.MdPbStoragevehicleinfo; import org.nl.wms.pda.util.PdaResponse; +import org.nl.wms.sch_manage.service.dao.SchBaseTask; import org.nl.wms.warehouse_management.service.dao.GroupPlate; import org.springframework.web.multipart.MultipartFile; @@ -119,4 +121,22 @@ public interface IMdPbGroupplateService extends IService { * @param dto 实体类 */ void outReceiveGroup(GroupPlate dto); + + /** + * 查询点位下的载具 + * @param whereJson { + * point_code + * } + * @return List + */ + List queryVehicle(JSONObject whereJson); + + /** + * 获取载具类型 + * @param whereJson { + * vehicle_code + * } + * @return MdPbStoragevehicleinfo + */ + MdPbStoragevehicleinfo queryVehicleType(JSONObject whereJson); } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/MdPbGroupplateServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/MdPbGroupplateServiceImpl.java index 8b6f86a..08914f8 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/MdPbGroupplateServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/MdPbGroupplateServiceImpl.java @@ -5,15 +5,11 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.excel.EasyExcel; -import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.fasterxml.jackson.core.JsonProcessingException; -import com.fasterxml.jackson.core.type.TypeReference; -import com.fasterxml.jackson.databind.ObjectMapper; import org.nl.common.domain.query.PageQuery; import org.nl.common.exception.BadRequestException; import org.nl.common.utils.SecurityUtils; @@ -35,6 +31,10 @@ import org.nl.wms.pdm_manage.service.IPdmBomCallMaterialDtlService; import org.nl.wms.pdm_manage.service.IPdmBomCallMaterialService; import org.nl.wms.pdm_manage.service.dao.PdmBomCallMaterial; import org.nl.wms.pdm_manage.service.dao.PdmBomCallMaterialDtl; +import org.nl.wms.sch_manage.enums.TaskStatus; +import org.nl.wms.sch_manage.service.ISchBaseTaskService; +import org.nl.wms.sch_manage.service.dao.SchBaseTask; +import org.nl.wms.sch_manage.service.util.tasks.CallReceiveEmpTask; import org.nl.wms.warehouse_management.enums.IOSConstant; import org.nl.wms.warehouse_management.enums.IOSEnum; import org.nl.wms.warehouse_management.service.IMdPbGroupplateService; @@ -42,7 +42,6 @@ import org.nl.wms.warehouse_management.service.dao.GroupPlate; import org.nl.wms.warehouse_management.service.dao.mapper.MdPbGroupplateMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; @@ -104,6 +103,9 @@ public class MdPbGroupplateServiceImpl extends ServiceImpl queryAll(Map whereJson, PageQuery page) { return this.baseMapper.queryAllByPage(new Page<>(page.getPage() + 1, page.getSize()), @@ -232,7 +234,7 @@ public class MdPbGroupplateServiceImpl extends ServiceImpl row.getMaterial_id().equals(dto.getMaterial_id())); + if (!is_like) { + throw new BadRequestException("当前所有工单物料不一致,请重新选择!"); + } + // 判断工单总的可退重量是否满足组盘总量 Double sumQty = bomDaoList.stream() .map(row -> row.getReal_weigh_qty().doubleValue()) @@ -277,6 +286,23 @@ public class MdPbGroupplateServiceImpl extends ServiceImpl queryVehicle(JSONObject whereJson) { + // 查询此点位下正在执行的空载具任务 + return iSchBaseTaskService.list( + new QueryWrapper().lambda() + .eq(SchBaseTask::getIs_delete, IOSConstant.ZERO) + .eq(SchBaseTask::getPoint_code2, whereJson.getString("point_code")) + .eq(SchBaseTask::getConfig_code, CallReceiveEmpTask.class.getSimpleName()) + .eq(SchBaseTask::getTask_status, TaskStatus.EXECUTING.getCode()) + ); + } + + @Override + public MdPbStoragevehicleinfo queryVehicleType(JSONObject whereJson) { + return iMdPbStoragevehicleinfoService.getByCode(whereJson.getString("vehicle_code")); + } + /** * 创建退料明细 * @@ -300,7 +326,7 @@ public class MdPbGroupplateServiceImpl extends ServiceImpl + + + + + + {{ item.bom_code }} + {{'可退重量:'+ item.real_weigh_qty }} + + + + + + + + + + + + + + + + + + + + + + @@ -20,6 +84,7 @@ style="width: 220px" class="filter-item" filterable + disabled @change="queryMater" > - - + + + + @@ -125,7 +204,7 @@ size="mini" style="width: 220px;" class="filter-item" - @change="crud.toQuery" + disabled > - - - - - - {{ item.bom_code }} - {{'可退重量:'+ item.real_weigh_qty }} - - - - - - - - - - - - - - @@ -238,7 +275,7 @@ import CRUD, { crud } from '@crud/crud' import crudGroup from '@/views/wms/basedata/group/group' import crudDeviceinfo from '@/views/wms/basedata/deviceInfo/deviceinfo' import crudCallMaterial from '@/views/wms/pdm/callmaterial/callmaterial' - +import crudPoint from '@/views/wms/sch/point/schBasePoint' export default { name: 'WeighDialog', mixins: [crud()], @@ -262,7 +299,7 @@ export default { remark: null, status: null, supp_code: null, - quality_time: null, + quality_time: new Date(), produce_time: new Date(), execution_stand: null, bake_num: 0, @@ -280,7 +317,9 @@ export default { pcsnList: [], materList: [], deviceList: [], + pointList: [], bomList: [], + vehicleList: [], current: null, dialogVisible: false, rules: { @@ -359,6 +398,14 @@ export default { crudDeviceinfo.getDevice({}).then(res => { this.deviceList = res }) + // 查询工单信息 + crudCallMaterial.queryMaterialBom({}).then(res => { + this.bomList = res + }) + const area_type = 'INOUR01' + crudPoint.getPointList({ 'region_code': area_type }).then(res => { + this.pointList = res + }) }, outReceiveGroup() { if (!this.formMst.material_id) { @@ -408,19 +455,43 @@ export default { this.formMst.material_spec = row.material_spec this.formMst.material_name = row.material_name this.formMst.material_id = row.material_id - // 查询工单信息 - crudCallMaterial.queryMaterialBom({ 'material_id': this.formMst.material_id }).then(res => { - if (res.length === 0) { - this.formMst.bom_list = [] - } - this.bomList = res - }) }).catch(() => { this.formMst.material_spec = '' this.formMst.material_name = '' this.formMst.material_code = '' this.formMst.material_id = '' }) + }, + queryBomMater(value) { + if (value.length === 0) { + this.formMst.material_spec = '' + this.formMst.material_name = '' + this.formMst.material_code = '' + this.formMst.material_id = '' + this.formMst.device_code = '' + } else { + const bom_code = value[0] + for (let i = 0; i < this.bomList.length; i++) { + const row = this.bomList[i] + if (row.bom_code === bom_code) { + // 给物料编码赋值 + this.formMst.material_code = row.material_code + this.queryMater(row.material_code) + // 给机台编码赋值 + this.formMst.device_code = row.device_code + } + } + } + }, + queryVehicle(value) { + crudGroup.queryVehicle({ 'point_code': value }).then(res => { + this.vehicleList = res + }) + }, + queryVehicleType(value) { + crudGroup.queryVehicleType({ 'vehicle_code': value }).then(res => { + this.formMst.box_type = res.storagevehicle_type + }) } } } diff --git a/wms/nladmin-ui/src/views/wms/basedata/group/group.js b/wms/nladmin-ui/src/views/wms/basedata/group/group.js index 5693aa3..9e56c2c 100644 --- a/wms/nladmin-ui/src/views/wms/basedata/group/group.js +++ b/wms/nladmin-ui/src/views/wms/basedata/group/group.js @@ -96,5 +96,22 @@ export function outReceiveGroup(data) { }) } +export function queryVehicle(data) { + return request({ + url: 'api/group/queryVehicle', + method: 'post', + data + }) +} + +export function queryVehicleType(data) { + return request({ + url: 'api/group/queryVehicleType', + method: 'post', + data + }) +} + export default { add, edit, del, queryMater, queryMaterList, checkVehicle, - querySupp, copySave, printDelete, excelImport, getPcsn, outReceiveGroup } + querySupp, copySave, printDelete, excelImport, getPcsn, outReceiveGroup, + queryVehicle, queryVehicleType }