单据流转设置改动,采购管理优化,bug处理

feature-order-fix
anthonyywj2 2 years ago
parent 3b8e7b1972
commit 78eede1aef

@ -1,16 +1,22 @@
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.constant.ConstantStatus;
import com.glxp.api.admin.constant.ConstantType;
import com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity;
import com.glxp.api.admin.entity.basic.BussinessLocalTypeEntity;
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.receipt.BussinessTypeFilterRequest;
import com.glxp.api.admin.res.PageSimpleResponse;
import com.glxp.api.admin.service.basic.BussinessChangeTypeService;
import com.glxp.api.admin.service.basic.BussinessLocalTypeService;
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.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
@ -34,6 +40,8 @@ public class BussinessChangeTypeController {
private BussinessTypeService bussinessTypeService;
@Resource
private BussinessLocalTypeService bussinessLocalTypeService;
@Resource
private InvSubWarehouseService invSubWarehouseService;
@AuthRuleAnnotation("")
@GetMapping("/spms/bussinessChangeType/filter")
@ -49,6 +57,7 @@ public class BussinessChangeTypeController {
}
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(bussinessLocalTypeEntity.getAction());
bussinessTypeEntities = bussinessChangeTypeService.findByAction(bussinessTypeFilterRequest.getAction());
if (bussinessTypeEntities == null || bussinessTypeEntities.size() == 0) {
//创建对应流转单据
if (bussinessTypeFilterRequest.getType() != null
@ -56,13 +65,30 @@ public class BussinessChangeTypeController {
) {
if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType()) {
BussinessChangeTypeEntity bussinessChangeTypeEntity1 = new BussinessChangeTypeEntity();
// bussinessChangeTypeEntity1.setIntro("出库自动补\"供应商入库单\"");
bussinessChangeTypeEntity1.setChangeType(ConstantStatus.ORDER_CHANGE_NORMAL_IN);
bussinessChangeTypeEntity1.setIndex(1);
bussinessChangeTypeEntity1.setAction(bussinessTypeFilterRequest.getAction());
bussinessChangeTypeEntity1.setBeforeTime(1);
bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity1);
// BussinessChangeTypeEntity bussinessChangeTypeEntity2 = new BussinessChangeTypeEntity();
// bussinessChangeTypeEntity2.setIntro("出库自动补\"调拨入库单\"");
// bussinessChangeTypeEntity2.setChangeType(ConstantStatus.ORDER_CHANGE_INNOR_NORMAL_IN);
// bussinessChangeTypeEntity2.setIndex(1);
// bussinessChangeTypeEntity1.setBeforeTime(1);
// bussinessChangeTypeEntity2.setAction(bussinessTypeFilterRequest.getAction());
// bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity2);
// BussinessChangeTypeEntity bussinessChangeTypeEntity3 = new BussinessChangeTypeEntity();
// bussinessChangeTypeEntity3.setIntro("出库自动补\"寄售转入单\"");
// bussinessChangeTypeEntity3.setChangeType(ConstantStatus.ORDER_CHANGE_NORMAL_ADV_IN);
// bussinessChangeTypeEntity3.setIndex(2);
// bussinessChangeTypeEntity1.setBeforeTime(1);
// bussinessChangeTypeEntity3.setAction(bussinessTypeFilterRequest.getAction());
// bussinessChangeTypeService.insertBusChangeTypee(bussinessChangeTypeEntity3);
// bussinessTypeEntities = bussinessChangeTypeService.findByAction(bussinessTypeFilterRequest.getAction());
} else if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && bussinessTypeEntity.isAdvanceType()) {
BussinessChangeTypeEntity bussinessChangeTypeEntity1 = new BussinessChangeTypeEntity();
// bussinessChangeTypeEntity1.setIntro("出库自动补\"寄售入库单\"");
bussinessChangeTypeEntity1.setChangeType(ConstantStatus.ORDER_CHANGE_ADVANCE_IN);
bussinessChangeTypeEntity1.setIndex(1);
bussinessChangeTypeEntity1.setBeforeTime(1);
@ -75,6 +101,24 @@ public class BussinessChangeTypeController {
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("")
@PostMapping("/spms/bussinessChangeType/remove")
public BaseResponse removeBussinessType(@RequestBody BussinessChangeTypeEntity deleteRequest, BindingResult bindingResult) {
@ -83,7 +127,10 @@ public class BussinessChangeTypeController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
String action = deleteRequest.getScAction();
bussinessChangeTypeService.deleteByAction(action);
if (StrUtil.isEmpty(action)) {
bussinessChangeTypeService.deleteById(deleteRequest.getId() + "");
} else
bussinessChangeTypeService.deleteByAction(action);
return ResultVOUtils.success("删除成功");
}
@ -113,8 +160,6 @@ public class BussinessChangeTypeController {
BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findByAction(bussinessTypeEntity.getAction());
bussinessLocalTypeEntity.setUpdateTime(new Date());
bussinessLocalTypeService.updateBusLocalType(bussinessLocalTypeEntity);
} else {
ResultVOUtils.error(999, "参数错误");
}
@ -130,6 +175,14 @@ public class BussinessChangeTypeController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
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);
} else {
ResultVOUtils.error(999, "参数错误");

@ -327,6 +327,9 @@ public class UdiRelevanceController {
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("更新成功");

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

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

@ -150,7 +150,7 @@ public class PurApplyController {
*/
@RepeatSubmit()
@PostMapping("/purchase/apply/auditOrder")
public BaseResponse auditOrder(@RequestBody PurApplyRequest purApplyRequest) {
public BaseResponse auditOrder(@RequestBody PurApplyResponse purApplyRequest) {
Integer userId = customerService.getUserId();
@ -162,19 +162,27 @@ public class PurApplyController {
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();
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.JH_ORDER, "yyyyMMdd"));
purPlanEntity.setBillNo(billNo);
purPlanEntity.setBillDate(new Date());
purPlanEntity.setStatus(ConstantStatus.APPLY_UN_AUDIT);
purPlanEntity.setLocStorageCode(purApplyEntity.getTargetInv());
purPlanEntity.setInvWarehouseCode(purApplyEntity.getTargetSubInv());
purPlanEntity.setBillType(purApplyEntity.getTargetBillType());
purPlanEntity.setDeptCode(purApplyEntity.getDeptCode());
purPlanEntity.setCreateBy(purApplyEntity.getAuditBy());
purPlanEntity.setStatus(ConstantStatus.APPLY_DRAFT);
// purPlanEntity.setLocStorageCode(purApplyEntity.getTargetInv());
// purPlanEntity.setInvWarehouseCode(purApplyEntity.getTargetSubInv());
purPlanEntity.setBillType("purPlan");
// purPlanEntity.setBillType(purApplyEntity.getTargetBillType());
// purPlanEntity.setDeptCode(purApplyEntity.getDeptCode());
// purPlanEntity.setCreateBy(purApplyEntity.getAuditBy());
purPlanEntity.setCreateTime(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);
List<PurApplyDetailEntity> purApplyDetailEntities = purApplyDetailService.findByOrderId(purApplyEntity.getId() + "");

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

@ -1,6 +1,7 @@
package com.glxp.api.admin.dao.basic;
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.Param;
@ -12,6 +13,7 @@ public interface BussinessChangeTypeDao {
List<BussinessChangeTypeEntity> findByAction(String action);
List<BussinessChangeTypeEntity> filterAll(BusTypeChangeFilterRequest busTypeChangeFilterRequest);
boolean updateBusChangeType(BussinessChangeTypeEntity bussinessTypeEntity);

@ -20,6 +20,20 @@ public class BussinessChangeTypeEntity {
private String defautInvName;
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() {
if (beforeTime == null)
return 0;

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

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

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

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

@ -75,4 +75,15 @@ public class PurPlanEntity {
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 int type; //1耗材领用
private int purType;
}

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

@ -93,7 +93,7 @@ public class PurApplyRequest extends ListPageRequest {
*/
private Date createTime;
private String auditRemark;
private String auditRemark;
private String targetInv;
@ -103,4 +103,6 @@ public class PurApplyRequest extends ListPageRequest {
private String startDate;
private String endDate;
private boolean audtoPlan;
}

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

@ -66,4 +66,11 @@ public class PurPlanResponse {
private String invName;
private String subInvName;
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.req.basic.BusTypeChangeFilterRequest;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -10,6 +11,10 @@ public interface BussinessChangeTypeService {
List<BussinessChangeTypeEntity> findByAction(String action);
BussinessChangeTypeEntity findOriginAction(String action);
List<BussinessChangeTypeEntity> filterAll(BusTypeChangeFilterRequest busTypeChangeFilterRequest);
BussinessChangeTypeEntity findByName(String name);
public BussinessChangeTypeEntity findFirstByAction(String action);

@ -1,7 +1,11 @@
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.entity.basic.BussinessChangeTypeEntity;
import com.glxp.api.admin.req.basic.BusTypeChangeFilterRequest;
import com.glxp.api.admin.service.basic.BussinessChangeTypeService;
import org.springframework.stereotype.Service;
@ -20,6 +24,30 @@ public class BussinessChangeTypeServiceaImpl implements BussinessChangeTypeServi
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
public BussinessChangeTypeEntity findFirstByAction(String action) {

@ -81,6 +81,8 @@ public class InvSubWarehouseServiceImpl implements InvSubWarehouseService {
@Override
public InvSubWarehouseEntity findByInvSubByCode(String code) {
if (StrUtil.isEmpty(code))
return null;
FilterInvSubWarehouseRequest filterInvSubWarehouseRequest = new FilterInvSubWarehouseRequest();
filterInvSubWarehouseRequest.setCode(code);
List<InvSubWarehouseEntity> invSubWarehouseEntities = invSubWarehouseDao.filterInvSubWarehouse(filterInvSubWarehouseRequest);
@ -195,6 +197,7 @@ public class InvSubWarehouseServiceImpl implements InvSubWarehouseService {
public InvSubWarehouseEntity filterGroupInvSubAndcode(String code) {
return invSubWarehouseDao.filterGroupInvSubAndcode(code);
}
@Override
public List<InvSubWarehouseEntity> filterGroupInvSubDown(FilterInvWarehouseRequest 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.inventory.InvProductDetailEntity;
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.req.basic.FilterUdiInfoRequest;
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.inventory.*;
import com.glxp.api.admin.util.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@ -28,6 +30,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
@Slf4j
@Service
public class InvProductsTrService {
@ -72,9 +75,17 @@ public class InvProductsTrService {
InvWarehouseService invWarehouseService;
@Resource
GennerOrderUtils gennerOrderUtils;
@Resource
InvSubWarehouseService invSubWarehouseService;
@Async
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);
if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_SUCCESS &&
@ -198,31 +209,35 @@ public class InvProductsTrService {
}
//单据流转
List<BussinessChangeTypeEntity> bussinessChangeTypeEntitys = bussinessChangeTypeService.findByAction(bussinessLocalTypeEntity.getLocalAction());
if ((bussinessChangeTypeEntitys != null && bussinessChangeTypeEntitys.size() > 0) && bussinessLocalTypeEntity.isChangeEnable()) {
if (orderEntity.isOutChangeEnable()) {//是否缺量补单
//普通出库
if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType()) {
addUseOutOrder(orderEntity, mInvProductDetailEntities, bussinessChangeTypeEntitys);
} else if (ConstantType.TYPE_PUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType())
//普通入库补单
{
BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntitys.get(0);
List<WarehouseEntity> datas = addPutOrder(orderEntity, mInvProductDetailEntities);
List<WarehouseEntity> temps = filterMapCodes(datas);
buildPreOutOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成流转单据
} else if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && bussinessTypeEntity.isAdvanceType()) {
//寄售出库补单
BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntitys.get(0);
List<WarehouseEntity> datas = addPreOutOrder(orderEntity, mInvProductDetailEntities);
List<WarehouseEntity> temps = filterMapCodes(datas);
buildPreInOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成流转单据
} else {
insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存
}
} else {
insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存
}
BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeService.findOriginAction(bussinessLocalTypeEntity.getLocalAction());
if (bussinessChangeTypeEntity != null && bussinessLocalTypeEntity.isChangeEnable()) {
addUseOutOrder(orderEntity, mInvProductDetailEntities, bussinessChangeTypeEntity);
// if (orderEntity.isOutChangeEnable()) {//是否缺量补单
// //普通出库
// if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType()) {
// addUseOutOrder(orderEntity, mInvProductDetailEntities, bussinessChangeTypeEntitys);
// } else if (ConstantType.TYPE_PUT.equals(bussinessTypeEntity.getMainAction()) && !bussinessTypeEntity.isAdvanceType())
// //普通入库补单
// {
// BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntitys.get(0);
// List<WarehouseEntity> datas = addPutOrder(orderEntity, mInvProductDetailEntities);
// List<WarehouseEntity> temps = filterMapCodes(datas);
// buildPreOutOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成流转单据
// } else if (ConstantType.TYPE_OUT.equals(bussinessTypeEntity.getMainAction()) && bussinessTypeEntity.isAdvanceType()) {
// //寄售出库补单
// BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntitys.get(0);
// List<WarehouseEntity> datas = addPreOutOrder(orderEntity, mInvProductDetailEntities);
// List<WarehouseEntity> temps = filterMapCodes(datas);
// buildPreInOrder(bussinessChangeTypeEntity, temps, orderEntity); //3.生成流转单据
// } else {
// insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存
// }
// } else {
// insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存
// }
} else {
insetInv(bussinessTypeEntity, mInvProductDetailEntities);//2.插入当前库存
@ -232,14 +247,13 @@ public class InvProductsTrService {
}
//普通出库补单-- //补采购入库,调拨入库,寄售转入
public void addUseOutOrder(OrderEntity orderEntity, List<InvProductDetailEntity> invProductDetailEntities, List<BussinessChangeTypeEntity> bussinessChangeTypeEntities) {
BussinessChangeTypeEntity bussinessChangeTypeEntity = bussinessChangeTypeEntity = bussinessChangeTypeEntities.get(0);
public void addUseOutOrder(OrderEntity orderEntity, List<InvProductDetailEntity> invProductDetailEntities, BussinessChangeTypeEntity bussinessChangeTypeEntity) {
List<WarehouseEntity> warehouseEntities = codesService.findByReceiptId(orderEntity.getId());
List<WarehouseEntity> inList = new ArrayList<>();
List<WarehouseEntity> preiInList = new ArrayList<>();
//缺量补单时是否全量补单
BussinessTypeEntity bussinessTypeEntity1 = bussinessTypeService.findBTByAction(orderEntity.getAction());
if (bussinessTypeEntity1.isSupplementAll()) {
if (bussinessChangeTypeEntity.isSupplementAll()) {
insetInv(bussinessTypeEntity1, invProductDetailEntities);//2.插入当前库存
WarehouseEntity warehouseEntity = warehouseEntities.get(0);
InvWarehouseEntity locWarehouseEntity = invWarehouseService.selectByCode(warehouseEntity.getLocStorageCode());
@ -249,10 +263,9 @@ public class InvProductsTrService {
}
} else {
if (locWarehouseEntity.getLevel() > 1) {
InvWarehouseEntity pInWarehouseEntity = invWarehouseService.selectByCode(locWarehouseEntity.getPcode());
for (WarehouseEntity tempEntity : warehouseEntities) {
tempEntity.setFromCorp(pInWarehouseEntity.getName());
tempEntity.setFromCorpId(pInWarehouseEntity.getCode());
tempEntity.setFromCorp(bussinessChangeTypeEntity.getDefaultInv());
tempEntity.setFromCorpId(bussinessChangeTypeEntity.getDefaultSubInv());
inList.add(tempEntity);
}
} else {
@ -275,7 +288,7 @@ public class InvProductsTrService {
* else>1
* {}
*/
InvWarehouseEntity locWarehouseEntity = invWarehouseService.selectByCode(warehouseEntity.getLocStorageCode());
InvWarehouseEntity locWarehouseEntity = invWarehouseService.selectByCode(bussinessChangeTypeEntity.getLocInv());
if (locWarehouseEntity.getLevel() == 1 && isAdavnce(warehouseEntity)) {//补寄售转入
//获取当前条码实际数量
int actCount = getActCount(warehouseEntity);
@ -323,24 +336,27 @@ public class InvProductsTrService {
String code = warehouseEntity.getCode();
int count = actCount * warehouseEntity.getCount();
int invCount = 0;
if (locWarehouseEntity.getLevel() > 1) {//补调拨入库
/**
*
*/
InvWarehouseEntity pInWarehouseEntity = invWarehouseService.selectByCode(locWarehouseEntity.getPcode());
warehouseEntity.setFromCorp(pInWarehouseEntity.getName());
warehouseEntity.setFromCorpId(pInWarehouseEntity.getCode());
invCount = getCountByOrder(null, warehouseEntity);
} else { //补供应商入库
if (locWarehouseEntity.getLevel() == 1 && StrUtil.isEmpty(bussinessChangeTypeEntity.getDefaultSubInv())) {
/**
*
*/
//供应商
warehouseEntity.setFromCorpId(warehouseEntity.getSupId());
BasicUnitMaintainEntity basicUnitMaintainEntity = basicUnitMaintainService.selectByErpId(warehouseEntity.getSupId());
warehouseEntity.setFromCorp(basicUnitMaintainEntity.getName());
invCount = getCountByOrder(null, warehouseEntity);
} 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) {//仓库已存在该产品
@ -648,7 +664,9 @@ public class InvProductsTrService {
} else
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()) {
List<WarehouseEntity> temps;
@ -658,8 +676,8 @@ public class InvProductsTrService {
outOrder.setSupplementNo(null);//补单需置空
outOrder.setActDate(DateUtil.getBeforeDay(outOrder.getActDate(), bussinessChangeTypeEntity.getBeforeTime()));
outOrder.setCreateTime(outOrder.getActDate());
outOrder.setAction(bussinessChangeTypeEntity.getScAction());
outOrder.setMainAction(ConstantType.TYPE_PUT);
outOrder.setAction(bussinessTypeEntity.getAction());
outOrder.setMainAction(bussinessTypeEntity.getMainAction());
outOrder.setContrastStatus(ConstantStatus.ORDER_CHECK_UN);
outOrder.setCustomerId(Constant.SYSTEM_CUSTOMER_ID);
outOrder.setErpFk(null);
@ -668,14 +686,13 @@ public class InvProductsTrService {
outOrder.setId(orderNo);
outOrder.setFromCorpId(corpName);
outOrder.setFromCorp(temps.get(0).getFromCorp());
// BussinessTypeEntity originBT = bussinessTypeService.findBTByAction(orderEntity.getAction());
if (StrUtil.isNotEmpty(bussinessChangeTypeEntity.getDefaultSubInv())) {
outOrder.setFromSubInvCode(bussinessChangeTypeEntity.getDefaultSubInv());
}
outOrder.setCorpOrderId(CustomUtil.getId() + "x");
outOrder.setLocStorageCode(orderEntity.getLocStorageCode());
outOrder.setInvStorageCode(orderEntity.getLocStorageCode());
outOrder.setLocStorageCode(bussinessChangeTypeEntity.getLocInv());
outOrder.setInvStorageCode(bussinessChangeTypeEntity.getLocInv());
outOrder.setInvWarehouseCode(bussinessChangeTypeEntity.getLocSubInv());
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("additional_auto_submit");
if ("1".equals(systemParamConfigEntity.getParamValue())) {
outOrder.setStatus(ConstantStatus.ORDER_STATUS_PROCESS);
@ -700,8 +717,8 @@ public class InvProductsTrService {
warehouseEntity.setFromCorpId(outOrder.getFromCorpId());
warehouseEntity.setLocStorageCode(outOrder.getLocStorageCode());
warehouseEntity.setInvWarehouseCode(outOrder.getInvWarehouseCode());
warehouseEntity.setAction(bussinessChangeTypeEntity.getScAction());
warehouseEntity.setMainAction(ConstantType.TYPE_PUT);
warehouseEntity.setAction(outOrder.getAction());
warehouseEntity.setMainAction(outOrder.getMainAction());
}
codesTempService.insertCodesTemp(temps);
}

@ -5,7 +5,10 @@
<select id="findByAction" parameterType="Map"
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
LEFT JOIN basic_bussiness_type
on basic_bustype_pre.scAction = basic_bussiness_type.action
@ -15,16 +18,41 @@
</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"
parameterType="com.glxp.api.admin.entity.basic.BussinessChangeTypeEntity">
insert
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},
#{scAction},
#{index},
#{remark},
#{beforeTime}, #{intro}, #{changeType},#{defaultInv},#{defaultSubInv})
#{beforeTime}, #{intro}, #{changeType}, #{defaultInv}, #{defaultSubInv}
, #{locInv}, #{locSubInv}, #{originAction}, #{changeEnable}, #{supplementAll})
</insert>
@ -40,6 +68,11 @@
<if test="changeType != null">changeType = #{changeType},</if>
<if test="defaultInv != null">defaultInv = #{defaultInv},</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>
WHERE id = #{id}

@ -54,7 +54,8 @@
<select id="filterGroupInvSub" parameterType="com.glxp.api.admin.req.inventory.FilterInvWarehouseRequest"
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
<if test="userId != '' and userId != null">
INNER JOIN inv_warehouse_user on inv_warehouse_sub.code = inv_warehouse_user.code
@ -73,8 +74,8 @@
AND inv_warehouse.spUse = #{spUse}
</if>
<if test="superiorCode != '' and superiorCode != null">
AND (inv_warehouse.code = #{subordinateCode}
OR inv_warehouse.pcode = #{superiorCode})
AND (inv_warehouse.code = #{superiorPcode}
OR inv_warehouse.pcode = #{superiorCode})
</if>
<if test="subordinateCode != '' and subordinateCode != null">
AND inv_warehouse.pcode = #{subordinateCode}
@ -192,7 +193,7 @@
<select id="filterInvSubWarehouseResponse"
resultType="com.glxp.api.admin.res.inventory.InvSubWarehouseResponse">
select a.id, a.code, a.name, a.parentId, a.remark, a.defaultInv, a.thirdId, a.thirdId1, a.thirdId2,
select a.id, a.code, a.name, a.parentId, a.remark, a.defaultInv, a.thirdId, a.thirdId1, a.thirdId2,
a.thirdId3, a.thirdId4, b.name as parentName
FROM inv_warehouse_sub a
left join inv_warehouse b on a.parentId = b.code
@ -217,7 +218,8 @@
<select id="filterGroupInvSubDown" parameterType="com.glxp.api.admin.req.inventory.FilterInvWarehouseRequest"
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
<where>
<if test="subordinateCode != '' and subordinateCode != null">

@ -57,7 +57,7 @@
INTO pur_apply
(
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 (
#{billNo},
@ -75,7 +75,9 @@
#{updateTime},
#{auditRemark},
#{targetInv},
#{targetSubInv},#{targetBillType}
#{targetSubInv},
#{targetBillType},
#{planBillNo}
)
</insert>
@ -114,7 +116,7 @@
<if test="targetInv != null">targetInv=#{targetInv},</if>
<if test="targetSubInv != null">targetSubInv=#{targetSubInv},</if>
<if test="targetBillType != null">targetBillType=#{targetBillType},</if>
<if test="planBillNo != null">planBillNo=#{planBillNo},</if>
</trim>
WHERE id = #{id}
</update>

@ -25,10 +25,11 @@
resultType="com.glxp.api.admin.entity.business.StockOrderDetailEntity">
select
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
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_corp on pur_apply_detail.supId =basic_corp.erpId
<where>
<if test="orderIdFk != '' and orderIdFk != null">
AND orderIdFk = #{orderIdFk}
@ -49,14 +50,14 @@
replace
INTO pur_apply_detail
(
orderIdFk,productId,productName,`count`,supId
orderIdFk,productId,productName,`count`,supId,zczbhhzbapzbh
)
values (
#{orderIdFk},
#{productId},
#{productName},
#{count},
#{supId}
#{supId},#{zczbhhzbapzbh}
)
</insert>
@ -90,6 +91,7 @@
<if test="productName != null">productName=#{productName},</if>
<if test="count != null">`count`=#{count},</if>
<if test="supId != null">supId=#{supId},</if>
<if test="zczbhhzbapzbh != null">zczbhhzbapzbh=#{zczbhhzbapzbh},</if>
</trim>
WHERE id = #{id}
</update>

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

@ -25,10 +25,12 @@
resultType="com.glxp.api.admin.entity.business.StockOrderDetailEntity">
select
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
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_corp on pur_plan_detail.supId =basic_corp.erpId
<where>
<if test="orderIdFk != '' and orderIdFk != null">
AND orderIdFk = #{orderIdFk}
@ -50,14 +52,14 @@
replace
INTO pur_plan_detail
(
orderIdFk,productId,productName,`count`,supId
orderIdFk,productId,productName,`count`,supId,zczbhhzbapzbh
)
values (
#{orderIdFk},
#{productId},
#{productName},
#{count},
#{supId}
#{supId},#{zczbhhzbapzbh}
)
</insert>
@ -90,6 +92,7 @@
<if test="productName != null">productName=#{productName},</if>
<if test="count != null">`count`=#{count},</if>
<if test="supId != null">supId=#{supId},</if>
<if test="zczbhhzbapzbh != null">zczbhhzbapzbh=#{zczbhhzbapzbh},</if>
</trim>
WHERE id = #{id}
</update>

Loading…
Cancel
Save