单据相关bug修改

master
anthonywj 2 years ago
parent 7e9452d7de
commit f68b2e4597

@ -173,6 +173,7 @@ public class ConstantStatus {
public static final int FROM_COUNT = 11; //盘点单据转单
public static final int FROM_PLAN = 12; //申购计划转单
public static final int FROM_RECEIVE = 13; //领用单据转单
public static final int FROM_THRORDER = 14; //第三方单据转单
//DI类型

@ -603,7 +603,7 @@ public class IoCodeTempController extends BaseController {
BaseResponse baseResponse = checkRelId(codeEnttity, unitFk);
BaseResponse invRes = checkInv(bussinessTypeEntity, exitLocalEntity);
BaseResponse invRes = checkInv(bussinessTypeEntity, codeEnttity);
if (invRes != null) {
return invRes;
}

@ -14,9 +14,7 @@ import com.glxp.api.controller.BaseController;
import com.glxp.api.dao.inout.IoOrderDetailBizDao;
import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.auth.InvWarehouseEntity;
import com.glxp.api.entity.basic.BasicBusTypeChangeEntity;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.basic.UdiRelevanceEntity;
import com.glxp.api.entity.basic.*;
import com.glxp.api.entity.inout.*;
import com.glxp.api.entity.thrsys.ThrOrderDetailEntity;
import com.glxp.api.entity.thrsys.ThrOrderEntity;
@ -28,9 +26,7 @@ import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.inout.IoOrderDetailBizResponse;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.IBasicBusTypeChangeService;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.service.basic.*;
import com.glxp.api.service.inout.*;
import com.glxp.api.service.thrsys.ThrOrderDetailService;
import com.glxp.api.service.thrsys.ThrOrderService;
@ -178,25 +174,23 @@ public class IoOrderDetailBizController extends BaseController {
ThrOrderDetailService thrOrderDetailService;
@Resource
ThrSystemBusApiService thrSystemBusApiService;
@Resource
UdiRlSupService udiRlSupService;
//选入第三方单据至业务单据
@AuthRuleAnnotation("")
@PostMapping("/udiwms/inout/order/addThrOrder")
public BaseResponse addThrOrder(@RequestBody ThrOrderEntity thrOrderRequest,
BindingResult bindingResult) {
public BaseResponse addThrOrder(@RequestBody ThrOrderEntity thrOrderRequest) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
ThrOrderEntity thrOrderEntity = thrOrderService.findById(thrOrderRequest.getId());
if (thrOrderEntity == null) {
return ResultVOUtils.error(ResultEnum.DATA_NOT);
}
List<ThrOrderDetailEntity> thrOrderDetailEntities = thrOrderDetailService.selectByBillNo(thrOrderRequest.getBillNo());
List<ThrOrderDetailEntity> thrOrderDetailEntities = thrOrderDetailService.selectByBillNo(thrOrderEntity.getBillNo());
//获取单据类型
ThrSystemBusApiEntity thrSystemBusApiEntity = thrSystemBusApiService.selectByThrBus(thrOrderEntity.getBillType(), thrOrderEntity.getThirdSysFk());
if (thrSystemBusApiEntity == null && StrUtil.isEmpty(thrSystemBusApiEntity.getCode())) {
if (thrSystemBusApiEntity == null || StrUtil.isEmpty(thrSystemBusApiEntity.getCode())) {
return ResultVOUtils.error(500, "单据类型对照有误!");
}
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(thrSystemBusApiEntity.getCode());
@ -218,18 +212,94 @@ public class IoOrderDetailBizController extends BaseController {
//获取当前部门
if (StrUtil.isNotEmpty(thrOrderEntity.getInvCode())) {
InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByThrCode(thrOrderEntity.getInvCode(), thrOrderEntity.getThirdSysFk());
if (invWarehouseEntity != null) {
orderEntity.setDeptCode(invWarehouseEntity.getParentId());
orderEntity.setInvCode(invWarehouseEntity.getCode());
}
} else {
return ResultVOUtils.error(500, "第三方单据所属仓库不能为空!");
}
//获取往来信息
if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_INNOR) {//内部调拨
InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByThrCode(thrOrderEntity.getCorpId(), thrOrderEntity.getThirdSysFk());
orderEntity.setFromDeptCode(invWarehouseEntity.getParentId());
orderEntity.setFromInvCode(invWarehouseEntity.getCode());
} else if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) { //往来信息
BasicCorpEntity basicCorpEntity = basicCorpService.selectByThirdId(thrOrderEntity.getCorpId(), thrOrderEntity.getThirdSysFk());
orderEntity.setFromCorp(basicCorpEntity.getErpId());
} else {
orderEntity.setFromCorp(thrOrderEntity.getCorpId());
}
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_TEMP_SAVE);
orderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_DRAFT);
orderEntity.setFromType(ConstantStatus.FROM_THRORDER);
orderEntity.setOrderType(ConstantStatus.ORDER_TYPE_BIZ);
orderService.insertOrder(orderEntity);
thrOrderService.updateThrOrder(thrOrderEntity);
return ResultVOUtils.success();
for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) {
thrOrderDetailEntity.getProductId();
List<UdiRelevanceResponse> udiRelevanceEntities = udiRelevanceService.selectListByThirdId(thrOrderDetailEntity.getProductId(), thrOrderEntity.getThirdSysFk());
IoOrderDetailBizEntity ioOrderDetailBizEntity = new IoOrderDetailBizEntity();
UdiRelevanceResponse udiRelevanceResponse = null;
if (udiRelevanceEntities.size() == 1) {
udiRelevanceResponse = udiRelevanceEntities.get(0);
ioOrderDetailBizEntity.setBindRlFk(udiRelevanceResponse.getId());
ioOrderDetailBizEntity.setUuidFk(udiRelevanceResponse.getUuid());
ioOrderDetailBizEntity.setNameCode(udiRelevanceResponse.getNameCode());
ioOrderDetailBizEntity.setCoName(udiRelevanceResponse.getCpmctymc());
ioOrderDetailBizEntity.setCertCode(udiRelevanceResponse.getZczbhhzbapzbh());
ioOrderDetailBizEntity.setYlqxzcrbarmc(udiRelevanceResponse.getYlqxzcrbarmc());
ioOrderDetailBizEntity.setManufacturer(udiRelevanceResponse.getManufactory());
ioOrderDetailBizEntity.setMeasname(udiRelevanceResponse.getMeasname());
ioOrderDetailBizEntity.setSpec(udiRelevanceResponse.getGgxh());
ioOrderDetailBizEntity.setPrice(udiRelevanceResponse.getPrice());
} else {
ioOrderDetailBizEntity.setCoName(thrOrderDetailEntity.getCorpName());
ioOrderDetailBizEntity.setCertCode(thrOrderDetailEntity.getZczbhhzbapzbh());
ioOrderDetailBizEntity.setYlqxzcrbarmc(thrOrderDetailEntity.getYlqxzcrbarmc());
ioOrderDetailBizEntity.setManufacturer(thrOrderDetailEntity.getManufactory());
ioOrderDetailBizEntity.setSpec(thrOrderDetailEntity.getSpec());
ioOrderDetailBizEntity.setPrice(thrOrderDetailEntity.getPrice());
if (udiRelevanceEntities.size() > 1) {
String bindRlIds = "";
for (UdiRelevanceResponse temp : udiRelevanceEntities) {
bindRlIds = bindRlIds + "," + temp.getId();
}
ioOrderDetailBizEntity.setBindRlIds(bindRlIds);
}
}
ioOrderDetailBizEntity.setOrderIdFk(orderEntity.getBillNo());
ioOrderDetailBizEntity.setProductDate(thrOrderDetailEntity.getProductDate());
ioOrderDetailBizEntity.setExpireDate(thrOrderDetailEntity.getExpireDate());
ioOrderDetailBizEntity.setBatchNo(thrOrderDetailEntity.getBatchNo());
ioOrderDetailBizEntity.setCount(thrOrderDetailEntity.getCount());
if (StrUtil.isNotEmpty(thrOrderDetailEntity.getSupId())) {
BasicCorpEntity basicCorpEntity = basicCorpService.selectByThirdId(thrOrderDetailEntity.getSupId(), thrOrderEntity.getThirdSysFk());
ioOrderDetailBizEntity.setSupId(basicCorpEntity.getErpId());
} else if (udiRelevanceResponse != null) {
List<UdiRlSupEntity> udiRlSupEntities = udiRlSupService.findByUdiRlId(udiRelevanceResponse.getId());
if (CollUtil.isNotEmpty(udiRlSupEntities) && udiRlSupEntities.size() == 1) {
ioOrderDetailBizEntity.setSupId(udiRlSupEntities.get(0).getCustomerId());
}
}
orderDetailBizService.insert(ioOrderDetailBizEntity);
}
thrOrderService.updateThrOrder(thrOrderEntity);
return ResultVOUtils.success("选入成功!");
}
@Resource
BasicCorpService basicCorpService;
//选入领用单据至业务单据
@AuthRuleAnnotation("")
@ -289,7 +359,7 @@ public class IoOrderDetailBizController extends BaseController {
ioOrderDetailBizEntity.setCount(purReceiveDetailEntity.getCount());
orderDetailBizService.insert(ioOrderDetailBizEntity);
}
return ResultVOUtils.success();
return ResultVOUtils.success("选入成功!");
}

@ -176,6 +176,9 @@ public class IoOrderDetailBizEntity {
@TableField(value = "remark5")
private String remark5;
@TableField(value = "bindRlIds")
private String bindRlIds;
@TableField(exist = false)
private boolean checkSuccess;

@ -12,5 +12,12 @@ public class FilterInvSubWarehouseRequest extends ListPageRequest {
private String parentId;
private Boolean defaultInv;
public String thirdId;
public String thirdId1;
public String thirdId2;
public String thirdId3;
public String thirdId4;
private String key;
}

@ -12,6 +12,9 @@ public interface InvWarehouseService {
InvWarehouseEntity findById(String id);
InvWarehouseEntity selectByThrCode(String code, String thirdSys);
List<InvWarehouseEntity> filterInvSubWarehouse(FilterInvSubWarehouseRequest filterInvSubWarehouseRequest);
List<InvWarehouseEntity> filterGroupInvSub(FilterInvWarehouseRequest filterInvSubWarehouseRequest);

@ -1,6 +1,7 @@
package com.glxp.api.service.auth.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ReflectUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.auth.InvWarehouseDao;
@ -40,6 +41,17 @@ public class InvWarehouseServiceImpl implements InvWarehouseService {
return null;
}
@Override
public InvWarehouseEntity selectByThrCode(String code, String thirdSys) {
FilterInvSubWarehouseRequest filterInvSubWarehouseRequest = new FilterInvSubWarehouseRequest();
ReflectUtil.setFieldValue(filterInvSubWarehouseRequest, thirdSys, code);
List<InvWarehouseEntity> invWarehouseEntities = filterInvSubWarehouse(filterInvSubWarehouseRequest);
if (CollUtil.isNotEmpty(invWarehouseEntities))
return invWarehouseEntities.get(0);
return null;
}
@Override
public List<InvWarehouseEntity> filterInvSubWarehouse(FilterInvSubWarehouseRequest filterInvSubWarehouseRequest) {
if (filterInvSubWarehouseRequest == null) {

@ -56,6 +56,8 @@ public interface UdiRelevanceService {
UdiRelevanceEntity selectByThirdId(String thirdId, String thirdSys);
List<UdiRelevanceResponse> selectListByThirdId(String thirdId, String thirdSys);
boolean insertUdiRelevance(UdiRelevanceEntity udiRelevanceEntity);
boolean insertUdiRelevanceignore(UdiRelevanceEntity udiRelevanceEntity);

@ -22,7 +22,7 @@ public interface UdiRlSupService {
UdiRlSupEntity findByUdiRlIdUnitFk(String udiRlIdFk, String unitFk);
List<UdiRlSupEntity> findByUdiRlId(String udiRlIdFk);
List<UdiRlSupEntity> findByUdiRlId(Long udiRlIdFk);
UdiRlSupEntity findCompanyProductRelevanceByProductUuid(UdiRlSupEntity udiRlSupEntity);

@ -36,7 +36,6 @@ public class UdiRelevanceServiceImpl implements UdiRelevanceService {
int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit();
PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit());
}
List<UdiRelevanceResponse> data = udiRelevanceDao.filterUdiRelevance(filterUdiRelRequest);
return data;
}
@ -269,6 +268,28 @@ public class UdiRelevanceServiceImpl implements UdiRelevanceService {
return udiRelevanceDao.selectByThirdId(filterUdiRelRequest);
}
@Override
public List<UdiRelevanceResponse> selectListByThirdId(String thirdId, String thirdSys) {
if (StrUtil.isEmpty(thirdId) || StrUtil.isEmpty(thirdSys)) {
return null;
}
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
if ("thirdId".equals(thirdSys)) {
filterUdiRelRequest.setThirdId(thirdId);
} else if ("thirdId1".equals(thirdSys)) {
filterUdiRelRequest.setThirdId1(thirdId);
} else if ("thirdId2".equals(thirdSys)) {
filterUdiRelRequest.setThirdId2(thirdId);
} else if ("thirdId3".equals(thirdSys)) {
filterUdiRelRequest.setThirdId3(thirdId);
} else if ("thirdId4".equals(thirdSys)) {
filterUdiRelRequest.setThirdId4(thirdId);
}
List<UdiRelevanceResponse> data = udiRelevanceDao.filterUdiGp(filterUdiRelRequest);
return data;
}
@Override
public boolean insertUdiRelevance(UdiRelevanceEntity udiRelevanceEntity) {
return udiRelevanceDao.insertUdiRelevance(udiRelevanceEntity);

@ -84,9 +84,9 @@ public class UdiRlSupServiceImpl implements UdiRlSupService {
}
@Override
public List<UdiRlSupEntity> findByUdiRlId(String udiRlIdFk) {
public List<UdiRlSupEntity> findByUdiRlId(Long udiRlIdFk) {
FilterCompanyProductRelevanceRequest filterCompanyProductRelevanceRequest = new FilterCompanyProductRelevanceRequest();
filterCompanyProductRelevanceRequest.setUdiRlIdFk(udiRlIdFk);
filterCompanyProductRelevanceRequest.setUdiRlIdFk(udiRlIdFk + "");
List<UdiRlSupEntity> companyProductRelevanceEntities = udiRlSupDao.filterCompanyProductRelevance(filterCompanyProductRelevanceRequest);
return companyProductRelevanceEntities;
}

@ -136,7 +136,7 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
return 0;
}
List<InvProductDetailEntity> datas =
invProductDetailDao.selectList(new QueryWrapper<InvProductDetailEntity>().eq("relIdFk", relId).eq("deptCode", deptCode).eq("invCode", invCode).eq("invSpaceCode", invSpaceCode));
invProductDetailDao.selectList(new QueryWrapper<InvProductDetailEntity>().eq("relId", relId).eq("deptCode", deptCode).eq("invCode", invCode).eq("invSpaceCode", invSpaceCode));
int count = 0;
if (CollUtil.isNotEmpty(datas)) {
for (InvProductDetailEntity invProductDetailEntity : datas) {

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

@ -3,3 +3,6 @@ CALL Pro_Temp_ColumnWork('io_order', 'fromReceiveBillNo', 'varchar(255) ', 1);
CALL Pro_Temp_ColumnWork('io_order', 'fromThrBillNo', 'varchar(255) ', 1);
CALL Pro_Temp_ColumnWork('thr_bustype_origin', 'thirdSysName', 'varchar(255) ', 3);
CALL Pro_Temp_ColumnWork('thr_system_bus_api', 'thirdBuyName', 'varchar(255) ', 3);
CALL Pro_Temp_ColumnWork('io_order_detail_biz', 'bindRlIds', 'varchar(255) ', 1);

Loading…
Cancel
Save