|
@@ -1,11 +1,16 @@
|
|
|
package com.malk.mc.service.impl;
|
|
|
|
|
|
+import cn.hutool.core.date.DateTime;
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.util.NumberUtil;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.malk.mc.entity.PocTbTask;
|
|
|
+import com.malk.mc.entity.PocTbWeekly;
|
|
|
import com.malk.mc.entity.PocTbWorkTime;
|
|
|
import com.malk.mc.mapper.PocTbTaskMapper;
|
|
|
import com.malk.mc.mapper.PocTbUserMapper;
|
|
|
+import com.malk.mc.mapper.PocTbWeeklyMapper;
|
|
|
import com.malk.mc.mapper.PocTbWorkTimeMapper;
|
|
|
import com.malk.mc.service.McPocTbService;
|
|
|
import com.malk.server.aliwork.YDConf;
|
|
@@ -18,6 +23,7 @@ import com.malk.utils.UtilMap;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
@@ -36,6 +42,8 @@ public class McPocTbServiceImpl implements McPocTbService {
|
|
|
private PocTbUserMapper pocTbUserMapper;
|
|
|
@Autowired
|
|
|
private YDClient ydClient;
|
|
|
+ @Autowired
|
|
|
+ private PocTbWeeklyMapper pocTbWeeklyMapper;
|
|
|
|
|
|
private SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS Z");
|
|
|
private SimpleDateFormat defaultFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
@@ -77,6 +85,48 @@ public class McPocTbServiceImpl implements McPocTbService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void saveWeekly(String activityId, Map content, String creatorId, String taskId, String createDate, String updateDate) {
|
|
|
+ Map task=tbClient.queryTaskDetail(taskId,"","").get(0);
|
|
|
+ String projectId=UtilMap.getString(task,"projectId");
|
|
|
+ if(!projectId.equals("66124f3f6f4d77e0259b40d5")){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ //若任务不存在则创建
|
|
|
+ PocTbTask pocTbTask=pocTbTaskMapper.selectById(taskId);
|
|
|
+ if(pocTbTask==null){
|
|
|
+ pocTbTask=new PocTbTask();
|
|
|
+ pocTbTask.setTaskId(taskId);
|
|
|
+ pocTbTask.setTaskName(UtilMap.getString(task,"content"));
|
|
|
+ pocTbTaskMapper.insert(pocTbTask);
|
|
|
+ }
|
|
|
+ String ddUserId = pocTbUserMapper.selectById(creatorId).getDdUserId();
|
|
|
+ //创建周报
|
|
|
+ PocTbWeekly pocTbWeekly = pocTbWeeklyMapper.selectById(activityId);
|
|
|
+ if (Objects.isNull(pocTbWeekly)){
|
|
|
+ pocTbWeekly = new PocTbWeekly();
|
|
|
+ pocTbWeekly.setId(activityId);
|
|
|
+ pocTbWeekly.setContent(String.valueOf(content.get("text")));
|
|
|
+ pocTbWeekly.setTaskId(taskId);
|
|
|
+ pocTbWeekly.setCreatorId(creatorId);
|
|
|
+ pocTbWeekly.setCreateDate(createDate);
|
|
|
+ pocTbWeekly.setUpdateDate(updateDate);
|
|
|
+ pocTbWeeklyMapper.insert(pocTbWeekly);
|
|
|
+
|
|
|
+ //在宜搭周报表中新增数据
|
|
|
+ Map data=new HashMap();
|
|
|
+ data.put("employeeField_lxu7g60o", Arrays.asList(ddUserId));//员工
|
|
|
+ data.put("textField_lxu7g60r", pocTbTask.getTaskName());//项目名称
|
|
|
+ data.put("textareaField_lxu7g60p",String.valueOf(content.get("text")));//周报内容
|
|
|
+ data.put("dateField_lxu7g60q",DateUtil.parse(createDate));//周报创建日期
|
|
|
+
|
|
|
+ ydClient.operateData(YDParam.builder().formUuid("FORM-4EFCFB6F0E3D4187BCDEBEEA60F4F555RTIK").formDataJson(JSONObject.toJSONString(data)).build(), YDConf.FORM_OPERATION.create);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
private String timeFormat(String startDate){
|
|
|
String result = "";
|
|
|
Date rwStateTime = null;
|