From 686bd25ed794b7833c032e29faad5a87ad004be1 Mon Sep 17 00:00:00 2001 From: starrysky <838252223@qq.com> Date: Thu, 27 Feb 2020 23:54:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E6=81=AF=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cons/MessageModulePath.java | 35 ++++++ .../system/cons/MessageModuleType.java | 36 ++++++ .../system/cons/MessageReadStatus.java | 36 ++++++ .../modules/system/domain/Message.java | 87 ++++++++++++++ .../system/repository/MessageRepository.java | 14 +++ .../system/rest/MessageController.java | 41 +++++++ .../system/service/MessageService.java | 29 +++++ .../modules/system/service/UserService.java | 3 + .../system/service/dto/MessageCriteria.java | 14 +++ .../system/service/dto/MessageDTO.java | 55 +++++++++ .../service/impl/MessageServiceImpl.java | 111 ++++++++++++++++++ .../system/service/impl/UserServiceImpl.java | 33 ++++++ .../system/service/mapper/MessageMapper.java | 15 +++ .../service/CustomerOrderService.java | 2 +- .../impl/CustomerOrderServiceImpl.java | 44 +++++++ ...SourceInspectionCertificateController.java | 4 +- .../OutSourceInspectionCertificateDTO.java | 1 - eladmin-system/src/main/resources/message.sql | 0 18 files changed, 556 insertions(+), 4 deletions(-) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageModulePath.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageModuleType.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageReadStatus.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Message.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/MessageRepository.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/MessageController.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/MessageService.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MessageCriteria.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MessageDTO.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MessageServiceImpl.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapper/MessageMapper.java create mode 100644 eladmin-system/src/main/resources/message.sql diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageModulePath.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageModulePath.java new file mode 100644 index 00000000..67e8dabc --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageModulePath.java @@ -0,0 +1,35 @@ +package me.zhengjie.modules.system.cons; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +public enum MessageModulePath { + CUSTOMER_ORDER_LIST("客户订单列表","order/customerOrder"), + + ; + + private String name; + private String code; + + MessageModulePath(String name, String code) { + this.name = name; + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageModuleType.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageModuleType.java new file mode 100644 index 00000000..d82a1d91 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageModuleType.java @@ -0,0 +1,36 @@ +package me.zhengjie.modules.system.cons; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +public enum MessageModuleType { + CUSTOMER_ORDER("客户订单", "CUSTOMER_ORDER"), + INVOICE("销售发货单", "INVOICE") + + ; + private String name; + private String code; + + MessageModuleType(String name, String code) { + this.name = name; + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageReadStatus.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageReadStatus.java new file mode 100644 index 00000000..77e8124d --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/cons/MessageReadStatus.java @@ -0,0 +1,36 @@ +package me.zhengjie.modules.system.cons; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +public enum MessageReadStatus { + NO_READ("未读", 0), + READEDD("已读", 1), + ; + + private String name; + + private Integer status; + + MessageReadStatus(String name, Integer status) { + this.name = name; + this.status = status; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Message.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Message.java new file mode 100644 index 00000000..8408f4ca --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Message.java @@ -0,0 +1,87 @@ +package me.zhengjie.modules.system.domain; + +import lombok.Getter; +import lombok.Setter; +import org.hibernate.annotations.CreationTimestamp; + +import javax.persistence.*; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.sql.Timestamp; + +/** + * @author 黄星星 + * @date 2020-02-26 + */ +@Entity +@Getter +@Setter +@Table(name = "message") +public class Message implements Serializable { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @NotNull(groups = {Menu.Update.class}) + private Long id; + + // 创建时间 + @Column(name = "create_time") + @CreationTimestamp + private Timestamp createTime; + + // 更新时间 + @Column(name = "update_time") + @CreationTimestamp + private Timestamp updateTime; + + // 状态 + @Column(name = "status") + private Boolean status; + + @Column(name = "user_id_send") + private Long userIdSend; + + @Column(name = "user_name_send") + private Long userNameSend; + + @Column(name = "user_id_accept") + private Long userIdAccept; + + /** + * 消息内容 + */ + @Column(name = "mess_content") + private String messContent; + + /** + * 状态 + * 0 未读 + * 1 已读 + */ + @Column(name = "read_status") + private Integer readStatus; + + /** + * 模块类型 + */ + @Column(name = "module_type_code") + private String moduleTypeCode; + + @Column(name = "module_type_name") + private String moduleTypeName; + + + /** + * 模块路径 + */ + @Column(name = "module_path") + private String modulePath; + + + /** + * 单据编号 + */ + @Column(name = "init_code") + private String initCode; + + +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/repository/MessageRepository.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/repository/MessageRepository.java new file mode 100644 index 00000000..3e1ddd59 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/repository/MessageRepository.java @@ -0,0 +1,14 @@ +package me.zhengjie.modules.system.repository; + +import me.zhengjie.modules.system.domain.Menu; +import me.zhengjie.modules.system.domain.Message; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.JpaSpecificationExecutor; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +public interface MessageRepository extends JpaRepository, JpaSpecificationExecutor { + +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/rest/MessageController.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/rest/MessageController.java new file mode 100644 index 00000000..8bee06fd --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/rest/MessageController.java @@ -0,0 +1,41 @@ +package me.zhengjie.modules.system.rest; + +import io.swagger.annotations.ApiOperation; +import me.zhengjie.aop.log.Log; +import me.zhengjie.modules.system.domain.Menu; +import me.zhengjie.modules.system.domain.Message; +import me.zhengjie.modules.system.service.MessageService; +import me.zhengjie.modules.system.service.dto.MessageCriteria; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +@RestController +@RequestMapping("api") +public class MessageController { + + @Autowired + private MessageService messageService; + + @ApiOperation(value = "我的消息列表") + @GetMapping(value = "/queryInvoiceList") + @PreAuthorize("hasAnyRole('ADMIN','MESSAGE_ALL','MESSAGE_ALL')") + public ResponseEntity queryInvoiceList(MessageCriteria criteria){ + return new ResponseEntity(messageService.queryAll(criteria), HttpStatus.OK); + } + + @Log("修改消息") + @PutMapping(value = "/menus") + @PreAuthorize("hasAnyRole('ADMIN','MESSAGE_ALL','MESSAGE_EDIT')") + public ResponseEntity update(@Validated(Menu.Update.class) @RequestBody Message resources){ + messageService.update(resources); + return new ResponseEntity(HttpStatus.NO_CONTENT); + } +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/MessageService.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/MessageService.java new file mode 100644 index 00000000..6379a027 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/MessageService.java @@ -0,0 +1,29 @@ +package me.zhengjie.modules.system.service; + +import me.zhengjie.modules.system.domain.Message; +import me.zhengjie.modules.system.service.dto.MessageCriteria; +import me.zhengjie.modules.system.service.dto.MessageDTO; +import me.zhengjie.modules.wms.outSourceProductSheet.service.dto.OutSourceInspectionCertificateQueryCriteria; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +public interface MessageService { + + /** + * get + * @param id + * @return + */ + MessageDTO findById(long id); + + MessageDTO create(Message resources); + + void delete(Long id); + + Object queryAll(MessageCriteria criteria); + + void update(Message resources); + +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/UserService.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/UserService.java index 5fe40b5f..40fd587e 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/UserService.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/UserService.java @@ -80,4 +80,7 @@ public interface UserService { @Cacheable(keyGenerator = "keyGenerator") Object queryAll(UserQueryCriteria criteria, Pageable pageable); + + + Object queryAll(UserQueryCriteria criteria); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MessageCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MessageCriteria.java new file mode 100644 index 00000000..497925ff --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MessageCriteria.java @@ -0,0 +1,14 @@ +package me.zhengjie.modules.system.service.dto; + +import lombok.Data; + +/** +* @author jie +* @date 2019-10-01 +*/ +@Data +public class MessageCriteria { + + // 所属用户 + private String userIdAccept; +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MessageDTO.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MessageDTO.java new file mode 100644 index 00000000..f2391792 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MessageDTO.java @@ -0,0 +1,55 @@ +package me.zhengjie.modules.system.service.dto; + +import lombok.Data; + +import java.sql.Timestamp; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +@Data +public class MessageDTO { + private Long id; + + // 创建时间 + private Timestamp createTime; + + // 更新时间 + private Timestamp updateTime; + + private Long userIdSend; + + private Long userNameSend; + + private Long userIdAccept; + + /** + * 消息类型 + */ + private String messContent; + + /** + * 状态 + * 0 未读 + * 1 已读 + */ + private Integer readStatus; + + /** + * 模块类型 + */ + private String moduleType; + + + /** + * 模块路径 + */ + private String modulePath; + + + /** + * 单据编号 + */ + private String initCode; +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MessageServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MessageServiceImpl.java new file mode 100644 index 00000000..127e80d4 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MessageServiceImpl.java @@ -0,0 +1,111 @@ +package me.zhengjie.modules.system.service.impl; + +import me.zhengjie.exception.BadRequestException; +import me.zhengjie.modules.system.domain.Menu; +import me.zhengjie.modules.system.domain.Message; +import me.zhengjie.modules.system.repository.MessageRepository; +import me.zhengjie.modules.system.service.MessageService; +import me.zhengjie.modules.system.service.dto.MessageCriteria; +import me.zhengjie.modules.system.service.dto.MessageDTO; +import me.zhengjie.modules.system.service.mapper.MessageMapper; +import me.zhengjie.modules.wms.invoice.domain.Invoice; +import me.zhengjie.modules.wms.invoice.service.dto.InvoiceDTO; +import me.zhengjie.modules.wms.outSourceProductSheet.service.dto.OutSourceInspectionCertificateQueryCriteria; +import me.zhengjie.utils.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.jpa.domain.Specification; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; + +import javax.persistence.criteria.CriteriaBuilder; +import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.Predicate; +import javax.persistence.criteria.Root; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +@Service +@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) +public class MessageServiceImpl implements MessageService { + + @Autowired + private MessageRepository messageRepository; + + @Autowired + private MessageMapper messageMapper; + + @Override + public MessageDTO findById(long id) { + return null; + } + + @Override + public MessageDTO create(Message resources) { + + String initCode = resources.getInitCode(); + if(StringUtils.isEmpty(initCode)){ + throw new BadRequestException("单据编号不能为空"); + } + + String modulePath = resources.getModulePath(); + if(StringUtils.isEmpty(modulePath)){ + throw new BadRequestException("模块路径不能为空"); + } + + String moduleTypeName = resources.getModuleTypeName(); + if(StringUtils.isEmpty(moduleTypeName)){ + throw new BadRequestException("模块类型名称不能为空!"); + } + + String moduleTypeCode = resources.getModuleTypeCode(); + if(StringUtils.isEmpty(moduleTypeCode)){ + throw new BadRequestException("模块类型编码不能为空!"); + } + Message message = messageRepository.save(resources); + return messageMapper.toDto(message); + } + + @Override + public void delete(Long id) { + + } + + @Override + public Object queryAll(MessageCriteria criteria) { + Specification specification = new Specification() { + @Override + public Predicate toPredicate(Root root, CriteriaQuery criteriaQuery, CriteriaBuilder criteriaBuilder) { + + List targetPredicateList = new ArrayList<>(); + + Predicate statusPredicate = criteriaBuilder.equal(root.get("status"), 1); + targetPredicateList.add(statusPredicate); + + if(CollectionUtils.isEmpty(targetPredicateList)){ + return null; + }else{ + return criteriaBuilder.and(targetPredicateList.toArray(new Predicate[targetPredicateList.size()])); + } + } + }; + + List messageList = messageRepository.findAll(specification); + List messageDtoList = messageMapper.toDto(messageList); + return messageDtoList; + } + + @Override + public void update(Message resources) { + Optional messageOptional = messageRepository.findById(resources.getId()); + Message message = messageOptional.get(); + message.setStatus(false); + messageRepository.save(resources); + } +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/UserServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/UserServiceImpl.java index 8a951b38..98c86163 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/UserServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/UserServiceImpl.java @@ -9,16 +9,26 @@ import me.zhengjie.modules.system.service.UserService; import me.zhengjie.modules.system.service.dto.UserDTO; import me.zhengjie.modules.system.service.dto.UserQueryCriteria; import me.zhengjie.modules.system.service.mapper.UserMapper; +import me.zhengjie.modules.wms.outSourceProductSheet.domain.OutSourceInspectionCertificate; import me.zhengjie.utils.PageUtil; import me.zhengjie.utils.QueryHelp; import me.zhengjie.utils.ValidationUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; +import org.springframework.data.jpa.domain.Specification; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; + +import javax.persistence.criteria.CriteriaBuilder; +import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.Predicate; +import javax.persistence.criteria.Root; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import java.util.Optional; /** @@ -44,6 +54,29 @@ public class UserServiceImpl implements UserService { return PageUtil.toPage(page.map(userMapper::toDto)); } + @Override + public Object queryAll(UserQueryCriteria criteria) { + Specification specification = new Specification() { + @Override + public Predicate toPredicate(Root root, CriteriaQuery criteriaQuery, CriteriaBuilder criteriaBuilder) { + + List targetPredicateList = new ArrayList<>(); + + Predicate statusPredicate = criteriaBuilder.equal(root.get("status"), 1); + targetPredicateList.add(statusPredicate); + + if(CollectionUtils.isEmpty(targetPredicateList)){ + return null; + }else{ + return criteriaBuilder.and(targetPredicateList.toArray(new Predicate[targetPredicateList.size()])); + } + } + }; + return userMapper.toDto(userRepository.findAll(specification)); + } + + + @Override public UserDTO findById(long id) { Optional user = userRepository.findById(id); diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapper/MessageMapper.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapper/MessageMapper.java new file mode 100644 index 00000000..e2c9bb6d --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapper/MessageMapper.java @@ -0,0 +1,15 @@ +package me.zhengjie.modules.system.service.mapper; + +import me.zhengjie.mapper.EntityMapper; +import me.zhengjie.modules.system.domain.Message; +import me.zhengjie.modules.system.service.dto.MessageDTO; +import org.mapstruct.Mapper; +import org.mapstruct.ReportingPolicy; + +/** + * @author 黄星星 + * @date 2020-02-27 + */ +@Mapper(componentModel = "spring",uses = {},unmappedTargetPolicy = ReportingPolicy.IGNORE) +public interface MessageMapper extends EntityMapper { +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/customerOrder/service/CustomerOrderService.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/customerOrder/service/CustomerOrderService.java index 778b1775..e621fa27 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/customerOrder/service/CustomerOrderService.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/customerOrder/service/CustomerOrderService.java @@ -31,7 +31,7 @@ public interface CustomerOrderService { * @return */ //@Cacheable(keyGenerator = "keyGenerator") - public Object queryAll(CustomerOrderQueryCriteria criteria); + Object queryAll(CustomerOrderQueryCriteria criteria); /** * findById diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/customerOrder/service/impl/CustomerOrderServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/customerOrder/service/impl/CustomerOrderServiceImpl.java index d6999fb1..e8a5ea35 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/customerOrder/service/impl/CustomerOrderServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/customerOrder/service/impl/CustomerOrderServiceImpl.java @@ -1,6 +1,16 @@ package me.zhengjie.modules.wms.customerOrder.service.impl; +import lombok.extern.slf4j.Slf4j; import me.zhengjie.exception.BadRequestException; +import me.zhengjie.modules.system.cons.MessageModulePath; +import me.zhengjie.modules.system.cons.MessageModuleType; +import me.zhengjie.modules.system.cons.MessageReadStatus; +import me.zhengjie.modules.system.domain.Message; +import me.zhengjie.modules.system.repository.MessageRepository; +import me.zhengjie.modules.system.service.MessageService; +import me.zhengjie.modules.system.service.UserService; +import me.zhengjie.modules.system.service.dto.UserDTO; +import me.zhengjie.modules.system.service.dto.UserQueryCriteria; import me.zhengjie.modules.wms.bd.domain.CustomerInfo; import me.zhengjie.modules.wms.bd.domain.ProductInfo; import me.zhengjie.modules.wms.bd.domain.SupplierInfo; @@ -54,6 +64,7 @@ import javax.persistence.criteria.Root; * @author jie * @date 2019-08-03 */ +@Slf4j @Service @Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) public class CustomerOrderServiceImpl implements CustomerOrderService { @@ -79,6 +90,14 @@ public class CustomerOrderServiceImpl implements CustomerOrderService { @Autowired private ProductInfoRepository productInfoRepository; + @Autowired + private MessageRepository messageRepository; + + @Autowired + private UserService userService; + + + @Override public Object queryAll(CustomerOrderQueryCriteria criteria, Pageable pageable){ @@ -140,6 +159,7 @@ public class CustomerOrderServiceImpl implements CustomerOrderService { @Override @Transactional(rollbackFor = Exception.class) public CustomerOrderDTO create(CreateCustomerOrderRequest createCustomerOrderRequest) { + String customerOrderCode = createCustomerOrderRequest.getCustomerOrderCode(); List repeatProductCodeList =createCustomerOrderRequest.getCustomerOrderProductList().stream(). collect(Collectors.groupingBy(dog->dog.getProductCode() ,Collectors.counting())) @@ -213,6 +233,30 @@ public class CustomerOrderServiceImpl implements CustomerOrderService { customerOrderDTO.setCustomerOrderProductList(customerOrderProductDTOList); + /** + * 新增消息通知 + */ + try { + // 查看所有用户 + UserQueryCriteria userQueryCriteria = new UserQueryCriteria(); + List userDTOList =(List)userService.queryAll(userQueryCriteria); + if(!CollectionUtils.isEmpty(userDTOList)){ + List messageList = new ArrayList<>(); + for(UserDTO userDTO : userDTOList){ + Message message = new Message(); + message.setUserIdAccept(userDTO.getId()); + String messageContent = MessageModuleType.CUSTOMER_ORDER.getName() + "(" + customerOrderCode + ")"; + message.setMessContent(messageContent); + message.setModulePath(MessageModulePath.CUSTOMER_ORDER_LIST.getCode()); + message.setModuleTypeName(MessageModuleType.CUSTOMER_ORDER.getCode()); + message.setReadStatus(MessageReadStatus.NO_READ.getStatus()); + messageList.add(message); + } + messageRepository.saveAll(messageList); + } + }catch (Exception e){ + log.error("单据编号:插入消息失败!"); + } return customerOrderDTO; } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/outSourceProductSheet/rest/OutSourceInspectionCertificateController.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/outSourceProductSheet/rest/OutSourceInspectionCertificateController.java index acecd71a..ddabd249 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/outSourceProductSheet/rest/OutSourceInspectionCertificateController.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/outSourceProductSheet/rest/OutSourceInspectionCertificateController.java @@ -42,8 +42,8 @@ public class OutSourceInspectionCertificateController { @ApiOperation(value = "查询委外验收单列表") @GetMapping(value = "/queryOutSourceInspectionCertificateList") @PreAuthorize("hasAnyRole('ADMIN','SOUTSOURCEINSPECTIONCERTIFICATE_ALL','SOUTSOURCEINSPECTIONCERTIFICATE_SELECT')") - public ResponseEntity queryOutSourceInspectionCertificateList(OutSourceInspectionCertificateQueryCriteria criteria, Pageable pageable){ - return new ResponseEntity(outSourceInspectionCertificateService.queryAll(criteria,pageable),HttpStatus.OK); + public ResponseEntity queryOutSourceInspectionCertificateList(OutSourceInspectionCertificateQueryCriteria criteria){ + return new ResponseEntity(outSourceInspectionCertificateService.queryAll(criteria),HttpStatus.OK); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/outSourceProductSheet/service/dto/OutSourceInspectionCertificateDTO.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/outSourceProductSheet/service/dto/OutSourceInspectionCertificateDTO.java index 2899ff08..9b963d36 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/outSourceProductSheet/service/dto/OutSourceInspectionCertificateDTO.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/outSourceProductSheet/service/dto/OutSourceInspectionCertificateDTO.java @@ -1,6 +1,5 @@ package me.zhengjie.modules.wms.outSourceProductSheet.service.dto; -import com.sun.org.apache.xpath.internal.operations.Bool; import lombok.Data; import java.sql.Timestamp; import java.io.Serializable; diff --git a/eladmin-system/src/main/resources/message.sql b/eladmin-system/src/main/resources/message.sql new file mode 100644 index 00000000..e69de29b