Commit c0397cca by 墨竹

Merge branch 'fixbug_0221' into developer

# Conflicts:
#	haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/controller/ClerkController.java
#	haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/controller/WxEnterpriseInfoController.java
#	haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/errCode/HaoBanErrCode.java
#	haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/vo/StaffVO.java
parents 7f20b3b2 2490ac42
......@@ -36,6 +36,11 @@ public interface StaffApiService {
*/
ServiceResponse getWxSaveNew(String userId, String wxEnterpriseId);
/**
* 新增成员
* @param userId
* @param wxEnterpriseId
*/
void wxGetAdd(String userId, String wxEnterpriseId);
void staffEdit(StaffDTO staffDTO, String departmentIds);
......
......@@ -4,9 +4,7 @@ import com.gic.commons.util.EntityUtil;
import com.gic.haoban.common.utils.StringUtil;
import com.gic.haoban.manage.api.dto.StaffDTO;
import com.gic.haoban.manage.service.dao.mapper.StaffMapper;
import com.gic.haoban.manage.service.dao.mapper.WxEnterpriseMapper;
import com.gic.haoban.manage.service.entity.TabHaobanStaff;
import com.gic.haoban.manage.service.entity.TabHaobanWxEnterprise;
import com.gic.haoban.manage.service.service.MemberUnionRelatedService;
import com.gic.haoban.manage.service.service.StaffService;
import com.github.pagehelper.Page;
......@@ -67,6 +65,9 @@ public class StaffServiceImpl implements StaffService {
@Override
public TabHaobanStaff selectByPhoneNumberAndEnterpriseId(String phoneNumber, String wxEnterpriseId) {
if (StringUtils.isBlank(phoneNumber)) {
return null;
}
return mapper.selectByPhoneNumberAndEnterpriseId(phoneNumber, wxEnterpriseId);
}
......
......@@ -389,9 +389,9 @@ public class StaffApiServiceImpl implements StaffApiService {
String[] arr = getNationCodeAndPhoneNumber(mobile);
String nationCode = arr[0];
String phoneNumber = arr[1];
TabHaobanStaff staff = staffService.selectByPhoneNumberAndEnterpriseId(phoneNumber.trim(), wxEnterpriseId);
if (staff != null){
staffService.delOtherStaffByWxUserId(staff.getWxUserId(),staff.getStaffId(), wxEnterpriseId);
TabHaobanStaff staff = staffService.selectByPhoneNumberAndEnterpriseId(phoneNumber, wxEnterpriseId);
if (staff != null) {
staffService.delOtherStaffByWxUserId(staff.getWxUserId(), staff.getStaffId(), wxEnterpriseId);
}
staff = (staff == null ? new TabHaobanStaff() : staff);
staff.setWxUserId(userId);
......
......@@ -185,7 +185,6 @@ public class ClerkController extends WebBaseController {
/**
* 会员小程序-获取后台认证配置
*
* @param wxEnterpriseId
* @return
*/
......@@ -204,7 +203,6 @@ public class ClerkController extends WebBaseController {
/**
* 会员小程序-获取后台认证配置
*
* @param wxEnterpriseId
* @param staffId
* @return
......@@ -663,7 +661,7 @@ public class ClerkController extends WebBaseController {
//精确查,根据手机号或者code,查找
@RequestMapping("query-clerk-list-by-code")
public HaobanResponse queryClerkListByCode(String keyword, String wxEnterpriseId, String staffId) {
if (StringUtils.isAnyBlank(staffId, wxEnterpriseId, keyword)) {
if (StringUtils.isAnyBlank(staffId, wxEnterpriseId,keyword)) {
return resultResponse(HaoBanErrCode.ERR_2);
}
List<EnterpriseDetailDTO> list = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(wxEnterpriseId);
......@@ -796,7 +794,7 @@ public class ClerkController extends WebBaseController {
return ret;
}
return ret.stream().filter(mid -> (!clerkIds.contains(mid.getClerkId()))).collect(
Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(n -> n.getClerkId()))), ArrayList::new));
Collectors.collectingAndThen(Collectors.toCollection(()->new TreeSet<>(Comparator.comparing(n->n.getClerkId()))),ArrayList::new));
}
//绑定
......@@ -1190,7 +1188,7 @@ public class ClerkController extends WebBaseController {
CustomerFriendMemberVO ret = new CustomerFriendMemberVO();
StaffDTO staffDTO = staffApiService.selectById(qo.getStaffId());
if (staffDTO == null) {
return RestResponse.failure(HaoBanErrCode.ERR_6.getCode() + "", HaoBanErrCode.ERR_6.getMsg());
return RestResponse.failure(HaoBanErrCode.ERR_6.getCode()+"",HaoBanErrCode.ERR_6.getMsg());
}
int friendCount = externalClerkRelatedApiService.countFriendCountByClerkId(qo.getWxEnterpriseId(), qo.getEnterpriseId(), staffDTO.getWxUserId(), qo.getClerkId());
int memberCount = customerApiService.countMember(qo.getEnterpriseId(), qo.getStoreId(), qo.getClerkId());
......@@ -1231,14 +1229,14 @@ public class ClerkController extends WebBaseController {
* @author mozhu
* @date 2021-12-29 10:42:24
*/
@RequestMapping(value = "getOpenIdByStaffId", method = {RequestMethod.POST, RequestMethod.GET})
@RequestMapping(value = "getOpenIdByStaffId",method = {RequestMethod.POST,RequestMethod.GET})
public RestResponse<String> getOpenIdByStaffId() {
String staffId = this.getLoginUser().getStaffId();
String wxEnterpriseId = this.getLoginUser().getWxEnterpriseId();
StaffDTO staffDTO = staffApiService.selectById(staffId);
if (staffDTO == null) {
int code = HaoBanErrCode.ERR_6.getCode();
return RestResponse.failure(String.valueOf(code), HaoBanErrCode.ERR_6.getMsg());
return RestResponse.failure(String.valueOf(code),HaoBanErrCode.ERR_6.getMsg());
}
String wxOpenId = staffDTO.getWxOpenId();
if (StringUtils.isNotBlank(wxOpenId)) {
......@@ -1247,15 +1245,15 @@ public class ClerkController extends WebBaseController {
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseApiService.getOne(wxEnterpriseId);
if (wxEnterpriseDTO == null) {
int code = HaoBanErrCode.ERR_400002.getCode();
return RestResponse.failure(String.valueOf(code), HaoBanErrCode.ERR_400002.getMsg());
return RestResponse.failure(String.valueOf(code),HaoBanErrCode.ERR_400002.getMsg());
}
String wxUserId = staffDTO.getWxUserId();
String openid = qywxUserApiService.getSelfOpenIdByUserId(wxEnterpriseDTO.getCorpid(), config.getWxSuiteid(), wxUserId);
if (StringUtils.isBlank(openid)) {
int code = HaoBanErrCode.ERR_600003.getCode();
return RestResponse.failure(String.valueOf(code), HaoBanErrCode.ERR_600003.getMsg());
return RestResponse.failure(String.valueOf(code),HaoBanErrCode.ERR_600003.getMsg());
}
staffApiService.updateOpenIdByStaffId(staffId, openid);
staffApiService.updateOpenIdByStaffId(staffId,openid);
return RestResponse.successResult(openid);
}
}
......@@ -121,11 +121,16 @@ public class WxEnterpriseInfoController extends WebBaseController {
if (loginStaff == null) {
return resultResponse(HaoBanErrCode.ERR_600001);
}
if (StringUtils.isNotBlank(loginStaff.getPhoneNumber())) {
DictDTO loginUserId = managerDictService.getSMSDict("app_login_phone_num", loginStaff.getPhoneNumber());
logger.info("伪登录:{},userId:{}", loginStaff.getPhoneNumber(), JSONObject.toJSONString(loginUserId));
if (null != loginUserId) {
String val = loginUserId.getDictValue();
String phoneNumber = loginStaff.getPhoneNumber();
if (StringUtils.isBlank(phoneNumber)) {
return resultResponse(HaoBanErrCode.ERR_600002);
}
DictDTO dictDTO = managerDictService.getSMSDict("app_login_phone_num", phoneNumber);
logger.info("伪登录:{},userId:{}", phoneNumber, JSONObject.toJSONString(dictDTO));
if (null != dictDTO) {
String val = dictDTO.getDictValue();
List<StaffDTO> staffDTOS = new ArrayList<>();
List<StaffDTO> phoneDtos = staffApiService.listByPhoneNumber(val);
List<StaffDTO> userDtos = staffApiService.listByWxUserId(val);
......@@ -137,21 +142,19 @@ public class WxEnterpriseInfoController extends WebBaseController {
}
if (CollectionUtils.isNotEmpty(staffDTOS)) {
if (staffDTOS.size() > 1) {
String dictName = loginUserId.getDictName();
String dictName = dictDTO.getDictName();
loginStaff = staffDTOS.stream().filter(staffDTO -> dictName.indexOf(staffDTO.getWxEnterpriseId()) > 0).findFirst().orElse(loginStaff);
} else {
loginStaff = staffDTOS.get(0);
}
}
}
}
String staffId = loginStaff.getStaffId();
//激活状态
if (loginStaff.getActiveFlag() == 0) {
staffApiService.activeStaff(staffId);
}
String wxEnterpriseId = loginStaff.getWxEnterpriseId();
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseApiService.getOne(wxEnterpriseId);
String accesstoken = qywxCorpApiService.getCorpAccessToken(wxEnterpriseDTO.getCorpid(), config.getWxSuiteid());
......@@ -160,7 +163,7 @@ public class WxEnterpriseInfoController extends WebBaseController {
wellDoneLoginInfoVo.setStaffId(staffId);
wellDoneLoginInfoVo.setWxEnterpriseId(wxEnterpriseId);
wellDoneLoginInfoVo.setStaffName(loginStaff.getStaffName());
wellDoneLoginInfoVo.setPhoneNumber(loginStaff.getPhoneNumber());
wellDoneLoginInfoVo.setPhoneNumber(phoneNumber);
wellDoneLoginInfoVo.setNationcode(loginStaff.getNationCode());
wellDoneLoginInfoVo.setWxUserId(loginStaff.getWxUserId());
wellDoneLoginInfoVo.setPrivacyUseFlag(1);
......@@ -187,6 +190,7 @@ public class WxEnterpriseInfoController extends WebBaseController {
if (staffDTO == null) {
return RestResponse.failure(String.valueOf(HaoBanErrCode.ERR_6.getCode()), HaoBanErrCode.ERR_6.getMsg());
}
String phoneNumber = staffDTO.getPhoneNumber();
if (StringUtils.isBlank(phoneNumber)) {
return RestResponse.failure(String.valueOf(HaoBanErrCode.ERR_600002.getCode()), HaoBanErrCode.ERR_600002.getMsg());
......
......@@ -190,7 +190,7 @@ public enum HaoBanErrCode {
ERR_500001(500001, "该企业没关联好办"),
ERR_500003(500003, "企业corpid不对应,需要重新登录传code"),
ERR_600001(600001, "成员不存在,请联系管理员后台授权通讯录权限"),
ERR_600002(600002, "未获取到成员手机号,请同步通讯录"),
ERR_600002(600002, "成员无手机号,请联系管理员后台授权通讯录权限"),
ERR_600003(600003, "未获取成员openid"),
ERR_10004(10004,"成员名称不能为空"),
......
......@@ -6,7 +6,14 @@ import java.io.Serializable;
import java.util.Date;
import java.util.List;
<<<<<<< HEAD
public class StaffVO implements Serializable{
=======
public class StaffVO implements Serializable {
private static final long serialVersionUID = 1L;
>>>>>>> fixbug_0221
/**
* 员工id
*/
......@@ -18,11 +25,19 @@ public class StaffVO implements Serializable{
/**
* 微信用户id
*/
<<<<<<< HEAD
private String wxUserId;
/**
* 手机号
*/
private String phoneNumber;
=======
private String wxUserId;
/**
* 手机号
*/
private String phoneNumber;
>>>>>>> fixbug_0221
/**
* 员工姓名
*/
......@@ -72,6 +87,7 @@ public class StaffVO implements Serializable{
private String clerkCode;
<<<<<<< HEAD
private String staffDepartmentRelatedId;
private int clerkType;
......@@ -85,15 +101,39 @@ public class StaffVO implements Serializable{
private int memberCount;
private String clerkId;
=======
private String staffDepartmentRelatedId;
private int clerkType;
private Integer syncPostionFlag;
private Integer superManagerFlag;
private Boolean weixinPush;
private Integer memberCount;
private String clerkId;
>>>>>>> fixbug_0221
/**
* 关联状态 1 已关联 0 未关联
* 关联状态为 员工是否关联某门店导购
*/
private Integer relationFlag;
<<<<<<< HEAD
private static final long serialVersionUID = 1L;
public String getClerkId() {
=======
private String wxOpenUseId;
private String wxOpenId;
private String qrCode;
public String getClerkId() {
>>>>>>> fixbug_0221
return clerkId;
}
......@@ -304,11 +344,19 @@ public class StaffVO implements Serializable{
this.weixinPush = weixinPush;
}
<<<<<<< HEAD
public int getMemberCount() {
return memberCount;
}
public void setMemberCount(int memberCount) {
=======
public Integer getMemberCount() {
return memberCount;
}
public void setMemberCount(Integer memberCount) {
>>>>>>> fixbug_0221
this.memberCount = memberCount;
}
......@@ -319,4 +367,31 @@ public class StaffVO implements Serializable{
public void setRelationFlag(Integer relationFlag) {
this.relationFlag = relationFlag;
}
<<<<<<< HEAD
=======
public String getWxOpenUseId() {
return wxOpenUseId;
}
public void setWxOpenUseId(String wxOpenUseId) {
this.wxOpenUseId = wxOpenUseId;
}
public String getWxOpenId() {
return wxOpenId;
}
public void setWxOpenId(String wxOpenId) {
this.wxOpenId = wxOpenId;
}
public String getQrCode() {
return qrCode;
}
public void setQrCode(String qrCode) {
this.qrCode = qrCode;
}
>>>>>>> fixbug_0221
}
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