| | |
| | | |
| | | |
| | | import com.ycl.jxkg.base.BaseApiController; |
| | | import com.ycl.jxkg.base.RestResponse; |
| | | import com.ycl.jxkg.domain.Message; |
| | | import com.ycl.jxkg.domain.MessageUser; |
| | | import com.ycl.jxkg.domain.User; |
| | | import com.ycl.jxkg.base.Result; |
| | | import com.ycl.jxkg.domain.entity.Message; |
| | | import com.ycl.jxkg.domain.entity.MessageUser; |
| | | import com.ycl.jxkg.domain.entity.User; |
| | | import com.ycl.jxkg.service.MessageService; |
| | | import com.ycl.jxkg.service.UserService; |
| | | import com.ycl.jxkg.utility.DateTimeUtil; |
| | | import com.ycl.jxkg.utility.PageInfoHelper; |
| | | import com.ycl.jxkg.viewmodel.admin.message.MessagePageRequestVM; |
| | | import com.ycl.jxkg.viewmodel.admin.message.MessageResponseVM; |
| | | import com.ycl.jxkg.viewmodel.admin.message.MessageSendVM; |
| | | import com.ycl.jxkg.utils.DateTimeUtil; |
| | | import com.ycl.jxkg.utils.PageInfoHelper; |
| | | import com.ycl.jxkg.domain.vo.admin.message.MessagePageRequestVO; |
| | | import com.ycl.jxkg.domain.vo.admin.message.MessageResponseVO; |
| | | import com.ycl.jxkg.domain.vo.admin.message.MessageSendVO; |
| | | import com.github.pagehelper.PageInfo; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @RequiredArgsConstructor |
| | | @RestController("AdminMessageController") |
| | | @RequestMapping(value = "/api/admin/message") |
| | | public class MessageController extends BaseApiController { |
| | |
| | | private final MessageService messageService; |
| | | private final UserService userService; |
| | | |
| | | @Autowired |
| | | public MessageController(MessageService messageService, UserService userService) { |
| | | this.messageService = messageService; |
| | | this.userService = userService; |
| | | } |
| | | |
| | | @RequestMapping(value = "/page", method = RequestMethod.POST) |
| | | public RestResponse<PageInfo<MessageResponseVM>> pageList(@RequestBody MessagePageRequestVM model) { |
| | | public Result<PageInfo<MessageResponseVO>> pageList(@RequestBody MessagePageRequestVO model) { |
| | | PageInfo<Message> pageInfo = messageService.page(model); |
| | | List<Integer> ids = pageInfo.getList().stream().map(d -> d.getId()).collect(Collectors.toList()); |
| | | List<MessageUser> messageUsers = ids.size() == 0 ? null : messageService.selectByMessageIds(ids); |
| | | PageInfo<MessageResponseVM> page = PageInfoHelper.copyMap(pageInfo, m -> { |
| | | MessageResponseVM vm = modelMapper.map(m, MessageResponseVM.class); |
| | | PageInfo<MessageResponseVO> page = PageInfoHelper.copyMap(pageInfo, m -> { |
| | | MessageResponseVO vo = new MessageResponseVO(); |
| | | BeanUtils.copyProperties(m, vo); |
| | | String receives = messageUsers.stream().filter(d -> d.getMessageId().equals(m.getId())).map(d -> d.getReceiveUserName()) |
| | | .collect(Collectors.joining(",")); |
| | | vm.setReceives(receives); |
| | | vm.setCreateTime(DateTimeUtil.dateFormat(m.getCreateTime())); |
| | | return vm; |
| | | vo.setReceives(receives); |
| | | vo.setCreateTime(DateTimeUtil.dateFormat(m.getCreateTime())); |
| | | return vo; |
| | | }); |
| | | return RestResponse.ok(page); |
| | | return Result.ok(page); |
| | | } |
| | | |
| | | |
| | | @RequestMapping(value = "/send", method = RequestMethod.POST) |
| | | public RestResponse send(@RequestBody @Valid MessageSendVM model) { |
| | | public Result send(@RequestBody @Valid MessageSendVO model) { |
| | | User user = getCurrentUser(); |
| | | List<User> receiveUser = userService.selectByIds(model.getReceiveUserIds()); |
| | | Date now = new Date(); |
| | |
| | | return messageUser; |
| | | }).collect(Collectors.toList()); |
| | | messageService.sendMessage(message, messageUsers); |
| | | return RestResponse.ok(); |
| | | return Result.ok(); |
| | | } |
| | | |
| | | } |