|
@@ -1,13 +1,17 @@
|
|
|
package com.huaxu.order.controller;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.huaxu.client.SmsWaterClient;
|
|
|
import com.huaxu.client.UserCenterClient;
|
|
|
+import com.huaxu.entity.Message;
|
|
|
import com.huaxu.model.AjaxMessage;
|
|
|
import com.huaxu.model.LoginUser;
|
|
|
import com.huaxu.model.ResultStatus;
|
|
|
import com.huaxu.order.dto.StatisticsDto;
|
|
|
import com.huaxu.order.dto.WorkOrderManageDto;
|
|
|
import com.huaxu.order.service.WorkOrderManageService;
|
|
|
+import com.huaxu.process.dto.TaskUserDTO;
|
|
|
+import com.huaxu.util.MessageSendUtil;
|
|
|
import com.huaxu.util.UserUtil;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
@@ -38,6 +42,9 @@ public class WorkOrderStatisticsController {
|
|
|
@Autowired
|
|
|
SmsWaterClient smsWaterClient;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private MessageSendUtil messageSendUtil;
|
|
|
+
|
|
|
@RequestMapping(value = "completionStatistics", method = RequestMethod.GET)
|
|
|
@ApiOperation(value = "工单完成情况统计")
|
|
|
public AjaxMessage<Map<String, Object>> completionStatistics(
|
|
@@ -317,6 +324,37 @@ public class WorkOrderStatisticsController {
|
|
|
return new AjaxMessage<>(ResultStatus.OK, result);
|
|
|
}
|
|
|
|
|
|
+ @RequestMapping(value = "reminder", method = RequestMethod.GET)
|
|
|
+ @ApiOperation(value = "催单")
|
|
|
+ public AjaxMessage<Object> reminder(
|
|
|
+ @ApiParam(value = "用户ID", required = true) @RequestParam(required = true) int id,
|
|
|
+ @ApiParam(value = "消息内容", required = true) @RequestParam(required = true) String content){
|
|
|
+ try {
|
|
|
+ sendMessage(id, content, 0);
|
|
|
+ sendMessage(id, content, 1);
|
|
|
+ return new AjaxMessage<>(ResultStatus.OK);
|
|
|
+ }catch (Exception ex){
|
|
|
+
|
|
|
+ }
|
|
|
+ return new AjaxMessage<>(ResultStatus.ERROR);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void sendMessage(int id, String content,int channel){
|
|
|
+ Message message=new Message();
|
|
|
+ message.setStatus(1);
|
|
|
+ LoginUser currentUser = UserUtil.getCurrentUser();
|
|
|
+ message.setCreateBy(currentUser.getId().toString());
|
|
|
+ message.setTenantId(currentUser.getTenantId());
|
|
|
+ message.setMessageContent(content);
|
|
|
+ message.setMessageId(UUID.randomUUID().toString());
|
|
|
+ message.setMessageType(8);
|
|
|
+ message.setUrl(null);
|
|
|
+ message.setMessageTemplateId(null);
|
|
|
+ message.setChannel(channel);
|
|
|
+ message.setUserId(id);
|
|
|
+ messageSendUtil.send(message);
|
|
|
+ }
|
|
|
+
|
|
|
private List<StatisticsDto> CalculatePercentage(List<StatisticsDto> list) {
|
|
|
double total = 0;
|
|
|
DecimalFormat df = new DecimalFormat("#0.00");
|