Merge branch 'fengcang' into busUser

# Conflicts:
#	api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml
purchase
anthonyywj2 3 years ago
commit 909194a54b

@ -119,6 +119,9 @@ public class BasicThirdSysController {
if (exists) {
return ResultVOUtils.error(500, "第三方系统名称重复");
}
BasicThirdSysEntity temp = basicThirdSysService.selectByThirdId(basicThirdSysEntity.getThirdId());
if (!basicThirdSysEntity.getEnabled()) {
//如操作为禁用第三方系统,则需要判断是否是最后一个启用的第三方系统,需要保留至少启用一个第三方系统
FilterBasicThirdSysRequest filterBasicThirdSysRequest = new FilterBasicThirdSysRequest();
@ -129,7 +132,12 @@ public class BasicThirdSysController {
}
}
BasicThirdSysEntity temp = basicThirdSysService.selectByThirdId(basicThirdSysEntity.getThirdId());
if (temp.getMainSys() && !temp.getEnabled()) {
return ResultVOUtils.error(500, "主系统必须启用");
}
if (!temp.getMainSys().equals(basicThirdSysEntity.getMainSys())) {
if (udiRelevanceService.isExit() || unitMaintainService.isExit()) {
return ResultVOUtils.error(999, "产品信息已经关联,无法取消主系统!");

@ -113,6 +113,13 @@ public class BussinessOriginTypeController {
}
if (bussinessTypeEntity != null) {
bussinessTypeEntity.setUpdateTime(new Date());
BussinessOriginTypeEntity bussinessOriginTypeEntity = bussinessOriginTypeService.findByAction(bussinessTypeEntity.getAction());
if (bussinessOriginTypeEntity != null) {
return ResultVOUtils.error(500, "单据类型已存在!");
}
bussinessOriginTypeService.insertBusOriginType(bussinessTypeEntity);
} else {
return ResultVOUtils.error(999, "参数错误");

@ -66,10 +66,7 @@ import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.*;
@RestController
public class StockOrderController {
@ -182,6 +179,28 @@ public class StockOrderController {
stockOrderEntity.setStatus("202");//已配货
}
}
if (CollUtil.isNotEmpty(stockOrderPostRequest.getSubErpOrders())) {
boolean verifyResult = stockOrderDetailService.verifyCount(stockOrderPostRequest.getSubErpOrders());
if (!verifyResult) {
return ResultVOUtils.error(500, "实际数量不能高于订单数量");
}
List<String> filterList = new ArrayList<String>();
for (StockOrderDetailEntity stockOrderDetailEntity : stockOrderPostRequest.getSubErpOrders()) {
filterList.add(StrUtil.trimToEmpty(stockOrderDetailEntity.getRelId()) + StrUtil.trimToEmpty(stockOrderDetailEntity.getBatchNo()));
}
HashSet<String> set = new HashSet<>(filterList);
Boolean result = set.size() == filterList.size() ? true : false;
if (!result) {
return ResultVOUtils.error(500, "存在相同批次产品,提交失败!");
}
}
if (StringUtils.isBlank(stockOrderEntity.getId())) {
BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findBTByAction(stockOrderEntity.getBillType());
if (StrUtil.isEmpty(stockOrderPostRequest.getBillNo())) {

@ -75,8 +75,6 @@ public class OrderController {
BussinessTypeService bussinessTypeService;
@Resource
SystemParamConfigService systemParamConfigService;
@Resource
CompanyService companyService;
@Value("${file_path}")
private String filePath;
@Resource
@ -263,8 +261,8 @@ public class OrderController {
if (stockOrderEntity == null || stockOrderEntity.getOrderIdFk() == null) {
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sps_sync_review_order");
// if (systemParamConfigEntity.getParamValue().equals("1")) {
// SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("sps_sync_review_order");
if (bussinessTypeEntity.isEntrutSpms()) {
BaseResponse baseResponse = spsDirectClient.downloadOrder(orderFilterRequest.getOrderId(), userId + "", orderFilterRequest.getAction());
return baseResponse;
@ -274,9 +272,7 @@ public class OrderController {
return ResultVOUtils.error(500, "非" + bussinessTypeEntity.getName() + "类型单据!");
} else if (stockOrderEntity.getStatus().equals(ConstantStatus.SORDER_CHECKED)) {
if (StrUtil.isNotEmpty(stockOrderEntity.getLocStorageCode())) {
InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByCode(stockOrderEntity.getLocStorageCode());
List<WarehouseUserEntity> warehouseUserEntities = new ArrayList<>();
List<InvWarehouseEntity> invWarehouseEntities = new ArrayList<>();
if (StrUtil.isNotEmpty(stockOrderEntity.getInvWarehouseCode())) {
FilterInvUserRequest filterInvUserRequest = new FilterInvUserRequest();
filterInvUserRequest.setCode(stockOrderEntity.getInvWarehouseCode());
@ -286,7 +282,6 @@ public class OrderController {
FilterInvWarehouseRequest filterInvWarehouseRequest = new FilterInvWarehouseRequest();
filterInvWarehouseRequest.setCode(stockOrderEntity.getLocStorageCode());
filterInvWarehouseRequest.setUserId(userId);
invWarehouseEntities = invWarehouseService.filterAllByUser(filterInvWarehouseRequest);
}

@ -104,6 +104,11 @@ public class UdiTraceController {
udiTraceResponse.setCpmctymc(finalUdiRelevance.getCpmctymc());
udiTraceResponse.setGgxh(finalUdiRelevance.getGgxh());
udiTraceResponse.setOrderId(item.getId());
InvProductDetailEntity invProductDetailEntity = invProductDetailEntities.get(0);
udiTraceResponse.setBatchNo(invProductDetailEntity.getBatchNo());
udiTraceResponse.setProduceDate(invProductDetailEntity.getProductionDate());
udiTraceResponse.setExpireDate(invProductDetailEntity.getExpireDate());
udiTraceResponse.setCount(invProductDetailEntity.getCount());
}
return udiTraceResponse;
}).collect(Collectors.toList());

@ -63,10 +63,7 @@ import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
@RestController
@ -317,6 +314,31 @@ public class WareHouseController {
@AuthRuleAnnotation("")
@PostMapping("warehouse/inout/saveTempCode")
public BaseResponse saveCode(@RequestBody WarehouseEntity warehouseEntity) {
if (StrUtil.isNotEmpty(warehouseEntity.getSerialNo()) && warehouseEntity.getSerialNo().length() > 20) {
return ResultVOUtils.error(500, "无效条码!序列号超出最大范围");
}
if (StrUtil.isNotEmpty(warehouseEntity.getBatchNo()) && warehouseEntity.getBatchNo().length() > 20) {
return ResultVOUtils.error(500, "无效条码!批次号超出最大范围");
}
if (StrUtil.isEmpty(warehouseEntity.getSerialNo()) && StrUtil.isEmpty(warehouseEntity.getBatchNo())) {
return ResultVOUtils.error(500, "批次号不能为空!");
}
if (StrUtil.isNotEmpty(warehouseEntity.getSerialNo())) {
List<WarehouseEntity> warehouseEntityList = codesTempService.findByOrderId(warehouseEntity.getOrderId());
for (WarehouseEntity object : warehouseEntityList) {
if (object.getId() != warehouseEntity.getId() && object.getCode().equals(warehouseEntity.getCode()) && StrUtil.nullToEmpty(object.getCode()).equals(warehouseEntity.getSerialNo())) {
return ResultVOUtils.error(500, "条码重复!");
}
}
}
boolean b = codesTempService.update(warehouseEntity);
if (b)
return ResultVOUtils.success("修改成功");
@ -577,6 +599,11 @@ public class WareHouseController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
AddCodeResult addCodeResult = new AddCodeResult();
if (addOrderRequest.getAction() == null) {
addOrderRequest.setAction(addOrderRequest.getBillType());
}
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(addOrderRequest.getAction());
String code = addOrderRequest.getCode();
if (StringUtils.isBlank(code)) return ResultVOUtils.error(ResultEnum.DATA_ERROR);
@ -893,7 +920,7 @@ public class WareHouseController {
if (!StrUtil.emptyIfNull(originUdiEntity.getUdi()).equals(StrUtil.emptyIfNull(udiEntity.getUdi()))) {
continue;
}
if (!StrUtil.emptyIfNull(originUdiEntity.getBatchNo()).equals(StrUtil.emptyIfNull(udiEntity.getBatchNo()))) {
if (!StrUtil.emptyIfNull(originUdiEntity.getBatchNo()).toUpperCase(Locale.ROOT).equals(StrUtil.emptyIfNull(udiEntity.getBatchNo()).toUpperCase(Locale.ROOT))) {
continue;
}
if (!StrUtil.emptyIfNull(originUdiEntity.getProduceDate()).equals(StrUtil.emptyIfNull(udiEntity.getProduceDate()))) {

@ -44,5 +44,5 @@ public interface BussinessLocalTypeDao {
*
* @param action
*/
boolean selectPreInByOrderType(String action);
Boolean selectPreInByOrderType(String action);
}

@ -26,4 +26,13 @@ public interface InvPreProductDetailDao {
boolean deleteByProductId(FilterInvProductDetailRequest filterInvProductDetailRequest);
int statCount(FilterInvProductDetailRequest filterInvProductDetailRequest);
/**
* orderId
*
* @param orderIdFk ID
*/
boolean deleteByOrderId(String orderIdFk);
}

@ -25,4 +25,7 @@ public interface StockOrderDetailService {
StockOrderDetailEntity findOne(@Param("id") String id);
boolean verifyCount(List<StockOrderDetailEntity> subErpOrders);
}

@ -1,8 +1,11 @@
package com.glxp.api.admin.service.business.impl;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.api.admin.dao.business.StockOrderDetailDao;
import com.glxp.api.admin.dao.schedule.SystemParamConfigDao;
import com.glxp.api.admin.entity.business.StockOrderDetailEntity;
import com.glxp.api.admin.entity.info.SystemParamConfigEntity;
import com.glxp.api.admin.req.business.StockOrderDetailFilterRequest;
import com.glxp.api.admin.res.business.StockOrderDetailResponse;
import com.glxp.api.admin.service.business.StockOrderDetailService;
@ -17,6 +20,8 @@ public class StockOrderDetailServiceImpl implements StockOrderDetailService {
@Resource
StockOrderDetailDao stockOrderDetailDao;
@Resource
private SystemParamConfigDao systemParamConfigDao;
@Override
public List<StockOrderDetailEntity> filterStockOrderDetail(StockOrderDetailFilterRequest stockOrderDetailFilterRequest) {
@ -61,6 +66,7 @@ public class StockOrderDetailServiceImpl implements StockOrderDetailService {
public boolean deleteById(String id) {
return stockOrderDetailDao.deleteById(id);
}
@Override
public boolean deleteByOrderIdFk(String id) {
return stockOrderDetailDao.deleteByOrderIdFk(id);
@ -71,4 +77,22 @@ public class StockOrderDetailServiceImpl implements StockOrderDetailService {
return stockOrderDetailDao.findOne(id);
}
@Override
public boolean verifyCount(List<StockOrderDetailEntity> subErpOrders) {
//查询配置的系统运行参数
SystemParamConfigEntity config = systemParamConfigDao.selectByParamKey("stock_order_detail_count_max");
if (null != config) {
//0允许1不允许允许时不做判断
if ("1".equals(config.getParamValue())) {
for (StockOrderDetailEntity subErpOrder : subErpOrders) {
if (subErpOrder.getReCount() > subErpOrder.getCount()) {
return false;
}
}
}
return true;
}
return true;
}
}

@ -338,7 +338,8 @@ public class OrderServiceImpl implements OrderService {
stockOrderEntityList.forEach(stockOrderEntity -> {
StockOrderResponse response = new StockOrderResponse();
BeanUtil.copyProperties(stockOrderEntity, response);
if (stockOrderEntity.getStatus().equals(ConstantStatus.SORDER_DELIVER) && checkBusTypeSupplementOrder(stockOrderEntity.getBillNo())) {
if (stockOrderEntity.getStatus().equals(ConstantStatus.SORDER_DELIVER) && checkBusTypeSupplementOrder(stockOrderEntity.getBillNo())
&& StrUtil.isEmpty(stockOrderEntity.getSupplementNo())) {
response.setEnableSupplementOrder(true);
}
result.add(response);
@ -671,7 +672,10 @@ public class OrderServiceImpl implements OrderService {
* @return
*/
private boolean isPreInOrder(OrderEntity orderEntity) {
return bussinessLocalTypeDao.selectPreInByOrderType(orderEntity.getAction());
Boolean isTrue = bussinessLocalTypeDao.selectPreInByOrderType(orderEntity.getAction());
if (isTrue == null)
return false;
return isTrue;
}
@Override

@ -593,6 +593,7 @@ public class InvProductsTrService {
outOrder.setFromCorp(basicUnitMaintainEntity.getName());
outOrder.setFromCorpId(corpName);
outOrder.setLocStorageCode(orderEntity.getLocStorageCode());
outOrder.setInvStorageCode(orderEntity.getInvStorageCode());
outOrder.setCorpOrderId(CustomUtil.getId() + "x");
//互填单号
orderEntity.setUllageSupNo(outOrder.getId());
@ -639,6 +640,7 @@ public class InvProductsTrService {
outOrder.setCustomerId(Constant.SYSTEM_CUSTOMER_ID);
outOrder.setFromCorpId(null);
outOrder.setLocStorageCode(orderEntity.getLocStorageCode());
outOrder.setInvStorageCode(orderEntity.getInvStorageCode());
//互填单号
orderEntity.setUllageSupNo(outOrder.getId());
@ -713,7 +715,7 @@ public class InvProductsTrService {
outOrder.setCorpOrderId(CustomUtil.getId() + "x");
outOrder.setLocStorageCode(orderEntity.getLocStorageCode());
outOrder.setInvStorageCode(orderEntity.getInvStorageCode());
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("additional_auto_submit");
if ("1".equals(systemParamConfigEntity.getParamValue())) {
@ -793,6 +795,7 @@ public class InvProductsTrService {
outOrder.setFromCorpId(temps.get(0).getFromCorpId());
outOrder.setCorpOrderId(CustomUtil.getId() + "x");
outOrder.setLocStorageCode(orderEntity.getLocStorageCode());
outOrder.setInvStorageCode(orderEntity.getInvStorageCode());
outOrder.setErpFk(null);
outOrder.setFromType(ConstantStatus.FROM_CHANGE);
outOrder.setReceiveStatus(0);

@ -1,4 +1,4 @@
spring.profiles.active=dev
spring.profiles.active=pro
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

@ -229,7 +229,8 @@
</delete>
<delete id="deleteByOrderId">
delete from inv_prein_product_detail
delete
from inv_prein_product_detail
where orderIdFk = #{orderIdFk}
</delete>
@ -289,4 +290,6 @@
</where>
</select>
</mapper>

@ -230,4 +230,13 @@
</where>
</select>
<delete id="deleteByOrderId">
delete
from inv_product_detail
where orderIdFk = #{orderIdFk}
</delete>
</mapper>
Loading…
Cancel
Save