4/9 优化1.0

dev_2.5_mutiscan
wangwei 3 months ago
parent cfff3b7b94
commit f9175b2f2d

@ -62,7 +62,10 @@ public class IoCollectCodeBackupController extends BaseController {
ioCollectCodeResponse.setManufactory(ioCollectCodeResponse.getYlqxzcrbarmc());
}
IoCollectOrder byBillNo = collectOrderService.getByBillNo(ioCollectCodeResponse.getBillNo());
if (byBillNo.getBillTime() != null){
ioCollectCodeResponse.setBillTime(byBillNo.getBillTime());
}
if (byBillNo.getRemark() != null) {
ioCollectCodeResponse.setRemark(byBillNo.getRemark());
}
@ -218,4 +221,26 @@ public class IoCollectCodeBackupController extends BaseController {
return ResultVOUtils.success(pageSimpleResponse);
}
/**
*
*/
@GetMapping("/udiwms/basic/collect/ioCollectCodeBackup/codeOrders")
public BaseResponse codeOrdersList(IoCollectCodeRequest IoCollectCodeRequest,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
List<IoCollectCodeResponse> collectOrderCodeManResponses = ioCollectCodeBackService.filterList(IoCollectCodeRequest);
for (IoCollectCodeResponse ioCollectCodeResponse : collectOrderCodeManResponses) {
if (StrUtil.isEmpty(ioCollectCodeResponse.getManufactory())) {
ioCollectCodeResponse.setManufactory(ioCollectCodeResponse.getYlqxzcrbarmc());
}
}
PageInfo<IoCollectCodeResponse> pageInfo = new PageInfo<>(collectOrderCodeManResponses);
PageSimpleResponse<IoCollectCodeResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(collectOrderCodeManResponses);
return ResultVOUtils.success(pageSimpleResponse);
}
}

@ -227,8 +227,10 @@ public class IoCollectOrderBackupController extends BaseController {
collectOrderBizRequest.setOrderIdFk(collectOrderRequest.getBillNo());
}
if (StrUtil.isNotEmpty(collectOrderRequest.getYbbm())){
collectOrderBizRequest.setOrderIdFk(collectOrderRequest.getYbbm());
collectOrderBizRequest.setYbbm(collectOrderRequest.getYbbm());
}
collectOrderBizRequest.setPage(collectOrderRequest.getPage());
collectOrderBizRequest.setLimit(collectOrderRequest.getLimit());
List<CollectOrderBizResponse> collectOrderBizResponses = ioCollectOrderBizBackupService.filterList(collectOrderBizRequest);
PageInfo<CollectOrderBizResponse> pageInfo = new PageInfo<>(collectOrderBizResponses);
PageSimpleResponse<CollectOrderBizResponse> pageSimpleResponse = new PageSimpleResponse<>();
@ -243,14 +245,34 @@ public class IoCollectOrderBackupController extends BaseController {
public BaseResponse orderStats(@RequestBody CollectOrderRequest collectOrderRequest) {
List<Long> workPlaceCodes = null;
List<UserWorkResponse> page;
// 上传医保不做登录权限限制
log.error("collectOrderRequest"+collectOrderRequest);
Page<IoCollectOrderResponse> orderResponses = ioCollectOrderBackupService.filterorderStatsList(collectOrderRequest);
return ResultVOUtils.success(orderResponses);
}
@GetMapping("/udiwms/basic/collect/ioCollectCodeBackup/getOrderCodeDetails")
public BaseResponse getOrderCodeDetails(CollectOrderRequest collectOrderRequest,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
CollectOrderBizRequest collectOrderBizRequest = new CollectOrderBizRequest();
if (StrUtil.isNotEmpty(collectOrderRequest.getBillNo())){
collectOrderBizRequest.setOrderIdFk(collectOrderRequest.getBillNo());
}
if (StrUtil.isNotEmpty(collectOrderRequest.getYbbm())){
collectOrderBizRequest.setYbbm(collectOrderRequest.getYbbm());
}
collectOrderBizRequest.setPage(collectOrderRequest.getPage());
collectOrderBizRequest.setLimit(collectOrderRequest.getLimit());
List<CollectOrderBizResponse> collectOrderBizResponses = ioCollectOrderBizBackupService.getOrderCodeDetails(collectOrderBizRequest);
PageInfo<CollectOrderBizResponse> pageInfo = new PageInfo<>(collectOrderBizResponses);
PageSimpleResponse<CollectOrderBizResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(collectOrderBizResponses);
return ResultVOUtils.success(pageSimpleResponse);
}
}

@ -15,5 +15,7 @@ public interface IoCollectOrderBizBackupMapper extends BaseMapper<IoCollectOrder
List<CollectOrderBizResponse> filterList(CollectOrderBizRequest collectOrderRequest);
List<CollectOrderBizResponse> getOrderCodeDetails(CollectOrderBizRequest collectOrderRequest);
}

@ -799,13 +799,11 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
Integer shouldCount = 0;
List<IoCollectOrderBizBackup> orderBizBackups = ioCollectOrderBizBackupService.listByBillNo(ioCollectOrderResponse.getBillNo());
// 遍历集合进行累加
for (IoCollectOrderBizBackup collectOrderBizResponse : orderBizBackups) {
newScanCount += (collectOrderBizResponse.getScanCount() != null) ? collectOrderBizResponse.getScanCount() : 0;
shouldCount += getCount(collectOrderBizResponse);
}
// 设置计算结果
ioCollectOrderResponse.setScanCount(newScanCount);
ioCollectOrderResponse.setShouldCount(shouldCount);
ioCollectOrderResponse.setScanRate(getScanRate(shouldCount, newScanCount));
@ -824,20 +822,16 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
}
}
// 获取分页参数
Integer pageNum = collectOrderRequest.getPage() != null ? collectOrderRequest.getPage() : 1;
Integer pageSize = collectOrderRequest.getLimit() != null ? collectOrderRequest.getLimit() : 10;
// 计算分页信息
int total = filteredData.size();
int totalPages = (int) Math.ceil((double) total / pageSize);
int start = (pageNum - 1) * pageSize;
int end = Math.min(start + pageSize, total);
// 截取分页数据
List<IoCollectOrderResponse> pageData = filteredData.subList(start, end);
// 创建分页对象
Page<IoCollectOrderResponse> page = new Page<>();
page.setCurrent(pageNum);
page.setSize(pageSize);

@ -57,4 +57,16 @@ public class IoCollectOrderBizBackupService extends ServiceImpl<IoCollectOrderBi
}
public List<CollectOrderBizResponse> getOrderCodeDetails(CollectOrderBizRequest collectOrderRequest) {
if (collectOrderRequest == null) {
return Collections.emptyList();
}
if (collectOrderRequest.getPage() != null) {
int offset = (collectOrderRequest.getPage() - 1) * collectOrderRequest.getLimit();
PageHelper.offsetPage(offset, collectOrderRequest.getLimit());
}
List<CollectOrderBizResponse> data = ioCollectOrderBizBackupMapper.getOrderCodeDetails(collectOrderRequest);
return data;
}
}

@ -174,13 +174,13 @@ public class IoCollectOrderBizService extends ServiceImpl<IoCollectOrderBizMappe
.eq(IoCollectCodeBackup::getRelId, collectOrderBizResponse.getRelId()));
//获取整取
List<IoCollectCodeBackup> fullList = list.stream()
.filter(item -> item.getReCount() == 0 || item.getReCount() == null)
.filter(item -> item.getReCount() == null || item.getReCount() == 0)
.collect(Collectors.toList());
//拆零
List<IoCollectCodeBackup> spiltList = list.stream()
.filter(item -> {
Integer reCount = item.getReCount();
Integer reCount = item.getReCount() == null ? 0 : item.getReCount();
return reCount > 0;
})
.collect(Collectors.toList());
@ -204,11 +204,30 @@ public class IoCollectOrderBizService extends ServiceImpl<IoCollectOrderBizMappe
}
}
List<BasicProductsEntity> productList = basicProductsDao.selectList(
new LambdaQueryWrapper<BasicProductsEntity>()
.eq(BasicProductsEntity::getYbbm, collectOrderBizResponse.getYbbm())
.eq(BasicProductsEntity::getPackLevel, "1"));
BasicProductsEntity product = productList.get(0);
Integer myBhxjsl = product.getBhxjsl();
Integer shouldCount = 0;
if (fullList.size() > 0){
shouldCount = fullList.size();
double quotient = (double) collectOrderBizResponse.getCount() / myBhxjsl;
int integerPart = (int) quotient;
if (quotient == integerPart) {
if (integerPart == 0) {
if (collectOrderBizResponse.getAutoTagStatus() != 2) {
shouldCount = 1;
}
} else {
shouldCount = integerPart;
}
} else {
if (IntUtil.value(collectOrderBizResponse.getAutoTagStatus()) == 2) {
shouldCount = 0;
} else {
shouldCount = integerPart + 1;
}
}
collectOrderBizResponse.setShouldCount(shouldCount);
collectOrderBizResponse.setShouldCount(shouldCount);
if (collectOrderBizResponse.getScanCount() == null) {
collectOrderBizResponse.setScanCount(0);

@ -1171,7 +1171,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
//拆零
List<IoCollectCodeBackup> spiltList = ioCollectCodeBackups.stream()
.filter(item -> {
Integer reCount = item.getReCount();
Integer reCount = item.getReCount() == null ? 0 : item.getReCount() ;
return reCount > 0;
})
.collect(Collectors.toList());

@ -129,8 +129,10 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
//3.如果拆零表不为空,则开始扣除数量
int count = 0;
int unCount = 0; //剩余未扣减数量
int restCount = 0;
unCount = IntUtil.value(collectOrderBiz.getUnTagCount());
for (IoSplitCodeEntity ioSplitCodeEntity : ioSplitCodeEntities) {
restCount = unCount;
count = IntUtil.value(ioSplitCodeEntity.getRemainCount()) - unCount;
if (count > 0) {
ioSplitCodeEntity.setRemainCount(count);
@ -143,7 +145,24 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
ioSplitCodeEntity.setRemainCount(0);
unCount = -count;
}
collectOrderCodeAutoService.save(IoCollectOrderCodeAuto.builder().codeIdFk(ioSplitCodeEntity.getId()).udiCode(ioSplitCodeEntity.getCode()).orderIdFk(collectOrder.getBillNo()).batchNo(ioSplitCodeEntity.getBatchNo()).productDate(ioSplitCodeEntity.getProduceDate()).expireDate(ioSplitCodeEntity.getExpireDate()).serialNo(ioSplitCodeEntity.getSerialNo()).relId(collectOrderBiz.getRelId()).bizIdFk(collectOrderBiz.getId()).fifoSplit(1).createTime(new Date()).updateTime(new Date()).count(count > 0 ? count : 0).reCount(unCount).build());
collectOrderCodeAutoService.save(
IoCollectOrderCodeAuto
.builder()
.codeIdFk(ioSplitCodeEntity.getId())
.udiCode(ioSplitCodeEntity.getCode())
.orderIdFk(collectOrder.getBillNo())
.batchNo(ioSplitCodeEntity.getBatchNo())
.productDate(ioSplitCodeEntity.getProduceDate())
.expireDate(ioSplitCodeEntity.getExpireDate())
.serialNo(ioSplitCodeEntity.getSerialNo())
.relId(collectOrderBiz.getRelId())
.bizIdFk(collectOrderBiz.getId())
.fifoSplit(1)
.createTime(new Date())
.updateTime(new Date())
.count(count > 0 ? count : 0)
.reCount(restCount)
.build());
splitCodeMapper.updateById(ioSplitCodeEntity);
}
@ -330,7 +349,22 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
for (int i = 0; i < indexFlag; i++) {
IoSplitFifoCodeEntity splitFifoCodeEntity = ioSplitFifoCodeEntities.get(i);
collectOrderBiz.setUnTagCount(IntUtil.value(collectOrderBiz.getUnTagCount()) - IntUtil.value(udiRelevanceResponse.getBhxjsl()));
collectOrderCodeAutoService.save(IoCollectOrderCodeAuto.builder().codeIdFk(splitFifoCodeEntity.getId()).udiCode(splitFifoCodeEntity.getCode()).orderIdFk(collectOrder.getBillNo()).batchNo(splitFifoCodeEntity.getBatchNo()).productDate(splitFifoCodeEntity.getProduceDate()).expireDate(splitFifoCodeEntity.getExpireDate()).serialNo(splitFifoCodeEntity.getSerialNo()).relId(collectOrderBiz.getRelId()).bizIdFk(collectOrderBiz.getId()).fifoSplit(2).createTime(new Date()).updateTime(new Date()).build());
collectOrderCodeAutoService.save(
IoCollectOrderCodeAuto.builder()
.codeIdFk(splitFifoCodeEntity.getId())
.udiCode(splitFifoCodeEntity.getCode())
.orderIdFk(collectOrder.getBillNo())
.batchNo(splitFifoCodeEntity.getBatchNo())
.productDate(splitFifoCodeEntity.getProduceDate())
.expireDate(splitFifoCodeEntity.getExpireDate())
.serialNo(splitFifoCodeEntity.getSerialNo())
.relId(collectOrderBiz.getRelId())
.bizIdFk(collectOrderBiz.getId())
.fifoSplit(2)
.createTime(new Date())
.updateTime(new Date())
.reCount(0)
.build());
splitFifoCodeService.removeById(splitFifoCodeEntity.getId());
IoSplitFifoInv splitFifoInv = splitFifoInvService.findByFifoCode(splitFifoCodeEntity);
if (splitFifoInv != null) {

@ -44,4 +44,47 @@
group by icobb.relId,icobb.batchNo
</select>
<select id="getOrderCodeDetails" resultType="com.glxp.api.res.collect.CollectOrderBizResponse">
SELECT icobb.*,
bp.nameCode
diCode,
bp.zczbhhzbapzbh,
bp.packUnit,
bp.prepnSpec,
bp.manufactory,
bu.notCodeType,
COALESCE(bp.bzgg,bp.ggxh) AS spec
FROM io_collect_order_biz_backup icobb
left join basic_udirel bu on icobb.relId = bu.id
left join basic_products bp on bu.uuid = bp.uuid
<where>
<if test="thrCode != '' and thrCode != null">
AND icobb.thrCode LIKE concat('%', #{thrCode}, '%')
</if>
<if test="orderIdFk != null and orderIdFk != ''">
AND icobb.orderIdFk = #{orderIdFk}
</if>
<if test="relId != null">
AND icobb.relId = #{relId}
</if>
<if test="cpmctymc != null and cpmctymc != ''">
AND icobb.cpmctymc LIKE concat( #{cpmctymc}, '%')
</if>
<if test="ybbm != null and ybbm != ''">
AND bp.ybbm LIKE concat('%', #{ybbm}, '%')
</if>
<if test="unionCode != '' and unionCode != null">
and (
bp.nameCode LIKE concat( #{unionCode}, '%')
or bp.ybbm LIKE concat(#{unionCode}, '%')
or bp.sptm LIKE concat('%', #{unionCode}, '%'))
</if>
<if test="ggxh != '' and ggxh != null">
AND ggxh LIKE concat( #{ggxh}, '%')
</if>
</where>
group by icobb.relId,icobb.batchNo
</select>
</mapper>

Loading…
Cancel
Save