Commit 437c7e19 by fudahua

同步通讯录 门店同步fix

parent 542d08a1
......@@ -848,7 +848,6 @@ public class StaffApiServiceImpl implements StaffApiService {
@Override
public ServiceResponse saveSyncStaffByGic(GicClerkDTO clerkDTO) {
ServiceResponse response = new ServiceResponse();
if (clerkDTO == null) {
response.setCode(0);
response.setMessage("参数错误");
......@@ -870,7 +869,6 @@ public class StaffApiServiceImpl implements StaffApiService {
}
String departmentId = department.getDepartmentId();
String wxEnterpriseId = department.getWxEnterpriseId();
// StaffDTO staff = this.selectByNationcodeAndPhoneNumber(wxEnterpriseId, nationcode, phoneNumber);
StaffDTO staff = geCcheckAndInitUser(wxEnterpriseId, clerkDTO.getNationcode(), clerkDTO.getPhoneNumber());
if (staff == null) {
if (clerkDTO.getStatus() != 1) {
......@@ -967,6 +965,81 @@ public class StaffApiServiceImpl implements StaffApiService {
return response;
}
/**
* 新增staff
*
* @param staff
* @param departmentIds
* @return
*/
private ServiceResponse addStaff(StaffDTO staff, String departmentIds) {
ServiceResponse hr = new ServiceResponse();
hr.setCode(1);
Integer activeFlag = staff.getActiveFlag();
staff.setActiveFlag(0);
Integer syncPostionFlag = staff.getSyncPostionFlag();
if (syncPostionFlag != null && syncPostionFlag == 1) {
staff.setExtendPostion(staff.getPostion());
}
TabHaobanStaff tab = EntityUtil.changeEntityByJSON(TabHaobanStaff.class, staff);
String staffId = StringUtil.randomUUID();
tab.setStaffId(staffId);
//调接口获取
String wxUserId = "";
WxEnterpriseDTO enterpriseDTO = wxEnterpriseService.selectById(staff.getWxEnterpriseId());
if (enterpriseDTO != null) {
UserDTO userDTO = new UserDTO();
userDTO.setCorpid(enterpriseDTO.getCorpid());
String[] departmentIdArr = departmentIds.split(",");
Integer[] wxDepartmentIdArrIntegers = new Integer[departmentIdArr.length];
int index = 0;
for (String string : departmentIdArr) {
TabHaobanDepartment tabs = departmentService.selectById(string);
wxDepartmentIdArrIntegers[index] = Integer.parseInt(tabs.getWxDepartmentId());
index++;
}
userDTO.setDepartment(wxDepartmentIdArrIntegers);
userDTO.setGender(staff.getSex() == null ? null : staff.getSex().toString());
userDTO.setMobile(staff.getPhoneNumber());
userDTO.setName(staff.getStaffName());
userDTO.setUserid(staffId);
userDTO.setAlias(staff.getNickName());
userDTO.setExternal_position(tab.getExtendPostion());
userDTO.setPosition(tab.getPostion());
if (activeFlag == 1) {
userDTO.setTo_invite(true);
}
logger.info("【店员新增】userDTO = {}", JSON.toJSONString(userDTO));
JSONResponse jp = qywxUserApiService.createSelfWorkWxUser(userDTO, enterpriseDTO.getCorpid(), enterpriseDTO.getContactSecret());
logger.info("【店员新增】jp = {}", JSON.toJSONString(jp));
if (jp.getErrorCode() != 0) {
hr.setCode(0);
hr.setMessage("微信新增失败");
return hr;
}
staffService.add(tab);
wxUserId = staffId;
}
if (StringUtils.isNotBlank(wxUserId)) {
String[] departmentIdArr = departmentIds.split(",");
for (String string : departmentIdArr) {
StaffDepartmentRelatedDTO related = new StaffDepartmentRelatedDTO();
related.setDepartmentId(string);
related.setNationCode(staff.getNationCode());
related.setPhoneNumber(staff.getPhoneNumber());
related.setStaffId(staffId);
related.setWxUserId(wxUserId);
related.setStaffName(staff.getStaffName());
related.setWxEnterpriseId(staff.getWxEnterpriseId());
staffDepartmentRelatedService.add(related);
}
} else {
hr.setCode(0);
hr.setMessage("微信端新增失败");
}
hr.setResult(staffId);
return hr;
}
// private String getMobile(String phoneNumber,String nationcode){
// String mobile = nationcode + phoneNumber;
......
......@@ -99,6 +99,7 @@ public class StoreSyncOperation implements BaseSyncOperation {
department.setChainId(pParentDepartment.getChainId() + Constant.ID_SEPARATOR + dealParamMqDTO.getData());
department.setChainName(pParentDepartment.getChainName() + Constant.NAME_SEPARATOR + department.getDepartmentName());
department.setIsStore(1);
department.setStoreCode(storeDTO.getStoreCode());
department.setLevel(pParentDepartment.getLevel() + 1);
department.setRelatedId(dealParamMqDTO.getData());
//状态 处理状态
......
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