10/12 bug优化1.0

dev_no_inv
wangwei 9 months ago
parent 59614c8fc1
commit 372d633d3b

@ -299,4 +299,26 @@ public class SysWorkplaceController extends BaseController {
}
return ResultVOUtils.success("更新成功");
}
@PostMapping("/udiwms/sysWorkplace/getListByBusType")
public BaseResponse getListByBusType(@RequestBody SysWorkplaceRequest request) {
// Page<SystemWorkplace> page = sysWorkplaceService.page(new Page<>(request.getPage(), request.getLimit()), Wrappers.lambdaQuery(SystemWorkplace.class)
// .eq(StrUtil.isNotBlank(request.getInvCode()),SystemWorkplace::getInvCode,request.getInvCode())
// .like(StrUtil.isNotBlank(request.getKey()),SystemWorkplace::getWorkplaceId,request.getKey())
// .or()
// .like(StrUtil.isNotBlank(request.getKey()),SystemWorkplace::getWorkplaceName,request.getKey())
// );
request.setUserId(getUserId() + "");
DeptEntity deptEntity = deptService.selectByCode(request.getDeptCode());
if (deptEntity.getPid() == 0){
request.setDeptCode(null);
}
List<SysWorkplaceResponse> page = sysWorkplaceService.getListByBusType(request);
PageInfo<SysWorkplaceResponse> pageInfo = new PageInfo<>(page);
PageSimpleResponse<SysWorkplaceResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(page);
return ResultVOUtils.success(pageSimpleResponse);
}
}

@ -96,7 +96,10 @@ public class IoCollectOrderBackupController extends BaseController {
public BaseResponse orderUpload(@RequestBody CollectOrderRequest collectOrderRequest) {
if (StrUtil.isEmpty(collectOrderRequest.getBillNo()))
return ResultVOUtils.error(500, "单据号不能为空");
ioCollectOrderBackupService.orderUpload(collectOrderRequest.getBillNo());
Boolean aBoolean = ioCollectOrderBackupService.orderUpload(collectOrderRequest.getBillNo());
if (!aBoolean){
return ResultVOUtils.error("上传失败");
}
return ResultVOUtils.success();
}

@ -82,7 +82,7 @@ public class IoCollectOrderController extends BaseController {
request.setLimit(100);
request.setUserId(userId.toString());
page = basicCollectUserService.filterList(request);
if (page != null) {
if (page != null && page.size() > 0) {
workPlaceCodes = page.stream()
.map(UserWorkResponse::getWorkplaceId)
.collect(Collectors.toList());

@ -10,14 +10,13 @@ import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderOrigin;
import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.exception.JsonException;
import com.glxp.api.req.collect.CollectOrderBizRequest;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.res.collect.CollectOrderBizResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.res.inout.IoOrderDetailCodeResponse;
import com.glxp.api.res.inout.VailCodeResultResponse;
import com.glxp.api.service.collect.IoCollectCodeService;
import com.glxp.api.service.collect.IoCollectOrderBizBackupService;
import com.glxp.api.service.collect.IoCollectOrderService;
import com.glxp.api.service.collect.IoCollectOriginService;
import com.glxp.api.service.collect.*;
import com.glxp.api.service.inout.impl.IoCodeService;
import com.glxp.api.service.inv.impl.InvProductDetailService;
import org.aspectj.weaver.ast.Var;
@ -117,6 +116,9 @@ public class IoCodeTempController extends BaseController {
@Resource
IoSplitFifoInvService ioSplitFifoInvService;
@Resource
IoCollectOrderBackupService ioCollectOrderBackupService;
/**
* PDA-----
*/
@ -319,7 +321,7 @@ public class IoCodeTempController extends BaseController {
UdiRelevanceResponse checkUdi = udiRelevanceService.selectByNameCode(udiEntity.getUdi());
if (checkUdi == null) {
return ResultVOUtils.error(500, "产品字典不存在此产品!");
return ResultVOUtils.error(500, "耗材字典不存在此产品!");
}
boolean checkSuccess = true;
String lostMsg = "";
@ -682,6 +684,7 @@ public class IoCodeTempController extends BaseController {
}
String orderId = addOrderRequest.getBillNo();
//三期校验
@ -804,6 +807,24 @@ public class IoCodeTempController extends BaseController {
}
//校验码表是否已经存在追溯码 io_code_temp
IoCodeTempEntity codeTempEntity1 = codeTempService.selectByCode(code,udiEntity.getBatchNo(),bussinessTypeEntity.getAction());
if (codeTempEntity1 != null){
return ResultVOUtils.error(533,"扫码重复或当前追溯码已存在草稿单据中!");
}
//校验工位存量是否存在
if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT)) {
IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(code, addOrderRequest.getWorkPlaceCode());
if (fifoCodeEntity != null && StrUtil.isNotEmpty(fifoCodeEntity.getSerialNo())) {
return ResultVOUtils.error(533, "当前追溯码已存在!");
}
} else {
IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(code, addOrderRequest.getWorkPlaceCode());
if (fifoCodeEntity == null) {
return ResultVOUtils.error(500, "当前追溯码未上货!");
}
}
//校验预验收是否已存在
if (bussinessTypeEntity.getActionType() == ConstantStatus.ACTION_TYPE_PREIN && bussinessTypeEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
if (StrUtil.isNotEmpty(udiEntity.getSerialNo())) {
@ -851,14 +872,6 @@ public class IoCodeTempController extends BaseController {
addOrderRequest.setFromCorp(fromCorp);
}
//校验工位存量是否存在
if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT)) {
IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(code, null);
if (fifoCodeEntity != null && StrUtil.isNotEmpty(fifoCodeEntity.getSerialNo())) {
return ResultVOUtils.error(500, "当前追溯码已存在!");
}
}
//先生成扫码单据
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
@ -1291,14 +1304,13 @@ public class IoCodeTempController extends BaseController {
}
//校验码表是否已经存在追溯码 io_code_temp
IoCodeTempEntity codeTempEntity = codeTempService.selectByCode(code,udiEntity.getBatchNo(),bussinessTypeEntity.getAction());
if (codeTempEntity != null){
return ResultVOUtils.error(533,"扫码重复或当前追溯码已存在草稿单据中!");
}
//校验工位存量是否存在
if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT)) {
//校验码表是否已经存在追溯码 io_code_temp
IoCodeTempEntity codeTempEntity = codeTempService.selectByCode(code,udiEntity.getBatchNo());
if (codeTempEntity != null){
return ResultVOUtils.error(533,"当前追溯码已存在草稿单据中!");
}
IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(code, addOrderRequest.getWorkPlaceCode());
if (fifoCodeEntity != null && StrUtil.isNotEmpty(fifoCodeEntity.getSerialNo())) {
return ResultVOUtils.error(533, "当前追溯码已存在!");
@ -1309,10 +1321,6 @@ public class IoCodeTempController extends BaseController {
if (fifoCodeEntity == null) {
return ResultVOUtils.error(500, "当前追溯码未上货!");
}
IoCodeTempEntity codeTempEntity = codeTempService.selectByCode(code,udiEntity.getBatchNo());
if (codeTempEntity != null){
return ResultVOUtils.error(533,"当前追溯码已存在草稿单据中!");
}
}
@ -2612,11 +2620,14 @@ public class IoCodeTempController extends BaseController {
}
String orderFinishBillNo = addOrderCodeRequest.getOrderFinishBillNo();
List<IoCollectCode> list = ioCollectCodeService.list(new LambdaUpdateWrapper<IoCollectCode>().eq(IoCollectCode::getBillNo, orderFinishBillNo));
if (CollUtil.isEmpty(list)) return ResultVOUtils.error(500, "未找到已完成单的码明细");
// List<IoCollectCode> list = ioCollectCodeService.list(new LambdaUpdateWrapper<IoCollectCode>().eq(IoCollectCode::getBillNo, orderFinishBillNo));
CollectOrderBizRequest collectOrderBizRequest = new CollectOrderBizRequest();
collectOrderBizRequest.setOrderIdFk(orderFinishBillNo);
List<CollectOrderBizResponse> collectOrderBizResponses = ioCollectOrderBackupService.combieOrderDetail(collectOrderBizRequest);
if (CollUtil.isEmpty(collectOrderBizResponses)) return ResultVOUtils.error(500, "未找到已完成单的码明细");
List<String> codeList = new ArrayList<>();
list.forEach(item -> {
String code = item.getCode();
collectOrderBizResponses.forEach(item -> {
String code = item.getFinishUdiCode();
Integer reCountObj = item.getScanCount();
int reCount = reCountObj != null ? reCountObj : 0; // 如果reCountObj为null则默认为0次迭代
for (int i = 0; i < reCount; i++) {

@ -23,4 +23,5 @@ public interface SysWorkplaceDao extends BaseMapper<SysWorkplace> {
List<SysWorkplaceResponse> getAllByBusType(String busTypeCode);
List<SysWorkplaceResponse> getListByBusType(@Param("request") SysWorkplaceRequest request);
}

@ -30,6 +30,8 @@ public class SysWorkplaceRequest extends ListPageRequest {
private List<Long> workPlaceIds;
private String chargeUser;
private String userId;
private String busType;
private Boolean userIdFlag;

@ -81,4 +81,15 @@ public class SysWorkplaceService extends ServiceImpl<SysWorkplaceDao, SysWorkpla
}
return true;
}
public List<SysWorkplaceResponse> getListByBusType(SysWorkplaceRequest request) {
if (null == request) {
return Collections.emptyList();
}
if (null != request.getPage() && null != request.getLimit()) {
PageHelper.offsetPage((request.getPage() - 1) * request.getLimit(), request.getLimit());
}
List<SysWorkplaceResponse> page = super.baseMapper.getListByBusType(request);
return page;
}
}

@ -273,7 +273,7 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
@Transactional(rollbackFor = Exception.class)
public void orderUpload(String billNo) {
public Boolean orderUpload(String billNo) {
IoCollectOrderBackup updateOrder = new IoCollectOrderBackup();
updateOrder.setBillNo(billNo);
try {
@ -285,5 +285,9 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
}
//更新状态
this.updateByBillNo(updateOrder);
if (updateOrder.getUploadStatus() == 3){
return false;
}
return true;
}
}

@ -283,7 +283,7 @@ public class IoSplitDesOrderService extends ServiceImpl<IoSplitDesOrderMapper, I
}
// int newAvailableCount = splitFifoInv.getAvailableCount() - availableCount;
splitFifoInv.setAvailableCount(availableCount);//可用数量
splitFifoInv.setInCount(splitFifoInv.getInCount() - addInvDesDetaiRequest.getOutCount());
// splitFifoInv.setInCount(splitFifoInv.getInCount() - addInvDesDetaiRequest.getOutCount());
splitFifoInv.setUpdateTime(new Date());
//更改 库存
boolean update = ioSplitFifoInvService.updateById(splitFifoInv);

@ -50,5 +50,5 @@ public interface IoCodeTempService {
Boolean checkTempCode(IoCodeTempEntity ioCodeTempEntity);
IoCodeTempEntity selectByCode(String code,String batchNo);
IoCodeTempEntity selectByCode(String code,String batchNo,String action);
}

@ -154,10 +154,11 @@ public class IoCodeTempServiceImpl implements IoCodeTempService {
}
@Override
public IoCodeTempEntity selectByCode(String code,String batchNo) {
public IoCodeTempEntity selectByCode(String code,String batchNo,String action) {
QueryWrapper<IoCodeTempEntity> ew = new QueryWrapper<>();
ew.eq("code",code);
ew.eq(StrUtil.isNotEmpty(batchNo), "batchNo", batchNo);
ew.eq(StrUtil.isNotEmpty(action), "action", action);
return ioCodeTempDao.selectOne(ew);
}

@ -60,4 +60,56 @@
</where>
GROUP BY sys_workplace.workplaceId
</select>
<select id="getListByBusType" resultType="com.glxp.api.res.basic.SysWorkplaceResponse">
select sw.*, aw.name invName,auth_user.employeeName as employeeName,scps.name as categoryName,
ad.name as deptCodeName
from sys_workplace sw
left join auth_dept ad on sw.deptCode = ad.code
left join auth_warehouse aw on sw.invCode = aw.code
left join auth_user on sw.chargeUser = auth_user.id
left join basic_collect_point_category scps on sw.constituencies = scps.code
left join sys_workplace_bus swb on sw.workplaceId = swb.workplaceCode
left join sys_workplace_document swd on swb.busTypeCode = swd.documentTypeCode
left join basic_collect_user bcu on bcu.workplaceCode = sw.workplaceId
<where>
<if test="request.key != null and request.key != ''">
AND (sw.workplaceName like concat('%', #{request.key}, '%')
or sw.workplaceId like concat('%', #{request.key}, '%')
or auth_user.employeeName like concat('%', #{request.key}, '%')
or sw.remake like concat('%', #{request.key}, '%')
)
</if>
<if test=" request.invCode != null and request.invCode != ''">
AND sw.invCode = #{request.invCode}
</if>
<if test=" request.deptCode != null and request.deptCode != ''">
AND sw.deptCode = #{request.deptCode}
</if>
<if test=" request.workplaceStatus != null">
AND sw.workplaceStatus = #{request.workplaceStatus}
</if>
<if test=" request.chargeUser != null and request.chargeUser != ''">
AND sw.chargeUser = #{request.chargeUser}
</if>
<if test=" request.userId != null and request.userId != ''">
AND bcu.userId = #{request.userId}
</if>
<if test=" request.code != null and request.code != ''">
AND scps.code = #{request.code}
</if>
<if test=" request.workPlaceClass != null and request.workPlaceClass != ''">
AND sw.workPlaceClass = #{request.workPlaceClass}
</if>
<if test=" request.busType != null and request.busType != ''">
AND swd.documentTypeCode = #{request.busType}
</if>
<if test=" request.workPlaceIds != null and request.workPlaceIds.size > 0">
AND sw.workplaceId IN
<foreach collection="request.workPlaceIds" item="workplaceId" index="index" open="(" close=")" separator=",">
#{workplaceId}
</foreach>
</if>
</where>
ORDER BY sw.deptCode, sw.chargeUser ,sw.workplaceId
</select>
</mapper>

Loading…
Cancel
Save