diff --git a/src/main/java/com/glxp/api/controller/auth/SysWorkplaceQueueController.java b/src/main/java/com/glxp/api/controller/auth/SysWorkplaceQueueController.java new file mode 100644 index 000000000..97a83440d --- /dev/null +++ b/src/main/java/com/glxp/api/controller/auth/SysWorkplaceQueueController.java @@ -0,0 +1,85 @@ +package com.glxp.api.controller.auth; + +import com.github.pagehelper.PageInfo; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.controller.BaseController; +import com.glxp.api.entity.basic.SysWorkplaceQueue; +import com.glxp.api.req.basic.SysWorkplaceQueueRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.service.basic.SysWorkplaceQueueService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * @author : zhangsan + * @date : 2024/10/30 9:55 + * @modyified By : + */ + +@Slf4j +@RestController +public class SysWorkplaceQueueController extends BaseController { + + + @Resource + SysWorkplaceQueueService sysWorkplaceQueueService; + + @GetMapping("/udiwms/sysWorkplaceQueue/page") + public BaseResponse page(SysWorkplaceQueueRequest request) { + List page = sysWorkplaceQueueService.filterList(request); + PageInfo pageInfo = new PageInfo<>(page); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(page); + return ResultVOUtils.success(pageSimpleResponse); + } + + + @PostMapping("/udiwms/sysWorkplaceQueue/addQueue") + public BaseResponse addQueue(@RequestBody SysWorkplaceQueue sysWorkplaceQueue) { + // 创建时间 更新时间 + sysWorkplaceQueue.setCreateTime(new Date()); + sysWorkplaceQueue.setCreateUser(getUserId() + ""); + sysWorkplaceQueue.setUpdateUser(getUserId() + ""); + sysWorkplaceQueue.setUpdateTime(new Date()); + boolean save = sysWorkplaceQueueService.saveQueue(sysWorkplaceQueue); + if (!save) { + return ResultVOUtils.error("新增错误"); + } + return ResultVOUtils.success("新增成功"); + } + + @PostMapping("/udiwms/sysWorkplaceQueue/update") + public BaseResponse page(@RequestBody SysWorkplaceQueue sysWorkplaceQueue) { + sysWorkplaceQueue.setUpdateTime(new Date()); + sysWorkplaceQueue.setUpdateUser(getUserId() + ""); + boolean b = sysWorkplaceQueueService.updateById(sysWorkplaceQueue); + if (!b){ + return ResultVOUtils.error(500,"更新失败"); + } + return ResultVOUtils.success("更新成功"); + } + + @PostMapping("/udiwms/sysWorkplaceQueue/delete") + public BaseResponse deleteById(@RequestBody SysWorkplaceQueue sysWorkplaceQueue) { + //删除 + sysWorkplaceQueueService.removeById(sysWorkplaceQueue); + return ResultVOUtils.success(); + } + + + @PostMapping("/udiwms/sysWorkplace/createQueueCode") + public BaseResponse createWorkplaceId() { + String code = sysWorkplaceQueueService.createQueueCode(); + return ResultVOUtils.success(code); + } +} + diff --git a/src/main/java/com/glxp/api/controller/collect/IoCollectOrderCodeManController.java b/src/main/java/com/glxp/api/controller/collect/IoCollectOrderCodeManController.java index f5e2e5c47..2e1d33bf7 100644 --- a/src/main/java/com/glxp/api/controller/collect/IoCollectOrderCodeManController.java +++ b/src/main/java/com/glxp/api/controller/collect/IoCollectOrderCodeManController.java @@ -201,4 +201,25 @@ public class IoCollectOrderCodeManController extends BaseController { return ResultVOUtils.success("操作成功!"); } + @PostMapping("/udiwms/ioSplit/collect/code/removeByScanCode") + public BaseResponse removeByScanCode(@RequestBody @Valid DeleteTageCodeRequest deleteTageCodeRequest, + BindingResult bindingResult) { + //codes orderId + String orderId = deleteTageCodeRequest.getOrderId(); + IoCollectOrder ioCollectOrder = collectOrderService.getByBillNo(orderId); + if (ioCollectOrder == null) + return ResultVOUtils.error(500, "单据不存在"); + if (CollUtil.isNotEmpty(deleteTageCodeRequest.getCodeList())) { + List ioCollectOrderCodes = collectOrderCodeManService.selectByCodeAndOrderId(deleteTageCodeRequest.getCodeList(), orderId); + for (IoCollectOrderCodeMan ioCollectOrderCode : ioCollectOrderCodes) { + deleteTageCodeRequest.setDelType(1); + deleteTageCodeRequest.setCodeManId(Long.valueOf(ioCollectOrderCode.getId())); + collectOrderService.removeCode(deleteTageCodeRequest); + } + } + else + return ResultVOUtils.error("无效条码"); + return ResultVOUtils.success("剔除成功!"); + } + } diff --git a/src/main/java/com/glxp/api/dao/basic/SysWorkplaceQueueMapper.java b/src/main/java/com/glxp/api/dao/basic/SysWorkplaceQueueMapper.java index e5a39b14f..9687d3297 100644 --- a/src/main/java/com/glxp/api/dao/basic/SysWorkplaceQueueMapper.java +++ b/src/main/java/com/glxp/api/dao/basic/SysWorkplaceQueueMapper.java @@ -2,8 +2,13 @@ package com.glxp.api.dao.basic; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.glxp.api.entity.basic.SysWorkplaceQueue; +import com.glxp.api.req.basic.SysWorkplaceQueueRequest; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + @Mapper public interface SysWorkplaceQueueMapper extends BaseMapper { -} \ No newline at end of file + + List filterList(SysWorkplaceQueueRequest request); +} diff --git a/src/main/java/com/glxp/api/req/basic/SysWorkplaceQueueRequest.java b/src/main/java/com/glxp/api/req/basic/SysWorkplaceQueueRequest.java new file mode 100644 index 000000000..6ba98950f --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/SysWorkplaceQueueRequest.java @@ -0,0 +1,24 @@ +package com.glxp.api.req.basic; + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import java.util.List; + +/** + * @author : zhangsan + * @date : 2024/10/30 10:42 + * @modyified By : + */ + +@Data +public class SysWorkplaceQueueRequest extends ListPageRequest { + private String key; + private String code; + private String name; + private Long workPlaceIdFk; + + + + +} diff --git a/src/main/java/com/glxp/api/req/inout/DeleteTageCodeRequest.java b/src/main/java/com/glxp/api/req/inout/DeleteTageCodeRequest.java index 810040af3..dd6bf4aeb 100644 --- a/src/main/java/com/glxp/api/req/inout/DeleteTageCodeRequest.java +++ b/src/main/java/com/glxp/api/req/inout/DeleteTageCodeRequest.java @@ -19,5 +19,8 @@ public class DeleteTageCodeRequest { private List codeManIds; + private List codeList; + private String orderId; + } diff --git a/src/main/java/com/glxp/api/service/basic/SysWorkplaceQueueService.java b/src/main/java/com/glxp/api/service/basic/SysWorkplaceQueueService.java index 5d98843a2..38da535a3 100644 --- a/src/main/java/com/glxp/api/service/basic/SysWorkplaceQueueService.java +++ b/src/main/java/com/glxp/api/service/basic/SysWorkplaceQueueService.java @@ -1,12 +1,60 @@ package com.glxp.api.service.basic; +import cn.hutool.core.util.IdUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.github.pagehelper.PageHelper; +import com.glxp.api.exception.JsonException; +import com.glxp.api.req.basic.SysWorkplaceQueueRequest; +import com.glxp.api.res.basic.SysWorkplaceResponse; +import org.springframework.data.annotation.Reference; import org.springframework.stereotype.Service; -import javax.annotation.Resource; -import java.util.List; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.glxp.api.entity.basic.SysWorkplaceQueue; import com.glxp.api.dao.basic.SysWorkplaceQueueMapper; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + @Service public class SysWorkplaceQueueService extends ServiceImpl { + @Resource + private SysWorkplaceQueueMapper sysWorkplaceQueueMapper; + + + public List filterList(SysWorkplaceQueueRequest request) { + if (null == request) { + return Collections.emptyList(); + } + if (null != request.getPage() && null != request.getLimit()) { + PageHelper.offsetPage((request.getPage() - 1) * request.getLimit(), request.getLimit()); + } + return sysWorkplaceQueueMapper.filterList(request); + } + + public String createQueueCode() { + Long s = IdUtil.getSnowflakeNextId(); + long eightDigitId = s % 100000000; + String code = "DM" + eightDigitId; + SysWorkplaceQueue sysWorkplaceQueue = sysWorkplaceQueueMapper.selectOne(new LambdaQueryWrapper().eq(SysWorkplaceQueue::getCode, code)); + if (sysWorkplaceQueue != null){ + this.createQueueCode(); + } + return code; + } + + public boolean saveQueue(SysWorkplaceQueue sysWorkplaceQueue) { + SysWorkplaceQueue sysWorkplaceQueue1 = sysWorkplaceQueueMapper.selectOne(new LambdaQueryWrapper().eq(SysWorkplaceQueue::getName, sysWorkplaceQueue.getName())); + if (sysWorkplaceQueue1 != null){ + throw new JsonException(500,"当前分格已存在"); + } + int insert = sysWorkplaceQueueMapper.insert(sysWorkplaceQueue); + if (insert == 0){ + return false; + } + return true; + } + + } diff --git a/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java b/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java index af82a4798..a104a44fb 100644 --- a/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java +++ b/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java @@ -20,6 +20,7 @@ import com.glxp.api.entity.basic.UdiEntity; import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrderBiz; import com.glxp.api.entity.collect.IoCollectOrderCodeMan; +import com.glxp.api.entity.inout.IoCodeTempEntity; import com.glxp.api.entity.inout.IoSplitCodeEntity; import com.glxp.api.entity.inv.AnncmntProductEntity; import com.glxp.api.entity.thrsys.ThrBusTypeOriginEntity; @@ -556,4 +557,10 @@ public class IoCollectOrderCodeManService extends ServiceImpl selectByCodeAndOrderId(List codes, String orderId) { + QueryWrapper ew = new QueryWrapper<>(); + ew.eq("orderIdFk", orderId); + ew.in("udiCode", codes); + return collectOrderCodeManMapper.selectList(ew); + } } diff --git a/src/main/resources/mybatis/mapper/basic/SysWorkplaceQueueMapper.xml b/src/main/resources/mybatis/mapper/basic/SysWorkplaceQueueMapper.xml index 7a93d0869..2ca160d2b 100644 --- a/src/main/resources/mybatis/mapper/basic/SysWorkplaceQueueMapper.xml +++ b/src/main/resources/mybatis/mapper/basic/SysWorkplaceQueueMapper.xml @@ -1,21 +1,44 @@ - - - - - - - - - - - - - - - - id, code, `name`, workPlaceIdFk, remark, createTime, updateTime, `createUser`, updateUser - - \ No newline at end of file + + + + + + + + + + + + + + + + id, code, `name`, workPlaceIdFk, remark, createTime, updateTime, `createUser`, updateUser + + + + + diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index 5be586875..c35778230 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -4568,7 +4568,7 @@ CALL Pro_Temp_ColumnWork('io_code_temp', 'drugLink', -CREATE TABLE `sys_workplace_queue` +CREATE TABLE IF NOT EXISTS `sys_workplace_queue` ( `id` int NOT NULL AUTO_INCREMENT, `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '货架编码',