仓库部门,单据类型相关修改

master
anthonywj 2 years ago
parent 0ccebc0721
commit c2472cb5e6

@ -3,6 +3,7 @@ package com.glxp.api.controller.auth;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.enums.ResultEnum;
@ -17,6 +18,7 @@ import com.glxp.api.req.basic.FilterBussinessTypeRequest;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.req.thrsys.FilterBasicThirdSysRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.auth.InvBusUserResponse;
import com.glxp.api.res.auth.InvSubWarehouseResponse;
import com.glxp.api.res.auth.InvWarehouseThirdSysResponse;
import com.glxp.api.res.auth.WarehouseUserResponse;
@ -33,10 +35,8 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
@RestController
public class InvWarehouseController extends BaseController {
@ -55,6 +55,10 @@ public class InvWarehouseController extends BaseController {
private WarehouseBussinessTypeService warehouseBussinessTypeService;
@Resource
private IBasicBussinessTypeService basicBussinessTypeService;
@Resource
private InvSpaceService invSpaceService;
@Resource
InvBusUserService invBusUserService;
/**
*
@ -202,6 +206,7 @@ public class InvWarehouseController extends BaseController {
return ResultVOUtils.success(invSubWarehouseEntities);
}
@AuthRuleAnnotation("")
@PostMapping("/spms/sub/inv/warehouse/save")
public BaseResponse save(@RequestBody @Valid InvWarehouseEntity invWarehouseEntity,
@ -276,15 +281,15 @@ public class InvWarehouseController extends BaseController {
//todo 代码未迁移完,记得回来修改
// Integer userCount = warehouseUserService.countUserBySubInvCode(invWarehouseEntity.getCode());
// if (userCount > 0) {
// return ResultVOUtils.error(500, "请先移除该仓库关联用户!");
// }
//
// List<WarehouseBussinessTypeEntity> warehouseBussinessTypeEntities = warehouseBussinessTypeService.getListByCode(invWarehouseEntity.getCode());
// if (!warehouseBussinessTypeEntities.isEmpty()) {
// return ResultVOUtils.error(500, "请先移除该仓库关联用户和单据类型!");
// }
Integer userCount = warehouseUserService.countUserBySubInvCode(invWarehouseEntity.getCode());
if (userCount > 0) {
return ResultVOUtils.error(500, "请先移除该仓库关联用户!");
}
List<WarehouseBussinessTypeEntity> warehouseBussinessTypeEntities = warehouseBussinessTypeService.getListByCode(invWarehouseEntity.getCode());
if (!warehouseBussinessTypeEntities.isEmpty()) {
return ResultVOUtils.error(500, "请先移除该仓库关联用户和单据类型!");
}
//
// //判断此分库中是否还有库存
// InvWarehouseEntity invSubWarehouse = invWarehouseService.findById(deleteRequest.getId());
@ -293,11 +298,11 @@ public class InvWarehouseController extends BaseController {
// return ResultVOUtils.error(500, "此分库存在库存,不能删除!");
// }
//
// //判断此分库下是否有货位
// List<InvSpace> spaceList = invSpaceService.findBySubWarehouseCode(invSubWarehouse.getCode());
// if (CollUtil.isNotEmpty(spaceList)) {
// return ResultVOUtils.error(500, "请先移除此分库下的货位!");
// }
//判断此分库下是否有货位
List<InvSpace> spaceList = invSpaceService.findBySubWarehouseCode(invWarehouseEntity.getCode());
if (CollUtil.isNotEmpty(spaceList)) {
return ResultVOUtils.error(500, "请先移除此分库下的货位!");
}
boolean b = invWarehouseService.deleteById(deleteRequest.getId());
@ -514,4 +519,39 @@ public class InvWarehouseController extends BaseController {
return null;
}
@AuthRuleAnnotation("")
@PostMapping("/warehouse/inout/delWarehouseUser")
public BaseResponse deleteWarehouseUser(Integer id) {
if (null == id)
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
WarehouseUserEntity warehouseUserEntity = warehouseUserService.selectById(id);
List<InvBusUserEntity> invBusUserEntities = invBusUserService.selectByUnion(warehouseUserEntity.getUserid() + "", warehouseUserEntity.getCode());
if (CollUtil.isNotEmpty(invBusUserEntities)) {
return ResultVOUtils.error(500, "已存在该用户关联单据类型,无法删除!");
}
InvWarehouseEntity invSubWarehouseEntity =
invWarehouseService.findByInvSubByCode(warehouseUserEntity.getCode());
deptService.updateTime(invSubWarehouseEntity.getParentId(), new Date());
warehouseUserService.deleteWarehouseUser(id);
return ResultVOUtils.success();
}
@AuthRuleAnnotation("")
@PostMapping("/warehouse/inout/addWarehouseUser")
public BaseResponse addWarehouseUser(@RequestBody Map<String, Object> params) {
String code = String.valueOf(params.get("code"));
String userListJson = String.valueOf(params.get("userList"));
if (StrUtil.isBlank(code) || StrUtil.isBlank(userListJson))
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
List<AuthAdmin> userList = JSONUtil.toList(userListJson, AuthAdmin.class);
warehouseUserService.saveWarehouseUser(code, userList);
InvWarehouseEntity invSubWarehouseEntity =
invWarehouseService.findByInvSubByCode(code);
deptService.updateTime(invSubWarehouseEntity.getParentId(), new Date());
return ResultVOUtils.success();
}
}

@ -17,6 +17,7 @@ import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.basic.UdiProductEntity;
import com.glxp.api.entity.inout.IoCodeEnttity;
import com.glxp.api.entity.inout.IoCodeTempEntity;
import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.entity.system.SystemParamConfigEntity;
import com.glxp.api.http.SpsDirectClient;
@ -32,6 +33,7 @@ import com.glxp.api.res.inout.AddCodeResult;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.*;
import com.glxp.api.service.inout.IoCodeTempService;
import com.glxp.api.service.inout.IoOrderDetailCodeService;
import com.glxp.api.service.inout.IoOrderService;
import com.glxp.api.service.inout.IoTransInoutService;
import com.glxp.api.service.system.SystemParamConfigService;
@ -45,10 +47,7 @@ import com.glxp.api.util.udi.UdiCalCountUtil;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.validation.BindingResult;
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 org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.ArrayList;
@ -374,7 +373,7 @@ public class IoCodeTempController extends BaseController {
}
}
String orderId = addOrderRequest.getOrderId();
String orderId = addOrderRequest.getBillNo();
//三期校验
if (addOrderRequest.isCodeFillCheck()) {
@ -765,4 +764,46 @@ public class IoCodeTempController extends BaseController {
}
@Resource
IoOrderDetailCodeService ioOrderDetailCodeService;
@AuthRuleAnnotation("")
@GetMapping("warehouse/inout/deleteCodesTempById")
public BaseResponse deleteCodesTempById(@RequestParam("id") Integer id) {
IoCodeTempEntity codeTempEntity = codeTempService.selectById(id);
IoOrderEntity orderEntity = orderService.findByBillNo(codeTempEntity.getOrderId());
if (codeTempEntity.getCount() != null && codeTempEntity.getCount() > 1) {
codeTempEntity.setCount(codeTempEntity.getCount() - 1);
codeTempService.updateById(codeTempEntity);
} else {
codeTempService.deleteById(id);
}
//更新扫码详情
List<IoOrderDetailCodeEntity> orderDetailCodeEntities = ioOrderDetailCodeService.findByOrderId(codeTempEntity.getOrderId());
if (CollUtil.isNotEmpty(orderDetailCodeEntities)) {
for (IoOrderDetailCodeEntity orderDetailCodeEntity : orderDetailCodeEntities) {
if (orderDetailCodeEntity.getBindRlFk() == codeTempEntity.getRelId() && StrUtil.trimToEmpty(orderDetailCodeEntity.getBatchNo()).equals(codeTempEntity.getBatchNo())) {
//扫码数量-1
int orderCount = orderDetailCodeEntity.getCount();
int orderReCount = orderDetailCodeEntity.getReCount();
if (orderCount > 1) {
orderDetailCodeEntity.setCount(orderCount - codeTempEntity.getCount());
orderDetailCodeEntity.setCount(orderReCount - codeTempEntity.getReCount());
ioOrderDetailCodeService.update(orderDetailCodeEntity);
} else {
ioOrderDetailCodeService.deleteById(orderDetailCodeEntity.getId());
}
}
}
}
orderEntity.setUpdateUser(getUserId() + "");
orderEntity.setUpdateTime(new Date());
orderService.update(orderEntity);
return ResultVOUtils.success();
}
}

@ -7,12 +7,16 @@ import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.Constant;
import com.glxp.api.controller.BaseController;
import com.glxp.api.dao.inout.IoOrderDao;
import com.glxp.api.dao.inout.IoOrderDetailBizDao;
import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.req.inout.AddBizProductReqeust;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.basic.UdiRelevanceService;
@ -20,12 +24,14 @@ import com.glxp.api.service.inout.IoOrderDetailBizService;
import com.glxp.api.service.inout.IoOrderService;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;
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;
/**
*
@ -44,6 +50,20 @@ public class IoOrderDetailBizController extends BaseController {
GennerOrderUtils gennerOrderUtils;
@Resource
private IBasicBussinessTypeService basicBussinessTypeService;
@Resource
IoOrderDetailBizDao ioOrderDetailBizDao;
//获取单据业务详情---临时接口查询
@AuthRuleAnnotation("")
@GetMapping("udiwms/inout/order/draft/biz")
public BaseResponse getDraftsDetailCode() {
List<IoOrderDetailBizEntity> orderEntityList = ioOrderDetailBizDao.selectList();
PageSimpleResponse<IoOrderDetailBizEntity> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(100l);
pageSimpleResponse.setList(orderEntityList);
return ResultVOUtils.success(pageSimpleResponse);
}
//录入业务单据详情
@AuthRuleAnnotation("")
@ -86,7 +106,7 @@ public class IoOrderDetailBizController extends BaseController {
@AuthRuleAnnotation("")
@PostMapping("/udiwms/inout/order/updateBizProduct")
public BaseResponse updateBizProduct(@RequestBody IoOrderDetailBizEntity orderDetailBizEntity) {
boolean isExit = orderDetailBizService.isExit(orderDetailBizEntity.getBindRlFk(), orderDetailBizEntity.getBatchNo());
boolean isExit = orderDetailBizService.isExit(orderDetailBizEntity.getBindRlFk(), orderDetailBizEntity.getBatchNo(), orderDetailBizEntity.getId());
if (isExit) {
return ResultVOUtils.error(500, "存在相同产品,相同批次号,请检查后保存!");
}
@ -96,7 +116,7 @@ public class IoOrderDetailBizController extends BaseController {
@AuthRuleAnnotation("")
@PostMapping("/udiwms/inout/order/delBizProduct")
public BaseResponse delBizProduct(@RequestBody DeleteRequest deleteRequest) {
return orderDetailBizService.deleteById(Integer.parseInt(deleteRequest.getId())) > 0 ? ResultVOUtils.success("保存成功!") : ResultVOUtils.error(500, "保存失败");
return orderDetailBizService.deleteById(Integer.parseInt(deleteRequest.getId())) > 0 ? ResultVOUtils.success("删除成功!") : ResultVOUtils.error(500, "删除失败");
}

@ -1,16 +1,20 @@
package com.glxp.api.dao.auth;
import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.dao.inout.IoOrderDetailCodeDao;
import com.glxp.api.entity.auth.InvWarehouseEntity;
import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
import com.glxp.api.req.auth.FilterInvSubWarehouseRequest;
import com.glxp.api.req.auth.FilterInvWarehouseRequest;
import com.glxp.api.res.auth.InvSubWarehouseResponse;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
@Mapper
public interface InvSubWarehouseDao {
public interface InvSubWarehouseDao extends BaseMapperPlus<InvSubWarehouseDao, InvWarehouseEntity, InvWarehouseEntity> {
List<InvWarehouseEntity> filterInvSubWarehouse(FilterInvSubWarehouseRequest filterInvSubWarehouseRequest);
@ -74,4 +78,7 @@ public interface InvSubWarehouseDao {
*/
List<InvSubWarehouseResponse> filterSubInvList(FilterInvWarehouseRequest filterInvWarehouseRequest);
boolean updateTime(@Param("code") String code, @Param("updateTime") Date updateTime);
}

@ -13,7 +13,7 @@ public class AddOrderRequest {
private String billType;
private String deptCode;
private String invCode;
private String orderId;
private String billNo;
private Long customerId;
private boolean outChangeEnable;
private boolean ignoreExpire;

@ -3,7 +3,9 @@ package com.glxp.api.service.auth;
import com.glxp.api.entity.auth.DeptEntity;
import com.glxp.api.req.auth.FilterInvWarehouseRequest;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
public interface DeptService {
@ -67,4 +69,6 @@ public interface DeptService {
*/
DeptEntity selectByCodeAll(String code);
boolean updateTime(String code, Date updateTime);
}

@ -11,6 +11,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@Service
@ -154,4 +155,9 @@ public class DeptServiceImpl implements DeptService {
public DeptEntity selectByCodeAll(String code) {
return deptDao.selectByCodeAll(code);
}
@Override
public boolean updateTime(String code, Date updateTime) {
return deptDao.updateTime(code, updateTime);
}
}

@ -8,13 +8,18 @@ import java.util.List;
public interface IoCodeTempService {
IoCodeTempEntity selectById(Integer id);
int insert(IoCodeTempEntity codeEnttity);
int deleteById(Integer id);
boolean insertBatch(List<IoCodeTempEntity> codeEnttities);
int updateById(IoCodeTempEntity codeEnttity);
public IoCodeTempEntity findByUnique(String orderId, String code);
IoCodeTempEntity findByUnique(String orderId, String code);
List<IoCodeTempEntity> findByOrderId(String billNo);

@ -14,5 +14,5 @@ public interface IoOrderDetailBizService {
int deleteById(Integer id);
boolean isExit(Long relId, String bacthNo);
boolean isExit(Long relId, String bacthNo,Integer ignoreId);
}

@ -12,4 +12,6 @@ public interface IoOrderDetailCodeService {
int update(IoOrderDetailCodeEntity orderDetailCodeEntity);
int deleteById(Integer id);
}

@ -16,4 +16,6 @@ public interface IoOrderService {
int insertOrder(IoOrderEntity orderEntity);
int insertOrUpdate(IoOrderEntity orderEntity);
int update(IoOrderEntity orderEntity);
}

@ -21,11 +21,21 @@ public class IoCodeTempServiceImpl implements IoCodeTempService {
@Resource
IoCodeTempDao ioCodeTempDao;
@Override
public IoCodeTempEntity selectById(Integer id) {
return ioCodeTempDao.selectById(id);
}
@Override
public int insert(IoCodeTempEntity codeEnttity) {
return ioCodeTempDao.insert(codeEnttity);
}
@Override
public int deleteById(Integer id) {
return ioCodeTempDao.deleteById(id);
}
@Override
public boolean insertBatch(List<IoCodeTempEntity> codeEnttities) {
return ioCodeTempDao.insertBatch(codeEnttities);

@ -37,8 +37,8 @@ public class IoOrderDetailBizServiceImpl implements IoOrderDetailBizService {
@Override
public boolean isExit(Long relId, String bacthNo) {
return ioOrderDetailBizDao.exists(new QueryWrapper<IoOrderDetailBizEntity>().eq("bindRlFk", relId).eq("batchNo", bacthNo));
public boolean isExit(Long relId, String bacthNo, Integer ignoreId) {
return ioOrderDetailBizDao.exists(new QueryWrapper<IoOrderDetailBizEntity>().eq("bindRlFk", relId).eq("batchNo", bacthNo).ne("id", ignoreId));
}

@ -30,4 +30,9 @@ public class IoOrderDetailCodeServiceImpl implements IoOrderDetailCodeService {
public int update(IoOrderDetailCodeEntity orderDetailCodeEntity) {
return ioOrderDetailCodeDao.updateById(orderDetailCodeEntity);
}
@Override
public int deleteById(Integer id) {
return ioOrderDetailCodeDao.deleteById(id);
}
}

@ -46,4 +46,9 @@ public class IoOrderServiceImpl implements IoOrderService {
return orderDao.updateById(orderEntity);
}
}
@Override
public int update(IoOrderEntity orderEntity) {
return orderDao.updateById(orderEntity);
}
}

@ -4,9 +4,9 @@ server:
spring:
datasource:
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
jdbc-url: jdbc:p6spy:mysql://192.168.0.66:3364/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: Glxp@6066
password: 123456
hikari:
connection-timeout: 60000
maximum-pool-size: 60

Loading…
Cancel
Save