From bfaf38f9788baacc2f239cf56e745e451490600c Mon Sep 17 00:00:00 2001 From: rk <94314517@qq.com> Date: 星期一, 29 九月 2025 10:19:35 +0800 Subject: [PATCH] 钉钉授权 与 通知开发 --- server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java | 124 +++++++++++++++++++++++++++++++++++----- 1 files changed, 107 insertions(+), 17 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java index e4a88b3..84ac5f5 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java @@ -14,16 +14,21 @@ import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.utils.Constants; +import com.doumee.core.utils.DateUtil; import com.doumee.dao.business.dao.CompanyMapper; +import com.doumee.dao.business.model.CarUseBook; import com.doumee.dao.business.model.Company; +import com.doumee.dao.business.model.Visits; import com.doumee.dao.system.model.SystemDictData; import com.doumee.service.business.CompanyService; import com.github.xiaoymin.knife4j.core.util.CollectionUtils; import com.taobao.api.ApiException; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.text.DateFormat; import java.util.*; import java.util.stream.Collectors; @@ -383,23 +388,7 @@ request.setAgentId(agentId); request.setUseridList(userIds); request.setToAllUser(false); -// OapiMessageCorpconversationAsyncsendV2Request.Msg msg = new OapiMessageCorpconversationAsyncsendV2Request.Msg(); -// msg.setMsgtype("oa"); -// OapiMessageCorpconversationAsyncsendV2Request.OA oa = new OapiMessageCorpconversationAsyncsendV2Request.OA(); -// oa.setMessageUrl(""); -// OapiMessageCorpconversationAsyncsendV2Request.Head head = new OapiMessageCorpconversationAsyncsendV2Request.Head(); -// head.setText(""); -// head.setBgcolor("#279BAA"); -// -// oa.setHead(head); -// -// OapiMessageCorpconversationAsyncsendV2Request.Body body = new OapiMessageCorpconversationAsyncsendV2Request.Body(); -// body.setTitle(""); -// List<OapiMessageCorpconversationAsyncsendV2Request.Form> form = new ArrayList<>(); -// -// body.setForm(form); -// oa.setBody(body); -// msg.setOa(oa); + request.setMsg(msg); OapiMessageCorpconversationAsyncsendV2Response rsp = client.execute(request, getToken()); if(rsp.getErrcode().equals(Constants.DD_ERR_CODE)){ @@ -410,8 +399,109 @@ } + /** + * 璁垮鐢宠/鎶ュ OA 宸ヤ綔閫氱煡 鍐呭 + * @param visits + * @param title + * @return + */ + public OapiMessageCorpconversationAsyncsendV2Request.Msg getVisitNoticeMsg(Visits visits,String title){ + OapiMessageCorpconversationAsyncsendV2Request.Msg msg = new OapiMessageCorpconversationAsyncsendV2Request.Msg(); + msg.setMsgtype("oa"); + OapiMessageCorpconversationAsyncsendV2Request.OA oa = new OapiMessageCorpconversationAsyncsendV2Request.OA(); + oa.setMessageUrl(""); + OapiMessageCorpconversationAsyncsendV2Request.Head head = new OapiMessageCorpconversationAsyncsendV2Request.Head(); + head.setText(title); + head.setBgcolor("#279BAA"); + oa.setHead(head); + + OapiMessageCorpconversationAsyncsendV2Request.Body body = new OapiMessageCorpconversationAsyncsendV2Request.Body(); + body.setTitle(!Constants.equalsInteger(visits.getType(),Constants.TWO)?visits.getName()+"鐨勮瀹㈢敵璇�":"鐨勮瀹㈡姤澶�"); + List<OapiMessageCorpconversationAsyncsendV2Request.Form> formList = new ArrayList<>(); + + OapiMessageCorpconversationAsyncsendV2Request.Form visitUser = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + visitUser.setKey("鏉ヨ浜�"); + visitUser.setValue(visits.getName()); + formList.add(visitUser); + + OapiMessageCorpconversationAsyncsendV2Request.Form inDate = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + inDate.setKey("鍏ュ洯鏃堕棿"); + inDate.setValue(DateUtil.formatDate(visits.getStarttime(),"MM-dd HH:mm")); + formList.add(inDate); + + OapiMessageCorpconversationAsyncsendV2Request.Form outDate = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + outDate.setKey("绂诲洯鏃堕棿"); + outDate.setValue(DateUtil.formatDate(visits.getEndtime(),"MM-dd HH:mm")); + formList.add(outDate); + + OapiMessageCorpconversationAsyncsendV2Request.Form inReason = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + inReason.setKey("鏉ヨ浜嬬敱"); + inReason.setValue(visits.getReason()); + formList.add(inReason); + + if(StringUtils.isNotBlank(visits.getCarNos())){ + OapiMessageCorpconversationAsyncsendV2Request.Form carNos = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + carNos.setKey("闅忚杞﹁締"); + carNos.setValue(visits.getCarNos()); + formList.add(visitUser); + } + + body.setForm(formList); + oa.setBody(body); + msg.setOa(oa); + + return msg; + } + /* public OapiMessageCorpconversationAsyncsendV2Request.Msg getCarUseNoticeMsg(CarUseBook carUseBook,String title){ + OapiMessageCorpconversationAsyncsendV2Request.Msg msg = new OapiMessageCorpconversationAsyncsendV2Request.Msg(); + msg.setMsgtype("oa"); + OapiMessageCorpconversationAsyncsendV2Request.OA oa = new OapiMessageCorpconversationAsyncsendV2Request.OA(); + oa.setMessageUrl(""); + OapiMessageCorpconversationAsyncsendV2Request.Head head = new OapiMessageCorpconversationAsyncsendV2Request.Head(); + head.setText(title); + head.setBgcolor("#279BAA"); + oa.setHead(head); + OapiMessageCorpconversationAsyncsendV2Request.Body body = new OapiMessageCorpconversationAsyncsendV2Request.Body(); + body.setTitle("鍏姟鐢ㄨ溅"); + List<OapiMessageCorpconversationAsyncsendV2Request.Form> formList = new ArrayList<>(); + + + OapiMessageCorpconversationAsyncsendV2Request.Form startDate = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + startDate.setKey("寮�濮嬫椂闂�"); + startDate.setValue(DateUtil.formatDate(carUseBook.getStartTime(),"MM-dd HH:mm")); + formList.add(startDate); + + OapiMessageCorpconversationAsyncsendV2Request.Form endDate = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + endDate.setKey("缁撴潫鏃堕棿"); + endDate.setValue(DateUtil.formatDate(carUseBook.getEndTime(),"MM-dd HH:mm")); + formList.add(endDate); + + + OapiMessageCorpconversationAsyncsendV2Request.Form userNum = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + userNum.setKey("涔樿溅浜烘暟"); + userNum.setValue(DateUtil.formatDate(carUseBook.getEndTime(),"MM-dd HH:mm")); + formList.add(userNum); + + OapiMessageCorpconversationAsyncsendV2Request.Form inReason = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + inReason.setKey("鏉ヨ浜嬬敱"); + inReason.setValue(visits.getReason()); + formList.add(inReason); + + if(StringUtils.isNotBlank(visits.getCarNos())){ + OapiMessageCorpconversationAsyncsendV2Request.Form carNos = new OapiMessageCorpconversationAsyncsendV2Request.Form(); + carNos.setKey("闅忚杞﹁締"); + carNos.setValue(visits.getCarNos()); + formList.add(visitUser); + } + + body.setForm(formList); + oa.setBody(body); + msg.setOa(oa); + + return msg; + }*/ } -- Gitblit v1.9.3