Commit 65854245 by yao.xiao

增加-经纪人我的设置保存

parent a9f0831c
......@@ -111,6 +111,10 @@
<artifactId>guava</artifactId>
<version>20.0</version>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
</dependency>
</dependencies>
<build>
......
......@@ -5,6 +5,8 @@ import com.yd.api.practitioner.vo.login.PractitionerLoginRequestVO;
import com.yd.api.practitioner.vo.login.PractitionerLoginResponseVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankRequestVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankResponseVO;
import com.yd.api.practitioner.vo.setting.SettingQueryRequestVO;
import com.yd.api.practitioner.vo.setting.SettingQueryResponseVO;
import com.yd.api.result.JsonResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -48,4 +50,44 @@ public class PractitionerController {
return result;
}
/**
* 查询经纪人的个人设置
* @param requestVO
* @return responseVO
*/
@RequestMapping("/settingQuery")
public Object settingQuery(@RequestBody SettingQueryRequestVO requestVO){
JsonResult result = new JsonResult();
SettingQueryResponseVO responseVO = practitionerService.settingQuery(requestVO);
result.setData(responseVO);
result.addResult(responseVO);
return result;
}
/**
* 保存经纪人的个人设置
* @param requestVO
* @return responseVO
*/
// @RequestMapping("/settingSave")
// public Object mySettingSave(@RequestBody SettingSaveRequestVO requestVO) throws Exception {
// JsonResult result = new JsonResult();
// SettingSaveResponseVO responseVO = practitionerService.settingSave(requestVO);
// result.setData(responseVO);
// result.addResult(responseVO);
// return result;
// }
/**
* 删除经纪人照片
*/
// @RequestMapping("/imgDelete")
// public Object imgDelete(@RequestBody ImgDeleteRequestVO requestVO){
// JsonResult result = new JsonResult();
// ImgDeleteResponseVO responseVO = practitionerService.imgDelete(requestVO);
// result.setData(responseVO);
// result.addResult(responseVO);
// return result;
// }
}
......@@ -4,6 +4,8 @@ import com.yd.api.practitioner.vo.login.PractitionerLoginRequestVO;
import com.yd.api.practitioner.vo.login.PractitionerLoginResponseVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankRequestVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankResponseVO;
import com.yd.api.practitioner.vo.setting.SettingQueryRequestVO;
import com.yd.api.practitioner.vo.setting.SettingQueryResponseVO;
import org.springframework.stereotype.Service;
@Service("practitionerService")
......@@ -23,5 +25,10 @@ public interface PractitionerService {
*/
PractitionerRankResponseVO practitionerRank(PractitionerRankRequestVO requestVO);
/**
* 经纪人设置查询
* @param requestVO
* @return
*/
SettingQueryResponseVO settingQuery(SettingQueryRequestVO requestVO);
}
......@@ -6,19 +6,22 @@ import com.yd.api.practitioner.vo.rank.AclCustomerFortuneStatistics;
import com.yd.api.practitioner.vo.rank.PractitionerRankRequestVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankResponseVO;
import com.yd.api.practitioner.vo.rank.PractitionerInfoForAchievement;
import com.yd.api.practitioner.vo.setting.LifeImg;
import com.yd.api.practitioner.vo.setting.SettingQueryRequestVO;
import com.yd.api.practitioner.vo.setting.SettingQueryResponseVO;
import com.yd.api.result.CommonResult;
import com.yd.dal.entity.customer.AclCustomerLog;
import com.yd.dal.entity.customer.AclFileUpload;
import com.yd.dal.entity.customer.CustomerFileUpload;
import com.yd.dal.entity.practitioner.PractitionerBasicInfo;
import com.yd.dal.entity.practitioner.PractitionerInfo;
import com.yd.dal.entity.practitioner.PractitionerRankInfo;
import com.yd.dal.entity.practitioner.PractitionerSubordinateInfo;
import com.yd.dal.entity.practitioner.*;
import com.yd.dal.service.customer.AclCustomerLogDALService;
import com.yd.dal.service.customer.AclFileUploadDALService;
import com.yd.dal.service.meta.MdCodeDALService;
import com.yd.dal.service.practitioner.PractitionerDALService;
import com.yd.dal.service.practitioner.PractitionerSubordinateDALService;
import com.yd.util.config.ZHBErrorConfig;
import org.apache.commons.beanutils.BeanPropertyValueEqualsPredicate;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -208,4 +211,60 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
responseVO.setPractitionerInfo(practitionerInfo);
responseVO.setRank(rankList);
}
@Override
public SettingQueryResponseVO settingQuery(SettingQueryRequestVO requestVO) {
SettingQueryResponseVO responseVO = new SettingQueryResponseVO();
Long practitionerId = requestVO.getPractitionerId();//入参经纪人id
//需要查询的信息 1.自我介绍 2.我的设置 3.头像 4.个人微信二位码 5.生活照
//1.2均在ag_acl_practitioner表中查询
AclPractitionerInfo practitioner = practitionerDALService.findPractitionerById(practitionerId);
String bioIntro = practitioner.getBioIntro();//经纪人个人介绍
Integer isMobileShow = practitioner.getIsMobileShow();
Integer isNameShow = practitioner.getIsNameShow();
//3.4.5在ag_acl_file_upload中查询
//target_type 1=从业人员practioner表, 2=员工user表, 3=客户customer表, 4=渠道客户channel表
//target_use_for 文件用途 1=头像 2=生活照 3=证照 4=毕业证书 5=营业登记证 6.咨询定制方案 7.客户身份证正面照片 8.客户身份证反面照片 9.个人微信二维码
//查询ag_acl_file_upload中isActive=1&&target_type=1&&target_id=practitionerId的信息
AclFileUpload fileUpload = new AclFileUpload();
fileUpload.setIsActive(1);
fileUpload.setTargetType(1);
fileUpload.setTargetId(practitionerId);
List<AclFileUpload> fileUploads = aclFileUploadDALService.findByAclFileUpload(fileUpload);
//筛选出头像
BeanPropertyValueEqualsPredicate predicateClause = new BeanPropertyValueEqualsPredicate("targetUseFor",1);
List<AclFileUpload> headImgs = (List<AclFileUpload>) CollectionUtils.select(fileUploads,predicateClause);
//头像至多一张
String headImgUrl = null;
if (!headImgs.isEmpty()){
headImgUrl = headImgs.get(0).getFilePath();
}
//筛选出生活照
predicateClause = new BeanPropertyValueEqualsPredicate("targetUseFor",2);
List<AclFileUpload> lifeImgs = (List<AclFileUpload>) CollectionUtils.select(fileUploads,predicateClause);
List<LifeImg> lifeImgUrls = new ArrayList<>();
for (AclFileUpload lifeImg: lifeImgs){
LifeImg info = new LifeImg();
info.setId(lifeImg.getId());
info.setLifeImgUrl(lifeImg.getFilePath());
lifeImgUrls.add(info);
}
//筛选出二维码
predicateClause = new BeanPropertyValueEqualsPredicate("targetUseFor",9);
List<AclFileUpload> wxQRImgs = (List<AclFileUpload>) CollectionUtils.select(fileUploads,predicateClause);
String wxQRImgUrl = null;
if (!wxQRImgs.isEmpty()){
wxQRImgUrl = wxQRImgs.get(0).getFilePath();
}
//返回参数
responseVO.setPractitionerId(practitionerId);
responseVO.setBioIntro(bioIntro);
responseVO.setIsMobileShow(isMobileShow);
responseVO.setIsNameShow(isNameShow);
responseVO.setHeadImgUrl(headImgUrl);
responseVO.setLifeImgUrls(lifeImgUrls);
responseVO.setWxQRImgUrl(wxQRImgUrl);
responseVO.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
return responseVO;
}
}
package com.yd.api.practitioner.vo.setting;
import lombok.Data;
@Data
public class ImgDeleteRequestVO {
/**
* 经纪人id
*/
private Long practitionerId;
private Long fileId;
}
package com.yd.api.practitioner.vo.setting;
import com.yd.api.result.CommonResult;
import lombok.Data;
@Data
public class ImgDeleteResponseVO {
/**
* 经纪人id
*/
private Long practitionerId;
private CommonResult commonResult;
}
package com.yd.api.practitioner.vo.setting;
import lombok.Data;
@Data
public class LifeImg {
private Long id;
private String lifeImgUrl;
}
package com.yd.api.practitioner.vo.setting;
import lombok.Data;
@Data
public class SettingQueryRequestVO {
/**
* 经纪人id
*/
private Long practitionerId;
}
package com.yd.api.practitioner.vo.setting;
import com.yd.api.result.CommonResult;
import lombok.Data;
import java.util.List;
@Data
public class SettingQueryResponseVO {
/**
* 经纪人id
*/
private Long practitionerId;
/**
* 经纪人自我介绍
*/
private String bioIntro;
/**
* 头像
*/
private String headImgUrl;
/**
* 生活照
*/
private List<LifeImg> lifeImgUrls;
/**
* 微信二维码
*/
private String wxQRImgUrl;
/**
* 姓名是否显示 0=No=不显示 1=Yes=显示
*/
private Integer isNameShow;
/**
* 电话是否显示 0=No=不显示 1=Yes=显示
*/
private Integer isMobileShow;
private CommonResult commonResult;
}
package com.yd.api.practitioner.vo.setting;
import lombok.Data;
import java.util.List;
@Data
public class SettingSaveRequestVO {
/**
* img isShow intro
*/
private String settingSave;
/**
* 经纪人id
*/
private Long practitionerId;
/**
* 经纪人自我介绍
*/
private String bioIntro;
/**
* 姓名是否显示 0=No=不显示 1=Yes=显示
*/
private Integer isNameShow;
/**
* 电话是否显示 0=No=不显示 1=Yes=显示
*/
private Integer isMobileShow;
/**
* 头像
*/
private String headImgUrl;
/**
* 生活照
*/
private List<String> lifeImgUrls;
/**
* 微信二维码
*/
private String wxQRImgUrl;
}
package com.yd.api.practitioner.vo.setting;
import com.yd.api.result.CommonResult;
import lombok.Data;
@Data
public class SettingSaveResponseVO {
private Long practitionerId;
private CommonResult commonResult;
}
......@@ -2,6 +2,9 @@ package com.yd.dal.mapper.customer;
import com.yd.dal.entity.customer.AclFileUpload;
import com.yd.dal.entity.customer.CustomerFileUpload;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface AclFileUploadMapper {
int deleteByPrimaryKey(Long id);
......@@ -17,4 +20,6 @@ public interface AclFileUploadMapper {
int updateByPrimaryKey(AclFileUpload record);
CustomerFileUpload findByTargetTypeAndTargetUseForAndTargetId(Integer targetType, Integer targetUseFor, Long practitionerId);
List<AclFileUpload> findByAclFileUpload(AclFileUpload fileUpload);
}
\ No newline at end of file
package com.yd.dal.service.customer;
import com.yd.dal.entity.customer.AclFileUpload;
import com.yd.dal.entity.customer.CustomerFileUpload;
import org.springframework.stereotype.Service;
import java.util.List;
@Service("aclFileUploadDALService")
public interface AclFileUploadDALService {
/**
......@@ -13,4 +16,11 @@ public interface AclFileUploadDALService {
* @return 查询结果
*/
CustomerFileUpload findFilePathInfo(Integer targetType, Integer targetUseFor, Long practitionerId);
/**
* 查询fileUpload信息
* @param fileUpload
* @return
*/
List<AclFileUpload> findByAclFileUpload(AclFileUpload fileUpload);
}
package com.yd.dal.service.customer.impl;
import com.yd.dal.entity.customer.AclFileUpload;
import com.yd.dal.entity.customer.CustomerFileUpload;
import com.yd.dal.mapper.customer.AclFileUploadMapper;
import com.yd.dal.service.customer.AclFileUploadDALService;
import com.yd.util.intercept.annotation.TargetDataSource;
import com.yd.util.intercept.commons.DataSourceKey;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service("aclFileUploadDALService")
......@@ -22,4 +26,10 @@ public class AclFileUploadDALServiceImpl implements AclFileUploadDALService {
}
return fileUpload;
}
@Override
@TargetDataSource(dataSourceKey = DataSourceKey.DB_MASTER)
public List<AclFileUpload> findByAclFileUpload(AclFileUpload fileUpload) {
return aclFileUploadMapper.findByAclFileUpload(fileUpload);
}
}
package com.yd.dal.service.practitioner;
import com.yd.dal.entity.practitioner.AclPractitionerInfo;
import com.yd.dal.entity.practitioner.PractitionerBasicInfo;
import com.yd.dal.entity.practitioner.PractitionerInfo;
import com.yd.dal.entity.practitioner.PractitionerRankInfo;
......@@ -47,4 +48,11 @@ public interface PractitionerDALService {
* @return
*/
PractitionerInfo findPractitionerInfoByLogin(String mobileNo);
/**
* 通过经纪人id查找经纪人
* @param practitionerId
* @return
*/
AclPractitionerInfo findPractitionerById(Long practitionerId);
}
package com.yd.dal.service.practitioner.impl;
import com.google.common.base.Strings;
import com.yd.dal.entity.practitioner.AclPractitionerInfo;
import com.yd.dal.entity.practitioner.PractitionerBasicInfo;
import com.yd.dal.entity.practitioner.PractitionerInfo;
import com.yd.dal.entity.practitioner.PractitionerRankInfo;
import com.yd.dal.mapper.practitioner.AclPractitionerMapper;
import com.yd.dal.mapper.practitioner.PractitionerMapper;
import com.yd.dal.service.customer.impl.CustomerDALServiceImpl;
import com.yd.dal.service.practitioner.PractitionerDALService;
......@@ -20,6 +22,8 @@ public class PractitionerDALServiceImpl implements PractitionerDALService {
private static final Logger LOG = Logger.getLogger(CustomerDALServiceImpl.class);
@Resource
private PractitionerMapper practitionerMapper;
@Resource
private AclPractitionerMapper aclPractitionerMapper;
@Override
@TargetDataSource(dataSourceKey = DataSourceKey.DB_EGOLDEN)
public PractitionerBasicInfo getPractitionerBasicInfoForOffline(String mobileNo) {
......@@ -61,4 +65,10 @@ public class PractitionerDALServiceImpl implements PractitionerDALService {
public PractitionerInfo findPractitionerInfoByLogin(String mobileNo) {
return practitionerMapper.findPractitionerInfoByLogin(mobileNo);
}
@Override
@TargetDataSource(dataSourceKey = DataSourceKey.DB_MASTER)
public AclPractitionerInfo findPractitionerById(Long practitionerId) {
return aclPractitionerMapper.selectByPrimaryKey(practitionerId);
}
}
......@@ -214,13 +214,13 @@
uploaded_by = #{uploadedBy,jdbcType=BIGINT}
where id = #{id,jdbcType=BIGINT}
</update>
<resultMap id="file_upload_map" type="com.yd.dal.entity.customer.CustomerFileUpload">
<result column="id" property="id"/>
<result column="fileName" property="fileName"/>
<result column="filePath" property="filePath"/>
<result column="remark" property="remark"/>
</resultMap>
<select id="findByTargetTypeAndTargetUseForAndTargetId" resultMap="file_upload_map">
SELECT
u.id as id,
......@@ -233,5 +233,60 @@
and u.target_use_for = #{targetUseFor}
and u.target_id = #{practitionerId}
</select>
<select id="findByAclFileUpload" parameterType="com.yd.dal.entity.customer.AclFileUpload" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from ag_acl_file_upload
<where>
<if test="id != null">
id = #{id,jdbcType=INTEGER}
</if>
<if test="targetType != null">
and target_type = #{targetType,jdbcType=INTEGER}
</if>
<if test="targetId != null">
and target_id = #{targetId,jdbcType=BIGINT}
</if>
<if test="targetNo != null">
and target_no = #{targetNo,jdbcType=VARCHAR}
</if>
<if test="targetUseFor != null">
and target_use_for = #{targetUseFor,jdbcType=INTEGER}
</if>
<if test="targetSeq != null">
and target_seq = #{targetSeq,jdbcType=INTEGER}
</if>
<if test="fileType != null">
and file_type = #{fileType,jdbcType=VARCHAR}
</if>
<if test="fileName != null">
and file_name = #{fileName,jdbcType=VARCHAR}
</if>
<if test="filePath != null">
and file_path = #{filePath,jdbcType=VARCHAR}
</if>
<if test="remark != null">
and remark = #{remark,jdbcType=VARCHAR}
</if>
<if test="fileSize != null">
and file_size = #{fileSize,jdbcType=VARCHAR}
</if>
<if test="ossKey != null">
and oss_key = #{ossKey,jdbcType=VARCHAR}
</if>
<if test="isActive != null">
and is_active = #{isActive,jdbcType=INTEGER}
</if>
<if test="orderId != null">
and order_id = #{orderId,jdbcType=BIGINT}
</if>
<if test="uploadedAt != null">
and uploaded_at = #{uploadedAt,jdbcType=TIMESTAMP}
</if>
<if test="uploadedBy != null">
and uploaded_by = #{uploadedBy,jdbcType=BIGINT}
</if>
</where>
</select>
</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