Commit 8dda1f6e by 墨竹

feat:同步通讯录修改

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