diff --git a/src/main/java/com/glxp/api/constant/Constant.java b/src/main/java/com/glxp/api/constant/Constant.java index a3799b7c..294d245a 100644 --- a/src/main/java/com/glxp/api/constant/Constant.java +++ b/src/main/java/com/glxp/api/constant/Constant.java @@ -9,7 +9,7 @@ public class Constant { public static final String SERIAL_CACHE_PREFIX_ST = "serialst_"; public static final String SERIAL_CACHE_SYNC_UDI = "syncUdi"; - public static final String SCAN_ORDER = "MS"; //出入库单据 + public static final String SCAN_ORDER = "ZS"; //出入库单据 public static final String BUS_ORDER = "MY"; public static final String LIN_YONG = "ML"; //领用 public static final String SG_ORDER = "SG"; //申购 @@ -215,6 +215,8 @@ public class Constant { public static final String ORDER_STATUS_INVOICE = "supInvoice"; + public static final String ORDER_STATUS_INCODE = "supInCode"; + /**前端页面查询相关单据类型标识*/ diff --git a/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java b/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java index a55facd0..d341451f 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java @@ -188,7 +188,6 @@ public class UdiRelevanceController extends BaseController { } - //资质证书选入产品列表 产品名称,生产企业过滤 @AuthRuleAnnotation("") @GetMapping("/udi/cert/filterUdi") @@ -667,8 +666,13 @@ public class UdiRelevanceController extends BaseController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - boolean falg = udiProductService.updateUdiInfoById(udiProductEntity); + if (udiProductEntity.getRelSupId() != null) { + UdiRlSupEntity udiRlSupEntity = new UdiRlSupEntity(); + udiRlSupEntity.setUpdateTime(new Date()); + udiRlSupEntity.setId(udiProductEntity.getId()); + udiRlSupService.updateCompanyProductRelevance(udiRlSupEntity); + } if (falg) { return ResultVOUtils.success("更新成功"); } else { diff --git a/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java b/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java index 3c6aaae2..5a2e04a3 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java @@ -237,7 +237,7 @@ public class UdiRlSupController extends BaseController { udiRelevanceEntity.setLockStatus(1); udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); UdiProductEntity udiProductEntity = new UdiProductEntity(); - BeanUtils.copyProperties(udiInfoExportRequest.getSupplementRequest(),udiProductEntity); + BeanUtils.copyProperties(udiInfoExportRequest.getSupplementRequest(), udiProductEntity); udiProductService.insertUdiInfo(udiProductEntity); return ResultVOUtils.success("选入成功!"); } diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java index 6b4e0bd8..1592f856 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java @@ -76,6 +76,10 @@ public class IoOrderController extends BaseController { if (StrUtil.isNotBlank(filterOrderRequest.getVueType())) { orderService.setActions(filterOrderRequest); } + + if (StrUtil.isNotEmpty(filterOrderRequest.getSupInoivceSearch())) { + orderService.setInvoiceFiltes(filterOrderRequest); + } String customerId = getCustomerId(); if (!customerId.equals("110")) { filterOrderRequest.setFromCorp(customerId); diff --git a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java index e408cc71..482f7195 100644 --- a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java @@ -79,6 +79,9 @@ public class UdiProductEntity { private String supId; + private Integer relSupId; + + public Boolean getAllowNoBatch() { if (allowNoBatch == null) return false; @@ -96,6 +99,7 @@ public class UdiProductEntity { return false; return allowNoProduct; } + public Boolean getAllowNoSerial() { if (allowNoSerial == null) return false; diff --git a/src/main/java/com/glxp/api/entity/basic/UdiRlSupEntity.java b/src/main/java/com/glxp/api/entity/basic/UdiRlSupEntity.java index 74874e17..86194d5e 100644 --- a/src/main/java/com/glxp/api/entity/basic/UdiRlSupEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/UdiRlSupEntity.java @@ -1,5 +1,9 @@ package com.glxp.api.entity.basic; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.math.BigDecimal; @@ -9,21 +13,81 @@ import java.util.Date; * 供应商关联耗材字典表 */ @Data +@TableName("company_product_relevance") public class UdiRlSupEntity { + + @TableId(value = "id", type = IdType.AUTO) private Integer id; + + /** + * 客户ID + */ + @TableField(value = "customerId") private String customerId; + + @TableField(value = "productId") private String productId; + + @TableField(value = "enterpriseId") private String enterpriseId; + + @TableField(value = "registrationId") private String registrationId; + + /** + * 审核状态 1:通过,2:不通过,3:反审 + */ + @TableField(value = "auditStatus") private String auditStatus; + + /** + * 产品UUID + */ + @TableField(value = "productUuid") private String productUuid; - private String udiRlIdFk; + + /** + * 基础信息维护表关联主键 + */ + @TableField(value = "udiRlIdFk") + private Long udiRlIdFk; + + /** + * 往来单位ID外键 + */ + @TableField(value = "unitFk") private String unitFk; + + /** + * 价格 + */ + @TableField(value = "price") private BigDecimal price; - private Date createTime; - private Date updateTime; + /** + * 创建人 + */ + @TableField(value = "`createUser`") private String createUser; + + /** + * 创建时间 + */ + @TableField(value = "createTime") + private Date createTime; + + /** + * 更新人 + */ + @TableField(value = "updateUser") private String updateUser; + + /** + * 更新时间 + */ + @TableField(value = "updateTime") + private Date updateTime; + + } diff --git a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java index cac24226..802f138d 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java @@ -178,4 +178,9 @@ public class FilterOrderRequest extends ListPageRequest { private Integer inCodeStatus; private String relKey; + //发票查询 + private String supInoivceSearch; + private List invoiceActions1; + private List invoiceActions2; + } diff --git a/src/main/java/com/glxp/api/service/inout/IoAddInoutService.java b/src/main/java/com/glxp/api/service/inout/IoAddInoutService.java index 05ddcbca..aaebf94b 100644 --- a/src/main/java/com/glxp/api/service/inout/IoAddInoutService.java +++ b/src/main/java/com/glxp/api/service/inout/IoAddInoutService.java @@ -297,7 +297,8 @@ public class IoAddInoutService { public void genOrderDetailCode(IoOrderEntity orderEntity, IoCodeTempEntity codeTempEntity) { List ioOrderDetailCodeEntities = orderDetailCodeService.findByOrderId(orderEntity.getBillNo()); - UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(codeTempEntity.getRelId()); + UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectSupGroupById(codeTempEntity.getRelId()); +// UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(codeTempEntity.getRelId()); if (CollUtil.isEmpty(ioOrderDetailCodeEntities)) { orderDetailCodeService.insert(buildEntity(orderEntity, codeTempEntity, udiRelevanceResponse)); } else { diff --git a/src/main/java/com/glxp/api/service/inout/IoChangeInoutService.java b/src/main/java/com/glxp/api/service/inout/IoChangeInoutService.java index bdf1c5d1..9c29f806 100644 --- a/src/main/java/com/glxp/api/service/inout/IoChangeInoutService.java +++ b/src/main/java/com/glxp/api/service/inout/IoChangeInoutService.java @@ -181,7 +181,7 @@ public class IoChangeInoutService { if (bussinessChangeTypeEntity.getBeforeTime() != null) outOrder.setCreateTime(DateUtil.getBeforeDay(DateUtil.fromDate(orderEntity), bussinessChangeTypeEntity.getBeforeTime())); else - outOrder.setCreateTime(DateUtil.fromDate(orderEntity)); + outOrder.setCreateTime(new Date()); //不设,默认为当前时间 outOrder.setAction(targetBustypeEntity.getAction()); outOrder.setMainAction(targetBustypeEntity.getMainAction()); outOrder.setBusType(targetBustypeEntity.getBusType()); diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderService.java b/src/main/java/com/glxp/api/service/inout/IoOrderService.java index b2dee039..7bfd59a6 100644 --- a/src/main/java/com/glxp/api/service/inout/IoOrderService.java +++ b/src/main/java/com/glxp/api/service/inout/IoOrderService.java @@ -78,6 +78,8 @@ public interface IoOrderService { List setActions(FilterOrderRequest filterOrderRequest); + void setInvoiceFiltes(FilterOrderRequest filterOrderRequest); + /** * 查询单号关联的所有单据数据 * diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java index 73c664d9..ecacc744 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java @@ -542,6 +542,11 @@ public class IoOrderServiceImpl implements IoOrderService { filterOrderRequest.setStatuses(Arrays.asList(5, 10, 7)); filterOrderRequest.setDealStatuses(Arrays.asList(3, 4)); break; + + case Constant.ORDER_STATUS_INCODE: + filterOrderRequest.setStatuses(Arrays.asList(1, 3, 5, 10, 7)); + filterOrderRequest.setDealStatuses(Arrays.asList(1, 2, 3, 4)); + break; default: break; } @@ -560,6 +565,25 @@ public class IoOrderServiceImpl implements IoOrderService { return actions; } + @Override + public void setInvoiceFiltes(FilterOrderRequest filterOrderRequest) { + List bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper() + .eq("mainAction", ConstantType.TYPE_PUT).eq("corpType", ConstantStatus.CORP_TYPE_OUT) + .eq("corpType", ConstantStatus.CORP_TYPE_OUT).eq("inStock", false) + .gt("spUse", 1).eq("actionType", 1).eq("enable", true)); + List actions1 = null; + actions1 = bussinessTypeEntities.stream().map(BasicBussinessTypeEntity::getAction).collect(Collectors.toList()); + filterOrderRequest.setInvoiceActions1(actions1); + + List bussinessTypeEntities2 = basicBussinessTypeDao.selectList(new QueryWrapper() + .eq("mainAction", ConstantType.TYPE_PUT).eq("corpType", ConstantStatus.CORP_TYPE_OUT) + .eq("inStock", true) + .gt("spUse", 0).eq("actionType", 1).eq("enable", true)); + List actions2 = null; + actions2 = bussinessTypeEntities2.stream().map(BasicBussinessTypeEntity::getAction).collect(Collectors.toList()); + filterOrderRequest.setInvoiceActions2(actions2); + } + @Override public List filterOrderTrace(String billNo) { IoOrderEntity order = orderDao.selectOne(new QueryWrapper().eq("billNo", billNo)); diff --git a/src/main/java/com/glxp/api/task/AsyncSpsTask.java b/src/main/java/com/glxp/api/task/AsyncSpsTask.java index 2b9804fc..73deacca 100644 --- a/src/main/java/com/glxp/api/task/AsyncSpsTask.java +++ b/src/main/java/com/glxp/api/task/AsyncSpsTask.java @@ -36,7 +36,7 @@ public class AsyncSpsTask implements SchedulingConfigurer { scheduledRequest.setCronName("syncIdcSps"); logger.info("syncIdcSps----------------"); ScheduledEntity scheduledEntity = scheduledDao.findScheduled(scheduledRequest); - String cron = scheduledEntity != null ? scheduledEntity.getCron() : "* 0/3 * * * ?"; + String cron = scheduledEntity != null ? scheduledEntity.getCron() : "* 0/30 * * * ?"; if (cron.isEmpty()) { logger.error("cron is null"); diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml index fcd2f40e..7f50f571 100644 --- a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml @@ -49,11 +49,9 @@ AND inCodeStatus = #{inCodeStatus} - AND relKey = #{relKey} - AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') @@ -66,7 +64,6 @@ #{item} - AND status in @@ -91,6 +88,19 @@ AND orderType = #{orderType} + + + AND ((`action` in + + #{item} + + and status = 10) or (( + `action` in + + #{item} + ) and status = 7 + )) + order by createTime desc