价格相关修改,新增库存定量设置
parent
d9d4ca1771
commit
1c202156b4
@ -0,0 +1,148 @@
|
|||||||
|
package com.glxp.api.controller.inv;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.glxp.api.annotation.Log;
|
||||||
|
import com.glxp.api.annotation.RepeatSubmit;
|
||||||
|
import com.glxp.api.common.res.BaseResponse;
|
||||||
|
import com.glxp.api.common.util.ResultVOUtils;
|
||||||
|
import com.glxp.api.constant.BusinessType;
|
||||||
|
import com.glxp.api.controller.BaseController;
|
||||||
|
import com.glxp.api.entity.inv.InvProductRationEntity;
|
||||||
|
import com.glxp.api.req.inv.InvAddRationRequest;
|
||||||
|
import com.glxp.api.req.inv.InvProductRationRequest;
|
||||||
|
import com.glxp.api.req.system.DeleteRequest;
|
||||||
|
import com.glxp.api.res.inv.InvProductRationResponse;
|
||||||
|
import com.glxp.api.service.inv.InvProductRationService;
|
||||||
|
import com.glxp.api.service.inv.impl.InvProductService;
|
||||||
|
import com.glxp.api.util.IntUtil;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
@RestController
|
||||||
|
public class InvProductRationController extends BaseController {
|
||||||
|
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private InvProductRationService invProductRationService;
|
||||||
|
@Resource
|
||||||
|
InvProductService invProductService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询定量管理设置
|
||||||
|
*
|
||||||
|
* @param invProductRationRequest
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@GetMapping("/udiwms/inv/project/ration/filter")
|
||||||
|
@Log(title = "定量管理设置", businessType = BusinessType.INSERT)
|
||||||
|
public BaseResponse filterList(InvProductRationRequest invProductRationRequest) {
|
||||||
|
List<InvProductRationResponse> list = invProductRationService.filterList(invProductRationRequest);
|
||||||
|
list.stream().forEach(item ->
|
||||||
|
item.setInvCount(IntUtil.value(invProductService.selectExitCount(item.getCurInvCode(), item.getSupId(), item.getRelId())))
|
||||||
|
);
|
||||||
|
PageInfo<InvProductRationResponse> pageInfo = new PageInfo<>(list);
|
||||||
|
return ResultVOUtils.page(pageInfo);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增定量管理设置
|
||||||
|
*/
|
||||||
|
@RepeatSubmit()
|
||||||
|
@PostMapping("udiwms/inv/project/ration/add")
|
||||||
|
@Log(title = "定量管理设置", businessType = BusinessType.INSERT)
|
||||||
|
public BaseResponse add(@RequestBody InvAddRationRequest invAddRationRequest) {
|
||||||
|
String user = getUserId() + "";
|
||||||
|
if (invAddRationRequest.getInvProductRationEntity() != null) {
|
||||||
|
InvProductRationEntity invProductRationEntity = invAddRationRequest.getInvProductRationEntity();
|
||||||
|
invProductRationEntity.setCreateUser(user);
|
||||||
|
invProductRationEntity.setCreateTime(new Date());
|
||||||
|
invProductRationEntity.setUpdateUser(user);
|
||||||
|
invProductRationEntity.setUpdateTime(new Date());
|
||||||
|
invProductRationService.save(invProductRationEntity);
|
||||||
|
}
|
||||||
|
|
||||||
|
List<InvProductRationEntity> rationEntities = invAddRationRequest.getRationEntities();
|
||||||
|
if (CollUtil.isNotEmpty(rationEntities)) {
|
||||||
|
for (InvProductRationEntity rationEntity : rationEntities) {
|
||||||
|
rationEntity.setCreateUser(user);
|
||||||
|
rationEntity.setCreateTime(new Date());
|
||||||
|
rationEntity.setUpdateUser(user);
|
||||||
|
rationEntity.setUpdateTime(new Date());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
invProductRationService.saveBatch(rationEntities);
|
||||||
|
return ResultVOUtils.success("新增成功!");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改定量管理设置
|
||||||
|
*/
|
||||||
|
@RepeatSubmit()
|
||||||
|
@PostMapping("udiwms/inv/project/ration/edit")
|
||||||
|
@Log(title = "定量管理设置", businessType = BusinessType.UPDATE)
|
||||||
|
public BaseResponse edit(@RequestBody InvProductRationEntity invProductRationEntity) {
|
||||||
|
|
||||||
|
if (StrUtil.isNotEmpty(invProductRationEntity.getBusType())) {
|
||||||
|
switch (invProductRationEntity.getBusType()) {
|
||||||
|
case "HCLY":
|
||||||
|
invProductRationEntity.setLyInvCode(invProductRationEntity.getBusInvCode());
|
||||||
|
break;
|
||||||
|
case "CPSG":
|
||||||
|
invProductRationEntity.setSgInvCode(invProductRationEntity.getBusInvCode());
|
||||||
|
break;
|
||||||
|
case "CGJH":
|
||||||
|
invProductRationEntity.setJhInvCode(invProductRationEntity.getBusInvCode());
|
||||||
|
break;
|
||||||
|
case "CGDD":
|
||||||
|
invProductRationEntity.setCgInvCode(invProductRationEntity.getBusInvCode());
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
invProductRationService.updateById(invProductRationEntity);
|
||||||
|
return ResultVOUtils.success("修改成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除定量管理设置
|
||||||
|
*/
|
||||||
|
@PostMapping("udiwms/inv/project/ration/remove")
|
||||||
|
@Log(title = "定量管理设置", businessType = BusinessType.DELETE)
|
||||||
|
public BaseResponse remove(@NotEmpty(message = "主键不能为空")
|
||||||
|
@RequestBody DeleteRequest deleteRequest) {
|
||||||
|
invProductRationService.removeById(deleteRequest.getId());
|
||||||
|
return ResultVOUtils.success("删除成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改定量管理设置
|
||||||
|
*/
|
||||||
|
@RepeatSubmit()
|
||||||
|
@PostMapping("udiwms/inv/project/ration/genOrder")
|
||||||
|
@Log(title = "定量管理设置", businessType = BusinessType.UPDATE)
|
||||||
|
public BaseResponse genOrder(@RequestBody InvAddRationRequest invAddRationRequest) {
|
||||||
|
|
||||||
|
if (CollUtil.isNotEmpty(invAddRationRequest.getRationEntities())) {
|
||||||
|
invProductRationService.genOrder(invAddRationRequest.getRationEntities());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return ResultVOUtils.success("修改成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,15 @@
|
|||||||
|
package com.glxp.api.dao.inv;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.glxp.api.entity.inv.InvProductRationEntity;
|
||||||
|
import com.glxp.api.req.inv.InvProductRationRequest;
|
||||||
|
import com.glxp.api.res.inv.InvProductRationResponse;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Mapper
|
||||||
|
public interface InvProductRationMapper extends BaseMapper<InvProductRationEntity> {
|
||||||
|
|
||||||
|
List<InvProductRationResponse> filterList(InvProductRationRequest invProductRationRequest);
|
||||||
|
}
|
@ -0,0 +1,16 @@
|
|||||||
|
package com.glxp.api.req.inv;
|
||||||
|
|
||||||
|
import com.glxp.api.entity.inv.InvProductRationEntity;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class InvAddRationRequest {
|
||||||
|
|
||||||
|
|
||||||
|
private List<InvProductRationEntity> rationEntities;
|
||||||
|
|
||||||
|
InvProductRationEntity invProductRationEntity;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,17 @@
|
|||||||
|
package com.glxp.api.req.inv;
|
||||||
|
|
||||||
|
import com.glxp.api.util.page.ListPageRequest;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class InvProductRationRequest extends ListPageRequest {
|
||||||
|
|
||||||
|
private String curInvCode;
|
||||||
|
private String cpmctymc;
|
||||||
|
private String nameCode;
|
||||||
|
private Long relId;
|
||||||
|
private String ggxh;
|
||||||
|
private String ylqxzcrbarmc;
|
||||||
|
private String zczbhhzbapzbh;
|
||||||
|
private String supId;
|
||||||
|
}
|
@ -1,28 +0,0 @@
|
|||||||
package com.glxp.api.service.inout;
|
|
||||||
|
|
||||||
import com.glxp.api.entity.basic.BasicProductsEntity;
|
|
||||||
import com.glxp.api.entity.inout.PurReceiveEntity;
|
|
||||||
import com.glxp.api.req.inout.FilterReceiveRequest;
|
|
||||||
import com.glxp.api.res.inout.ReceiveResponse;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public interface ReceiveService {
|
|
||||||
|
|
||||||
PurReceiveEntity selectById(Long id);
|
|
||||||
|
|
||||||
int insertOrder(PurReceiveEntity purReceiveEntity);
|
|
||||||
|
|
||||||
int updateOrder(PurReceiveEntity purReceiveEntity);
|
|
||||||
|
|
||||||
List<ReceiveResponse> filterList(FilterReceiveRequest filterReceiveRequest);
|
|
||||||
|
|
||||||
boolean delReceive(String orderIdFk);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -1,27 +0,0 @@
|
|||||||
package com.glxp.api.service.inout;
|
|
||||||
|
|
||||||
import com.glxp.api.entity.basic.BasicProductsEntity;
|
|
||||||
import com.glxp.api.entity.inout.PurReceiveDetailEntity;
|
|
||||||
import com.glxp.api.req.inout.FilterReceiveDetailRequest;
|
|
||||||
import com.glxp.api.req.inout.FilterReceiveRequest;
|
|
||||||
import com.glxp.api.req.inout.UpdateReceiveDetailRequest;
|
|
||||||
import com.glxp.api.res.inout.ReceiveDetailResponse;
|
|
||||||
import com.glxp.api.res.inout.ReceiveResponse;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface ReceivedetailService {
|
|
||||||
|
|
||||||
|
|
||||||
List<PurReceiveDetailEntity> selectByOrderId(String orderId);
|
|
||||||
|
|
||||||
List<ReceiveDetailResponse> filterList(FilterReceiveDetailRequest filterReceiveDetailRequest);
|
|
||||||
|
|
||||||
int insert(PurReceiveDetailEntity receiveDetailEntity);
|
|
||||||
|
|
||||||
boolean updateReceiveDetail(UpdateReceiveDetailRequest updateReceiveDetailRequest);
|
|
||||||
|
|
||||||
boolean delDetail(String id);
|
|
||||||
|
|
||||||
BasicProductsEntity selectIoOrderDetailBiz(long id);
|
|
||||||
}
|
|
@ -0,0 +1,433 @@
|
|||||||
|
package com.glxp.api.service.inv;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.github.pagehelper.PageHelper;
|
||||||
|
import com.glxp.api.constant.Constant;
|
||||||
|
import com.glxp.api.constant.ConstantStatus;
|
||||||
|
import com.glxp.api.entity.auth.InvWarehouseEntity;
|
||||||
|
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
|
||||||
|
import com.glxp.api.entity.inout.*;
|
||||||
|
import com.glxp.api.entity.purchase.*;
|
||||||
|
import com.glxp.api.req.inv.InvProductRationRequest;
|
||||||
|
import com.glxp.api.res.basic.UdiRlSupResponse;
|
||||||
|
import com.glxp.api.res.inv.InvProductRationResponse;
|
||||||
|
import com.glxp.api.service.auth.InvWarehouseService;
|
||||||
|
import com.glxp.api.service.basic.IBasicBussinessTypeService;
|
||||||
|
import com.glxp.api.service.basic.UdiRlSupService;
|
||||||
|
import com.glxp.api.service.inout.IoOrderDetailBizService;
|
||||||
|
import com.glxp.api.service.inout.IoOrderService;
|
||||||
|
import com.glxp.api.service.inout.impl.ReceiveDetailService;
|
||||||
|
import com.glxp.api.service.inout.impl.ReceiveService;
|
||||||
|
import com.glxp.api.service.purchase.PurOrderService;
|
||||||
|
import com.glxp.api.service.purchase.PurPlanService;
|
||||||
|
import com.glxp.api.service.purchase.impl.PurApplyDetailService;
|
||||||
|
import com.glxp.api.service.purchase.impl.PurApplyService;
|
||||||
|
import com.glxp.api.service.purchase.impl.PurOrderDetailService;
|
||||||
|
import com.glxp.api.service.purchase.impl.PurPlanDetailService;
|
||||||
|
import com.glxp.api.util.CustomUtil;
|
||||||
|
import com.glxp.api.util.GennerOrderUtils;
|
||||||
|
import com.glxp.api.util.IntUtil;
|
||||||
|
import com.glxp.api.util.OrderNoTypeBean;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.glxp.api.entity.inv.InvProductRationEntity;
|
||||||
|
import com.glxp.api.dao.inv.InvProductRationMapper;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class InvProductRationService extends ServiceImpl<InvProductRationMapper, InvProductRationEntity> {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
InvProductRationMapper invProductRationMapper;
|
||||||
|
|
||||||
|
public List<InvProductRationResponse> filterList(InvProductRationRequest invProductRationRequest) {
|
||||||
|
if (invProductRationRequest == null) {
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
if (invProductRationRequest.getPage() != null) {
|
||||||
|
int offset = (invProductRationRequest.getPage() - 1) * invProductRationRequest.getLimit();
|
||||||
|
PageHelper.offsetPage(offset, invProductRationRequest.getLimit());
|
||||||
|
}
|
||||||
|
List<InvProductRationResponse> data = invProductRationMapper.filterList(invProductRationRequest);
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void genOrder(List<InvProductRationEntity> invProductRationEntities) {
|
||||||
|
|
||||||
|
//1.生成业务单
|
||||||
|
Map<String, List<InvProductRationEntity>> stringListMap = invProductRationEntities.stream()
|
||||||
|
.collect(Collectors.groupingBy(item -> item.getBusType() + ":" + item.getBusAuditStatus()));
|
||||||
|
stringListMap.forEach((key, rationEntityList) -> {
|
||||||
|
InvProductRationEntity invProductRationEntity = rationEntityList.get(0);
|
||||||
|
if (StrUtil.isNotEmpty(invProductRationEntity.getBusType())) {
|
||||||
|
switch (invProductRationEntity.getBusType()) {
|
||||||
|
case "HCLY":
|
||||||
|
genLyOrder(rationEntityList);
|
||||||
|
break;
|
||||||
|
case "CPSG":
|
||||||
|
genSgOrder(rationEntityList);
|
||||||
|
break;
|
||||||
|
case "CGJH":
|
||||||
|
genJhOrder(rationEntityList);
|
||||||
|
break;
|
||||||
|
case "CGDD":
|
||||||
|
genCgddOrder(rationEntityList);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
//2.生成出入库单
|
||||||
|
Map<String, List<InvProductRationEntity>> inoutList = invProductRationEntities.stream()
|
||||||
|
.collect(Collectors.groupingBy(item -> item.getScanType()));
|
||||||
|
for (String key : inoutList.keySet()) {
|
||||||
|
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(key);
|
||||||
|
if (bussinessTypeEntity != null) {
|
||||||
|
if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_INNOR) {
|
||||||
|
genIoOrder(inoutList.get(key), bussinessTypeEntity);
|
||||||
|
} else if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {
|
||||||
|
Map<String, List<InvProductRationEntity>> listMap = inoutList.get(key).stream()
|
||||||
|
.collect(Collectors.groupingBy(item -> item.getSupId() + ""));
|
||||||
|
stringListMap.forEach((supId, rationEntityList) -> {
|
||||||
|
genIoOrder(listMap.get(supId), bussinessTypeEntity);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
GennerOrderUtils gennerOrderUtils;
|
||||||
|
@Resource
|
||||||
|
InvWarehouseService invWarehouseService;
|
||||||
|
@Resource
|
||||||
|
UdiRlSupService udiRlSupService;
|
||||||
|
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
ReceiveService receiveService;
|
||||||
|
@Resource
|
||||||
|
ReceiveDetailService receivedetailService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成科室领用单据
|
||||||
|
*/
|
||||||
|
public void genLyOrder(List<InvProductRationEntity> invProductRationEntities) {
|
||||||
|
|
||||||
|
InvProductRationEntity invProductRationEntity = invProductRationEntities.get(0);
|
||||||
|
InvWarehouseEntity curWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getCurInvCode());
|
||||||
|
InvWarehouseEntity targetWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getLyInvCode());
|
||||||
|
PurReceiveEntity purReceiveEntity = new PurReceiveEntity();
|
||||||
|
purReceiveEntity.setStatus(invProductRationEntity.getBusAuditStatus());
|
||||||
|
purReceiveEntity.setCreateUser(invProductRationEntity.getCreateUser());
|
||||||
|
purReceiveEntity.setBillDate(new Date());
|
||||||
|
purReceiveEntity.setCreateTime(new Date());
|
||||||
|
purReceiveEntity.setUpdateTime(new Date());
|
||||||
|
purReceiveEntity.setBillType("HCLY");
|
||||||
|
String orderNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.LIN_YONG, "yyyyMMdd"));
|
||||||
|
purReceiveEntity.setBillNo(orderNo);
|
||||||
|
purReceiveEntity.setInvCode(curWarehouseEntity.getCode());
|
||||||
|
purReceiveEntity.setTargetDeptCode(targetWarehouseEntity.getCode());
|
||||||
|
purReceiveEntity.setDeptCode(curWarehouseEntity.getParentId());
|
||||||
|
purReceiveEntity.setTargetDeptCode(targetWarehouseEntity.getParentId());
|
||||||
|
purReceiveEntity.setRemark("定量不足生成");
|
||||||
|
|
||||||
|
List<PurReceiveDetailEntity> purReceiveDetailEntities = new ArrayList<>();
|
||||||
|
//生成单据详情
|
||||||
|
for (InvProductRationEntity rationEntity : invProductRationEntities) {
|
||||||
|
if (StrUtil.isNotEmpty(rationEntity.getBusOrder())) {
|
||||||
|
PurReceiveEntity temp = receiveService.selectByBillNo(rationEntity.getBusOrder());
|
||||||
|
if (temp != null && IntUtil.value(temp.getStatus()) <= 2) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int count = IntUtil.value(rationEntity.getRationCount()) - IntUtil.value(rationEntity.getInvCount());
|
||||||
|
if (count > 0) {
|
||||||
|
PurReceiveDetailEntity purReceiveDetailEntity = new PurReceiveDetailEntity();
|
||||||
|
purReceiveDetailEntity.setOrderIdFk(purReceiveEntity.getBillNo());
|
||||||
|
purReceiveDetailEntity.setRelIdFk(rationEntity.getRelId());
|
||||||
|
UdiRlSupResponse udiRlSupResponse = udiRlSupService.findByRelUnitFk(rationEntity.getRelId() + "", rationEntity.getSupId() + "");
|
||||||
|
purReceiveDetailEntity.setNameCode(udiRlSupResponse.getNameCode());
|
||||||
|
purReceiveDetailEntity.setSupId(rationEntity.getSupId() + "");
|
||||||
|
purReceiveDetailEntity.setCount(count);
|
||||||
|
purReceiveDetailEntities.add(purReceiveDetailEntity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CollUtil.isNotEmpty(purReceiveDetailEntities)) {
|
||||||
|
receiveService.insertOrder(purReceiveEntity);
|
||||||
|
receivedetailService.saveBatch(purReceiveDetailEntities);
|
||||||
|
invProductRationEntity.setBusOrder(orderNo);
|
||||||
|
invProductRationMapper.updateById(invProductRationEntity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
PurApplyService purApplyService;
|
||||||
|
@Resource
|
||||||
|
PurApplyDetailService purApplyDetailService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成产品申购单据
|
||||||
|
*/
|
||||||
|
public void genSgOrder(List<InvProductRationEntity> invProductRationEntities) {
|
||||||
|
|
||||||
|
InvProductRationEntity invProductRationEntity = invProductRationEntities.get(0);
|
||||||
|
InvWarehouseEntity curWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getCurInvCode());
|
||||||
|
InvWarehouseEntity targetWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getSgInvCode());
|
||||||
|
PurApplyEntity purApplyEntity = new PurApplyEntity();
|
||||||
|
purApplyEntity.setCreateUser(invProductRationEntity.getCreateUser());
|
||||||
|
purApplyEntity.setBillDate(new Date());
|
||||||
|
purApplyEntity.setCreateTime(new Date());
|
||||||
|
purApplyEntity.setUpdateTime(new Date());
|
||||||
|
purApplyEntity.setBillType(ConstantStatus.BUS_ORDER_CPSG);
|
||||||
|
purApplyEntity.setStatus(invProductRationEntity.getBusAuditStatus());
|
||||||
|
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.SG_ORDER, "yyyyMMdd"));
|
||||||
|
purApplyEntity.setBillNo(billNo);
|
||||||
|
purApplyEntity.setInvCode(curWarehouseEntity.getCode());
|
||||||
|
purApplyEntity.setTargetDeptCode(targetWarehouseEntity.getCode());
|
||||||
|
purApplyEntity.setDeptCode(curWarehouseEntity.getParentId());
|
||||||
|
purApplyEntity.setTargetDeptCode(targetWarehouseEntity.getParentId());
|
||||||
|
purApplyEntity.setRemark("定量不足生成");
|
||||||
|
|
||||||
|
List<PurApplyDetailEntity> purApplyDetailEntities = new ArrayList<>();
|
||||||
|
//生成单据详情
|
||||||
|
for (InvProductRationEntity rationEntity : invProductRationEntities) {
|
||||||
|
|
||||||
|
if (StrUtil.isNotEmpty(rationEntity.getBusOrder())) {
|
||||||
|
PurApplyEntity temp = purApplyService.selectByBillNo(rationEntity.getBusOrder());
|
||||||
|
if (temp != null && IntUtil.value(temp.getStatus()) <= 2) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int count = IntUtil.value(rationEntity.getRationCount()) - IntUtil.value(rationEntity.getInvCount());
|
||||||
|
if (count > 0) {
|
||||||
|
PurApplyDetailEntity purApplyDetailEntity = new PurApplyDetailEntity();
|
||||||
|
purApplyDetailEntity.setOrderIdFk(purApplyEntity.getBillNo());
|
||||||
|
purApplyDetailEntity.setProductId(rationEntity.getRelId());
|
||||||
|
UdiRlSupResponse udiRlSupResponse = udiRlSupService.findByRelUnitFk(rationEntity.getRelId() + "", rationEntity.getSupId() + "");
|
||||||
|
purApplyDetailEntity.setProductName(udiRlSupResponse.getCpmctymc());
|
||||||
|
purApplyDetailEntity.setCount(count);
|
||||||
|
purApplyDetailEntity.setZczbhhzbapzbh(udiRlSupResponse.getZczbhhzbapzbh());
|
||||||
|
purApplyDetailEntity.setSupId(rationEntity.getSupId() + "");
|
||||||
|
purApplyDetailEntities.add(purApplyDetailEntity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (CollUtil.isNotEmpty(purApplyDetailEntities)) {
|
||||||
|
purApplyService.insert(purApplyEntity);
|
||||||
|
purApplyDetailService.saveBatch(purApplyDetailEntities);
|
||||||
|
invProductRationEntity.setBusOrder(billNo);
|
||||||
|
invProductRationMapper.updateById(invProductRationEntity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
PurPlanService purPlanService;
|
||||||
|
@Resource
|
||||||
|
PurPlanDetailService purPlanDetailService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成采购计划
|
||||||
|
*/
|
||||||
|
public void genJhOrder(List<InvProductRationEntity> invProductRationEntities) {
|
||||||
|
InvProductRationEntity invProductRationEntity = invProductRationEntities.get(0);
|
||||||
|
InvWarehouseEntity curWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getCurInvCode());
|
||||||
|
InvWarehouseEntity targetWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getSgInvCode());
|
||||||
|
PurPlanEntity purPlanEntity = new PurPlanEntity();
|
||||||
|
purPlanEntity.setCreateUser(invProductRationEntity.getCreateUser());
|
||||||
|
purPlanEntity.setBillDate(new Date());
|
||||||
|
purPlanEntity.setCreateTime(new Date());
|
||||||
|
purPlanEntity.setUpdateTime(new Date());
|
||||||
|
purPlanEntity.setBillType(ConstantStatus.BUS_ORDER_CPSG);
|
||||||
|
purPlanEntity.setStatus(invProductRationEntity.getBusAuditStatus());
|
||||||
|
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.SG_ORDER, "yyyyMMdd"));
|
||||||
|
purPlanEntity.setBillNo(billNo);
|
||||||
|
purPlanEntity.setInvCode(targetWarehouseEntity.getCode());
|
||||||
|
purPlanEntity.setApplyInv(curWarehouseEntity.getCode());
|
||||||
|
purPlanEntity.setDeptCode(targetWarehouseEntity.getParentId());
|
||||||
|
purPlanEntity.setRemark("定量不足生成");
|
||||||
|
|
||||||
|
List<PurPlanDetailEntity> purPlanDetailEntityList = new ArrayList<>();
|
||||||
|
//生成单据详情
|
||||||
|
for (InvProductRationEntity rationEntity : invProductRationEntities) {
|
||||||
|
int count = IntUtil.value(rationEntity.getRationCount()) - IntUtil.value(rationEntity.getInvCount());
|
||||||
|
if (count > 0) {
|
||||||
|
PurPlanDetailEntity purPlanDetailEntity = new PurPlanDetailEntity();
|
||||||
|
purPlanDetailEntity.setOrderIdFk(purPlanEntity.getBillNo());
|
||||||
|
purPlanDetailEntity.setProductId(rationEntity.getRelId());
|
||||||
|
UdiRlSupResponse udiRlSupResponse = udiRlSupService.findByRelUnitFk(rationEntity.getRelId() + "", rationEntity.getSupId() + "");
|
||||||
|
purPlanDetailEntity.setProductName(udiRlSupResponse.getCpmctymc());
|
||||||
|
purPlanDetailEntity.setCount(count);
|
||||||
|
purPlanDetailEntity.setZczbhhzbapzbh(udiRlSupResponse.getZczbhhzbapzbh());
|
||||||
|
purPlanDetailEntity.setSupId(rationEntity.getSupId() + "");
|
||||||
|
purPlanDetailEntityList.add(purPlanDetailEntity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CollUtil.isNotEmpty(purPlanDetailEntityList)) {
|
||||||
|
purPlanService.insert(purPlanEntity);
|
||||||
|
purPlanDetailService.saveBatch(purPlanDetailEntityList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
PurOrderService purOrderService;
|
||||||
|
@Resource
|
||||||
|
PurOrderDetailService purOrderDetailService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成采购订单
|
||||||
|
*/
|
||||||
|
public void genCgddOrder(List<InvProductRationEntity> invProductRationEntities) {
|
||||||
|
|
||||||
|
Map<String, List<InvProductRationEntity>> stringListMap = invProductRationEntities.stream()
|
||||||
|
.collect(Collectors.groupingBy(item -> item.getSupId() + ""));
|
||||||
|
stringListMap.forEach((key, rationEntityList) -> {
|
||||||
|
InvProductRationEntity invProductRationEntity = rationEntityList.get(0);
|
||||||
|
InvWarehouseEntity curWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getCurInvCode());
|
||||||
|
InvWarehouseEntity targetWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getSgInvCode());
|
||||||
|
PurOrderEntity purOrderEntity = new PurOrderEntity();
|
||||||
|
purOrderEntity.setCreateUser(invProductRationEntity.getCreateUser());
|
||||||
|
purOrderEntity.setBillDate(new Date());
|
||||||
|
purOrderEntity.setCreateTime(new Date());
|
||||||
|
purOrderEntity.setUpdateTime(new Date());
|
||||||
|
purOrderEntity.setBillType(ConstantStatus.BUS_ORDER_CPSG);
|
||||||
|
purOrderEntity.setStatus(invProductRationEntity.getBusAuditStatus());
|
||||||
|
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.SG_ORDER, "yyyyMMdd"));
|
||||||
|
purOrderEntity.setBillNo(billNo);
|
||||||
|
purOrderEntity.setInvCode(targetWarehouseEntity.getCode());
|
||||||
|
purOrderEntity.setApplyInv(curWarehouseEntity.getCode());
|
||||||
|
purOrderEntity.setDeptCode(targetWarehouseEntity.getParentId());
|
||||||
|
purOrderEntity.setRemark("定量不足生成");
|
||||||
|
|
||||||
|
List<PurOrderDetailEntity> purOrderDetailEntities = new ArrayList<>();
|
||||||
|
//生成单据详情
|
||||||
|
for (InvProductRationEntity rationEntity : rationEntityList) {
|
||||||
|
|
||||||
|
if (StrUtil.isNotEmpty(rationEntity.getBusOrder())) {
|
||||||
|
PurOrderEntity temp = purOrderService.selectByBillNo(rationEntity.getBusOrder());
|
||||||
|
if (temp != null && IntUtil.value(temp.getStatus()) <= 2) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int count = IntUtil.value(rationEntity.getRationCount()) - IntUtil.value(rationEntity.getInvCount());
|
||||||
|
if (count > 0) {
|
||||||
|
PurOrderDetailEntity purOrderDetailEntity = new PurOrderDetailEntity();
|
||||||
|
purOrderDetailEntity.setOrderIdFk(purOrderEntity.getBillNo());
|
||||||
|
purOrderDetailEntity.setProductId(rationEntity.getRelId());
|
||||||
|
UdiRlSupResponse udiRlSupResponse = udiRlSupService.findByRelUnitFk(rationEntity.getRelId() + "", rationEntity.getSupId() + "");
|
||||||
|
purOrderDetailEntity.setProductName(udiRlSupResponse.getCpmctymc());
|
||||||
|
purOrderDetailEntity.setCount(count);
|
||||||
|
purOrderDetailEntity.setZczbhhzbapzbh(udiRlSupResponse.getZczbhhzbapzbh());
|
||||||
|
purOrderDetailEntity.setSupId(rationEntity.getSupId() + "");
|
||||||
|
purOrderDetailEntities.add(purOrderDetailEntity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CollUtil.isNotEmpty(purOrderDetailEntities)) {
|
||||||
|
purOrderService.insert(purOrderEntity);
|
||||||
|
purOrderDetailService.saveBatch(purOrderDetailEntities);
|
||||||
|
invProductRationEntity.setBusOrder(billNo);
|
||||||
|
invProductRationMapper.updateById(invProductRationEntity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IoOrderService orderService;
|
||||||
|
@Resource
|
||||||
|
IoOrderDetailBizService orderDetailBizService;
|
||||||
|
@Resource
|
||||||
|
private IBasicBussinessTypeService basicBussinessTypeService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成出入库单
|
||||||
|
*/
|
||||||
|
public void genIoOrder(List<InvProductRationEntity> rationEntities, BasicBussinessTypeEntity bussinessTypeEntity) {
|
||||||
|
|
||||||
|
InvProductRationEntity invProductRationEntity = rationEntities.get(0);
|
||||||
|
IoOrderEntity orderEntity = new IoOrderEntity();
|
||||||
|
InvWarehouseEntity curWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getCurInvCode());
|
||||||
|
if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_INNOR) {
|
||||||
|
InvWarehouseEntity targetWarehouseEntity = invWarehouseService.findByInvSubByCode(invProductRationEntity.getSgInvCode());
|
||||||
|
orderEntity.setFromInvCode(targetWarehouseEntity.getCode());
|
||||||
|
orderEntity.setFromDeptCode(targetWarehouseEntity.getParentId());
|
||||||
|
} else {
|
||||||
|
orderEntity.setFromCorp(invProductRationEntity.getSupId() + "");
|
||||||
|
}
|
||||||
|
String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + StrUtil.trimToEmpty(bussinessTypeEntity.getPrefix()), "yyyyMMdd"));
|
||||||
|
orderEntity.setBillNo(orderNo);
|
||||||
|
orderEntity.setCorpOrderId(CustomUtil.getId());
|
||||||
|
orderEntity.setAction(bussinessTypeEntity.getAction());
|
||||||
|
orderEntity.setMainAction(bussinessTypeEntity.getMainAction());
|
||||||
|
orderEntity.setRemark("定量不足自动生成");
|
||||||
|
orderEntity.setDeptCode(curWarehouseEntity.getParentId());
|
||||||
|
orderEntity.setInvCode(curWarehouseEntity.getCode());
|
||||||
|
orderEntity.setFromType(ConstantStatus.FROM_CHANGE);
|
||||||
|
orderEntity.setStatus(invProductRationEntity.getAuditStatus() == 1 ? 1 : 3);
|
||||||
|
orderEntity.setDealStatus(orderEntity.getStatus());
|
||||||
|
orderEntity.setCreateUser(invProductRationEntity.getCreateUser());
|
||||||
|
orderEntity.setCreateTime(new Date());
|
||||||
|
orderEntity.setUpdateUser(invProductRationEntity.getCreateUser());
|
||||||
|
orderEntity.setUpdateTime(new Date());
|
||||||
|
orderEntity.setCustomerId("110");
|
||||||
|
orderEntity.setOrderType(1);
|
||||||
|
orderEntity.setExportStatus(0);
|
||||||
|
|
||||||
|
//生成单据详情
|
||||||
|
List<IoOrderDetailBizEntity> orderDetailBizEntities = new ArrayList<>();
|
||||||
|
for (InvProductRationEntity rationEntity : rationEntities) {
|
||||||
|
|
||||||
|
if (StrUtil.isNotEmpty(rationEntity.getScanOrder())) {
|
||||||
|
IoOrderEntity temp = orderService.findByBillNo(rationEntity.getScanOrder());
|
||||||
|
if (temp != null && IntUtil.value(temp.getStatus()) < 2) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int count = IntUtil.value(rationEntity.getRationCount()) - IntUtil.value(rationEntity.getInvCount());
|
||||||
|
if (count > 0) {
|
||||||
|
IoOrderDetailBizEntity orderDetailBizEntity = new IoOrderDetailBizEntity();
|
||||||
|
orderDetailBizEntity.setOrderIdFk(orderEntity.getBillNo());
|
||||||
|
orderDetailBizEntity.setBindRlFk(rationEntity.getRelId());
|
||||||
|
UdiRlSupResponse udiRlSupResponse = udiRlSupService.findByRelUnitFk(rationEntity.getRelId() + "", rationEntity.getSupId() + "");
|
||||||
|
orderDetailBizEntity.setUuidFk(udiRlSupResponse.getUuid());
|
||||||
|
orderDetailBizEntity.setNameCode(udiRlSupResponse.getNameCode());
|
||||||
|
orderDetailBizEntity.setCoName(udiRlSupResponse.getCpmctymc());
|
||||||
|
orderDetailBizEntity.setYlqxzcrbarmc(udiRlSupResponse.getYlqxzcrbarmc());
|
||||||
|
orderDetailBizEntity.setManufacturer(udiRlSupResponse.getManufactory());
|
||||||
|
orderDetailBizEntity.setMeasname(udiRlSupResponse.getMeasname());
|
||||||
|
orderDetailBizEntity.setSpec(udiRlSupResponse.getGgxh());
|
||||||
|
orderDetailBizEntity.setPrice(new BigDecimal(udiRlSupResponse.getPrice()));
|
||||||
|
orderDetailBizEntity.setCount(count);
|
||||||
|
orderDetailBizEntity.setCertCode(udiRlSupResponse.getZczbhhzbapzbh());
|
||||||
|
orderDetailBizEntity.setSupId(rationEntity.getSupId() + "");
|
||||||
|
orderDetailBizService.insert(orderDetailBizEntity);
|
||||||
|
orderDetailBizEntities.add(orderDetailBizEntity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (CollUtil.isNotEmpty(orderDetailBizEntities)) {
|
||||||
|
orderService.insertOrder(orderEntity);
|
||||||
|
invProductRationEntity.setScanOrder(orderNo);
|
||||||
|
invProductRationMapper.updateById(invProductRationEntity);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -1,99 +0,0 @@
|
|||||||
package com.glxp.api.service.inv;
|
|
||||||
|
|
||||||
import com.glxp.api.entity.inv.InvProductEntity;
|
|
||||||
import com.glxp.api.req.inv.FilterInvProductRequest;
|
|
||||||
import com.glxp.api.res.inv.InvProductResponse;
|
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface InvProductService {
|
|
||||||
|
|
||||||
int insert(InvProductEntity invProductEntity);
|
|
||||||
|
|
||||||
int update(InvProductEntity invProductEntity);
|
|
||||||
|
|
||||||
|
|
||||||
boolean updateBatch(List<InvProductEntity> invProductEntities);
|
|
||||||
|
|
||||||
InvProductEntity selectByUnique(Long relId, String batchNo, String supId, String deptCode, String invCode, BigDecimal price);
|
|
||||||
|
|
||||||
InvProductEntity selectByUnique(Long relId, String batchNo, String supId);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 库存查询
|
|
||||||
*
|
|
||||||
* @param filterInvProductRequest
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<InvProductResponse> filterList(FilterInvProductRequest filterInvProductRequest);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 库存查询过滤零库存和负库存
|
|
||||||
*
|
|
||||||
* @param filterInvProductRequest
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<InvProductResponse> filterListStock(FilterInvProductRequest filterInvProductRequest);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 库存查询
|
|
||||||
*
|
|
||||||
* @param filterInvProductRequest
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<InvProductResponse> filterListProduct(FilterInvProductRequest filterInvProductRequest);
|
|
||||||
|
|
||||||
List<InvProductResponse> findGroupBySpace(FilterInvProductRequest filterInvProductRequest);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 根据ID查询库存
|
|
||||||
*
|
|
||||||
* @param id
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
InvProductEntity findById(String id);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除库存
|
|
||||||
*
|
|
||||||
* @param id
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
boolean deleteById(String id);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 库存统计
|
|
||||||
*
|
|
||||||
* @param filterInvProductRequest
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<InvProductResponse> stockStatistics(FilterInvProductRequest filterInvProductRequest);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 库存养护查询库存产品详情
|
|
||||||
*
|
|
||||||
* @param filterInvProductRequest
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<InvProductResponse> getInvMAProducts(FilterInvProductRequest filterInvProductRequest);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 盘点单据查询库存产品信息列表
|
|
||||||
*
|
|
||||||
* @param filterInvProductRequest
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<InvProductResponse> getCountInvProduct(FilterInvProductRequest filterInvProductRequest);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询库存产品名称列表
|
|
||||||
*
|
|
||||||
* @param filterInvProductRequest
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<InvProductResponse> filterProductNames(FilterInvProductRequest filterInvProductRequest);
|
|
||||||
|
|
||||||
boolean isExitByRelId(String relId);
|
|
||||||
|
|
||||||
}
|
|
@ -1,38 +0,0 @@
|
|||||||
package com.glxp.api.service.purchase;
|
|
||||||
|
|
||||||
|
|
||||||
import com.glxp.api.entity.purchase.PurApplyDetailEntity;
|
|
||||||
import com.glxp.api.req.purchase.PurApplyDetailRequest;
|
|
||||||
import com.glxp.api.res.purchase.PurOrderDetailResponse;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface PurApplyDetailService {
|
|
||||||
|
|
||||||
List<PurApplyDetailEntity> queryPageList(PurApplyDetailRequest purApplyRequest);
|
|
||||||
|
|
||||||
List<PurApplyDetailEntity> findByOrderId(String orderId);
|
|
||||||
|
|
||||||
List<PurOrderDetailResponse> joinQueryList(PurApplyDetailRequest purApplyRequest);
|
|
||||||
|
|
||||||
|
|
||||||
Boolean insert(PurApplyDetailEntity purApplyRequest);
|
|
||||||
|
|
||||||
Boolean update(PurApplyDetailEntity purApplyRequest);
|
|
||||||
|
|
||||||
Boolean deleteByIds(List<Long> ids);
|
|
||||||
|
|
||||||
Boolean deleteByOrderId(String orderIdfK);
|
|
||||||
|
|
||||||
List<PurApplyDetailEntity> selectPurApplyDetailList(PurApplyDetailRequest purApplyRequest);
|
|
||||||
|
|
||||||
boolean insertPurApplyDetailEntity(List<PurApplyDetailEntity> purApplyDetailEntityList);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询申购单据明细列表
|
|
||||||
*
|
|
||||||
* @param purApplyDetailRequest
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<PurOrderDetailResponse> getDetailList(PurApplyDetailRequest purApplyDetailRequest);
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
package com.glxp.api.service.purchase;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
import com.glxp.api.entity.purchase.PurApplyEntity;
|
|
||||||
import com.glxp.api.req.purchase.PurApplyRequest;
|
|
||||||
import com.glxp.api.res.purchase.PurApplyResponse;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface PurApplyService {
|
|
||||||
|
|
||||||
List<PurApplyResponse> queryPageList(PurApplyRequest purApplyRequest);
|
|
||||||
|
|
||||||
Integer insert(PurApplyEntity purApplyEntity);
|
|
||||||
|
|
||||||
Boolean update(PurApplyEntity purApplyRequest);
|
|
||||||
|
|
||||||
Boolean deleteByIds(List<Long> ids);
|
|
||||||
|
|
||||||
Boolean deleteById(long id);
|
|
||||||
}
|
|
@ -1,38 +0,0 @@
|
|||||||
package com.glxp.api.service.purchase;
|
|
||||||
|
|
||||||
|
|
||||||
import com.glxp.api.entity.basic.BasicCorpEntity;
|
|
||||||
import com.glxp.api.entity.basic.BasicProductsEntity;
|
|
||||||
import com.glxp.api.entity.purchase.PurOrderDetailEntity;
|
|
||||||
import com.glxp.api.req.purchase.PurOrderDetailRequest;
|
|
||||||
import com.glxp.api.res.purchase.PurOrderDetailResponse;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface PurOrderDetailService {
|
|
||||||
|
|
||||||
List<PurOrderDetailResponse> joinQueryList(PurOrderDetailRequest purOrderDetailRequest);
|
|
||||||
|
|
||||||
|
|
||||||
List<PurOrderDetailEntity> findByOrderId(String orderId);
|
|
||||||
|
|
||||||
List<PurOrderDetailEntity> queryPageList(PurOrderDetailRequest purOrderDetailRequest);
|
|
||||||
|
|
||||||
List<PurOrderDetailEntity> getPurOrderDetailEntityList(PurOrderDetailRequest purOrderDetailRequest);
|
|
||||||
|
|
||||||
Boolean insert(PurOrderDetailEntity purOrderDetailEntity);
|
|
||||||
|
|
||||||
Boolean update(PurOrderDetailEntity purOrderDetailEntity);
|
|
||||||
|
|
||||||
Boolean deleteByIds(List<Long> ids);
|
|
||||||
|
|
||||||
Boolean deleteByOrderId(String orderIdfK);
|
|
||||||
|
|
||||||
boolean insertPurOrderDetailEntity(List<PurOrderDetailEntity> purOrderDetailEntityList);
|
|
||||||
|
|
||||||
BasicProductsEntity selectIoOrderDetailBiz(long id);
|
|
||||||
|
|
||||||
List<PurOrderDetailResponse> getDetailList(PurOrderDetailRequest purOrderDetailRequest);
|
|
||||||
|
|
||||||
List<BasicCorpEntity> selectsupList(PurOrderDetailEntity purOrderDetailEntity);
|
|
||||||
}
|
|
@ -1,35 +0,0 @@
|
|||||||
package com.glxp.api.service.purchase;
|
|
||||||
|
|
||||||
|
|
||||||
import com.glxp.api.entity.basic.BasicProductsEntity;
|
|
||||||
import com.glxp.api.entity.purchase.PurPlanDetailEntity;
|
|
||||||
import com.glxp.api.req.purchase.PurPlanDetailRequest;
|
|
||||||
import com.glxp.api.res.purchase.PurOrderDetailResponse;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface PurPlanDetailService {
|
|
||||||
|
|
||||||
List<PurOrderDetailResponse> joinQueryList(PurPlanDetailRequest purApplyRequest);
|
|
||||||
|
|
||||||
|
|
||||||
List<PurPlanDetailEntity> findByOrderId(String orderId);
|
|
||||||
|
|
||||||
List<PurPlanDetailEntity> queryPageList(PurPlanDetailRequest purPlanDetailRequest);
|
|
||||||
|
|
||||||
List<PurPlanDetailEntity> getPurPlanDetailEntityList(PurPlanDetailRequest purPlanDetailRequest);
|
|
||||||
|
|
||||||
Boolean insert(PurPlanDetailEntity purPlanDetailRequest);
|
|
||||||
|
|
||||||
Boolean update(PurPlanDetailEntity purPlanDetailRequest);
|
|
||||||
|
|
||||||
Boolean deleteByIds(List<Long> ids);
|
|
||||||
|
|
||||||
Boolean deleteByOrderId(String orderIdfK);
|
|
||||||
|
|
||||||
boolean insertPurPlanDetailEntity(List<PurPlanDetailEntity> purPlanDetailEntityList);
|
|
||||||
|
|
||||||
BasicProductsEntity selectIoOrderDetailBiz(long id);
|
|
||||||
|
|
||||||
List<PurOrderDetailResponse> getDetailList(PurPlanDetailRequest purPlanDetailRequest);
|
|
||||||
}
|
|
@ -0,0 +1,79 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.glxp.api.dao.inv.InvProductRationMapper">
|
||||||
|
<resultMap id="BaseResultMap" type="com.glxp.api.entity.inv.InvProductRationEntity">
|
||||||
|
<!--@mbg.generated-->
|
||||||
|
<!--@Table inv_product_ration-->
|
||||||
|
<id column="id" jdbcType="INTEGER" property="id"/>
|
||||||
|
<result column="relId" jdbcType="BIGINT" property="relId"/>
|
||||||
|
<result column="supId" jdbcType="BIGINT" property="supId"/>
|
||||||
|
<result column="rationCount" jdbcType="INTEGER" property="rationCount"/>
|
||||||
|
<result column="invCount" jdbcType="INTEGER" property="invCount"/>
|
||||||
|
<result column="busType" jdbcType="VARCHAR" property="busType"/>
|
||||||
|
<result column="scanType" jdbcType="VARCHAR" property="scanType"/>
|
||||||
|
<result column="curInvCode" jdbcType="VARCHAR" property="curInvCode"/>
|
||||||
|
<result column="lyInvCode" jdbcType="VARCHAR" property="lyInvCode"/>
|
||||||
|
<result column="sgInvCode" jdbcType="VARCHAR" property="sgInvCode"/>
|
||||||
|
<result column="jhInvCode" jdbcType="VARCHAR" property="jhInvCode"/>
|
||||||
|
<result column="cgInvCode" jdbcType="VARCHAR" property="cgInvCode"/>
|
||||||
|
<result column="fromInvCode" jdbcType="VARCHAR" property="fromInvCode"/>
|
||||||
|
<result column="updateTime" jdbcType="TIMESTAMP" property="updateTime"/>
|
||||||
|
<result column="updateUser" jdbcType="TIMESTAMP" property="updateUser"/>
|
||||||
|
<result column="createTime" jdbcType="TIMESTAMP" property="createTime"/>
|
||||||
|
<result column="createUser" jdbcType="VARCHAR" property="createUser"/>
|
||||||
|
<result column="remark" jdbcType="VARCHAR" property="remark"/>
|
||||||
|
</resultMap>
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
<!--@mbg.generated-->
|
||||||
|
id, relId, rationCount, invCount, busType, scanType, curInvCode, lyInvCode, sgInvCode,
|
||||||
|
jhInvCode, cgInvCode, fromInvCode, updateTime, updateUser, createTime, `createUser`,
|
||||||
|
remark
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="filterList" resultType="com.glxp.api.res.inv.InvProductRationResponse"
|
||||||
|
parameterType="com.glxp.api.req.inv.InvProductRationRequest">
|
||||||
|
select ip.*,
|
||||||
|
bp.cpmctymc,
|
||||||
|
bp.measname,
|
||||||
|
bp.ggxh,
|
||||||
|
bp.ylqxzcrbarmc,
|
||||||
|
bp.zczbhhzbapzbh,
|
||||||
|
bp.nameCode,
|
||||||
|
basic_corp.name supName,
|
||||||
|
auth_warehouse.name invName
|
||||||
|
from inv_product_ration ip
|
||||||
|
inner join basic_udirel on ip.relId = basic_udirel.id
|
||||||
|
inner join basic_products bp on basic_udirel.uuid = bp.uuid
|
||||||
|
left join basic_corp on ip.supId = basic_corp.erpId
|
||||||
|
left join auth_warehouse on auth_warehouse.code = ip.curInvCode
|
||||||
|
<where>
|
||||||
|
bp.diType = 1
|
||||||
|
<if test="cpmctymc != null and cpmctymc != ''">
|
||||||
|
AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="nameCode != null and nameCode != ''">
|
||||||
|
AND bp.nameCode like concat('%', #{nameCode}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="relId != null and relId != ''">
|
||||||
|
AND ip.relId = #{relId}
|
||||||
|
</if>
|
||||||
|
<if test="ggxh != null and ggxh != ''">
|
||||||
|
AND bp.ggxh like concat('%', #{ggxh}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="ylqxzcrbarmc != null and ylqxzcrbarmc != ''">
|
||||||
|
AND bp.ylqxzcrbarmc like concat('%', #{ylqxzcrbarmc}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="zczbhhzbapzbh != null and zczbhhzbapzbh != ''">
|
||||||
|
AND bp.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="supId != null and supId != ''">
|
||||||
|
AND ip.supId = #{supId}
|
||||||
|
</if>
|
||||||
|
<if test="curInvCode != null and curInvCode != ''">
|
||||||
|
AND ip.curInvCode = #{curInvCode}
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
order by ip.updateTime desc
|
||||||
|
</select>
|
||||||
|
</mapper>
|
Loading…
Reference in New Issue