diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/query/PageQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/query/PageQuery.java index 6d45e16..6bf9d84 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/query/PageQuery.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/query/PageQuery.java @@ -27,12 +27,12 @@ public class PageQuery implements Serializable { /** * 分页大小 */ - private Integer size; + private Integer size=100; /** * 当前页数 */ - private Integer page; + private Integer page=0; /** * 排序列 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/secutiry/MobileAuthorizationController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/secutiry/MobileAuthorizationController.java index 98b9bc7..a438b1f 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/secutiry/MobileAuthorizationController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/secutiry/MobileAuthorizationController.java @@ -8,9 +8,9 @@ import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; - - +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; import org.nl.common.exception.BadRequestException; import org.nl.common.utils.RsaUtils; import org.nl.common.utils.dto.CurrentUser; @@ -21,6 +21,7 @@ import org.nl.system.service.secutiry.dto.AuthUserDto; import org.nl.system.service.user.ISysUserService; import org.nl.system.service.user.dao.SysUser; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; @@ -30,6 +31,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import java.util.List; +import java.util.Map; /** * @Author: lyd @@ -38,14 +40,46 @@ import java.util.List; */ @Slf4j @RestController -@RequestMapping("/mobile/auth") +@RequestMapping("/api/bigScreenScreen") public class MobileAuthorizationController { @Autowired private ISysUserService userService; @Autowired private ISysRoleService roleService; - @PostMapping(value = "/login") + @PostMapping("/login") + @SaIgnore + //("手持登陆验证") + public ResponseEntity handLogin(@RequestBody Map whereJson) { + SysUser userInfo = userService.getOne(new QueryWrapper().eq("username", whereJson.get("user"))); + if (userInfo == null || !userInfo.getPassword().equals(SaSecureUtil.md5BySalt(RsaUtils.decryptByPrivateKey(RsaUtils.KEY, whereJson.get("password")), "salt"))) { // 这里需要密码加密 + throw new BadRequestException("账号或密码错误"); + } + if (!userInfo.getIs_used()) { + throw new BadRequestException("账号未激活"); + } + List permissionList = roleService.getPermissionList((JSONObject) JSON.toJSON(userInfo)); + // 登录输入,登出删除 + CurrentUser user = new CurrentUser(); + user.setId(userInfo.getUser_id()); + user.setUsername(userInfo.getUsername()); + user.setPresonName((userInfo.getPerson_name())); + user.setUser(userInfo); + user.setPermissions(permissionList); + // SaLoginModel 配置登录相关参数 + StpUtil.login(userInfo.getUser_id(), new SaLoginModel() + .setDevice("PC") // 此次登录的客户端设备类型, 用于[同端互斥登录]时指定此次登录的设备类型 + .setExtra("loginInfo", JSONObject.toJSONString(user)) // Token挂载的扩展参数 (此方法只有在集成jwt插件时才会生效) + ); + JSONObject result = new JSONObject(); + result.put("token", StpUtil.getTokenValue()); + result.put("roles", permissionList); + result.put("user", user); + return new ResponseEntity<>(TableDataInfo.buildJson(result), HttpStatus.OK); + } + + + @PostMapping(value = "/userLogin") @SaIgnore public ResponseEntity login(@Validated @RequestBody AuthUserDto authUser, HttpServletRequest request) throws Exception { String salt = "salt"; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/dto/AuthUserDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/dto/AuthUserDto.java index bfb4a5a..2eb6e21 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/dto/AuthUserDto.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/dto/AuthUserDto.java @@ -30,8 +30,7 @@ public class AuthUserDto { private String username; - - + private String user; private String password; private String code; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/IMdPbStoragevehicleextService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/IMdPbStoragevehicleextService.java index 06c3e79..1c87e56 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/IMdPbStoragevehicleextService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/IMdPbStoragevehicleextService.java @@ -27,18 +27,4 @@ public interface IMdPbStoragevehicleextService extends IService queryAll(Map whereJson, PageQuery page); - /** - * 更新库存以及仓位状态 - * @param updateIvtList :{ - * type: 更新类型 - * storagevehicle_code: 载具编码 - * material_id: 物料标识 - * pcsn: 批次 - * qty_unit_id: 计量单位标识 - * qty_unit_name: 计量单位名称 - * change_qty: 变动数量 - * remark: 备注 - * } - */ - void updateIvt(List updateIvtList); } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdPbStoragevehicleextMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdPbStoragevehicleextMapper.xml index 22b0640..01844ef 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdPbStoragevehicleextMapper.xml +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdPbStoragevehicleextMapper.xml @@ -4,7 +4,7 @@ SELECT ex.*,st.sect_id,st.sect_code,st.sect_name,st.struct_id,st.struct_code,st.struct_name - FROM md_pb_storagevehicleext ex LEFT JOIN st_ivt_structattr st on ex.storagevehicle_code = st.storagevehicle_code + FROM md_pb_groupplate ex LEFT JOIN st_ivt_structattr st on ex.storagevehicle_code = st.storagevehicle_code material_id = #{material_id} AND @@ -152,19 +152,19 @@ mater.material_code AS mater_code, mater.material_name AS mater_name, ext.pcsn AS batch_no, - ext.canuse_qty AS quantity, + ext.qty AS quantity, unit.unit_code AS unit_code, unit.unit_name AS unit_name, - ext.insert_time AS in_time + ext.create_time AS in_time FROM - md_pb_storagevehicleext ext + md_pb_groupplate ext INNER JOIN st_ivt_structattr attr ON ext.storagevehicle_code = attr.storagevehicle_code INNER JOIN md_me_materialbase mater ON mater.material_id = ext.material_id INNER JOIN md_pb_measureunit unit ON ext.qty_unit_id = unit.measure_unit_id attr.lock_type = '0' AND attr.is_used = "1" - AND ext.canuse_qty > 0 + AND ext.qty > 0 AND mater.material_code = #{param.mater_code} @@ -181,7 +181,7 @@ - ORDER BY ext.insert_time Desc + ORDER BY ext.create_time Desc diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/impl/MdPbStoragevehicleextServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/impl/MdPbStoragevehicleextServiceImpl.java index d23b4e0..c313438 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/impl/MdPbStoragevehicleextServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/impl/MdPbStoragevehicleextServiceImpl.java @@ -26,11 +26,7 @@ import java.util.Map; @Service public class MdPbStoragevehicleextServiceImpl extends ServiceImpl implements IMdPbStoragevehicleextService { - /** - * 更新库存工具类 - */ - @Autowired - private UpdateIvtUtils updateIvtUtils; + @Override public IPage queryAll(Map whereJson, PageQuery page) { @@ -38,10 +34,5 @@ public class MdPbStoragevehicleextServiceImpl extends ServiceImpl updateIvtList) { - for (JSONObject json : updateIvtList) { - updateIvtUtils.updateIvt(json); - } - } + } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/decision_manage/service/strategyConfig/decisioner/impl/base/AlleyAveRuleHandler.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/decision_manage/service/strategyConfig/decisioner/impl/base/AlleyAveRuleHandler.java index e079dc0..fdcdb8d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/decision_manage/service/strategyConfig/decisioner/impl/base/AlleyAveRuleHandler.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/decision_manage/service/strategyConfig/decisioner/impl/base/AlleyAveRuleHandler.java @@ -74,20 +74,8 @@ public class AlleyAveRuleHandler extends Decisioner { return 0; }); List subList = list.subList(0, Math.min(list.size(), 10)); - Structattr result = iStructattrService.getOne( - new LambdaQueryWrapper() - .eq(Structattr::getStruct_code, subList.get(0).getStruct_code()) - ); - if (result.getStoragevehicle_code() != null || !"00".equals(result.getLock_type())) { - log.error("均衡策略分配异常,出现流程节点完成库存延迟锁定,载具号" + param.getString("vehicle_code") + "分配异常,仓位: " + result.getStruct_code() + ",该仓位被其他任务的载具锁定或其锁类型锁住"); - subList = subList.stream().filter(r -> !r.getStruct_code().equals(result.getStruct_code())).collect(Collectors.toList()); - } log.info("均衡策略结果:载具号:" + param.getString("vehicle_code") + "分配结果: " + subList.stream().map(Structattr::getStruct_code).collect(Collectors.toList())); log.info("均衡策略:载具号:" + param.getString("vehicle_code") + "获取仓位耗时:{}", System.currentTimeMillis() - startTime1); - if (subList.size() == 0) { - log.error("均衡策略结果:载具号:" + param.getString("vehicle_code") + "当前分配策略货位数量为0"); - throw new BadRequestException("均衡策略结果:载具号:" + param.getString("vehicle_code") + "当前分配策略货位数量为0"); - } return subList; } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/controller/PdaIosCheckController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/controller/PdaIosCheckController.java index 9b36c5b..21eb59b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/controller/PdaIosCheckController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/controller/PdaIosCheckController.java @@ -5,8 +5,11 @@ import cn.dev33.satoken.annotation.SaIgnore; import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; import org.nl.common.logging.annotation.Log; +import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase; import org.nl.wms.pda.ios_manage.service.PdaIosCheckService; +import org.nl.wms.pda.ios_manage.service.PdaIosInService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -25,13 +28,14 @@ import org.springframework.web.bind.annotation.RestController; */ @RestController @RequiredArgsConstructor -@RequestMapping("/api/pda/iosCheck") +@RequestMapping("/api/groupMater") @Slf4j public class PdaIosCheckController { @Autowired private PdaIosCheckService pdaIosCheckService; - + @Autowired + private PdaIosInService pdaIosInService; @PostMapping("/getDtl") @Log("获取盘点明细") @SaIgnore @@ -39,6 +43,16 @@ public class PdaIosCheckController { return new ResponseEntity<>(pdaIosCheckService.getDtl(whereJson), HttpStatus.OK); } + /** + * 组盘获取物料列表 + */ + @PostMapping("/maters") + @Log("获取物料列表") + @SaIgnore + public ResponseEntity> getMaterialList(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(pdaIosInService.getMaterialList(whereJson), HttpStatus.OK); + } + @PostMapping("/confirm") @Log("确认") @SaIgnore diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/controller/PdaIosInController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/controller/PdaIosInController.java index 1d5ebe0..dd0e2ec 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/controller/PdaIosInController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/controller/PdaIosInController.java @@ -99,7 +99,7 @@ public class PdaIosInController { @PostMapping("/confirmIn") @Log("组盘入库确认") public ResponseEntity confirmIn(@RequestBody JSONObject whereJson) { - assertNotBlankJson(whereJson, "请求参数不能为空", "vehicle_code", "sect_id"); + assertNotBlankJson(whereJson, "请求参数不能为空", "vehicle_code", "sect_id", "site_code"); return new ResponseEntity<>(pdaIosInService.confirmIn(whereJson), HttpStatus.OK); } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/PdaIosInService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/PdaIosInService.java index 38debff..ae06705 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/PdaIosInService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/PdaIosInService.java @@ -2,10 +2,13 @@ package org.nl.wms.pda.ios_manage.service; import com.alibaba.fastjson.JSONObject; import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.vo.SelectItemVo; import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase; import org.nl.wms.pda.util.PdaResponse; import org.springframework.http.ResponseEntity; +import java.util.List; + /** *

* 手持IOS 服务类 @@ -70,7 +73,7 @@ public interface PdaIosInService { * * @return PdaResponse */ - PdaResponse getVehicleMaterial(JSONObject whereJson); + JSONObject getVehicleMaterial(JSONObject whereJson); @@ -79,7 +82,7 @@ public interface PdaIosInService { * * @return PdaResponse */ - PdaResponse getSect(JSONObject whereJson); + List getSect(JSONObject whereJson); /** diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/impl/PdaIosInServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/impl/PdaIosInServiceImpl.java index a8fd9ae..5ff5fc6 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/impl/PdaIosInServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/ios_manage/service/impl/PdaIosInServiceImpl.java @@ -13,6 +13,7 @@ import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; +import org.nl.common.domain.vo.SelectItemVo; import org.nl.common.exception.BadRequestException; import org.nl.common.utils.IdUtil; import org.nl.common.utils.SecurityUtils; @@ -222,13 +223,14 @@ public class PdaIosInServiceImpl implements PdaIosInService { } @Override - public PdaResponse getSect(JSONObject whereJson) { + public List getSect(JSONObject whereJson) { PageQuery pageQuery = new PageQuery(); - pageQuery.setPage(whereJson.getInteger("page") - 1); - pageQuery.setSize(whereJson.getInteger("size")); IPage sectList = iSectattrService.queryAll(new HashMap(), pageQuery); - sectList.getRecords().forEach(r -> r.setSect_name(r.getStor_name() + "-" + r.getSect_name())); - return PdaResponse.requestParamOk(sectList); + List selectList = new ArrayList<>(); + sectList.getRecords().forEach(r -> + selectList.add(SelectItemVo.builder().text(r.getStor_name() + "-" + r.getSect_name()).value(r.getSect_id()).build()) + ); + return selectList; } @Override @@ -241,10 +243,14 @@ public class PdaIosInServiceImpl implements PdaIosInService { } @Override - public PdaResponse getVehicleMaterial(JSONObject whereJson) { + public JSONObject getVehicleMaterial(JSONObject whereJson) { whereJson.put("status", GROUP_PLATE_STATUS.code("组盘")); whereJson.put("vehicleCode", whereJson.getString("search")); - return PdaResponse.requestParamOk(mdPbGroupplateMapper.getVehicleMaterial(whereJson)); + List list = mdPbGroupplateMapper.getVehicleMaterial(whereJson); + if (CollectionUtils.isEmpty(list)) { + throw new BadRequestException("此载具未组盘,请检查!"); + } + return list.get(0); } /** @@ -321,7 +327,7 @@ public class PdaIosInServiceImpl implements PdaIosInService { params.put("pcsn", whereJson.getString("pcsn")); Structattr attrDao = iRawAssistIStorService.getStructattr(whereJson); //确定起点 - SchBasePoint schBasePoint = iSchBasePointService.getOne(new LambdaQueryWrapper().eq(SchBasePoint::getVehicle_code, whereJson.getString("vehicle_code"))); + SchBasePoint schBasePoint = iSchBasePointService.getOne(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_code, whereJson.getString("site_code"))); if (ObjectUtil.isEmpty(schBasePoint)) { throw new BadRequestException("未找到载具所在的点位信息,请检查"); } @@ -356,7 +362,10 @@ public class PdaIosInServiceImpl implements PdaIosInService { //获取起点 SchBasePoint schBasePoint = iSchBasePointService .getOne(new LambdaQueryWrapper().eq(SchBasePoint::getVehicle_code, whereJson.getString("vehicle_code"))); - whereJson.put("point_code", schBasePoint.getPoint_code()); + if (ObjectUtil.isEmpty(schBasePoint)) { + throw new BadRequestException("未找到载具所在的点位信息,请检查该载具是否绑定点位"); + } + whereJson.put("point_code",whereJson.getString("site_code")); // 预组织出入库单据实体 Map jsonMst = organizeInsertData(whereJson); // 调用服务新增出入库单 @@ -422,21 +431,21 @@ public class PdaIosInServiceImpl implements PdaIosInService { jsonMst.put("bill_status", IOSEnum.BILL_STATUS.code("生成")); jsonMst.put("total_qty", total_qty); jsonMst.put("detail_count", 1); - jsonMst.put("bill_type", StatusEnum.IOBILL_TYPE_IN.code("生产出库")); + jsonMst.put("bill_type", StatusEnum.IOBILL_TYPE_IN.code("生产入库")); jsonMst.put("biz_date", DateUtil.now()); // 组织明细数据 ArrayList tableData = new ArrayList<>(); HashMap dtl = new HashMap<>(); GroupPlate plateDao = plateDaoList.get(0); + MdMeMaterialbase materDao = iMdMeMaterialbaseService.getByCode(plateDao.getMaterial_id()); dtl.put("storagevehicle_code", plateDao.getStoragevehicle_code()); - dtl.put("material_id", plateDao.getMaterial_id()); + dtl.put("material_id", materDao.getMaterial_id()); + dtl.put("material_code", materDao.getMaterial_code()); + dtl.put("material_name", materDao.getMaterial_name()); dtl.put("pcsn", plateDao.getPcsn()); dtl.put("qty_unit_id", plateDao.getQty_unit_id()); dtl.put("qty_unit_name", plateDao.getQty_unit_name()); dtl.put("qty", String.valueOf(total_qty)); - MdMeMaterialbase materDao = iMdMeMaterialbaseService.getById(plateDao.getMaterial_id()); - dtl.put("material_code", materDao.getMaterial_code()); - dtl.put("material_name", materDao.getMaterial_name()); dtl.put("plan_qty", String.valueOf(total_qty)); // 调用新增 tableData.add(dtl); diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/util/PdaResponse.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/util/PdaResponse.java index 0459b6e..56f3f38 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/util/PdaResponse.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/util/PdaResponse.java @@ -49,6 +49,7 @@ public class PdaResponse { .build(); } + public static TableDataInfo build(IPage page) { TableDataInfo rspData = new TableDataInfo<>(); rspData.setCode(String.valueOf(HttpStatus.HTTP_OK)); diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/IOStorInvDisMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/IOStorInvDisMapper.xml index 74987b6..9d69d34 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/IOStorInvDisMapper.xml +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/IOStorInvDisMapper.xml @@ -39,12 +39,12 @@ mb.material_code, mb.material_name, task.task_code, - ext.insert_time + ext.create_time as insert_time FROM st_ivt_iostorinvdis dis LEFT JOIN md_me_materialbase mb ON mb.material_id = dis.material_id LEFT JOIN sch_base_task task ON task.task_id = dis.task_id - LEFT JOIN md_pb_storagevehicleext ext ON ext.storagevehicle_code = dis.storagevehicle_code + LEFT JOIN md_pb_groupplate ext ON ext.storagevehicle_code = dis.storagevehicle_code where 1=1 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/StIvtMoreorlessdtlMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/StIvtMoreorlessdtlMapper.xml index fab47aa..02ae235 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/StIvtMoreorlessdtlMapper.xml +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/StIvtMoreorlessdtlMapper.xml @@ -17,12 +17,12 @@ dtl.mol_qty, dtl.status, dtl.source_bill_code, - ext.canuse_qty AS ivt_qty + ext.qty AS ivt_qty FROM st_ivt_moreorlessdtl dtl LEFT JOIN st_ivt_moreorlessmst ios ON ios.mol_id = dtl.mol_id LEFT JOIN md_me_materialbase material ON material.material_id = dtl.material_id - INNER JOIN md_pb_storagevehicleext ext ON ext.storagevehicle_code = dtl.storagevehicle_code + INNER JOIN md_pb_groupplate ext ON ext.storagevehicle_code = dtl.storagevehicle_code AND ext.material_id = dtl.material_id AND dtl.pcsn = ext.pcsn ios.is_delete = '0' diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java index 2311f1d..f2b510f 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java @@ -452,7 +452,7 @@ public class OutBillServiceImpl extends ServiceImpl i jsonIvt.put("qty_unit_name", outAllocation.getQty_unit_name()); jsonIvt.put("change_qty", ioStorInvDis.getPlan_qty()); updateIvtList.add(jsonIvt); - iMdPbStoragevehicleextService.updateIvt(updateIvtList); + iMdPbGroupPlateService.updateIvt(updateIvtList); //分配完成 结束分配 if (unassign_qty==0){ @@ -521,7 +521,7 @@ public class OutBillServiceImpl extends ServiceImpl i jsonIvt.put("qty_unit_name", ioStorInvDis.getQty_unit_name()); jsonIvt.put("change_qty", ioStorInvDis.getPlan_qty()); updateIvtList.add(jsonIvt); - iMdPbStoragevehicleextService.updateIvt(updateIvtList); + iMdPbGroupPlateService.updateIvt(updateIvtList); //解锁库位 JSONObject unlock_map = new JSONObject(); @@ -667,7 +667,7 @@ public class OutBillServiceImpl extends ServiceImpl i jsonIvt.put("qty_unit_name", outAllocation.getQty_unit_name()); jsonIvt.put("change_qty", ioStorInvDis.getPlan_qty()); updateIvtList.add(jsonIvt); - iMdPbStoragevehicleextService.updateIvt(updateIvtList); + iMdPbGroupPlateService.updateIvt(updateIvtList); //分配完成 结束分配 if (unassign_qty==0){ @@ -736,7 +736,7 @@ public class OutBillServiceImpl extends ServiceImpl i jsonIvt.put("qty_unit_name", ioStorInvDis.getQty_unit_name()); jsonIvt.put("change_qty", ioStorInvDis.getPlan_qty()); updateIvtList.add(jsonIvt); - iMdPbStoragevehicleextService.updateIvt(updateIvtList); + iMdPbGroupPlateService.updateIvt(updateIvtList); //解锁库位 JSONObject unlock_map = new JSONObject(); @@ -885,7 +885,7 @@ public class OutBillServiceImpl extends ServiceImpl i jsonIvt.put("qty_unit_name", dtl.getQty_unit_name()); jsonIvt.put("change_qty", ioStorInvDis.getPlan_qty()); updateIvtList.add(jsonIvt); - iMdPbStoragevehicleextService.updateIvt(updateIvtList); + iMdPbGroupPlateService.updateIvt(updateIvtList); } //更新详情 @@ -944,7 +944,7 @@ public class OutBillServiceImpl extends ServiceImpl i jsonIvt.put("qty_unit_name", ioStorInvDis.getQty_unit_name()); jsonIvt.put("change_qty", ioStorInvDis.getPlan_qty()); updateIvtList.add(jsonIvt); - iMdPbStoragevehicleextService.updateIvt(updateIvtList); + iMdPbGroupPlateService.updateIvt(updateIvtList); //解锁库位 JSONObject unlock_map = new JSONObject(); @@ -1119,7 +1119,7 @@ public class OutBillServiceImpl extends ServiceImpl i jsonIvt.put("qty_unit_name", ioStorInvDis.getQty_unit_name()); jsonIvt.put("change_qty", ioStorInvDis.getPlan_qty()); updateIvtList.add(jsonIvt); - iMdPbStoragevehicleextService.updateIvt(updateIvtList); + iMdPbGroupPlateService.updateIvt(updateIvtList); } //更新分配明细数据 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/RawAssistIStorServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/RawAssistIStorServiceImpl.java index 3e8a0d8..99967d7 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/RawAssistIStorServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/RawAssistIStorServiceImpl.java @@ -32,6 +32,7 @@ import org.nl.wms.sch_manage.service.dao.SchBaseTask; import org.nl.wms.sch_manage.service.util.tasks.StInTask; import org.nl.wms.warehouse_management.enums.IOSConstant; import org.nl.wms.warehouse_management.enums.IOSEnum; +import org.nl.wms.warehouse_management.service.IMdPbGroupplateService; import org.nl.wms.warehouse_management.service.IRawAssistIStorService; import org.nl.wms.warehouse_management.service.dao.GroupPlate; import org.nl.wms.warehouse_management.service.dao.IOStorInv; @@ -78,7 +79,7 @@ public class RawAssistIStorServiceImpl extends ServiceImpl(IOStorInvDis.class) .eq(IOStorInvDis::getIostorinvdtl_id,ioStorInvDis.getIostorinvdtl_id()) diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/StIvtMoveinvServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/StIvtMoveinvServiceImpl.java index d6017a3..225d387 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/StIvtMoveinvServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/StIvtMoveinvServiceImpl.java @@ -22,6 +22,7 @@ import org.nl.wms.sch_manage.service.dao.SchBaseTask; import org.nl.wms.sch_manage.service.util.tasks.MoveTask; import org.nl.wms.warehouse_management.enums.IOSConstant; import org.nl.wms.warehouse_management.enums.IOSEnum; +import org.nl.wms.warehouse_management.service.IMdPbGroupplateService; import org.nl.wms.warehouse_management.service.IStIvtMoveinvService; import org.nl.wms.warehouse_management.service.IStIvtMoveinvdtlService; import org.nl.wms.warehouse_management.service.dao.StIvtMoveinv; @@ -32,6 +33,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.*; import java.util.stream.Collectors; @@ -53,10 +55,10 @@ public class StIvtMoveinvServiceImpl extends ServiceImpl implements IStIvtMoveinvdtlService { /** - * 载具扩展属性服务 + * 组盘信息表 */ - @Autowired - private IMdPbStoragevehicleextService iMdPbStoragevehicleextService; + @Resource + private IMdPbGroupplateService iMdPbGroupPlateService; /** * 仓位服务 @@ -132,7 +134,7 @@ public class StIvtMoveinvdtlServiceImpl extends ServiceImpl().lambda() diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/util/UpdateIvtUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/util/UpdateIvtUtils.java index 3cd9af3..4c5ca85 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/util/UpdateIvtUtils.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/util/UpdateIvtUtils.java @@ -6,10 +6,8 @@ import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import org.nl.common.exception.BadRequestException; -import org.nl.common.utils.IdUtil; import org.nl.common.utils.SecurityUtils; import org.nl.wms.basedata_manage.service.IMdPbStoragevehicleextService; -import org.nl.wms.basedata_manage.service.dao.MdPbStoragevehicleext; import org.nl.wms.warehouse_management.enums.IOSConstant; import org.nl.wms.warehouse_management.enums.IOSEnum; import org.nl.wms.warehouse_management.service.IMdPbGroupplateService; @@ -121,26 +119,27 @@ public class UpdateIvtUtils { * @param where 输入参数 */ private void updateAddCanuseInsertIvt(JSONObject where) { + throw new BadRequestException("当前载具已存在库存物料,请检查数据!"); // 判断当前载具是否有物料 - MdPbStoragevehicleext extDao = iMdPbStoragevehicleextService.getOne( - new QueryWrapper().lambda() - .eq(MdPbStoragevehicleext::getStoragevehicle_code, where.getString("storagevehicle_code")) - ); - if (ObjectUtil.isNotEmpty(extDao)) { - throw new BadRequestException("当前载具【"+extDao.getStoragevehicle_code()+"】已存在库存物料,请检查数据!"); - } - - // 插入数据 - MdPbStoragevehicleext extParamDao = JSONObject.parseObject(JSONObject.toJSONString(where), MdPbStoragevehicleext.class); - extParamDao.setStoragevehicleext_id(IdUtil.getStringId()); - extParamDao.setCanuse_qty(where.getBigDecimal("change_qty")); - extParamDao.setFrozen_qty(BigDecimal.valueOf(0)); - extParamDao.setInsert_time(DateUtil.now()); - extParamDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); - extParamDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); - extParamDao.setUpdate_time(DateUtil.now()); - extParamDao.setRemark(where.getString("remark")); - iMdPbStoragevehicleextService.save(extParamDao); + // MdPbStoragevehicleext extDao = iMdPbStoragevehicleextService.getOne( + // new QueryWrapper().lambda() + // .eq(MdPbStoragevehicleext::getStoragevehicle_code, where.getString("storagevehicle_code")) + // ); + // if (ObjectUtil.isNotEmpty(extDao)) { + // throw new BadRequestException("当前载具【"+extDao.getStoragevehicle_code()+"】已存在库存物料,请检查数据!"); + // } + // + // // 插入数据 + // MdPbStoragevehicleext extParamDao = JSONObject.parseObject(JSONObject.toJSONString(where), MdPbStoragevehicleext.class); + // extParamDao.setStoragevehicleext_id(IdUtil.getStringId()); + // extParamDao.setCanuse_qty(where.getBigDecimal("change_qty")); + // extParamDao.setFrozen_qty(BigDecimal.valueOf(0)); + // extParamDao.setInsert_time(DateUtil.now()); + // extParamDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); + // extParamDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); + // extParamDao.setUpdate_time(DateUtil.now()); + // extParamDao.setRemark(where.getString("remark")); + // iMdPbStoragevehicleextService.save(extParamDao); } /** @@ -149,30 +148,30 @@ public class UpdateIvtUtils { */ private void updateAddFrozenIvt(JSONObject where) { // 找当前托盘物料库存 - MdPbStoragevehicleext extDao = iMdPbStoragevehicleextService.getOne( - new QueryWrapper().lambda() - .eq(MdPbStoragevehicleext::getStoragevehicle_code, where.getString("storagevehicle_code")) - .eq(MdPbStoragevehicleext::getMaterial_id, where.getString("material_id")) - .eq(MdPbStoragevehicleext::getPcsn, where.getString("pcsn")) + GroupPlate extDao = iMdPbGroupPlateService.getOne( + new QueryWrapper().lambda() + .eq(GroupPlate::getStoragevehicle_code, where.getString("storagevehicle_code")) + .eq(GroupPlate::getMaterial_id, where.getString("material_id")) + .eq(GroupPlate::getPcsn, where.getString("pcsn")) ); if (ObjectUtil.isEmpty(extDao)) { - throw new BadRequestException("当前载具【"+extDao.getStoragevehicle_code()+"】不存在相关物料批次库存,请检查数据!"); + throw new BadRequestException("当前载具【" + extDao.getStoragevehicle_code() + "】不存在相关物料批次库存,请检查数据!"); } // 减可用数 - double canuse_qty = NumberUtil.sub(extDao.getCanuse_qty(), where.getDoubleValue("change_qty")).doubleValue(); + double canuse_qty = NumberUtil.sub(extDao.getQty(), where.getDoubleValue("change_qty")).doubleValue(); if (canuse_qty < 0) { - throw new BadRequestException("可用数不能为负数,请检查变动数量!当前可用数为【"+extDao.getCanuse_qty()+"】当前变动数为【"+where.getDoubleValue("change_qty")+"】"); + throw new BadRequestException("可用数不能为负数,请检查变动数量!当前可用数为【" + extDao.getQty() + "】当前变动数为【" + where.getDoubleValue("change_qty") + "】"); } // 加冻结数 double frozen_qty = NumberUtil.add(extDao.getFrozen_qty(), where.getDoubleValue("change_qty")).doubleValue(); - - extDao.setCanuse_qty(BigDecimal.valueOf(canuse_qty)); + extDao.setQty(BigDecimal.valueOf(canuse_qty)); extDao.setFrozen_qty(BigDecimal.valueOf(frozen_qty)); extDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); extDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); extDao.setUpdate_time(DateUtil.now()); extDao.setRemark(where.getString("remark")); - iMdPbStoragevehicleextService.updateById(extDao); + iMdPbGroupPlateService.updateById(extDao); + ; } /** @@ -181,23 +180,23 @@ public class UpdateIvtUtils { */ private void updateSubFrozenIvt(JSONObject where) { // 找当前托盘物料库存 - MdPbStoragevehicleext extDao = iMdPbStoragevehicleextService.getOne( - new QueryWrapper().lambda() - .eq(MdPbStoragevehicleext::getStoragevehicle_code, where.getString("storagevehicle_code")) - .eq(MdPbStoragevehicleext::getMaterial_id, where.getString("material_id")) - .eq(MdPbStoragevehicleext::getPcsn, where.getString("pcsn")) + GroupPlate extDao = iMdPbGroupPlateService.getOne( + new QueryWrapper().lambda() + .eq(GroupPlate::getStoragevehicle_code, where.getString("storagevehicle_code")) + .eq(GroupPlate::getMaterial_id, where.getString("material_id")) + .eq(GroupPlate::getPcsn, where.getString("pcsn")) ); if (ObjectUtil.isEmpty(extDao)) { - throw new BadRequestException("当前载具【"+extDao.getStoragevehicle_code()+"】不存在相关物料批次库存,请检查数据!"); + throw new BadRequestException("当前载具【" + extDao.getStoragevehicle_code() + "】不存在相关物料批次库存,请检查数据!"); } + // 减冻结 double frozen_qty = NumberUtil.sub(extDao.getFrozen_qty(), where.getDoubleValue("change_qty")).doubleValue(); if (frozen_qty < 0) { - throw new BadRequestException("冻结数不能为负数,请检查变动数量!当前冻结数为【"+extDao.getFrozen_qty()+"】当前变动数为【"+where.getDoubleValue("change_qty")+"】"); + throw new BadRequestException("冻结数不能为负数,请检查变动数量!当前冻结数为【" + extDao.getFrozen_qty() + "】当前变动数为【" + where.getDoubleValue("change_qty") + "】"); } - // 如果可用数和冻结数都为零则删除数据 - if (frozen_qty == 0 && extDao.getCanuse_qty().doubleValue() == 0) { + if (frozen_qty == 0 && extDao.getQty().doubleValue() == 0) { iMdPbStoragevehicleextService.removeById(extDao); } else { extDao.setFrozen_qty(BigDecimal.valueOf(frozen_qty)); @@ -205,7 +204,8 @@ public class UpdateIvtUtils { extDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); extDao.setUpdate_time(DateUtil.now()); extDao.setRemark(where.getString("remark")); - iMdPbStoragevehicleextService.updateById(extDao); + iMdPbGroupPlateService.updateById(extDao); + ; } } @@ -215,12 +215,6 @@ public class UpdateIvtUtils { */ private void updateSubFrozenAddIvt(JSONObject where) { // 找当前托盘物料库存 - // MdPbStoragevehicleext extDao = iMdPbStoragevehicleextService.getOne( - // new QueryWrapper().lambda() - // .eq(MdPbStoragevehicleext::getStoragevehicle_code, where.getString("storagevehicle_code")) - // .eq(MdPbStoragevehicleext::getMaterial_id, where.getString("material_id")) - // .eq(MdPbStoragevehicleext::getPcsn, where.getString("pcsn")) - // ); GroupPlate extDao = iMdPbGroupPlateService.getOne( new QueryWrapper().lambda() .eq(GroupPlate::getStoragevehicle_code, where.getString("storagevehicle_code")) @@ -236,7 +230,7 @@ public class UpdateIvtUtils { throw new BadRequestException("冻结数不能为负数,请检查变动数量!当前冻结数为【" + extDao.getFrozen_qty() + "】当前变动数为【" + where.getDoubleValue("change_qty") + "】"); } // 加可用 - // double canuse_qty = NumberUtil.add(extDao.getCanuse_qty(), where.getDoubleValue("change_qty")).doubleValue(); + // double canuse_qty = NumberUtil.add(extDao.getQty(), where.getDoubleValue("change_qty")).doubleValue(); extDao.setFrozen_qty(BigDecimal.ZERO); extDao.setQty(BigDecimal.valueOf(qty)); extDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); @@ -251,23 +245,23 @@ public class UpdateIvtUtils { * @param where 输入参数 */ private void updateAddCanuseIvt(JSONObject where) { - MdPbStoragevehicleext extDao = iMdPbStoragevehicleextService.getOne( - new QueryWrapper().lambda() - .eq(MdPbStoragevehicleext::getStoragevehicle_code, where.getString("storagevehicle_code")) - .eq(MdPbStoragevehicleext::getMaterial_id, where.getString("material_id")) - .eq(MdPbStoragevehicleext::getPcsn, where.getString("pcsn")) + GroupPlate extDao = iMdPbGroupPlateService.getOne( + new QueryWrapper().lambda() + .eq(GroupPlate::getStoragevehicle_code, where.getString("storagevehicle_code")) + .eq(GroupPlate::getMaterial_id, where.getString("material_id")) + .eq(GroupPlate::getPcsn, where.getString("pcsn")) ); if (ObjectUtil.isEmpty(extDao)) { - throw new BadRequestException("当前载具【"+extDao.getStoragevehicle_code()+"】不存在相关物料批次库存,请检查数据!"); + throw new BadRequestException("当前载具【" + extDao.getStoragevehicle_code() + "】不存在相关物料批次库存,请检查数据!"); } - - double canuse_qty = NumberUtil.add(extDao.getCanuse_qty(), where.getDoubleValue("change_qty")).doubleValue(); - extDao.setCanuse_qty(BigDecimal.valueOf(canuse_qty)); + double canuse_qty = NumberUtil.add(extDao.getQty(), where.getDoubleValue("change_qty")).doubleValue(); + extDao.setQty(BigDecimal.valueOf(canuse_qty)); extDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); extDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); extDao.setUpdate_time(DateUtil.now()); extDao.setRemark(where.getString("remark")); - iMdPbStoragevehicleextService.updateById(extDao); + iMdPbGroupPlateService.updateById(extDao); + ; } /** @@ -275,26 +269,25 @@ public class UpdateIvtUtils { * @param where 输入参数 */ private void updateSubCanuseIvt(JSONObject where) { - MdPbStoragevehicleext extDao = iMdPbStoragevehicleextService.getOne( - new QueryWrapper().lambda() - .eq(MdPbStoragevehicleext::getStoragevehicle_code, where.getString("storagevehicle_code")) - .eq(MdPbStoragevehicleext::getMaterial_id, where.getString("material_id")) - .eq(MdPbStoragevehicleext::getPcsn, where.getString("pcsn")) + GroupPlate extDao = iMdPbGroupPlateService.getOne( + new QueryWrapper().lambda() + .eq(GroupPlate::getStoragevehicle_code, where.getString("storagevehicle_code")) + .eq(GroupPlate::getMaterial_id, where.getString("material_id")) + .eq(GroupPlate::getPcsn, where.getString("pcsn")) ); if (ObjectUtil.isEmpty(extDao)) { - throw new BadRequestException("当前载具【"+extDao.getStoragevehicle_code()+"】不存在相关物料批次库存,请检查数据!"); + throw new BadRequestException("当前载具【" + extDao.getStoragevehicle_code() + "】不存在相关物料批次库存,请检查数据!"); } - - double canuse_qty = NumberUtil.sub(extDao.getCanuse_qty(), where.getDoubleValue("change_qty")).doubleValue(); + double canuse_qty = NumberUtil.sub(extDao.getQty(), where.getDoubleValue("change_qty")).doubleValue(); if (canuse_qty < 0) { - throw new BadRequestException("可用数不能为负数,请检查变动数量!当前可用数为【"+extDao.getCanuse_qty()+"】当前变动数为【"+where.getDoubleValue("change_qty")+"】"); + throw new BadRequestException("可用数不能为负数,请检查变动数量!当前可用数为【" + extDao.getQty() + "】当前变动数为【" + where.getDoubleValue("change_qty") + "】"); } - extDao.setCanuse_qty(BigDecimal.valueOf(canuse_qty)); + extDao.setQty(BigDecimal.valueOf(canuse_qty)); extDao.setUpdate_optid(SecurityUtils.getCurrentUserId()); extDao.setUpdate_optname(SecurityUtils.getCurrentNickName()); extDao.setUpdate_time(DateUtil.now()); extDao.setRemark(where.getString("remark")); - iMdPbStoragevehicleextService.updateById(extDao); + iMdPbGroupPlateService.updateById(extDao); } }