同步设置,扫码校验

master
anthonyywj2 3 years ago
parent 58e4cda5bd
commit 12125d7e73

@ -2,8 +2,10 @@ package com.glxp.api.admin.controller.info;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.glxp.api.admin.annotation.AuthRuleAnnotation; import com.glxp.api.admin.annotation.AuthRuleAnnotation;
import com.glxp.api.admin.entity.info.SyncDataBustypeEntity;
import com.glxp.api.admin.entity.info.SyncDataSetEntity; import com.glxp.api.admin.entity.info.SyncDataSetEntity;
import com.glxp.api.admin.res.info.SyncDataSetResponse; import com.glxp.api.admin.res.info.SyncDataSetResponse;
import com.glxp.api.admin.service.info.SyncDataBustypeService;
import com.glxp.api.admin.service.info.SyncDataSetService; import com.glxp.api.admin.service.info.SyncDataSetService;
import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
@ -16,6 +18,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List;
@RestController @RestController
public class SyncDataSetController { public class SyncDataSetController {
@ -23,6 +26,8 @@ public class SyncDataSetController {
@Resource @Resource
private SyncDataSetService syncDataSetService; private SyncDataSetService syncDataSetService;
@Resource
private SyncDataBustypeService syncDataBustypeService;
@AuthRuleAnnotation("system/param/syncData/config") @AuthRuleAnnotation("system/param/syncData/config")
@ -31,15 +36,16 @@ public class SyncDataSetController {
return ResultVOUtils.success(syncDataSetService.selectSet()); return ResultVOUtils.success(syncDataSetService.selectSet());
} }
@AuthRuleAnnotation("system/param/syncData/save") @AuthRuleAnnotation("system/param/syncData/save")
@PostMapping("/system/param/syncData/save") @PostMapping("/system/param/syncData/save")
public BaseResponse save(@RequestBody @Valid SyncDataSetResponse syncDataSetResponse public BaseResponse save(@RequestBody @Valid SyncDataSetResponse syncDataSetResponse
) { ) {
SyncDataSetEntity syncDataSetEntity = new SyncDataSetEntity(); SyncDataSetEntity syncDataSetEntity = new SyncDataSetEntity();
BeanUtils.copyProperties(syncDataSetResponse, syncDataSetEntity); BeanUtils.copyProperties(syncDataSetResponse, syncDataSetEntity);
syncDataSetEntity.setBusTypes(JSON.toJSONString(syncDataSetResponse.getBusTypes())); List<SyncDataBustypeEntity> busTypes = syncDataSetResponse.getBusTypes();
syncDataBustypeService.deleteAll();
syncDataBustypeService.inserts(busTypes);
syncDataSetEntity.setBusTypes(null);
boolean b = syncDataSetService.insert(syncDataSetEntity); boolean b = syncDataSetService.insert(syncDataSetEntity);
if (!b) { if (!b) {
return ResultVOUtils.error(ResultEnum.NOT_NETWORK); return ResultVOUtils.error(ResultEnum.NOT_NETWORK);

@ -505,7 +505,7 @@ public class WareHouseController {
} }
if (checkSuccess) { if (checkSuccess) {
if (code.endsWith("\u001D")) { if (code.endsWith("\u001D")) {
code = code.replace("\u001D", ""); code = code.substring(0, code.length() - "\u001D".length());
} }
return ResultVOUtils.success(code); return ResultVOUtils.success(code);
} else { } else {
@ -860,6 +860,9 @@ public class WareHouseController {
if (!StrUtil.emptyIfNull(originUdiEntity.getExpireDate()).equals(StrUtil.emptyIfNull(udiEntity.getExpireDate()))) { if (!StrUtil.emptyIfNull(originUdiEntity.getExpireDate()).equals(StrUtil.emptyIfNull(udiEntity.getExpireDate()))) {
continue; continue;
} }
if (!StrUtil.emptyIfNull(originUdiEntity.getSerialNo()).equals(StrUtil.emptyIfNull(udiEntity.getSerialNo()))) {
continue;
}
return drugCodeSelectEntity; return drugCodeSelectEntity;
} }
return null; return null;

@ -0,0 +1,18 @@
package com.glxp.api.admin.dao.info;
import com.glxp.api.admin.entity.info.SyncDataBustypeEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface SyncDataBustypeDao {
List<SyncDataBustypeEntity> findAll();
boolean deleteAll();
void inserts(@Param("syncDataBustypeEntities") List<SyncDataBustypeEntity> syncDataBustypeEntities);
}

@ -0,0 +1,14 @@
package com.glxp.api.admin.entity.info;
import lombok.Data;
@Data
public class SyncDataBustypeEntity {
private Integer id;
private String action;
private String name;
private boolean outChange;
}

@ -55,4 +55,6 @@ public class OrderEntity {
//复制单号,多个单号之间使用英文逗号,分隔 //复制单号,多个单号之间使用英文逗号,分隔
private String replicateNo; private String replicateNo;
private boolean syncOutChange;
} }

@ -1,5 +1,6 @@
package com.glxp.api.admin.res.info; package com.glxp.api.admin.res.info;
import com.glxp.api.admin.entity.info.SyncDataBustypeEntity;
import lombok.Data; import lombok.Data;
import java.util.List; import java.util.List;
@ -22,17 +23,17 @@ public class SyncDataSetResponse {
private boolean orderScanFinish; private boolean orderScanFinish;
private boolean orderUnReceive; private boolean orderUnReceive;
private boolean orderUnCheck; private boolean orderUnCheck;
private List<String> busTypes;
private Integer syncTime; private Integer syncTime;
private String syncIp; private String syncIp;
private Integer syncDownloadTime; //定时下载时间 private Integer syncDownloadTime; //定时下载时间
private boolean sysUser; private boolean sysUser;
private List<SyncDataBustypeEntity> busTypes;
private Integer orderSyncTime;
private Integer orderSyncDlTime;
private String orderSyncStart; private String orderSyncStart;
private String basicSyncStart; private String basicSyncStart;
private boolean entrustAction; private boolean entrustAction;
private Integer orderSyncTime;
private Integer orderSyncDlTime;
} }

@ -0,0 +1,16 @@
package com.glxp.api.admin.service.info;
import com.glxp.api.admin.entity.info.SyncDataBustypeEntity;
import java.util.List;
public interface SyncDataBustypeService {
List<SyncDataBustypeEntity> findAll();
boolean deleteAll();
void inserts(List<SyncDataBustypeEntity> syncDataBustypeEntities);
}

@ -0,0 +1,31 @@
package com.glxp.api.admin.service.info.impl;
import com.glxp.api.admin.dao.info.SyncDataBustypeDao;
import com.glxp.api.admin.entity.info.SyncDataBustypeEntity;
import com.glxp.api.admin.service.info.SyncDataBustypeService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class SyncDataBustypeServiceImpl implements SyncDataBustypeService {
@Resource
SyncDataBustypeDao syncDataBustypeDao;
@Override
public List<SyncDataBustypeEntity> findAll() {
return syncDataBustypeDao.findAll();
}
@Override
public boolean deleteAll() {
return syncDataBustypeDao.deleteAll();
}
@Override
public void inserts(List<SyncDataBustypeEntity> syncDataBustypeEntities) {
syncDataBustypeDao.inserts(syncDataBustypeEntities);
}
}

@ -2,8 +2,10 @@ package com.glxp.api.admin.service.info.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.glxp.api.admin.dao.info.SyncDataSetDao; import com.glxp.api.admin.dao.info.SyncDataSetDao;
import com.glxp.api.admin.entity.info.SyncDataBustypeEntity;
import com.glxp.api.admin.entity.info.SyncDataSetEntity; import com.glxp.api.admin.entity.info.SyncDataSetEntity;
import com.glxp.api.admin.res.info.SyncDataSetResponse; import com.glxp.api.admin.res.info.SyncDataSetResponse;
import com.glxp.api.admin.service.info.SyncDataBustypeService;
import com.glxp.api.admin.service.info.SyncDataSetService; import com.glxp.api.admin.service.info.SyncDataSetService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -16,6 +18,8 @@ public class SyncDataSetServiceImpl implements SyncDataSetService {
@Resource @Resource
SyncDataSetDao syncDataSetDao; SyncDataSetDao syncDataSetDao;
@Resource
SyncDataBustypeService syncDataBustypeService;
@Override @Override
public SyncDataSetEntity findSet() { public SyncDataSetEntity findSet() {
@ -25,14 +29,11 @@ public class SyncDataSetServiceImpl implements SyncDataSetService {
@Override @Override
public SyncDataSetResponse selectSet() { public SyncDataSetResponse selectSet() {
SyncDataSetEntity syncDataSetEntity = syncDataSetDao.selectSet(); SyncDataSetEntity syncDataSetEntity = syncDataSetDao.selectSet();
SyncDataSetResponse syncDataSetResponse = new SyncDataSetResponse(); SyncDataSetResponse syncDataSetResponse = new SyncDataSetResponse();
BeanUtils.copyProperties(syncDataSetEntity, syncDataSetResponse); BeanUtils.copyProperties(syncDataSetEntity, syncDataSetResponse);
List<String> busTypes = JSON.parseArray(syncDataSetEntity.getBusTypes(), String.class); List<SyncDataBustypeEntity> syncDataBustypeEntities = syncDataBustypeService.findAll();
syncDataSetResponse.setBusTypes(busTypes); syncDataSetResponse.setBusTypes(syncDataBustypeEntities);
return syncDataSetResponse; return syncDataSetResponse;
} }

@ -107,7 +107,7 @@ public class InvPreInProductDetailServiceImpl implements InvPreInProductDetailSe
List<InvProductDetailEntity> datas = invPreInProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest); List<InvProductDetailEntity> datas = invPreInProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest);
if (CollUtil.isEmpty(datas)) { if (CollUtil.isEmpty(datas)) {
filterInvProductDetailRequest.setOriginCode(null); filterInvProductDetailRequest.setOriginCode(null);
UdiEntity udiEntity = FilterUdiUtils.getGS1Udi(code); UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (StrUtil.isNotEmpty(udiEntity.getBatchNo())) if (StrUtil.isNotEmpty(udiEntity.getBatchNo()))
filterInvProductDetailRequest.setBatchNo(udiEntity.getBatchNo()); filterInvProductDetailRequest.setBatchNo(udiEntity.getBatchNo());
else else

@ -103,7 +103,7 @@ public class InvPreProductDetailServiceImpl implements InvPreProductDetailServic
List<InvProductDetailEntity> datas = invPreProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest); List<InvProductDetailEntity> datas = invPreProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest);
if (CollUtil.isEmpty(datas)) { if (CollUtil.isEmpty(datas)) {
filterInvProductDetailRequest.setOriginCode(null); filterInvProductDetailRequest.setOriginCode(null);
UdiEntity udiEntity = FilterUdiUtils.getGS1Udi(code); UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (StrUtil.isNotEmpty(udiEntity.getBatchNo())) if (StrUtil.isNotEmpty(udiEntity.getBatchNo()))
filterInvProductDetailRequest.setBatchNo(udiEntity.getBatchNo()); filterInvProductDetailRequest.setBatchNo(udiEntity.getBatchNo());
else else

@ -111,7 +111,7 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
List<InvProductDetailEntity> datas = invProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest); List<InvProductDetailEntity> datas = invProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest);
if (CollUtil.isEmpty(datas)) { if (CollUtil.isEmpty(datas)) {
filterInvProductDetailRequest.setOriginCode(null); filterInvProductDetailRequest.setOriginCode(null);
UdiEntity udiEntity = FilterUdiUtils.getGS1Udi(code); UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (StrUtil.isNotEmpty(udiEntity.getBatchNo())) if (StrUtil.isNotEmpty(udiEntity.getBatchNo()))
filterInvProductDetailRequest.setBatchNo(udiEntity.getBatchNo()); filterInvProductDetailRequest.setBatchNo(udiEntity.getBatchNo());
else else

@ -445,7 +445,7 @@ public class IoTransInoutService {
public String checkOriginCode(WarehouseEntity warehouseEntity, BussinessTypeEntity bussinessTypeEntity) { public String checkOriginCode(WarehouseEntity warehouseEntity, BussinessTypeEntity bussinessTypeEntity) {
UdiEntity udiEntity = FilterUdiUtils.getGS1Udi(warehouseEntity.getCode()); UdiEntity udiEntity = FilterUdiUtils.getUdi(warehouseEntity.getCode());
//校验条码的完整性 //校验条码的完整性
String errMsg = ""; String errMsg = "";
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByNameCode(udiEntity.getUdi()); UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByNameCode(udiEntity.getUdi());

@ -7,6 +7,7 @@ import com.glxp.api.admin.dao.basic.UdiInfoDao;
import com.glxp.api.admin.dao.info.SyncDataSetDao; import com.glxp.api.admin.dao.info.SyncDataSetDao;
import com.glxp.api.admin.entity.auth.AuthAdmin; import com.glxp.api.admin.entity.auth.AuthAdmin;
import com.glxp.api.admin.entity.basic.*; import com.glxp.api.admin.entity.basic.*;
import com.glxp.api.admin.entity.info.SyncDataBustypeEntity;
import com.glxp.api.admin.entity.info.SyncDataSetEntity; import com.glxp.api.admin.entity.info.SyncDataSetEntity;
import com.glxp.api.admin.entity.inout.*; import com.glxp.api.admin.entity.inout.*;
import com.glxp.api.admin.entity.inventory.InvWarehouseEntity; import com.glxp.api.admin.entity.inventory.InvWarehouseEntity;
@ -293,13 +294,23 @@ public class UpBasicService {
if (syncDataSetEntity.isOrderUnReceive()) { if (syncDataSetEntity.isOrderUnReceive()) {
OrderQueryRequest orderFilterRequest = new OrderQueryRequest(); OrderQueryRequest orderFilterRequest = new OrderQueryRequest();
BeanUtils.copyProperties(spsSyncDataRequest, orderFilterRequest); BeanUtils.copyProperties(spsSyncDataRequest, orderFilterRequest);
orderFilterRequest.setFilterActions(syncDataSetEntity.getBusTypes());
if (CollUtil.isNotEmpty(orderFilterRequest.getFilterActions())) { if (CollUtil.isNotEmpty(syncDataSetEntity.getBusTypes())) {
for (SyncDataBustypeEntity syncDataBustypeEntity : syncDataSetEntity.getBusTypes()) {
List<String> filterList = new ArrayList<>();
filterList.add(syncDataBustypeEntity.getAction());
orderFilterRequest.setFilterActions(filterList);
orderFilterRequest.setStatus(ConstantStatus.ORDER_STATUS_SUCCESS); orderFilterRequest.setStatus(ConstantStatus.ORDER_STATUS_SUCCESS);
orderFilterRequest.setReceiveStatus(ConstantStatus.RECEIVE_UN); orderFilterRequest.setReceiveStatus(ConstantStatus.RECEIVE_UN);
List<OrderEntity> temps = orderService.findAllByTime(orderFilterRequest); List<OrderEntity> temps = orderService.findAllByTime(orderFilterRequest);
if (CollUtil.isNotEmpty(temps)) { if (CollUtil.isNotEmpty(temps)) {
orderEntities.addAll(temps); for (OrderEntity orderEntity : temps) {
if (orderEntity.getFromType() != ConstantStatus.FROM_UDISP) {
orderEntity.setSyncOutChange(syncDataBustypeEntity.isOutChange());
orderEntities.add(orderEntity);
}
}
}
} }
} }
@ -308,12 +319,23 @@ public class UpBasicService {
if (syncDataSetEntity.isOrderUnCheck()) { if (syncDataSetEntity.isOrderUnCheck()) {
OrderQueryRequest orderFilterRequest = new OrderQueryRequest(); OrderQueryRequest orderFilterRequest = new OrderQueryRequest();
BeanUtils.copyProperties(spsSyncDataRequest, orderFilterRequest); BeanUtils.copyProperties(spsSyncDataRequest, orderFilterRequest);
orderFilterRequest.setFilterActions(syncDataSetEntity.getBusTypes());
if (CollUtil.isNotEmpty(orderFilterRequest.getFilterActions())) { if (CollUtil.isNotEmpty(syncDataSetEntity.getBusTypes())) {
for (SyncDataBustypeEntity syncDataBustypeEntity : syncDataSetEntity.getBusTypes()) {
List<String> filterList = new ArrayList<>();
filterList.add(syncDataBustypeEntity.getAction());
orderFilterRequest.setFilterActions(filterList);
orderFilterRequest.setStatus(ConstantStatus.ORDER_STATUS_CHECK); orderFilterRequest.setStatus(ConstantStatus.ORDER_STATUS_CHECK);
List<OrderEntity> temps = orderService.findAllByTime(orderFilterRequest); List<OrderEntity> temps = orderService.findAllByTime(orderFilterRequest);
if (CollUtil.isNotEmpty(temps)) { if (CollUtil.isNotEmpty(temps)) {
orderEntities.addAll(temps); for (OrderEntity orderEntity : temps) {
if (orderEntity.getFromType() != ConstantStatus.FROM_UDISP) {
orderEntity.setSyncOutChange(syncDataBustypeEntity.isOutChange());
orderEntities.add(orderEntity);
}
}
}
} }
} }
@ -322,20 +344,26 @@ public class UpBasicService {
if (syncDataSetEntity.isOrderScanFinish()) { if (syncDataSetEntity.isOrderScanFinish()) {
OrderQueryRequest orderFilterRequest = new OrderQueryRequest(); OrderQueryRequest orderFilterRequest = new OrderQueryRequest();
BeanUtils.copyProperties(spsSyncDataRequest, orderFilterRequest); BeanUtils.copyProperties(spsSyncDataRequest, orderFilterRequest);
orderFilterRequest.setFilterActions(syncDataSetEntity.getBusTypes());
if (CollUtil.isNotEmpty(orderFilterRequest.getFilterActions())) { if (CollUtil.isNotEmpty(syncDataSetEntity.getBusTypes())) {
for (SyncDataBustypeEntity syncDataBustypeEntity : syncDataSetEntity.getBusTypes()) {
List<String> filterList = new ArrayList<>();
filterList.add(syncDataBustypeEntity.getAction());
orderFilterRequest.setFilterActions(filterList);
orderFilterRequest.setStatus(ConstantStatus.ORDER_STATUS_SUCCESS); orderFilterRequest.setStatus(ConstantStatus.ORDER_STATUS_SUCCESS);
orderFilterRequest.setReceiveStatus(ConstantStatus.RECEIVE_ED); orderFilterRequest.setReceiveStatus(ConstantStatus.RECEIVE_ED);
List<OrderEntity> temps = orderService.findAllByTime(orderFilterRequest); List<OrderEntity> temps = orderService.findAllByTime(orderFilterRequest);
if (CollUtil.isNotEmpty(temps)) { if (CollUtil.isNotEmpty(temps)) {
for (OrderEntity orderEntity : temps) { for (OrderEntity orderEntity : temps) {
if (orderEntity.getFromType() != ConstantStatus.FROM_UDISP) { if (orderEntity.getFromType() != ConstantStatus.FROM_UDISP) {
orderEntity.setSyncOutChange(syncDataBustypeEntity.isOutChange());
orderEntities.add(orderEntity); orderEntities.add(orderEntity);
} }
} }
} }
} }
} }
}
List<ErpOrderEntity> allOrderDetailEntityList = new ArrayList<>(); List<ErpOrderEntity> allOrderDetailEntityList = new ArrayList<>();
List<WarehouseEntity> warehouseEntityList = new ArrayList<>(); List<WarehouseEntity> warehouseEntityList = new ArrayList<>();

@ -0,0 +1,33 @@
<?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.admin.dao.info.SyncDataBustypeDao">
<select id="findAll"
resultType="com.glxp.api.admin.entity.info.SyncDataBustypeEntity">
SELECT *
FROM sync_data_bustypes
</select>
<delete id="deleteAll">
DELETE
FROM sync_data_bustypes
</delete>
<insert id="inserts" parameterType="com.glxp.api.admin.entity.info.SyncDataBustypeEntity">
insert INTO sync_data_bustypes
( `action`, `name`, outChange)
values
<foreach collection="syncDataBustypeEntities" item="item" index="index"
separator=",">
(
#{item.action}, #{item.name},
#{item.outChange})
</foreach>
</insert>
</mapper>
Loading…
Cancel
Save