Commit dc3696a8 authored by 廖旭伟's avatar 廖旭伟

Merge remote-tracking branch 'origin/master'

parents cb2bce41 bf8dddda
...@@ -367,9 +367,9 @@ export default { ...@@ -367,9 +367,9 @@ export default {
width: 100, width: 100,
formatter: (row) => { formatter: (row) => {
if (row.check) { if (row.check) {
return <span>不选择</span>; return <span style="cursor:pointer;color:#ff0000">不选择</span>;
} else { } else {
return <span style="cursor:pointer">选择</span>; return <span style="cursor:pointer;color:#1890ff">选择</span>;
} }
}, },
}, },
......
...@@ -407,9 +407,9 @@ export default { ...@@ -407,9 +407,9 @@ export default {
width: 100, width: 100,
formatter: (row) => { formatter: (row) => {
if (row.check) { if (row.check) {
return <span>不选择</span>; return <span style="cursor:pointer;color:#ff0000">不选择</span>;
} else { } else {
return <span style="cursor:pointer">选择</span>; return <span style="cursor:pointer;color:#1890ff">选择</span>;
} }
}, },
}, },
......
...@@ -193,9 +193,9 @@ export default { ...@@ -193,9 +193,9 @@ export default {
width: 100, width: 100,
formatter: (row) => { formatter: (row) => {
if (row.check) { if (row.check) {
return <span>不选择</span>; return <span style="cursor:pointer;color:#ff0000">不选择</span>;
} else { } else {
return <span style="cursor:pointer">选择</span>; return <span style="cursor:pointer;color:#1890ff">选择</span>;
} }
}, },
}, },
......
...@@ -13,6 +13,8 @@ import com.mortals.framework.exception.AppException; ...@@ -13,6 +13,8 @@ import com.mortals.framework.exception.AppException;
import com.mortals.xhx.busiz.dingtalk.config.TalkConfiguration; import com.mortals.xhx.busiz.dingtalk.config.TalkConfiguration;
import com.mortals.xhx.busiz.dingtalk.req.DingTalkBaseReq; import com.mortals.xhx.busiz.dingtalk.req.DingTalkBaseReq;
import com.mortals.xhx.busiz.dingtalk.req.UserPageReq; import com.mortals.xhx.busiz.dingtalk.req.UserPageReq;
import com.mortals.xhx.busiz.req.CodeReq;
import com.mortals.xhx.busiz.req.LinkMessageReq;
import com.mortals.xhx.busiz.req.MobileReq; import com.mortals.xhx.busiz.req.MobileReq;
import com.mortals.xhx.busiz.req.ReviewSaveReq; import com.mortals.xhx.busiz.req.ReviewSaveReq;
import com.mortals.xhx.common.code.YesNoEnum; import com.mortals.xhx.common.code.YesNoEnum;
...@@ -131,9 +133,9 @@ public class TalkApiController { ...@@ -131,9 +133,9 @@ public class TalkApiController {
if(dingToken == null){ if(dingToken == null){
dingToken = getToken().getData(); dingToken = getToken().getData();
} }
req.setDeptId(res.getDeptid()); req.setDeptId(res.getDeptid()); //部门id
req.setCursor(res.getCursor()); req.setCursor(res.getCursor()); //起始页游标
req.setSize(res.getSize()); req.setSize(res.getSize()); //分页条数
OapiV2UserListResponse rsp = client.execute(req, dingToken); OapiV2UserListResponse rsp = client.execute(req, dingToken);
if(rsp.getErrcode() == 0){ if(rsp.getErrcode() == 0){
apiRespPdu.setCode(0); apiRespPdu.setCode(0);
...@@ -173,11 +175,12 @@ public class TalkApiController { ...@@ -173,11 +175,12 @@ public class TalkApiController {
if(dingToken == null){ if(dingToken == null){
dingToken = getToken().getData(); dingToken = getToken().getData();
} }
req.setMobile(mobile.getMobile()); req.setMobile(mobile.getMobile()); //用户手机号
//先根据手机号去获取userid 再通过userid获取详情 钉钉没有直接根据电话获取用户详情的接口
OapiV2UserGetbymobileResponse rsp = client.execute(req, dingToken); OapiV2UserGetbymobileResponse rsp = client.execute(req, dingToken);
if(rsp.getErrcode() == 0){ if(rsp.getErrcode() == 0){
//根据获取到的userid去获取用户详情 //根据获取到的userid去获取用户详情
ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> userRsp = getUserInfo(rsp.getResult().getUserid()); ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> userRsp = getUserInfoByUserId(rsp.getResult().getUserid());
if(userRsp.getCode() == 0){ if(userRsp.getCode() == 0){
apiRespPdu.setCode(userRsp.getCode()); apiRespPdu.setCode(userRsp.getCode());
apiRespPdu.setData(userRsp.getData()); apiRespPdu.setData(userRsp.getData());
...@@ -211,17 +214,17 @@ public class TalkApiController { ...@@ -211,17 +214,17 @@ public class TalkApiController {
* 根据userid查询用户详情 * 根据userid查询用户详情
* @return * @return
*/ */
@GetMapping("/dingtalk/getUserInfo") @GetMapping("/dingtalk/getUserInfoByUserId")
@UnAuth @UnAuth
public ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> getUserInfo(@RequestBody String userid){ public ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> getUserInfoByUserId(@RequestBody String userid){
ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> apiRespPdu = new ApiRespPdu<>(); ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> apiRespPdu = new ApiRespPdu<>();
try { try {
DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetuserinfo()); DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetuserinfobyuserid());
OapiV2UserGetRequest req = new OapiV2UserGetRequest(); OapiV2UserGetRequest req = new OapiV2UserGetRequest();
if(dingToken == null){ if(dingToken == null){
dingToken = getToken().getData(); dingToken = getToken().getData();
} }
req.setUserid(userid); req.setUserid(userid); //用户id
OapiV2UserGetResponse rsp = client.execute(req, dingToken); OapiV2UserGetResponse rsp = client.execute(req, dingToken);
apiRespPdu.setCode(0); apiRespPdu.setCode(0);
...@@ -236,4 +239,85 @@ public class TalkApiController { ...@@ -236,4 +239,85 @@ public class TalkApiController {
return apiRespPdu; return apiRespPdu;
} }
/**
* 推送链接类钉钉工作消息
* @return
*/
@PostMapping("/dingtalk/sendLinkMessage")
@UnAuth
public ApiRespPdu<String> sendLinkMessage(@RequestBody LinkMessageReq linkMessageReq){
ApiRespPdu<String> apiRespPdu = new ApiRespPdu<>();
try {
DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getSendmessage());
if(dingToken == null){
dingToken = getToken().getData();
}
OapiMessageCorpconversationAsyncsendV2Request req = new OapiMessageCorpconversationAsyncsendV2Request();
req.setAgentId(Long.valueOf(talkConfiguration.getGetAgentId()));
req.setUseridList(linkMessageReq.getUserIdList());
OapiMessageCorpconversationAsyncsendV2Request.Msg obj1 = new OapiMessageCorpconversationAsyncsendV2Request.Msg();
obj1.setMsgtype("link"); //type为链接类消息
OapiMessageCorpconversationAsyncsendV2Request.Link obj2 = new OapiMessageCorpconversationAsyncsendV2Request.Link();
obj2.setPicUrl(linkMessageReq.getPicUrl()); //消息图片地址
obj2.setMessageUrl(linkMessageReq.getMessageUrl()); //跳转链接地址
obj2.setText(linkMessageReq.getText()); //消息描述
obj2.setTitle(linkMessageReq.getTitle()); //消息title
obj1.setLink(obj2);
req.setMsg(obj1);
OapiMessageCorpconversationAsyncsendV2Response rsp = client.execute(req, dingToken);
if(rsp.getErrcode() == 0){
apiRespPdu.setCode(0);
apiRespPdu.setData(rsp.getBody());
apiRespPdu.setMsg(rsp.getMsg());
}else {
apiRespPdu.setCode(-1);
apiRespPdu.setData(rsp.getBody());
apiRespPdu.setMsg(rsp.getMsg());
}
} catch (Exception e) {
e.printStackTrace();
apiRespPdu.setCode(-1);
apiRespPdu.setData("");
apiRespPdu.setMsg(e.toString());
}
return apiRespPdu;
}
/**
* 根据免登码查询用户详情
* @return
*/
@GetMapping("/dingtalk/getUserInfoByCode")
@UnAuth
public ApiRespPdu<OapiV2UserGetuserinfoResponse.UserGetByCodeResponse> getUserInfoByCode(@RequestBody CodeReq codeReq){
ApiRespPdu<OapiV2UserGetuserinfoResponse.UserGetByCodeResponse> apiRespPdu = new ApiRespPdu<>();
try {
DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetuserinfobycode());
OapiV2UserGetuserinfoRequest req = new OapiV2UserGetuserinfoRequest();
if(dingToken == null){
dingToken = getToken().getData();
}
req.setCode(codeReq.getCode()); //前端js获取到的免登码 用免登码获取用户信息
OapiV2UserGetuserinfoResponse rsp = client.execute(req, dingToken);
apiRespPdu.setCode(0);
apiRespPdu.setData(rsp.getResult());
apiRespPdu.setMsg(rsp.getMsg());
} catch (Exception e) {
e.printStackTrace();
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg(e.toString());
}
return apiRespPdu;
}
} }
...@@ -58,8 +58,21 @@ public class TalkConfiguration { ...@@ -58,8 +58,21 @@ public class TalkConfiguration {
/** /**
* 根据userid查询用户信息 * 根据userid查询用户信息
*/ */
@Value("${dingtalk.getuserinfo:https://oapi.dingtalk.com/topapi/v2/user/get}") @Value("${dingtalk.getuserinfobyuserid:https://oapi.dingtalk.com/topapi/v2/user/get}")
private String getuserinfo; private String getuserinfobyuserid;
/**
* 根据免登码查询用户信息
*/
@Value("${dingtalk.getuserinfobycode:https://oapi.dingtalk.com/topapi/v2/user/getuserinfo}")
private String getuserinfobycode;
/**
* 推送钉钉工作消息
*/
@Value("${dingtalk.sendmessage:https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2}")
private String sendmessage;
/** /**
* getDeptbyUser * getDeptbyUser
*/ */
......
package com.mortals.xhx.busiz.req;
/**
* @author ZYW
* @date 2023-07-13 20:11
*/
public class CodeReq {
String code;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
}
package com.mortals.xhx.busiz.req;
/**
* @author ZYW
* @date 2023-07-13 19:30
* 连接类工作消息
*/
public class LinkMessageReq {
String userIdList; //接收者用户id列表 多个接收者用,隔开
String picUrl; //消息图片地址
String messageUrl; //链接地址
String title; //消息标题,建议100字符以内。
String text; //消息描述,建议500字符以内。
public String getUserIdList() {
return userIdList;
}
public void setUserIdList(String userIdList) {
this.userIdList = userIdList;
}
public String getPicUrl() {
return picUrl;
}
public void setPicUrl(String picUrl) {
this.picUrl = picUrl;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public String getMessageUrl() {
return messageUrl;
}
public void setMessageUrl(String messageUrl) {
this.messageUrl = messageUrl;
}
}
...@@ -23,21 +23,22 @@ public class TestController { ...@@ -23,21 +23,22 @@ public class TestController {
@Autowired @Autowired
private IdgeneratorService idgeneratorService; private IdgeneratorService idgeneratorService;
@GetMapping("webservice") // @GetMapping("webservice")@GetMapping("idGens")
// public String idGens() {
// log.info("测试id生成");
//
// String stringId = idgeneratorService.getLongId(IdgeneratorServiceImpl.IdGeneratorKey.EFFECT).toString();
//
//
// return stringId;
// }
public String webservice() { public String webservice() {
log.info("测试"); log.info("测试");
return "ok"; return "ok";
} }
@GetMapping("idGens") //
public String idGens() {
log.info("测试id生成");
String stringId = idgeneratorService.getLongId(IdgeneratorServiceImpl.IdGeneratorKey.EFFECT_KEY).toString();
return stringId;
}
......
...@@ -62,4 +62,7 @@ hik: ...@@ -62,4 +62,7 @@ hik:
protocol: @profiles.hik.protocol@ protocol: @profiles.hik.protocol@
appSecret: @profiles.hik.appSecret@ appSecret: @profiles.hik.appSecret@
dingtalk: dingtalk:
agentId: 123123 agentId: 2652674890
AppKey: dingpqzradgfr4efdi2j
AppSecret: bF2WALmo5_Wuj3hg5gXeWqezrYnZChUJ88HjzNWpkA9ivdOxfBDGOGYcfVRfB3vd
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment