From 9328e1b87ef53c7210a7d8342d8af8800c91809e Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 27 十一月 2024 10:52:00 +0800
Subject: [PATCH] 开发更新
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java | 212 +++++++++++++++++++++++++++-------------------------
1 files changed, 111 insertions(+), 101 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java
index cc0f54b..6f7a36d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwCustomerServiceImpl.java
@@ -1,20 +1,36 @@
package com.doumee.service.business.impl;
+import cn.emay.sdk.util.StringUtil;
+import cn.hutool.core.util.IdcardUtil;
+import cn.hutool.core.util.PhoneUtil;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DESUtil;
import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.MemberMapper;
import com.doumee.dao.business.YwCustomerMapper;
+import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.YwCustomer;
import com.doumee.service.business.YwCustomerService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import org.apache.commons.lang3.StringUtils;
+import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
+import java.util.Date;
import java.util.List;
+import java.util.Objects;
/**
* 杩愮淮瀹㈡埛淇℃伅琛⊿ervice瀹炵幇
@@ -27,14 +43,71 @@
@Autowired
private YwCustomerMapper ywCustomerMapper;
+ @Autowired
+ private MemberMapper memberMapper;
+
@Override
+ @Transactional(rollbackFor = {BusinessException.class,Exception.class})
public Integer create(YwCustomer ywCustomer) {
+ if(Objects.isNull(ywCustomer)
+ || Objects.isNull(ywCustomer.getType())
+ || StringUtils.isBlank(ywCustomer.getName())
+ || Objects.isNull(ywCustomer.getMember())
+ || StringUtils.isBlank(ywCustomer.getMember().getName())
+ || StringUtils.isBlank(ywCustomer.getMember().getPhone())
+ || Objects.isNull(ywCustomer.getMember().getHighCheckor())
+ || Objects.isNull(ywCustomer.getMember().getIdcardType())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ LoginUserInfo loginUserInfo = ywCustomer.getLoginUserInfo();
+ ywCustomer.setStatus(Constants.ZERO);
+ ywCustomer.setIsdeleted(Constants.ZERO);
+ ywCustomer.setCreator(loginUserInfo.getId());
+ ywCustomer.setCreateDate(new Date());
ywCustomerMapper.insert(ywCustomer);
+
+ Member member = ywCustomer.getMember();
+ member.setCreator(loginUserInfo.getId());
+ member.setCreateDate(new Date());
+ member.setIsdeleted(Constants.ZERO);
+ member.setStatus(Constants.ZERO);
+ member.setType(Constants.memberType.customer);
+ member.setCustomerId(ywCustomer.getId());
+ this.checkMember(member);
+ memberMapper.insert(member);
+
+ ywCustomer.setMemberId(member.getId());
+ ywCustomerMapper.updateById(ywCustomer);
+
return ywCustomer.getId();
}
+
+ public void checkMember(Member member){
+ if (StringUtils.isBlank(member.getPhone())||!PhoneUtil.isPhone(member.getPhone())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢佃瘽鍙风爜鏍煎紡鏈夎");
+ }
+ if (StringUtils.isNotBlank(member.getIdcardNo()) && Constants.equalsInteger(member.getIdcardType(),Constants.ZERO) && !IdcardUtil.isValidCard(member.getIdcardNo())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"韬唤璇佸彿鏍煎紡鏈夎");
+ }
+ if(StringUtils.isNotBlank(member.getIdcardNo() ) && Constants.equalsInteger(member.getIdcardType(),Constants.ZERO) ){
+ if(memberMapper.selectCount(new QueryWrapper<Member>().lambda()
+ .eq(Member::getIdcardNo, DESUtil.encrypt(Constants.EDS_PWD, member.getIdcardNo()))
+ .eq(Member::getIsdeleted,Constants.ZERO)) >0){
+ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "韬唤璇佸彿銆�"+member.getIdcardNo()+"銆戝凡琚娇鐢紝涓嶈兘閲嶅");
+ }
+ }
+ if(memberMapper.selectCount(new QueryWrapper<Member>().lambda()
+ .eq(Member::getPhone, member.getPhone())
+ .eq(Member::getIsdeleted,Constants.ZERO) ) >0){
+ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙枫��"+member.getPhone()+"銆戝凡琚娇鐢紝涓嶈兘閲嶅");
+ }
+ }
+
+
@Override
- public void deleteById(Integer id) {
+ public void deleteById(Integer id, LoginUserInfo user) {
ywCustomerMapper.deleteById(id);
}
@@ -45,7 +118,7 @@
}
@Override
- public void deleteByIdInBatch(List<Integer> ids) {
+ public void deleteByIdInBatch(List<Integer> ids, LoginUserInfo user) {
if (CollectionUtils.isEmpty(ids)) {
return;
}
@@ -54,6 +127,17 @@
@Override
public void updateById(YwCustomer ywCustomer) {
+ if(Objects.isNull(ywCustomer)
+ || Objects.isNull(ywCustomer.getType())
+ || StringUtils.isBlank(ywCustomer.getName())
+ || Objects.isNull(ywCustomer.getMemberId())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+
+ LoginUserInfo loginUserInfo = ywCustomer.getLoginUserInfo();
+ ywCustomer.setEditor(loginUserInfo.getId());
+ ywCustomer.setEditDate(new Date());
ywCustomerMapper.updateById(ywCustomer);
}
@@ -73,6 +157,18 @@
}
@Override
+ public YwCustomer getDetail(Integer id) {
+ YwCustomer ywCustomer = ywCustomerMapper.selectById(id);
+ if(Objects.isNull(ywCustomer)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ Member member = memberMapper.selectById(ywCustomer.getMemberId());
+ if(Objects.nonNull(member)){
+ ywCustomer.setMember(member);
+ }
+ return ywCustomer;
+ }
+ @Override
public YwCustomer findOne(YwCustomer ywCustomer) {
QueryWrapper<YwCustomer> wrapper = new QueryWrapper<>(ywCustomer);
return ywCustomerMapper.selectOne(wrapper);
@@ -87,106 +183,20 @@
@Override
public PageData<YwCustomer> findPage(PageWrap<YwCustomer> pageWrap) {
IPage<YwCustomer> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
- QueryWrapper<YwCustomer> queryWrapper = new QueryWrapper<>();
+ MPJLambdaWrapper<YwCustomer> queryWrapper = new MPJLambdaWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
- if (pageWrap.getModel().getId() != null) {
- queryWrapper.lambda().eq(YwCustomer::getId, pageWrap.getModel().getId());
- }
- if (pageWrap.getModel().getCreator() != null) {
- queryWrapper.lambda().eq(YwCustomer::getCreator, pageWrap.getModel().getCreator());
- }
- if (pageWrap.getModel().getCreateDate() != null) {
- queryWrapper.lambda().ge(YwCustomer::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
- queryWrapper.lambda().le(YwCustomer::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
- }
- if (pageWrap.getModel().getEditor() != null) {
- queryWrapper.lambda().eq(YwCustomer::getEditor, pageWrap.getModel().getEditor());
- }
- if (pageWrap.getModel().getEditDate() != null) {
- queryWrapper.lambda().ge(YwCustomer::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
- queryWrapper.lambda().le(YwCustomer::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
- }
- if (pageWrap.getModel().getIsdeleted() != null) {
- queryWrapper.lambda().eq(YwCustomer::getIsdeleted, pageWrap.getModel().getIsdeleted());
- }
- if (pageWrap.getModel().getRemark() != null) {
- queryWrapper.lambda().eq(YwCustomer::getRemark, pageWrap.getModel().getRemark());
- }
- if (pageWrap.getModel().getIndustryId() != null) {
- queryWrapper.lambda().eq(YwCustomer::getIndustryId, pageWrap.getModel().getIndustryId());
- }
- if (pageWrap.getModel().getType() != null) {
- queryWrapper.lambda().eq(YwCustomer::getType, pageWrap.getModel().getType());
- }
- if (pageWrap.getModel().getName() != null) {
- queryWrapper.lambda().eq(YwCustomer::getName, pageWrap.getModel().getName());
- }
- if (pageWrap.getModel().getPhone() != null) {
- queryWrapper.lambda().eq(YwCustomer::getPhone, pageWrap.getModel().getPhone());
- }
- if (pageWrap.getModel().getIdcardNo() != null) {
- queryWrapper.lambda().eq(YwCustomer::getIdcardNo, pageWrap.getModel().getIdcardNo());
- }
- if (pageWrap.getModel().getIdcardDecode() != null) {
- queryWrapper.lambda().eq(YwCustomer::getIdcardDecode, pageWrap.getModel().getIdcardDecode());
- }
- if (pageWrap.getModel().getCode() != null) {
- queryWrapper.lambda().eq(YwCustomer::getCode, pageWrap.getModel().getCode());
- }
- if (pageWrap.getModel().getStatus() != null) {
- queryWrapper.lambda().eq(YwCustomer::getStatus, pageWrap.getModel().getStatus());
- }
- if (pageWrap.getModel().getHighCheckor() != null) {
- queryWrapper.lambda().eq(YwCustomer::getHighCheckor, pageWrap.getModel().getHighCheckor());
- }
- if (pageWrap.getModel().getLastLoginDate() != null) {
- queryWrapper.lambda().ge(YwCustomer::getLastLoginDate, Utils.Date.getStart(pageWrap.getModel().getLastLoginDate()));
- queryWrapper.lambda().le(YwCustomer::getLastLoginDate, Utils.Date.getEnd(pageWrap.getModel().getLastLoginDate()));
- }
- if (pageWrap.getModel().getLoginNum() != null) {
- queryWrapper.lambda().eq(YwCustomer::getLoginNum, pageWrap.getModel().getLoginNum());
- }
- if (pageWrap.getModel().getUserId() != null) {
- queryWrapper.lambda().eq(YwCustomer::getUserId, pageWrap.getModel().getUserId());
- }
- if (pageWrap.getModel().getIdcardType() != null) {
- queryWrapper.lambda().eq(YwCustomer::getIdcardType, pageWrap.getModel().getIdcardType());
- }
- if (pageWrap.getModel().getAccountBank() != null) {
- queryWrapper.lambda().eq(YwCustomer::getAccountBank, pageWrap.getModel().getAccountBank());
- }
- if (pageWrap.getModel().getAccountNo() != null) {
- queryWrapper.lambda().eq(YwCustomer::getAccountNo, pageWrap.getModel().getAccountNo());
- }
- if (pageWrap.getModel().getAccountPhone() != null) {
- queryWrapper.lambda().eq(YwCustomer::getAccountPhone, pageWrap.getModel().getAccountPhone());
- }
- if (pageWrap.getModel().getCreditCard() != null) {
- queryWrapper.lambda().eq(YwCustomer::getCreditCard, pageWrap.getModel().getCreditCard());
- }
- if (pageWrap.getModel().getFpType() != null) {
- queryWrapper.lambda().eq(YwCustomer::getFpType, pageWrap.getModel().getFpType());
- }
- if (pageWrap.getModel().getAccountAddr() != null) {
- queryWrapper.lambda().eq(YwCustomer::getAccountAddr, pageWrap.getModel().getAccountAddr());
- }
- if (pageWrap.getModel().getIdentityType() != null) {
- queryWrapper.lambda().eq(YwCustomer::getIdentityType, pageWrap.getModel().getIdentityType());
- }
- if (pageWrap.getModel().getEmail() != null) {
- queryWrapper.lambda().eq(YwCustomer::getEmail, pageWrap.getModel().getEmail());
- }
- if (pageWrap.getModel().getMemberId() != null) {
- queryWrapper.lambda().eq(YwCustomer::getMemberId, pageWrap.getModel().getMemberId());
- }
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
- if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
- queryWrapper.orderByDesc(sortData.getProperty());
- } else {
- queryWrapper.orderByAsc(sortData.getProperty());
- }
- }
- return PageData.from(ywCustomerMapper.selectPage(page, queryWrapper));
+ YwCustomer model = pageWrap.getModel();
+ IPage iPage = ywCustomerMapper.selectJoinPage(page,YwCustomer.class,
+ queryWrapper
+ .selectAll(YwCustomer.class)
+ .selectAs(Member::getName,YwCustomer::getMemberName)
+ .selectAs(Member::getPhone,YwCustomer::getMemberPhone)
+ .leftJoin(Member.class,Member::getId,YwCustomer::getMemberId)
+ .eq(YwCustomer::getIsdeleted,Constants.ZERO)
+ .like(Objects.nonNull(model)&&StringUtils.isNotBlank(model.getName()),YwCustomer::getName,model.getName())
+ .orderByDesc(YwCustomer::getCreateDate)
+ );
+ return PageData.from(iPage);
}
@Override
--
Gitblit v1.9.3