Merge remote-tracking branch 'origin/orderChange' into zhairh

feature-order-fix
x_z 3 years ago
commit 1bee746e3b

@ -1,16 +1,22 @@
package com.glxp.api.admin.controller.basic; package com.glxp.api.admin.controller.basic;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.admin.annotation.AuthRuleAnnotation; import com.glxp.api.admin.annotation.AuthRuleAnnotation;
import com.glxp.api.admin.constant.ConstantStatus; import com.glxp.api.admin.constant.ConstantStatus;
import com.glxp.api.admin.constant.ConstantType; import com.glxp.api.admin.constant.ConstantType;
import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity; import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity;
import com.glxp.api.admin.entity.basic.BussinessLocalTypeEntity; import com.glxp.api.admin.entity.basic.BussinessLocalTypeEntity;
import com.glxp.api.admin.entity.basic.BussinessTypeEntity; import com.glxp.api.admin.entity.basic.BussinessTypeEntity;
import com.glxp.api.admin.entity.inventory.InvSubWarehouseEntity;
import com.glxp.api.admin.req.basic.BusTypeChangeFilterRequest;
import com.glxp.api.admin.req.inout.DeleteRequest; import com.glxp.api.admin.req.inout.DeleteRequest;
import com.glxp.api.admin.req.receipt.BussinessTypeFilterRequest; import com.glxp.api.admin.req.receipt.BussinessTypeFilterRequest;
import com.glxp.api.admin.res.PageSimpleResponse;
import com.glxp.api.admin.service.basic.BussinessChangeTypeService; import com.glxp.api.admin.service.basic.BussinessChangeTypeService;
import com.glxp.api.admin.service.basic.BussinessLocalTypeService; import com.glxp.api.admin.service.basic.BussinessLocalTypeService;
import com.glxp.api.admin.service.basic.BussinessTypeService; import com.glxp.api.admin.service.basic.BussinessTypeService;
import com.glxp.api.admin.service.inventory.InvSubWarehouseService;
import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
@ -34,6 +40,8 @@ public class BussinessChangeTypeController {
private BussinessTypeService bussinessTypeService; private BussinessTypeService bussinessTypeService;
@Resource @Resource
private BussinessLocalTypeService bussinessLocalTypeService; private BussinessLocalTypeService bussinessLocalTypeService;
@Resource
private InvSubWarehouseService invSubWarehouseService;
@AuthRuleAnnotation("") @AuthRuleAnnotation("")
@GetMapping("/spms/bussinessChangeType/filter") @GetMapping("/spms/bussinessChangeType/filter")
@ -57,34 +65,34 @@ public class BussinessChangeTypeController {
) { ) {
if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType()) { if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType()) {
BussinessChangeTypeEntity bussinessChangeTypeEntity1 = new BussinessChangeTypeEntity(); BussinessChangeTypeEntity bussinessChangeTypeEntity1 = new BussinessChangeTypeEntity();
bussinessChangeTypeEntity1.setIntro("出库自动补\"供应商入库单\""); // bussinessChangeTypeEntity1.setIntro("出库自动补\"供应商入库单\"");
bussinessChangeTypeEntity1.setChangeType(ConstantStatus.ORDER_CHANGE_NORMAL_IN); bussinessChangeTypeEntity1.setChangeType(ConstantStatus.ORDER_CHANGE_NORMAL_IN);
bussinessChangeTypeEntity1.setIndex(1); bussinessChangeTypeEntity1.setIndex(1);
bussinessChangeTypeEntity1.setAction(bussinessTypeFilterRequest.getAction()); bussinessChangeTypeEntity1.setAction(bussinessTypeFilterRequest.getAction());
bussinessChangeTypeEntity1.setBeforeTime(1); bussinessChangeTypeEntity1.setBeforeTime(1);
bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity1); bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity1);
BussinessChangeTypeEntity bussinessChangeTypeEntity2 = new BussinessChangeTypeEntity(); // BussinessChangeTypeEntity bussinessChangeTypeEntity2 = new BussinessChangeTypeEntity();
bussinessChangeTypeEntity2.setIntro("出库自动补\"调拨入库单\""); // bussinessChangeTypeEntity2.setIntro("出库自动补\"调拨入库单\"");
bussinessChangeTypeEntity2.setChangeType(ConstantStatus.ORDER_CHANGE_INNOR_NORMAL_IN); // bussinessChangeTypeEntity2.setChangeType(ConstantStatus.ORDER_CHANGE_INNOR_NORMAL_IN);
bussinessChangeTypeEntity2.setIndex(1); // bussinessChangeTypeEntity2.setIndex(1);
bussinessChangeTypeEntity2.setAction(bussinessTypeFilterRequest.getAction()); // bussinessChangeTypeEntity1.setBeforeTime(1);
bussinessChangeTypeEntity1.setBeforeTime(1); // bussinessChangeTypeEntity2.setAction(bussinessTypeFilterRequest.getAction());
bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity2); // bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity2);
BussinessChangeTypeEntity bussinessChangeTypeEntity3 = new BussinessChangeTypeEntity(); // BussinessChangeTypeEntity bussinessChangeTypeEntity3 = new BussinessChangeTypeEntity();
bussinessChangeTypeEntity3.setIntro("出库自动补\"寄售转入单\""); // bussinessChangeTypeEntity3.setIntro("出库自动补\"寄售转入单\"");
bussinessChangeTypeEntity3.setChangeType(ConstantStatus.ORDER_CHANGE_NORMAL_ADV_IN); // bussinessChangeTypeEntity3.setChangeType(ConstantStatus.ORDER_CHANGE_NORMAL_ADV_IN);
bussinessChangeTypeEntity3.setIndex(2); // bussinessChangeTypeEntity3.setIndex(2);
bussinessChangeTypeEntity3.setAction(bussinessTypeFilterRequest.getAction()); // bussinessChangeTypeEntity1.setBeforeTime(1);
bussinessChangeTypeEntity1.setBeforeTime(1); // bussinessChangeTypeEntity3.setAction(bussinessTypeFilterRequest.getAction());
bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity3); // bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity3);
bussinessTypeEntities = bussinessChangeTypeService.findByAction(bussinessTypeFilterRequest.getAction()); // bussinessTypeEntities = bussinessChangeTypeService.findByAction(bussinessTypeFilterRequest.getAction());
} else if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && bussinessTypeEntity.isAdvanceType()) { } else if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && bussinessTypeEntity.isAdvanceType()) {
BussinessChangeTypeEntity bussinessChangeTypeEntity1 = new BussinessChangeTypeEntity(); BussinessChangeTypeEntity bussinessChangeTypeEntity1 = new BussinessChangeTypeEntity();
bussinessChangeTypeEntity1.setIntro("出库自动补\"寄售入库单\""); // bussinessChangeTypeEntity1.setIntro("出库自动补\"寄售入库单\"");
bussinessChangeTypeEntity1.setChangeType(ConstantStatus.ORDER_CHANGE_ADVANCE_IN); bussinessChangeTypeEntity1.setChangeType(ConstantStatus.ORDER_CHANGE_ADVANCE_IN);
bussinessChangeTypeEntity1.setIndex(1); bussinessChangeTypeEntity1.setIndex(1);
bussinessChangeTypeEntity1.setAction(bussinessTypeFilterRequest.getAction());
bussinessChangeTypeEntity1.setBeforeTime(1); bussinessChangeTypeEntity1.setBeforeTime(1);
bussinessChangeTypeEntity1.setAction(bussinessTypeFilterRequest.getAction());
bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity1); bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity1);
bussinessTypeEntities = bussinessChangeTypeService.findByAction(bussinessTypeFilterRequest.getAction()); bussinessTypeEntities = bussinessChangeTypeService.findByAction(bussinessTypeFilterRequest.getAction());
} }
@ -93,6 +101,24 @@ public class BussinessChangeTypeController {
return ResultVOUtils.success(bussinessTypeEntities); return ResultVOUtils.success(bussinessTypeEntities);
} }
@AuthRuleAnnotation("")
@GetMapping("/spms/busTypeChange/filter")
public BaseResponse filterBusTypeChange(BusTypeChangeFilterRequest busTypeChangeFilterRequest,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
List<BussinessChangeTypeEntity> bussinessTypeEntities = bussinessChangeTypeService.filterAll(busTypeChangeFilterRequest);
PageInfo<BussinessChangeTypeEntity> pageInfo;
pageInfo = new PageInfo<>(bussinessTypeEntities);
PageSimpleResponse<BussinessChangeTypeEntity> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(bussinessTypeEntities);
return ResultVOUtils.success(pageSimpleResponse);
}
@AuthRuleAnnotation("") @AuthRuleAnnotation("")
@PostMapping("/spms/bussinessChangeType/remove") @PostMapping("/spms/bussinessChangeType/remove")
public BaseResponse removeBussinessType(@RequestBody BussinessChangeTypeEntity deleteRequest, BindingResult bindingResult) { public BaseResponse removeBussinessType(@RequestBody BussinessChangeTypeEntity deleteRequest, BindingResult bindingResult) {
@ -101,6 +127,9 @@ public class BussinessChangeTypeController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
} }
String action = deleteRequest.getScAction(); String action = deleteRequest.getScAction();
if (StrUtil.isEmpty(action)) {
bussinessChangeTypeService.deleteById(deleteRequest.getId() + "");
} else
bussinessChangeTypeService.deleteByAction(action); bussinessChangeTypeService.deleteByAction(action);
return ResultVOUtils.success("删除成功"); return ResultVOUtils.success("删除成功");
} }
@ -131,8 +160,6 @@ public class BussinessChangeTypeController {
BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findByAction(bussinessTypeEntity.getAction()); BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findByAction(bussinessTypeEntity.getAction());
bussinessLocalTypeEntity.setUpdateTime(new Date()); bussinessLocalTypeEntity.setUpdateTime(new Date());
bussinessLocalTypeService.updateBusLocalType(bussinessLocalTypeEntity); bussinessLocalTypeService.updateBusLocalType(bussinessLocalTypeEntity);
} else { } else {
ResultVOUtils.error(999, "参数错误"); ResultVOUtils.error(999, "参数错误");
} }
@ -148,6 +175,14 @@ public class BussinessChangeTypeController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
} }
if (bussinessTypeEntity != null) { if (bussinessTypeEntity != null) {
if (StrUtil.isNotEmpty(bussinessTypeEntity.getDefaultSubInv())) {
InvSubWarehouseEntity invSubWarehouseEntity = invSubWarehouseService.findByInvSubByCode(bussinessTypeEntity.getDefaultSubInv());
bussinessTypeEntity.setDefaultInv(invSubWarehouseEntity.getParentId());
}
if (StrUtil.isNotEmpty(bussinessTypeEntity.getLocSubInv())) {
InvSubWarehouseEntity invSubWarehouseEntity = invSubWarehouseService.findByInvSubByCode(bussinessTypeEntity.getLocSubInv());
bussinessTypeEntity.setLocInv(invSubWarehouseEntity.getParentId());
}
bussinessChangeTypeService.insertBusChangeTypee(bussinessTypeEntity); bussinessChangeTypeService.insertBusChangeTypee(bussinessTypeEntity);
} else { } else {
ResultVOUtils.error(999, "参数错误"); ResultVOUtils.error(999, "参数错误");

@ -45,6 +45,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -171,10 +172,15 @@ public class UdiRelevanceController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
} }
List<UdiRelevanceResponse> udiRelevanceResponses = null; List<UdiRelevanceResponse> udiRelevanceResponses = null;
if (StrUtil.isNotEmpty(filterUdiInfoRequest.getUnionCode())) {
filterUdiInfoRequest.setNameCode(filterUdiInfoRequest.getUnionCode());
List<UdiRelevanceResponse> temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest);
if (temps != null && temps.size() > 0) {
filterUdiInfoRequest.setUuid(temps.get(0).getUuid());
filterUdiInfoRequest.setNameCode(null);
}
} else {
filterUdiInfoRequest.setDiType(1); filterUdiInfoRequest.setDiType(1);
if (filterUdiInfoRequest.getUdiCode() != null && !filterUdiInfoRequest.getUdiCode().isEmpty()) {
UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiInfoRequest.getUdiCode());
filterUdiInfoRequest.setNameCode(udiEntity.getUdi());
} }
udiRelevanceResponses = udiRelevanceService.filterUdiGp(filterUdiInfoRequest); udiRelevanceResponses = udiRelevanceService.filterUdiGp(filterUdiInfoRequest);
@ -286,15 +292,46 @@ public class UdiRelevanceController {
@AuthRuleAnnotation("") @AuthRuleAnnotation("")
@PostMapping("/udi/udirel/update") @PostMapping("/udi/udirel/update")
public BaseResponse updateRelevanceEntity(@RequestBody UdiRelevanceEntity udiRelevanceEntity, BindingResult bindingResult) { public BaseResponse updateRelevanceEntity(@RequestBody UdiRelevanceResponse udiRelevanceResponse, BindingResult bindingResult) {
if (bindingResult.hasErrors()) { if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
} }
UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity();
BeanUtils.copyProperties(udiRelevanceResponse, udiRelevanceEntity);
udiRelevanceEntity.setId(udiRelevanceResponse.getId() + "");
String time = DateUtil.getDateTime(); String time = DateUtil.getDateTime();
udiRelevanceEntity.setUpdateTime(time); udiRelevanceEntity.setUpdateTime(time);
udiRelevanceEntity.setModifyTime(time); udiRelevanceEntity.setModifyTime(time);
if (udiRelevanceResponse.getIsUseDy() == 1) {
udiRelevanceEntity.setIsUseDy(true);
} else udiRelevanceEntity.setIsUseDy(false);
udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); udiRelevanceService.updateUdiRelevance(udiRelevanceEntity);
UdiInfoEntity udiInfoEntity = new UdiInfoEntity();
udiInfoEntity.setSptm(udiRelevanceResponse.getSptm());
udiInfoEntity.setYbbm(udiRelevanceResponse.getYbbm());
udiInfoEntity.setMeasname(udiRelevanceResponse.getMeasname());
udiInfoEntity.setManufactory(udiRelevanceResponse.getManufactory());
udiInfoEntity.setCpms(udiRelevanceResponse.getCpms());
udiInfoEntity.setPrice(udiRelevanceResponse.getPrice());
udiInfoEntity.setSpmc(udiRelevanceResponse.getSpmc());
udiInfoEntity.setBasicPrductRemak1(udiRelevanceResponse.getBasicPrductRemak1());
udiInfoEntity.setBasicPrductRemak2(udiRelevanceResponse.getBasicPrductRemak2());
udiInfoEntity.setBasicPrductRemak3(udiRelevanceResponse.getBasicPrductRemak3());
udiInfoEntity.setBasicPrductRemak4(udiRelevanceResponse.getBasicPrductRemak4());
udiInfoEntity.setBasicPrductRemak5(udiRelevanceResponse.getBasicPrductRemak5());
udiInfoEntity.setBasicPrductRemak6(udiRelevanceResponse.getBasicPrductRemak6());
udiInfoEntity.setBasicPrductRemak7(udiRelevanceResponse.getBasicPrductRemak7());
udiInfoEntity.setBasicPrductRemak8(udiRelevanceResponse.getBasicPrductRemak8());
if (StrUtil.isNotEmpty(udiRelevanceResponse.getOriginUuid())) {
udiInfoEntity.setProductType(ConstantStatus.PRODUCT_TYPE_UDI);
}
udiInfoEntity.setUuid(udiRelevanceResponse.getUuid());
udiInfoService.updateUdiInfo(udiInfoEntity);
return ResultVOUtils.success("更新成功"); return ResultVOUtils.success("更新成功");
} }

@ -327,6 +327,7 @@ public class StockOrderDetailController {
stockOrderDetailEntity.setManufactory(udiInfoEntity.getManufactory()); stockOrderDetailEntity.setManufactory(udiInfoEntity.getManufactory());
stockOrderDetailEntity.setMeasname(udiInfoEntity.getMeasname()); stockOrderDetailEntity.setMeasname(udiInfoEntity.getMeasname());
stockOrderDetailEntity.setYlqxzcrbarmc(udiInfoEntity.getYlqxzcrbarmc()); stockOrderDetailEntity.setYlqxzcrbarmc(udiInfoEntity.getYlqxzcrbarmc());
stockOrderDetailEntity.setSupName(udiInfoEntity.getCompanyName());
if (StrUtil.isNotEmpty(stockOrderIdsRequest.getZczbhhzbapzbh())) if (StrUtil.isNotEmpty(stockOrderIdsRequest.getZczbhhzbapzbh()))
stockOrderDetailEntity.setZczbhhzbapzbh(stockOrderIdsRequest.getZczbhhzbapzbh()); stockOrderDetailEntity.setZczbhhzbapzbh(stockOrderIdsRequest.getZczbhhzbapzbh());
else else
@ -424,7 +425,6 @@ public class StockOrderDetailController {
stockOrderDetailEntity.setYlqxzcrbarmc(udiInfoEntity.getYlqxzcrbarmc()); stockOrderDetailEntity.setYlqxzcrbarmc(udiInfoEntity.getYlqxzcrbarmc());
stockOrderDetailEntity.setManufactory(udiInfoEntity.getManufactory()); stockOrderDetailEntity.setManufactory(udiInfoEntity.getManufactory());
stockOrderDetailEntity.setZczbhhzbapzbh(udiInfoEntity.getZczbhhzbapzbh()); stockOrderDetailEntity.setZczbhhzbapzbh(udiInfoEntity.getZczbhhzbapzbh());
stockOrderDetailService.insertStockOrderDetail(stockOrderDetailEntity); stockOrderDetailService.insertStockOrderDetail(stockOrderDetailEntity);
return ResultVOUtils.success(); return ResultVOUtils.success();

@ -70,13 +70,13 @@ public class CompanyProductRelevanceController {
List<UdiRelevanceResponse> temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest); List<UdiRelevanceResponse> temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest);
if (temps != null && temps.size() > 0) { if (temps != null && temps.size() > 0) {
companyProductRelevanceRequest.setUuid(temps.get(0).getUuid()); companyProductRelevanceRequest.setUuid(temps.get(0).getUuid());
companyProductRelevanceRequest.setNameCode(null); companyProductRelevanceRequest.setNameCode(filterUdiInfoRequest.getNameCode());
companyProductRelevanceRequest.setUnionCode(null); companyProductRelevanceRequest.setUnionCode(null);
} }
} else {
companyProductRelevanceRequest.setDiType(1);
} }
List<CompanyProductRelevanceResponse> basicInstrumentMaintainRelevanceResponses = null; List<CompanyProductRelevanceResponse> basicInstrumentMaintainRelevanceResponses = null;
companyProductRelevanceRequest.setDiType(1);
basicInstrumentMaintainRelevanceResponses = companyProductRelevanceService.filterUdiGp(companyProductRelevanceRequest); basicInstrumentMaintainRelevanceResponses = companyProductRelevanceService.filterUdiGp(companyProductRelevanceRequest);
PageInfo<CompanyProductRelevanceResponse> pageInfo; PageInfo<CompanyProductRelevanceResponse> pageInfo;
pageInfo = new PageInfo<>(basicInstrumentMaintainRelevanceResponses); pageInfo = new PageInfo<>(basicInstrumentMaintainRelevanceResponses);

@ -96,7 +96,7 @@ public class InvSubWarehouseController {
if(invSubWarehouseEntity!=null){ if(invSubWarehouseEntity!=null){
InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByCodeAll(invSubWarehouseEntity.getParentId()); InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByCodeAll(invSubWarehouseEntity.getParentId());
filterInvWarehouseRequest.setSuperiorCode(invWarehouseEntity.getCode()); filterInvWarehouseRequest.setSuperiorCode(invWarehouseEntity.getCode());
filterInvWarehouseRequest.setSubordinateCode(invWarehouseEntity.getPcode()); filterInvWarehouseRequest.setSuperiorPcode(invWarehouseEntity.getPcode());
filterInvWarehouseRequest.setCode(null); filterInvWarehouseRequest.setCode(null);
}else { }else {
return ResultVOUtils.error(999,"分库编号为空!"); return ResultVOUtils.error(999,"分库编号为空!");

@ -150,7 +150,7 @@ public class PurApplyController {
*/ */
@RepeatSubmit() @RepeatSubmit()
@PostMapping("/purchase/apply/auditOrder") @PostMapping("/purchase/apply/auditOrder")
public BaseResponse auditOrder(@RequestBody PurApplyRequest purApplyRequest) { public BaseResponse auditOrder(@RequestBody PurApplyResponse purApplyRequest) {
Integer userId = customerService.getUserId(); Integer userId = customerService.getUserId();
@ -162,19 +162,27 @@ public class PurApplyController {
purApplyService.update(purApplyEntity); purApplyService.update(purApplyEntity);
//审核通过后转换成采购计划单 //审核通过后转换成采购计划单
if (purApplyEntity.getStatus() == ConstantStatus.APPLY_AUDIT_ED && StrUtil.isNotEmpty(purApplyEntity.getTargetBillType())) { if (purApplyEntity.getStatus() == ConstantStatus.APPLY_AUDIT_ED && purApplyRequest.isAudtoPlan()) {
PurPlanEntity purPlanEntity = new PurPlanEntity(); PurPlanEntity purPlanEntity = new PurPlanEntity();
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.JH_ORDER, "yyyyMMdd")); String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.JH_ORDER, "yyyyMMdd"));
purPlanEntity.setBillNo(billNo); purPlanEntity.setBillNo(billNo);
purPlanEntity.setBillDate(new Date()); purPlanEntity.setBillDate(new Date());
purPlanEntity.setStatus(ConstantStatus.APPLY_UN_AUDIT); purPlanEntity.setStatus(ConstantStatus.APPLY_DRAFT);
purPlanEntity.setLocStorageCode(purApplyEntity.getTargetInv()); // purPlanEntity.setLocStorageCode(purApplyEntity.getTargetInv());
purPlanEntity.setInvWarehouseCode(purApplyEntity.getTargetSubInv()); // purPlanEntity.setInvWarehouseCode(purApplyEntity.getTargetSubInv());
purPlanEntity.setBillType(purApplyEntity.getTargetBillType()); purPlanEntity.setBillType("purPlan");
purPlanEntity.setDeptCode(purApplyEntity.getDeptCode()); // purPlanEntity.setBillType(purApplyEntity.getTargetBillType());
purPlanEntity.setCreateBy(purApplyEntity.getAuditBy()); // purPlanEntity.setDeptCode(purApplyEntity.getDeptCode());
// purPlanEntity.setCreateBy(purApplyEntity.getAuditBy());
purPlanEntity.setCreateTime(new Date()); purPlanEntity.setCreateTime(new Date());
purPlanEntity.setUpdateTime(new Date()); purPlanEntity.setUpdateTime(new Date());
purPlanEntity.setApplyBillNo(purApplyEntity.getBillNo());
purPlanEntity.setApplyCreateBy(purApplyEntity.getCreateBy());
purPlanEntity.setApplyRemark(purApplyEntity.getRemark());
purPlanEntity.setApplyAuditBy(purApplyEntity.getAuditBy());
purPlanEntity.setRemark("申购科室:" + purApplyRequest.getSubInvName() +
";申购人:" + purApplyRequest.getCreateByName() + ";申购原因:" + purApplyRequest.getRemark());
purPlanService.insert(purPlanEntity); purPlanService.insert(purPlanEntity);
List<PurApplyDetailEntity> purApplyDetailEntities = purApplyDetailService.findByOrderId(purApplyEntity.getId() + ""); List<PurApplyDetailEntity> purApplyDetailEntities = purApplyDetailService.findByOrderId(purApplyEntity.getId() + "");

@ -173,9 +173,10 @@ public class PurPlanController {
List<PurPlanDetailEntity> purPlanDetailEntities = purPlanDetailService.findByOrderId(purApplyEntity.getId() + ""); List<PurPlanDetailEntity> purPlanDetailEntities = purPlanDetailService.findByOrderId(purApplyEntity.getId() + "");
BasicBusTypeChangeEntity basicBusTypeChangeEntity = basicBusTypeChangeService.findByAction(purApplyEntity.getBillType()); // BasicBusTypeChangeEntity basicBusTypeChangeEntity = basicBusTypeChangeService.findByAction(purApplyEntity.getBillType());
//转换成业务单据 //转换成业务单据
if (postPurPlanRequest.getEditStatus() == ConstantStatus.APPLY_AUDIT_ED && basicBusTypeChangeEntity != null && basicBusTypeChangeEntity.getTargetBusAction() != null) { if (postPurPlanRequest.getEditStatus() == ConstantStatus.APPLY_AUDIT_ED
&& StrUtil.isNotEmpty(purApplyEntity.getTargetSubInv()) && StrUtil.isNotEmpty(purApplyEntity.getTargetBillAction())) {
if (CollUtil.isNotEmpty(purPlanDetailEntities)) { if (CollUtil.isNotEmpty(purPlanDetailEntities)) {
//1.根据供应商分组 //1.根据供应商分组
@ -191,12 +192,13 @@ public class PurPlanController {
} }
} }
} }
//2.生成业务单据 //2.生成业务单据
String stockOrderNo = ";";
for (String supId : filterSupMaps.keySet()) { for (String supId : filterSupMaps.keySet()) {
//2.构建业务单据 //2.构建业务单据
StockOrderEntity stockOrderEntity = new StockOrderEntity(); StockOrderEntity stockOrderEntity = new StockOrderEntity();
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.BUS_ORDER, "yyyyMMdd")); String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.BUS_ORDER, "yyyyMMdd"));
stockOrderNo = stockOrderNo + billNo;
stockOrderEntity.setBillNo(billNo); stockOrderEntity.setBillNo(billNo);
stockOrderEntity.setSourceType(ConstantStatus.ST_APPLY_ADD); stockOrderEntity.setSourceType(ConstantStatus.ST_APPLY_ADD);
stockOrderEntity.setCorpId(supId); stockOrderEntity.setCorpId(supId);
@ -205,10 +207,11 @@ public class PurPlanController {
stockOrderEntity.setCorpName(basicUnitMaintainEntity.getName()); stockOrderEntity.setCorpName(basicUnitMaintainEntity.getName());
stockOrderEntity.setBilldate(DateUtil.formatDateTime(new Date())); stockOrderEntity.setBilldate(DateUtil.formatDateTime(new Date()));
stockOrderEntity.setStatus(ConstantStatus.SORDER_ALLOC); stockOrderEntity.setStatus(ConstantStatus.SORDER_ALLOC);
stockOrderEntity.setBillType(basicBusTypeChangeEntity.getTargetBusAction()); stockOrderEntity.setBillType(purApplyEntity.getTargetBillAction());
stockOrderEntity.setInvWarehouseCode(purApplyEntity.getInvWarehouseCode()); stockOrderEntity.setInvWarehouseCode(purApplyEntity.getTargetSubInv());
stockOrderEntity.setLocStorageCode(purApplyEntity.getLocStorageCode()); stockOrderEntity.setLocStorageCode(purApplyEntity.getTargetInv());
stockOrderEntity.setDept(purApplyEntity.getDeptCode()); stockOrderEntity.setCreateUser(userId);
// stockOrderEntity.setDept(purApplyEntity.getDeptCode());
stockOrderService.insertStockOrder(stockOrderEntity); stockOrderService.insertStockOrder(stockOrderEntity);
//3.构建单据详情 //3.构建单据详情
List<PurPlanDetailEntity> temps = filterSupMaps.get(supId); List<PurPlanDetailEntity> temps = filterSupMaps.get(supId);
@ -235,11 +238,11 @@ public class PurPlanController {
} }
} }
} }
}
purApplyEntity.setStockOrderNo(stockOrderNo.substring(1));
purPlanService.update(purApplyEntity);
}
} }
return ResultVOUtils.success("更新成功!"); return ResultVOUtils.success("更新成功!");
} }

@ -1,6 +1,7 @@
package com.glxp.api.admin.dao.basic; package com.glxp.api.admin.dao.basic;
import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity; import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity;
import com.glxp.api.admin.req.basic.BusTypeChangeFilterRequest;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -12,6 +13,7 @@ public interface BussinessChangeTypeDao {
List<BussinessChangeTypeEntity> findByAction(String action); List<BussinessChangeTypeEntity> findByAction(String action);
List<BussinessChangeTypeEntity> filterAll(BusTypeChangeFilterRequest busTypeChangeFilterRequest);
boolean updateBusChangeType(BussinessChangeTypeEntity bussinessTypeEntity); boolean updateBusChangeType(BussinessChangeTypeEntity bussinessTypeEntity);

@ -8,6 +8,7 @@ import com.glxp.api.admin.req.business.StockOrderUploadRequest;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List; import java.util.List;
@Mapper @Mapper
@ -25,7 +26,7 @@ public interface StockOrderDao {
boolean deleteById(@Param("id") String id); boolean deleteById(@Param("id") String id);
boolean updateByStatus(@Param("orderId") String orderId, @Param("status") Integer status); boolean updateByStatus(@Param("orderId") String orderId, @Param("status") Integer status, @Param("updateTime") Date updateTime);
List<StockOrderEntity> filterListOr(StockOrderFilterRequest stockOrderFilterRequest); List<StockOrderEntity> filterListOr(StockOrderFilterRequest stockOrderFilterRequest);

@ -20,6 +20,20 @@ public class BussinessChangeTypeEntity {
private String defautInvName; private String defautInvName;
private String defautSubInvName; private String defautSubInvName;
private String locInv;
private String locSubInv;
private String originAction;
private boolean changeEnable;
private boolean supplementAll;
private String originName;
private String targetName;
private String locSubInvName;
public Integer getBeforeTime() { public Integer getBeforeTime() {
if (beforeTime == null) if (beforeTime == null)
return 0; return 0;

@ -67,6 +67,10 @@ public class UdiRelevanceEntity {
//产品描述 //产品描述
private String cpms; private String cpms;
private Boolean useMuti; //是否多次使用
private Integer useNum; //最小包装单元可使用次数
public Integer getLockStatus() { public Integer getLockStatus() {
if (lockStatus == null) if (lockStatus == null)
return 1; return 1;

@ -46,5 +46,5 @@ public class StockOrderDetailEntity {
private String measname; private String measname;
private String supId; private String supId;
private String supName;
} }

@ -31,5 +31,6 @@ public class PurApplyDetailEntity {
* ID * ID
*/ */
private String supId; private String supId;
private String zczbhhzbapzbh;
} }

@ -76,4 +76,7 @@ public class PurApplyEntity {
private String targetSubInv; private String targetSubInv;
private String targetBillType; private String targetBillType;
private String planBillNo; //生成采购计划单据号
} }

@ -32,4 +32,6 @@ public class PurPlanDetailEntity {
*/ */
private String supId; private String supId;
private String zczbhhzbapzbh;
} }

@ -75,4 +75,15 @@ public class PurPlanEntity {
private String auditRemark; private String auditRemark;
private String stockOrderNo; //生成业务单据号
private String applyCreateBy; //申购人
private String applyAuditBy; //申购审核人
private String applyRemark; //申购说明
private String applyBillNo; //申购单据号,多单以逗号隔开
private String targetBillAction;
private String targetSubInv;
private String targetInv;
} }

@ -0,0 +1,11 @@
package com.glxp.api.admin.req.basic;
import com.glxp.api.admin.req.ListPageRequest;
import lombok.Data;
@Data
public class BusTypeChangeFilterRequest extends ListPageRequest {
private String action;
private String originAction;
}

@ -18,4 +18,5 @@ public class StockOrderIdsRequest {
private String zczbhhzbapzbh; private String zczbhhzbapzbh;
private int type; //1耗材领用 private int type; //1耗材领用
private int purType;
} }

@ -29,4 +29,5 @@ public class FilterInvWarehouseRequest extends ListPageRequest {
private String warehouseCode; private String warehouseCode;
private String superiorCode;//上级 private String superiorCode;//上级
private String subordinateCode;//下级 private String subordinateCode;//下级
private String superiorPcode;//上级
} }

@ -103,4 +103,6 @@ public class PurApplyRequest extends ListPageRequest {
private String startDate; private String startDate;
private String endDate; private String endDate;
private boolean audtoPlan;
} }

@ -87,6 +87,8 @@ public class UdiRelevanceResponse {
private String basicPrductRemak7; private String basicPrductRemak7;
private String basicPrductRemak8; private String basicPrductRemak8;
private Integer rlId; private Integer rlId;
private Boolean useMuti; //是否多次使用
private Integer useNum; //最小包装单元可使用次数
public int getBhzxxsbzsl() { public int getBhzxxsbzsl() {

@ -68,4 +68,8 @@ public class PurApplyResponse {
private String invName; private String invName;
private String subInvName; private String subInvName;
private String auditRemark; private String auditRemark;
private String planBillNo; //生成采购计划单据号
private boolean audtoPlan;
} }

@ -66,4 +66,11 @@ public class PurPlanResponse {
private String invName; private String invName;
private String subInvName; private String subInvName;
private String auditRemark; private String auditRemark;
private String applyCreateBy; //申购人
private String applyAuditBy; //申购审核人
private String applyRemark; //申购说明
private String applyBillNo; //申购单据号,多单以逗号隔开
private String stockOrderNo;
} }

@ -2,6 +2,7 @@ package com.glxp.api.admin.service.basic;
import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity; import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity;
import com.glxp.api.admin.req.basic.BusTypeChangeFilterRequest;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@ -10,6 +11,10 @@ public interface BussinessChangeTypeService {
List<BussinessChangeTypeEntity> findByAction(String action); List<BussinessChangeTypeEntity> findByAction(String action);
BussinessChangeTypeEntity findOriginAction(String action);
List<BussinessChangeTypeEntity> filterAll(BusTypeChangeFilterRequest busTypeChangeFilterRequest);
BussinessChangeTypeEntity findByName(String name); BussinessChangeTypeEntity findByName(String name);
public BussinessChangeTypeEntity findFirstByAction(String action); public BussinessChangeTypeEntity findFirstByAction(String action);

@ -1,7 +1,11 @@
package com.glxp.api.admin.service.basic.impl; package com.glxp.api.admin.service.basic.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.api.admin.dao.basic.BussinessChangeTypeDao; import com.glxp.api.admin.dao.basic.BussinessChangeTypeDao;
import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity; import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity;
import com.glxp.api.admin.req.basic.BusTypeChangeFilterRequest;
import com.glxp.api.admin.service.basic.BussinessChangeTypeService; import com.glxp.api.admin.service.basic.BussinessChangeTypeService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -20,6 +24,30 @@ public class BussinessChangeTypeServiceaImpl implements BussinessChangeTypeServi
return data; return data;
} }
@Override
public BussinessChangeTypeEntity findOriginAction(String action) {
if (StrUtil.isEmpty(action))
return null;
BusTypeChangeFilterRequest busTypeChangeFilterRequest = new BusTypeChangeFilterRequest();
busTypeChangeFilterRequest.setOriginAction(action);
List<BussinessChangeTypeEntity> data = bussinessChangeTypeDao.filterAll(busTypeChangeFilterRequest);
if (CollUtil.isNotEmpty(data)) {
return data.get(0);
}
return null;
}
@Override
public List<BussinessChangeTypeEntity> filterAll(BusTypeChangeFilterRequest busTypeChangeFilterRequest) {
if (busTypeChangeFilterRequest.getPage() != null) {
int offset = (busTypeChangeFilterRequest.getPage() - 1) * busTypeChangeFilterRequest.getLimit();
PageHelper.offsetPage(offset, busTypeChangeFilterRequest.getLimit());
}
List<BussinessChangeTypeEntity> data = bussinessChangeTypeDao.filterAll(busTypeChangeFilterRequest);
return data;
}
@Override @Override
public BussinessChangeTypeEntity findFirstByAction(String action) { public BussinessChangeTypeEntity findFirstByAction(String action) {

@ -1,6 +1,7 @@
package com.glxp.api.admin.service.basic.impl; package com.glxp.api.admin.service.basic.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.api.admin.dao.basic.UdiInfoDao; import com.glxp.api.admin.dao.basic.UdiInfoDao;
import com.glxp.api.admin.entity.basic.UdiInfoEntity; import com.glxp.api.admin.entity.basic.UdiInfoEntity;
@ -102,6 +103,8 @@ public class UdiInfoServiceImpl implements UdiInfoService {
@Override @Override
public boolean updateUdiInfo(UdiInfoEntity udiInfoEntity) { public boolean updateUdiInfo(UdiInfoEntity udiInfoEntity) {
if (StrUtil.isEmpty(udiInfoEntity.getUuid()))
return false;
return udiInfoDao.updateUdiInfo(udiInfoEntity); return udiInfoDao.updateUdiInfo(udiInfoEntity);
} }

@ -107,6 +107,7 @@ public class StockOrderServiceImpl implements StockOrderService {
@Override @Override
public boolean insertStockOrder(StockOrderEntity stockOrderEntity) { public boolean insertStockOrder(StockOrderEntity stockOrderEntity) {
stockOrderEntity.setUpdateTime(new Date());
return stockOrderDao.insertStockOrder(stockOrderEntity); return stockOrderDao.insertStockOrder(stockOrderEntity);
} }
@ -122,6 +123,7 @@ public class StockOrderServiceImpl implements StockOrderService {
@Override @Override
public boolean updateById(StockOrderEntity stockOrderEntity) { public boolean updateById(StockOrderEntity stockOrderEntity) {
stockOrderEntity.setUpdateTime(new Date());
return stockOrderDao.updateById(stockOrderEntity); return stockOrderDao.updateById(stockOrderEntity);
} }
@ -137,7 +139,8 @@ public class StockOrderServiceImpl implements StockOrderService {
@Override @Override
public boolean updateByStatus(String orderId, Integer status) { public boolean updateByStatus(String orderId, Integer status) {
return stockOrderDao.updateByStatus(orderId, status); return stockOrderDao.updateByStatus(orderId, status, new Date());
} }
@Override @Override

@ -81,6 +81,8 @@ public class InvSubWarehouseServiceImpl implements InvSubWarehouseService {
@Override @Override
public InvSubWarehouseEntity findByInvSubByCode(String code) { public InvSubWarehouseEntity findByInvSubByCode(String code) {
if (StrUtil.isEmpty(code))
return null;
FilterInvSubWarehouseRequest filterInvSubWarehouseRequest = new FilterInvSubWarehouseRequest(); FilterInvSubWarehouseRequest filterInvSubWarehouseRequest = new FilterInvSubWarehouseRequest();
filterInvSubWarehouseRequest.setCode(code); filterInvSubWarehouseRequest.setCode(code);
List<InvSubWarehouseEntity> invSubWarehouseEntities = invSubWarehouseDao.filterInvSubWarehouse(filterInvSubWarehouseRequest); List<InvSubWarehouseEntity> invSubWarehouseEntities = invSubWarehouseDao.filterInvSubWarehouse(filterInvSubWarehouseRequest);
@ -195,6 +197,7 @@ public class InvSubWarehouseServiceImpl implements InvSubWarehouseService {
public InvSubWarehouseEntity filterGroupInvSubAndcode(String code) { public InvSubWarehouseEntity filterGroupInvSubAndcode(String code) {
return invSubWarehouseDao.filterGroupInvSubAndcode(code); return invSubWarehouseDao.filterGroupInvSubAndcode(code);
} }
@Override @Override
public List<InvSubWarehouseEntity> filterGroupInvSubDown(FilterInvWarehouseRequest filterInvSubWarehouseRequest) { public List<InvSubWarehouseEntity> filterGroupInvSubDown(FilterInvWarehouseRequest filterInvSubWarehouseRequest) {
return invSubWarehouseDao.filterGroupInvSubDown(filterInvSubWarehouseRequest); return invSubWarehouseDao.filterGroupInvSubDown(filterInvSubWarehouseRequest);

@ -10,6 +10,7 @@ import com.glxp.api.admin.entity.info.SystemParamConfigEntity;
import com.glxp.api.admin.entity.inout.*; import com.glxp.api.admin.entity.inout.*;
import com.glxp.api.admin.entity.inventory.InvProductDetailEntity; import com.glxp.api.admin.entity.inventory.InvProductDetailEntity;
import com.glxp.api.admin.entity.inventory.InvProductEntity; import com.glxp.api.admin.entity.inventory.InvProductEntity;
import com.glxp.api.admin.entity.inventory.InvSubWarehouseEntity;
import com.glxp.api.admin.entity.inventory.InvWarehouseEntity; import com.glxp.api.admin.entity.inventory.InvWarehouseEntity;
import com.glxp.api.admin.req.basic.FilterUdiInfoRequest; import com.glxp.api.admin.req.basic.FilterUdiInfoRequest;
import com.glxp.api.admin.req.inventory.FilterInvProductDetailRequest; import com.glxp.api.admin.req.inventory.FilterInvProductDetailRequest;
@ -21,6 +22,7 @@ import com.glxp.api.admin.service.info.SystemParamConfigService;
import com.glxp.api.admin.service.inout.*; import com.glxp.api.admin.service.inout.*;
import com.glxp.api.admin.service.inventory.*; import com.glxp.api.admin.service.inventory.*;
import com.glxp.api.admin.util.*; import com.glxp.api.admin.util.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -28,6 +30,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.*; import java.util.*;
@Slf4j
@Service @Service
public class InvProductsTrService { public class InvProductsTrService {
@ -72,9 +75,17 @@ public class InvProductsTrService {
InvWarehouseService invWarehouseService; InvWarehouseService invWarehouseService;
@Resource @Resource
GennerOrderUtils gennerOrderUtils; GennerOrderUtils gennerOrderUtils;
@Resource
InvSubWarehouseService invSubWarehouseService;
@Async @Async
public void genInvProducts(String orderId) { public void genInvProducts(String orderId) {
//导入订单状态
IOOrderStatusEntity ioOrderStatusEntity = new IOOrderStatusEntity();
ioOrderStatusEntity.setStatus(1);
ioOrderStatusEntity.setUpdateTime(new Date());
ioOrderStatusEntity.setOrderId(orderId);
ioOrderStatusService.insertOrderStatus(ioOrderStatusEntity);
OrderEntity orderEntity = orderService.findById(orderId); OrderEntity orderEntity = orderService.findById(orderId);
if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_SUCCESS && if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_SUCCESS &&
@ -95,31 +106,11 @@ public class InvProductsTrService {
if (bussinessTypeEntity.isPreIn()) { if (bussinessTypeEntity.isPreIn()) {
InvProductEntity invPreProductEntity = null; InvProductEntity invPreProductEntity = null;
// invPreInProductService.selectByUuid(erpOrderEntity.getGoodsid(), erpOrderEntity.getBatchNo(), warehouseEntity.getSupId()
// , warehouseEntity.getLocStorageCode(), warehouseEntity.getInvWarehouseCode());
if (invPreProductEntity == null) { if (invPreProductEntity == null) {
invPreProductEntity = buildInvPreInProduct(orderEntity, erpOrderEntity, warehouseEntity); invPreProductEntity = buildInvPreInProduct(orderEntity, erpOrderEntity, warehouseEntity);
invPreProductEntity.setUpdateTime(new Date()); invPreProductEntity.setUpdateTime(new Date());
invPreInProductService.insertInvProduct(invPreProductEntity); invPreInProductService.insertInvProduct(invPreProductEntity);
} }
/**
* else {
* int actCount = getActCount(warehouseEntity);
* int count = actCount * warehouseEntity.getCount();
* if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
* invPreProductEntity.setOutCount(invPreProductEntity.getOutCount() + count);
* } else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
* invPreProductEntity.setInCount(invPreProductEntity.getInCount() + count);
* }
* if (erpOrderEntity.getPrice() != null) {
* invPreProductEntity.setPrice(erpOrderEntity.getPrice() + "");
* }
* invPreProductEntity.setUpdateTime(new Date());
* invPreInProductService.updateInvProduct(invPreProductEntity);
* }
*/
} else if (bussinessTypeEntity.isAdvanceType()) {//预入库,则转存预入库 } else if (bussinessTypeEntity.isAdvanceType()) {//预入库,则转存预入库
InvProductEntity invPreProductEntity = InvProductEntity invPreProductEntity =
invPreProductService.selectByUuid(erpOrderEntity.getGoodsid(), erpOrderEntity.getBatchNo(), warehouseEntity.getSupId() invPreProductService.selectByUuid(erpOrderEntity.getGoodsid(), erpOrderEntity.getBatchNo(), warehouseEntity.getSupId()
@ -166,10 +157,13 @@ public class InvProductsTrService {
} }
if (orderEntity.isPreCheck()) { if (orderEntity.isPreCheck()) {
//暂时不需要去计算库存
// int actCount = getActCount(warehouseEntity); // int actCount = getActCount(warehouseEntity);
// int count = actCount * warehouseEntity.getCount(); // int count = actCount * warehouseEntity.getCount();
// InvProductEntity preInvEntity = invPreInProductService.selectByUuid(erpOrderEntity.getGoodsid(), erpOrderEntity.getBatchNo(), // InvProductEntity preInvEntity = invPreInProductService.selectByUuid(erpOrderEntity.getGoodsid(), erpOrderEntity.getBatchNo(),
// warehouseEntity.getSupId(), null, null); // warehouseEntity.getSupId(), null, null);
//
// if (preInvEntity != null) { // if (preInvEntity != null) {
// if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) { // if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
// preInvEntity.setOutCount(preInvEntity.getOutCount() + count); // preInvEntity.setOutCount(preInvEntity.getOutCount() + count);
@ -177,9 +171,10 @@ public class InvProductsTrService {
// if (erpOrderEntity.getPrice() != null) { // if (erpOrderEntity.getPrice() != null) {
// preInvEntity.setPrice(erpOrderEntity.getPrice() + ""); // preInvEntity.setPrice(erpOrderEntity.getPrice() + "");
// } // }
// }
// preInvEntity.setUpdateTime(new Date()); // preInvEntity.setUpdateTime(new Date());
// invPreInProductService.updateInvProduct(preInvEntity); // invPreInProductService.updateInvProduct(preInvEntity);
// }
} }
} }
@ -205,12 +200,6 @@ public class InvProductsTrService {
invProductDetailEntities = buildInvProductDetail(orderId, erpOrderEntity, orderEntity, 3); invProductDetailEntities = buildInvProductDetail(orderId, erpOrderEntity, orderEntity, 3);
} else { } else {
invProductDetailEntities = buildInvProductDetail(orderId, erpOrderEntity, orderEntity, 2); invProductDetailEntities = buildInvProductDetail(orderId, erpOrderEntity, orderEntity, 2);
// if (orderEntity.isPreCheck()) {
//// insetInv(bussinessTypeEntity, invProductDetailEntities);//2.插入当前库存
//
// invPreInProductDetailService.insertInvProducts(invProductDetailEntities);
// }
} }
if (invProductDetailEntities != null && invProductDetailEntities.size() > 0) { if (invProductDetailEntities != null && invProductDetailEntities.size() > 0) {
mInvProductDetailEntities.addAll(invProductDetailEntities); mInvProductDetailEntities.addAll(invProductDetailEntities);
@ -220,32 +209,35 @@ public class InvProductsTrService {
} }
//单据流转 //单据流转
List<BussinessChangeTypeEntity> bussinessChangeTypeEntitys = bussinessChangeTypeService.findByAction(bussinessLocalTypeEntity.getLocalAction()); BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeService.findOriginAction(bussinessLocalTypeEntity.getLocalAction());
if ((bussinessChangeTypeEntitys != null && bussinessChangeTypeEntitys.size() > 0) && bussinessLocalTypeEntity.isChangeEnable()) { if (bussinessChangeTypeEntity != null && bussinessLocalTypeEntity.isChangeEnable()) {
if (orderEntity.isOutChangeEnable()) {//是否缺量补单 addUseOutOrder(orderEntity, mInvProductDetailEntities, bussinessChangeTypeEntity);
//普通出库
if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType()) {
addUseOutOrder(orderEntity, mInvProductDetailEntities, bussinessChangeTypeEntitys); // if (orderEntity.isOutChangeEnable()) {//是否缺量补单
} else if (ConstantType.TYPE_PUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType()) // //普通出库
//普通入库补单 // if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType()) {
{ // addUseOutOrder(orderEntity, mInvProductDetailEntities, bussinessChangeTypeEntitys);
BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntitys.get(0); // } else if (ConstantType.TYPE_PUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType())
List<WarehouseEntity> datas = addPutOrder(orderEntity, mInvProductDetailEntities); // //普通入库补单
List<WarehouseEntity> temps = filterMapCodes(datas); // {
buildPreOutOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成流转单据 // BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntitys.get(0);
} else if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && bussinessTypeEntity.isAdvanceType()) { // List<WarehouseEntity> datas = addPutOrder(orderEntity, mInvProductDetailEntities);
//寄售出库补单 // List<WarehouseEntity> temps = filterMapCodes(datas);
BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntitys.get(0); // buildPreOutOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成流转单据
List<WarehouseEntity> datas = addPreOutOrder(orderEntity, mInvProductDetailEntities); // } else if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && bussinessTypeEntity.isAdvanceType()) {
List<WarehouseEntity> temps = filterMapCodes(datas); // //寄售出库补单
buildPreInOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成流转单据 // BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntitys.get(0);
} else { // List<WarehouseEntity> datas = addPreOutOrder(orderEntity, mInvProductDetailEntities);
insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存 // List<WarehouseEntity> temps = filterMapCodes(datas);
} // buildPreInOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成流转单据
} else { // } else {
insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存 // insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存
} // }
// } else {
// insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存
// }
} else { } else {
insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存 insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存
@ -255,28 +247,13 @@ public class InvProductsTrService {
} }
//普通出库补单-- //补采购入库,调拨入库,寄售转入 //普通出库补单-- //补采购入库,调拨入库,寄售转入
public void addUseOutOrder(OrderEntity orderEntity, List<InvProductDetailEntity> invProductDetailEntities, List<BussinessChangeTypeEntity> bussinessChangeTypeEntities) { public void addUseOutOrder(OrderEntity orderEntity, List<InvProductDetailEntity> invProductDetailEntities, BussinessChangeTypeEntity bussinessChangeTypeEntity) {
BussinessChangeTypeEntity advChangeTypeEntity = null;
BussinessChangeTypeEntity norChangeTypeEntity = null;
BussinessChangeTypeEntity outChangeTypeEntity = null;
BussinessChangeTypeEntity innorChangeTypeEntity = null;
for (BussinessChangeTypeEntity bussinessChangeTypeEntity : bussinessChangeTypeEntities) {
if (bussinessChangeTypeEntity.getChangeType() == ConstantStatus.ORDER_CHANGE_NORMAL_ADV_IN) {
advChangeTypeEntity = bussinessChangeTypeEntity;
} else if (bussinessChangeTypeEntity.getChangeType() == ConstantStatus.ORDER_CHANGE_NORMAL_IN) {
outChangeTypeEntity = bussinessChangeTypeEntity;
} else if (bussinessChangeTypeEntity.getChangeType() == ConstantStatus.ORDER_CHANGE_INNOR_NORMAL_IN) {
innorChangeTypeEntity = bussinessChangeTypeEntity;
}
}
List<WarehouseEntity> warehouseEntities = codesService.findByReceiptId(orderEntity.getId()); List<WarehouseEntity> warehouseEntities = codesService.findByReceiptId(orderEntity.getId());
List<WarehouseEntity> inList = new ArrayList<>(); List<WarehouseEntity> inList = new ArrayList<>();
List<WarehouseEntity> preiInList = new ArrayList<>(); List<WarehouseEntity> preiInList = new ArrayList<>();
//缺量补单时是否全量补单 //缺量补单时是否全量补单
BussinessTypeEntity bussinessTypeEntity1 = bussinessTypeService.findBTByAction(orderEntity.getAction()); BussinessTypeEntity bussinessTypeEntity1 = bussinessTypeService.findBTByAction(orderEntity.getAction());
// SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("ullage_supplement_all"); if (bussinessChangeTypeEntity.isSupplementAll()) {
if (bussinessTypeEntity1.isSupplementAll()) {
insetInv(bussinessTypeEntity1, invProductDetailEntities);//2.插入当前库存 insetInv(bussinessTypeEntity1, invProductDetailEntities);//2.插入当前库存
WarehouseEntity warehouseEntity = warehouseEntities.get(0); WarehouseEntity warehouseEntity = warehouseEntities.get(0);
InvWarehouseEntity locWarehouseEntity = invWarehouseService.selectByCode(warehouseEntity.getLocStorageCode()); InvWarehouseEntity locWarehouseEntity = invWarehouseService.selectByCode(warehouseEntity.getLocStorageCode());
@ -286,15 +263,12 @@ public class InvProductsTrService {
} }
} else { } else {
if (locWarehouseEntity.getLevel() > 1) { if (locWarehouseEntity.getLevel() > 1) {
norChangeTypeEntity = innorChangeTypeEntity;
InvWarehouseEntity pInWarehouseEntity = invWarehouseService.selectByCode(locWarehouseEntity.getPcode());
for (WarehouseEntity tempEntity : warehouseEntities) { for (WarehouseEntity tempEntity : warehouseEntities) {
tempEntity.setFromCorp(pInWarehouseEntity.getName()); tempEntity.setFromCorp(bussinessChangeTypeEntity.getDefaultInv());
tempEntity.setFromCorpId(pInWarehouseEntity.getCode()); tempEntity.setFromCorpId(bussinessChangeTypeEntity.getDefaultSubInv());
inList.add(tempEntity); inList.add(tempEntity);
} }
} else { } else {
norChangeTypeEntity = outChangeTypeEntity;
BasicUnitMaintainEntity basicUnitMaintainEntity = basicUnitMaintainService.selectByErpId(warehouseEntity.getSupId()); BasicUnitMaintainEntity basicUnitMaintainEntity = basicUnitMaintainService.selectByErpId(warehouseEntity.getSupId());
for (WarehouseEntity tempEntity : warehouseEntities) { for (WarehouseEntity tempEntity : warehouseEntities) {
tempEntity.setFromCorpId(warehouseEntity.getSupId()); tempEntity.setFromCorpId(warehouseEntity.getSupId());
@ -314,7 +288,7 @@ public class InvProductsTrService {
* else>1 * else>1
* {} * {}
*/ */
InvWarehouseEntity locWarehouseEntity = invWarehouseService.selectByCode(warehouseEntity.getLocStorageCode()); InvWarehouseEntity locWarehouseEntity = invWarehouseService.selectByCode(bussinessChangeTypeEntity.getLocInv());
if (locWarehouseEntity.getLevel() == 1 && isAdavnce(warehouseEntity)) {//补寄售转入 if (locWarehouseEntity.getLevel() == 1 && isAdavnce(warehouseEntity)) {//补寄售转入
//获取当前条码实际数量 //获取当前条码实际数量
int actCount = getActCount(warehouseEntity); int actCount = getActCount(warehouseEntity);
@ -325,7 +299,7 @@ public class InvProductsTrService {
* *
* 1= * 1=
*/ */
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(advChangeTypeEntity.getScAction()); BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(bussinessChangeTypeEntity.getScAction());
InvWarehouseEntity invWarehouseEntity; InvWarehouseEntity invWarehouseEntity;
if (!StrUtil.isEmpty(bussinessTypeEntity.getStorageCode())) { if (!StrUtil.isEmpty(bussinessTypeEntity.getStorageCode())) {
invWarehouseEntity = invWarehouseService.selectByCode(bussinessTypeEntity.getStorageCode()); invWarehouseEntity = invWarehouseService.selectByCode(bussinessTypeEntity.getStorageCode());
@ -337,13 +311,11 @@ public class InvProductsTrService {
} else } else
invWarehouseEntity = invWarehouseService.findDefault(true, true); invWarehouseEntity = invWarehouseService.findDefault(true, true);
int invCount = getCountByOrder(null, warehouseEntity); int invCount = getCountByOrder(null, warehouseEntity);
warehouseEntity.setFromCorpId(invWarehouseEntity.getCode()); warehouseEntity.setFromCorpId(invWarehouseEntity.getCode());
warehouseEntity.setFromCorp(invWarehouseEntity.getName()); warehouseEntity.setFromCorp(invWarehouseEntity.getName());
if (invCount > 0) {//仓库已存在该产品 if (invCount > 0) {//仓库已存在该产品
if (count > invCount) { //当前数量>结余数量,说明该产品是无序列号或者是多级包装 if (count > invCount) { //当前数量>结余数量,说明该产品是无序列号或者是多级包装
// UdiEntity udiEntity = FilterUdiUtils.getUdi(warehouseEntity.getCode());
if (actCount > invCount) { //该产品实际数量大于结余数量,说明是多级包装,直接补 if (actCount > invCount) { //该产品实际数量大于结余数量,说明是多级包装,直接补
preiInList.add(warehouseEntity); preiInList.add(warehouseEntity);
} else if (warehouseEntity.getSerialNo() == null) { //无序列号(多级包装无序列号的已在上一步被排除),补齐数量 } else if (warehouseEntity.getSerialNo() == null) { //无序列号(多级包装无序列号的已在上一步被排除),补齐数量
@ -364,26 +336,27 @@ public class InvProductsTrService {
String code = warehouseEntity.getCode(); String code = warehouseEntity.getCode();
int count = actCount * warehouseEntity.getCount(); int count = actCount * warehouseEntity.getCount();
int invCount = 0; int invCount = 0;
if (locWarehouseEntity.getLevel() > 1) {//补调拨入库 if (locWarehouseEntity.getLevel() == 1 && StrUtil.isEmpty(bussinessChangeTypeEntity.getDefaultSubInv())) {
/**
*
*/
InvWarehouseEntity pInWarehouseEntity = invWarehouseService.selectByCode(locWarehouseEntity.getPcode());
warehouseEntity.setFromCorp(pInWarehouseEntity.getName());
warehouseEntity.setFromCorpId(pInWarehouseEntity.getCode());
invCount = getCountByOrder(null, warehouseEntity);
norChangeTypeEntity = innorChangeTypeEntity;
} else { //补供应商入库
/** /**
* *
*/ */
//供应商
warehouseEntity.setFromCorpId(warehouseEntity.getSupId()); warehouseEntity.setFromCorpId(warehouseEntity.getSupId());
BasicUnitMaintainEntity basicUnitMaintainEntity = basicUnitMaintainService.selectByErpId(warehouseEntity.getSupId()); BasicUnitMaintainEntity basicUnitMaintainEntity = basicUnitMaintainService.selectByErpId(warehouseEntity.getSupId());
warehouseEntity.setFromCorp(basicUnitMaintainEntity.getName()); warehouseEntity.setFromCorp(basicUnitMaintainEntity.getName());
invCount = getCountByOrder(null, warehouseEntity); invCount = getCountByOrder(null, warehouseEntity);
norChangeTypeEntity = outChangeTypeEntity; } else if (StrUtil.isNotEmpty(bussinessChangeTypeEntity.getDefaultSubInv())) {
/**
*
*/
InvSubWarehouseEntity subWarehouseEntity = invSubWarehouseService.findByInvSubByCode(bussinessChangeTypeEntity.getDefaultSubInv());
warehouseEntity.setFromCorp(subWarehouseEntity.getName());
warehouseEntity.setFromCorpId(subWarehouseEntity.getParentId());
warehouseEntity.setFromSubInvCode(subWarehouseEntity.getCode());
invCount = getCountByOrder(null, warehouseEntity);
} else {
//无法补单,补单失败!
log.error("无法补单,补单失败!,单据流转设置未设置补单往来信息(" + orderEntity.getId() + ")");
return;
} }
if (invCount > 0) {//仓库已存在该产品 if (invCount > 0) {//仓库已存在该产品
@ -411,12 +384,12 @@ public class InvProductsTrService {
if (inList.size() > 0) { if (inList.size() > 0) {
List<WarehouseEntity> temps = filterMapCodes(inList); List<WarehouseEntity> temps = filterMapCodes(inList);
buildInOrder(norChangeTypeEntity, temps, orderEntity); //3.生成采购入库流转单据 buildInOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成采购入库流转单据
} }
if (preiInList.size() > 0) { if (preiInList.size() > 0) {
List<WarehouseEntity> temps1 = filterMapCodes(preiInList); List<WarehouseEntity> temps1 = filterMapCodes(preiInList);
buildNorPreInOrder(advChangeTypeEntity, temps1, orderEntity); //3.补寄售转入 buildNorPreInOrder(bussinessChangeTypeEntity, temps1, orderEntity); //3.补寄售转入
} }
} }
@ -646,7 +619,6 @@ public class InvProductsTrService {
outOrder.setFromCorpId(null); outOrder.setFromCorpId(null);
outOrder.setLocStorageCode(orderEntity.getLocStorageCode()); outOrder.setLocStorageCode(orderEntity.getLocStorageCode());
outOrder.setInvStorageCode(orderEntity.getInvStorageCode()); outOrder.setInvStorageCode(orderEntity.getInvStorageCode());
//互填单号 //互填单号
orderEntity.setUllageSupNo(outOrder.getId()); orderEntity.setUllageSupNo(outOrder.getId());
orderEntity.setUpdateTime(new Date()); orderEntity.setUpdateTime(new Date());
@ -692,7 +664,9 @@ public class InvProductsTrService {
} else } else
unkonwCorpList.add(warehouseEntity); unkonwCorpList.add(warehouseEntity);
} }
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(bussinessChangeTypeEntity.getScAction());
BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findBTByAction(bussinessChangeTypeEntity.getAction());
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(bussinessLocalTypeEntity.getAction());
//根据往来单位生成入库单 //根据往来单位生成入库单
for (String corpName : filterSupMaps.keySet()) { for (String corpName : filterSupMaps.keySet()) {
List<WarehouseEntity> temps; List<WarehouseEntity> temps;
@ -702,8 +676,8 @@ public class InvProductsTrService {
outOrder.setSupplementNo(null);//补单需置空 outOrder.setSupplementNo(null);//补单需置空
outOrder.setActDate(DateUtil.getBeforeDay(outOrder.getActDate(), bussinessChangeTypeEntity.getBeforeTime())); outOrder.setActDate(DateUtil.getBeforeDay(outOrder.getActDate(), bussinessChangeTypeEntity.getBeforeTime()));
outOrder.setCreateTime(outOrder.getActDate()); outOrder.setCreateTime(outOrder.getActDate());
outOrder.setAction(bussinessChangeTypeEntity.getScAction()); outOrder.setAction(bussinessTypeEntity.getAction());
outOrder.setMainAction(ConstantType.TYPE_PUT); outOrder.setMainAction(bussinessTypeEntity.getMainAction());
outOrder.setContrastStatus(ConstantStatus.ORDER_CHECK_UN); outOrder.setContrastStatus(ConstantStatus.ORDER_CHECK_UN);
outOrder.setCustomerId(Constant.SYSTEM_CUSTOMER_ID); outOrder.setCustomerId(Constant.SYSTEM_CUSTOMER_ID);
outOrder.setErpFk(null); outOrder.setErpFk(null);
@ -712,16 +686,13 @@ public class InvProductsTrService {
outOrder.setId(orderNo); outOrder.setId(orderNo);
outOrder.setFromCorpId(corpName); outOrder.setFromCorpId(corpName);
outOrder.setFromCorp(temps.get(0).getFromCorp()); outOrder.setFromCorp(temps.get(0).getFromCorp());
// BussinessTypeEntity originBT = bussinessTypeService.findBTByAction(orderEntity.getAction());
if (StrUtil.isNotEmpty(bussinessChangeTypeEntity.getDefaultSubInv())) { if (StrUtil.isNotEmpty(bussinessChangeTypeEntity.getDefaultSubInv())) {
outOrder.setFromSubInvCode(bussinessChangeTypeEntity.getDefaultSubInv()); outOrder.setFromSubInvCode(bussinessChangeTypeEntity.getDefaultSubInv());
} }
outOrder.setCorpOrderId(CustomUtil.getId() + "x"); outOrder.setCorpOrderId(CustomUtil.getId() + "x");
outOrder.setLocStorageCode(orderEntity.getLocStorageCode()); outOrder.setLocStorageCode(bussinessChangeTypeEntity.getLocInv());
outOrder.setInvStorageCode(orderEntity.getInvStorageCode()); outOrder.setInvStorageCode(bussinessChangeTypeEntity.getLocInv());
outOrder.setInvWarehouseCode(bussinessChangeTypeEntity.getLocSubInv());
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("additional_auto_submit"); SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("additional_auto_submit");
if ("1".equals(systemParamConfigEntity.getParamValue())) { if ("1".equals(systemParamConfigEntity.getParamValue())) {
outOrder.setStatus(ConstantStatus.ORDER_STATUS_PROCESS); outOrder.setStatus(ConstantStatus.ORDER_STATUS_PROCESS);
@ -746,8 +717,8 @@ public class InvProductsTrService {
warehouseEntity.setFromCorpId(outOrder.getFromCorpId()); warehouseEntity.setFromCorpId(outOrder.getFromCorpId());
warehouseEntity.setLocStorageCode(outOrder.getLocStorageCode()); warehouseEntity.setLocStorageCode(outOrder.getLocStorageCode());
warehouseEntity.setInvWarehouseCode(outOrder.getInvWarehouseCode()); warehouseEntity.setInvWarehouseCode(outOrder.getInvWarehouseCode());
warehouseEntity.setAction(bussinessChangeTypeEntity.getScAction()); warehouseEntity.setAction(outOrder.getAction());
warehouseEntity.setMainAction(ConstantType.TYPE_PUT); warehouseEntity.setMainAction(outOrder.getMainAction());
} }
codesTempService.insertCodesTemp(temps); codesTempService.insertCodesTemp(temps);
} }
@ -963,6 +934,7 @@ public class InvProductsTrService {
} }
} }
public void insetInvSingle(boolean isPre, InvProductDetailEntity invProductDetailEntity) { public void insetInvSingle(boolean isPre, InvProductDetailEntity invProductDetailEntity) {
List<InvProductDetailEntity> invProductDetailEntities = new ArrayList<>(); List<InvProductDetailEntity> invProductDetailEntities = new ArrayList<>();
invProductDetailEntities.add(invProductDetailEntity); invProductDetailEntities.add(invProductDetailEntity);

@ -5,7 +5,10 @@
<select id="findByAction" parameterType="Map" <select id="findByAction" parameterType="Map"
resultType="com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity"> resultType="com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity">
SELECT basic_bustype_pre.*,basic_bussiness_type.name,inv_warehouse.`name` defautInvName,inv_warehouse_sub.`name` defautSubInvName SELECT basic_bustype_pre.*,
basic_bussiness_type.name,
inv_warehouse.`name` defautInvName,
inv_warehouse_sub.`name` defautSubInvName
FROM basic_bustype_pre FROM basic_bustype_pre
LEFT JOIN basic_bussiness_type LEFT JOIN basic_bussiness_type
on basic_bustype_pre.scAction = basic_bussiness_type.action on basic_bustype_pre.scAction = basic_bussiness_type.action
@ -15,16 +18,41 @@
</select> </select>
<select id="filterAll" parameterType="com.glxp.api.admin.req.basic.BusTypeChangeFilterRequest"
resultType="com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity">
SELECT basic_bustype_pre.*,invA.name defautSubInvName,invB.name locSubInvName ,
busTypeA.name originName,busTypeB.name targetName
FROM basic_bustype_pre
left JOIN inv_warehouse_sub invA on basic_bustype_pre.defaultSubInv = invA.code
left JOIN inv_warehouse_sub invB on basic_bustype_pre.locSubInv = invB.code
left JOIN basic_bustype_local busTypeA on basic_bustype_pre.originAction = busTypeA.action
left JOIN basic_bustype_local busTypeB on basic_bustype_pre.action = busTypeB.action
<where>
<if test="action != ''and action != null">
AND basic_bustype_pre.`action` = #{action}
</if>
<if test="originAction != ''and originAction != null">
AND basic_bustype_pre.`originAction` = #{originAction}
</if>
</where>
</select>
<insert id="insertBusChangeTypee" keyProperty="id" <insert id="insertBusChangeTypee" keyProperty="id"
parameterType="com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity"> parameterType="com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity">
insert insert
INTO basic_bustype_pre INTO basic_bustype_pre
(action, scAction, `index`, remark, beforeTime, intro, changeType, defaultInv, defaultSubInv) ( `action`, scAction, `index`, remark, beforeTime, intro, changeType, defaultInv, defaultSubInv
, locInv, locSubInv, originAction, changeEnable, supplementAll)
values (#{action}, values (#{action},
#{scAction}, #{scAction},
#{index}, #{index},
#{remark}, #{remark},
#{beforeTime}, #{intro}, #{changeType},#{defaultInv},#{defaultSubInv}) #{beforeTime}, #{intro}, #{changeType}, #{defaultInv}, #{defaultSubInv}
, #{locInv}, #{locSubInv}, #{originAction}, #{changeEnable}, #{supplementAll})
</insert> </insert>
@ -40,6 +68,11 @@
<if test="changeType != null">changeType = #{changeType},</if> <if test="changeType != null">changeType = #{changeType},</if>
<if test="defaultInv != null">defaultInv = #{defaultInv},</if> <if test="defaultInv != null">defaultInv = #{defaultInv},</if>
<if test="defaultSubInv != null">defaultSubInv = #{defaultSubInv},</if> <if test="defaultSubInv != null">defaultSubInv = #{defaultSubInv},</if>
<if test="locInv != null">locInv = #{locInv},</if>
<if test="locSubInv != null">locSubInv = #{locSubInv},</if>
<if test="originAction != null">originAction = #{originAction},</if>
<if test="changeEnable != null">changeEnable = #{changeEnable},</if>
<if test="supplementAll != null">supplementAll = #{supplementAll},</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}

@ -279,7 +279,7 @@
<if test="basicPrductRemak8 != null">basicPrductRemak8=#{basicPrductRemak8},</if> <if test="basicPrductRemak8 != null">basicPrductRemak8=#{basicPrductRemak8},</if>
</trim> </trim>
WHERE nameCode = #{nameCode} WHERE uuid = #{uuid}
</update> </update>
<update id="updateUdiInfoByUuid" parameterType="com.glxp.api.admin.entity.basic.UdiInfoEntity"> <update id="updateUdiInfoByUuid" parameterType="com.glxp.api.admin.entity.basic.UdiInfoEntity">

@ -30,7 +30,7 @@
basic_products.scbssfbhsxrq,basic_products.cpms,basic_udirel.supName,basic_products.originUuid basic_products.scbssfbhsxrq,basic_products.cpms,basic_udirel.supName,basic_products.originUuid
,basic_products.basicPrductRemak1 ,basic_products.basicPrductRemak1
,basic_products.basicPrductRemak2,basic_products.basicPrductRemak3,basic_products.basicPrductRemak4,basic_products.basicPrductRemak5,basic_products.basicPrductRemak6 ,basic_products.basicPrductRemak2,basic_products.basicPrductRemak3,basic_products.basicPrductRemak4,basic_products.basicPrductRemak5,basic_products.basicPrductRemak6
,basic_products.basicPrductRemak7,basic_products.basicPrductRemak8 ,basic_products.basicPrductRemak7,basic_products.basicPrductRemak8, basic_udirel.useNum, basic_udirel.useMuti
FROM basic_udirel FROM basic_udirel
inner JOIN basic_products inner JOIN basic_products
ON basic_products.uuid = basic_udirel.uuid ON basic_products.uuid = basic_udirel.uuid
@ -167,7 +167,7 @@
basic_products.basicPrductRemak6 basic_products.basicPrductRemak6
, ,
basic_products.basicPrductRemak7, basic_products.basicPrductRemak7,
basic_products.basicPrductRemak8 basic_products.basicPrductRemak8, basic_udirel.useNum, basic_udirel.useMuti
FROM basic_udirel FROM basic_udirel
inner JOIN basic_products inner JOIN basic_products
ON basic_products.uuid = basic_udirel.uuid ON basic_products.uuid = basic_udirel.uuid
@ -308,7 +308,7 @@
basic_products.basicPrductRemak6 basic_products.basicPrductRemak6
, ,
basic_products.basicPrductRemak7, basic_products.basicPrductRemak7,
basic_products.basicPrductRemak8 basic_products.basicPrductRemak8,basic_udirel.useNum, basic_udirel.useMuti
FROM basic_products FROM basic_products
right JOIN basic_udirel right JOIN basic_udirel
ON basic_products.uuid = basic_udirel.uuid ON basic_products.uuid = basic_udirel.uuid
@ -549,7 +549,7 @@
(id, (id,
thirdId,thirdName,uuid,isUseDy,updateTime,modifyTime, thirdId,thirdName,uuid,isUseDy,updateTime,modifyTime,
thirdId1,thirdId2,thirdId3,thirdId4,thirdName1,thirdName2,thirdName3,thirdName4,manufactory,measname,ybbm,sptm,isDisable,isLock thirdId1,thirdId2,thirdId3,thirdId4,thirdName1,thirdName2,thirdName3,thirdName4,manufactory,measname,ybbm,sptm,isDisable,isLock
,mainId,mainName,lockStatus,udplatCode,isAdavence,supName,price ,mainId,mainName,lockStatus,udplatCode,isAdavence,supName,price ,useNum,useMuti
) )
values values
( (
@ -579,7 +579,10 @@
#{lockStatus}, #{lockStatus},
#{udplatCode}, #{udplatCode},
#{isAdavence}, #{isAdavence},
#{supName},#{price} #{supName},
#{price},
#{useNum},
#{useMuti}
) )
</insert> </insert>
@ -591,7 +594,7 @@
(id, (id,
thirdId,thirdName,uuid,isUseDy,updateTime,modifyTime, thirdId,thirdName,uuid,isUseDy,updateTime,modifyTime,
thirdId1,thirdId2,thirdId3,thirdId4,thirdName1,thirdName2,thirdName3,thirdName4,manufactory,measname,ybbm,sptm,isDisable,isLock thirdId1,thirdId2,thirdId3,thirdId4,thirdName1,thirdName2,thirdName3,thirdName4,manufactory,measname,ybbm,sptm,isDisable,isLock
,mainId,mainName,lockStatus,udplatCode,isAdavence,supName,price,modifyTime ,mainId,mainName,lockStatus,udplatCode,isAdavence,supName,price,modifyTime,useNum,useMuti
) )
values values
( (
@ -622,7 +625,10 @@
#{udplatCode}, #{udplatCode},
#{isAdavence}, #{isAdavence},
#{supName}, #{supName},
#{price},#{modifyTime} #{price},
#{modifyTime},
#{useNum},
#{useMuti}
) )
</insert> </insert>
@ -728,6 +734,8 @@
<if test="price != null"> <if test="price != null">
price=#{price}, price=#{price},
</if> </if>
<if test="useNum != null">useNum=#{useNum},</if>
<if test="useMuti != null">useMuti=#{useMuti}</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}
</update> </update>
@ -748,9 +756,10 @@
</select> </select>
<insert id="importUdiRelevance" parameterType="java.util.List"> <insert id="importUdiRelevance" parameterType="java.util.List">
replace into basic_udirel (id, thirdId, thirdName, uuid, isUseDy, updateTime, modifyTime, thirdId1, thirdId2, thirdId3, replace into basic_udirel (id, thirdId, thirdName, uuid, isUseDy, updateTime, modifyTime, thirdId1, thirdId2,
thirdId3,
thirdId4, thirdName1, thirdName2, thirdName3, thirdName4, ybbm, sptm, manufactory, thirdId4, thirdName1, thirdName2, thirdName3, thirdName4, ybbm, sptm, manufactory,
measname, isDisable, mainId, mainName, udplatCode,supName,price,modifyTime) measname, isDisable, mainId, mainName, udplatCode,supName,price,modifyTime,useNum,useMuti)
values values
<foreach collection="udiRelevanceEntities" item="item" index="index" separator=","> <foreach collection="udiRelevanceEntities" item="item" index="index" separator=",">
(#{item.id}, (#{item.id},
@ -775,7 +784,7 @@
#{item.isDisable}, #{item.isDisable},
#{item.mainId}, #{item.mainId},
#{item.mainName}, #{item.mainName},
#{item.udplatCode}, #{item.supName}, #{item.price}, #{modifyTime}) #{item.udplatCode}, #{item.supName}, #{item.price}, #{modifyTime},#{item.useNum},#{item.useMuti})
</foreach> </foreach>
</insert> </insert>
</mapper> </mapper>

@ -95,7 +95,7 @@
<update id="updateByStatus" parameterType="Map"> <update id="updateByStatus" parameterType="Map">
UPDATE stock_order UPDATE stock_order
SET `status` = #{status} SET `status` = #{status},`updateTime` = #{updateTime}
where id = #{orderId} where id = #{orderId}
</update> </update>
<update id="updateSupplementNoByBillNo"> <update id="updateSupplementNoByBillNo">
@ -218,7 +218,7 @@
</if> </if>
</where> </where>
group by stock_order.id group by stock_order.id
ORDER BY id DESC ORDER BY updateTime DESC
</select> </select>

@ -6,7 +6,7 @@
<select id="findCompany" <select id="findCompany"
resultType="com.glxp.api.admin.entity.info.CompanyEntity"> resultType="com.glxp.api.admin.entity.info.CompanyEntity">
SELECT * FROM auth_company SELECT * FROM auth_company limit 1
</select> </select>
<update id="modifyCompany" parameterType="com.glxp.api.admin.entity.info.CompanyEntity"> <update id="modifyCompany" parameterType="com.glxp.api.admin.entity.info.CompanyEntity">

@ -54,7 +54,8 @@
<select id="filterGroupInvSub" parameterType="com.glxp.api.admin.req.inventory.FilterInvWarehouseRequest" <select id="filterGroupInvSub" parameterType="com.glxp.api.admin.req.inventory.FilterInvWarehouseRequest"
resultType="com.glxp.api.admin.entity.inventory.InvSubWarehouseEntity"> resultType="com.glxp.api.admin.entity.inventory.InvSubWarehouseEntity">
select inv_warehouse_sub.*, inv_warehouse.`name` AS warehouseName from inv_warehouse_sub INNER JOIN inv_warehouse select inv_warehouse_sub.*, inv_warehouse.`name` AS warehouseName from inv_warehouse_sub INNER JOIN
inv_warehouse
on inv_warehouse_sub.parentId = inv_warehouse.code on inv_warehouse_sub.parentId = inv_warehouse.code
<if test="userId != '' and userId != null"> <if test="userId != '' and userId != null">
INNER JOIN inv_warehouse_user on inv_warehouse_sub.code = inv_warehouse_user.code INNER JOIN inv_warehouse_user on inv_warehouse_sub.code = inv_warehouse_user.code
@ -73,7 +74,7 @@
AND inv_warehouse.spUse = #{spUse} AND inv_warehouse.spUse = #{spUse}
</if> </if>
<if test="superiorCode != '' and superiorCode != null"> <if test="superiorCode != '' and superiorCode != null">
AND (inv_warehouse.code = #{subordinateCode} AND (inv_warehouse.code = #{superiorPcode}
OR inv_warehouse.pcode = #{superiorCode}) OR inv_warehouse.pcode = #{superiorCode})
</if> </if>
<if test="subordinateCode != '' and subordinateCode != null"> <if test="subordinateCode != '' and subordinateCode != null">
@ -217,7 +218,8 @@
<select id="filterGroupInvSubDown" parameterType="com.glxp.api.admin.req.inventory.FilterInvWarehouseRequest" <select id="filterGroupInvSubDown" parameterType="com.glxp.api.admin.req.inventory.FilterInvWarehouseRequest"
resultType="com.glxp.api.admin.entity.inventory.InvSubWarehouseEntity"> resultType="com.glxp.api.admin.entity.inventory.InvSubWarehouseEntity">
select inv_warehouse_sub.*, inv_warehouse.`name` AS warehouseName from inv_warehouse_sub INNER JOIN inv_warehouse select inv_warehouse_sub.*, inv_warehouse.`name` AS warehouseName from inv_warehouse_sub INNER JOIN
inv_warehouse
on inv_warehouse_sub.parentId = inv_warehouse.code on inv_warehouse_sub.parentId = inv_warehouse.code
<where> <where>
<if test="subordinateCode != '' and subordinateCode != null"> <if test="subordinateCode != '' and subordinateCode != null">

@ -57,7 +57,7 @@
INTO pur_apply INTO pur_apply
( (
billNo,billDate,status,billType,remark,locStorageCode,invWarehouseCode, billNo,billDate,status,billType,remark,locStorageCode,invWarehouseCode,
deptCode,createBy,createTime,auditBy,auditTime,updateTime,auditRemark,targetInv,targetSubInv,targetBillType deptCode,createBy,createTime,auditBy,auditTime,updateTime,auditRemark,targetInv,targetSubInv,targetBillType,planBillNo
) )
values ( values (
#{billNo}, #{billNo},
@ -75,7 +75,9 @@
#{updateTime}, #{updateTime},
#{auditRemark}, #{auditRemark},
#{targetInv}, #{targetInv},
#{targetSubInv},#{targetBillType} #{targetSubInv},
#{targetBillType},
#{planBillNo}
) )
</insert> </insert>
@ -114,7 +116,7 @@
<if test="targetInv != null">targetInv=#{targetInv},</if> <if test="targetInv != null">targetInv=#{targetInv},</if>
<if test="targetSubInv != null">targetSubInv=#{targetSubInv},</if> <if test="targetSubInv != null">targetSubInv=#{targetSubInv},</if>
<if test="targetBillType != null">targetBillType=#{targetBillType},</if> <if test="targetBillType != null">targetBillType=#{targetBillType},</if>
<if test="planBillNo != null">planBillNo=#{planBillNo},</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}
</update> </update>

@ -25,10 +25,11 @@
resultType="com.glxp.api.admin.entity.business.StockOrderDetailEntity"> resultType="com.glxp.api.admin.entity.business.StockOrderDetailEntity">
select select
pur_apply_detail.*, pur_apply_detail.*,
basic_products.ggxh spec,basic_udirel.measname,basic_udirel.manufactory basic_products.ggxh spec,basic_udirel.measname,basic_udirel.manufactory,basic_products.ylqxzcrbarmc,basic_corp.`name` supName
FROM pur_apply_detail FROM pur_apply_detail
INNER JOIN basic_udirel on pur_apply_detail.productId = basic_udirel.id INNER JOIN basic_udirel on pur_apply_detail.productId = basic_udirel.id
INNER JOIN basic_products on basic_udirel.uuid = basic_products.uuid INNER JOIN basic_products on basic_udirel.uuid = basic_products.uuid
inner join basic_corp on pur_apply_detail.supId =basic_corp.erpId
<where> <where>
<if test="orderIdFk != '' and orderIdFk != null"> <if test="orderIdFk != '' and orderIdFk != null">
AND orderIdFk = #{orderIdFk} AND orderIdFk = #{orderIdFk}
@ -49,14 +50,14 @@
replace replace
INTO pur_apply_detail INTO pur_apply_detail
( (
orderIdFk,productId,productName,`count`,supId orderIdFk,productId,productName,`count`,supId,zczbhhzbapzbh
) )
values ( values (
#{orderIdFk}, #{orderIdFk},
#{productId}, #{productId},
#{productName}, #{productName},
#{count}, #{count},
#{supId} #{supId},#{zczbhhzbapzbh}
) )
</insert> </insert>
@ -90,6 +91,7 @@
<if test="productName != null">productName=#{productName},</if> <if test="productName != null">productName=#{productName},</if>
<if test="count != null">`count`=#{count},</if> <if test="count != null">`count`=#{count},</if>
<if test="supId != null">supId=#{supId},</if> <if test="supId != null">supId=#{supId},</if>
<if test="zczbhhzbapzbh != null">zczbhhzbapzbh=#{zczbhhzbapzbh},</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}
</update> </update>

@ -9,10 +9,10 @@
select pur_plan.* , select pur_plan.* ,
cb.employeeName createByName,ab.employeeName auditByName, cb.employeeName createByName,ab.employeeName auditByName,
inv_warehouse.name invName,inv_warehouse_sub.`name` subInvName FROM pur_plan inv_warehouse.name invName,inv_warehouse_sub.`name` subInvName FROM pur_plan
INNER JOIN auth_user cb on pur_plan.createBy = cb.id left JOIN auth_user cb on pur_plan.createBy = cb.id
LEFT JOIN auth_user ab on pur_plan.auditBy = ab.id LEFT JOIN auth_user ab on pur_plan.auditBy = ab.id
INNER JOIN inv_warehouse on pur_plan.locStorageCode = inv_warehouse.`code` LEFT JOIN inv_warehouse on pur_plan.locStorageCode = inv_warehouse.`code`
INNER JOIN inv_warehouse_sub on inv_warehouse_sub.code = pur_plan.invWarehouseCode LEFT JOIN inv_warehouse_sub on inv_warehouse_sub.code = pur_plan.invWarehouseCode
<where> <where>
<if test="billNo != '' and billNo != null"> <if test="billNo != '' and billNo != null">
AND billNo = #{billNo} AND billNo = #{billNo}
@ -59,6 +59,7 @@
( (
billNo,billDate,status,billType,remark,locStorageCode,invWarehouseCode, billNo,billDate,status,billType,remark,locStorageCode,invWarehouseCode,
deptCode,createBy,createTime,auditBy,auditTime,updateTime,auditRemark deptCode,createBy,createTime,auditBy,auditTime,updateTime,auditRemark
,applyCreateBy,applyAuditBy,applyRemark,applyBillNo,stockOrderNo
) )
values ( values (
#{billNo}, #{billNo},
@ -74,7 +75,12 @@
#{auditBy}, #{auditBy},
#{auditTime}, #{auditTime},
#{updateTime}, #{updateTime},
#{auditRemark} #{auditRemark},
#{applyCreateBy},
#{applyAuditBy},
#{applyRemark},
#{applyBillNo},
#{stockOrderNo}
) )
</insert> </insert>
@ -110,6 +116,11 @@
<if test="createTime != null">createTime=#{createTime},</if> <if test="createTime != null">createTime=#{createTime},</if>
<if test="updateTime != null">updateTime=#{updateTime},</if> <if test="updateTime != null">updateTime=#{updateTime},</if>
<if test="auditRemark != null">auditRemark=#{auditRemark},</if> <if test="auditRemark != null">auditRemark=#{auditRemark},</if>
<if test="applyCreateBy != null">applyCreateBy=#{applyCreateBy},</if>
<if test="applyAuditBy != null">applyAuditBy=#{applyAuditBy},</if>
<if test="applyRemark != null">applyRemark=#{applyRemark},</if>
<if test="applyBillNo != null">applyBillNo=#{applyBillNo},</if>
<if test="stockOrderNo != null">stockOrderNo=#{stockOrderNo},</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}
</update> </update>

@ -25,10 +25,12 @@
resultType="com.glxp.api.admin.entity.business.StockOrderDetailEntity"> resultType="com.glxp.api.admin.entity.business.StockOrderDetailEntity">
select select
pur_plan_detail.*, pur_plan_detail.*,
basic_products.ggxh spec,basic_udirel.measname,basic_udirel.manufactory basic_products.ggxh spec,basic_udirel.measname,basic_udirel.manufactory,basic_products.ylqxzcrbarmc
,basic_corp.`name` supName
FROM pur_plan_detail FROM pur_plan_detail
INNER JOIN basic_udirel on pur_plan_detail.productId = basic_udirel.id INNER JOIN basic_udirel on pur_plan_detail.productId = basic_udirel.id
INNER JOIN basic_products on basic_udirel.uuid = basic_products.uuid INNER JOIN basic_products on basic_udirel.uuid = basic_products.uuid
inner join basic_corp on pur_plan_detail.supId =basic_corp.erpId
<where> <where>
<if test="orderIdFk != '' and orderIdFk != null"> <if test="orderIdFk != '' and orderIdFk != null">
AND orderIdFk = #{orderIdFk} AND orderIdFk = #{orderIdFk}
@ -50,14 +52,14 @@
replace replace
INTO pur_plan_detail INTO pur_plan_detail
( (
orderIdFk,productId,productName,`count`,supId orderIdFk,productId,productName,`count`,supId,zczbhhzbapzbh
) )
values ( values (
#{orderIdFk}, #{orderIdFk},
#{productId}, #{productId},
#{productName}, #{productName},
#{count}, #{count},
#{supId} #{supId},#{zczbhhzbapzbh}
) )
</insert> </insert>
@ -90,6 +92,7 @@
<if test="productName != null">productName=#{productName},</if> <if test="productName != null">productName=#{productName},</if>
<if test="count != null">`count`=#{count},</if> <if test="count != null">`count`=#{count},</if>
<if test="supId != null">supId=#{supId},</if> <if test="supId != null">supId=#{supId},</if>
<if test="zczbhhzbapzbh != null">zczbhhzbapzbh=#{zczbhhzbapzbh},</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}
</update> </update>

Loading…
Cancel
Save