Commit 930c5f22 authored by hanfeng's avatar hanfeng

Merge branch 'master-customer-management' into dev

parents ccd4e7db ce219f99
package com.github.wxiaoqi.security.admin.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import tk.mybatis.mapper.annotation.KeySql;
import tk.mybatis.mapper.code.IdentityDialect;
......@@ -22,12 +24,15 @@ public class AppStaffUser {
@Column(name = "su_id")
@ApiModelProperty("员工app账号id")
private Integer suId;
@Column(name = "su_id")
@Column(name = "su_phone")
@ApiModelProperty("员工手机号")
private String suPhone;
@Column(name = "u_name")
@ApiModelProperty("客户姓名")
private String uName;
@Column(name = "u_id")
@ApiModelProperty("客户id")
private Integer uid;
@ApiModelProperty("客户手机")
private String phone;
@ApiModelProperty("客户公司")
......
......@@ -18,6 +18,11 @@ public class AppStaffUserDTO {
* 员工手机号
*/
private String suPhone;
/**
* 客户id
*/
private Integer uid;
/**
* 下级客户姓名
*/
......@@ -30,5 +35,5 @@ public class AppStaffUserDTO {
/**
* 下级身份
*/
private String positionId;
private Integer positionId;
}
package com.github.wxiaoqi.security.admin.entity;
import lombok.Data;
/**
* 修改后的用户信息
* @author Administrator
* @Auther: Administrator
* @Date: 2019/12/17 18:24
* @Description:
*/
@Data
public class ModifiedUsers {
private Integer userid;
private String phone;
private String name;
private Integer positionId;
}
......@@ -4,10 +4,12 @@ import cn.hutool.core.collection.CollectionUtil;
import com.github.wxiaoqi.security.admin.entity.AppStaffUser;
import com.github.wxiaoqi.security.admin.entity.AppStaffUserDTO;
import com.github.wxiaoqi.security.admin.entity.AppStaffUserVo;
import com.github.wxiaoqi.security.admin.entity.ModifiedUsers;
import com.github.wxiaoqi.security.admin.mapper.AppStaffUserMapper;
import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.exception.BaseException;
import com.xxfc.platform.im.utils.StringUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -25,11 +27,9 @@ import java.util.List;
public class AppStaffUserBiz extends BaseBiz<AppStaffUserMapper, AppStaffUser> {
private final AppUserDetailBiz appUserDetailBiz;
private final Integer POSITION_ID=4;
private final AppUserLoginBiz appUserLoginBiz;
public List<AppStaffUser> getAll(Integer id, String username) {
return mapper.selectByBysuIdOrUsername(id,username);
}
......@@ -69,7 +69,6 @@ public class AppStaffUserBiz extends BaseBiz<AppStaffUserMapper, AppStaffUser> {
return appStaffUserVo;
}
}
return null;
......@@ -100,19 +99,40 @@ public class AppStaffUserBiz extends BaseBiz<AppStaffUserMapper, AppStaffUser> {
* 添加用户关系
* @param staffUserDTO
*/
public void add(AppStaffUserDTO staffUserDTO){
AppStaffUser staffUser = new AppStaffUser();
BeanUtils.copyProperties(staffUserDTO,staffUser);
staffUser.setStatus(1);
public void addAppStaffUser(AppStaffUserDTO staffUserDTO){
AppUserVo superAppUserVo= appUserDetailBiz.getUserInfoById(staffUserDTO.getSuId());
AppUserVo userInfoById = appUserDetailBiz.getUserInfoById(staffUserDTO.getUid());
AppStaffUser appStaffUser = new AppStaffUser();
appStaffUser.setSuId(superAppUserVo.getUserid());
appStaffUser.setSuPhone(superAppUserVo.getUsername());
appStaffUser.setUid(userInfoById.getUserid());
appStaffUser.setUName(StringUtil.isEmpty(userInfoById.getRealname()) ? userInfoById.getNickname() : userInfoById.getRealname());
appStaffUser.setPhone(userInfoById.getUsername());
appStaffUser.setStatus(1);
if (POSITION_ID.equals(staffUserDTO.getPositionId())) {
throw new BaseException("绑定的是员工");
}
if (select(staffUser)) {
insertSelective(staffUser);
if (select(appStaffUser)) {
insertSelective(appStaffUser);
}else {
updateByPhone(staffUser);
updateByPhone(appStaffUser);
}
}
/**
* 修改客户关系,根据修改后的用户信息
* @param modifiedUsers
*/
public void updateByModifiedUsers(ModifiedUsers modifiedUsers){
if (POSITION_ID.equals(modifiedUsers.getPositionId())) {
mapper.updateByPositionId(modifiedUsers);
}else {
mapper.update(modifiedUsers);
}
}
}
......@@ -34,7 +34,6 @@ public class AppUserLogRemarkBiz extends BaseBiz<AppUserLogRemarkMapper, AppUser
if (appUserLogRemarkDTO == null || StringUtils.isBlank(appUserLogRemarkDTO.getRemark()) || appUserLogRemarkDTO.getLevelId() == null) {
ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE, "参数不能为空");
}
AppUserLogRemark appUserLogRemark = new AppUserLogRemark();
BeanUtils.copyProperties(appUserLogRemarkDTO, appUserLogRemark);
insertSelective(appUserLogRemark);
......
......@@ -57,6 +57,9 @@ public class AppUserRelationBiz extends BaseBiz<AppUserRelationMapper, AppUserRe
@Autowired
private AppUserPositionTempBiz positionTempBiz;
@Autowired
private AppStaffUserBiz staffUserBiz;
/**
* 关系绑定
* 规则A->B (B无有效上线+无有效下线)
......@@ -109,6 +112,12 @@ public class AppUserRelationBiz extends BaseBiz<AppUserRelationMapper, AppUserRe
getMyBiz().updRelation(relation);
}
}
if (relation != null){
AppStaffUserDTO staffUserDTO=new AppStaffUserDTO();
staffUserDTO.setSuId(relation.getParentId());
staffUserDTO.setUid(relation.getUserId());
staffUserBiz.addAppStaffUser(staffUserDTO);
}
}
}
......
package com.github.wxiaoqi.security.admin.mapper;
import com.github.wxiaoqi.security.admin.entity.AppStaffUser;
import com.github.wxiaoqi.security.admin.entity.ModifiedUsers;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import tk.mybatis.mapper.common.Mapper;
......@@ -13,4 +14,8 @@ import java.util.List;
*/
public interface AppStaffUserMapper extends Mapper<AppStaffUser> {
List<AppStaffUser> selectByBysuIdOrUsername(@Param("id") Integer id,@Param("username") String username);
void updateByPositionId(ModifiedUsers modifiedUsers);
void update(ModifiedUsers modifiedUsers);
}
......@@ -58,8 +58,6 @@ public class AppStaffUserController extends BaseController<AppStaffUserBiz, AppS
@PostMapping(value = "")
public ObjectRestResponse<AppStaffUser> add(@RequestBody AppStaffUser appStaffUser) throws Exception {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(authConfig.getToken(request));
// AppUserDTO appUserDTO = publicController.userDetailByUsername(appStaffUser.getPhone()).getData();
Integer positionId = null;
try {
positionId = appUserDetailBiz.getUserInfoById(
......
......@@ -2,7 +2,52 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.github.wxiaoqi.security.admin.mapper.AppStaffUserMapper">
<select id="selectByBysuIdOrUsername" resultType="com.github.wxiaoqi.security.admin.entity.AppStaffUser">
select * from where is_del = 0 and (su_id=#{id} or su_phone=#{username})
SELECT
s.id,
s.su_id,
s.u_id,
s.company,
s.remarks,
s.crt_time,
s.upd_time,
s.is_del,
s.`status`,
(CASE
WHEN ld.realname IS NOT NULL THEN
ld.realname
WHEN ld.nickname IS NOT NULL THEN
ld.nickname
ELSE
s.u_name
END
) AS u_name,
(
CASE
WHEN ld.username IS NOT NULL THEN
ld.username
ELSE
s.phone
END
) AS phone
FROM
app_staff_user s
LEFT JOIN (
SELECT
l.id,
l.username,
d.nickname,
d.realname
FROM
app_user_login l
LEFT JOIN app_user_detail d ON l.id = d.userid
) ld ON s.u_id = ld.id
WHERE is_del = 0 and (su_id=#{id} or su_phone=#{username})
</select>
<update id="updateByPositionId" parameterType="com.github.wxiaoqi.security.admin.entity.ModifiedUsers">
update app_staff_user set su_phone=#{phone} where su_id=#{userid}
</update>
<update id="update" parameterType="com.github.wxiaoqi.security.admin.entity.ModifiedUsers">
update app_staff_user set u_name=#{name}, phone= #{phone} where u_id=#{userid}
</update>
</mapper>
\ No newline at end of file
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