Commit 8dda1f6e by 墨竹

feat:同步通讯录修改

parent e86462bf
......@@ -42,7 +42,7 @@ public interface StaffApiService {
* @param userId
* @param wxEnterpriseId
*/
void wxGetAdd(String userId, String wxEnterpriseId);
ServiceResponse wxGetAdd(String userId, String wxEnterpriseId);
/**
* 成员修改
......
......@@ -8,6 +8,7 @@ import com.gic.clerk.api.service.ClerkService;
import com.gic.commons.util.*;
import com.gic.haoban.app.customer.service.api.service.InnerApiService;
import com.gic.haoban.base.api.common.Constant;
import com.gic.haoban.base.api.common.ServiceResponse;
import com.gic.haoban.manage.api.dto.*;
import com.gic.haoban.manage.api.enums.AppPageType;
import com.gic.haoban.manage.api.enums.NoticeMessageTypeEnum;
......@@ -125,8 +126,8 @@ public class MessageApiServiceImpl implements MessageApiService {
QywxCallBackDTO dto = JSON.parseObject(param, QywxCallBackDTO.class);
log.info("【成员部门同步回调处理】dto={}", JSON.toJSONString(param));
String suiteId = dto.getSuiteId();
if (CONTACT_APP.equals(suiteId) || SELF_APP.equals(suiteId)) {
log.info("自建和客户联系回调不处理");
if (!SELF_APP.equals(suiteId)) {
log.info("好办和客户联系回调不处理");
return;
}
//处理成员
......@@ -177,7 +178,7 @@ public class MessageApiServiceImpl implements MessageApiService {
* @param enterpriseId
* @param secret
*/
private void dealClerkUser(QywxCallBackDTO dto, String enterpriseId, String secret) {
private void dealClerkUser(QywxCallBackDTO dto, String enterpriseId, String secret, String staffName) {
ClerkQwDTO clerkQwDTO = new ClerkQwDTO();
clerkQwDTO.setEnterpriseId(enterpriseId);
String mainDeptId = dto.getMainDepartment();
......@@ -191,7 +192,7 @@ public class MessageApiServiceImpl implements MessageApiService {
com.gic.wechat.api.dto.qywx.DepartmentDTO mainDept = departmentIdMap.get(Integer.valueOf(mainDeptId));
clerkQwDTO.setStoreName(mainDept.getName());
clerkQwDTO.setClerkCode(dto.getUserid());
clerkQwDTO.setClerkName(dto.getUserName());
clerkQwDTO.setClerkName(staffName);
clerkQwDTO.setClerkType(dto.getIsLeaderInDept()[0]);
clerkQwDTO.setClerkGener(dto.getGender());
clerkQwDTO.setPhoneNumber(dto.getMobile());
......@@ -223,12 +224,13 @@ public class MessageApiServiceImpl implements MessageApiService {
if (changeType.equals(WxEditType.ADD_USER.getCode())) {
log.info("成员同步新增,userid:{}", userid);
//新增
this.staffApiService.wxGetAdd(userid, wxEnterpriseId);
ServiceResponse serviceResponse = this.staffApiService.wxGetAdd(userid, wxEnterpriseId);
// 校验适用企业-定制
boolean suitWxEnterpriseIid = checkSuitEnterpriseId(wxEnterpriseId);
if (suitWxEnterpriseIid) {
String staffName = Convert.toStr(serviceResponse.getResult());
//鸿星尔克定制
dealErKe(qywxCallBackDTO, wxEnterpriseId);
dealErKe(qywxCallBackDTO, wxEnterpriseId, staffName);
}
} else if (changeType.equals(WxEditType.UPDATE_USER.getCode())) {
log.info("成员同步修改,userid:{}", userid);
......@@ -406,7 +408,7 @@ public class MessageApiServiceImpl implements MessageApiService {
* @param qywxCallBackDTO
* @param wxEnterpriseId
*/
private void dealErKe(QywxCallBackDTO qywxCallBackDTO, String wxEnterpriseId) {
private void dealErKe(QywxCallBackDTO qywxCallBackDTO, String wxEnterpriseId, String staffName) {
log.info("成员同步定制化开始");
// 处理定制-目前鸿星尔克用
boolean checkErkeDeal = checkErkeDeal(qywxCallBackDTO);
......@@ -424,7 +426,7 @@ public class MessageApiServiceImpl implements MessageApiService {
log.info("没有配置secret:{}", wxEnterpriseId);
return;
}
dealClerkUser(qywxCallBackDTO, relatedList.get(0).getEnterpriseId(), secretSetting.getSecretVal());
dealClerkUser(qywxCallBackDTO, relatedList.get(0).getEnterpriseId(), secretSetting.getSecretVal(), staffName);
log.info("成员同步定制化结束");
}
......
......@@ -509,10 +509,11 @@ public class StaffApiServiceImpl implements StaffApiService {
}
@Override
public void wxGetAdd(String userId, String wxEnterpriseId) {
public ServiceResponse wxGetAdd(String userId, String wxEnterpriseId) {
RedisUtil.lock("haoban_add_user" + wxEnterpriseId + userId, 2L);
ServiceResponse wxSaveNew = getWxSaveNew(userId, wxEnterpriseId);
logger.info("信息:{}", JSONObject.toJSONString(wxSaveNew));
return wxSaveNew;
}
@Override
......
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