系统优化

busUser
anthonyywj2 3 years ago
parent a0f831fc01
commit 6c2a2f57cd

@ -74,7 +74,7 @@ public class HdSchemaExecutor implements ApplicationRunner {
}
public void buildSchemas() {
// schema.add(new SchemaData("v2.1", "schema_v2.1.sql"));
schema.add(new SchemaData("v2.1", "schema_v2.1.sql"));
// schema.add(new SchemaData("v2.2", "schema_v2.2.sql"));
// schema.add(new SchemaData("v2.3", "schema_v2.3.sql"));
}

@ -76,8 +76,9 @@ public class SpsSyncExportStatusController {
@PostMapping("/spssync/basic/udiinfo/updateStatus")
public BaseResponse updateStatus(@RequestBody BasicExportStatusEntity basicExportStatusEntity) {
basicExportStatusEntity.setEndTime(new Date());
if (StrUtil.isEmpty(basicExportStatusEntity.getReceiveStatus())) {
basicExportStatusEntity.setEndTime(new Date());
}
basicExportStatusEntity.setUpdateTime(new Date());
boolean b = basicExportService.updateExportStatus(basicExportStatusEntity);
if (b)

@ -86,7 +86,7 @@ public class UdiInfoController {
BeanUtils.copyProperties(filterUdiInfoRequest, productInfoFilterRequest);
if (StrUtil.isNotEmpty(nameCode)) {
productInfoFilterRequest.setNameCode(nameCode);
}else {
} else {
productInfoFilterRequest.setDiType("1");
}
try {
@ -128,6 +128,69 @@ public class UdiInfoController {
}
//校验UDI完整性
@AuthRuleAnnotation("")
@GetMapping("udidl/device/vailUdiCode")
public BaseResponse vailUdiCode(String udiCode) {
if (StrUtil.isEmpty(udiCode)) {
return ResultVOUtils.error(500, "查询条件不能为空!");
}
UdiEntity udiEntity = FilterUdiUtils.getUdi(udiCode);
if (udiEntity == null) {
return ResultVOUtils.error(500, "UDI码格式错误");
} else {
if (StrUtil.isNotEmpty(udiEntity.getUdi())) {
ProductInfoFilterRequest productInfoFilterRequest = new ProductInfoFilterRequest();
productInfoFilterRequest.setNameCode(udiEntity.getUdi());
List<ProductInfoEntity> productInfoEntityList = productInfoService.filterProductInfo(productInfoFilterRequest);
if (CollUtil.isEmpty(productInfoEntityList)) {
return ResultVOUtils.error(500, "未查询到该UDI码国家库产品信息");
} else {
ProductInfoEntity productInfoEntity = productInfoEntityList.get(0);
String lostMsg = "";
boolean checkSuccess = true;
if ("是".equals(productInfoEntity.getScbssfbhph()) && StrUtil.isEmpty(udiEntity.getBatchNo())) {
checkSuccess = false;
lostMsg = lostMsg + ",批次号";
}
if ("是".equals(productInfoEntity.getScbssfbhscrq()) && StrUtil.isEmpty(udiEntity.getProduceDate())) {
checkSuccess = false;
lostMsg = lostMsg + ",生产日期";
}
if ("是".equals(productInfoEntity.getScbssfbhsxrq()) && StrUtil.isEmpty(udiEntity.getExpireDate())) {
checkSuccess = false;
lostMsg = lostMsg + ",失效日期";
}
if (("是".equals(productInfoEntity.getScbssfbhxlh()) && StrUtil.isEmpty(udiEntity.getSerialNo()))
) {
checkSuccess = false;
lostMsg = lostMsg + ",序列号";
}
if (StrUtil.isNotEmpty(udiEntity.getSerialNo()) && udiEntity.getSerialNo().length() > 20) {
return ResultVOUtils.error(504, "序列号超出20位");
}
if (StrUtil.isNotEmpty(udiEntity.getBatchNo()) && udiEntity.getBatchNo().length() > 20) {
return ResultVOUtils.error(504, "批次号超出20位");
}
if (StrUtil.isEmpty(udiEntity.getSerialNo()) && StrUtil.isEmpty(udiEntity.getBatchNo())) {
checkSuccess = false;
}
if (checkSuccess) {
return ResultVOUtils.success(productInfoEntity);
} else {
return ResultVOUtils.error(500, "UDI码格式错误,缺少" + lostMsg.substring(1));
}
}
} else {
return ResultVOUtils.error(500, "UDI码格式错误");
}
}
}
@AuthRuleAnnotation("")
@GetMapping("udiwms/udiinfo/superSearch")
public BaseResponse superSearch(FilterUdiInfoRequest filterUdiInfoRequest) {

@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.annotation.AuthRuleAnnotation;
import com.glxp.sale.admin.constant.ConstantStatus;
import com.glxp.sale.admin.constant.ConstantType;
import com.glxp.sale.admin.controller.inout.utils.DataTransUtil;
import com.glxp.sale.admin.dao.inout.CodesTempDao;
import com.glxp.sale.admin.dao.inout.OrderDao;
@ -21,11 +22,13 @@ import com.glxp.sale.admin.entity.inventory.InvWarehouseEntity;
import com.glxp.sale.admin.entity.param.SystemParamConfigEntity;
import com.glxp.sale.admin.entity.udid.UdiEntity;
import com.glxp.sale.admin.req.basic.BasicEntrustRecRequest;
import com.glxp.sale.admin.req.basic.BussinessTypeFilterRequest;
import com.glxp.sale.admin.req.inout.*;
import com.glxp.sale.admin.req.inventory.FilterInvBusUserRequest;
import com.glxp.sale.admin.req.inventory.FilterInvUserRequest;
import com.glxp.sale.admin.req.inventory.FilterInvWarehouseRequest;
import com.glxp.sale.admin.res.PageSimpleResponse;
import com.glxp.sale.admin.res.basic.BussinessTypResponse;
import com.glxp.sale.admin.res.inout.OrderEditRequest;
import com.glxp.sale.admin.service.auth.AuthAdminService;
import com.glxp.sale.admin.service.auth.CustomerService;
@ -773,6 +776,57 @@ public class OrderController {
return ResultVOUtils.success(pageSimpleResponse);
}
@AuthRuleAnnotation("")
@GetMapping("/udiwms/inout/order/filterPreInChange")
public BaseResponse filterPreInChange(String billNo, String code) {
if (StrUtil.isEmpty(code) && StrUtil.isEmpty(billNo)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
List<OrderEntity> orderEntities = new ArrayList<>();
if (StrUtil.isNotEmpty(code)) {
//查询预验收单据类型
BussinessTypeFilterRequest bussinessTypeFilterRequest = new BussinessTypeFilterRequest();
bussinessTypeFilterRequest.setPreIn(true);
bussinessTypeFilterRequest.setMainAction(ConstantType.TYPE_PUT);
List<BussinessTypResponse> bussinessTypResponses = bussinessTypeService.filterJoinList(bussinessTypeFilterRequest);
List<String> actions = new ArrayList<>();
if (CollUtil.isNotEmpty(bussinessTypResponses)) {
for (BussinessTypResponse bussinessTypResponse : bussinessTypResponses) {
actions.add(bussinessTypResponse.getAction());
}
WarehouseQueryRequest warehouseQueryRequest = new WarehouseQueryRequest();
warehouseQueryRequest.setCode(code);
warehouseQueryRequest.setActions(actions);
List<WarehouseEntity> warehouseEntityList = codesService.findAllByOrderId(warehouseQueryRequest);
if (CollUtil.isNotEmpty(warehouseEntityList)) {
for (WarehouseEntity warehouseEntity : warehouseEntityList) {
List<OrderEntity> temps = orderService.filterPreInChange(warehouseEntity.getOrderId());
if (CollUtil.isNotEmpty(temps))
orderEntities.addAll(temps);
}
}
}
} else {
orderEntities = orderService.filterPreInChange(billNo);
}
PageInfo<OrderEntity> pageInfo = new PageInfo<>(orderEntities);
PageSimpleResponse<OrderEntity> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(orderEntities);
return ResultVOUtils.success(pageSimpleResponse);
}
@AuthRuleAnnotation("")
@PostMapping("/udiwms/inout/order/updateOrderInfo")
public BaseResponse updateOrderInfo(@RequestBody OrderEditRequest orderEditRequest) {

@ -42,10 +42,10 @@ public class CheckOrderUtils {
@Resource
BussinessOriginTypeService bussinessOriginTypeService;
public void check(String orderId, List<ErpOrderEntity> vailOrderEntities) {
public void check(String orderId, List<ErpOrderEntity> vailOrderEntities) { //被校验业务单据明细
FilterErpOrderRequest filterErpOrderRequest = new FilterErpOrderRequest();
filterErpOrderRequest.setOrderId(orderId);
List<ErpOrderEntity> myErpOrders = orderDetailService.filterAllMyErpOrder(filterErpOrderRequest);
List<ErpOrderEntity> myErpOrders = orderDetailService.filterAllMyErpOrder(filterErpOrderRequest); //扫码单据业务明细
OrderEntity orderEntity = orderService.findById(orderId);
String errMsg = null;
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(orderEntity.getAction());
@ -274,6 +274,8 @@ public class CheckOrderUtils {
return null;
} else if (StrUtil.isEmpty(vailOrderEntity.getBatchNo()) && StrUtil.isEmpty(myErpOrder.getBatchNo())) {
return null;
} else if (StrUtil.isEmpty(myErpOrder.getBatchNo())) {
return null;
} else {
return myErpOrder.getCoName() + "批次号不匹配!";
}
@ -286,6 +288,8 @@ public class CheckOrderUtils {
return null;
} else if (StrUtil.isEmpty(vailOrderEntity.getProductDate()) && StrUtil.isEmpty(myErpOrder.getProductDate())) {
return null;
} else if (StrUtil.isEmpty(myErpOrder.getProductDate())) {
return null;
} else {
return myErpOrder.getCoName() + "生产日期不匹配!";
}
@ -299,6 +303,8 @@ public class CheckOrderUtils {
return null;
} else if (StrUtil.isEmpty(vailOrderEntity.getExpireDate()) && StrUtil.isEmpty(myErpOrder.getExpireDate())) {
return null;
} else if (StrUtil.isEmpty(myErpOrder.getExpireDate())) {
return null;
} else {
return myErpOrder.getCoName() + "失效日期不匹配!";
}
@ -312,6 +318,8 @@ public class CheckOrderUtils {
return null;
} else if (StrUtil.isEmpty(vailOrderEntity.getWarehouseCode()) && StrUtil.isEmpty(myErpOrder.getWarehouseCode())) {
return null;
} else if (StrUtil.isEmpty(myErpOrder.getWarehouseCode())) {
return null;
} else {
return myErpOrder.getCoName() + "仓位号不匹配!";
}

@ -16,4 +16,5 @@ public class BasicExportStatusEntity {
private Date startTime;
private Date endTime;
private String remark;
private String receiveStatus;
}

@ -76,4 +76,7 @@ public class OrderEntity {
private String preInBillNo;
private String preOutBillNo;
private String wzUploadStatus;
private String wzUploadResult;
}

@ -2,6 +2,8 @@ package com.glxp.sale.admin.entity.inout;
import lombok.Data;
import java.util.List;
@Data
public class WarehouseEntity {
private Long id;
@ -38,6 +40,8 @@ public class WarehouseEntity {
private int scanCount;
public String getSupId() {
if (supId == null) {

@ -12,4 +12,5 @@ public class BasicExportStatusRequest extends ListPageRequest {
private String idDatas;
public Integer createType;
private String syncTime;
private String receiveStatus;
}

@ -26,4 +26,5 @@ public class BussinessTypeFilterRequest extends ListPageRequest {
private String code;
private String ids;
private List<String> actionList;
private Boolean preIn;
}

@ -3,6 +3,8 @@ package com.glxp.sale.admin.req.inout;
import com.glxp.sale.admin.req.ListPageRequest;
import lombok.Data;
import java.util.List;
@Data
public class WarehouseQueryRequest extends ListPageRequest {
@ -13,4 +15,6 @@ public class WarehouseQueryRequest extends ListPageRequest {
private String orderId;
private String nameCode;
private String relId;
List<String> actions;
}

@ -80,6 +80,9 @@ public interface OrderService {
*/
List<OrderEntity> filterOrderForDelete(String billNo);
List<OrderEntity> filterPreInChange(String billNo);
/**
*
*

@ -367,6 +367,42 @@ public class OrderServiceImpl implements OrderService {
return getAllOrder(orderEntity);
}
@Override
public List<OrderEntity> filterPreInChange(String billNo) {
List<OrderEntity> orderEntities = new ArrayList<>();
String orderId = "";
StockOrderEntity stockOrderEntity = stockOrderDao.selectByBillNo(billNo);
if (stockOrderEntity == null) {
orderId = billNo;
} else {
orderId = stockOrderEntity.getOrderIdFk();
}
OrderEntity orderEntity = orderDao.selectByBillNo(orderId);
orderEntities.add(orderEntity);
if (StrUtil.isNotEmpty(orderEntity.getPreInBillNo())) {
String[] priInNo = orderEntity.getPreInBillNo().split(";");
if (priInNo != null) {
for (int i = 0; i < priInNo.length; i++) {
OrderEntity temp = orderDao.selectByBillNo(priInNo[i]);
orderEntities.add(temp);
}
}
}
if (StrUtil.isNotEmpty(orderEntity.getPreOutBillNo())) {
String[] priInNo = orderEntity.getPreOutBillNo().split(";");
if (priInNo != null) {
for (int i = 0; i < priInNo.length; i++) {
OrderEntity temp = orderDao.selectByBillNo(priInNo[i]);
orderEntities.add(temp);
}
}
}
return orderEntities;
}
//通过源单据查询所有关联的单据数据
public void getLinkedOrderId(String id, Set<String> orderIds) {
List<String> list = getOneOrderById(id);

@ -1,5 +1,5 @@
# \u751F\u4EA7\u73AF\u5883
server.port=9907
server.port=9906
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/spms_za?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=root

@ -25,6 +25,11 @@
<if test="syncTime != null">
and #{syncTime} BETWEEN startTime and endTime
</if>
<if test="receiveStatus != null">
and receiveStatus = #{receiveStatus}
</if>
</where>
ORDER BY updateTime DESC
</select>
@ -33,7 +38,7 @@
<insert id="insertExportStatus" keyProperty="id"
parameterType="com.glxp.sale.admin.entity.basic.BasicExportStatusEntity">
replace
INTO basic_export_status(id,idDatas,status,`type`,updateTime,scheduleType,startTime,endTime,remark)
INTO basic_export_status(id,idDatas,status,`type`,updateTime,scheduleType,startTime,endTime,remark,receiveStatus)
values(
#{id},
#{idDatas},
@ -43,7 +48,8 @@
#{scheduleType},
#{startTime},
#{endTime},
#{remark}
#{remark},
#{receiveStatus}
)
</insert>
@ -52,12 +58,13 @@
<trim prefix="set" suffixOverrides=",">
<if test="idDatas != null">idDatas=#{idDatas},</if>
<if test="status != null">status=#{status},</if>
<if test="type != null">type=#{type},</if>
<if test="type != null">`type`=#{type},</if>
<if test="updateTime != null">updateTime=#{updateTime},</if>
<if test="scheduleType != null">scheduleType=#{scheduleType},</if>
<if test="startTime != null">startTime=#{startTime},</if>
<if test="endTime != null">endTime=#{endTime},</if>
<if test="remark != null">remark=#{remark},</if>
<if test="receiveStatus != null">receiveStatus=#{receiveStatus},</if>
</trim>
WHERE id = #{id}

@ -33,6 +33,13 @@
<if test="relId != '' and relId!=null">
and relId =#{relId}
</if>
<if test="actions!=null">
and
`action` in
<foreach collection="actions" item="id" index="index" open="(" close=")" separator=",">
#{id}
</foreach>
</if>
</where>
ORDER BY actDate
</select>

@ -0,0 +1,9 @@
-- 字段新增 表名字段名字段类型修改方式1新增2修改3删除
CALL Pro_Temp_ColumnWork ('basic_export_status','receiveStatus','varchar(255) ', 1);
CALL Pro_Temp_ColumnWork ('io_order','wzUploadStatus','varchar(255) ', 1);
CALL Pro_Temp_ColumnWork ('io_order','wzUploadResult','varchar(255) ', 1);
-- 创建表时必须 create table if not exists 表名
Loading…
Cancel
Save