From 2e6f381d09669635473faf5dd4a3f01b5797d97e Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 27 五月 2024 16:25:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 132 +++++++++++++++++++++++++++++++-------------
1 files changed, 93 insertions(+), 39 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index a4ce820..97e8b56 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -34,6 +34,7 @@
import com.doumee.dao.admin.response.StagingDataVO;
import com.doumee.dao.business.*;
import com.doumee.dao.business.dao.CompanyMapper;
+import com.doumee.dao.business.dto.RegisterDriverDTO;
import com.doumee.dao.business.dto.ResetPasswordDTO;
import com.doumee.dao.business.join.MemberJoinMapper;
import com.doumee.dao.business.join.RetentionJoinMapper;
@@ -48,6 +49,7 @@
import com.doumee.dao.web.response.MemberVO;
import com.doumee.dao.web.response.WxAuthorizeVO;
import com.doumee.service.business.MemberService;
+import com.doumee.service.business.SmsEmailService;
import com.doumee.service.business.impl.hksync.HkSyncEmpowerServiceImpl;
import com.doumee.service.business.impl.hksync.ferp.HkSyncOrgUserToHKServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -119,6 +121,8 @@
@Autowired
private SystemUserMapper systemUserMapper;
+ @Autowired
+ private SmsEmailService smsEmailService;
@Value("${debug_model}")
private Boolean isDebug;
@@ -198,6 +202,7 @@
insert.setCanVisit(Constants.ZERO);//榛樿涓嶅彲璁块棶
insert.setAuthStatus(Constants.ZERO);
insert.setName(member.getName());
+ insert.setHkId(UUID.randomUUID().toString().replace("-",""));
insert.setHkStatus(Constants.ONE);
insert.setSex(Constants.getSexByCardNo( member.getIdcardNo()));//鏍规嵁韬唤璇佸彿鑾峰彇鎬у埆
insert.setBirthday( DateUtil.fromStringToDate("yyyyMMdd",IdcardUtil.getBirthByIdCard(member.getIdcardNo())));
@@ -468,6 +473,10 @@
}
member.setHkId(model.getHkId());
member.setFaceId(model.getFaceId());//浜鸿劯缂栫爜
+ if(StringUtils.equals(model.getFaceImg(),member.getFaceImg())){
+ //濡傛灉浜鸿劯娌″彉鍖�
+ member.setFaceImg(null);
+ }
return model;
}
@@ -525,9 +534,7 @@
}
@Override
- public void deleteById(Integer id,LoginUserInfo user) {
- LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
-
+ public void deleteById(Integer id,LoginUserInfo loginUserInfo) {
Member member=new Member();
member.setId(id);
member.setIsdeleted(Constants.ZERO);
@@ -561,7 +568,7 @@
}else{
if( ! (Constants.equalsInteger(memberRole.getTimeType(),Constants.ZERO)
||Constants.equalsInteger(memberRole.getTimeType(),Constants.TWO)
- || (Constants.equalsObject(memberRole.getTimeType(),Constants.ONE)
+ || (Constants.equalsInteger(memberRole.getTimeType(),Constants.ONE)
&& memberRole.getStartTime() !=null && memberRole.getEndTime() != null ))){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
@@ -572,7 +579,7 @@
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鏈夋晥鏈熸埅姝㈡棩鏈熶笉鑳藉皬浜庡紑濮嬫椂闂达紒");
}
}
- if(Constants.equalsObject(memberRole.getTimeType(),Constants.ZERO) ){
+ if(Constants.equalsInteger(memberRole.getTimeType(),Constants.ZERO) ){
memberRole.setStartTime(null);
memberRole.setEndTime(null);
}
@@ -582,12 +589,12 @@
//濡傛灉鍛樺伐淇℃伅涓嶅悎娉曠洿鎺ヨ烦杩�
continue;
}
+ if(StringUtils.isNotBlank(member.getFaceId()) || !Constants.equalsInteger(member.getFaceStatus(),Constants.ONE)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛銆�"+member.getName()+"銆戠殑浜鸿劯淇℃伅涓嶆弧瓒虫巿鏉冩潯浠讹紝璇疯繑鍥炲畬鍠勫悗鍐嶈繘琛岃鎿嶄綔锛�");
+ }
member.setStartTime(memberRole.getStartTime());
member.setEndTime(memberRole.getEndTime());
Integer ischange = getRoleIdByParam(memberRole.getRoleIds(),member,memberRoleMapper,deviceRoleMapper);
- if(ischange == 0){
- return;//鏈彂鐜版潈闄愬彉鍖栵紝鐩存帴杩斿洖
- }
if(memberRole.getRoleIds()!=null && memberRole.getRoleIds().length>0 && StringUtils.isBlank(member.getRoleId())){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鏈煡璇㈠埌鏈夋晥闂ㄧ缁勬暟鎹�");
}
@@ -940,10 +947,10 @@
if(model ==null) {
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝浜哄憳淇℃伅涓嶅瓨鍦紒");
}
- if(!Constants.equalsObject(model.getIsdeleted(),Constants.ONE)){
+ if(!Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鍙湁閽堝绂昏亴浜哄憳鍙繘琛岃鎿嶄綔锛�");
}
- if(Constants.equalsObject(model.getHkStatus(),Constants.ONE)){
+ if(Constants.equalsInteger(model.getHkStatus(),Constants.ONE)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ヤ汉鍛樺凡琚垹闄わ紒");
}
if(StringUtils.isBlank(model.getHkId())){
@@ -958,7 +965,7 @@
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝浜哄憳淇℃伅涓嶅瓨鍦紒");
}
if(model.getCompanyId()!=null) {
- if(Constants.equalsObject(member.getHeadStatus(),Constants.ONE)){
+ if(Constants.equalsInteger(member.getHeadStatus(),Constants.ONE)){
//濡傛灉鏄彇娑堜富绠�
companyMapper.update(null,new UpdateWrapper<Company>().lambda()
.eq(Company::getId,model.getCompanyId())
@@ -1307,7 +1314,7 @@
// .eq(Member::getStatus,Constants.Status.ENABLE.getValue())
// .eq(Member::getType,Constants.memberType.internal)
.eq(pageWrap.getModel().getHkStatus()!=null,Member::getHkStatus,pageWrap.getModel().getHkStatus())
- .orderByDesc(!Constants.equalsObject(pageWrap.getModel().getIsdeleted(),Constants.ONE),Member::getCreateDate)
+ .orderByDesc(!Constants.equalsInteger(pageWrap.getModel().getIsdeleted(),Constants.ONE),Member::getCreateDate)
.orderByDesc(Constants.equalsInteger(pageWrap.getModel().getIsdeleted(),Constants.ONE),Member::getEditDate);
if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin())==DataSyncConfig.origin.erp){
queryWrapper.eq( StringUtils.isNotBlank(pageWrap.getModel().getErpOrgId()),Member::getErpOrgId,pageWrap.getModel().getErpOrgId());
@@ -1617,30 +1624,24 @@
@Override
- public MemberVO getVisitedMember(CheckVisitedDTO checkVisitedDTO){
- Integer validType = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.BEVISITED_USER_VALID).getCode());
- if(Objects.isNull(checkVisitedDTO)||StringUtils.isBlank(checkVisitedDTO.getMobile())||(validType.equals(Constants.ONE)&&StringUtils.isBlank(checkVisitedDTO.getName()))){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda()
- .eq(Member::getPhone,checkVisitedDTO.getMobile())
- .eq(validType.equals(Constants.ONE),Member::getName,checkVisitedDTO.getName())
+ public List<MemberVO> getVisitedMember(CheckVisitedDTO checkVisitedDTO){
+ List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda()
+ .eq(StringUtils.isNotBlank(checkVisitedDTO.getMobile()),Member::getPhone,checkVisitedDTO.getMobile())
+ .eq(StringUtils.isNotBlank(checkVisitedDTO.getName()),Member::getName,checkVisitedDTO.getName())
.eq(Member::getIsdeleted,Constants.ZERO)
-// .eq(Member::getStatus,Constants.ZERO)
+ .eq(Member::getStatus,Constants.ZERO)
.eq(Member::getCanVisit,Constants.ONE)
- .eq(Member::getType,Constants.memberType.internal)
- .last(" limit 1 ")
+ .eq(Member::getType,Constants.memberType.internal)
);
- MemberVO memberVO = new MemberVO();
- if(!Objects.isNull(member)){
- if(!member.getStatus().equals(Constants.ZERO)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"琚浜鸿处鍙峰紓甯革紝璇风‘璁ゅ悗鍐嶈瘯");
+ List<MemberVO> memberVOList = new ArrayList<>();
+ if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(memberList)) {
+ for (Member member:memberList) {
+ MemberVO memberVO = new MemberVO();
+ BeanUtils.copyProperties(member,memberVO);
+ memberVOList.add(memberVO);
}
- BeanUtils.copyProperties(member,memberVO);
- }else{
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"璇锋牳瀹炶璁夸汉淇℃伅!");
}
- return memberVO;
+ return memberVOList;
}
@@ -1826,17 +1827,20 @@
private void dealHkUserBizBatch(List<Member> newList) {
List<String> hkIds = new ArrayList<>();
try {
- memberMapper.insertBatchSomeColumn(newList);
- List<SystemUser> userList = new ArrayList<>();
for(Member insert: newList){
if(dealHkUserBiz(insert)){
//鍒涘缓绯荤粺鐧婚檰璐﹀彿锛堥粯璁ゆ棤浠讳綍瑙掕壊锛�
- if(Constants.equalsInteger(insert.getCompanyType(),Constants.ONE)){
- //濡傛灉鏄唴閮ㄧ粍缁囦汉鍛橈紝鏂板绯荤粺鐧婚檰璐﹀彿
- userList.add(createSystemUser(insert));
- }
}else{
throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅銆�"+insert.getName()+"銆戝悓姝ュ畨闃插钩鍙板け璐ワ紝璇风◢鍚庨噸璇曪紒");
+ }
+ }
+ memberMapper.insertBatchSomeColumn(newList);
+ List<SystemUser> userList = new ArrayList<>();
+ for(Member insert: newList){
+ //鍒涘缓绯荤粺鐧婚檰璐﹀彿锛堥粯璁ゆ棤浠讳綍瑙掕壊锛�
+ if(Constants.equalsInteger(insert.getCompanyType(),Constants.ONE)){
+ //濡傛灉鏄唴閮ㄧ粍缁囦汉鍛橈紝鏂板绯荤粺鐧婚檰璐﹀彿
+ userList.add(createSystemUser(insert));
}
}
if(userList.size()>0){
@@ -1848,7 +1852,6 @@
throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅瀵煎叆澶辫触锛岃绋嶅悗閲嶈瘯锛�");
}
}
-
private Member checkModelParam(MemberImport model, List<Member> newList
,int index
,LoginUserInfo loginUserInfo
@@ -1879,7 +1882,7 @@
if(company == null){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗�"+(index+3)+"琛岀粍缁囧悕绉般��"+model.getCompanyName()+"銆戜笉瀛樺湪锛岃妫�鏌ヨ〃鏍煎唴瀹癸紒");
}
- if(companyType != null && !Constants.equalsObject(companyType,company.getType())){
+ if(companyType != null && !Constants.equalsInteger(companyType,company.getType())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗�"+(index+3)+"琛岀粍缁囧悕绉般��"+model.getCompanyName()+"銆戠被鍨嬩笉姝g‘锛岃妫�鏌ヨ〃鏍煎唴瀹癸紒");
}
String candNo = DESUtil.encrypt(Constants.EDS_PWD, model.getIdcardNo());
@@ -1932,6 +1935,57 @@
}
+ @Override
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+ public void registerDriver(RegisterDriverDTO registerDriverDTO){
+ if(Objects.isNull(registerDriverDTO)
+ || StringUtils.isBlank(registerDriverDTO.getName())
+ || StringUtils.isBlank(registerDriverDTO.getPassword())
+ || StringUtils.isBlank(registerDriverDTO.getValidCode())
+ || StringUtils.isBlank(registerDriverDTO.getPhone())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ if(memberMapper.selectCount(new QueryWrapper<Member>().lambda()
+ .eq(Member::getIsdeleted,Constants.ZERO)
+ .eq(Member::getPhone,registerDriverDTO.getPhone())
+ )>Constants.ZERO){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎵嬫満鍙峰凡娉ㄥ唽!");
+ };
+ if(systemUserMapper.selectCount(new QueryWrapper<SystemUser>().lambda()
+ .eq(SystemUser::getDeleted,Constants.ZERO)
+ .and(i->i.eq(SystemUser::getMobile,registerDriverDTO.getPhone()).or().eq(SystemUser::getUsername,registerDriverDTO.getPhone()))
+ )>Constants.ZERO){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎵嬫満鍙峰凡娉ㄥ唽!");
+ };
+
+ smsEmailService.validateCode(registerDriverDTO.getValidCode(),registerDriverDTO.getPhone());
+ String salt = RandomStringUtils.randomAlphabetic(6);
+ ;
+ Member member = new Member();
+ member.setCreateDate(new Date());
+ member.setIsdeleted(Constants.ZERO);
+ member.setType(Constants.TWO);
+ member.setName(registerDriverDTO.getName());
+ member.setPhone(registerDriverDTO.getPhone());
+ member.setStatus(Constants.ZERO);
+ member.setPassward(Utils.Secure.encryptPassword(registerDriverDTO.getPassword(), salt));
+ memberMapper.insert(member);
+
+
+ SystemUser systemUser = new SystemUser();
+ systemUser.setCreateTime(new Date());
+ systemUser.setDeleted(Boolean.FALSE);
+ systemUser.setUsername(registerDriverDTO.getPhone());
+ systemUser.setRealname(registerDriverDTO.getName());
+ systemUser.setMemberId(member.getId());
+ systemUser.setSalt(salt);
+ systemUser.setPassword(member.getPassward());
+ systemUser.setStatus(Constants.ZERO);
+ systemUserMapper.insert(systemUser);
+
+ }
+
}
--
Gitblit v1.9.3