Commit 65854245 by yao.xiao

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

parent a9f0831c
...@@ -111,6 +111,10 @@ ...@@ -111,6 +111,10 @@
<artifactId>guava</artifactId> <artifactId>guava</artifactId>
<version>20.0</version> <version>20.0</version>
</dependency> </dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
</dependency>
</dependencies> </dependencies>
<build> <build>
......
...@@ -5,6 +5,8 @@ import com.yd.api.practitioner.vo.login.PractitionerLoginRequestVO; ...@@ -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.login.PractitionerLoginResponseVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankRequestVO; import com.yd.api.practitioner.vo.rank.PractitionerRankRequestVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankResponseVO; 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 com.yd.api.result.JsonResult;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
...@@ -48,4 +50,44 @@ public class PractitionerController { ...@@ -48,4 +50,44 @@ public class PractitionerController {
return result; 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; ...@@ -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.login.PractitionerLoginResponseVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankRequestVO; import com.yd.api.practitioner.vo.rank.PractitionerRankRequestVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankResponseVO; 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; import org.springframework.stereotype.Service;
@Service("practitionerService") @Service("practitionerService")
...@@ -23,5 +25,10 @@ public interface PractitionerService { ...@@ -23,5 +25,10 @@ public interface PractitionerService {
*/ */
PractitionerRankResponseVO practitionerRank(PractitionerRankRequestVO requestVO); PractitionerRankResponseVO practitionerRank(PractitionerRankRequestVO requestVO);
/**
* 经纪人设置查询
* @param requestVO
* @return
*/
SettingQueryResponseVO settingQuery(SettingQueryRequestVO requestVO);
} }
...@@ -6,19 +6,22 @@ import com.yd.api.practitioner.vo.rank.AclCustomerFortuneStatistics; ...@@ -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.PractitionerRankRequestVO;
import com.yd.api.practitioner.vo.rank.PractitionerRankResponseVO; import com.yd.api.practitioner.vo.rank.PractitionerRankResponseVO;
import com.yd.api.practitioner.vo.rank.PractitionerInfoForAchievement; 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.api.result.CommonResult;
import com.yd.dal.entity.customer.AclCustomerLog; 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.customer.CustomerFileUpload;
import com.yd.dal.entity.practitioner.PractitionerBasicInfo; import com.yd.dal.entity.practitioner.*;
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.service.customer.AclCustomerLogDALService; import com.yd.dal.service.customer.AclCustomerLogDALService;
import com.yd.dal.service.customer.AclFileUploadDALService; import com.yd.dal.service.customer.AclFileUploadDALService;
import com.yd.dal.service.meta.MdCodeDALService; import com.yd.dal.service.meta.MdCodeDALService;
import com.yd.dal.service.practitioner.PractitionerDALService; import com.yd.dal.service.practitioner.PractitionerDALService;
import com.yd.dal.service.practitioner.PractitionerSubordinateDALService; import com.yd.dal.service.practitioner.PractitionerSubordinateDALService;
import com.yd.util.config.ZHBErrorConfig; 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.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -208,4 +211,60 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service. ...@@ -208,4 +211,60 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
responseVO.setPractitionerInfo(practitionerInfo); responseVO.setPractitionerInfo(practitionerInfo);
responseVO.setRank(rankList); 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; ...@@ -2,6 +2,9 @@ package com.yd.dal.mapper.customer;
import com.yd.dal.entity.customer.AclFileUpload; import com.yd.dal.entity.customer.AclFileUpload;
import com.yd.dal.entity.customer.CustomerFileUpload; import com.yd.dal.entity.customer.CustomerFileUpload;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface AclFileUploadMapper { public interface AclFileUploadMapper {
int deleteByPrimaryKey(Long id); int deleteByPrimaryKey(Long id);
...@@ -17,4 +20,6 @@ public interface AclFileUploadMapper { ...@@ -17,4 +20,6 @@ public interface AclFileUploadMapper {
int updateByPrimaryKey(AclFileUpload record); int updateByPrimaryKey(AclFileUpload record);
CustomerFileUpload findByTargetTypeAndTargetUseForAndTargetId(Integer targetType, Integer targetUseFor, Long practitionerId); 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; package com.yd.dal.service.customer;
import com.yd.dal.entity.customer.AclFileUpload;
import com.yd.dal.entity.customer.CustomerFileUpload; import com.yd.dal.entity.customer.CustomerFileUpload;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
@Service("aclFileUploadDALService") @Service("aclFileUploadDALService")
public interface AclFileUploadDALService { public interface AclFileUploadDALService {
/** /**
...@@ -13,4 +16,11 @@ public interface AclFileUploadDALService { ...@@ -13,4 +16,11 @@ public interface AclFileUploadDALService {
* @return 查询结果 * @return 查询结果
*/ */
CustomerFileUpload findFilePathInfo(Integer targetType, Integer targetUseFor, Long practitionerId); CustomerFileUpload findFilePathInfo(Integer targetType, Integer targetUseFor, Long practitionerId);
/**
* 查询fileUpload信息
* @param fileUpload
* @return
*/
List<AclFileUpload> findByAclFileUpload(AclFileUpload fileUpload);
} }
package com.yd.dal.service.customer.impl; 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.entity.customer.CustomerFileUpload;
import com.yd.dal.mapper.customer.AclFileUploadMapper; import com.yd.dal.mapper.customer.AclFileUploadMapper;
import com.yd.dal.service.customer.AclFileUploadDALService; 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 org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List;
@Service("aclFileUploadDALService") @Service("aclFileUploadDALService")
...@@ -22,4 +26,10 @@ public class AclFileUploadDALServiceImpl implements AclFileUploadDALService { ...@@ -22,4 +26,10 @@ public class AclFileUploadDALServiceImpl implements AclFileUploadDALService {
} }
return fileUpload; return fileUpload;
} }
@Override
@TargetDataSource(dataSourceKey = DataSourceKey.DB_MASTER)
public List<AclFileUpload> findByAclFileUpload(AclFileUpload fileUpload) {
return aclFileUploadMapper.findByAclFileUpload(fileUpload);
}
} }
package com.yd.dal.service.practitioner; 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.PractitionerBasicInfo;
import com.yd.dal.entity.practitioner.PractitionerInfo; import com.yd.dal.entity.practitioner.PractitionerInfo;
import com.yd.dal.entity.practitioner.PractitionerRankInfo; import com.yd.dal.entity.practitioner.PractitionerRankInfo;
...@@ -47,4 +48,11 @@ public interface PractitionerDALService { ...@@ -47,4 +48,11 @@ public interface PractitionerDALService {
* @return * @return
*/ */
PractitionerInfo findPractitionerInfoByLogin(String mobileNo); PractitionerInfo findPractitionerInfoByLogin(String mobileNo);
/**
* 通过经纪人id查找经纪人
* @param practitionerId
* @return
*/
AclPractitionerInfo findPractitionerById(Long practitionerId);
} }
package com.yd.dal.service.practitioner.impl; package com.yd.dal.service.practitioner.impl;
import com.google.common.base.Strings; 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.PractitionerBasicInfo;
import com.yd.dal.entity.practitioner.PractitionerInfo; import com.yd.dal.entity.practitioner.PractitionerInfo;
import com.yd.dal.entity.practitioner.PractitionerRankInfo; 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.mapper.practitioner.PractitionerMapper;
import com.yd.dal.service.customer.impl.CustomerDALServiceImpl; import com.yd.dal.service.customer.impl.CustomerDALServiceImpl;
import com.yd.dal.service.practitioner.PractitionerDALService; import com.yd.dal.service.practitioner.PractitionerDALService;
...@@ -20,6 +22,8 @@ public class PractitionerDALServiceImpl implements PractitionerDALService { ...@@ -20,6 +22,8 @@ public class PractitionerDALServiceImpl implements PractitionerDALService {
private static final Logger LOG = Logger.getLogger(CustomerDALServiceImpl.class); private static final Logger LOG = Logger.getLogger(CustomerDALServiceImpl.class);
@Resource @Resource
private PractitionerMapper practitionerMapper; private PractitionerMapper practitionerMapper;
@Resource
private AclPractitionerMapper aclPractitionerMapper;
@Override @Override
@TargetDataSource(dataSourceKey = DataSourceKey.DB_EGOLDEN) @TargetDataSource(dataSourceKey = DataSourceKey.DB_EGOLDEN)
public PractitionerBasicInfo getPractitionerBasicInfoForOffline(String mobileNo) { public PractitionerBasicInfo getPractitionerBasicInfoForOffline(String mobileNo) {
...@@ -61,4 +65,10 @@ public class PractitionerDALServiceImpl implements PractitionerDALService { ...@@ -61,4 +65,10 @@ public class PractitionerDALServiceImpl implements PractitionerDALService {
public PractitionerInfo findPractitionerInfoByLogin(String mobileNo) { public PractitionerInfo findPractitionerInfoByLogin(String mobileNo) {
return practitionerMapper.findPractitionerInfoByLogin(mobileNo); return practitionerMapper.findPractitionerInfoByLogin(mobileNo);
} }
@Override
@TargetDataSource(dataSourceKey = DataSourceKey.DB_MASTER)
public AclPractitionerInfo findPractitionerById(Long practitionerId) {
return aclPractitionerMapper.selectByPrimaryKey(practitionerId);
}
} }
...@@ -214,13 +214,13 @@ ...@@ -214,13 +214,13 @@
uploaded_by = #{uploadedBy,jdbcType=BIGINT} uploaded_by = #{uploadedBy,jdbcType=BIGINT}
where id = #{id,jdbcType=BIGINT} where id = #{id,jdbcType=BIGINT}
</update> </update>
<resultMap id="file_upload_map" type="com.yd.dal.entity.customer.CustomerFileUpload"> <resultMap id="file_upload_map" type="com.yd.dal.entity.customer.CustomerFileUpload">
<result column="id" property="id"/> <result column="id" property="id"/>
<result column="fileName" property="fileName"/> <result column="fileName" property="fileName"/>
<result column="filePath" property="filePath"/> <result column="filePath" property="filePath"/>
<result column="remark" property="remark"/> <result column="remark" property="remark"/>
</resultMap> </resultMap>
<select id="findByTargetTypeAndTargetUseForAndTargetId" resultMap="file_upload_map"> <select id="findByTargetTypeAndTargetUseForAndTargetId" resultMap="file_upload_map">
SELECT SELECT
u.id as id, u.id as id,
...@@ -233,5 +233,60 @@ ...@@ -233,5 +233,60 @@
and u.target_use_for = #{targetUseFor} and u.target_use_for = #{targetUseFor}
and u.target_id = #{practitionerId} and u.target_id = #{practitionerId}
</select> </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> </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