McTbEventImpl.java 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. package com.malk.mc.event;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.malk.delegate.TBEvent;
  4. import com.malk.mc.service.McPocTbService;
  5. import com.malk.utils.UtilMap;
  6. import lombok.extern.slf4j.Slf4j;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.context.annotation.Primary;
  9. import org.springframework.scheduling.annotation.Async;
  10. import org.springframework.stereotype.Service;
  11. import java.util.Map;
  12. @Primary
  13. @Service
  14. @Slf4j
  15. public class McTbEventImpl implements TBEvent {
  16. @Autowired
  17. private McPocTbService mcPocTbService;
  18. @Override
  19. public void callBackTask(JSONObject eventJson) {
  20. Map data = (Map) eventJson.get("data");
  21. String activityId = String.valueOf(data.get("activityId"));
  22. Map content = (Map) data.get("content");
  23. String creatorId = String.valueOf(data.get("creatorId"));
  24. String taskId = String.valueOf(data.get("taskId"));
  25. String createDate = String.valueOf(data.get("created"));
  26. String updateDate = String.valueOf(data.get("updated"));
  27. mcPocTbService.saveWeekly(activityId, content, creatorId, taskId, createDate, updateDate);
  28. }
  29. @Override
  30. public void callBackProject(JSONObject eventJson) {
  31. }
  32. @Async
  33. @Override
  34. public void callBackWorktime(JSONObject eventJson) {
  35. String orgId = eventJson.getString("orgId");
  36. JSONObject data=eventJson.getJSONObject("data");
  37. if(orgId.equals("6034c885e71842e1e5bb5218")){
  38. // poc
  39. mcPocTbService.saveWorkTimes(data.getString("taskId"),data.getString("userId"), UtilMap.getList(data,"workTimeIds"));
  40. }
  41. }
  42. // {
  43. // "eventId": "6671330be541008d302bbf11",
  44. // "resourceId": "",
  45. // "data": {
  46. // "created": "2024-06-18T07:11:07.671Z",
  47. // "dates": [
  48. // "2024-06-18T00:00:00.000Z"
  49. // ],
  50. // "executorId": "616fb6f78ad4104a10515809",
  51. // "id": "6671330b546ad300120e4c5c",
  52. // "organizationId": "6034c885e71842e1e5bb5218",
  53. // "taskId": "665ee80a57df029b4375c6de",
  54. // "updated": "2024-06-18T07:11:07.671Z",
  55. // "userId": "616fb6f78ad4104a10515809",
  56. // "workTime": 7200000,
  57. // "workTimeIds": [
  58. // "6671330b546ad300120e4c5c"
  59. // ]
  60. // },
  61. // "hookId": "65b37d9bfd71812b35f89aa4",
  62. // "event": "worktime.create",
  63. // "category": "",
  64. // "orgId": "6034c885e71842e1e5bb5218",
  65. // "timestamp": 1718694667768
  66. // }
  67. }