|
|
|
@ -80,7 +80,8 @@ public class PurPlanController {
|
|
|
|
|
PurOrderService purOrderService;
|
|
|
|
|
@Resource
|
|
|
|
|
PurOrderDetailService purOrderDetailService;
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
IoPurChangeService purChangeService;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 新增采购计划
|
|
|
|
@ -99,7 +100,7 @@ public class PurPlanController {
|
|
|
|
|
purPlanEntity.setUpdateUser(userId + "");
|
|
|
|
|
purPlanEntity.setStatus(postPurPlanRequest.getEditStatus()); //草稿状态
|
|
|
|
|
|
|
|
|
|
if(postPurPlanRequest.getType()!=null){
|
|
|
|
|
if (postPurPlanRequest.getType() != null) {
|
|
|
|
|
String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.SG_ORDER, "yyyyMMdd"));
|
|
|
|
|
purPlanEntity.setBillNo(billNo);
|
|
|
|
|
}
|
|
|
|
@ -111,7 +112,6 @@ public class PurPlanController {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.success("提交成功!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -185,13 +185,14 @@ public class PurPlanController {
|
|
|
|
|
Long userId = customerService.getUserId();
|
|
|
|
|
PurPlanEntity purPlanEntity = postPurPlanRequest.getPurPlanEntity();
|
|
|
|
|
purPlanEntity.setUpdateTime(new Date());
|
|
|
|
|
purPlanEntity.setUpdateUser(userId+"");
|
|
|
|
|
purPlanEntity.setUpdateUser(userId + "");
|
|
|
|
|
purPlanEntity.setAuditUser(userId + "");
|
|
|
|
|
purPlanEntity.setAuditUser(userId + "");
|
|
|
|
|
purPlanEntity.setStatus(postPurPlanRequest.getEditStatus());
|
|
|
|
|
// purPlanService.update(purApplyEntity);
|
|
|
|
|
if(purPlanEntity.getStatus()==3){
|
|
|
|
|
generateDocument(purPlanEntity);
|
|
|
|
|
if (purPlanEntity.getStatus() == 3) {
|
|
|
|
|
purChangeService.purPlanChange(purPlanEntity);
|
|
|
|
|
// generateDocument(purPlanEntity);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -257,15 +258,15 @@ public class PurPlanController {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//根据单据生成新单据
|
|
|
|
|
public Boolean generateDocument(PurPlanEntity purPlanEntity){
|
|
|
|
|
BasicBusTypeChangeEntity basicBusTypeChangeEntity=new BasicBusTypeChangeEntity();
|
|
|
|
|
public Boolean generateDocument(PurPlanEntity purPlanEntity) {
|
|
|
|
|
BasicBusTypeChangeEntity basicBusTypeChangeEntity = new BasicBusTypeChangeEntity();
|
|
|
|
|
//查询计划详情
|
|
|
|
|
List<PurPlanDetailEntity> purPlanDetailEntityList=purPlanDetailService.findByOrderId(purPlanEntity.getId()+"");
|
|
|
|
|
List<PurPlanDetailEntity> purPlanDetailEntityList = purPlanDetailService.findByOrderId(purPlanEntity.getId() + "");
|
|
|
|
|
//---------------------------------判断计划为已审核就生成计划单-------------------------------------------//\
|
|
|
|
|
PurOrderEntity purOrderEntity=new PurOrderEntity();
|
|
|
|
|
if(purPlanEntity.getStatus()==3){
|
|
|
|
|
basicBusTypeChangeEntity=basicBusTypeChangeService.selectByOriginAction("CGJH");
|
|
|
|
|
if(basicBusTypeChangeEntity!=null && StrUtil.isNotEmpty(basicBusTypeChangeEntity.getTargetBusAction()) && basicBusTypeChangeEntity.isEnable()==true){
|
|
|
|
|
PurOrderEntity purOrderEntity = new PurOrderEntity();
|
|
|
|
|
if (purPlanEntity.getStatus() == 3) {
|
|
|
|
|
basicBusTypeChangeEntity = basicBusTypeChangeService.selectByOriginAction("CGJH");
|
|
|
|
|
if (basicBusTypeChangeEntity != null && StrUtil.isNotEmpty(basicBusTypeChangeEntity.getTargetBusAction()) && basicBusTypeChangeEntity.isEnable() == true) {
|
|
|
|
|
purOrderEntity.setBillNo(gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.CG_ORDER, "yyyyMMdd")));
|
|
|
|
|
purOrderEntity.setBillDate(purPlanEntity.getBillDate());
|
|
|
|
|
purOrderEntity.setStatus(basicBusTypeChangeEntity.getBusAuditStatus());
|
|
|
|
@ -275,10 +276,10 @@ public class PurPlanController {
|
|
|
|
|
purOrderEntity.setInvCode(purPlanEntity.getInvCode());
|
|
|
|
|
purOrderEntity.setDeptCode(purPlanEntity.getDeptCode());
|
|
|
|
|
purOrderEntity.setCreateUser(purPlanEntity.getAuditUser());
|
|
|
|
|
purOrderEntity.setCreateTime(timeProcess(purPlanEntity.getCreateTime(),basicBusTypeChangeEntity.getBusBeforeTime()));
|
|
|
|
|
purOrderEntity.setCreateTime(timeProcess(purPlanEntity.getCreateTime(), basicBusTypeChangeEntity.getBusBeforeTime()));
|
|
|
|
|
purOrderEntity.setUpdateUser(purPlanEntity.getAuditUser());
|
|
|
|
|
purOrderEntity.setUpdateTime(timeProcess(purPlanEntity.getCreateTime(),basicBusTypeChangeEntity.getBusBeforeTime()));
|
|
|
|
|
if(purOrderEntity.getStatus()==3){
|
|
|
|
|
purOrderEntity.setUpdateTime(timeProcess(purPlanEntity.getCreateTime(), basicBusTypeChangeEntity.getBusBeforeTime()));
|
|
|
|
|
if (purOrderEntity.getStatus() == 3) {
|
|
|
|
|
purOrderEntity.setAuditUser("");
|
|
|
|
|
purOrderEntity.setAuditTime(new Date());
|
|
|
|
|
}
|
|
|
|
@ -287,7 +288,7 @@ public class PurPlanController {
|
|
|
|
|
//用stream流复制list
|
|
|
|
|
List<PurOrderDetailEntity> purOrderDetailEntityList = purPlanDetailEntityList.stream().map(e -> {
|
|
|
|
|
PurOrderDetailEntity d = new PurOrderDetailEntity();
|
|
|
|
|
d.setOrderIdFk(purOrderEntity.getId()+"");
|
|
|
|
|
d.setOrderIdFk(purOrderEntity.getId() + "");
|
|
|
|
|
d.setProductId(e.getProductId());
|
|
|
|
|
d.setProductName(e.getProductName());
|
|
|
|
|
d.setCount(e.getCount());
|
|
|
|
@ -297,7 +298,7 @@ public class PurPlanController {
|
|
|
|
|
}).collect(Collectors.toList());
|
|
|
|
|
purOrderDetailService.insertPurOrderDetailEntity(purOrderDetailEntityList);
|
|
|
|
|
// 更新计划表信息插入订单单号
|
|
|
|
|
PurPlanEntity purPlanEntity1=new PurPlanEntity();
|
|
|
|
|
PurPlanEntity purPlanEntity1 = new PurPlanEntity();
|
|
|
|
|
purPlanEntity1.setId(purPlanEntity.getId());
|
|
|
|
|
purPlanEntity1.setStockOrderNo(purOrderEntity.getBillNo());
|
|
|
|
|
// purPlanEntity.sets(true);
|
|
|
|
@ -305,15 +306,15 @@ public class PurPlanController {
|
|
|
|
|
}
|
|
|
|
|
//---------------------------------判断计划为已审核就生成采购入库单-------------------------------------------//\
|
|
|
|
|
//查询申购单详情
|
|
|
|
|
List<PurPlanDetailEntity> purPlanDetailEntities=purPlanDetailService.findByOrderId(purPlanEntity.getId()+"");
|
|
|
|
|
List<PurPlanDetailEntity> purPlanDetailEntities = purPlanDetailService.findByOrderId(purPlanEntity.getId() + "");
|
|
|
|
|
//对计划单里面的供应商进行分组
|
|
|
|
|
Map<String, List<PurPlanDetailEntity>> map = purPlanDetailEntities.stream().collect(Collectors.groupingBy(PurPlanDetailEntity::getSupId));
|
|
|
|
|
String billNo="";
|
|
|
|
|
if(basicBusTypeChangeEntity!=null && StrUtil.isNotEmpty(basicBusTypeChangeEntity.getTargetAction()) && basicBusTypeChangeEntity.isEnable()==true){
|
|
|
|
|
for (Map.Entry<String, List<PurPlanDetailEntity>> m:map.entrySet()) {
|
|
|
|
|
String billNo = "";
|
|
|
|
|
if (basicBusTypeChangeEntity != null && StrUtil.isNotEmpty(basicBusTypeChangeEntity.getTargetAction()) && basicBusTypeChangeEntity.isEnable() == true) {
|
|
|
|
|
for (Map.Entry<String, List<PurPlanDetailEntity>> m : map.entrySet()) {
|
|
|
|
|
//生产单据表信息
|
|
|
|
|
IoOrderEntity ioOrderEntity=new IoOrderEntity();
|
|
|
|
|
ioOrderEntity.setBillNo(gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER ,"yyyyMMdd")));
|
|
|
|
|
IoOrderEntity ioOrderEntity = new IoOrderEntity();
|
|
|
|
|
ioOrderEntity.setBillNo(gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER, "yyyyMMdd")));
|
|
|
|
|
ioOrderEntity.setCorpOrderId(CustomUtil.getDate());
|
|
|
|
|
ioOrderEntity.setMainAction(ConstantType.TYPE_PUT);
|
|
|
|
|
ioOrderEntity.setAction(basicBusTypeChangeEntity.getTargetAction());
|
|
|
|
@ -330,9 +331,9 @@ public class PurPlanController {
|
|
|
|
|
ioOrderEntity.setDeptCode(purPlanEntity.getInvCode());
|
|
|
|
|
ioOrderEntity.setInvCode(purPlanEntity.getDeptCode());
|
|
|
|
|
ioOrderService.insertOrder(ioOrderEntity);
|
|
|
|
|
billNo+=ioOrderEntity.getBillNo()+",";
|
|
|
|
|
billNo += ioOrderEntity.getBillNo() + ",";
|
|
|
|
|
//插入业务单表
|
|
|
|
|
for (PurPlanDetailEntity obj:m.getValue()) {
|
|
|
|
|
for (PurPlanDetailEntity obj : m.getValue()) {
|
|
|
|
|
BasicProductsEntity basicProductsEntity = purPlanDetailService.selectIoOrderDetailBiz(obj.getId());
|
|
|
|
|
IoOrderDetailBizEntity ioOrderDetailBizEntity = new IoOrderDetailBizEntity();
|
|
|
|
|
ioOrderDetailBizEntity.setOrderIdFk(ioOrderEntity.getBillNo());
|
|
|
|
@ -353,19 +354,19 @@ public class PurPlanController {
|
|
|
|
|
ioOrderDetailBizService.insert(ioOrderDetailBizEntity);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
PurPlanEntity purPlanEntity1=new PurPlanEntity();
|
|
|
|
|
PurPlanEntity purPlanEntity1 = new PurPlanEntity();
|
|
|
|
|
purPlanEntity1.setId(purPlanEntity.getId());
|
|
|
|
|
purPlanEntity1.setStockOrderNo(billNo.substring(0,billNo.length()-1));
|
|
|
|
|
purPlanEntity1.setStockOrderNo(billNo.substring(0, billNo.length() - 1));
|
|
|
|
|
purPlanService.update(purPlanEntity1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public Date timeProcess(Date date,Integer timeCount) {
|
|
|
|
|
public Date timeProcess(Date date, Integer timeCount) {
|
|
|
|
|
Calendar rightNow = Calendar.getInstance();
|
|
|
|
|
rightNow.setTime(date);
|
|
|
|
|
rightNow.add(Calendar.HOUR,timeCount);
|
|
|
|
|
rightNow.add(Calendar.HOUR, timeCount);
|
|
|
|
|
Date dt1 = rightNow.getTime();
|
|
|
|
|
return dt1;
|
|
|
|
|
}
|
|
|
|
@ -394,35 +395,35 @@ public class PurPlanController {
|
|
|
|
|
public BaseResponse addPlanDetailAndApply(@RequestBody PurPlanRequest purPlanRequest) {
|
|
|
|
|
|
|
|
|
|
if (purPlanRequest.getApplyId() == null || purPlanRequest.getId() == null) {
|
|
|
|
|
return ResultVOUtils.error(999,"参数错误!");
|
|
|
|
|
return ResultVOUtils.error(999, "参数错误!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//查询申购单详情
|
|
|
|
|
PurApplyDetailRequest purApplyDetailRequest=new PurApplyDetailRequest();
|
|
|
|
|
purApplyDetailRequest.setOrderIdFk(purPlanRequest.getApplyId()+"");
|
|
|
|
|
List<PurApplyDetailEntity> purApplyDetailEntityList=purApplyDetailService.selectPurApplyDetailList(purApplyDetailRequest);
|
|
|
|
|
PurApplyDetailRequest purApplyDetailRequest = new PurApplyDetailRequest();
|
|
|
|
|
purApplyDetailRequest.setOrderIdFk(purPlanRequest.getApplyId() + "");
|
|
|
|
|
List<PurApplyDetailEntity> purApplyDetailEntityList = purApplyDetailService.selectPurApplyDetailList(purApplyDetailRequest);
|
|
|
|
|
//使用stream拷贝list
|
|
|
|
|
List<PurPlanDetailEntity> purPlanDetailEntityList = purApplyDetailEntityList.stream()
|
|
|
|
|
.map(e-> {
|
|
|
|
|
.map(e -> {
|
|
|
|
|
PurPlanDetailEntity d = new PurPlanDetailEntity();
|
|
|
|
|
BeanUtils.copyProperties(e, d);
|
|
|
|
|
return d;
|
|
|
|
|
})
|
|
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
|
|
|
|
for (PurPlanDetailEntity obj:purPlanDetailEntityList){
|
|
|
|
|
obj.setOrderIdFk(purPlanRequest.getId()+"");
|
|
|
|
|
for (PurPlanDetailEntity obj : purPlanDetailEntityList) {
|
|
|
|
|
obj.setOrderIdFk(purPlanRequest.getId() + "");
|
|
|
|
|
}
|
|
|
|
|
//获取详情表信息
|
|
|
|
|
PurPlanDetailRequest purPlanDetailRequest=new PurPlanDetailRequest();
|
|
|
|
|
PurPlanDetailRequest purPlanDetailRequest = new PurPlanDetailRequest();
|
|
|
|
|
purPlanDetailRequest.setOrderIdFk(purPlanRequest.getId() + "");
|
|
|
|
|
List<PurPlanDetailEntity> purApplyDetailEntities=purPlanDetailService.getPurPlanDetailEntityList(purPlanDetailRequest);
|
|
|
|
|
List<PurPlanDetailEntity> purApplyDetailEntities = purPlanDetailService.getPurPlanDetailEntityList(purPlanDetailRequest);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<Long> ids=new ArrayList<>();
|
|
|
|
|
for (PurPlanDetailEntity obj:purApplyDetailEntities){
|
|
|
|
|
for (PurPlanDetailEntity obj1:purPlanDetailEntityList){
|
|
|
|
|
if(obj.getProductId().equals(obj1.getProductId())){
|
|
|
|
|
List<Long> ids = new ArrayList<>();
|
|
|
|
|
for (PurPlanDetailEntity obj : purApplyDetailEntities) {
|
|
|
|
|
for (PurPlanDetailEntity obj1 : purPlanDetailEntityList) {
|
|
|
|
|
if (obj.getProductId().equals(obj1.getProductId())) {
|
|
|
|
|
//获取存在在详情表和申购单里面一样的产品
|
|
|
|
|
ids.add(obj.getId().longValue());
|
|
|
|
|
break;
|
|
|
|
@ -430,16 +431,16 @@ public class PurPlanController {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//删除存在的产品
|
|
|
|
|
if(ids.size()>0){
|
|
|
|
|
if (ids.size() > 0) {
|
|
|
|
|
purPlanDetailService.deleteByIds(ids);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
boolean falg= purPlanDetailService.insertPurPlanDetailEntity(purPlanDetailEntityList);
|
|
|
|
|
if(falg){
|
|
|
|
|
boolean falg = purPlanDetailService.insertPurPlanDetailEntity(purPlanDetailEntityList);
|
|
|
|
|
if (falg) {
|
|
|
|
|
//查询申购单
|
|
|
|
|
return ResultVOUtils.success("添加成功");
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
return ResultVOUtils.success("添加失败");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -451,10 +452,10 @@ public class PurPlanController {
|
|
|
|
|
@PostMapping("/purchase/plan/addPlanDetail")
|
|
|
|
|
public BaseResponse addPlanDetail(@RequestBody PurPlanDetailEntity purPlanDetailEntity) {
|
|
|
|
|
|
|
|
|
|
boolean falg=purPlanDetailService.insert(purPlanDetailEntity);
|
|
|
|
|
if(falg){
|
|
|
|
|
boolean falg = purPlanDetailService.insert(purPlanDetailEntity);
|
|
|
|
|
if (falg) {
|
|
|
|
|
return ResultVOUtils.success("添加成功");
|
|
|
|
|
}else {
|
|
|
|
|
} else {
|
|
|
|
|
return ResultVOUtils.success("添加失败");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -468,13 +469,13 @@ public class PurPlanController {
|
|
|
|
|
@PostMapping("/purchase/plan/add")
|
|
|
|
|
public BaseResponse add() {
|
|
|
|
|
Long userId = customerService.getUserId();
|
|
|
|
|
PurPlanEntity purPlanEntity= new PurPlanEntity();
|
|
|
|
|
PurPlanEntity purPlanEntity = new PurPlanEntity();
|
|
|
|
|
purPlanEntity.setCreateUser(userId + "");
|
|
|
|
|
purPlanEntity.setCreateTime(new Date());
|
|
|
|
|
purPlanEntity.setUpdateTime(new Date());
|
|
|
|
|
purPlanEntity.setUpdateUser(userId + "");
|
|
|
|
|
purPlanService.insert(purPlanEntity);
|
|
|
|
|
Long id=purPlanEntity.getId();
|
|
|
|
|
Long id = purPlanEntity.getId();
|
|
|
|
|
return ResultVOUtils.success(id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -485,11 +486,11 @@ public class PurPlanController {
|
|
|
|
|
@PostMapping("/purchase/plan/delPlanDetailAll")
|
|
|
|
|
public BaseResponse delApplyDetailAll(@RequestBody PurApplyEntity purApplyEntity) {
|
|
|
|
|
|
|
|
|
|
if(purApplyEntity.getId()!=null){
|
|
|
|
|
if (purApplyEntity.getId() != null) {
|
|
|
|
|
purPlanService.deleteById(purApplyEntity.getId());
|
|
|
|
|
purPlanDetailService.deleteByOrderId(purApplyEntity.getId() + "" );
|
|
|
|
|
}else {
|
|
|
|
|
return ResultVOUtils.error(999,"参数有误!");
|
|
|
|
|
purPlanDetailService.deleteByOrderId(purApplyEntity.getId() + "");
|
|
|
|
|
} else {
|
|
|
|
|
return ResultVOUtils.error(999, "参数有误!");
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.success();
|
|
|
|
|
}
|
|
|
|
@ -503,6 +504,7 @@ public class PurPlanController {
|
|
|
|
|
purPlanDetailService.update(purPlanDetailEntity);
|
|
|
|
|
return ResultVOUtils.success("修改成功");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 删除采购计划
|
|
|
|
|
*
|
|
|
|
|