Merge branch 'dev_fifo_z' of http://116.204.71.86:3000/UDI/udi-wms-java into dev_fifo_z

panjc_field_management
qyt 8 months ago
commit 4168a85ccb

@ -365,6 +365,7 @@ public class UdiRelevanceController extends BaseController {
// udiRelevanceEntity.setUseLevelDi(udiRelevanceSaveRequest.getUseLevelDi());
// udiRelevanceEntity.setUseLevelUnit(udiRelevanceSaveRequest.getUseLevelUnit());
udiRelevanceEntity.setUseLevel(udiRelevanceSaveRequest.getUseLevel());
udiRelevanceEntity.setUnpackUseTime(udiRelevanceSaveRequest.getUnpackUseTime());
// udiRelevanceEntity.setDistributeLevelDi(udiRelevanceSaveRequest.getDistributeLevelDi());
// udiRelevanceEntity.setDistributeLevelUnit(udiRelevanceSaveRequest.getDistributeLevelUnit());
// udiRelevanceEntity.setDistributeLevelCount(udiRelevanceSaveRequest.getDistributeLevelCount());

@ -97,7 +97,7 @@ public class IoCollectOrderBackupController extends BaseController {
public BaseResponse orderUpload(@RequestBody CollectOrderRequest collectOrderRequest) {
if (StrUtil.isEmpty(collectOrderRequest.getBillNo()))
return ResultVOUtils.error(500, "单据号不能为空");
Boolean aBoolean = ioCollectOrderBackupService.orderUpload(collectOrderRequest.getBillNo());
Boolean aBoolean = ioCollectOrderBackupService.orderUpload(collectOrderRequest.getBillNo(), getUser());
if (!aBoolean) {
return ResultVOUtils.error("上传失败");
}
@ -107,6 +107,7 @@ public class IoCollectOrderBackupController extends BaseController {
/**
*
*
* @param collectOrderBizRequest
* @return
*/

@ -409,7 +409,7 @@ public class IoCollectOrderController extends BaseController {
}
}
collectOrderRequest.setUpdateUser(getUserId());
collectOrderService.finishOrder(collectOrderRequest);
collectOrderService.finishOrder(collectOrderRequest,getUser());
return ResultVOUtils.success();
}

@ -2055,7 +2055,11 @@ public class IoCodeTempController extends BaseController {
if (codeTempEntity.getMyCount() > 1) {
codeTempEntity.setCount(codeTempEntity.getMyCount() - 1);
codeTempEntity.setReCount(codeTempEntity.getMyReCount() - udiCalCountUtil.getActCount(bussinessTypeEntity, udiRelevanceResponses));
if (bussinessTypeEntity.isUse()) {
codeTempEntity.setReCount(codeTempEntity.getMyReCount() - udiCalCountUtil.getUseActCount(udiRelevanceResponses));
} else {
codeTempEntity.setReCount(codeTempEntity.getMyReCount() - udiCalCountUtil.getCirActCount(udiRelevanceResponses));
}
codeTempService.updateById(codeTempEntity);
} else {
codeTempService.deleteById(id);
@ -2069,7 +2073,16 @@ public class IoCodeTempController extends BaseController {
int orderReCount = IntUtil.value(orderDetailCodeEntity.getReCount());
if (orderCount > 1) {
orderDetailCodeEntity.setCount(orderCount - 1);
orderDetailCodeEntity.setReCount(orderReCount - udiCalCountUtil.getActCount(bussinessTypeEntity, udiRelevanceResponses));
if (bussinessTypeEntity.isUse()) {
orderDetailCodeEntity.setReCount(orderReCount - udiCalCountUtil.getUseActCount(udiRelevanceResponses));
// codeTempEntity.setReCount(codeTempEntity.getMyReCount() - udiCalCountUtil.getUseActCount(udiRelevanceResponses);
} else {
orderDetailCodeEntity.setReCount(orderReCount - udiCalCountUtil.getCirActCount(udiRelevanceResponses));
// codeTempEntity.setReCount(codeTempEntity.getMyReCount() - udiCalCountUtil.getCirActCount(udiRelevanceResponses);
}
ioOrderDetailCodeService.update(orderDetailCodeEntity);
} else {
ioOrderDetailCodeService.deleteById(orderDetailCodeEntity.getId());
@ -2133,9 +2146,16 @@ public class IoCodeTempController extends BaseController {
}
IoCodeTempEntity tempEntity = codeTempService.selectById(codeTempEntity.getId());
codeTempEntity.setReCount(codeTempEntity.getReCount() * udiCalCountUtil.getActCount(codeTempEntity.getNameCode()));
// codeTempEntity.setReCount(codeTempEntity.getReCount() * udiCalCountUtil.getActCount(codeTempEntity.getNameCode()));
List<UdiRelevanceResponse> udiRelevanceResponses = udiRelevanceService.selectGroupByNameCode(codeTempEntity.getNameCode(), null);
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(codeTempEntity.getAction());
if (bussinessTypeEntity.isUse()) {
codeTempEntity.setReCount(codeTempEntity.getMyCount() * udiCalCountUtil.getUseActCount(udiRelevanceResponses.get(0)));
} else {
codeTempEntity.setReCount(codeTempEntity.getMyCount() * udiCalCountUtil.getCirActCount(udiRelevanceResponses.get(0)));
}
codeTempService.updateById(codeTempEntity);
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(tempEntity.getAction());
BaseResponse invRes = null;
if (bussinessTypeEntity.isScanPreIn() && checkDiAttribute(bussinessTypeEntity, codeTempEntity.getRelId(), 2)) { //校验预验收库存
invRes = checkInvService.checkPreInInv(bussinessTypeEntity, codeTempEntity, true);
@ -2420,11 +2440,20 @@ public class IoCodeTempController extends BaseController {
BeanUtils.copyProperties(exitLocalEntity, genDetaiEntity);
genDetaiEntity.setCount(1);
genDetaiEntity.setReCount(udiCalCountUtil.getActCount(udiRelevanceResponses.get(0)));
exitLocalEntity.setCount(exitLocalEntity.getMyCount() + 1);
exitLocalEntity.setReCount(exitLocalEntity.getMyCount() * udiCalCountUtil.getActCount(udiRelevanceResponses.get(0)));
if (bussinessTypeEntity.isUse()) {
genDetaiEntity.setReCount(udiCalCountUtil.getUseActCount(udiRelevanceResponses.get(0)));
} else {
genDetaiEntity.setReCount(udiCalCountUtil.getCirActCount(udiRelevanceResponses.get(0)));
}
exitLocalEntity.setCount(exitLocalEntity.getMyCount() + 1);
// exitLocalEntity.setReCount(exitLocalEntity.getMyCount() * udiCalCountUtil.getActCount(udiRelevanceResponses.get(0)));
if (bussinessTypeEntity.isUse()) {
exitLocalEntity.setReCount(exitLocalEntity.getMyReCount() * udiCalCountUtil.getUseActCount(udiRelevanceResponses.get(0)));
} else {
exitLocalEntity.setReCount(exitLocalEntity.getMyReCount() * udiCalCountUtil.getCirActCount(udiRelevanceResponses.get(0)));
}
if (!StringUtils.isBlank(exitLocalEntity.getSerialNo())) {
return ResultVOUtils.error(500, "重复扫码!");
@ -2517,7 +2546,12 @@ public class IoCodeTempController extends BaseController {
// return ResultVOUtils.error(500, "当前上货只允许录入拆零产品!");
// }
//计算实际数量
codeEnttity.setReCount(IntUtil.value(codeEnttity.getMyReCount()) + udiCalCountUtil.getActCount(udiRelevanceResponse));
if (bussinessTypeEntity.isUse()) {
codeEnttity.setReCount(codeEnttity.getMyReCount() * udiCalCountUtil.getUseActCount(udiRelevanceResponses.get(0)));
} else {
codeEnttity.setReCount(codeEnttity.getMyReCount() * udiCalCountUtil.getCirActCount(udiRelevanceResponses.get(0)));
}
} else if (udiRelevanceResponses.size() == 0) {
if (unitFk == null)
return ResultVOUtils.error(500, "耗材字典不存在此产品!");

@ -1,15 +1,23 @@
package com.glxp.api.controller.inout;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageInfo;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController;
import com.glxp.api.dao.basic.SysWorkplaceDocumentDao;
import com.glxp.api.entity.auth.SysWorkplace;
import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity;
import com.glxp.api.entity.basic.SysWorkplacePutRel;
import com.glxp.api.req.inout.IoSplitFifoInvRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.inout.IoSplitInvResponse;
import com.glxp.api.service.auth.SysWorkplaceService;
import com.glxp.api.service.basic.SysWorkplaceDocumentService;
import com.glxp.api.service.inout.IoSplitFifoInvService;
import com.glxp.api.service.thrsys.SysWorkplacePutRelService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
@ -24,9 +32,12 @@ import java.util.List;
@RestController
public class IoSplitFifoInvController extends BaseController {
@Resource
SysWorkplaceService sysWorkplaceService;
@Resource
IoSplitFifoInvService splitFifoInvService;
@Resource
SysWorkplacePutRelService sysWorkplacePutRelService;
/**
*
@ -39,6 +50,16 @@ public class IoSplitFifoInvController extends BaseController {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
//判断是否为采集工位
Long workPlaceCode = ioSplitFifoInvRequest.getWorkPlaceCode();
SysWorkplace workplace = sysWorkplaceService.getWorkplace(workPlaceCode);
Integer workPlaceClass = workplace.getWorkPlaceClass();
if (workPlaceClass == 1){
SysWorkplacePutRel putWorkPlace = sysWorkplacePutRelService.findPutWorkPlace(workPlaceCode, null);
ioSplitFifoInvRequest.setWorkPlaceCode(putWorkPlace.getWorkPlaceCode());
}
List<IoSplitInvResponse> splitCodeEntities = splitFifoInvService.filterList(ioSplitFifoInvRequest);
for (IoSplitInvResponse ioSplitCodeResponse : splitCodeEntities) {
if (StrUtil.isEmpty(ioSplitCodeResponse.getGgxh())) {

@ -332,7 +332,7 @@ public class BasicProductsEntity {
*
*/
@TableField(value = "updateTime")
private String updateTime;
private Date updateTime;
/**
*
@ -502,16 +502,50 @@ public class BasicProductsEntity {
@TableField(value = "pinyinInitial")
private String pinyinInitial;
@TableField(value = "majorStatus")
private String majorStatus;
@TableField(value = "zdcfsycs")
private Integer zdcfsycs;
@TableField(value = "sfwblztlcp")
private String sfwblztlcp;
@TableField(value = "cgzmraqxgxx")
private String cgzmraqxgxx;
@TableField(value = "sfbjwycxsy")
private String sfbjwycxsy;
@TableField(value = "sfwwjbz")
private String sfwwjbz;
@TableField(value = "syqsfxyjxmj")
private String syqsfxyjxmj;
@TableField(value = "mjfs")
private String mjfs;
@TableField(value = "categoryName")
private String categoryName;
@TableField(value = "destinyType")
private Integer destinyType;
/**
* 使
*/
@TableField(value = "bhltcjsl")
private Integer bhltcjsl;
/**
* 使
*/
@TableField(value = "bhsycjsl")
private Integer bhsycjsl;
//工位预警数量
@TableField(value = "workPlaceCount")
private Integer workPlaceCount;
/**
*
*/
@TableField(value = "xjdw")
private String xjdw;
public static final String COL_ID = "id";

@ -169,6 +169,10 @@ public class UdiRelevanceSaveRequest {
private Integer useLeverCount;
private Integer useLevel;
private Integer distributeLevel;
/**
* ()
*/
private Integer unpackUseTime;
//工位预警数
private Integer workPlaceCount;
/**

@ -7,13 +7,17 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.Constant;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.dao.collect.IoCollectOrderBackupMapper;
import com.glxp.api.dao.inout.IoCodeTempDao;
import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.basic.CompanyProductRelevanceEntity;
import com.glxp.api.entity.basic.EntrustReceEntity;
import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity;
import com.glxp.api.entity.collect.*;
import com.glxp.api.entity.inout.IoCodeTempEntity;
@ -24,19 +28,18 @@ import com.glxp.api.http.sync.SpGetHttpClient;
import com.glxp.api.req.collect.CollectOrderBizRequest;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.req.collect.PostCollectOrderRequest;
import com.glxp.api.req.inout.ReviewFinishRequest;
import com.glxp.api.res.basic.BasicSkPrescribeResponse;
import com.glxp.api.res.collect.CollectOrderBizResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.service.auth.impl.AuthAdminServiceImpl;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.basic.SysWorkplaceDocumentService;
import com.glxp.api.service.basic.UdiRlSupService;
import com.glxp.api.service.inout.IoAddInoutService;
import com.glxp.api.service.inout.IoCheckInoutService;
import com.glxp.api.service.inout.IoOrderService;
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 com.glxp.api.util.*;
import org.springframework.beans.BeanUtils;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
@ -85,7 +88,12 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
private ErpBasicClient erpBasicClient;
@Resource
private SpGetHttpClient spGetHttpClient;
SpGetHttpClient spGetHttp;
@Resource
private RedisUtil redisUtil;
public List<IoCollectOrderResponse> filterList(CollectOrderRequest collectOrderRequest) {
@ -146,7 +154,7 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
@Transactional(rollbackFor = Exception.class)
public void generateOrder(String billNo) {
public void generateOrder(String billNo,AuthAdmin authAdmin) {
IoCollectOrderBackup collectOrder = getByBillNo(billNo);
SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByWorkplaceCode(collectOrder.getWorkPlaceCode(), collectOrder.getBusType());
@ -191,14 +199,24 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
}
} else if (IntUtil.value(sysWorkplaceDocumentEntity.getIsMatching()) == 1 && sysWorkplaceDocumentEntity.getScanType() != 1) {
//更新单据为已完成
// IoOrderEntity orderEntity = orderService.findByBillNo(collectOrder.getBillNo());
//// orderEntity.setStatus(7);
//// orderEntity.setFromType(2);
//// orderEntity.setDealStatus(3);
//// orderEntity.setAuditTime(new Date());
//// orderService.update(orderEntity);
//// //推送自助平台
//// spGetHttpClient.updateCheckStatus(orderEntity, collectOrder.getCreateUser());
IoOrderEntity orderEntity = orderService.findByBillNo(collectOrder.getBillNo());
orderEntity.setStatus(7);
orderEntity.setFromType(2);
orderEntity.setDealStatus(3);
orderEntity.setAuditTime(new Date());
orderService.update(orderEntity);
//推送自助平台
spGetHttpClient.updateCheckStatus(orderEntity, collectOrder.getCreateUser());
if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_CHECK_REW) {
if (orderEntity.getFromType() == ConstantStatus.FROM_UDISP) {
ReviewFinishRequest reviewFinishRequest = new ReviewFinishRequest();
reviewFinishRequest.setOrderId(collectOrder.getBillNo());
BaseResponse<String> stringBaseResponse = spGetHttp.reviewOrder(reviewFinishRequest, authAdmin.getId() + "");
}
updateReview(authAdmin,orderEntity);
}
} else if (IntUtil.value(sysWorkplaceDocumentEntity.getIsMatching()) == 0) {
//todo 根据单据类型上传医保或者第三方系统
PostCollectOrderRequest orderRequest = new PostCollectOrderRequest();
@ -265,11 +283,11 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
@Transactional(rollbackFor = Exception.class)
public Boolean orderUpload(String billNo) {
public Boolean orderUpload(String billNo,AuthAdmin authAdmin) {
IoCollectOrderBackup updateOrder = new IoCollectOrderBackup();
updateOrder.setBillNo(billNo);
try {
this.generateOrder(billNo);
this.generateOrder(billNo,authAdmin);
updateOrder.setUploadStatus(2);
} catch (Exception e) {
updateOrder.setUploadStatus(3);
@ -304,4 +322,17 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
}
return reList;
}
public BaseResponse updateReview(AuthAdmin authAdmin, IoOrderEntity orderEntity) {
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
orderEntity.setReviewUser((authAdmin.getId() + ""));
orderEntity.setUpdateTime(new Date());
orderEntity.setAuditTime(new Date());
orderService.update(orderEntity);
redisUtil.del(ConstantStatus.REDIS_BILLNO + orderEntity.getBillNo());
redisUtil.del(ConstantStatus.REDIS_BILLNO_CODES + orderEntity.getBillNo());
//验收完成->进入流程
ioCheckInoutService.checkSecond(orderEntity);
return ResultVOUtils.success("更新成功");
}
}

@ -22,6 +22,7 @@ import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.constant.ConstantType;
import com.glxp.api.dao.collect.IoCollectOrderMapper;
import com.glxp.api.dao.inout.IoCodeTempDao;
import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.auth.DeptEntity;
import com.glxp.api.entity.auth.SysWorkplace;
import com.glxp.api.entity.basic.*;
@ -143,6 +144,12 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
@Resource
IoCollectSetService collectSetService;
@Resource
SpGetHttpClient spGetHttpClient;
public IoCollectOrder getByBillNo(String billNo) {
@ -766,7 +773,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
SysWorkplacePutRelService sysWorkplacePutRelService;
public void finishOrder(CollectOrderRequest collectOrderRequest) {
public void finishOrder(CollectOrderRequest collectOrderRequest, AuthAdmin authAdmin) {
IoCollectOrder collectOrder = new IoCollectOrder();
BeanUtils.copyProperties(collectOrderRequest, collectOrder);
collectOrder.setTagStatus(3);
@ -794,7 +801,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
collectCodeService.insertCodesByBill(collectOrderRequest.getBillNo());
//更新数据至第三方系统
//单据更新
ioCollectOrderBackupService.generateOrder(collectOrder.getBillNo());
ioCollectOrderBackupService.generateOrder(collectOrder.getBillNo(),authAdmin);
// spGetHttpClient.updateCheckStatus(orderEntity,collectOrder.getCreateUser());
});
}

@ -98,8 +98,8 @@ public class IoSplitFifoCodeService extends ServiceImpl<IoSplitFifoCodeMapper, I
public IoSplitFifoCodeEntity findByCode(String code, Long workPlaceCode) {
if (workPlaceCode == null)
return null;
// if (workPlaceCode == null)
// return null;
return splitFifoCodeMapper.selectOne(
new LambdaQueryWrapper<IoSplitFifoCodeEntity>()
.eq(IoSplitFifoCodeEntity::getCode, code)

@ -25,7 +25,13 @@ public class SysWorkplacePutRelService extends ServiceImpl<SysWorkplacePutRelMap
@Resource
private SysWorkplacePutRelMapper sysWorkplacePutRelMapper;
/**
*
*
* @param workPlaceCode
* @param busType
* @return
*/
public SysWorkplacePutRel findPutWorkPlace(Long workPlaceCode, String busType) {
List<SysWorkplacePutRel> sysWorkplacePutRelList = list(new LambdaQueryWrapper<SysWorkplacePutRel>().eq(SysWorkplacePutRel::getCollectWorkCode, workPlaceCode).eq(busType != null, SysWorkplacePutRel::getCollectBusType, busType));
if (CollUtil.isNotEmpty(sysWorkplacePutRelList))

@ -81,7 +81,7 @@ public class AsyncIoCollectOrderUploadTask implements SchedulingConfigurer {
List<IoCollectOrderResponse> orderResponses = ioCollectOrderBackupService.filterList(collectOrderRequest);
if (CollUtil.isNotEmpty(orderResponses)){
orderResponses.forEach( item -> {
ioCollectOrderBackupService.orderUpload(item.getBillNo());
ioCollectOrderBackupService.orderUpload(item.getBillNo(),null);
});
}

@ -1540,6 +1540,9 @@
<if test="distributeLevel != null">
distributeLevel=#{distributeLevel},
</if>
<if test="unpackUseTime != null">
unpackUseTime=#{unpackUseTime},
</if>
</trim>
WHERE id = #{id}
</update>

@ -24,7 +24,7 @@
ico.fromCorpName,
ico.tagMsg,
sys_workplace_document.busName busTypeName,
thr_bustype_origin.name actionName,
COALESCE(thr_bustype_origin.name, basic_bussiness_type.name) as actionName,
sw.workplaceName,
ico.id,
ico.orderTime,
@ -40,6 +40,7 @@
FROM io_collect_order_origin ico
left join sys_workplace_document on ico.busType = sys_workplace_document.documentTypeCode
left join thr_bustype_origin on sys_workplace_document.documentTypeCode = thr_bustype_origin.action
left join basic_bussiness_type on sys_workplace_document.documentTypeCode = basic_bussiness_type.action
left join basic_corp bc on ico.fromCorp = bc.erpId
left join sys_workplace sw on ico.workPlaceCode = sw.workplaceId

Loading…
Cancel
Save