Compare commits
15 Commits
460c943fb6
...
4796eab2b4
| Author | SHA1 | Date |
|---|---|---|
|
|
4796eab2b4 | |
|
|
f261332929 | |
|
|
32c643048b | |
|
|
ae4166fc32 | |
|
|
b4b2fb7afb | |
|
|
d8ffedf3c1 | |
|
|
6c9c9ff96b | |
|
|
f50518bc75 | |
|
|
8772c69d75 | |
|
|
f348c23dbc | |
|
|
abca53a7e6 | |
|
|
746cb5c5f0 | |
|
|
52c30b6c64 | |
|
|
ce4038e883 | |
|
|
73811683b3 |
|
|
@ -6,12 +6,6 @@ import com.hzs.system.sys.dto.ApprovalBusinessResultDTO;
|
|||
|
||||
/**
|
||||
* 自助服务
|
||||
*
|
||||
* @Description:
|
||||
* @Author: ljc
|
||||
* @Time: 2023/4/19 16:09
|
||||
* @Classname: ICuSelfServiceServiceApi
|
||||
* @Package_name: com.hzs.member.self
|
||||
*/
|
||||
public interface ICuSelfServiceServiceApi {
|
||||
|
||||
|
|
|
|||
|
|
@ -108,10 +108,6 @@ public interface ISaOrderServiceApi {
|
|||
*/
|
||||
R<?> saveOrderBatch(List<SaOrder> orderList, List<SaOrderItems> orderItemsList);
|
||||
|
||||
/* 保存销售订单
|
||||
**/
|
||||
R<?> saveOrder(SaOrderExt saOrderExt);
|
||||
|
||||
/**
|
||||
* 查询注册订单数量
|
||||
*
|
||||
|
|
|
|||
|
|
@ -7,13 +7,6 @@ import com.hzs.system.config.dto.TradeConfigDTO;
|
|||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description:
|
||||
* @Author: ljc
|
||||
* @Time: 2023/8/21 15:05
|
||||
* @Classname: ITradeConfigApi
|
||||
* @Package_name: com.hzs.system.config
|
||||
*/
|
||||
public interface ITradeConfigServiceApi {
|
||||
|
||||
/**
|
||||
|
|
@ -32,7 +25,6 @@ public interface ITradeConfigServiceApi {
|
|||
*/
|
||||
R<BdTradeWhiteConfig> selectTradeWhiteConfigByCondition(TradeConfigDTO tradeConfigDTO);
|
||||
|
||||
|
||||
/**
|
||||
* 根据会员ID查询账户白名单
|
||||
*
|
||||
|
|
@ -42,7 +34,6 @@ public interface ITradeConfigServiceApi {
|
|||
*/
|
||||
R<List<Integer>> selectTransferWhiteByPkMember(Long pkMember, Integer pkCountry);
|
||||
|
||||
|
||||
/**
|
||||
* 查询配置伞下白名单的会员
|
||||
*
|
||||
|
|
@ -51,5 +42,4 @@ public interface ITradeConfigServiceApi {
|
|||
*/
|
||||
R<List<Long>> selectTradeWhiteConfigByUnderBlood(TradeConfigDTO tradeConfigDTO);
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,19 +9,15 @@ import java.io.Serializable;
|
|||
|
||||
/**
|
||||
* 交易配置DTO
|
||||
*
|
||||
* @Description:
|
||||
* @Author: ljc
|
||||
* @Time: 2023/8/21 15:30
|
||||
* @Classname: TradeConfigDTO
|
||||
* @Package_name: com.hzs.system.config.dto
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class TradeConfigDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -5961829479214505354L;
|
||||
|
||||
/**
|
||||
* 注册等级
|
||||
*/
|
||||
|
|
@ -30,25 +26,21 @@ public class TradeConfigDTO implements Serializable {
|
|||
/**
|
||||
* 真实奖衔
|
||||
*/
|
||||
|
||||
private Integer pkAwards;
|
||||
|
||||
/**
|
||||
* 1:提现 2:转账 (来源枚举EBusinessModule)
|
||||
*/
|
||||
|
||||
private Integer businessModule;
|
||||
|
||||
/**
|
||||
* 实名状态 1:禁止 0:允许 (来源枚举EYesNo)
|
||||
*/
|
||||
|
||||
private Integer realNameState;
|
||||
|
||||
/**
|
||||
* 营业执照状态 1:禁止 0:允许 (来源枚举EYesNo)
|
||||
*/
|
||||
|
||||
private Integer licenseState;
|
||||
|
||||
/**
|
||||
|
|
@ -75,4 +67,5 @@ public class TradeConfigDTO implements Serializable {
|
|||
* 会员类型 1:正常 2:伞下(来源枚举ETradeMemberWhite)
|
||||
*/
|
||||
private Integer memberType;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,11 +8,7 @@ import lombok.NoArgsConstructor;
|
|||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @Description: 业务操作日志DTO
|
||||
* @Author: jiang chao
|
||||
* @Time: 2023/8/2 11:30
|
||||
* @Classname: BusinessLogDTO
|
||||
* @PackageName: com.hzs.system.sys.dto
|
||||
* 业务操作日志DTO
|
||||
*/
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
|
|
|
|||
|
|
@ -2,12 +2,9 @@ package com.hzs.third.sms;
|
|||
|
||||
import com.hzs.common.core.domain.R;
|
||||
import com.hzs.common.core.enums.EAliSmsTemplate;
|
||||
import com.hzs.third.sms.dto.SmsServiceDTO;
|
||||
|
||||
/**
|
||||
* 短信服务接口
|
||||
*
|
||||
* @author hzs
|
||||
*/
|
||||
public interface ISmsServiceApi {
|
||||
|
||||
|
|
|
|||
|
|
@ -1,57 +0,0 @@
|
|||
package com.hzs.third.sms.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 短信服务参数DTO
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
@Data
|
||||
public class SmsServiceDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 9096130356166559652L;
|
||||
|
||||
/**
|
||||
* 短信模板编号 -- 必传
|
||||
*/
|
||||
private String templateCode;
|
||||
|
||||
/**
|
||||
* 发送会员ID
|
||||
*/
|
||||
private Long pkMember;
|
||||
|
||||
/**
|
||||
* 发送手机号 -- 必传
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 参数列表 -- 根据模板实际参数确定
|
||||
*/
|
||||
private List<String> paramList;
|
||||
|
||||
/**
|
||||
* 操作人
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 操作人所属国家 -- 必传
|
||||
*/
|
||||
private Integer pkCountry;
|
||||
|
||||
/**
|
||||
* 是否记录发送日志(默认为记录,false=不记录日志)
|
||||
*/
|
||||
private Boolean saveFlag;
|
||||
|
||||
}
|
||||
|
|
@ -1,15 +1,17 @@
|
|||
package com.hzs.member.account.controller.api;
|
||||
|
||||
import cn.hutool.core.util.IdcardUtil;
|
||||
import com.hzs.common.core.annotation.RepeatSubmitSimple;
|
||||
import com.hzs.common.core.constant.msg.FinanceMsgConstants;
|
||||
import com.hzs.common.core.domain.R;
|
||||
import com.hzs.common.core.enums.*;
|
||||
import com.hzs.common.core.utils.DateUtils;
|
||||
import com.hzs.common.core.utils.OssUtil;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
import com.hzs.common.core.utils.ThreadUtils;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.system.config.BdTradeConfig;
|
||||
import com.hzs.common.domain.system.config.BdTradeWhiteConfig;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
|
|
@ -18,7 +20,7 @@ import com.hzs.member.account.service.ICuMemberAuthenticationService;
|
|||
import com.hzs.member.account.service.ICuMemberBaseService;
|
||||
import com.hzs.member.account.vo.CuMemberAuthenticationVO;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import com.hzs.member.sms.service.IApiCodeService;
|
||||
import com.hzs.member.sms.service.IApiAliSmsService;
|
||||
import com.hzs.third.idcard.IdCardServiceApi;
|
||||
import com.hzs.third.idcard.dto.IdCardOcrDTO;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
|
|
@ -26,7 +28,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.ZoneId;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
|
||||
/**
|
||||
|
|
@ -37,7 +38,7 @@ import java.time.format.DateTimeFormatter;
|
|||
public class ApiCuMemberAuthenticationController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private IApiCodeService iApiCodeService;
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
@Autowired
|
||||
private ICuMemberAuthenticationService iCuMemberAuthenticationService;
|
||||
@Autowired
|
||||
|
|
@ -48,6 +49,31 @@ public class ApiCuMemberAuthenticationController extends BaseController {
|
|||
@DubboReference
|
||||
IdCardServiceApi idCardServiceApi;
|
||||
|
||||
/**
|
||||
* 是否需要实名认证
|
||||
*
|
||||
* @param businessModule 1:提现 2:转账 (来源枚举EBusinessModule)
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@GetMapping("/is-auth")
|
||||
public AjaxResult isAuth(Integer businessModule) {
|
||||
String flag = EYesNo.YES.getValue();
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
// 是否配置提现、转账白名单
|
||||
BdTradeWhiteConfig bdTradeWhiteConfig = iCuMemberBaseService.selectConfigWhite(pkMember, pkCountry, businessModule);
|
||||
if (isStopStatus(businessModule, bdTradeWhiteConfig)) {
|
||||
// 查询配置实名认证
|
||||
BdTradeConfig bdTradeConfig = iCuMemberBaseService.selectConfigTrade(pkMember, pkCountry, businessModule, EVerificationModule.REAL_NAME);
|
||||
// 配置后才进行验证
|
||||
if (null != bdTradeConfig) {
|
||||
//查询是否已实名认证
|
||||
CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build());
|
||||
flag = null == authenticationVO ? EYesNo.NO.getValue() : EYesNo.YES.getValue();
|
||||
}
|
||||
}
|
||||
return AjaxResult.success().put("flag", flag);
|
||||
}
|
||||
|
||||
/**
|
||||
* 调用身份证OCR接口
|
||||
|
|
@ -72,7 +98,6 @@ public class ApiCuMemberAuthenticationController extends BaseController {
|
|||
return AjaxResult.error(result.getMsg());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 调用身份证OCR反面接口
|
||||
*
|
||||
|
|
@ -100,7 +125,6 @@ public class ApiCuMemberAuthenticationController extends BaseController {
|
|||
ThreadUtils.threadPoolExecutor.submit(() -> OssUtil.deleteFile(idCardUrl));
|
||||
}
|
||||
return AjaxResult.error(result.getMsg());
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -115,65 +139,48 @@ public class ApiCuMemberAuthenticationController extends BaseController {
|
|||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
|
||||
//查询是否已实名
|
||||
CuMemberAuthenticationVO queryAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build());
|
||||
if (null != queryAuthenticationVO) {
|
||||
return AjaxResult.error(FinanceMsgConstants.MEMBER_REAL_NAME);
|
||||
}
|
||||
// 验证码是否为空
|
||||
String verificationCode = authenticationVO.getVerificationCode();
|
||||
if (StringUtils.isEmpty(verificationCode)) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.VERIFICATION_CODE_CANNOT_EMPTY));
|
||||
}
|
||||
//真实姓名
|
||||
// 真实姓名
|
||||
String accountName = authenticationVO.getAccountName();
|
||||
if (StringUtils.isEmpty(accountName)) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.REAL_NAME_CANNOT_EMPTY));
|
||||
}
|
||||
|
||||
if (StringUtils.isEmpty(authenticationVO.getIdFront())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.ID_FRONT_CANNOT_EMPTY));
|
||||
}
|
||||
if (StringUtils.isEmpty(authenticationVO.getIdBack())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.ID_BACK_CANNOT_EMPTY));
|
||||
}
|
||||
if (StringUtils.isEmpty(authenticationVO.getAddress())) {
|
||||
return AjaxResult.error("详细地址不能为空!");
|
||||
}
|
||||
// 查询是否已实名
|
||||
CuMemberAuthenticationVO queryAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build());
|
||||
if (null != queryAuthenticationVO) {
|
||||
return AjaxResult.error(FinanceMsgConstants.MEMBER_REAL_NAME);
|
||||
}
|
||||
// 真实姓名与注册的会员姓名不一致
|
||||
CuMember member = iCuMemberService.getMember(pkMember);
|
||||
if (!member.getMemberName().equals(accountName)) {
|
||||
return AjaxResult.error("真实姓名与会员姓名不一致");
|
||||
}
|
||||
|
||||
String message = iApiCodeService.checkCode(authenticationVO.getPhone(), verificationCode, null);
|
||||
String message = iApiAliSmsService.checkCode(authenticationVO.getPhone(), verificationCode, null, member.getPkId());
|
||||
if (null != message) {
|
||||
return AjaxResult.error(message);
|
||||
}
|
||||
// 从身份证获取出生日期
|
||||
authenticationVO.setBirthDate(DateUtils.parseDateOne(IdcardUtil.getBirthByIdCard(authenticationVO.getIdCard()), DateUtils.YAMMER));
|
||||
authenticationVO.setPkCountry(pkCountry);
|
||||
authenticationVO.setPkMember(pkMember);
|
||||
|
||||
return toAjax(iCuMemberAuthenticationService.saveAuthentication(authenticationVO));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 是否需要实名认证
|
||||
*
|
||||
* @param businessModule 1:提现 2:转账 (来源枚举EBusinessModule)
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@GetMapping("/is-auth")
|
||||
public AjaxResult isAuth(Integer businessModule) {
|
||||
String flag = EYesNo.YES.getValue();
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
//查询是否配置了实名认证白名单
|
||||
BdTradeWhiteConfig bdTradeWhiteConfig = iCuMemberBaseService.selectConfigWhite(pkMember, pkCountry, businessModule);
|
||||
if (isStopStatus(businessModule, bdTradeWhiteConfig)) {
|
||||
//查询配置实名认证
|
||||
BdTradeConfig bdTradeConfig = iCuMemberBaseService.selectConfigTrade(pkMember, pkCountry, businessModule, EVerificationModule.REAL_NAME);
|
||||
//配置后才进行验证
|
||||
if (null != bdTradeConfig) {
|
||||
//查询是否已实名认证
|
||||
CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build());
|
||||
flag = null == authenticationVO ? EYesNo.NO.getValue() : EYesNo.YES.getValue();
|
||||
}
|
||||
}
|
||||
return AjaxResult.success().put("flag", flag);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询白名单的配置状态
|
||||
*
|
||||
|
|
@ -191,7 +198,6 @@ public class ApiCuMemberAuthenticationController extends BaseController {
|
|||
return businessModule.equals(EBusinessModule.TRANSFER_ACCOUNTS.getValue()) && bdTradeWhiteConfig.getTransferState().equals(EYesNo.NO.getIntValue());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查看详情
|
||||
*
|
||||
|
|
@ -205,69 +211,4 @@ public class ApiCuMemberAuthenticationController extends BaseController {
|
|||
return AjaxResult.success(authenticationVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 协议处理校验实名
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/agreement-real-name")
|
||||
public AjaxResult agreementRealName() {
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
// 查询实名认证信息
|
||||
CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build());
|
||||
if (null != authenticationVO) {
|
||||
// 存在实名认证信息,则返回成功
|
||||
return AjaxResult.success("", EYesNo.YES.getIntValue());
|
||||
}
|
||||
return AjaxResult.success("", EYesNo.YES.getIntValue());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 是否显示续约
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@GetMapping("/is-expire")
|
||||
public AjaxResult isExpire() {
|
||||
int flag = EYesNo.NO.getIntValue();
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
|
||||
CuMemberExt member = iCuMemberService.getMemberById(pkMember);
|
||||
Integer isRealName = member.getIsRealName();
|
||||
|
||||
//未实名
|
||||
if (isRealName.equals(flag)) {
|
||||
return AjaxResult.success().put("flag", flag);
|
||||
}
|
||||
//到期日期
|
||||
LocalDate expireDate = member.getExpireDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
//到期三个月
|
||||
LocalDate beforeMonthDate = expireDate.minusMonths(3);
|
||||
LocalDate localDate = LocalDate.now();
|
||||
if (localDate.equals(beforeMonthDate) || localDate.isAfter(beforeMonthDate)) {
|
||||
flag = EYesNo.YES.getIntValue();
|
||||
}
|
||||
return AjaxResult.success().put("flag", flag);
|
||||
}
|
||||
|
||||
/**
|
||||
* 续约
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@GetMapping("/renewal_contract")
|
||||
public AjaxResult renewalContract() {
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
//查询是否已实名
|
||||
CuMemberAuthenticationVO queryAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build());
|
||||
if (null == queryAuthenticationVO) {
|
||||
return AjaxResult.error(FinanceMsgConstants.MEMBER_NOT_REAL_NAME);
|
||||
}
|
||||
return toAjax(iCuMemberAuthenticationService.memberRenewalContract(pkMember));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,7 +7,6 @@ import com.hzs.common.core.constant.msg.FinanceMsgConstants;
|
|||
import com.hzs.common.core.domain.R;
|
||||
import com.hzs.common.core.enums.EBusinessModule;
|
||||
import com.hzs.common.core.enums.EYesNo;
|
||||
import com.hzs.common.core.utils.DateUtils;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
|
|
@ -20,7 +19,7 @@ import com.hzs.member.account.service.ICuMemberBankService;
|
|||
import com.hzs.member.account.service.ICuMemberBaseService;
|
||||
import com.hzs.member.account.service.ICuMemberWithdrawService;
|
||||
import com.hzs.member.account.vo.CuMemberBankVO;
|
||||
import com.hzs.member.sms.service.IApiCodeService;
|
||||
import com.hzs.member.sms.service.IApiAliSmsService;
|
||||
import com.hzs.third.bankcard.IBankCardServiceApi;
|
||||
import com.hzs.third.bankcard.dto.BankCardParam;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
|
|
@ -28,14 +27,10 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.util.Assert;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 会员银行卡 前端控制器
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-09-06
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/bank")
|
||||
|
|
@ -44,11 +39,11 @@ public class ApiCuMemberBankController extends BaseController {
|
|||
@Autowired
|
||||
private ICuMemberBankService cuMemberBankService;
|
||||
@Autowired
|
||||
private IApiCodeService iApiCodeService;
|
||||
@Autowired
|
||||
private ICuMemberBaseService iCuMemberBaseService;
|
||||
@Autowired
|
||||
private ICuMemberWithdrawService cuMemberWithdrawService;
|
||||
@Autowired
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
|
||||
@DubboReference
|
||||
IBankCardServiceApi bankCardServiceApi;
|
||||
|
|
@ -151,7 +146,7 @@ public class ApiCuMemberBankController extends BaseController {
|
|||
String cardNumber = cuMemberBankParam.getCardNumber();
|
||||
cuMemberBankParam.setCardNumber(StringUtils.deleteWhitespace(cardNumber));
|
||||
|
||||
String message = iApiCodeService.checkCode(cuMemberBankParam.getPhone(), verificationCode, null);
|
||||
String message = iApiAliSmsService.checkCode(cuMemberBankParam.getPhone(), verificationCode, null, pkMember);
|
||||
if (null != message) {
|
||||
return AjaxResult.error(message);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,23 +4,16 @@ import cn.hutool.core.bean.BeanUtil;
|
|||
import com.hzs.common.core.annotation.RepeatSubmitSimple;
|
||||
import com.hzs.common.core.constant.msg.FinanceMsgConstants;
|
||||
import com.hzs.common.core.enums.EApproveStatus;
|
||||
import com.hzs.common.core.enums.EVerificationModule;
|
||||
import com.hzs.common.core.enums.EYesNo;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.domain.member.account.CuMemberBusinessLicense;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.system.config.BdTradeConfig;
|
||||
import com.hzs.common.domain.system.config.BdTradeWhiteConfig;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.util.TransactionUtils;
|
||||
import com.hzs.member.account.service.ICuMemberAuthenticationService;
|
||||
import com.hzs.member.account.service.ICuMemberBaseService;
|
||||
import com.hzs.member.account.service.ICuMemberBusinessLicenseService;
|
||||
import com.hzs.member.account.vo.CuMemberAuthenticationVO;
|
||||
import com.hzs.member.account.vo.CuMemberBusinessLicenseVO;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
|
|
@ -34,13 +27,9 @@ import java.util.Date;
|
|||
public class ApiCuMemberBusinessLicenseController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ICuMemberBusinessLicenseService cuMemberBusinessLicenseService;
|
||||
private ICuMemberBusinessLicenseService iCuMemberBusinessLicenseService;
|
||||
@Autowired
|
||||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private ICuMemberBaseService iCuMemberBaseService;
|
||||
@Autowired
|
||||
private ICuMemberAuthenticationService authenticationService;
|
||||
private ICuMemberAuthenticationService iCuMemberAuthenticationService;
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -57,7 +46,7 @@ public class ApiCuMemberBusinessLicenseController extends BaseController {
|
|||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
//查询是否已实名认证
|
||||
CuMemberAuthenticationVO authenticationVO = authenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build());
|
||||
CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build());
|
||||
//验证实名认证的真实姓名与法人的姓名是否一致
|
||||
if (null != authenticationVO) {
|
||||
String accountName = authenticationVO.getAccountName();
|
||||
|
|
@ -72,11 +61,10 @@ public class ApiCuMemberBusinessLicenseController extends BaseController {
|
|||
CuMemberBusinessLicense memberBusinessLicense = BeanUtil.copyProperties(businessLicense, CuMemberBusinessLicense.class);
|
||||
memberBusinessLicense.setApproveStatus(EApproveStatus.ALREADY_SUBMIT.getValue());
|
||||
memberBusinessLicense.setPkCreator(pkMember);
|
||||
return toAjax(cuMemberBusinessLicenseService.save(memberBusinessLicense));
|
||||
return toAjax(iCuMemberBusinessLicenseService.save(memberBusinessLicense));
|
||||
} else {
|
||||
return VerifyParameters(businessLicense);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -92,7 +80,7 @@ public class ApiCuMemberBusinessLicenseController extends BaseController {
|
|||
//参数校验
|
||||
if (VerifyParameters(businessLicense).equals(AjaxResult.success())) {
|
||||
//查询是否已实名认证
|
||||
CuMemberAuthenticationVO authenticationVO = authenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).build());
|
||||
CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).build());
|
||||
//验证实名认证的真实姓名与法人的姓名是否一致
|
||||
if (null != authenticationVO) {
|
||||
String accountName = authenticationVO.getAccountName();
|
||||
|
|
@ -106,7 +94,7 @@ public class ApiCuMemberBusinessLicenseController extends BaseController {
|
|||
memberBusinessLicense.setModifiedTime(new Date());
|
||||
memberBusinessLicense.setPkModified(SecurityUtils.getUserId());
|
||||
memberBusinessLicense.setApproveStatus(EApproveStatus.ALREADY_SUBMIT.getValue());
|
||||
return toAjax(cuMemberBusinessLicenseService.updateById(memberBusinessLicense));
|
||||
return toAjax(iCuMemberBusinessLicenseService.updateById(memberBusinessLicense));
|
||||
} else {
|
||||
return VerifyParameters(businessLicense);
|
||||
}
|
||||
|
|
@ -121,37 +109,9 @@ public class ApiCuMemberBusinessLicenseController extends BaseController {
|
|||
*/
|
||||
@GetMapping("/detail")
|
||||
public AjaxResult showDetail() {
|
||||
return AjaxResult.success(cuMemberBusinessLicenseService.selectBusinessLicenseById(SecurityUtils.getUserId(), SecurityUtils.getPkCountry()));
|
||||
return AjaxResult.success(iCuMemberBusinessLicenseService.selectBusinessLicenseById(SecurityUtils.getUserId(), SecurityUtils.getPkCountry()));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 是否上传营业执照
|
||||
*
|
||||
* @param businessModule 1:提现 2:转账 (来源枚举EBusinessModule)
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@GetMapping("/is-exist")
|
||||
public AjaxResult isExistBusinessLicence(Integer businessModule) {
|
||||
String flag = EYesNo.YES.getValue();
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
//查询配置白名单
|
||||
BdTradeWhiteConfig bdTradeWhiteConfig = iCuMemberBaseService.selectConfigWhite(pkMember, pkCountry, businessModule);
|
||||
if (null == bdTradeWhiteConfig) {
|
||||
//查询是否配置营业执照
|
||||
BdTradeConfig bdTradeConfig = iCuMemberBaseService.selectConfigTrade(pkMember, pkCountry, businessModule, EVerificationModule.BUSINESS_LICENSE);
|
||||
//配置后才进行验证
|
||||
if (null != bdTradeConfig) {
|
||||
//查询是否完成经销商认证
|
||||
CuMember cuMember = iCuMemberService.queryMember(pkMember);
|
||||
flag = null != cuMember && cuMember.getIsDealer().equals(EYesNo.YES.getIntValue()) ? EYesNo.YES.getValue() : EYesNo.NO.getValue();
|
||||
}
|
||||
}
|
||||
return AjaxResult.success().put("flag", flag);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 校验参数
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
package com.hzs.member.account.mapper;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.hzs.common.domain.member.account.CuMemberTransfer;
|
||||
import com.hzs.common.domain.member.account.CuMemberTransferExt;
|
||||
|
|
@ -9,12 +8,7 @@ import com.hzs.member.account.vo.CuMemberTransferVO;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员转账表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-09-06
|
||||
*/
|
||||
public interface CuMemberTransferMapper extends BaseMapper<CuMemberTransfer> {
|
||||
|
||||
|
|
|
|||
|
|
@ -19,14 +19,6 @@ public interface ICuMemberAuthenticationService extends IService<CuMemberAuthent
|
|||
*/
|
||||
Boolean saveAuthentication(CuMemberAuthenticationVO authenticationVO);
|
||||
|
||||
/**
|
||||
* 会员续约
|
||||
*
|
||||
* @param pkMember 会员ID
|
||||
* @return Boolean
|
||||
*/
|
||||
Boolean memberRenewalContract(Long pkMember);
|
||||
|
||||
/**
|
||||
* 查询实名认证详情
|
||||
*
|
||||
|
|
|
|||
|
|
@ -9,14 +9,10 @@ import com.hzs.member.handlebusiness.vo.BusinessMemberVO;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员信息-银行卡信息 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-08-31
|
||||
*/
|
||||
public interface ICuMemberBankService extends IService<CuMemberBank> {
|
||||
|
||||
/**
|
||||
* 根据主键查询银行卡信息
|
||||
*
|
||||
|
|
@ -36,8 +32,8 @@ public interface ICuMemberBankService extends IService<CuMemberBank> {
|
|||
/**
|
||||
* 解绑银行卡
|
||||
*
|
||||
* @param pkId 银行卡ID
|
||||
* @param pkMember 会员ID
|
||||
* @param pkId 银行卡ID
|
||||
* @param pkMember 会员ID
|
||||
* @return Boolean
|
||||
*/
|
||||
Boolean unbindBank(Long pkId, Long pkMember);
|
||||
|
|
@ -50,7 +46,6 @@ public interface ICuMemberBankService extends IService<CuMemberBank> {
|
|||
*/
|
||||
Integer saveMemberBank(CuMemberBankParam cuMemberBankParam);
|
||||
|
||||
|
||||
/**
|
||||
* 查询绑定的银行卡
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,24 +1,16 @@
|
|||
package com.hzs.member.account.service;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.hzs.common.domain.member.account.CuMemberAccount;
|
||||
import com.hzs.common.domain.member.account.CuMemberTransfer;
|
||||
import com.hzs.common.domain.member.account.CuMemberTransferExt;
|
||||
import com.hzs.common.domain.system.config.BdTransfer;
|
||||
import com.hzs.member.account.vo.CuMemberTransferVO;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员转账表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-09-06
|
||||
*/
|
||||
public interface ICuMemberTransferService extends IService<CuMemberTransfer> {
|
||||
|
||||
/**
|
||||
* 是否在血缘线上
|
||||
*
|
||||
|
|
@ -81,16 +73,15 @@ public interface ICuMemberTransferService extends IService<CuMemberTransfer> {
|
|||
*/
|
||||
BdTransfer getBdTransfer(Integer pkCountry);
|
||||
|
||||
|
||||
/**
|
||||
* 保存转账
|
||||
*
|
||||
* @param cuMemberTransfer 转账信息
|
||||
* @param cuMemberAccount 转出的账户信息
|
||||
* @param toMemberAccount 转入的账户信息
|
||||
* @param cuMemberAccount 转出的账户信息
|
||||
* @param toMemberAccount 转入的账户信息
|
||||
* @return Integer
|
||||
*/
|
||||
Integer saveMemberTransferInfo(CuMemberTransfer cuMemberTransfer, CuMemberAccount cuMemberAccount,CuMemberAccount toMemberAccount);
|
||||
Integer saveMemberTransferInfo(CuMemberTransfer cuMemberTransfer, CuMemberAccount cuMemberAccount, CuMemberAccount toMemberAccount);
|
||||
|
||||
/**
|
||||
* 根据条件查询转账列表
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
package com.hzs.member.account.service;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.hzs.common.domain.member.account.CuMemberAccount;
|
||||
import com.hzs.common.domain.member.account.CuMemberWithdraw;
|
||||
|
|
@ -14,14 +13,10 @@ import java.math.BigDecimal;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员提现表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-09-06
|
||||
*/
|
||||
public interface ICuMemberWithdrawService extends IService<CuMemberWithdraw> {
|
||||
|
||||
/**
|
||||
* 根据用户ID查询用户的提现次数
|
||||
*
|
||||
|
|
@ -63,7 +58,6 @@ public interface ICuMemberWithdrawService extends IService<CuMemberWithdraw> {
|
|||
*/
|
||||
Integer updateWithdrawByCode(MemberAccountAudit memberAccountAudit);
|
||||
|
||||
|
||||
/**
|
||||
* 查询列表信息
|
||||
*
|
||||
|
|
@ -72,7 +66,6 @@ public interface ICuMemberWithdrawService extends IService<CuMemberWithdraw> {
|
|||
*/
|
||||
Object[] selectMemberWithdrawList(CuMemberWithdrawVO cuMemberWithdrawVO);
|
||||
|
||||
|
||||
/**
|
||||
* 查询提现信息详情
|
||||
*
|
||||
|
|
@ -97,7 +90,6 @@ public interface ICuMemberWithdrawService extends IService<CuMemberWithdraw> {
|
|||
*/
|
||||
Integer withdrawPaymentPositiveByPkId(CuMemberWithdrawVO memberWithdrawVO);
|
||||
|
||||
|
||||
/**
|
||||
* 获取余额
|
||||
*
|
||||
|
|
@ -214,6 +206,7 @@ public interface ICuMemberWithdrawService extends IService<CuMemberWithdraw> {
|
|||
|
||||
/**
|
||||
* 提现驳回
|
||||
*
|
||||
* @param param
|
||||
*/
|
||||
void withdrawReject(CuMemberWithdrawRejectParam param);
|
||||
|
|
|
|||
|
|
@ -3,13 +3,9 @@ package com.hzs.member.account.service.impl;
|
|||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.hzs.common.core.enums.EServiceStatus;
|
||||
import com.hzs.common.core.enums.EYesNo;
|
||||
import com.hzs.common.core.utils.DateUtils;
|
||||
import com.hzs.common.domain.member.account.CuMemberAuthentication;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.member.account.mapper.CuMemberAuthenticationMapper;
|
||||
import com.hzs.member.account.service.ICuMemberAuthenticationService;
|
||||
import com.hzs.member.account.vo.CuMemberAuthenticationVO;
|
||||
|
|
@ -18,8 +14,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.ZoneId;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -52,22 +46,7 @@ public class CuMemberAuthenticationServiceImpl extends ServiceImpl<CuMemberAuthe
|
|||
LambdaUpdateWrapper<CuMember> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(CuMember::getIsRealName, EYesNo.YES.getIntValue());
|
||||
updateWrapper.set(CuMember::getIdCard, authenticationVO.getIdCard());
|
||||
updateWrapper.set(CuMember::getMemberName, authenticationVO.getAccountName());
|
||||
updateWrapper.set(CuMember::getServiceAgreement, EServiceStatus.SIGNED.getValue());
|
||||
updateWrapper.set(CuMember::getModifiedTime, new Date());
|
||||
updateWrapper.set(CuMember::getPkModified, pkMember);
|
||||
updateWrapper.eq(CuMember::getPkId, pkMember);
|
||||
return iCuMemberService.update(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean memberRenewalContract(Long pkMember) {
|
||||
CuMemberExt member = iCuMemberService.getMemberById(SecurityUtils.getUserId());
|
||||
//到期日期
|
||||
LocalDate expireDate = member.getExpireDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
LambdaUpdateWrapper<CuMember> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(CuMember::getServiceAgreement, EServiceStatus.SIGNED.getValue());
|
||||
updateWrapper.set(CuMember::getExpireDate, DateUtils.toDate(expireDate.plusYears(1).atStartOfDay()));
|
||||
updateWrapper.set(CuMember::getBirthDate, authenticationVO.getBirthDate());
|
||||
updateWrapper.set(CuMember::getModifiedTime, new Date());
|
||||
updateWrapper.set(CuMember::getPkModified, pkMember);
|
||||
updateWrapper.eq(CuMember::getPkId, pkMember);
|
||||
|
|
|
|||
|
|
@ -78,7 +78,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
return iCurrencyServiceApi.getByHistoryPkId(pkId).getData();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public BdAccount getAccount(Integer pkId) {
|
||||
return iAccountServiceApi.getAccount(pkId).getData();
|
||||
|
|
@ -95,7 +94,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
return awardsKey == null ? pkAccount : awardsKey.getPkTransactionKey();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Integer getAccountValueById(Integer pkAccount) {
|
||||
BdAccount bdAccount = getAccount(pkAccount);
|
||||
|
|
@ -121,7 +119,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
iCuMemberTradeDetailService.batchInsertMemberTradeDetailFromTrade(sourceCode, cuMemberSettlePeriodByDate.getPkId());
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void handleMemberTradeDetailAndBonus(List<CuMemberAccount> memberAccountList, String sourceCode, Map<Long, Long> idsMap, Integer module) {
|
||||
//查询充值奖金币的交易流水
|
||||
|
|
@ -135,7 +132,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void handleRepeatMemberTradeDetailAndBonus(List<CuMemberAccountRechargeExt> memberAccountList, Integer module) {
|
||||
for (CuMemberAccountRechargeExt cuMemberAccount : memberAccountList) {
|
||||
|
|
@ -186,7 +182,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
//插入奖金发放流水
|
||||
iCuMemberTradeBonusService.save(bonus);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -319,11 +314,12 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
@Override
|
||||
public BdTradeWhiteConfig selectConfigWhite(Long pkMember, Integer pkCountry, Integer businessModule) {
|
||||
TradeConfigDTO whiteDTO = TradeConfigDTO.builder().pkMember(pkMember).pkCountry(pkCountry).memberType(ETradeMemberWhite.BLOOD_UNDER_UMBRELLA.getValue()).build();
|
||||
//查询个人配置实名认证白名单
|
||||
// 查询个人配置实名认证白名单
|
||||
BdTradeWhiteConfig whiteConfig = tradeConfigServiceApi.selectTradeWhiteConfigByCondition(whiteDTO).getData();
|
||||
if (null != whiteConfig) {
|
||||
return whiteConfig;
|
||||
} else {//查询伞下配置白名单
|
||||
} else {
|
||||
// 查询伞下配置白名单
|
||||
return iCuMemberService.selectMemberByUnderBlood(pkMember, ETradeMemberWhite.BLOOD_UNDER_UMBRELLA.getValue());
|
||||
}
|
||||
}
|
||||
|
|
@ -340,7 +336,7 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
} else {
|
||||
tradeConfigDTO.setLicenseState(EYesNo.YES.getIntValue());
|
||||
}
|
||||
//查询配置是否实名认证
|
||||
// 查询配置是否实名认证
|
||||
return tradeConfigServiceApi.selectTradeConfigByCondition(tradeConfigDTO).getData();
|
||||
}
|
||||
|
||||
|
|
@ -362,7 +358,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
return result;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void operationLogMQ(List<BusinessLogDTO> businessLogDTOList) {
|
||||
rabbitTemplate.convertAndSend(RabbitMqConstants.BUSINESS_LOG_EXCHANGE, RabbitMqConstants.BUSINESS_LOG_KEY, businessLogDTOList);
|
||||
|
|
@ -373,7 +368,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService {
|
|||
return cuMember.getMemberCode();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String getMemberNameByVertex(CuMember cuMember) {
|
||||
return cuMember.getMemberName();
|
||||
|
|
|
|||
|
|
@ -34,32 +34,22 @@ import java.math.RoundingMode;
|
|||
import java.util.*;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员转账表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-09-06
|
||||
*/
|
||||
@Service
|
||||
public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMapper, CuMemberTransfer> implements ICuMemberTransferService {
|
||||
|
||||
@Autowired
|
||||
private ICuMemberService cuMemberService;
|
||||
|
||||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private ICuMemberAccountService cuMemberAccountService;
|
||||
|
||||
private ICuMemberAccountService iCuMemberAccountService;
|
||||
@Autowired
|
||||
private ICuMemberTradeService cuMemberTradeService;
|
||||
private ICuMemberTradeService iCuMemberTradeService;
|
||||
@Autowired
|
||||
private ICuMemberBaseService iCuMemberBaseService;
|
||||
|
||||
@DubboReference
|
||||
private ITransferServiceApi transferServiceApi;
|
||||
|
||||
|
||||
@Autowired
|
||||
private ICuMemberBaseService cuMemberBaseService;
|
||||
|
||||
ITransferServiceApi iTransferServiceApi;
|
||||
|
||||
@Override
|
||||
public Boolean isBloodLine(Long pkMember, Long toPkMember) {
|
||||
|
|
@ -71,14 +61,13 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
|
||||
@Override
|
||||
public BdTransfer getBdTransfer(Integer pkCountry) {
|
||||
return transferServiceApi.queryTransfer(pkCountry).getData();
|
||||
return iTransferServiceApi.queryTransfer(pkCountry).getData();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Boolean isBloodKinshipOnUmbrella(Long pkMember, Long toPkMember) {
|
||||
//查找血缘伞上,推荐人
|
||||
List<CuMemberExt> cuMemberUp = cuMemberService.queryBloodKinshipOnUmbrella(pkMember);
|
||||
List<CuMemberExt> cuMemberUp = iCuMemberService.queryBloodKinshipOnUmbrella(pkMember);
|
||||
Optional<CuMemberExt> upOptional = cuMemberUp.stream().filter(up -> toPkMember.equals(up.getPkId())).findFirst();
|
||||
return upOptional.isPresent();
|
||||
}
|
||||
|
|
@ -86,7 +75,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
@Override
|
||||
public Boolean isBloodKinshipUnderUmbrella(Long pkMember, Long toPkMember) {
|
||||
//查找血缘伞下,推荐人
|
||||
List<CuMemberExt> cuMemberDown = cuMemberService.queryBloodKinshipUnderUmbrella(pkMember);
|
||||
List<CuMemberExt> cuMemberDown = iCuMemberService.queryBloodKinshipUnderUmbrella(pkMember);
|
||||
Optional<CuMemberExt> downOptional = cuMemberDown.stream().filter(down -> toPkMember.equals(down.getPkId())).findFirst();
|
||||
return downOptional.isPresent();
|
||||
}
|
||||
|
|
@ -102,14 +91,14 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
@Override
|
||||
public Boolean isPlaceSponsorOnUmbrella(Long pkMember, Long toPkMember) {
|
||||
// TODO 此处会查询整颗树,会出现问题
|
||||
List<CuMemberExt> memberPlaceOn = cuMemberService.queryPlaceSponsorOnUmbrella(pkMember);
|
||||
List<CuMemberExt> memberPlaceOn = iCuMemberService.queryPlaceSponsorOnUmbrella(pkMember);
|
||||
Optional<CuMemberExt> onPlaceOptional = memberPlaceOn.stream().filter(placeOn -> toPkMember.equals(placeOn.getPkId())).findFirst();
|
||||
return onPlaceOptional.isPresent();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean isPlaceSponsorUnderUmbrella(Long pkMember, Long toPkMember) {
|
||||
List<CuMemberExt> memberPlaceUnder = cuMemberService.queryPlaceSponsorUnderUmbrella(pkMember);
|
||||
List<CuMemberExt> memberPlaceUnder = iCuMemberService.queryPlaceSponsorUnderUmbrella(pkMember);
|
||||
Optional<CuMemberExt> underPlaceOptional = memberPlaceUnder.stream().filter(placeUnder -> toPkMember.equals(placeUnder.getPkId())).findFirst();
|
||||
return underPlaceOptional.isPresent();
|
||||
}
|
||||
|
|
@ -136,7 +125,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
Integer pkToAccount = cuMemberTransfer.getPkToAccount();
|
||||
String transferCode = cuMemberTransfer.getTransferCode();
|
||||
//转出方
|
||||
if (cuMemberBaseService.getAccountValueById(pkAccount).equals(EAccount.BONUS.getValue())) {
|
||||
if (iCuMemberBaseService.getAccountValueById(pkAccount).equals(EAccount.BONUS.getValue())) {
|
||||
memberAccountList = new ArrayList<>();
|
||||
memberAccountList.add(cuMemberAccount);
|
||||
idsMap = new HashMap<>();
|
||||
|
|
@ -144,7 +133,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
saveTransferMemberTradeDetailAndBonus(memberAccountList, ETransferType.TRANSFER_OUT.getValue(), transferCode, idsMap);
|
||||
}
|
||||
//转入方
|
||||
if (cuMemberBaseService.getAccountValueById(pkToAccount).equals(EAccount.BONUS.getValue())) {
|
||||
if (iCuMemberBaseService.getAccountValueById(pkToAccount).equals(EAccount.BONUS.getValue())) {
|
||||
memberAccountList = new ArrayList<>();
|
||||
memberAccountList.add(toMemberAccount);
|
||||
idsMap = new HashMap<>();
|
||||
|
|
@ -163,13 +152,12 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
private void saveTransferMemberTradeDetailAndBonus(List<CuMemberAccount> memberAccountList, Integer type, String businessCode, Map<Long, Long> idsMap) {
|
||||
//转出方
|
||||
if (type.equals(ETransferType.TRANSFER_OUT.getValue())) {
|
||||
cuMemberBaseService.handleMemberTradeDetailAndBonus(memberAccountList, businessCode, idsMap, EConsumeType.TRANSFER.getValue());
|
||||
iCuMemberBaseService.handleMemberTradeDetailAndBonus(memberAccountList, businessCode, idsMap, EConsumeType.TRANSFER.getValue());
|
||||
} else {
|
||||
cuMemberBaseService.saveMemberTradeDetail(businessCode);
|
||||
iCuMemberBaseService.saveMemberTradeDetail(businessCode);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 更新交易流水和余额
|
||||
*
|
||||
|
|
@ -178,7 +166,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
*/
|
||||
private Integer updateTradeAndBalancd(CuMemberTransfer cuMemberTransfer, int type) {
|
||||
CuMemberTrade cuMemberTrade = type == (ETransferType.TRANSFER_OUT.getValue()) ? this.getCuMemberTradeToTransferOut(cuMemberTransfer) : this.getCuMemberTradeToTransferIn(cuMemberTransfer);
|
||||
cuMemberTradeService.save(cuMemberTrade);
|
||||
iCuMemberTradeService.save(cuMemberTrade);
|
||||
//更新余额表
|
||||
Long pkMember = cuMemberTransfer.getPkMember();
|
||||
Long toPkMember = cuMemberTransfer.getToPkMember();
|
||||
|
|
@ -192,14 +180,14 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
//转账金额
|
||||
BigDecimal transferMoney = type == (ETransferType.TRANSFER_OUT.getValue()) ? cuMemberTransfer.getTransferMoney() : cuMemberTransfer.getIssuedAmount();
|
||||
BigDecimal amount = type == (ETransferType.TRANSFER_OUT.getValue()) ? transferMoney.negate() : transferMoney;
|
||||
Integer pkAccountValue = cuMemberBaseService.getAccountValueById(pkAccount);
|
||||
Integer pkAccountValue = iCuMemberBaseService.getAccountValueById(pkAccount);
|
||||
|
||||
CuMemberAccountParam param = CuMemberAccountParam.builder().pkMember(memberId)
|
||||
.accountType(pkAccountValue).amount(amount).pkModified(cuMemberTransfer.getPkCreator())
|
||||
.accountClassify(ETradeClassify.TRANSFER.getValue()).pkCountry(cuMemberTransfer.getPkCountry())
|
||||
.transferType(type).build();
|
||||
|
||||
return cuMemberAccountService.updateMemberAccountByMemberCode(param);
|
||||
return iCuMemberAccountService.updateMemberAccountByMemberCode(param);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -211,15 +199,15 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
private CuMemberTrade getCuMemberTradeToTransferOut(CuMemberTransfer cuMemberTransfer) {
|
||||
Long pkMember = cuMemberTransfer.getPkMember();
|
||||
Long toPkMember = cuMemberTransfer.getToPkMember();
|
||||
CuMember member = cuMemberService.queryMember(pkMember);
|
||||
CuMember toMember = cuMemberService.queryMember(toPkMember);
|
||||
CuMember member = iCuMemberService.queryMember(pkMember);
|
||||
CuMember toMember = iCuMemberService.queryMember(toPkMember);
|
||||
//提现金额
|
||||
BigDecimal tradeAmount = cuMemberTransfer.getTransferMoney();
|
||||
BigDecimal amount = tradeAmount.negate();
|
||||
int accountType = cuMemberTransfer.getPkAccount();
|
||||
String tradeCode = CommonUtil.createSerialNumber(EOrderPrefix.TRANSFER_CODE.getValue());
|
||||
//查询余额
|
||||
BigDecimal balance = cuMemberAccountService.selectBalanceByMemberCode(pkMember, cuMemberBaseService.getAccountValueById(accountType));
|
||||
BigDecimal balance = iCuMemberAccountService.selectBalanceByMemberCode(pkMember, iCuMemberBaseService.getAccountValueById(accountType));
|
||||
CuMemberTrade memberTrade = CuMemberTrade.builder().pkMember(pkMember)
|
||||
.tradeCode(tradeCode)
|
||||
.pkAccount(cuMemberTransfer.getPkAccount())
|
||||
|
|
@ -231,7 +219,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
.tradeBalance(balance.add(amount))
|
||||
.sourceCode(cuMemberTransfer.getTransferCode())
|
||||
.tradeStatue(ETradeStatus.TAKE_EFFECT.getValue())
|
||||
.remarks(getTransferRemarks(toMember, member, tradeAmount,ETransferType.TRANSFER_OUT))
|
||||
.remarks(getTransferRemarks(toMember, member, tradeAmount, ETransferType.TRANSFER_OUT))
|
||||
.build();
|
||||
memberTrade.setPkCountry(cuMemberTransfer.getPkCountry());
|
||||
memberTrade.setPkCreator(cuMemberTransfer.getPkCreator());
|
||||
|
|
@ -248,14 +236,14 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
private CuMemberTrade getCuMemberTradeToTransferIn(CuMemberTransfer cuMemberTransfer) {
|
||||
Long pkMember = cuMemberTransfer.getPkMember();
|
||||
Long toPkMember = cuMemberTransfer.getToPkMember();
|
||||
CuMember member = cuMemberService.queryMember(pkMember);
|
||||
CuMember toMember = cuMemberService.queryMember(toPkMember);
|
||||
CuMember member = iCuMemberService.queryMember(pkMember);
|
||||
CuMember toMember = iCuMemberService.queryMember(toPkMember);
|
||||
//提现金额
|
||||
BigDecimal tradeAmount = cuMemberTransfer.getIssuedAmount();
|
||||
int accountType = cuMemberTransfer.getPkToAccount();
|
||||
String tradeCode = CommonUtil.createSerialNumber(EOrderPrefix.TRANSFER_CODE.getValue());
|
||||
//查询余额
|
||||
BigDecimal balance = cuMemberAccountService.selectBalanceByMemberCode(toPkMember, cuMemberBaseService.getAccountValueById(accountType));
|
||||
BigDecimal balance = iCuMemberAccountService.selectBalanceByMemberCode(toPkMember, iCuMemberBaseService.getAccountValueById(accountType));
|
||||
CuMemberTrade memberTrade = CuMemberTrade.builder().pkMember(toPkMember)
|
||||
.tradeCode(tradeCode)
|
||||
.pkAccount(cuMemberTransfer.getPkToAccount())
|
||||
|
|
@ -267,7 +255,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
.tradeBalance(balance.add(tradeAmount))
|
||||
.sourceCode(cuMemberTransfer.getTransferCode())
|
||||
.tradeStatue(ETradeStatus.TAKE_EFFECT.getValue())
|
||||
.remarks(getTransferRemarks(member, toMember, tradeAmount,ETransferType.TRANSFER_IN))
|
||||
.remarks(getTransferRemarks(member, toMember, tradeAmount, ETransferType.TRANSFER_IN))
|
||||
.build();
|
||||
memberTrade.setPkCountry(cuMemberTransfer.getPkCountry());
|
||||
memberTrade.setPkCreator(cuMemberTransfer.getPkCreator());
|
||||
|
|
@ -285,7 +273,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
*/
|
||||
private String getTransferRemarks(CuMember member, CuMember toMember, BigDecimal tradeAmount, ETransferType eTransferType) {
|
||||
StringBuilder remarks = new StringBuilder();
|
||||
remarks.append(cuMemberBaseService.getMemberName(toMember))
|
||||
remarks.append(iCuMemberBaseService.getMemberName(toMember))
|
||||
.append("(")
|
||||
.append(toMember.getMemberName())
|
||||
.append(") ");
|
||||
|
|
@ -294,9 +282,9 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
} else {
|
||||
remarks.append(TransactionUtils.getContent(FinanceMsgConstants.TRANSFER_ACCOUNTS));
|
||||
}
|
||||
remarks.append(cuMemberBaseService.getMemberName(member))
|
||||
remarks.append(iCuMemberBaseService.getMemberName(member))
|
||||
.append("(")
|
||||
.append(cuMemberBaseService.getMemberNameByVertex(member))
|
||||
.append(iCuMemberBaseService.getMemberNameByVertex(member))
|
||||
.append(") ")
|
||||
.append(TransactionUtils.getContent(FinanceMsgConstants.AMOUNT_MONEY))
|
||||
.append(tradeAmount);
|
||||
|
|
@ -304,8 +292,6 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Object[] selectMemberTransferList(CuMemberTransferVO cuMemberTransferVO) {
|
||||
CuMemberTransferVO memberTransferVO;
|
||||
|
|
@ -319,11 +305,9 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
cuMemberTransferVOS.add(memberTransferVO);
|
||||
}
|
||||
}
|
||||
Object[] objects = new Object[]{cuMemberTransferExts, cuMemberTransferVOS};
|
||||
return objects;
|
||||
return new Object[]{cuMemberTransferExts, cuMemberTransferVOS};
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 页面显示公用参数
|
||||
*
|
||||
|
|
@ -335,17 +319,17 @@ public class CuMemberTransferServiceImpl extends ServiceImpl<CuMemberTransferMap
|
|||
Integer pkRate = memberTransfer.getPkRate();
|
||||
if (null != pkRate) {
|
||||
//汇率
|
||||
exchangeRate = cuMemberBaseService.getCurrencyById(pkRate).getInExchangeRate();
|
||||
exchangeRate = iCuMemberBaseService.getCurrencyById(pkRate).getInExchangeRate();
|
||||
} else {
|
||||
//取最新的汇率
|
||||
CurrencyDTO currencyDTO = cuMemberBaseService.getCurrency(cuMemberTransferVO.getPkCountry());
|
||||
CurrencyDTO currencyDTO = iCuMemberBaseService.getCurrency(cuMemberTransferVO.getPkCountry());
|
||||
exchangeRate = currencyDTO.getInExchangeRate();
|
||||
}
|
||||
//翻译key键
|
||||
Integer pkAccount = cuMemberTransferVO.getPkAccount();
|
||||
cuMemberTransferVO.setPkAccount(cuMemberBaseService.translateAccountValue(pkAccount));
|
||||
cuMemberTransferVO.setPkAccount(iCuMemberBaseService.translateAccountValue(pkAccount));
|
||||
Integer pkToAccount = cuMemberTransferVO.getPkToAccount();
|
||||
cuMemberTransferVO.setPkToAccount(cuMemberBaseService.translateAccountValue(pkToAccount));
|
||||
cuMemberTransferVO.setPkToAccount(iCuMemberBaseService.translateAccountValue(pkToAccount));
|
||||
//转账本币
|
||||
if (null != exchangeRate) {
|
||||
BigDecimal settleTransferMoney = memberTransfer.getTransferMoney().divide(exchangeRate, 4, RoundingMode.HALF_UP);
|
||||
|
|
|
|||
|
|
@ -8,23 +8,18 @@ import lombok.Data;
|
|||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 实名认证VO
|
||||
*
|
||||
* @Description:
|
||||
* @Author: ljc
|
||||
* @Time: 2023/4/17 13:52
|
||||
* @Classname: CuMemberAuthenticationVO
|
||||
* @Package_name: com.hzs.member.account.vo
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class CuMemberAuthenticationVO implements Serializable {
|
||||
private static final long serialVersionUID = 4142922801656536607L;
|
||||
|
||||
private static final long serialVersionUID = 4142922801656536607L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
|
|
@ -158,4 +153,9 @@ public class CuMemberAuthenticationVO implements Serializable {
|
|||
*/
|
||||
private String idCardBackUrl;
|
||||
|
||||
/**
|
||||
* 出生日期
|
||||
*/
|
||||
private Date birthDate;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ public class CuMemberWithdrawVO extends CuMemberBaseVO {
|
|||
/**
|
||||
* 个人所得税
|
||||
*/
|
||||
@Excel(name = "个税", scale = 2)
|
||||
@Excel(name = "服务费", scale = 2)
|
||||
@BigDecimalFormat()
|
||||
private BigDecimal incomeTax;
|
||||
|
||||
|
|
@ -93,28 +93,28 @@ public class CuMemberWithdrawVO extends CuMemberBaseVO {
|
|||
/**
|
||||
* 提现金额
|
||||
*/
|
||||
@Excel(name = "本次提现($)", scale = 2)
|
||||
// @Excel(name = "本次提现($)", scale = 2)
|
||||
@BigDecimalFormat()
|
||||
private BigDecimal settleCashAmount;
|
||||
|
||||
/**
|
||||
* 手续费
|
||||
*/
|
||||
@Excel(name = "手续费($)", scale = 2)
|
||||
// @Excel(name = "手续费($)", scale = 2)
|
||||
@BigDecimalFormat()
|
||||
private BigDecimal settleServiceCharge;
|
||||
|
||||
/**
|
||||
* 个人所得税
|
||||
*/
|
||||
@Excel(name = "个税($)", scale = 2)
|
||||
// @Excel(name = "个税($)", scale = 2)
|
||||
@BigDecimalFormat()
|
||||
private BigDecimal settleIncomeTax;
|
||||
|
||||
/**
|
||||
* 实发金额
|
||||
*/
|
||||
@Excel(name = "实发金额($)", scale = 2)
|
||||
// @Excel(name = "实发金额($)", scale = 2)
|
||||
@BigDecimalFormat()
|
||||
private BigDecimal settleIssuedAmount;
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@ package com.hzs.member.base.controller.api;
|
|||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.hzs.common.core.annotation.RepeatSubmitSimple;
|
||||
import com.hzs.common.core.constant.CountryConstants;
|
||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
||||
import com.hzs.common.core.constant.msg.CommonMsgConstants;
|
||||
import com.hzs.common.core.constant.msg.ConfigMsgConstants;
|
||||
import com.hzs.common.core.constant.msg.MemberMsgConstants;
|
||||
|
|
@ -19,7 +17,6 @@ import com.hzs.common.domain.member.base.CuMember;
|
|||
import com.hzs.common.domain.member.detail.CuMemberChangeLog;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.service.ITransactionCommonService;
|
||||
import com.hzs.common.util.TransactionUtils;
|
||||
import com.hzs.member.base.param.ForgetPasswordParam;
|
||||
import com.hzs.member.base.param.MemberDataParam;
|
||||
|
|
@ -27,9 +24,7 @@ import com.hzs.member.base.service.ICuMemberService;
|
|||
import com.hzs.member.base.service.IMemberInfoService;
|
||||
import com.hzs.common.core.utils.UploadFileUtil;
|
||||
import com.hzs.member.base.vo.*;
|
||||
import com.hzs.member.sms.service.IApiCodeService;
|
||||
import com.hzs.system.base.ICurrencyServiceApi;
|
||||
import com.hzs.system.base.dto.CurrencyDTO;
|
||||
import com.hzs.member.sms.service.IApiAliSmsService;
|
||||
import com.hzs.system.config.IGradeServiceApi;
|
||||
import com.hzs.system.config.dto.GradeDTO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -39,7 +34,6 @@ import org.springframework.web.bind.annotation.*;
|
|||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
|
|
@ -50,33 +44,15 @@ import java.util.*;
|
|||
@RestController
|
||||
public class ApiMemberController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ITransactionCommonService iTransactionCommonService;
|
||||
@Autowired
|
||||
private IMemberInfoService iMemberInfoService;
|
||||
@Autowired
|
||||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private IApiCodeService iApiCodeService;
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
|
||||
@DubboReference
|
||||
IGradeServiceApi gradeServiceApi;
|
||||
@DubboReference
|
||||
ICurrencyServiceApi currencyServiceApi;
|
||||
|
||||
// /**
|
||||
// * 获取登录会员信息
|
||||
// *
|
||||
// * @return
|
||||
// */
|
||||
// @GetMapping("/get-info")
|
||||
// public AjaxResult getInfo() {
|
||||
// MemberInfoVO memberInfo = iMemberInfoService.getMemberInfo(SecurityUtils.getUserId());
|
||||
// if (null == memberInfo) {
|
||||
// return AjaxResult.error();
|
||||
// }
|
||||
// return AjaxResult.success(memberInfo);
|
||||
// }
|
||||
IGradeServiceApi iGradeServiceApi;
|
||||
|
||||
/**
|
||||
* 更新个人资料(昵称)
|
||||
|
|
@ -261,7 +237,7 @@ public class ApiMemberController extends BaseController {
|
|||
Long memberId = cuMemberExt.getPkId();
|
||||
|
||||
// 校验短信验证码是否有效
|
||||
String checkSmsStr = iApiCodeService.checkRecoverCode(param.getPhone(), param.getCode());
|
||||
String checkSmsStr = iApiAliSmsService.checkRecoverCode(param.getPhone(), param.getCode(), memberId);
|
||||
if (null != checkSmsStr) {
|
||||
return AjaxResult.error(checkSmsStr);
|
||||
}
|
||||
|
|
@ -306,7 +282,7 @@ public class ApiMemberController extends BaseController {
|
|||
Long memberId = cuMemberExt.getPkId();
|
||||
|
||||
// 校验短信验证码是否有效
|
||||
String checkSmsStr = iApiCodeService.checkPayPasswordCode(cuMemberExt.getPhone(), param.getCode());
|
||||
String checkSmsStr = iApiAliSmsService.checkPayPasswordCode(cuMemberExt.getPhone(), param.getCode(), memberId);
|
||||
if (null != checkSmsStr) {
|
||||
return AjaxResult.error(checkSmsStr);
|
||||
}
|
||||
|
|
@ -356,18 +332,10 @@ public class ApiMemberController extends BaseController {
|
|||
|
||||
/**
|
||||
* 会员 推荐列表(直推列表)
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("parent-list")
|
||||
public TableDataInfo parentList(String memberCode, String memberName, Date startCreateTime, Date endCreateTime, String memberInfo) {
|
||||
Long memberId = SecurityUtils.getUserId();
|
||||
|
||||
// 查询等级
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
R<List<GradeDTO>> grderDate = gradeServiceApi.findAll();
|
||||
List<GradeDTO> grderList = grderDate.getData();
|
||||
|
||||
if (endCreateTime != null) {
|
||||
endCreateTime = DateUtils.getEndTime(endCreateTime);
|
||||
}
|
||||
|
|
@ -376,27 +344,21 @@ public class ApiMemberController extends BaseController {
|
|||
List<ParentMemberVo> list = iCuMemberService.parentList(memberId, memberCode, memberName, startCreateTime, endCreateTime, memberInfo);
|
||||
|
||||
if (CollectionUtil.isNotEmpty(list)) {
|
||||
Map<Integer, String> transactionMap = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE);
|
||||
R<CurrencyDTO> currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry());
|
||||
BigDecimal inExchangeRate = currency.getData().getInExchangeRate();
|
||||
R<List<GradeDTO>> gradeDate = iGradeServiceApi.findAll();
|
||||
List<GradeDTO> gradeList = gradeDate.getData();
|
||||
|
||||
for (ParentMemberVo cuMember : list) {
|
||||
cuMember.setMemberCode(cuMember.getMemberCode());
|
||||
cuMember.setMemberName(cuMember.getMemberName());
|
||||
|
||||
for (GradeDTO gradeDTO : grderList) {
|
||||
for (GradeDTO gradeDTO : gradeList) {
|
||||
if (gradeDTO.getPkId().equals(cuMember.getPkRegisterGrade())) {
|
||||
cuMember.setPkRegisterGradeStr(transactionMap.get(gradeDTO.getPkTransaction()));
|
||||
cuMember.setPkRegisterGradeStr(gradeDTO.getGradeName());
|
||||
}
|
||||
}
|
||||
for (GradeDTO gradeDTO : grderList) {
|
||||
for (GradeDTO gradeDTO : gradeList) {
|
||||
if (gradeDTO.getPkId().equals(cuMember.getPkSettleGrade())) {
|
||||
cuMember.setPkSettleGradeStr(transactionMap.get(gradeDTO.getPkTransaction()));
|
||||
}
|
||||
}
|
||||
if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) {
|
||||
if (cuMember.getConsumeAchieve() != null) {
|
||||
cuMember.setConsumeAchieve(cuMember.getConsumeAchieve().multiply(inExchangeRate));
|
||||
cuMember.setPkSettleGradeStr(gradeDTO.getGradeName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,16 +3,12 @@ package com.hzs.member.base.controller.manage;
|
|||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.codec.Base64Encoder;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdcardUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.hzs.common.core.annotation.AccessPermissions;
|
||||
import com.hzs.common.core.annotation.ColumnAuthority;
|
||||
import com.hzs.common.core.annotation.Log;
|
||||
import com.hzs.common.core.constant.CountryConstants;
|
||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
||||
import com.hzs.common.core.constant.TableNameConstants;
|
||||
import com.hzs.common.core.constant.VertexConstants;
|
||||
import com.hzs.common.core.constant.msg.MemberMsgConstants;
|
||||
import com.hzs.common.core.domain.R;
|
||||
|
|
@ -23,9 +19,6 @@ import com.hzs.common.core.utils.poi.ExcelUtil;
|
|||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.core.web.page.TableDataInfo;
|
||||
import com.hzs.common.domain.member.account.CuMemberTransfer;
|
||||
import com.hzs.common.domain.member.account.CuMemberWithdraw;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.domain.system.config.BdAwards;
|
||||
|
|
@ -33,20 +26,14 @@ import com.hzs.common.security.service.MemberTokenService;
|
|||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.service.ITransactionCommonService;
|
||||
import com.hzs.common.util.TransactionUtils;
|
||||
import com.hzs.member.account.service.ICuMemberTransferService;
|
||||
import com.hzs.member.account.service.ICuMemberWithdrawService;
|
||||
import com.hzs.member.achieve.service.ICuMemberSettlePeriodService;
|
||||
import com.hzs.member.achieve.service.ICuMemberTreeService;
|
||||
import com.hzs.member.base.dto.LoginMember;
|
||||
import com.hzs.member.base.dto.MemberBusinessTemplate;
|
||||
import com.hzs.member.base.param.*;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import com.hzs.member.base.service.ICuMemberTeamService;
|
||||
import com.hzs.member.base.vo.*;
|
||||
import com.hzs.member.login.service.IMemberLoginService;
|
||||
import com.hzs.member.swing.param.CuMemberSwingNetParam;
|
||||
import com.hzs.member.swing.vo.CuMemberRetVO;
|
||||
import com.hzs.system.base.IAreaServiceApi;
|
||||
import com.hzs.system.base.ICurrencyServiceApi;
|
||||
import com.hzs.system.base.dto.CurrencyDTO;
|
||||
import com.hzs.system.config.IAwardsServiceApi;
|
||||
|
|
@ -64,7 +51,6 @@ import javax.servlet.http.HttpServletResponse;
|
|||
import java.math.BigDecimal;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.*;
|
||||
import java.util.regex.Pattern;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@RequestMapping("/manager/member")
|
||||
|
|
@ -72,17 +58,7 @@ import java.util.stream.Collectors;
|
|||
public class CuMemberController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ICuMemberWithdrawService memberWithdrawService;
|
||||
@Autowired
|
||||
private ICuMemberSettlePeriodService memberSettlePeriodService;
|
||||
@Autowired
|
||||
private ICuMemberTransferService memberTransferService;
|
||||
@Autowired
|
||||
private ICuMemberService cuMemberService;
|
||||
@Autowired
|
||||
private ICuMemberTeamService memberTeamService;
|
||||
@Autowired
|
||||
private ICuMemberTreeService memberTreeService;
|
||||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private ITransactionCommonService iTransactionCommonService;
|
||||
@Autowired
|
||||
|
|
@ -97,15 +73,13 @@ public class CuMemberController extends BaseController {
|
|||
@DubboReference
|
||||
IGradeServiceApi iGradeServiceApi;
|
||||
@DubboReference
|
||||
IAreaServiceApi iAreaServiceApi;
|
||||
@DubboReference
|
||||
ICurrencyServiceApi iCurrencyServiceApi;
|
||||
@DubboReference
|
||||
IMenuColumnServiceApi iMenuColumnServiceApi;
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberService(ICuMemberService cuMemberService) {
|
||||
this.cuMemberService = cuMemberService;
|
||||
public void setCuMemberService(ICuMemberService iCuMemberService) {
|
||||
this.iCuMemberService = iCuMemberService;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -169,17 +143,12 @@ public class CuMemberController extends BaseController {
|
|||
|
||||
/**
|
||||
* 真实信息
|
||||
*
|
||||
* @author: zhang jing
|
||||
* @date: 2022/11/15 17:59
|
||||
* @param: [memberParam]
|
||||
* @return: com.hzs.common.core.web.page.TableDataInfo
|
||||
**/
|
||||
@Log(module = EOperationModule.MEMBER_INFORMATION, business = EOperationBusiness.MEMBER_INFO_REAL, method = EOperationMethod.SELECT)
|
||||
@PostMapping("/real-member")
|
||||
public TableDataInfo realMember(@RequestBody CuMemberVO memberParam) {
|
||||
memberParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
List<CuMemberVO> cuMemberVOS = cuMemberService.realCuMemberByCondition(memberParam);
|
||||
List<CuMemberVO> cuMemberVOS = iCuMemberService.realCuMemberByCondition(memberParam);
|
||||
if (CollectionUtil.isNotEmpty(cuMemberVOS)) {
|
||||
for (CuMemberVO cvo : cuMemberVOS) {
|
||||
if (cvo.getSex() == ESex.MAN.getValue()) {
|
||||
|
|
@ -191,18 +160,6 @@ public class CuMemberController extends BaseController {
|
|||
if (cvo.getCardType() == ECardType.CARD.getValue()) {
|
||||
cvo.setCardTypeVal(ECardType.CARD.getLabel());
|
||||
}
|
||||
if (cvo.getCardType() == ECardType.OFFICER.getValue()) {
|
||||
cvo.setCardTypeVal(ECardType.OFFICER.getLabel());
|
||||
}
|
||||
if (cvo.getCardType() == ECardType.STUDENT.getValue()) {
|
||||
cvo.setCardTypeVal(ECardType.STUDENT.getLabel());
|
||||
}
|
||||
if (cvo.getCardType() == ECardType.DRIVE.getValue()) {
|
||||
cvo.setCardTypeVal(ECardType.DRIVE.getLabel());
|
||||
}
|
||||
if (cvo.getCardType() == ECardType.PASSPORT.getValue()) {
|
||||
cvo.setCardTypeVal(ECardType.PASSPORT.getLabel());
|
||||
}
|
||||
}
|
||||
}
|
||||
return getDataTable(cuMemberVOS);
|
||||
|
|
@ -210,15 +167,10 @@ public class CuMemberController extends BaseController {
|
|||
|
||||
/**
|
||||
* 根据会员编号查询会员信息
|
||||
*
|
||||
* @author: zhang jing
|
||||
* @date: 2022/11/9 18:25
|
||||
* @param: [pkId]
|
||||
* @return: com.hzs.common.core.web.domain.AjaxResult
|
||||
**/
|
||||
@GetMapping("/getOne/{memberCode}")
|
||||
public AjaxResult getOne(@PathVariable String memberCode) {
|
||||
CuMember cuMember = cuMemberService.getMember(memberCode);
|
||||
CuMember cuMember = iCuMemberService.getMember(memberCode);
|
||||
return AjaxResult.success(cuMember);
|
||||
}
|
||||
|
||||
|
|
@ -277,7 +229,7 @@ public class CuMemberController extends BaseController {
|
|||
* @param param
|
||||
*/
|
||||
private void handleMemberSelect(List<MemberSelectVO> resultList, MemberSelectParam param) {
|
||||
List<CuMemberExt> cuMemberExtList = cuMemberService.queryMemberSelect(param, SecurityUtils.getPkCountry());
|
||||
List<CuMemberExt> cuMemberExtList = iCuMemberService.queryMemberSelect(param, SecurityUtils.getPkCountry());
|
||||
if (CollectionUtil.isNotEmpty(cuMemberExtList)) {
|
||||
for (CuMemberExt cuMemberExt : cuMemberExtList) {
|
||||
MemberSelectVO memberSelectVO = BeanUtil.copyProperties(cuMemberExt, MemberSelectVO.class);
|
||||
|
|
@ -307,41 +259,18 @@ public class CuMemberController extends BaseController {
|
|||
UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData();
|
||||
memberRealInfoParam.setVertexList(userAuthorityDTO.getUserVertexList());
|
||||
memberRealInfoParam.setTeamList(userAuthorityDTO.getUserTeamList());
|
||||
if (StringUtils.isNotEmpty(memberRealInfoParam.getBirthDate())) {
|
||||
memberRealInfoParam.setBirthDate(memberRealInfoParam.getBirthDate().replace("-", ""));
|
||||
}
|
||||
|
||||
startPage();
|
||||
List<MemberRealInfoVO> resultList = cuMemberService.selectByMemberRealInfo(memberRealInfoParam);
|
||||
|
||||
List<MemberRealInfoVO> resultList = iCuMemberService.selectByMemberRealInfo(memberRealInfoParam);
|
||||
if (CollectionUtil.isNotEmpty(resultList)) {
|
||||
//数据库内容翻译
|
||||
Map<Integer, String> transactionMap1 = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE,
|
||||
EnumsPrefixConstants.KEY_AWARD);
|
||||
|
||||
R<List<BdAwards>> awardsListDate = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry());
|
||||
// 奖衔
|
||||
R<List<BdAwards>> awardsListDate = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry());
|
||||
List<BdAwards> awardsList = awardsListDate.getData();
|
||||
R<List<GradeDTO>> gradeListDate = iGradeServiceApi.queryGradeList(SecurityUtils.getPkCountry());
|
||||
// 等级
|
||||
R<List<GradeDTO>> gradeListDate = iGradeServiceApi.queryGradeList(SecurityUtils.getPkCountry());
|
||||
List<GradeDTO> gradeList = gradeListDate.getData();
|
||||
Map<Integer, String> areaDate = iAreaServiceApi.getAreaMap(SecurityUtils.getPkCountry()).getData();
|
||||
|
||||
for (MemberRealInfoVO cuMemberExt : resultList) {
|
||||
cuMemberExt.setRegisterGradeVal(transactionMap1.get(cuMemberExt.getPkRegisterGrade()));
|
||||
cuMemberExt.setSettleGradeVal(transactionMap1.get(cuMemberExt.getPkSettleGrade()));
|
||||
cuMemberExt.setAwardsVal(transactionMap1.get(cuMemberExt.getPkAwards()));
|
||||
if (cuMemberExt.getPkProvince() != null) {
|
||||
// 省
|
||||
cuMemberExt.setProvinceName(areaDate.get(cuMemberExt.getPkProvince()));
|
||||
}
|
||||
if (cuMemberExt.getPkCity() != null) {
|
||||
// 市
|
||||
cuMemberExt.setCityName(areaDate.get(cuMemberExt.getPkCity()));
|
||||
}
|
||||
if (cuMemberExt.getPkCounty() != null) {
|
||||
// 区县
|
||||
cuMemberExt.setCountyName(areaDate.get(cuMemberExt.getPkCounty()));
|
||||
}
|
||||
// 注册等级
|
||||
if (cuMemberExt.getPkRegisterGrade() != null) {
|
||||
for (GradeDTO grade : gradeList) {
|
||||
|
|
@ -366,215 +295,16 @@ public class CuMemberController extends BaseController {
|
|||
}
|
||||
}
|
||||
}
|
||||
// 生日
|
||||
if (StringUtils.isNotBlank(cuMemberExt.getIdCard()) && (checkIdCard(cuMemberExt.getIdCard()))) {
|
||||
cuMemberExt.setBirthDate(IdcardUtil.getBirthDate(cuMemberExt.getIdCard()));
|
||||
}
|
||||
if (cuMemberExt.getIdType() != null) {
|
||||
cuMemberExt.setCardTypeVal(EIdType.getLabel(cuMemberExt.getIdType()));
|
||||
}
|
||||
cuMemberExt.setCardTypeVal(EIdType.getLabelByValue(cuMemberExt.getIdType()));
|
||||
cuMemberExt.setSexVal(ESex.getLabelByValue(cuMemberExt.getSex()));
|
||||
}
|
||||
}
|
||||
|
||||
return getDataTable(resultList);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 会员团队信息
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AccessPermissions("TeamInfo")
|
||||
@GetMapping("/member-team-info")
|
||||
public TableDataInfo memberTeamInfo(MemberTeamInfoParam memberTeamInfoParam) {
|
||||
String time;
|
||||
String settleTableName;
|
||||
CuMemberSettlePeriod csPeriod;
|
||||
List<MemberTeamVo> memberTeamList = new ArrayList<>();
|
||||
R<List<BdAwards>> awardsDto = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry());
|
||||
if (memberTeamInfoParam.getQueryDate() == null) {
|
||||
// 昨日
|
||||
time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtil.offsetDay(new Date(), -1));
|
||||
csPeriod = memberSettlePeriodService.getCuMemberSettlePeriodByDate(time);
|
||||
settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId();
|
||||
} else {
|
||||
String queryDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, memberTeamInfoParam.getQueryDate());
|
||||
String currentDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.currentDate());
|
||||
time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, memberTeamInfoParam.getQueryDate());
|
||||
csPeriod = memberSettlePeriodService.getCuMemberSettlePeriodByDate(time);
|
||||
if (queryDate.equals(currentDate)) {
|
||||
settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId();
|
||||
} else {
|
||||
// 历史
|
||||
settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId();
|
||||
}
|
||||
}
|
||||
// 如果表格不存在则返回空数据
|
||||
Integer tableNumber = memberTreeService.queryExistOracleTable(settleTableName);
|
||||
if (tableNumber == null || tableNumber == 0) {
|
||||
return getDataTable(new ArrayList<>());
|
||||
}
|
||||
memberTeamInfoParam.setSettleTableName(settleTableName);
|
||||
memberTeamInfoParam.setPeriod(csPeriod.getPkId());
|
||||
startPage();
|
||||
if (StringUtils.isNotBlank(memberTeamInfoParam.getMemberCode())) {
|
||||
if (memberTeamInfoParam.getRelaType() != null && memberTeamInfoParam.getRelaType().equals(ERealType.XY.getIntValue())) {
|
||||
// 血缘
|
||||
memberTeamList = memberTeamService.queryMemberTeamInfoList(memberTeamInfoParam);
|
||||
} else {
|
||||
// 安置
|
||||
memberTeamList = memberTeamService.queryMemberTeamInfoPlaceParentList(memberTeamInfoParam);
|
||||
}
|
||||
}
|
||||
for (MemberTeamVo memberTeamVo : memberTeamList) {
|
||||
// 查询安置层级
|
||||
if (memberTeamVo.getPlaceDept() != null) {
|
||||
memberTeamVo.setPlaceDept(memberTeamVo.getPlaceDept());
|
||||
memberTeamVo.setPlaceDeptStr(EPlaceDept.getEPlaceDept(memberTeamVo.getPlaceDept()));
|
||||
}
|
||||
if (memberTeamVo.getPkAwards() != null) {
|
||||
for (BdAwards date : awardsDto.getData()) {
|
||||
if (memberTeamVo.getPkAwards().equals(date.getPkId())) {
|
||||
memberTeamVo.setPkAwardsStr(date.getAwardsName());
|
||||
}
|
||||
}
|
||||
}
|
||||
if (memberTeamVo.getPkPlaceParent() != null) {
|
||||
CuMember member = cuMemberService.getMember(memberTeamVo.getPkPlaceParent());
|
||||
if (member != null) {
|
||||
memberTeamVo.setPlaceParentCode(member.getMemberCode());
|
||||
}
|
||||
}
|
||||
memberTeamVo.setResettleLevel(memberTeamVo.getLevel());
|
||||
//TODO 血缘代数
|
||||
memberTeamVo.setConsanguinityAlgebra("第" + memberTeamVo.getLevel() + "代");
|
||||
//TODO 奖金大盘占比
|
||||
memberTeamVo.setBonusLargeMarketProportion(BigDecimal.ZERO);
|
||||
// 直推人数
|
||||
Long directPushPeopleNumber = memberTreeService.queryCuMemberTreeParentTableCount(settleTableName, memberTeamVo.getMemberId());
|
||||
memberTeamVo.setDirectPushPeopleNumber(directPushPeopleNumber);
|
||||
// 转账次数
|
||||
LambdaQueryWrapper<CuMemberTransfer> qew = new LambdaQueryWrapper<>();
|
||||
qew.eq(CuMemberTransfer::getPkMember, memberTeamVo.getMemberId());
|
||||
int memberTransferCount = memberTransferService.count(qew);
|
||||
memberTeamVo.setMemberTransferCount(memberTransferCount);
|
||||
|
||||
// 提现次数
|
||||
LambdaQueryWrapper<CuMemberWithdraw> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(CuMemberWithdraw::getPkMember, memberTeamVo.getMemberId());
|
||||
int memberWithdrawCount = memberWithdrawService.count(queryWrapper);
|
||||
memberTeamVo.setWithdrawalNumber(memberWithdrawCount);
|
||||
// 最后一次登录时间
|
||||
if (memberTeamVo.getLastLoginTime() != null) {
|
||||
// 计算当前时间和 最后一次登陆时间间隔
|
||||
memberTeamVo.setLastLoginTimeIntervalDays(DateUtil.betweenDay(DateUtils.currentDate(), memberTeamVo.getLastLoginTime(), true));
|
||||
}
|
||||
}
|
||||
return getDataTable(memberTeamList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员团队信息导出
|
||||
*/
|
||||
@PostMapping("/member-team-info-export")
|
||||
public void memberTeamInfoExport(MemberTeamInfoParam memberTeamInfoParam, HttpServletResponse response) {
|
||||
String time;
|
||||
String settleTableName;
|
||||
CuMemberSettlePeriod csPeriod;
|
||||
List<MemberTeamVo> memberTeamList = new ArrayList<>();
|
||||
R<List<BdAwards>> awardsDto = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry());
|
||||
if (memberTeamInfoParam.getQueryDate() == null) {
|
||||
// 昨日
|
||||
time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtil.offsetDay(new Date(), -1));
|
||||
csPeriod = memberSettlePeriodService.getCuMemberSettlePeriodByDate(time);
|
||||
settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId();
|
||||
} else {
|
||||
String queryDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, memberTeamInfoParam.getQueryDate());
|
||||
String currentDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.currentDate());
|
||||
time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, memberTeamInfoParam.getQueryDate());
|
||||
csPeriod = memberSettlePeriodService.getCuMemberSettlePeriodByDate(time);
|
||||
if (queryDate.equals(currentDate)) {
|
||||
settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId();
|
||||
} else {
|
||||
// 历史
|
||||
settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId();
|
||||
}
|
||||
}
|
||||
// 如果表格不存在则返回空数据
|
||||
Integer tableNumber = memberTreeService.queryExistOracleTable(settleTableName);
|
||||
if (tableNumber == null || tableNumber == 0) {
|
||||
ExcelUtil<MemberTeamVo> util = new ExcelUtil<>(MemberTeamVo.class);
|
||||
util.exportExcel(response, memberTeamList, "会员团队信息");
|
||||
}
|
||||
memberTeamInfoParam.setSettleTableName(settleTableName);
|
||||
memberTeamInfoParam.setPeriod(csPeriod.getPkId());
|
||||
startPage();
|
||||
if (StringUtils.isNotBlank(memberTeamInfoParam.getMemberCode())) {
|
||||
if (memberTeamInfoParam.getRelaType() != null && memberTeamInfoParam.getRelaType().equals(ERealType.XY.getIntValue())) {
|
||||
// 血缘
|
||||
memberTeamList = memberTeamService.queryMemberTeamInfoList(memberTeamInfoParam);
|
||||
} else {
|
||||
// 安置
|
||||
memberTeamList = memberTeamService.queryMemberTeamInfoPlaceParentList(memberTeamInfoParam);
|
||||
}
|
||||
}
|
||||
for (MemberTeamVo memberTeamVo : memberTeamList) {
|
||||
// 查询安置层级
|
||||
if (memberTeamVo.getPlaceDept() != null) {
|
||||
memberTeamVo.setPlaceDept(memberTeamVo.getPlaceDept());
|
||||
memberTeamVo.setPlaceDeptStr(EPlaceDept.getEPlaceDept(memberTeamVo.getPlaceDept()));
|
||||
}
|
||||
if (memberTeamVo.getPkAwards() != null) {
|
||||
for (BdAwards date : awardsDto.getData()) {
|
||||
if (memberTeamVo.getPkAwards().equals(date.getPkId())) {
|
||||
memberTeamVo.setPkAwardsStr(date.getAwardsName());
|
||||
}
|
||||
}
|
||||
}
|
||||
if (memberTeamVo.getPkPlaceParent() != null) {
|
||||
CuMember member = cuMemberService.getMember(memberTeamVo.getPkPlaceParent());
|
||||
if (member != null) {
|
||||
memberTeamVo.setPlaceParentCode(member.getMemberCode());
|
||||
}
|
||||
}
|
||||
memberTeamVo.setResettleLevel(memberTeamVo.getLevel());
|
||||
//血缘代数
|
||||
memberTeamVo.setConsanguinityAlgebra("第" + memberTeamVo.getLevel() + "代");
|
||||
//奖金大盘占比
|
||||
memberTeamVo.setBonusLargeMarketProportion(BigDecimal.ZERO);
|
||||
// 直推人数
|
||||
Long directPushPeopleNumber = memberTreeService.queryCuMemberTreeParentTableCount(settleTableName, memberTeamVo.getMemberId());
|
||||
memberTeamVo.setDirectPushPeopleNumber(directPushPeopleNumber);
|
||||
// 转账次数
|
||||
LambdaQueryWrapper<CuMemberTransfer> qew = new LambdaQueryWrapper<>();
|
||||
qew.eq(CuMemberTransfer::getPkMember, memberTeamVo.getMemberId());
|
||||
int memberTransferCount = memberTransferService.count(qew);
|
||||
memberTeamVo.setMemberTransferCount(memberTransferCount);
|
||||
|
||||
// 提现次数
|
||||
LambdaQueryWrapper<CuMemberWithdraw> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(CuMemberWithdraw::getPkMember, memberTeamVo.getMemberId());
|
||||
int memberWithdrawCount = memberWithdrawService.count(queryWrapper);
|
||||
memberTeamVo.setWithdrawalNumber(memberWithdrawCount);
|
||||
// 最后一次登录时间
|
||||
if (memberTeamVo.getLastLoginTime() != null) {
|
||||
// 计算当前时间和 最后一次登陆时间间隔
|
||||
memberTeamVo.setLastLoginTimeIntervalDays(DateUtil.betweenDay(DateUtils.currentDate(), memberTeamVo.getLastLoginTime(), true));
|
||||
}
|
||||
}
|
||||
ExcelUtil<MemberTeamVo> util = new ExcelUtil<>(MemberTeamVo.class, iMenuColumnServiceApi.queryMenuColumn("TeamInfo", SecurityUtils.getUserId()).getData());
|
||||
util.exportExcel(response, memberTeamList, "会员团队信息");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 导出真实信息
|
||||
*
|
||||
* @author: zhang jing
|
||||
* @date: 2023/7/15 17:02
|
||||
* @param: [response, memberRealInfoParam]
|
||||
* @return: void
|
||||
**/
|
||||
@Log(module = EOperationModule.MEMBER_INFORMATION, business = EOperationBusiness.MEMBER_INFORMATION, method = EOperationMethod.EXPORT)
|
||||
@PostMapping("/real-info-export")
|
||||
|
|
@ -586,50 +316,51 @@ public class CuMemberController extends BaseController {
|
|||
UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData();
|
||||
memberRealInfoParam.setVertexList(userAuthorityDTO.getUserVertexList());
|
||||
memberRealInfoParam.setTeamList(userAuthorityDTO.getUserTeamList());
|
||||
List<MemberRealInfoVO> resultList = cuMemberService.selectByMemberRealInfo(memberRealInfoParam);
|
||||
|
||||
List<MemberRealInfoVO> resultList = iCuMemberService.selectByMemberRealInfo(memberRealInfoParam);
|
||||
if (CollectionUtil.isNotEmpty(resultList)) {
|
||||
// 获取需要翻译的枚举翻译
|
||||
Map<String, String> transactionMap = iTransactionCommonService.exportEnumTransaction(ECardType.values(),
|
||||
ESex.values()
|
||||
);
|
||||
//数据库内容翻译
|
||||
Map<Integer, String> transactionMap1 = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE,
|
||||
EnumsPrefixConstants.KEY_AWARD);
|
||||
// 奖衔
|
||||
R<List<BdAwards>> awardsListDate = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry());
|
||||
List<BdAwards> awardsList = awardsListDate.getData();
|
||||
// 等级
|
||||
R<List<GradeDTO>> gradeListDate = iGradeServiceApi.queryGradeList(SecurityUtils.getPkCountry());
|
||||
List<GradeDTO> gradeList = gradeListDate.getData();
|
||||
|
||||
Map<Integer, String> areaDate = iAreaServiceApi.getAreaMap(SecurityUtils.getPkCountry()).getData();
|
||||
for (MemberRealInfoVO cuMemberExt : resultList) {
|
||||
cuMemberExt.setRegisterGradeVal(transactionMap1.get(cuMemberExt.getPkRegisterGrade()));
|
||||
cuMemberExt.setSettleGradeVal(transactionMap1.get(cuMemberExt.getPkSettleGrade()));
|
||||
cuMemberExt.setAwardsVal(transactionMap1.get(cuMemberExt.getPkAwards()));
|
||||
cuMemberExt.setPkMaxAwardsVal(transactionMap1.get(cuMemberExt.getPkMaxAwards()));
|
||||
if (cuMemberExt.getPkProvince() != null) {
|
||||
// 省
|
||||
cuMemberExt.setProvinceName(areaDate.get(cuMemberExt.getPkProvince()));
|
||||
// 注册等级
|
||||
if (cuMemberExt.getPkRegisterGrade() != null) {
|
||||
for (GradeDTO grade : gradeList) {
|
||||
if (grade.getPkId().equals(cuMemberExt.getPkRegisterGrade())) {
|
||||
cuMemberExt.setRegisterGradeVal(grade.getGradeName());
|
||||
}
|
||||
}
|
||||
}
|
||||
if (cuMemberExt.getPkCity() != null) {
|
||||
// 市
|
||||
cuMemberExt.setCityName(areaDate.get(cuMemberExt.getPkCity()));
|
||||
// 结算等级
|
||||
if (cuMemberExt.getPkSettleGrade() != null) {
|
||||
for (GradeDTO grade : gradeList) {
|
||||
if (grade.getPkId().equals(cuMemberExt.getPkSettleGrade())) {
|
||||
cuMemberExt.setSettleGradeVal(grade.getGradeName());
|
||||
}
|
||||
}
|
||||
}
|
||||
if (cuMemberExt.getPkCounty() != null) {
|
||||
// 区县
|
||||
cuMemberExt.setCountyName(areaDate.get(cuMemberExt.getPkCounty()));
|
||||
// 真实奖衔
|
||||
if (cuMemberExt.getPkAwards() != null) {
|
||||
for (BdAwards awards : awardsList) {
|
||||
if (awards.getPkId().equals(cuMemberExt.getPkAwards())) {
|
||||
cuMemberExt.setAwardsVal(awards.getAwardsName());
|
||||
}
|
||||
}
|
||||
}
|
||||
// 证件类型
|
||||
if (cuMemberExt.getCardType() != null) {
|
||||
cuMemberExt.setCardTypeVal(transactionMap.get(EnumsPrefixConstants.CARD_TYPE + cuMemberExt.getCardType()));
|
||||
}
|
||||
// 性别
|
||||
if (cuMemberExt.getSex() != null) {
|
||||
cuMemberExt.setSexVal(transactionMap.get(EnumsPrefixConstants.SEX + cuMemberExt.getSex()));
|
||||
}
|
||||
// 生日
|
||||
if (StringUtils.isNotBlank(cuMemberExt.getIdCard()) && (checkIdCard(cuMemberExt.getIdCard()))) {
|
||||
cuMemberExt.setBirthDate(IdcardUtil.getBirthDate(cuMemberExt.getIdCard()));
|
||||
}
|
||||
if (cuMemberExt.getIdType() != null) {
|
||||
cuMemberExt.setCardTypeVal(EIdType.getLabel(cuMemberExt.getIdType()));
|
||||
// 真实奖衔
|
||||
if (cuMemberExt.getPkMaxAwards() != null) {
|
||||
for (BdAwards awards : awardsList) {
|
||||
if (awards.getPkId().equals(cuMemberExt.getPkMaxAwards())) {
|
||||
cuMemberExt.setAwardsVal(awards.getAwardsName());
|
||||
}
|
||||
}
|
||||
}
|
||||
cuMemberExt.setCardTypeVal(EIdType.getLabelByValue(cuMemberExt.getIdType()));
|
||||
cuMemberExt.setSexVal(ESex.getLabelByValue(cuMemberExt.getSex()));
|
||||
}
|
||||
}
|
||||
ExcelUtil<MemberRealInfoVO> util = new ExcelUtil<>(MemberRealInfoVO.class, iMenuColumnServiceApi.queryMenuColumn("RealInfo", SecurityUtils.getUserId()).getData());
|
||||
|
|
@ -651,21 +382,6 @@ public class CuMemberController extends BaseController {
|
|||
util.exportExcel(response, list, "会员编号");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 校验身份证格式
|
||||
*
|
||||
* @author: zhang jing
|
||||
* @date: 2023/10/17 14:10
|
||||
* @param: [idCard]
|
||||
* @return: boolean
|
||||
**/
|
||||
public boolean checkIdCard(String idCard) {
|
||||
// 正则表达式校验身份证号码格式
|
||||
String reg = "\\d{17}[\\d|x|X]";
|
||||
return Pattern.matches(reg, idCard);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询顶点会员
|
||||
*
|
||||
|
|
@ -674,7 +390,7 @@ public class CuMemberController extends BaseController {
|
|||
@GetMapping("/query-top-member")
|
||||
public AjaxResult queryTopMember() {
|
||||
List<TopMemberVO> resultList = new ArrayList<>();
|
||||
List<CuMemberExt> list = cuMemberService.queryPlaceMemberList(VertexConstants.GJ30720200CODE, SecurityUtils.getPkCountry());
|
||||
List<CuMemberExt> list = iCuMemberService.queryPlaceMemberList(VertexConstants.GJ30720200CODE, SecurityUtils.getPkCountry());
|
||||
if (CollectionUtil.isNotEmpty(list)) {
|
||||
resultList = BeanUtil.copyToList(list, TopMemberVO.class);
|
||||
}
|
||||
|
|
@ -702,7 +418,7 @@ public class CuMemberController extends BaseController {
|
|||
BigDecimal chinaInExchangeRate = chinaCurrency.getData().getInExchangeRate();
|
||||
startPage();
|
||||
memberConsumptionStatParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
List<MemberConsumptionStatVo> memberConsumptionStatVoList = cuMemberService.getMemberConsumptionStat(memberConsumptionStatParam);
|
||||
List<MemberConsumptionStatVo> memberConsumptionStatVoList = iCuMemberService.getMemberConsumptionStat(memberConsumptionStatParam);
|
||||
for (MemberConsumptionStatVo memberConsumptionStatVo : memberConsumptionStatVoList) {
|
||||
memberConsumptionStatVo.setOrderAchieve(memberConsumptionStatVo.getOrderAchieve().multiply(chinaInExchangeRate).setScale(2, BigDecimal.ROUND_HALF_UP));
|
||||
}
|
||||
|
|
@ -730,7 +446,7 @@ public class CuMemberController extends BaseController {
|
|||
R<CurrencyDTO> chinaCurrency = iCurrencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY);
|
||||
BigDecimal chinaInExchangeRate = chinaCurrency.getData().getInExchangeRate();
|
||||
memberConsumptionStatParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
List<MemberConsumptionStatVo> memberConsumptionStatVoList = cuMemberService.getMemberConsumptionStat(memberConsumptionStatParam);
|
||||
List<MemberConsumptionStatVo> memberConsumptionStatVoList = iCuMemberService.getMemberConsumptionStat(memberConsumptionStatParam);
|
||||
for (MemberConsumptionStatVo memberConsumptionStatVo : memberConsumptionStatVoList) {
|
||||
memberConsumptionStatVo.setOrderAchieve(memberConsumptionStatVo.getOrderAchieve().multiply(chinaInExchangeRate).setScale(2, BigDecimal.ROUND_HALF_UP));
|
||||
}
|
||||
|
|
@ -745,7 +461,7 @@ public class CuMemberController extends BaseController {
|
|||
@GetMapping("/member_awards_query")
|
||||
public TableDataInfo memberAwardsQuery(MemberAwardsQueryParam param) {
|
||||
startPage();
|
||||
List<MemberAwardsQueryVO> memberAwardsList = cuMemberService.listMemberAwards(param, SecurityUtils.getPkCountry());
|
||||
List<MemberAwardsQueryVO> memberAwardsList = iCuMemberService.listMemberAwards(param, SecurityUtils.getPkCountry());
|
||||
if (CollectionUtil.isNotEmpty(memberAwardsList)) {
|
||||
// 中国汇率
|
||||
CurrencyDTO currency = iCurrencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY).getData();
|
||||
|
|
@ -769,7 +485,7 @@ public class CuMemberController extends BaseController {
|
|||
*/
|
||||
@PostMapping("/member_awards_query_export")
|
||||
public void memberAwardsQueryExport(MemberAwardsQueryParam param, HttpServletResponse response) {
|
||||
List<MemberAwardsQueryVO> memberAwardsList = cuMemberService.listMemberAwards(param, SecurityUtils.getPkCountry());
|
||||
List<MemberAwardsQueryVO> memberAwardsList = iCuMemberService.listMemberAwards(param, SecurityUtils.getPkCountry());
|
||||
if (CollectionUtil.isNotEmpty(memberAwardsList)) {
|
||||
// 中国汇率
|
||||
CurrencyDTO currency = iCurrencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY).getData();
|
||||
|
|
@ -850,7 +566,7 @@ public class CuMemberController extends BaseController {
|
|||
memberParam.setTeamList(userAuthorityDTO.getUserTeamList());
|
||||
|
||||
startPage();
|
||||
List<RetailMemberVO> cuMemberVOList = cuMemberService.retailMemberList(memberParam);
|
||||
List<RetailMemberVO> cuMemberVOList = iCuMemberService.retailMemberList(memberParam);
|
||||
|
||||
if (CollectionUtil.isNotEmpty(cuMemberVOList)) {
|
||||
// 获取需要翻译的枚举翻译
|
||||
|
|
@ -965,7 +681,7 @@ public class CuMemberController extends BaseController {
|
|||
memberParam.setVertexList(userAuthorityDTO.getUserVertexList());
|
||||
memberParam.setTeamList(userAuthorityDTO.getUserTeamList());
|
||||
|
||||
List<RetailMemberVO> cuMemberVOList = cuMemberService.retailMemberList(memberParam);
|
||||
List<RetailMemberVO> cuMemberVOList = iCuMemberService.retailMemberList(memberParam);
|
||||
|
||||
if (CollectionUtil.isNotEmpty(cuMemberVOList)) {
|
||||
// 获取需要翻译的枚举翻译
|
||||
|
|
@ -1030,7 +746,7 @@ public class CuMemberController extends BaseController {
|
|||
if (StringUtils.isEmpty(param.getMemberCode())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_NOT_EXITS));
|
||||
}
|
||||
CuMember cuMember = cuMemberService.getMember(param.getMemberCode());
|
||||
CuMember cuMember = iCuMemberService.getMember(param.getMemberCode());
|
||||
if (cuMember == null) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_NOT_EXITS));
|
||||
}
|
||||
|
|
@ -1055,7 +771,7 @@ public class CuMemberController extends BaseController {
|
|||
*/
|
||||
@GetMapping("/copy-pwd")
|
||||
public AjaxResult copyPwd(@RequestParam Long pkId) {
|
||||
CuMember cuMember = cuMemberService.getOne(Wrappers.<CuMember>lambdaQuery()
|
||||
CuMember cuMember = iCuMemberService.getOne(Wrappers.<CuMember>lambdaQuery()
|
||||
.eq(CuMember::getPkId, pkId)
|
||||
);
|
||||
String tmpPwd = DateUtils.parseDateToFormat(DateUtils.MM_DD, new Date()) + cuMember.getLoginPassword();
|
||||
|
|
|
|||
|
|
@ -3,9 +3,6 @@ package com.hzs.member.base.mapper;
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.hzs.common.domain.member.base.CuMemberTeam;
|
||||
import com.hzs.common.domain.member.ext.CuMemberTeamExt;
|
||||
import com.hzs.common.domain.vertex.BdVertex;
|
||||
import com.hzs.member.base.param.MemberTeamInfoParam;
|
||||
import com.hzs.member.base.vo.MemberTeamVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
|
@ -17,22 +14,6 @@ public interface CuMemberTeamMapper extends BaseMapper<CuMemberTeam> {
|
|||
|
||||
List<CuMemberTeamExt> queryCuMemberTeam(CuMemberTeamExt cuMemberTeamExt);
|
||||
|
||||
/**
|
||||
* 查询会员团队信息
|
||||
*
|
||||
* @param memberTeamInfoParam
|
||||
* @return
|
||||
*/
|
||||
List<MemberTeamVo> queryMemberTeamInfoList(MemberTeamInfoParam memberTeamInfoParam);
|
||||
|
||||
/**
|
||||
* 查询会员安置团队信息
|
||||
*
|
||||
* @param memberTeamInfoParam
|
||||
* @return
|
||||
*/
|
||||
List<MemberTeamVo> queryMemberTeamInfoPlaceParentList(MemberTeamInfoParam memberTeamInfoParam);
|
||||
|
||||
/**
|
||||
* 更新团队为空
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,26 +1,9 @@
|
|||
package com.hzs.member.base.param;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/4/26 10:08
|
||||
* @Classname: MemberRealInfo
|
||||
* @PackageName: com.hzs.member.base.param
|
||||
*/
|
||||
package com.hzs.member.base.param;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.member.base.param
|
||||
*@Author: yh
|
||||
*@CreateTime: 2023-04-26 10:08
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class MemberRealInfoParam {
|
||||
|
||||
|
|
@ -69,47 +52,10 @@ public class MemberRealInfoParam {
|
|||
*/
|
||||
private String birthDate;
|
||||
|
||||
/**
|
||||
* 省id
|
||||
*/
|
||||
private Integer pkProvince;
|
||||
/**
|
||||
* 市id
|
||||
*/
|
||||
private Integer pkCity;
|
||||
/**
|
||||
* 区县id
|
||||
*/
|
||||
private Integer pkCounty;
|
||||
/**
|
||||
* 详细地址
|
||||
*/
|
||||
private String address;
|
||||
|
||||
/**
|
||||
* 性别(0=未知,1=男,2=女)
|
||||
*/
|
||||
|
||||
private Integer sex;
|
||||
/**
|
||||
* 银行名称
|
||||
*/
|
||||
private String bankName;
|
||||
|
||||
/**
|
||||
* 支行名称
|
||||
*/
|
||||
private String subBankName;
|
||||
|
||||
/**
|
||||
* 银行卡号
|
||||
*/
|
||||
private String cardNumber;
|
||||
|
||||
/**
|
||||
* 邮箱
|
||||
*/
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 开始认证时间
|
||||
|
|
|
|||
|
|
@ -1,81 +0,0 @@
|
|||
package com.hzs.member.base.param;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/5/29 14:53
|
||||
* @Classname: MemberTeamInfoParam
|
||||
* @PackageName: com.hzs.member.base.param
|
||||
*/
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.member.base.param
|
||||
*@Author: yh
|
||||
*@CreateTime: 2023-05-29 14:53
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class MemberTeamInfoParam {
|
||||
|
||||
/**
|
||||
* 查询date 时间
|
||||
*/
|
||||
private Date queryDate;
|
||||
|
||||
/**
|
||||
* 查询业绩表名
|
||||
*/
|
||||
private String settleTableName;
|
||||
|
||||
/**
|
||||
* 期间值
|
||||
*/
|
||||
private Integer period;
|
||||
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
private String memberCode ;
|
||||
|
||||
/**
|
||||
* 真实奖衔
|
||||
*/
|
||||
private Integer pkAwards;
|
||||
|
||||
/**
|
||||
* 关系类型 1 血缘 2 安置
|
||||
*/
|
||||
private Integer relaType;
|
||||
|
||||
/**
|
||||
* 安置部门
|
||||
*/
|
||||
private Integer placeDept;
|
||||
|
||||
/**
|
||||
* 血缘代数
|
||||
*/
|
||||
private Integer consanguinityAlgebra;
|
||||
|
||||
|
||||
/**
|
||||
* 安置层级
|
||||
* 查询当前会员在团队的第几层 (查询伞下的所有人)
|
||||
*/
|
||||
private Integer resettleLevel;
|
||||
|
||||
/**
|
||||
* 安置位置
|
||||
*/
|
||||
private String resettleLocation;
|
||||
|
||||
/**
|
||||
* 奖金收益
|
||||
*/
|
||||
private BigDecimal realIncomeTotal;
|
||||
}
|
||||
|
|
@ -3,8 +3,6 @@ package com.hzs.member.base.service;
|
|||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.hzs.common.domain.member.base.CuMemberTeam;
|
||||
import com.hzs.common.domain.member.ext.CuMemberTeamExt;
|
||||
import com.hzs.member.base.param.MemberTeamInfoParam;
|
||||
import com.hzs.member.base.vo.MemberTeamVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -41,22 +39,6 @@ public interface ICuMemberTeamService extends IService<CuMemberTeam> {
|
|||
**/
|
||||
void updateCuMemberTeamByVertex(Long pkTeamCode);
|
||||
|
||||
/**
|
||||
* 查询会员团队信息
|
||||
*
|
||||
* @param memberTeamInfoParam
|
||||
* @return
|
||||
*/
|
||||
List<MemberTeamVo> queryMemberTeamInfoList(MemberTeamInfoParam memberTeamInfoParam);
|
||||
|
||||
/**
|
||||
* 查询会员安置信息团队
|
||||
*
|
||||
* @param memberTeamInfoParam
|
||||
* @return
|
||||
*/
|
||||
List<MemberTeamVo> queryMemberTeamInfoPlaceParentList(MemberTeamInfoParam memberTeamInfoParam);
|
||||
|
||||
/**
|
||||
* 查询刷新团队数据
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2453,13 +2453,14 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
|||
|
||||
@Override
|
||||
public boolean updateMemberNameAndPhone(Long pkMember, String memberName, String phone, Long pkModified) {
|
||||
LambdaUpdateWrapper<CuMember> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(CuMember::getMemberName, memberName);
|
||||
updateWrapper.set(CuMember::getPhone, phone);
|
||||
updateWrapper.set(CuMember::getPkModified, pkModified);
|
||||
updateWrapper.set(CuMember::getModifiedTime, new Date());
|
||||
updateWrapper.eq(CuMember::getPkId, pkMember);
|
||||
return update(updateWrapper);
|
||||
CuMember cuMember = new CuMember();
|
||||
cuMember.setPkId(pkMember);
|
||||
cuMember.setMemberName(memberName);
|
||||
cuMember.setPhone(phone);
|
||||
cuMember.setBirthDate(null);
|
||||
cuMember.setPkModified(pkModified);
|
||||
cuMember.setModifiedTime(new Date());
|
||||
return updateById(cuMember);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -6,9 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|||
import com.hzs.common.domain.member.base.CuMemberTeam;
|
||||
import com.hzs.common.domain.member.ext.CuMemberTeamExt;
|
||||
import com.hzs.member.base.mapper.CuMemberTeamMapper;
|
||||
import com.hzs.member.base.param.MemberTeamInfoParam;
|
||||
import com.hzs.member.base.service.ICuMemberTeamService;
|
||||
import com.hzs.member.base.vo.MemberTeamVo;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
|
|
@ -61,16 +59,6 @@ public class CuMemberTeamServiceImpl extends ServiceImpl<CuMemberTeamMapper, CuM
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MemberTeamVo> queryMemberTeamInfoList(MemberTeamInfoParam memberTeamInfoParam) {
|
||||
return baseMapper.queryMemberTeamInfoList(memberTeamInfoParam);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MemberTeamVo> queryMemberTeamInfoPlaceParentList(MemberTeamInfoParam memberTeamInfoParam) {
|
||||
return baseMapper.queryMemberTeamInfoPlaceParentList(memberTeamInfoParam);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void flushAllTeam(Integer pkCountry) {
|
||||
List<CuMemberTeam> list = this.list(Wrappers.<CuMemberTeam>lambdaQuery()
|
||||
|
|
|
|||
|
|
@ -1,32 +0,0 @@
|
|||
package com.hzs.member.base.vo;
|
||||
|
||||
import com.hzs.common.core.annotation.Transaction;
|
||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
*
|
||||
* 账户状态翻译
|
||||
* @Description:
|
||||
* @Author: zhangjing
|
||||
* @Time: 2023/2/4 14:56
|
||||
* @Classname: AccountPointOutVO
|
||||
* @Package_name: com.hzs.member.base.vo
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class AccountPointOutVO implements Serializable {
|
||||
/**
|
||||
* 账户状态
|
||||
*/
|
||||
@Transaction(transactionKey = EnumsPrefixConstants.ACCOUNT_STATUS)
|
||||
private Integer accountState;
|
||||
|
||||
private String accountStateVal;
|
||||
|
||||
}
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
package com.hzs.member.base.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @Description: 服务有效期返回VO
|
||||
* @Author: jiang chao
|
||||
* @Time: 2024/1/15 14:08
|
||||
* @Classname: AgreementExpireVO
|
||||
* @PackageName: com.hzs.member.base.vo
|
||||
*/
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Builder
|
||||
@Data
|
||||
public class AgreementExpireVO {
|
||||
|
||||
/**
|
||||
* 提示标记(0=弹窗提示,1=不弹窗提示)
|
||||
*/
|
||||
private Integer promptFlag;
|
||||
|
||||
/**
|
||||
* 提示信息
|
||||
*/
|
||||
private String promptMsg;
|
||||
|
||||
/**
|
||||
* 跳转页面(1=实名认证,2=续约专区)
|
||||
*/
|
||||
private Integer jumpPage;
|
||||
|
||||
}
|
||||
|
|
@ -1,63 +0,0 @@
|
|||
package com.hzs.member.base.vo;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/6/8 11:47
|
||||
* @Classname: CuHonorWallVo
|
||||
* @PackageName: com.hzs.member.base.vo
|
||||
*/
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.member.base.vo
|
||||
*@Author: yh
|
||||
*@CreateTime: 2023-06-08 11:47
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class CuHonorWallVo {
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
|
||||
private Long pkId;
|
||||
|
||||
/**
|
||||
* 类型 1 等级 2 奖衔 3 时长 4 推荐月 5 推荐季度 6 推荐年 7 抗衰月 8 抗衰季度 9 抗衰年
|
||||
*/
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 类型 1 等级 2 奖衔 3 时长 4 推荐月 5 推荐季度 6 推荐年 7 抗衰月 8 抗衰季度 9 抗衰年
|
||||
*/
|
||||
private String typeStr;
|
||||
|
||||
private String name;
|
||||
/**
|
||||
* 类型属性值
|
||||
*/
|
||||
private Integer value;
|
||||
|
||||
/**
|
||||
* 类型属性值
|
||||
*/
|
||||
private String valueStr;
|
||||
|
||||
/**
|
||||
* 展示图片
|
||||
*/
|
||||
|
||||
private String img;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date creationTime;
|
||||
|
||||
private String title;
|
||||
}
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
package com.hzs.member.base.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.hzs.common.core.annotation.Excel;
|
||||
import com.hzs.common.core.annotation.Transaction;
|
||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
||||
import com.hzs.common.core.web.domain.BaseApprovalEntity;
|
||||
import com.hzs.member.account.dto.MemberAmountDTO;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 注水业绩记录表VO
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-08-22
|
||||
*/
|
||||
@Data
|
||||
public class CuMemberAchieveLogParentVO extends BaseApprovalEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
/**
|
||||
* 注水方式 EInfusingWaterType 1 增加 2减少 3 最终
|
||||
*/
|
||||
private Integer infusingWaterType;
|
||||
private BigDecimal aSumrealModifyPv;
|
||||
private BigDecimal bSumrealModifyPv;
|
||||
/**
|
||||
* 注水备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
/**
|
||||
* 业务单号
|
||||
*/
|
||||
private String businessNo;
|
||||
/**
|
||||
* 审批业务类型 来源于枚举 EApprovalBusiness
|
||||
*/
|
||||
private Integer editType;
|
||||
|
||||
/**
|
||||
* 审核状态 2 待审核 4 已驳回 5 已完成(审核成功) 枚举 : EApproveStatus
|
||||
*/
|
||||
private Integer approveStatus;
|
||||
|
||||
|
||||
/**
|
||||
* 流程类型(1 免签呈 2免付费 3免签呈+免付费 4 需要签呈需要付费)
|
||||
*/
|
||||
private Integer processType;
|
||||
/**
|
||||
* 扣款币种类型
|
||||
*/
|
||||
private Integer pkAccount;
|
||||
/**
|
||||
* 扣款币种类型
|
||||
*/
|
||||
@Transaction(transactionKey = EnumsPrefixConstants.KEY_ACC)
|
||||
private Integer pkAccountKey;
|
||||
/**
|
||||
* 扣款币种类型
|
||||
*/
|
||||
private String pkAccountKeyVal;
|
||||
/**
|
||||
* 会员手续费
|
||||
*/
|
||||
List<MemberAmountDTO> memberAmountDTOList;
|
||||
/**
|
||||
* 错误信息
|
||||
*/
|
||||
private String errorMasg;
|
||||
/**
|
||||
* 情况说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 业务涨及会员ID列表 --提交审核必传
|
||||
*/
|
||||
private Set<Long> pkMemberList;
|
||||
/**
|
||||
* 期间
|
||||
*/
|
||||
private Integer period;
|
||||
/**
|
||||
* 注水业绩记录
|
||||
*/
|
||||
private List<CuMemberAchieveLogVO> cmalvList;
|
||||
/**
|
||||
* 国家
|
||||
*/
|
||||
private Integer pkCountry;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,77 +0,0 @@
|
|||
package com.hzs.member.base.vo;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/8/25 15:48
|
||||
* @Classname: DirectPushNewVo
|
||||
* @PackageName: com.hzs.member.base.vo
|
||||
*/
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.member.base.vo
|
||||
*@Author: yh
|
||||
*@CreateTime: 2023-08-25 15:48
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class DirectPushNewVo {
|
||||
|
||||
|
||||
/**
|
||||
* 国旗
|
||||
*/
|
||||
private String nationalFlag1;
|
||||
|
||||
/**
|
||||
* 国家名称
|
||||
*/
|
||||
private String shortName;
|
||||
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
private String memberCode;
|
||||
|
||||
/**
|
||||
* 会员名称
|
||||
*/
|
||||
private String memberName;
|
||||
|
||||
/**
|
||||
* 联系方式
|
||||
*/
|
||||
private String phone;
|
||||
/**
|
||||
* 真实奖衔
|
||||
*/
|
||||
private String awardsVal;
|
||||
/**
|
||||
* 隶属体系
|
||||
*/
|
||||
private String vertexVal;
|
||||
/**
|
||||
* 隶属团队
|
||||
*/
|
||||
private String teamCode;
|
||||
/**
|
||||
* 新增金额
|
||||
*/
|
||||
private String consumeMoney;
|
||||
|
||||
/**
|
||||
* 新增业绩
|
||||
*/
|
||||
private String consumeAchieve;
|
||||
|
||||
/**
|
||||
* 支付时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date payTime;
|
||||
}
|
||||
|
|
@ -1,65 +0,0 @@
|
|||
package com.hzs.member.base.vo;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/3/29 9:04
|
||||
* @Classname: MemberChargingVo
|
||||
* @PackageName: com.hzs.member.base.vo
|
||||
*/
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.member.base.vo
|
||||
*@Author: yh
|
||||
*@CreateTime: 2023-03-29 09:04
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class MemberChargingVo {
|
||||
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
private String memberCode;
|
||||
|
||||
/**
|
||||
* 会员姓名
|
||||
*/
|
||||
private String memberName;
|
||||
|
||||
/**
|
||||
* 变更前推荐编号
|
||||
*/
|
||||
private String editOldParentMemberCode;
|
||||
/**
|
||||
* 变更前推荐姓名
|
||||
*/
|
||||
private String editOldParentMemberName;
|
||||
|
||||
/**
|
||||
* 变更后推荐编号
|
||||
*/
|
||||
private String editNewParentMemberCode;
|
||||
/**
|
||||
* 变更后推荐姓名
|
||||
*/
|
||||
private String editNewParentMemberName;
|
||||
|
||||
|
||||
/**
|
||||
* 扣款币种
|
||||
*/
|
||||
private Integer pkAccount;
|
||||
/**
|
||||
* 币种名称
|
||||
*/
|
||||
private String accountName;
|
||||
/**
|
||||
* 扣费金额
|
||||
*/
|
||||
private BigDecimal accountAmount;
|
||||
}
|
||||
|
|
@ -1,83 +0,0 @@
|
|||
package com.hzs.member.base.vo;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2024/1/17 14:10
|
||||
* @Classname: MemberDirectPushVO
|
||||
* @PackageName: com.hzs.member.base.vo
|
||||
*/
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.hzs.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.member.base.vo
|
||||
*@Author: yh
|
||||
*@CreateTime: 2024-01-17 14:10
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class MemberDirectPushVO {
|
||||
/**
|
||||
* 统计时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@Excel(name = "统计时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date payTime;
|
||||
/**
|
||||
* 排名
|
||||
*/
|
||||
@Excel(name = "排名")
|
||||
private Integer ranking;
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
@Excel(name = "会员编号")
|
||||
private String memberCode;
|
||||
|
||||
/**
|
||||
* 会员名称
|
||||
*/
|
||||
@Excel(name = "会员名称")
|
||||
private String memberName;
|
||||
|
||||
/**
|
||||
* 等级名称
|
||||
*/
|
||||
@Excel(name = "结算等级")
|
||||
private String gradeName;
|
||||
/**
|
||||
* 奖衔名称
|
||||
*/
|
||||
@Excel(name = "真实奖衔")
|
||||
private String awardsName;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 会员头像
|
||||
*/
|
||||
|
||||
private String headPath;
|
||||
/**
|
||||
* 订单达标业绩
|
||||
*/
|
||||
@Excel(name = "直推业绩")
|
||||
private BigDecimal orderAchieve;
|
||||
/**
|
||||
* 脱敏业绩
|
||||
*/
|
||||
private String orderAchieveStr;
|
||||
|
||||
/**
|
||||
* 是否登录会员 对应 EyesNo 枚举
|
||||
*/
|
||||
private Integer isLoginMember;
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -62,13 +62,11 @@ public class MemberRealInfoVO {
|
|||
/**
|
||||
* 证件类型 ECardType
|
||||
*/
|
||||
@Transaction(transactionKey = EnumsPrefixConstants.CARD_TYPE)
|
||||
private Integer cardType;
|
||||
|
||||
/**
|
||||
* 性别(0=未知,1=男,2=女)Esex
|
||||
*/
|
||||
@Transaction(transactionKey = EnumsPrefixConstants.SEX)
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
|
|
@ -325,53 +323,11 @@ public class MemberRealInfoVO {
|
|||
*/
|
||||
private String idBack;
|
||||
|
||||
/**
|
||||
* 省id
|
||||
*/
|
||||
private Integer pkProvince;
|
||||
/**
|
||||
* 省名称
|
||||
*/
|
||||
@Excel(name = "省", sort = 11)
|
||||
private String provinceName;
|
||||
/**
|
||||
* 市id
|
||||
*/
|
||||
private Integer pkCity;
|
||||
/**
|
||||
* 市名称
|
||||
*/
|
||||
@Excel(name = "市", sort = 12)
|
||||
private String cityName;
|
||||
/**
|
||||
* 区县id
|
||||
*/
|
||||
private Integer pkCounty;
|
||||
/**
|
||||
* 区县名
|
||||
*/
|
||||
@Excel(name = "区/县", sort = 13)
|
||||
private String countyName;
|
||||
/**
|
||||
* 详细地址
|
||||
*/
|
||||
@Excel(name = "详细地址", sort = 14)
|
||||
private String address;
|
||||
/**
|
||||
* 银行名称
|
||||
*/
|
||||
@Excel(name = "银行名称", sort = 15)
|
||||
private String bankName;
|
||||
/**
|
||||
* 支行名称
|
||||
*/
|
||||
@Excel(name = "支行名称", sort = 16)
|
||||
private String subBankName;
|
||||
/**
|
||||
* 真实姓名(开户姓名)
|
||||
*/
|
||||
@Excel(name = "开户姓名", sort = 17)
|
||||
private String accountName;
|
||||
/**
|
||||
* 证件类型 字符
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,285 +0,0 @@
|
|||
package com.hzs.member.base.vo;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/5/29 16:02
|
||||
* @Classname: MemberTeamVo
|
||||
* @PackageName: com.hzs.member.base.vo
|
||||
*/
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.hzs.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.member.base.vo
|
||||
*@Author: yh
|
||||
*@CreateTime: 2023-05-29 16:02
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class MemberTeamVo {
|
||||
|
||||
/**
|
||||
* 会员主键
|
||||
*/
|
||||
private Long memberId;
|
||||
/**
|
||||
* 安置人主键
|
||||
*/
|
||||
private Long pkPlaceParent;
|
||||
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
@Excel(name = "会员编号")
|
||||
private String memberCode;
|
||||
|
||||
/**
|
||||
* 会员名称
|
||||
*/
|
||||
@Excel(name = "会员姓名")
|
||||
private String memberName;
|
||||
|
||||
|
||||
/**
|
||||
* 真实奖衔
|
||||
*/
|
||||
private Integer pkAwards;
|
||||
/**
|
||||
* 真实奖衔 str
|
||||
*/
|
||||
@Excel(name = "真实奖衔")
|
||||
private String pkAwardsStr;
|
||||
|
||||
|
||||
/**
|
||||
* 安置层数
|
||||
* 查询当前会员在团队的第几层 (查询伞下的所有人)
|
||||
*/
|
||||
@Excel(name = "安置层数")
|
||||
private Integer resettleLevel;
|
||||
|
||||
/**
|
||||
* 安置部门 str
|
||||
*/
|
||||
@Excel(name = "安置位置")
|
||||
private String placeDeptStr;
|
||||
/**
|
||||
* 安置位置
|
||||
*/
|
||||
private String resettleLocation;
|
||||
|
||||
/**
|
||||
* 安置人编号
|
||||
*/
|
||||
@Excel(name = "安置编号")
|
||||
private String placeParentCode;
|
||||
|
||||
/**
|
||||
* 血缘代数
|
||||
*/
|
||||
@Excel(name = "血缘代数")
|
||||
private String consanguinityAlgebra;
|
||||
|
||||
|
||||
/**
|
||||
* 左区首购业绩
|
||||
*/
|
||||
@Excel(name = "左区首购业绩($)")
|
||||
private BigDecimal afirstPv;
|
||||
|
||||
/**
|
||||
* 右区首购业绩
|
||||
*/
|
||||
@Excel(name = "右区首购业绩($)")
|
||||
private BigDecimal bfirstPv;
|
||||
|
||||
/**
|
||||
* 安置部门
|
||||
*/
|
||||
private Integer placeDept;
|
||||
|
||||
|
||||
/**
|
||||
* 血缘首购业绩
|
||||
*/
|
||||
@Excel(name = "血缘首购业绩($)")
|
||||
private BigDecimal consanguinityFirstPv;
|
||||
|
||||
/**
|
||||
* 左区复购业绩
|
||||
*/
|
||||
@Excel(name = "左区复购业绩($)")
|
||||
private BigDecimal repASumPv;
|
||||
|
||||
/**
|
||||
* 右区复购业绩
|
||||
*/
|
||||
@Excel(name = "右区复购业绩($)")
|
||||
private BigDecimal repBSumPv;
|
||||
|
||||
/**
|
||||
* 血缘复购业绩
|
||||
*/
|
||||
@Excel(name = "血缘复购业绩($)")
|
||||
private BigDecimal consanguinityRepBSumPv;
|
||||
|
||||
/**
|
||||
*左区真实业绩(PV)
|
||||
*/
|
||||
@Excel(name = "左区真实业绩($)")
|
||||
private BigDecimal aSumRealPv;
|
||||
|
||||
/**
|
||||
* B区真实业绩(PV)
|
||||
*/
|
||||
@Excel(name = "右区真实业绩($)")
|
||||
private BigDecimal bSumRealPv;
|
||||
|
||||
/**
|
||||
* 血缘真实业绩(pv)
|
||||
*/
|
||||
@Excel(name = "血缘真实业绩($)")
|
||||
private BigDecimal consanguinityRealPv;
|
||||
|
||||
/**
|
||||
* 奖金收益
|
||||
*/
|
||||
// @Excel(name = "奖金收益($)")
|
||||
private BigDecimal realIncomeTotal;
|
||||
|
||||
/**
|
||||
* 奖金团队占比
|
||||
*/
|
||||
@Excel(name = "奖金团队占比(%)",suffix = "%")
|
||||
private BigDecimal bonusTeamProportion;
|
||||
|
||||
/**
|
||||
* 奖金大盘占比
|
||||
*/
|
||||
@Excel(name = "奖金大盘占比%")
|
||||
private BigDecimal bonusLargeMarketProportion;
|
||||
|
||||
/**
|
||||
* 直推人数
|
||||
*/
|
||||
@Excel(name = "直推人数")
|
||||
private Long directPushPeopleNumber;
|
||||
/**
|
||||
* 直推业绩
|
||||
*/
|
||||
@Excel(name = "直推业绩")
|
||||
private Long directPushPeoplePv;
|
||||
/**
|
||||
* 复购金额
|
||||
*/
|
||||
@Excel(name = "复购金额$")
|
||||
private BigDecimal repurchaseAmount;
|
||||
|
||||
/**
|
||||
* 复购业绩
|
||||
*/
|
||||
@Excel(name = "复购业绩")
|
||||
private BigDecimal repurchasePv;
|
||||
|
||||
/**
|
||||
* 复购积分
|
||||
*/
|
||||
@Excel(name = "复购积分")
|
||||
private BigDecimal repurchaseIntegral;
|
||||
|
||||
/**
|
||||
* 福利金额($)
|
||||
*/
|
||||
@Excel(name = "福利金额($)")
|
||||
private BigDecimal benefitAmount;
|
||||
|
||||
/**
|
||||
* 福利业绩(pv)
|
||||
*/
|
||||
@Excel(name = "福利业绩($)")
|
||||
private BigDecimal benefitPv;
|
||||
|
||||
/**
|
||||
* 福利积分
|
||||
*/
|
||||
@Excel(name = "福利积分")
|
||||
private BigDecimal welfarePoints;
|
||||
|
||||
/**
|
||||
* 转账次数
|
||||
*/
|
||||
@Excel(name = "转账次数")
|
||||
private Integer memberTransferCount;
|
||||
|
||||
/**
|
||||
* 转账金额($)
|
||||
*/
|
||||
@Excel(name = "转账金额($)")
|
||||
private BigDecimal transferAmount;
|
||||
|
||||
/**
|
||||
* 充值金额($)
|
||||
*/
|
||||
@Excel(name = "充值金额($)")
|
||||
private BigDecimal rechargeAmount;
|
||||
|
||||
/**
|
||||
* 提现次数
|
||||
*/
|
||||
@Excel(name = "提现次数")
|
||||
private Integer withdrawalNumber;
|
||||
|
||||
/**
|
||||
* 提现金额($)
|
||||
*/
|
||||
@Excel(name = "提现金额($)")
|
||||
private Integer withdrawalAmount;
|
||||
|
||||
/**
|
||||
* 登录次数
|
||||
*/
|
||||
// @Excel(name = "登录次数")
|
||||
private Integer loginNumber;
|
||||
|
||||
/**
|
||||
* 最后一次登录时间
|
||||
*/
|
||||
@Excel(name = "最近登录",dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date lastLoginTime;
|
||||
|
||||
/**
|
||||
* 最后一次登录时间间隔天数
|
||||
*/
|
||||
// @Excel(name = "最后一次登录时间间隔天数")
|
||||
private Long lastLoginTimeIntervalDays;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Excel(name = "创建时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date creationTime;
|
||||
/**
|
||||
* 支付时间
|
||||
*/
|
||||
@Excel(name = "支付时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date payTime;
|
||||
|
||||
/**
|
||||
* 修改直推次数
|
||||
*/
|
||||
@Excel(name = "修改直推次数")
|
||||
private Integer directPushNumber;
|
||||
/**
|
||||
* 层级
|
||||
*/
|
||||
private Integer level;
|
||||
}
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
package com.hzs.member.base.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @Description: 列表筛选显现隐藏实体vo
|
||||
* @Author: zhangjing
|
||||
* @Time: 2022/10/13 11:21
|
||||
* @Classname: CuMemberVO
|
||||
* @PackageName: com.hzs.member.base.vo
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class TheLableVO {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 表头名称
|
||||
*/
|
||||
private String titel;
|
||||
|
||||
/**
|
||||
* 对应字段
|
||||
*/
|
||||
private String prop;
|
||||
|
||||
/**
|
||||
* key键
|
||||
*/
|
||||
private Integer keyId;
|
||||
|
||||
/**
|
||||
* 显示隐藏
|
||||
*/
|
||||
private String show;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
package com.hzs.member.base.vo;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2024/4/30 15:11
|
||||
* @Classname: WaresAuthorityParentVo
|
||||
* @PackageName: com.hzs.member.base.vo
|
||||
*/
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.member.base.vo
|
||||
*@Author: yh
|
||||
*@CreateTime: 2024-04-30 15:11
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class WaresAuthorityParentVo {
|
||||
|
||||
/**
|
||||
* 会员主键
|
||||
*/
|
||||
private Integer pkMember;
|
||||
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
private Long memberCount;
|
||||
}
|
||||
|
|
@ -2,14 +2,12 @@ package com.hzs.member.self.controller.api;
|
|||
|
||||
import com.hzs.common.core.annotation.RepeatSubmitSimple;
|
||||
import com.hzs.common.core.constant.MagicNumberConstants;
|
||||
import com.hzs.common.core.constant.msg.ConfigMsgConstants;
|
||||
import com.hzs.common.core.constant.msg.FinanceMsgConstants;
|
||||
import com.hzs.common.core.enums.EApprovalBusiness;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.domain.member.self.CuSelfServiceLog;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.util.TransactionUtils;
|
||||
import com.hzs.member.account.service.ICuMemberAuthenticationService;
|
||||
|
|
@ -18,14 +16,10 @@ import com.hzs.member.base.service.ICuMemberService;
|
|||
import com.hzs.member.self.service.ICuSelfServiceLogService;
|
||||
import com.hzs.member.self.vo.DomicileChangeVO;
|
||||
import com.hzs.member.sms.service.IApiAliSmsService;
|
||||
import com.hzs.system.config.IServiceChargeServiceApi;
|
||||
import com.hzs.system.config.dto.ServiceChargeDTO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
|
@ -41,12 +35,9 @@ public class ApiDomicileChangeController extends BaseController {
|
|||
@Autowired
|
||||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
@Autowired
|
||||
private ICuSelfServiceLogService iCuSelfServiceLogService;
|
||||
|
||||
@DubboReference
|
||||
IServiceChargeServiceApi iServiceChargeServiceApi;
|
||||
@Autowired
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
|
||||
/**
|
||||
* 查询可申请信息
|
||||
|
|
@ -55,45 +46,45 @@ public class ApiDomicileChangeController extends BaseController {
|
|||
*/
|
||||
@GetMapping("/application-info-list")
|
||||
public AjaxResult applicationInformation() {
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
CuMemberExt member = iCuMemberService.getMemberById(pkMember);
|
||||
DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder().memberCode(member.getMemberCode())
|
||||
.memberName(member.getMemberName()).phone(member.getPhone())
|
||||
.changeNum(MagicNumberConstants.CHANGE_NUM).build();
|
||||
CuMemberExt member = iCuMemberService.getMemberById(SecurityUtils.getUserId());
|
||||
DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder()
|
||||
.memberCode(member.getMemberCode())
|
||||
.memberName(member.getMemberName())
|
||||
.phone(member.getPhone())
|
||||
.changeNum(MagicNumberConstants.CHANGE_NUM)
|
||||
.build();
|
||||
return AjaxResult.success(domicileChangeVO);
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/application-info-detail")
|
||||
public AjaxResult applicationInformationDetail() {
|
||||
return AjaxResult.success(iCuSelfServiceLogService.selectDomicileChangeByPkMember(SecurityUtils.getUserId(), EApprovalBusiness.DOMICILE_CHANGE.getValue(), SecurityUtils.getPkCountry()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询已申请信息
|
||||
* 显示户籍变更信息
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@GetMapping("/applied-info-list")
|
||||
public AjaxResult appliedInformation() {
|
||||
DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder().pkMember(SecurityUtils.getUserId())
|
||||
.pkCountry(SecurityUtils.getPkCountry()).editType(EApprovalBusiness.DOMICILE_CHANGE.getValue()).build();
|
||||
List<DomicileChangeVO> domicileChangeVOList = (List<DomicileChangeVO>) iCuSelfServiceLogService.selectSelfServiceByPkMember(domicileChangeVO)[1];
|
||||
return AjaxResult.success(domicileChangeVOList);
|
||||
@GetMapping("/show-change-domicile")
|
||||
public AjaxResult showChangeDomicile() {
|
||||
String idBack = null;
|
||||
String idFront = null;
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
CuMemberExt member = iCuMemberService.getMemberById(pkMember);
|
||||
//查询实名认证信息原证件图
|
||||
CuMemberAuthenticationVO authenticationVO = CuMemberAuthenticationVO.builder().pkCountry(pkCountry).pkMember(pkMember).build();
|
||||
CuMemberAuthenticationVO cuMemberAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(authenticationVO);
|
||||
if (null != cuMemberAuthenticationVO) {
|
||||
idBack = cuMemberAuthenticationVO.getIdBack();
|
||||
idFront = cuMemberAuthenticationVO.getIdFront();
|
||||
}
|
||||
DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder()
|
||||
.memberCode(member.getMemberCode())
|
||||
.memberName(member.getMemberName())
|
||||
.phone(member.getPhone())
|
||||
.idBack(idBack)
|
||||
.idFront(idFront)
|
||||
.build();
|
||||
return AjaxResult.success(domicileChangeVO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 自助服务是否显示户籍认证
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@GetMapping("/show-index-domicile")
|
||||
public AjaxResult showIndexDomicile() {
|
||||
return AjaxResult.success(iCuSelfServiceLogService.showIndexDomicile(SecurityUtils.getPkCountry(), SecurityUtils.getUserId()));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 申请户籍变更
|
||||
*
|
||||
|
|
@ -125,13 +116,8 @@ public class ApiDomicileChangeController extends BaseController {
|
|||
}
|
||||
domicileChangeVO.setPkCountry(pkCountry);
|
||||
domicileChangeVO.setPkMember(pkMember);
|
||||
//是否有正在审批业务
|
||||
AjaxResult existApprovalData = isExistApprovalData(domicileChangeVO);
|
||||
if (!existApprovalData.equals(AjaxResult.success())) {
|
||||
return existApprovalData;
|
||||
}
|
||||
// 校验短信验证码
|
||||
String message = iApiAliSmsService.checkCode(domicileChangeVO.getChangePhone(), domicileChangeVO.getVerificationCode(), null);
|
||||
String message = iApiAliSmsService.checkCode(domicileChangeVO.getChangePhone(), domicileChangeVO.getVerificationCode(), null, pkMember);
|
||||
if (null != message) {
|
||||
return AjaxResult.error(message);
|
||||
}
|
||||
|
|
@ -139,63 +125,19 @@ public class ApiDomicileChangeController extends BaseController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 显示户籍变更信息
|
||||
* 查询已申请信息
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@GetMapping("/show-change-domicile")
|
||||
public AjaxResult showChangeDomicile() {
|
||||
String idBack = null;
|
||||
String idFront = null;
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
CuMemberExt member = iCuMemberService.getMemberById(pkMember);
|
||||
//查询实名认证信息原证件图
|
||||
CuMemberAuthenticationVO authenticationVO = CuMemberAuthenticationVO.builder().pkCountry(pkCountry).pkMember(pkMember).build();
|
||||
CuMemberAuthenticationVO cuMemberAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(authenticationVO);
|
||||
if (null != cuMemberAuthenticationVO) {
|
||||
idBack = cuMemberAuthenticationVO.getIdBack();
|
||||
idFront = cuMemberAuthenticationVO.getIdFront();
|
||||
}
|
||||
ServiceChargeDTO serviceChargeInfo = getServiceChargeInfo(pkCountry);
|
||||
BigDecimal cost = null != serviceChargeInfo ? serviceChargeInfo.getCost() : BigDecimal.ZERO;
|
||||
DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder().memberCode(member.getMemberCode())
|
||||
.memberName(member.getMemberName()).phone(member.getPhone()).amount(cost).pkAccount(serviceChargeInfo.getPkAccount())
|
||||
.idBack(idBack).idFront(idFront).build();
|
||||
return AjaxResult.success(domicileChangeVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 是否存在审核的数据
|
||||
*
|
||||
* @param domicileChangeVO 户籍变更信息
|
||||
* @return AjaxResult
|
||||
*/
|
||||
private AjaxResult isExistApprovalData(DomicileChangeVO domicileChangeVO) {
|
||||
CuSelfServiceLog cuSelfServiceLog = new CuSelfServiceLog();
|
||||
cuSelfServiceLog.setPkCountry(domicileChangeVO.getPkCountry());
|
||||
cuSelfServiceLog.setEditType(EApprovalBusiness.DOMICILE_CHANGE.getValue());
|
||||
cuSelfServiceLog.setPkMember(domicileChangeVO.getPkMember());
|
||||
Integer check = iCuSelfServiceLogService.checkSelfService(cuSelfServiceLog);
|
||||
if (check > 0) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MEMBER_UPDATE_CODE_REPEAT));
|
||||
}
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询手续费
|
||||
*
|
||||
* @param pkCountry 国家pID
|
||||
* @return ServiceChargeDTO
|
||||
*/
|
||||
private ServiceChargeDTO getServiceChargeInfo(Integer pkCountry) {
|
||||
//查询扣费金额,账户信息
|
||||
ServiceChargeDTO serviceChargeDTO = new ServiceChargeDTO();
|
||||
serviceChargeDTO.setType(EApprovalBusiness.DOMICILE_CHANGE.getValue());
|
||||
serviceChargeDTO.setPkCountry(pkCountry);
|
||||
serviceChargeDTO.setQuantity(MagicNumberConstants.CHANGE_NUM);
|
||||
return iServiceChargeServiceApi.getServiceChargeByType(serviceChargeDTO).getData();
|
||||
@GetMapping("/applied-info-list")
|
||||
public AjaxResult appliedInformation() {
|
||||
DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder()
|
||||
.pkMember(SecurityUtils.getUserId())
|
||||
.pkCountry(SecurityUtils.getPkCountry())
|
||||
.editType(EApprovalBusiness.DOMICILE_CHANGE.getValue())
|
||||
.build();
|
||||
List<DomicileChangeVO> domicileChangeVOList = (List<DomicileChangeVO>) iCuSelfServiceLogService.selectSelfServiceByPkMember(domicileChangeVO)[1];
|
||||
return AjaxResult.success(domicileChangeVOList);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,19 +1,12 @@
|
|||
package com.hzs.member.self.controller.api;
|
||||
|
||||
import com.hzs.common.core.constant.CountryConstants;
|
||||
import com.hzs.common.core.enums.EGrade;
|
||||
import com.hzs.common.core.enums.EYesNo;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import com.hzs.member.self.service.ICuSelfServiceLogService;
|
||||
import com.hzs.member.self.vo.SelfVO;
|
||||
import com.hzs.system.config.IGradeServiceApi;
|
||||
import com.hzs.system.config.dto.GradeDTO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
|
@ -27,44 +20,23 @@ import org.springframework.web.bind.annotation.RestController;
|
|||
@RestController
|
||||
public class ApiSelfController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private ICuSelfServiceLogService iCuSelfServiceLogService;
|
||||
|
||||
@DubboReference
|
||||
IGradeServiceApi iGradeServiceApi;
|
||||
|
||||
/**
|
||||
* 自助权限查询
|
||||
*/
|
||||
@GetMapping("/authority")
|
||||
public AjaxResult validateSelfAuthority() {
|
||||
CuMemberExt cuMember = iCuMemberService.getMenuMember(SecurityUtils.getUserId());
|
||||
|
||||
// 获取等级
|
||||
GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData();
|
||||
if (EGrade.START_UP.getValue() == gradeDTO.getGradeValue()) {
|
||||
// 会员等级,需要【实名认证】
|
||||
return AjaxResult.success(SelfVO.builder()
|
||||
.existRealName(EYesNo.YES.getIntValue())
|
||||
.build());
|
||||
}
|
||||
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
Integer showAddress = iCuSelfServiceLogService.showHiddenAddress(cuMember.getPkId(), pkCountry);
|
||||
Integer showAddress = iCuSelfServiceLogService.showHiddenAddress(userId, pkCountry);
|
||||
SelfVO selfVO = SelfVO.builder()
|
||||
.existAddress(showAddress)
|
||||
.existOrderSelf(showAddress)
|
||||
.selfRevokeOrder(showAddress)
|
||||
.existDomicile(iCuSelfServiceLogService.showIndexDomicile(pkCountry, cuMember.getPkId()))
|
||||
.existDomicile(iCuSelfServiceLogService.showIndexDomicile(pkCountry, userId))
|
||||
.existRealName(EYesNo.YES.getIntValue())
|
||||
.existMemberMonth(EYesNo.YES.getIntValue())
|
||||
.build();
|
||||
if (!pkCountry.equals(CountryConstants.CHINA_COUNTRY)) {
|
||||
selfVO.setSelfRevokeOrder(EYesNo.NO.getIntValue());
|
||||
}
|
||||
|
||||
return AjaxResult.success(selfVO);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,24 +1,17 @@
|
|||
package com.hzs.member.self.controller.manage;
|
||||
|
||||
|
||||
import com.hzs.common.core.annotation.Log;
|
||||
import com.hzs.common.core.constant.msg.ConfigMsgConstants;
|
||||
import com.hzs.common.core.enums.EApprovalBusiness;
|
||||
import com.hzs.common.core.enums.EOperationBusiness;
|
||||
import com.hzs.common.core.enums.EOperationMethod;
|
||||
import com.hzs.common.core.enums.EOperationModule;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.core.web.page.TableDataInfo;
|
||||
import com.hzs.common.domain.member.self.CuSelfServiceLogExt;
|
||||
import com.hzs.common.security.service.UserTokenService;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.util.TransactionUtils;
|
||||
import com.hzs.member.self.service.ICuSelfServiceLogService;
|
||||
import com.hzs.member.self.vo.DomicileChangeVO;
|
||||
import com.hzs.system.sys.dto.LoginUser;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
|
@ -28,12 +21,6 @@ import java.util.List;
|
|||
|
||||
/**
|
||||
* 变理户籍
|
||||
*
|
||||
* @Description:
|
||||
* @Author: ljc
|
||||
* @Time: 2023/4/18 10:07
|
||||
* @Classname: ApiDomicileChangeController
|
||||
* @Package_name: com.hzs.member.self.controller.api
|
||||
*/
|
||||
@Slf4j
|
||||
@RequestMapping("/manage/change-domicile")
|
||||
|
|
@ -43,10 +30,6 @@ public class DomicileChangeController extends BaseController {
|
|||
@Autowired
|
||||
private ICuSelfServiceLogService serviceLogService;
|
||||
|
||||
@Autowired
|
||||
private UserTokenService userTokenService;
|
||||
|
||||
|
||||
/**
|
||||
* 户籍变更列表
|
||||
*
|
||||
|
|
@ -64,7 +47,6 @@ public class DomicileChangeController extends BaseController {
|
|||
return tableDataInfo;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 户籍变更列表
|
||||
*
|
||||
|
|
@ -77,35 +59,4 @@ public class DomicileChangeController extends BaseController {
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* 驳回
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@PostMapping("/domicile-change-reject")
|
||||
@Log(module = EOperationModule.DOMICILE_CHANGE, business = EOperationBusiness.DOMICILE_CHANGE, method = EOperationMethod.REJECT)
|
||||
public AjaxResult domicileChangeReject(@RequestBody DomicileChangeVO domicileChangeVO) {
|
||||
if (StringUtils.isEmpty(domicileChangeVO.getRejectMsg())) {
|
||||
return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.REJECT_MSG_NOT_NULL));
|
||||
}
|
||||
return AjaxResult.success(serviceLogService.domicileChangeRejectById(domicileChangeVO, SecurityUtils.getUserId()));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 同意
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
@PostMapping("/domicile-change-agree")
|
||||
@Log(module = EOperationModule.DOMICILE_CHANGE, business = EOperationBusiness.DOMICILE_CHANGE, method = EOperationMethod.AGREE)
|
||||
public AjaxResult domicileChangeAgree(@RequestBody DomicileChangeVO domicileChangeVO) {
|
||||
LoginUser loginUser = userTokenService.getLoginUser();
|
||||
domicileChangeVO.setLoginUser(loginUser);
|
||||
domicileChangeVO.setPkModified(SecurityUtils.getUserId());
|
||||
domicileChangeVO.setPkCountry(SecurityUtils.getPkCountry());
|
||||
return AjaxResult.success(serviceLogService.domicileChangeAgree(domicileChangeVO));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
package com.hzs.member.self.mapper;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.hzs.common.domain.member.self.CuSelfServiceLog;
|
||||
import com.hzs.common.domain.member.self.CuSelfServiceLogExt;
|
||||
import com.hzs.common.domain.sale.ext.SaOrderItemsExt;
|
||||
import com.hzs.member.self.vo.MyOrderItemsVO;
|
||||
import com.hzs.member.self.vo.SelfModifyAddressVO;
|
||||
import com.hzs.member.self.vo.DomicileChangeVO;
|
||||
|
|
@ -13,48 +11,22 @@ import org.apache.ibatis.annotations.Param;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 自助服务日志表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-04-17
|
||||
*/
|
||||
public interface CuSelfServiceLogMapper extends BaseMapper<CuSelfServiceLog> {
|
||||
|
||||
/**
|
||||
* @description: 自助服务-查询已申请修改收货地址
|
||||
* @author: zhang jing
|
||||
* @date: 2023/4/17 14:36
|
||||
* @param: [selfModifyAddressVO]
|
||||
* @return: java.util.List<com.hzs.member.self.vo.SelfModifyAddressVO>
|
||||
* 自助服务-查询已申请修改收货地址
|
||||
**/
|
||||
List<SelfModifyAddressVO> querySelfModifyAddressList(SelfModifyAddressVO selfModifyAddressVO);
|
||||
|
||||
/**
|
||||
* @description: 自助服务-查询已申请修改收货地址(管理端)
|
||||
* @author: zhang jing
|
||||
* @date: 2023/7/24 11:43
|
||||
* @param: [selfModifyAddressVO]
|
||||
* @return: java.util.List<com.hzs.member.self.vo.SelfModifyAddressVO>
|
||||
* 自助服务-查询已申请修改收货地址(管理端)
|
||||
**/
|
||||
List<SelfModifyAddressVO> querySelfModifyAddressManageList(SelfModifyAddressVO selfModifyAddressVO);
|
||||
|
||||
|
||||
/**
|
||||
* @description: 自助服务-校验是否存在重复审核
|
||||
* @author: zhang jing
|
||||
* @date: 2023/4/17 16:40
|
||||
* @param: [selfModifyAddressVO]
|
||||
* @return: java.lang.Integer
|
||||
**/
|
||||
Integer checkSelfService(CuSelfServiceLog cuSelfServiceLog);
|
||||
|
||||
/**
|
||||
* @description: 自助服务-查询申请的最大次数
|
||||
* @author: zhang jing
|
||||
* @date: 2023/4/17 17:08
|
||||
* @param: [selfModifyAddressVO]
|
||||
* @return: java.lang.Integer
|
||||
* 自助服务-查询申请的最大次数
|
||||
**/
|
||||
Integer selectByMaxApproveNumber(CuSelfServiceLog cuSelfServiceLog);
|
||||
|
||||
|
|
@ -74,16 +46,6 @@ public interface CuSelfServiceLogMapper extends BaseMapper<CuSelfServiceLog> {
|
|||
*/
|
||||
CuSelfServiceLogExt selectDomicileChangeDetail(@Param("pkId") Long pkId);
|
||||
|
||||
/**
|
||||
* 根据用户ID和类型查询自动服务
|
||||
*
|
||||
* @param editType 服务类型
|
||||
* @param pkMember 会员ID
|
||||
* @param pkCountry 国家ID
|
||||
* @return CuSelfServiceLogExt
|
||||
*/
|
||||
CuSelfServiceLogExt selectDomicileChangeByPkMember(@Param("editType") Integer editType, @Param("pkMember") Long pkMember, @Param("pkCountry") Integer pkCountry);
|
||||
|
||||
/**
|
||||
* 根据业务类型、业务编号查询自助信息
|
||||
*
|
||||
|
|
@ -93,12 +55,6 @@ public interface CuSelfServiceLogMapper extends BaseMapper<CuSelfServiceLog> {
|
|||
*/
|
||||
CuSelfServiceLog selectSelfServiceByBusinessNo(@Param("editType") Integer editType, @Param("businessNo") String businessNo);
|
||||
|
||||
/**
|
||||
* 根据业务编号更新审批信息
|
||||
*/
|
||||
|
||||
Integer updateSelfServiceByBusinessNo(DomicileChangeVO domicileChangeVO);
|
||||
|
||||
/**
|
||||
* 根据订单ID查询订单明细列表(前台使用,尽量只查能用到的)
|
||||
*
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ import com.alibaba.fastjson.JSONObject;
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.hzs.common.core.domain.R;
|
||||
import com.hzs.common.core.enums.EApprovalBusiness;
|
||||
import com.hzs.common.core.enums.EModifyRecordStatus;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
|
|
@ -14,7 +13,6 @@ import com.hzs.member.base.service.ICuMemberService;
|
|||
import com.hzs.member.self.ICuSelfServiceServiceApi;
|
||||
import com.hzs.member.self.dto.SelfServiceDataDTO;
|
||||
import com.hzs.member.self.service.ICuSelfServiceLogService;
|
||||
import com.hzs.member.self.vo.DomicileChangeVO;
|
||||
import com.hzs.member.self.vo.SelfModifyAddressVO;
|
||||
import com.hzs.system.base.IAreaServiceApi;
|
||||
import com.hzs.system.sys.dto.ApprovalBusinessResultDTO;
|
||||
|
|
@ -23,17 +21,10 @@ import org.apache.dubbo.config.annotation.DubboReference;
|
|||
import org.apache.dubbo.config.annotation.DubboService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 自助服务Dubbo 服务
|
||||
*
|
||||
* @Description:
|
||||
* @Author: ljc
|
||||
* @Time: 2023/4/19 16:24
|
||||
* @Classname: ICuSelfServiceServiceProvider
|
||||
* @Package_name: com.hzs.member.self.provider
|
||||
*/
|
||||
@Slf4j
|
||||
@DubboService
|
||||
|
|
@ -53,9 +44,6 @@ public class ICuSelfServiceServiceProvider implements ICuSelfServiceServiceApi {
|
|||
public R<?> analysisSelfServiceData(SelfServiceDataDTO selfServiceDataDTO) {
|
||||
EApprovalBusiness eApprovalBusiness = EApprovalBusiness.getEnumByValue(selfServiceDataDTO.getEditType());
|
||||
switch (eApprovalBusiness) {
|
||||
case DOMICILE_CHANGE:
|
||||
//户籍变更数据
|
||||
return R.ok(getDomicileChangeData(selfServiceDataDTO));
|
||||
case SELF_MODIFY_ADDRESS:
|
||||
//修改地址
|
||||
return R.ok(getSelfModifyAddress(selfServiceDataDTO));
|
||||
|
|
@ -65,24 +53,7 @@ public class ICuSelfServiceServiceProvider implements ICuSelfServiceServiceApi {
|
|||
}
|
||||
|
||||
/**
|
||||
* 户籍变更数据
|
||||
*
|
||||
* @param selfServiceDataDTO 自助服务参数
|
||||
* @return List<DomicileChangeVO>
|
||||
*/
|
||||
private List<DomicileChangeVO> getDomicileChangeData(SelfServiceDataDTO selfServiceDataDTO) {
|
||||
DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder().editType(selfServiceDataDTO.getEditType())
|
||||
.pkCountry(selfServiceDataDTO.getPkCountry())
|
||||
.businessNo(selfServiceDataDTO.getBusinessNo()).build();
|
||||
return (List<DomicileChangeVO>) cuSelfServiceLogService.selectSelfServiceByPkMember(domicileChangeVO)[1];
|
||||
}
|
||||
|
||||
/**
|
||||
* @description: 自助服务-修改收货地址
|
||||
* @author: zhang jing
|
||||
* @date: 2023/4/20 16:18
|
||||
* @param: [selfServiceDataDTO]
|
||||
* @return: java.util.List<com.hzs.member.self.vo.SelfModifyAddressVO>
|
||||
* 自助服务-修改收货地址
|
||||
**/
|
||||
private SelfModifyAddressVO getSelfModifyAddress(SelfServiceDataDTO selfServiceDataDTO) {
|
||||
SelfModifyAddressVO selMad = SelfModifyAddressVO.builder()
|
||||
|
|
@ -144,17 +115,6 @@ public class ICuSelfServiceServiceProvider implements ICuSelfServiceServiceApi {
|
|||
}
|
||||
try {
|
||||
switch (eApprovalBusiness) {
|
||||
//户籍变更数据
|
||||
case DOMICILE_CHANGE:
|
||||
//审批通过
|
||||
if (approveOperation.equals(EModifyRecordStatus.APPROVE.getValue())) {
|
||||
return R.ok(cuSelfServiceLogService.domicileChangeApproved(approvalBusinessResultDTO, selfServiceLog));
|
||||
}
|
||||
//审批驳回
|
||||
if (approveOperation.equals(EModifyRecordStatus.REJECT.getValue())) {
|
||||
//横冲手续费
|
||||
return R.ok(cuSelfServiceLogService.domicileChangeReject(approvalBusinessResultDTO, selfServiceLog));
|
||||
}
|
||||
case SELF_MODIFY_ADDRESS:
|
||||
//修改地址
|
||||
return R.ok(cuSelfServiceLogService.selfExamine(approvalBusinessResultDTO));
|
||||
|
|
|
|||
|
|
@ -24,11 +24,6 @@ public interface ICuSelfServiceLogService extends IService<CuSelfServiceLog> {
|
|||
**/
|
||||
List<SelfModifyAddressVO> querySelfModifyAddressManageList(SelfModifyAddressVO selfModifyAddressVO);
|
||||
|
||||
/**
|
||||
* 自助服务-校验是否存在重复审核
|
||||
**/
|
||||
Integer checkSelfService(CuSelfServiceLog cuSelfServiceLog);
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
|
|
@ -52,7 +47,6 @@ public interface ICuSelfServiceLogService extends IService<CuSelfServiceLog> {
|
|||
**/
|
||||
boolean selfExamine(ApprovalBusinessResultDTO approvalBusinessResultDTO);
|
||||
|
||||
|
||||
/**
|
||||
* 根据业务类型、用户ID查询自助服务
|
||||
*
|
||||
|
|
@ -78,16 +72,6 @@ public interface ICuSelfServiceLogService extends IService<CuSelfServiceLog> {
|
|||
*/
|
||||
DomicileChangeVO selectDomicileChangeDetail(Long pkId);
|
||||
|
||||
/**
|
||||
* 根据用户ID和类型查询自动服务
|
||||
*
|
||||
* @param editType 服务类型
|
||||
* @param pkMember 会员ID
|
||||
* @param pkCountry 国家ID
|
||||
* @return CuSelfServiceLogExt
|
||||
*/
|
||||
DomicileChangeVO selectDomicileChangeByPkMember(Long pkMember, Integer editType, Integer pkCountry);
|
||||
|
||||
/**
|
||||
* 根据业务类型、业务编号查询自助信息
|
||||
*
|
||||
|
|
@ -97,41 +81,6 @@ public interface ICuSelfServiceLogService extends IService<CuSelfServiceLog> {
|
|||
*/
|
||||
CuSelfServiceLog selectSelfServiceByBusinessNo(Integer editType, String businessNo);
|
||||
|
||||
/**
|
||||
* 户籍变更审批通过
|
||||
*
|
||||
* @param approvalBusinessResultDTO 审核参数
|
||||
* @param selfServiceLog 自助信息
|
||||
* @return Boolean
|
||||
*/
|
||||
Integer domicileChangeApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO, CuSelfServiceLog selfServiceLog);
|
||||
|
||||
/**
|
||||
* 户籍变更审批驳回
|
||||
*
|
||||
* @param approvalBusinessResultDTO 审核参数
|
||||
* @param selfServiceLog 自助信息
|
||||
* @return Integer
|
||||
*/
|
||||
Integer domicileChangeReject(ApprovalBusinessResultDTO approvalBusinessResultDTO, CuSelfServiceLog selfServiceLog);
|
||||
|
||||
/**
|
||||
* 户籍变更审批驳回
|
||||
*
|
||||
* @param domicileChangeVO ID
|
||||
* @param pkMember 会员ID
|
||||
* @return Integer
|
||||
*/
|
||||
Boolean domicileChangeRejectById(DomicileChangeVO domicileChangeVO, Long pkMember);
|
||||
|
||||
/**
|
||||
* 户籍变更审批同意(后台列表操作)
|
||||
*
|
||||
* @param domicileChangeVO 户籍变更
|
||||
* @return
|
||||
*/
|
||||
Integer domicileChangeAgree(DomicileChangeVO domicileChangeVO);
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
|
|
|
|||
|
|
@ -5,12 +5,11 @@ import cn.hutool.core.collection.CollUtil;
|
|||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.hzs.common.core.constant.CountryConstants;
|
||||
import com.hzs.common.core.constant.MagicNumberConstants;
|
||||
import com.hzs.common.core.constant.RabbitMqConstants;
|
||||
import com.hzs.common.core.constant.SystemFieldConstants;
|
||||
import com.hzs.common.core.constant.msg.ConfigMsgConstants;
|
||||
import com.hzs.common.core.domain.R;
|
||||
import com.hzs.common.core.enums.*;
|
||||
|
|
@ -18,14 +17,12 @@ import com.hzs.common.core.exception.ServiceException;
|
|||
import com.hzs.common.core.utils.CommonUtil;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
import com.hzs.common.domain.member.account.CuMemberAccount;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.domain.member.self.CuSelfServiceLog;
|
||||
import com.hzs.common.domain.member.self.CuSelfServiceLogExt;
|
||||
import com.hzs.common.domain.sale.ext.SaOrderExt;
|
||||
import com.hzs.common.domain.sale.order.SaOrder;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.member.account.dto.BusinessCommissionDTO;
|
||||
import com.hzs.member.account.dto.MemberAmountDTO;
|
||||
import com.hzs.member.account.service.*;
|
||||
import com.hzs.member.base.service.ICuMemberBusinessService;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
|
|
@ -39,9 +36,7 @@ import com.hzs.sale.order.ISaOrderServiceApi;
|
|||
import com.hzs.system.sys.IApprovalServiceApi;
|
||||
import com.hzs.system.sys.dto.ApprovalBusinessResultDTO;
|
||||
import com.hzs.system.sys.dto.ApprovalSubmitDTO;
|
||||
import com.hzs.system.sys.dto.BusinessLogDTO;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.springframework.amqp.rabbit.core.RabbitTemplate;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
|
@ -67,17 +62,13 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
@Autowired
|
||||
private ICuMemberAccountService iCuMemberAccountService;
|
||||
@Autowired
|
||||
private ICuMemberTradeService cuMemberTradeService;
|
||||
private ICuMemberTradeService iCuMemberTradeService;
|
||||
@Autowired
|
||||
private ICuMemberAuthenticationService cuMemberAuthenticationService;
|
||||
private ICuMemberAuthenticationService iCuMemberAuthenticationService;
|
||||
@Autowired
|
||||
private ICuMemberBusinessLicenseService cuMemberBusinessLicenseService;
|
||||
private ICuMemberBusinessLicenseService iCuMemberBusinessLicenseService;
|
||||
@Autowired
|
||||
private ICuMemberService cuMemberService;
|
||||
@Autowired
|
||||
private ICuMemberBankService cuMemberBankService;
|
||||
@Autowired
|
||||
private RabbitTemplate rabbitTemplate;
|
||||
private ICuMemberService iCuMemberService;
|
||||
|
||||
@Override
|
||||
public List<SelfModifyAddressVO> querySelfModifyAddressList(SelfModifyAddressVO selfModifyAddressVO) {
|
||||
|
|
@ -89,11 +80,6 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
return baseMapper.querySelfModifyAddressManageList(selfModifyAddressVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer checkSelfService(CuSelfServiceLog cuSelfServiceLog) {
|
||||
return baseMapper.checkSelfService(cuSelfServiceLog);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer selectByMaxApproveNumber(CuSelfServiceLog cuSelfServiceLog) {
|
||||
return baseMapper.selectByMaxApproveNumber(cuSelfServiceLog);
|
||||
|
|
@ -166,114 +152,53 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean saveChangeDomicile(DomicileChangeVO domicileChangeVO) {
|
||||
Long pkMember = domicileChangeVO.getPkMember();
|
||||
int editType = EApprovalBusiness.DOMICILE_CHANGE.getValue();
|
||||
Integer pkCountry = domicileChangeVO.getPkCountry();
|
||||
CuSelfServiceLogExt cuSelfServiceLogExt = baseMapper.selectDomicileChangeByPkMember(editType, pkMember, pkCountry);
|
||||
//逻辑删除已有的信息
|
||||
if (null != cuSelfServiceLogExt) {
|
||||
UpdateWrapper<CuSelfServiceLog> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.set(SystemFieldConstants.DEL_FLAG, EDelFlag.DELETE.getValue());
|
||||
updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkMember);
|
||||
updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, new Date());
|
||||
updateWrapper.eq("PK_ID", cuSelfServiceLogExt.getPkId());
|
||||
update(updateWrapper);
|
||||
}
|
||||
|
||||
//更新业务
|
||||
iCuMemberService.updateMemberNameAndPhone(pkMember, domicileChangeVO.getChangeMemberName(), domicileChangeVO.getChangePhone(), pkMember);
|
||||
// 注销实名认证、营业执照
|
||||
changeBusinessByChangeName(pkMember, pkMember);
|
||||
//重置银行卡
|
||||
BusinessMemberVO businessMemberVO = BusinessMemberVO.builder().pkMember(pkMember).build();
|
||||
// iCuMemberBankService.batchUpdateBankBypkMembers(Collections.singletonList(businessMemberVO), pkModified);
|
||||
//修改会员的变更次数
|
||||
List<Long> pkMembers = Collections.singletonList(businessMemberVO.getPkMember());
|
||||
iCuMemberService.updateMemberEditNumber(pkMembers, pkMember);
|
||||
|
||||
//变更前值
|
||||
DomicileChangeVO oldValue = DomicileChangeVO.builder().memberName(domicileChangeVO.getMemberName())
|
||||
.phone(domicileChangeVO.getPhone()).idFront(domicileChangeVO.getIdFront()).idBack(domicileChangeVO.getIdBack()).build();
|
||||
DomicileChangeVO oldValue = DomicileChangeVO.builder()
|
||||
.memberName(domicileChangeVO.getMemberName())
|
||||
.phone(domicileChangeVO.getPhone())
|
||||
.idFront(domicileChangeVO.getIdFront())
|
||||
.idBack(domicileChangeVO.getIdBack())
|
||||
.build();
|
||||
//变更后的值
|
||||
DomicileChangeVO newValue = DomicileChangeVO.builder().changeMemberName(domicileChangeVO.getChangeMemberName())
|
||||
.changePhone(domicileChangeVO.getChangePhone()).changeIdFront(domicileChangeVO.getChangeIdFront()).changeIdBack(domicileChangeVO.getChangeIdBack()).build();
|
||||
DomicileChangeVO newValue = DomicileChangeVO.builder()
|
||||
.changeMemberName(domicileChangeVO.getChangeMemberName())
|
||||
.changePhone(domicileChangeVO.getChangePhone())
|
||||
.changeIdFront(domicileChangeVO.getChangeIdFront())
|
||||
.changeIdBack(domicileChangeVO.getChangeIdBack())
|
||||
.build();
|
||||
|
||||
String businessNo = CommonUtil.createSerialNumber(EOrderPrefix.SELF_SERVICE.getValue());
|
||||
CuSelfServiceLog oldServiceLog = CuSelfServiceLog.builder().pkMember(pkMember)
|
||||
.editType(editType).oldValue(JSONUtil.toJsonStr(oldValue)).selfRemark(domicileChangeVO.getRemark()).description(domicileChangeVO.getDescription())
|
||||
.newValue(JSONUtil.toJsonStr(newValue)).businessNo(businessNo).approveStatus(EApproveRechargeStatus.SUBMIT.getValue()).pkAccount(domicileChangeVO.getPkAccount())
|
||||
.approveNumber(MagicNumberConstants.CHANGE_NUM).singleAmount(domicileChangeVO.getAmount()).editTypePay(ETradeType.getValueByApprovalValue(editType)).build();
|
||||
oldServiceLog.setPkCreator(pkMember);
|
||||
oldServiceLog.setPkCountry(pkCountry);
|
||||
//保存
|
||||
this.save(oldServiceLog);
|
||||
//扣费
|
||||
return Charging(domicileChangeVO, businessNo);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer domicileChangeAgree(DomicileChangeVO domicileChangeVO) {
|
||||
String businessNo = domicileChangeVO.getBusinessNo();
|
||||
Long pkMember = domicileChangeVO.getPkMember();
|
||||
Long pkModified = domicileChangeVO.getPkModified();
|
||||
//更新审核状态
|
||||
DomicileChangeVO domicileChange = DomicileChangeVO.builder().businessNo(businessNo)
|
||||
.approveStatus(EApproveRechargeStatus.WAIT.getValue()).approveTime(new Date())
|
||||
.pkModified(pkModified).build();
|
||||
Integer result = baseMapper.updateSelfServiceByBusinessNo(domicileChange);
|
||||
//调用审批接口,修改审批状态
|
||||
ApprovalSubmitDTO approvalSubmitDTO = ApprovalSubmitDTO.builder().eApprovalBusiness(EApprovalBusiness.DOMICILE_CHANGE)
|
||||
.businessCode(businessNo).signSource(ESignSource.MANAGE)
|
||||
.signType(ESignType.GENERAL).userIdList(domicileChangeVO.getUserIdList())
|
||||
.remark(domicileChangeVO.getRemark()).pkMemberList(Collections.singleton(pkMember))
|
||||
.sendIdList(domicileChangeVO.getSendIdList()).fileList(domicileChangeVO.getFileList())
|
||||
CuSelfServiceLog oldServiceLog = CuSelfServiceLog.builder()
|
||||
.pkMember(pkMember)
|
||||
.editType(EApprovalBusiness.DOMICILE_CHANGE.getValue())
|
||||
.oldValue(JSONUtil.toJsonStr(oldValue))
|
||||
.newValue(JSONUtil.toJsonStr(newValue))
|
||||
.businessNo(businessNo)
|
||||
.selfRemark(domicileChangeVO.getRemark())
|
||||
.description(domicileChangeVO.getDescription())
|
||||
.approveStatus(EApproveRechargeStatus.AGREE.getValue())
|
||||
.pkAccount(domicileChangeVO.getPkAccount())
|
||||
.approveNumber(MagicNumberConstants.CHANGE_NUM)
|
||||
.singleAmount(domicileChangeVO.getAmount())
|
||||
.editTypePay(ETradeType.getValueByApprovalValue(EApprovalBusiness.DOMICILE_CHANGE.getValue()))
|
||||
.build();
|
||||
R<String> submit = iApprovalServiceApi.submit(approvalSubmitDTO, domicileChangeVO.getLoginUser());
|
||||
if (!submit.isSuccess()) {
|
||||
throw new RuntimeException(submit.getMsg());
|
||||
}
|
||||
//MQ户籍变更操作日志
|
||||
CuSelfServiceLog cuSelfServiceLog = baseMapper.selectSelfServiceByBusinessNo(EApprovalBusiness.DOMICILE_CHANGE.getValue(), businessNo);
|
||||
packageDomicileOperationLog(cuSelfServiceLog, businessNo, "同意", pkModified, false);
|
||||
return result;
|
||||
oldServiceLog.setPkCreator(pkMember);
|
||||
oldServiceLog.setPkCountry(CountryConstants.CHINA_COUNTRY);
|
||||
return this.save(oldServiceLog);
|
||||
}
|
||||
|
||||
/**
|
||||
* 户籍变更操作日志
|
||||
*
|
||||
* @param cuSelfServiceLog 入参
|
||||
* @param businessNo 业务编号
|
||||
* @param operationType 操作类型
|
||||
*/
|
||||
private void packageDomicileOperationLog(CuSelfServiceLog cuSelfServiceLog, String businessNo, String operationType, Long pkMember, Boolean freeSignFlag) {
|
||||
DomicileChangeVO oldValue = JSONUtil.toBean(cuSelfServiceLog.getOldValue(), DomicileChangeVO.class);
|
||||
DomicileChangeVO newValue = JSONUtil.toBean(cuSelfServiceLog.getNewValue(), DomicileChangeVO.class);
|
||||
CuMemberExt cumember = cuMemberService.getMemberById(cuSelfServiceLog.getPkMember());
|
||||
String sb = "会员编号:" + cumember.getMemberCode() +
|
||||
" 变更前的会员姓名:" + oldValue.getMemberName() +
|
||||
" 变更后的会员姓名:" + newValue.getChangeMemberName() +
|
||||
" 变更前的联系方式:" + oldValue.getPhone() +
|
||||
" 变更后的联系方式:" + newValue.getChangePhone() +
|
||||
" 操作类型:" + operationType;
|
||||
BusinessLogDTO businessLog = BusinessLogDTO.builder()
|
||||
.businessType(EApprovalBusiness.DOMICILE_CHANGE.getValue())
|
||||
.businessCode(businessNo).pkMember(cuSelfServiceLog.getPkMember())
|
||||
.content(sb).pkCreator(pkMember)
|
||||
.pkCountry(cuSelfServiceLog.getPkCountry())
|
||||
.freeSignFlag(freeSignFlag).build();
|
||||
rabbitTemplate.convertAndSend(RabbitMqConstants.BUSINESS_LOG_EXCHANGE, RabbitMqConstants.BUSINESS_LOG_KEY, Collections.singleton(businessLog));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 扣费
|
||||
*
|
||||
* @param domicileChangeVO 户籍变更信息
|
||||
* @param businessNo 业务编号
|
||||
*/
|
||||
public Boolean Charging(DomicileChangeVO domicileChangeVO, String businessNo) {
|
||||
MemberAmountDTO memberAmountDTO = MemberAmountDTO.builder().pkMember(domicileChangeVO.getPkMember()).tradeAmount(domicileChangeVO.getAmount()).build();
|
||||
List<MemberAmountDTO> memberAmountDTOList = new ArrayList<>();
|
||||
memberAmountDTOList.add(memberAmountDTO);
|
||||
|
||||
BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder().pkAccount(domicileChangeVO.getPkAccount())
|
||||
.tradeType(EApprovalBusiness.DOMICILE_CHANGE.getValue())
|
||||
.tradeCode(businessNo)
|
||||
.pkCountry(domicileChangeVO.getPkCountry())
|
||||
.pkCreator(domicileChangeVO.getPkModified()).build();
|
||||
businessCommissionDTO.setMemberAmountDTOList(memberAmountDTOList);
|
||||
return cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Object[] selectSelfServiceByPkMember(DomicileChangeVO domicileChangeVO) {
|
||||
DomicileChangeVO domicileChange;
|
||||
|
|
@ -290,11 +215,11 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
|
||||
@Override
|
||||
public Integer showIndexDomicile(Integer pkCountry, Long pkMember) {
|
||||
QueryWrapper<CuSelfServiceLog> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("PK_MEMBER", pkMember);
|
||||
queryWrapper.eq("PK_COUNTRY", pkCountry);
|
||||
queryWrapper.eq("EDIT_TYPE", EApprovalBusiness.DOMICILE_CHANGE.getValue());
|
||||
queryWrapper.eq("APPROVE_STATUS", EApproveRechargeStatus.AGREE.getValue());
|
||||
LambdaQueryWrapper<CuSelfServiceLog> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(CuSelfServiceLog::getPkMember, pkMember);
|
||||
queryWrapper.eq(CuSelfServiceLog::getPkCountry, pkCountry);
|
||||
queryWrapper.eq(CuSelfServiceLog::getEditType, EApprovalBusiness.DOMICILE_CHANGE.getValue());
|
||||
queryWrapper.eq(CuSelfServiceLog::getApproveStatus, EApproveRechargeStatus.AGREE.getValue());
|
||||
Integer count = baseMapper.selectCount(queryWrapper);
|
||||
return count > 0 ? EYesNo.NO.getIntValue() : EYesNo.YES.getIntValue();
|
||||
}
|
||||
|
|
@ -303,18 +228,8 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
public DomicileChangeVO selectDomicileChangeDetail(Long pkId) {
|
||||
CuSelfServiceLogExt cuSelfServiceLogExt = baseMapper.selectDomicileChangeDetail(pkId);
|
||||
return chargeDomicileChangeVO(cuSelfServiceLogExt);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public DomicileChangeVO selectDomicileChangeByPkMember(Long pkMember, Integer editType, Integer pkCountry) {
|
||||
CuSelfServiceLogExt cuSelfServiceLogExt = baseMapper.selectDomicileChangeByPkMember(editType, pkMember, pkCountry);
|
||||
return chargeDomicileChangeVO(cuSelfServiceLogExt);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 转化户籍VO
|
||||
*
|
||||
|
|
@ -334,7 +249,6 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
.rejectMsg(selfServiceLog.getRejectMsg())
|
||||
.approveTime(selfServiceLog.getApproveTime())
|
||||
.remark(selfServiceLog.getSelfRemark()).build();
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -342,26 +256,6 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
return baseMapper.selectSelfServiceByBusinessNo(editType, businessNo);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer domicileChangeApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO, CuSelfServiceLog selfServiceLog) {
|
||||
Long pkMember = selfServiceLog.getPkMember();
|
||||
Long pkModified = approvalBusinessResultDTO.getLoginUser().getUserId();
|
||||
DomicileChangeVO domicileChangeVO = JSONUtil.toBean(selfServiceLog.getNewValue(), DomicileChangeVO.class);
|
||||
//更新业务
|
||||
cuMemberService.updateMemberNameAndPhone(pkMember, domicileChangeVO.getChangeMemberName(), domicileChangeVO.getChangePhone(), pkModified);
|
||||
//注销实名认证、营业执照
|
||||
changeBusinessByChangeName(pkMember, pkModified);
|
||||
//重置银行卡
|
||||
BusinessMemberVO businessMemberVO = BusinessMemberVO.builder().pkMember(pkMember).build();
|
||||
cuMemberBankService.batchUpdateBankBypkMembers(Collections.singletonList(businessMemberVO), pkModified);
|
||||
//修改会员的变更次数
|
||||
List<Long> pkMembers = Collections.singletonList(businessMemberVO.getPkMember());
|
||||
cuMemberService.updateMemberEditNumber(pkMembers, pkModified);
|
||||
//更新状态
|
||||
return updateApprovalStatus(approvalBusinessResultDTO, pkModified);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新姓名删除相关实名操作
|
||||
*
|
||||
|
|
@ -372,73 +266,19 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
private void changeBusinessByChangeName(Long pkMember, Long pkModified) {
|
||||
List<Long> pkMembers = Collections.singletonList(pkMember);
|
||||
//更新实名认证
|
||||
Boolean auth = cuMemberAuthenticationService.deleteByPkMembers(pkMembers, pkModified);
|
||||
Boolean auth = iCuMemberAuthenticationService.deleteByPkMembers(pkMembers, pkModified);
|
||||
//更新会员是否实名
|
||||
if (auth) {
|
||||
cuMemberService.updateMemberStatusByPkIds(pkMembers, pkModified, EAuthType.REAL_NAME.getValue());
|
||||
iCuMemberService.updateMemberStatusByPkIds(pkMembers, pkModified, EAuthType.REAL_NAME.getValue());
|
||||
}
|
||||
//更新营业执照
|
||||
Boolean license = cuMemberBusinessLicenseService.updateMemberLicenseByPkMembers(pkMembers, pkModified);
|
||||
Boolean license = iCuMemberBusinessLicenseService.updateMemberLicenseByPkMembers(pkMembers, pkModified);
|
||||
//更新会员是否营业执照
|
||||
if (license) {
|
||||
cuMemberService.updateMemberStatusByPkIds(pkMembers, pkModified, EAuthType.BUS_LICENSE.getValue());
|
||||
iCuMemberService.updateMemberStatusByPkIds(pkMembers, pkModified, EAuthType.BUS_LICENSE.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer domicileChangeReject(ApprovalBusinessResultDTO approvalBusinessResultDTO, CuSelfServiceLog selfServiceLog) {
|
||||
Long userId = approvalBusinessResultDTO.getLoginUser().getUserId();
|
||||
//扣费横冲
|
||||
EApprovalBusiness eApprovalBusiness = approvalBusinessResultDTO.getEApprovalBusiness();
|
||||
String businessCode = approvalBusinessResultDTO.getBusinessCode();
|
||||
BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder().tradeType(eApprovalBusiness.getValue())
|
||||
.tradeCode(businessCode).pkCountry(selfServiceLog.getPkCountry())
|
||||
.pkCreator(userId).build();
|
||||
cuMemberTradeService.businessCommissionReject(businessCommissionDTO);
|
||||
//更新状态
|
||||
return updateApprovalStatus(approvalBusinessResultDTO, userId);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean domicileChangeRejectById(DomicileChangeVO domicileChangeVO, Long pkMember) {
|
||||
UpdateWrapper<CuSelfServiceLog> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkMember);
|
||||
updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, new Date());
|
||||
updateWrapper.set("approve_status", EApproveRechargeStatus.REJECT.getValue());
|
||||
updateWrapper.set("approve_time", new Date());
|
||||
updateWrapper.set("REJECT_MSG", domicileChangeVO.getRejectMsg());
|
||||
updateWrapper.eq("PK_ID", domicileChangeVO.getPkId());
|
||||
//更新状态
|
||||
update(updateWrapper);
|
||||
CuSelfServiceLog selfServiceLog = baseMapper.selectById(domicileChangeVO.getPkId());
|
||||
//扣费横冲
|
||||
BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder().tradeType(selfServiceLog.getEditType())
|
||||
.tradeCode(selfServiceLog.getBusinessNo()).pkCountry(selfServiceLog.getPkCountry())
|
||||
.pkCreator(pkMember).build();
|
||||
Boolean result = cuMemberTradeService.businessCommissionReject(businessCommissionDTO);
|
||||
// MQ户籍变更操作日志
|
||||
packageDomicileOperationLog(selfServiceLog, selfServiceLog.getBusinessNo(), "驳回", pkMember, true);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新审核状态
|
||||
*
|
||||
* @param approvalBusinessResultDTO 审核参数
|
||||
* @param pkModified 修改人ID
|
||||
* @return Integer
|
||||
*/
|
||||
public Integer updateApprovalStatus(ApprovalBusinessResultDTO approvalBusinessResultDTO, Long pkModified) {
|
||||
DomicileChangeVO domicileChange = DomicileChangeVO.builder().businessNo(approvalBusinessResultDTO.getBusinessCode())
|
||||
.approveStatus(approvalBusinessResultDTO.getApproveOperation() + 1).approveTime(new Date())
|
||||
.pkModified(pkModified).build();
|
||||
return baseMapper.updateSelfServiceByBusinessNo(domicileChange);
|
||||
}
|
||||
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@Override
|
||||
public boolean selfExamine(ApprovalBusinessResultDTO approvalBusinessResultDTO) {
|
||||
|
|
@ -490,7 +330,7 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
businessCommissionDTO.setPkAccount(csso.getPkAccount());
|
||||
businessCommissionDTO.setMemberAmountDTOList(csso.getMemberAmountDTOList());
|
||||
businessCommissionDTO.setTradeType(EApprovalBusiness.SELF_MODIFY_ADDRESS.getValue());
|
||||
Boolean b = cuMemberTradeService.businessCommissionReject(businessCommissionDTO);
|
||||
Boolean b = iCuMemberTradeService.businessCommissionReject(businessCommissionDTO);
|
||||
if (!b) {
|
||||
throw new ServiceException(ConfigMsgConstants.MEMBER_UPDATE_CODE_MONEY);
|
||||
}
|
||||
|
|
@ -537,7 +377,7 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
businessCommissionDTO.setPkAccount(selVO.getPkAccount());
|
||||
businessCommissionDTO.setMemberAmountDTOList(selVO.getMemberAmountDTOList());
|
||||
businessCommissionDTO.setTradeType(EApprovalBusiness.SELF_MODIFY_ADDRESS.getValue());
|
||||
Boolean b = cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO);
|
||||
Boolean b = iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO);
|
||||
if (!b) {
|
||||
throw new ServiceException(ConfigMsgConstants.SELF_MODIFY_ADDRESS);
|
||||
}
|
||||
|
|
@ -561,5 +401,4 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl<CuSelfServiceLogMap
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,20 +21,11 @@ public class SelfVO implements Serializable {
|
|||
*/
|
||||
private Integer existAddress;
|
||||
|
||||
/**
|
||||
* 存在订单自提
|
||||
*/
|
||||
private Integer existOrderSelf;
|
||||
|
||||
/**
|
||||
* 存在户籍变更
|
||||
*/
|
||||
private Integer existDomicile;
|
||||
|
||||
/**
|
||||
* 存在月统计数据
|
||||
*/
|
||||
private Integer existMemberMonth;
|
||||
/**
|
||||
* 存在自助撤单 0 存在 1不存在
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ import com.hzs.common.domain.member.base.CuMember;
|
|||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import com.hzs.member.base.vo.MemberShare;
|
||||
import com.hzs.member.sms.service.IApiCodeService;
|
||||
import com.hzs.member.sms.service.IApiAliSmsService;
|
||||
import com.hzs.member.share.param.ShareRegisterParam;
|
||||
import com.hzs.third.share.IShareServiceApi;
|
||||
import com.hzs.third.share.dto.ShareServiceDTO;
|
||||
|
|
@ -30,11 +30,7 @@ import java.util.Map;
|
|||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
/**
|
||||
* @Description: 会员分享相关控制器
|
||||
* @Author: jiang chao
|
||||
* @Time: 2023/3/15 10:03
|
||||
* @Classname: ShareController
|
||||
* @PackageName: com.hzs.member.share.controller
|
||||
* 会员分享相关控制器
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
|
|
@ -44,7 +40,7 @@ public class ApiShareController extends BaseController {
|
|||
@Autowired
|
||||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private IApiCodeService iApiCodeService;
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
|
|
@ -112,7 +108,7 @@ public class ApiShareController extends BaseController {
|
|||
if (relationStr != null) {
|
||||
return AjaxResult.error(relationStr);
|
||||
}
|
||||
return toAjax(iApiCodeService.sendRegisterCode(phone));
|
||||
return toAjax(iApiAliSmsService.sendRegisterCode(phone));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -139,7 +135,7 @@ public class ApiShareController extends BaseController {
|
|||
registerParam.setParentMember(parentMember);
|
||||
|
||||
// 校验短信验证码是否有效
|
||||
String checkSmsStr = iApiCodeService.checkRegisterCode(registerParam.getPhone(), registerParam.getSmsCode());
|
||||
String checkSmsStr = iApiAliSmsService.checkRegisterCode(registerParam.getPhone(), registerParam.getSmsCode());
|
||||
if (null != checkSmsStr) {
|
||||
return AjaxResult.error(checkSmsStr);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,21 +1,19 @@
|
|||
package com.hzs.member.sms.controller.api;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.hzs.common.core.annotation.RepeatSubmitSimple;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import com.hzs.member.sms.service.IApiCodeService;
|
||||
import com.hzs.member.sms.service.IApiAliSmsService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 短信处理控制器
|
||||
*/
|
||||
|
|
@ -24,7 +22,7 @@ import java.util.List;
|
|||
public class ApiSmsController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private IApiCodeService iApiCodeService;
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
@Autowired
|
||||
private ICuMemberService iCuMemberService;
|
||||
|
||||
|
|
@ -37,7 +35,7 @@ public class ApiSmsController extends BaseController {
|
|||
@RepeatSubmitSimple
|
||||
@GetMapping("/verification")
|
||||
public AjaxResult verification(@RequestParam(required = false) String phone) {
|
||||
return toAjax(iApiCodeService.sendCode(phone, null, null));
|
||||
return toAjax(iApiAliSmsService.sendCode(phone, null, null, SecurityUtils.getUserId()));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -50,11 +48,11 @@ public class ApiSmsController extends BaseController {
|
|||
@RepeatSubmitSimple
|
||||
@GetMapping("/forget-verification")
|
||||
public AjaxResult forgetVerification(@RequestParam String memberCode, @RequestParam String phone) {
|
||||
List<CuMemberExt> cuMemberList = iCuMemberService.listMemberByPhone(phone);
|
||||
if (CollectionUtil.isEmpty(cuMemberList)) {
|
||||
return AjaxResult.error("会员联系方式不存在");
|
||||
CuMember cuMember = iCuMemberService.getMember(memberCode);
|
||||
if (null == cuMember) {
|
||||
return AjaxResult.error("会员或联系方式不存在");
|
||||
}
|
||||
return toAjax(iApiCodeService.sendRecoverCode(phone));
|
||||
return toAjax(iApiAliSmsService.sendRecoverCode(phone, cuMember.getPkId()));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -72,7 +70,7 @@ public class ApiSmsController extends BaseController {
|
|||
return AjaxResult.error("会员信息不存在");
|
||||
}
|
||||
|
||||
return toAjax(iApiCodeService.resetPayPasswordCode(cuMemberExt.getPhone()));
|
||||
return toAjax(iApiAliSmsService.resetPayPasswordCode(cuMemberExt.getPhone(), cuMemberExt.getPkId()));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,9 +11,10 @@ public interface IApiAliSmsService {
|
|||
* @param phone 手机号码
|
||||
* @param checkKey 验证码KEY -- 为空使用默认
|
||||
* @param sendTimKey 验证码重复发送间隔KEY -- 为空使用默认
|
||||
* @param pkMember 会员ID -- 如果有值,优先缓存使用
|
||||
* @return
|
||||
*/
|
||||
String sendCode(String phone, String checkKey, String sendTimKey);
|
||||
String sendCode(String phone, String checkKey, String sendTimKey, Long pkMember);
|
||||
|
||||
/**
|
||||
* 校验短信验证码
|
||||
|
|
@ -21,9 +22,10 @@ public interface IApiAliSmsService {
|
|||
* @param phone 手机号码
|
||||
* @param smsCode 短信验证码
|
||||
* @param checkKey 验证码KEY -- 为空使用默认
|
||||
* @param pkMember 会员ID -- 如果有值,优先缓存使用
|
||||
* @return
|
||||
*/
|
||||
String checkCode(String phone, String smsCode, String checkKey);
|
||||
String checkCode(String phone, String smsCode, String checkKey, Long pkMember);
|
||||
|
||||
// /**
|
||||
// * 登录发送验证码
|
||||
|
|
@ -63,34 +65,38 @@ public interface IApiAliSmsService {
|
|||
* 找回密码发送验证码
|
||||
*
|
||||
* @param phone 手机号码
|
||||
* @param pkMember 会员ID
|
||||
* @return
|
||||
*/
|
||||
String sendRecoverCode(String phone);
|
||||
String sendRecoverCode(String phone, Long pkMember);
|
||||
|
||||
/**
|
||||
* 校验找回密码验证码
|
||||
*
|
||||
* @param phone 手机号码
|
||||
* @param smsCode 短信验证码
|
||||
* @param pkMember 会员ID
|
||||
* @return
|
||||
*/
|
||||
String checkRecoverCode(String phone, String smsCode);
|
||||
String checkRecoverCode(String phone, String smsCode, Long pkMember);
|
||||
|
||||
/**
|
||||
* 重置支付密码发送验证码
|
||||
*
|
||||
* @param phone 手机号码
|
||||
* @param pkMember 会员ID
|
||||
* @return
|
||||
*/
|
||||
String resetPayPasswordCode(String phone);
|
||||
String resetPayPasswordCode(String phone, Long pkMember);
|
||||
|
||||
/**
|
||||
* 校验重置支付密码验证码
|
||||
*
|
||||
* @param phone 手机号码
|
||||
* @param smsCode 短信验证码
|
||||
* @param pkMember 会员ID
|
||||
* @return
|
||||
*/
|
||||
String checkPayPasswordCode(String phone, String smsCode);
|
||||
String checkPayPasswordCode(String phone, String smsCode, Long pkMember);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,79 +0,0 @@
|
|||
package com.hzs.member.sms.service;
|
||||
|
||||
/**
|
||||
* 验证码服务
|
||||
*/
|
||||
public interface IApiCodeService {
|
||||
|
||||
/**
|
||||
* 短信验证码
|
||||
*
|
||||
* @param phone 联系方式
|
||||
* @param checkKey 验证码KEY -- 为空使用默认
|
||||
* @param sendTimKey 验证码重复发送间隔KEY -- 为空使用默认
|
||||
* @return
|
||||
*/
|
||||
String sendCode(String phone, String checkKey, String sendTimKey);
|
||||
|
||||
/**
|
||||
* 校验短信验证码
|
||||
*
|
||||
* @param phone 联系方式
|
||||
* @param smsCode 短信验证码
|
||||
* @param checkKey 验证码KEY -- 为空使用默认
|
||||
* @return
|
||||
*/
|
||||
String checkCode(String phone, String smsCode, String checkKey);
|
||||
|
||||
/**
|
||||
* 注册发送验证码
|
||||
*
|
||||
* @param phone 联系方式
|
||||
* @return
|
||||
*/
|
||||
String sendRegisterCode(String phone);
|
||||
|
||||
/**
|
||||
* 校验注册验证码
|
||||
*
|
||||
* @param phone 联系方式
|
||||
* @param smsCode 短信验证码
|
||||
* @return
|
||||
*/
|
||||
String checkRegisterCode(String phone, String smsCode);
|
||||
|
||||
/**
|
||||
* 找回密码发送验证码
|
||||
*
|
||||
* @param phone 联系方式
|
||||
* @return
|
||||
*/
|
||||
String sendRecoverCode(String phone);
|
||||
|
||||
/**
|
||||
* 校验找回密码验证码
|
||||
*
|
||||
* @param phone 联系方式
|
||||
* @param smsCode 短信验证码
|
||||
* @return
|
||||
*/
|
||||
String checkRecoverCode(String phone, String smsCode);
|
||||
|
||||
/**
|
||||
* 重置支付密码发送验证码
|
||||
*
|
||||
* @param phone 联系方式
|
||||
* @return
|
||||
*/
|
||||
String resetPayPasswordCode(String phone);
|
||||
|
||||
/**
|
||||
* 校验重置支付密码验证码
|
||||
*
|
||||
* @param phone 联系方式
|
||||
* @param smsCode 短信验证码
|
||||
* @return
|
||||
*/
|
||||
String checkPayPasswordCode(String phone, String smsCode);
|
||||
|
||||
}
|
||||
|
|
@ -33,12 +33,12 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService {
|
|||
ISmsServiceApi iSmsServiceApi;
|
||||
|
||||
@Override
|
||||
public String sendCode(String phone, String checkKey, String sendTimKey) {
|
||||
// 每个手机号每天只能获取30次短信验证码
|
||||
public String sendCode(String phone, String checkKey, String sendTimKey, Long pkMember) {
|
||||
// 每个手机号每天只能获取20次短信验证码
|
||||
String smsCountKey = String.format(CacheConstants.SMS_COUNT, DateUtil.format(new Date(), DatePattern.PURE_DATE_PATTERN));
|
||||
Object smsCountObj = redisService.getCacheMapValue(smsCountKey, phone);
|
||||
if (smsCountObj != null) {
|
||||
if (Integer.parseInt(smsCountObj.toString()) >= 30) {
|
||||
if (Integer.parseInt(smsCountObj.toString()) > 20) {
|
||||
return "当前手机号码获取短信已达当日上限";
|
||||
}
|
||||
}
|
||||
|
|
@ -64,12 +64,11 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService {
|
|||
if (sendResult.isSuccess()) {
|
||||
// 返回成功,验证码放入缓存
|
||||
// 验证码缓存有效期5分钟
|
||||
redisService.setCacheObject(checkKey + phone, code, 5L, TimeUnit.MINUTES);
|
||||
redisService.setCacheObject(checkKey + (null != pkMember ? pkMember : phone), code, 5L, TimeUnit.MINUTES);
|
||||
|
||||
// 验证码发送间隔不能低于1分钟
|
||||
redisService.setCacheObject(sendTimKey + phone, "", 1L, TimeUnit.MINUTES);
|
||||
|
||||
// 每天只能发送30次短信验证码
|
||||
if (smsCountObj == null) {
|
||||
redisService.setCacheMapValue(smsCountKey, phone, 1);
|
||||
redisService.expire(smsCountKey, 1, TimeUnit.DAYS);
|
||||
|
|
@ -84,7 +83,7 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public String checkCode(String phone, String smsCode, String checkKey) {
|
||||
public String checkCode(String phone, String smsCode, String checkKey, Long pkMember) {
|
||||
if (EEnv.TEST.getValue().equals(BdConfig.getEnv()) && "ASDF".equals(smsCode)) {
|
||||
// 测试环境暂时不发放短信
|
||||
return null;
|
||||
|
|
@ -95,16 +94,16 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService {
|
|||
checkKey = CacheConstants.DEFAULT_CHECK;
|
||||
}
|
||||
|
||||
String cacheSmsCode = redisService.getCacheObject(checkKey + phone);
|
||||
String cacheSmsCode = redisService.getCacheObject(checkKey + (null != pkMember ? pkMember : phone));
|
||||
if (null == cacheSmsCode) {
|
||||
return "验证码已失效";
|
||||
}
|
||||
if (!cacheSmsCode.equals(smsCode)) {
|
||||
// 验证码错误,需不需要清除缓存验证码??会不会存在暴力破解情况??
|
||||
// TODO 验证码错误,需不需要清除缓存验证码??会不会存在暴力破解情况??
|
||||
return "验证码错误";
|
||||
}
|
||||
// 校验通过,删除验证码缓存
|
||||
redisService.deleteObject(checkKey + phone);
|
||||
redisService.deleteObject(checkKey + (null != pkMember ? pkMember : phone));
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
@ -125,12 +124,12 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService {
|
|||
|
||||
@Override
|
||||
public String sendRegisterCode(String phone) {
|
||||
return this.sendCode(phone, CacheConstants.REGISTER_CHECK, CacheConstants.REGISTER_SEND_TIME);
|
||||
return this.sendCode(phone, CacheConstants.REGISTER_CHECK, CacheConstants.REGISTER_SEND_TIME, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String checkRegisterCode(String phone, String smsCode) {
|
||||
String str = this.checkCode(phone, smsCode, CacheConstants.REGISTER_CHECK);
|
||||
String str = this.checkCode(phone, smsCode, CacheConstants.REGISTER_CHECK, null);
|
||||
if (null == str) {
|
||||
// 删除验证码间隔时间缓存
|
||||
redisService.deleteObject(CacheConstants.REGISTER_SEND_TIME + phone);
|
||||
|
|
@ -139,13 +138,13 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public String sendRecoverCode(String phone) {
|
||||
return this.sendCode(phone, CacheConstants.RECOVER_CHECK, CacheConstants.RECOVER_SEND_TIME);
|
||||
public String sendRecoverCode(String phone, Long pkMember) {
|
||||
return this.sendCode(phone, CacheConstants.RECOVER_CHECK, CacheConstants.RECOVER_SEND_TIME, pkMember);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String checkRecoverCode(String phone, String smsCode) {
|
||||
String str = this.checkCode(phone, smsCode, CacheConstants.RECOVER_CHECK);
|
||||
public String checkRecoverCode(String phone, String smsCode, Long pkMember) {
|
||||
String str = this.checkCode(phone, smsCode, CacheConstants.RECOVER_CHECK, pkMember);
|
||||
if (null == str) {
|
||||
// 删除验证码间隔时间缓存
|
||||
redisService.deleteObject(CacheConstants.RECOVER_SEND_TIME + phone);
|
||||
|
|
@ -154,13 +153,13 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public String resetPayPasswordCode(String phone) {
|
||||
return this.sendCode(phone, CacheConstants.RESET_CHECK, CacheConstants.RESET_SEND_TIME);
|
||||
public String resetPayPasswordCode(String phone, Long pkMember) {
|
||||
return this.sendCode(phone, CacheConstants.RESET_CHECK, CacheConstants.RESET_SEND_TIME, pkMember);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String checkPayPasswordCode(String phone, String smsCode) {
|
||||
String str = this.checkCode(phone, smsCode, CacheConstants.RESET_CHECK);
|
||||
public String checkPayPasswordCode(String phone, String smsCode, Long pkMember) {
|
||||
String str = this.checkCode(phone, smsCode, CacheConstants.RESET_CHECK, pkMember);
|
||||
if (null == str) {
|
||||
// 删除验证码间隔时间缓存
|
||||
redisService.deleteObject(CacheConstants.RESET_SEND_TIME + phone);
|
||||
|
|
|
|||
|
|
@ -1,59 +0,0 @@
|
|||
package com.hzs.member.sms.service.impl;
|
||||
|
||||
import com.hzs.member.sms.service.IApiAliSmsService;
|
||||
import com.hzs.member.sms.service.IApiCodeService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 验证码服务
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class ApiCodeServiceImpl implements IApiCodeService {
|
||||
|
||||
@Autowired
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
|
||||
@Override
|
||||
public String sendCode(String phone, String checkKey, String sendTimKey) {
|
||||
return iApiAliSmsService.sendCode(phone, checkKey, sendTimKey);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String checkCode(String phone, String smsCode, String checkKey) {
|
||||
return iApiAliSmsService.checkCode(phone, smsCode, checkKey);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String sendRegisterCode(String phone) {
|
||||
return iApiAliSmsService.sendRegisterCode(phone);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String checkRegisterCode(String phone, String smsCode) {
|
||||
return iApiAliSmsService.checkRegisterCode(phone, smsCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String sendRecoverCode(String phone) {
|
||||
return iApiAliSmsService.sendRecoverCode(phone);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String checkRecoverCode(String phone, String smsCode) {
|
||||
return iApiAliSmsService.checkRecoverCode(phone, smsCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String resetPayPasswordCode(String phone) {
|
||||
return iApiAliSmsService.resetPayPasswordCode(phone);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String checkPayPasswordCode(String phone, String smsCode) {
|
||||
return iApiAliSmsService.checkPayPasswordCode(phone, smsCode);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -45,6 +45,8 @@ import org.springframework.web.bind.annotation.*;
|
|||
|
||||
import javax.validation.Valid;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -109,7 +111,7 @@ public class RetailMemberController extends BaseController {
|
|||
LambdaQueryWrapper<CuMemberRetailRegion> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId);
|
||||
int countNum = iCuMemberRetailRegionService.count(queryWrapper);
|
||||
boolean isFirst = countNum > 0;
|
||||
boolean notFirst = countNum > 0;
|
||||
|
||||
log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt));
|
||||
if (null != cuMemberRetailRegionExt) {
|
||||
|
|
@ -155,9 +157,24 @@ public class RetailMemberController extends BaseController {
|
|||
&& totalBoxNum.compareTo(grade.getBoxTotal()) >= 0
|
||||
&& smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0
|
||||
){
|
||||
return AjaxResult.success(RetailMemberRegionVO.builder()
|
||||
.regionStatus(EYesNo.YES.getIntValue())
|
||||
.build());
|
||||
if(notFirst){
|
||||
LocalDate today = LocalDate.now();
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE;
|
||||
CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType);
|
||||
if(ObjectUtil.isNotEmpty(currentMonthVO)
|
||||
&& currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0
|
||||
&& currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0
|
||||
){
|
||||
|
||||
return AjaxResult.success(RetailMemberRegionVO.builder()
|
||||
.regionStatus(EYesNo.YES.getIntValue())
|
||||
.build());
|
||||
}
|
||||
}else{
|
||||
return AjaxResult.success(RetailMemberRegionVO.builder()
|
||||
.regionStatus(EYesNo.YES.getIntValue())
|
||||
.build());
|
||||
}
|
||||
}
|
||||
// if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv())
|
||||
// && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0
|
||||
|
|
@ -216,6 +233,7 @@ public class RetailMemberController extends BaseController {
|
|||
|
||||
CuMemberRetailRegionExt cuMemberRetailRegionExt = iCuMemberRetailRegionService.getRegionByMember(userId, EGrade.S_VIP.getValue(), systemType);
|
||||
log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt));
|
||||
|
||||
if (null != cuMemberRetailRegionExt) {
|
||||
if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsRegion()) {
|
||||
canSet = true;
|
||||
|
|
@ -234,12 +252,28 @@ public class RetailMemberController extends BaseController {
|
|||
canSet = true;
|
||||
}
|
||||
}else{
|
||||
LambdaQueryWrapper<CuMemberRetailRegion> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId);
|
||||
int countNum = iCuMemberRetailRegionService.count(queryWrapper);
|
||||
boolean notFirst = countNum > 0;
|
||||
GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData();
|
||||
if(ObjectUtil.isNotEmpty(totalBoxNum)
|
||||
&& totalBoxNum.compareTo(grade.getBoxTotal()) >= 0
|
||||
&& smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0
|
||||
){
|
||||
canSet = true;
|
||||
if(notFirst){
|
||||
LocalDate today = LocalDate.now();
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE;
|
||||
CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType);
|
||||
if(ObjectUtil.isNotEmpty(currentMonthVO)
|
||||
&& currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0
|
||||
&& currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0
|
||||
){
|
||||
canSet = true;
|
||||
}
|
||||
}else{
|
||||
canSet = true;
|
||||
}
|
||||
}
|
||||
// if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0
|
||||
// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0
|
||||
|
|
|
|||
|
|
@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||
import com.hzs.common.domain.member.achieve.CuMemberRetailRange;
|
||||
import com.hzs.retail.member.param.MarketDynamicsQueryDateParam;
|
||||
import com.hzs.retail.member.utils.PageResult;
|
||||
import com.hzs.retail.member.vo.CuMemberRetailAchieveVO;
|
||||
import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO;
|
||||
import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO;
|
||||
import com.hzs.retail.member.vo.MarketDynamicsDetailVO;
|
||||
import com.hzs.retail.member.vo.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
|
@ -115,5 +112,8 @@ public interface ICuMemberRetailAchieveService extends IService<CuMemberRetailRa
|
|||
*/
|
||||
CuMemberRetailDataStatisticsResultVO getRetailDataStatisticsDetail(Long pkMember, Integer pkCountry, Integer systemType);
|
||||
|
||||
|
||||
CurrentMonthVO getCurrentMonthPV(String date, Long pkMember, Integer pkCountry, Integer systemType);
|
||||
|
||||
PageResult<MarketDynamicsDetailVO> getMarketDynamics(MarketDynamicsQueryDateParam param);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,10 +20,7 @@ import com.hzs.retail.member.param.MarketDynamicsQueryDateParam;
|
|||
import com.hzs.retail.member.service.ICuMemberRetailAchieveService;
|
||||
import com.hzs.retail.member.utils.DataStatisticsUtil;
|
||||
import com.hzs.retail.member.utils.PageResult;
|
||||
import com.hzs.retail.member.vo.CuMemberRetailAchieveVO;
|
||||
import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO;
|
||||
import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO;
|
||||
import com.hzs.retail.member.vo.MarketDynamicsDetailVO;
|
||||
import com.hzs.retail.member.vo.*;
|
||||
import com.hzs.system.config.IGradeServiceApi;
|
||||
import com.hzs.system.config.dto.GradeDTO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -360,6 +357,22 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl<CuMemberRetail
|
|||
int period = cuMemberSettlePeriod.getPkId();
|
||||
return TableNameConstants.CU_MEMBER_RETAIL_S + period;
|
||||
}
|
||||
private String getTableNameSpecial4Date(String localDate) {
|
||||
CuMemberSettlePeriod cuMemberSettlePeriod =iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(localDate);
|
||||
if(ObjectUtil.isEmpty(cuMemberSettlePeriod)){
|
||||
return null;
|
||||
}
|
||||
int period = cuMemberSettlePeriod.getPkId();
|
||||
return TableNameConstants.CU_MEMBER_RETAIL_RANGE + period;
|
||||
}
|
||||
private String getDayTableNameSpecial4Date(String localDate) {
|
||||
CuMemberSettlePeriod cuMemberSettlePeriod =iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(localDate);
|
||||
if(ObjectUtil.isEmpty(cuMemberSettlePeriod)){
|
||||
return null;
|
||||
}
|
||||
int period = cuMemberSettlePeriod.getPkId();
|
||||
return TableNameConstants.CU_MEMBER_RETAIL_S + period;
|
||||
}
|
||||
public static boolean isBeforeThreeAm() {
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
// 获取当天凌晨3点的时间(日期与当前日期相同,时间为03:00:00)
|
||||
|
|
@ -637,6 +650,50 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl<CuMemberRetail
|
|||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CurrentMonthVO getCurrentMonthPV(String date, Long pkMember, Integer pkCountry, Integer systemType) {
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
LocalDate today = LocalDate.now();
|
||||
String yesterdayDate;
|
||||
String memberRetailTable = TableNameConstants.CU_MEMBER_RETAIL_S;
|
||||
if (today.getDayOfMonth() != 1) {
|
||||
LocalDate previousDay = today.minusDays(1);
|
||||
yesterdayDate = previousDay.format(DateTimeFormatter.ISO_LOCAL_DATE);
|
||||
memberRetailTable = getTableNameSpecial4Date(yesterdayDate);
|
||||
}
|
||||
String memberSecondTable = getDayTableNameSpecial();
|
||||
//查询直推会员
|
||||
List<Long> pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType);
|
||||
pkMemberList.add(userId);
|
||||
CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder()
|
||||
.memberRetailTable(memberRetailTable)
|
||||
.memberRetailSTable(memberSecondTable)
|
||||
.pkMemberList(pkMemberList).systemType(systemType).build();
|
||||
List<CuMemberRetailDataStatisticsDetailVO> statisticsDetailVOList = baseMapper.getRetailDataStatisticsDetail(memberAchieveVO);
|
||||
CuMember cuMember = iCuMemberService.queryMember(userId);
|
||||
BigAndSmallRangeVO bigAndSmallRangeVO = DataStatisticsUtil.getBigAndSmallRangeVO(statisticsDetailVOList, cuMember);
|
||||
MarketDynamicsQueryDateParam param = new MarketDynamicsQueryDateParam();
|
||||
DataStatisticsUtil.setQueryDateParam(param);
|
||||
param.setCurrentDayTableName(memberSecondTable);
|
||||
param.setCurrentMonthTableName(memberRetailTable);
|
||||
param.setLastMonthTableName(getDayTableName(param.getLastMonthDate()));
|
||||
List<MarketDynamicsDetailVO> detailVOList = baseMapper.getMarketDynamicsDetail(param);
|
||||
BigDecimal totalMouthPV = detailVOList.stream()
|
||||
.map(MarketDynamicsDetailVO::getCurrentMonthPv)
|
||||
.filter(Objects::nonNull)
|
||||
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
BigDecimal bigMouthPV = BigDecimal.ZERO;
|
||||
MarketDynamicsDetailVO bigRange = detailVOList.stream().filter(vo -> {
|
||||
assert bigAndSmallRangeVO != null;
|
||||
return vo.getPkId().equals(bigAndSmallRangeVO.getBigRangeId());
|
||||
}).findFirst().orElse(null);
|
||||
if(ObjectUtil.isNotEmpty(bigRange)){
|
||||
bigMouthPV = bigRange.getCurrentMonthPv();
|
||||
}
|
||||
BigDecimal smallMountPV = totalMouthPV.subtract(bigMouthPV);
|
||||
return CurrentMonthVO.builder().smallCurrentMonthPV(smallMountPV).totalCurrentMonthPV(totalMouthPV).build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<MarketDynamicsDetailVO> getMarketDynamics(MarketDynamicsQueryDateParam param) {
|
||||
Long pkMember = SecurityUtils.getUserId();
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil;
|
|||
import com.hzs.common.core.enums.EYesNo;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.retail.member.param.MarketDynamicsQueryDateParam;
|
||||
import com.hzs.retail.member.vo.BigAndSmallRangeVO;
|
||||
import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO;
|
||||
import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO;
|
||||
import com.hzs.retail.member.vo.MarketDynamicsDetailVO;
|
||||
|
|
@ -309,4 +310,55 @@ public class DataStatisticsUtil {
|
|||
// .lastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
|
||||
// .build();
|
||||
}
|
||||
|
||||
|
||||
public static CuMemberRetailDataStatisticsDetailVO getBigRangeWithPV(List<CuMemberRetailDataStatisticsDetailVO> detailVOList, CuMember cuMember){
|
||||
Long pkId = cuMember.getPkId();
|
||||
// 非激活直接返0
|
||||
// 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据
|
||||
if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){
|
||||
return CuMemberRetailDataStatisticsDetailVO.builder()
|
||||
.build();
|
||||
}
|
||||
calcDetailVOTotalField(detailVOList, pkId);
|
||||
addVirtualBranch(detailVOList, pkId);
|
||||
CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId);
|
||||
if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){
|
||||
// 昨日非激活 排除昨日日结表数据
|
||||
excludeDailySettlementData(detailVOList);
|
||||
}
|
||||
else{
|
||||
// 排除注水数据
|
||||
excludeWaterInjectionData(detailVOList, pkId);
|
||||
}
|
||||
return getBigRangePVDetailVO(detailVOList, pkId);
|
||||
}
|
||||
|
||||
|
||||
public static BigAndSmallRangeVO getBigAndSmallRangeVO(List<CuMemberRetailDataStatisticsDetailVO> detailVOList, CuMember cuMember){
|
||||
Long pkId = cuMember.getPkId();
|
||||
BigAndSmallRangeVO bigAndSmallRangeVO = new BigAndSmallRangeVO();
|
||||
// 非激活直接返0
|
||||
// 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据
|
||||
if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){
|
||||
return null;
|
||||
}
|
||||
calcDetailVOTotalField(detailVOList, pkId);
|
||||
addVirtualBranch(detailVOList, pkId);
|
||||
CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId);
|
||||
if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){
|
||||
// 昨日非激活 排除昨日日结表数据
|
||||
excludeDailySettlementData(detailVOList);
|
||||
}
|
||||
else{
|
||||
// 排除注水数据
|
||||
excludeWaterInjectionData(detailVOList, pkId);
|
||||
}
|
||||
CuMemberRetailDataStatisticsDetailVO big = getBigRangePVDetailVO(detailVOList, pkId);
|
||||
bigAndSmallRangeVO.setBigRangeId(big.getPkId());
|
||||
List<Long> smallIdList = detailVOList.stream()
|
||||
.map(CuMemberRetailDataStatisticsDetailVO::getPkId).filter(id -> !id.equals(big.getPkId())).collect(Collectors.toList());
|
||||
bigAndSmallRangeVO.setSmallRangeId(smallIdList);
|
||||
return bigAndSmallRangeVO;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,18 @@
|
|||
package com.hzs.retail.member.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class BigAndSmallRangeVO implements Serializable {
|
||||
private Long bigRangeId;
|
||||
private List<Long> smallRangeId;
|
||||
}
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
package com.hzs.retail.member.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class CurrentMonthVO implements Serializable {
|
||||
private BigDecimal totalCurrentMonthPV;
|
||||
private BigDecimal smallCurrentMonthPV;
|
||||
}
|
||||
|
|
@ -1264,40 +1264,29 @@
|
|||
cm.MEMBER_CODE as memberCode,
|
||||
cm.MEMBER_NAME memberName,
|
||||
cm.PHONE phone,
|
||||
bg.PK_TRANSACTION as pkRegisterGrade,
|
||||
bgg.PK_TRANSACTION as pkSettleGrade,
|
||||
ba.PK_TRANSACTION as pkAwards,
|
||||
bamax.PK_TRANSACTION as pkMaxAwards,
|
||||
cm.pk_register_grade as pkRegisterGrade,
|
||||
cm.pk_settle_grade as pkSettleGrade,
|
||||
cm.pk_awards as pkAwards,
|
||||
cm.PK_MAX_AWARDS as pkMaxAwards,
|
||||
ma.SEX as sex,
|
||||
cm.birth_date birthDate,
|
||||
ma.ID_TYPE idType,
|
||||
ma.ID_CARD idCard,
|
||||
ma.ID_FRONT idFront,
|
||||
ma.ID_BACK idBack,
|
||||
ma.PK_PROVINCE pkProvince,
|
||||
ma.PK_CITY pkCity,
|
||||
ma.PK_COUNTY pkCounty,
|
||||
ma.ADDRESS address,
|
||||
bb.BANK_NAME bankName,
|
||||
ma.SUB_BANK_NAME subBankName,
|
||||
ma.ACCOUNT_NAME accountName,
|
||||
ma.PHONE reservedPhone,
|
||||
ma.CARD_NUMBER cardNumber,
|
||||
cm.EMAIL email,
|
||||
ma.CREATION_TIME certificationTime,
|
||||
cm.CREATION_TIME creationTime,
|
||||
cm.PAY_TIME payTime,
|
||||
cm.DIRECT_PUSH_NUMBER directPushNumber
|
||||
from CU_MEMBER cm
|
||||
left join CU_MEMBER_AUTHENTICATION ma on ma.PK_MEMBER = cm.PK_ID and ma.del_flag = 0
|
||||
left join BD_BANK bb on bb.PK_ID = ma.pk_bank
|
||||
left join BD_GRADE bg on bg.pk_id=cm.PK_REGISTER_GRADE
|
||||
left join BD_GRADE bgg on bgg.pk_id=cm.PK_SETTLE_GRADE
|
||||
left join BD_AWARDS ba on ba.pk_id=cm.PK_AWARDS
|
||||
left join BD_AWARDS baMax on baMax.pk_id=cm.PK_MAX_AWARDS
|
||||
from CU_MEMBER_AUTHENTICATION ma
|
||||
left join CU_MEMBER cm on ma.PK_MEMBER = cm.PK_ID
|
||||
left join bd_vertex ver on cm.pk_vertex = ver.pk_id
|
||||
LEFT JOIN cu_member_team ct ON ct.pk_id = cm.pk_team_code
|
||||
where cm.del_flag = 0
|
||||
and ma.del_flag = 0
|
||||
<if test="pkCountry != null">
|
||||
and cm.PK_SETTLE_COUNTRY = #{pkCountry}
|
||||
</if>
|
||||
|
|
@ -1310,8 +1299,8 @@
|
|||
<if test="memberName != null and memberName != ''">
|
||||
and cm.MEMBER_NAME like #{memberName} ||'%'
|
||||
</if>
|
||||
<if test="birthDate != null and birthDate != ''">
|
||||
and ma.ID_CARD like '%' || #{birthDate} ||'%'
|
||||
<if test="birthDate != null">
|
||||
and cm.birth_date = to_date(#{birthDate}, 'yyyy-mm-dd')
|
||||
</if>
|
||||
<if test="phone != null and phone != ''">
|
||||
and cm.PHONE = #{phone}
|
||||
|
|
@ -1331,33 +1320,9 @@
|
|||
<if test="idCard != null and idCard != ''">
|
||||
and ma.ID_CARD = #{idCard}
|
||||
</if>
|
||||
<if test="pkProvince != null">
|
||||
and ma.PK_PROVINCE = #{pkProvince}
|
||||
</if>
|
||||
<if test="pkCity != null">
|
||||
and ma.PK_CITY = #{pkCity}
|
||||
</if>
|
||||
<if test="pkCounty != null">
|
||||
and ma.PK_COUNTY = #{pkCounty}
|
||||
</if>
|
||||
<if test="address != null and address != ''">
|
||||
and ma.ADDRESS like #{address} ||'%'
|
||||
</if>
|
||||
<if test="sex != null">
|
||||
and ma.SEX = #{sex}
|
||||
</if>
|
||||
<if test="bankName != null and bankName != ''">
|
||||
and bb.BANK_NAME like #{bankName}||'%'
|
||||
</if>
|
||||
<if test="subBankName != null and subBankName != ''">
|
||||
and ma.SUB_BANK_NAME like #{subBankName}||'%'
|
||||
</if>
|
||||
<if test="cardNumber != null and cardNumber != ''">
|
||||
and ma.CARD_NUMBER like #{cardNumber}||'%'
|
||||
</if>
|
||||
<if test="email != null and email != ''">
|
||||
and cm.EMAIL like #{email}||'%'
|
||||
</if>
|
||||
<if test="startCertificationTime != null">
|
||||
and ma.CREATION_TIME >= to_date(#{startCertificationTime}, 'yyyy-mm-dd')
|
||||
</if>
|
||||
|
|
@ -2448,7 +2413,6 @@
|
|||
)
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectMemberByUnderBlood" resultType="com.hzs.common.domain.system.config.BdTradeWhiteConfig">
|
||||
SELECT pk_id pkId,
|
||||
withdrawal_state withdrawalState,
|
||||
|
|
|
|||
|
|
@ -64,86 +64,6 @@
|
|||
ORDER BY a.CREATION_TIME DESC
|
||||
</select>
|
||||
|
||||
<select id="queryMemberTeamInfoList" resultType="com.hzs.member.base.vo.MemberTeamVo">
|
||||
select
|
||||
level,cm.MEMBER_NAME memberName,cm.MEMBER_CODE memberCode,m.A_NEW_PV afirstPv,m.B_NEW_PV bfirstPv,m.REP_A_SUM_PV repASumPv,m.REP_B_SUM_PV repBSumPv,
|
||||
m.A_SUM_REAL_PV aSumRealPv, m.B_SUM_REAL_PV bSumRealPv,
|
||||
cm.PK_AWARDS pkAwards,cm.PK_ID memberId,cm.PLACE_DEPT placeDept ,m.REPURCHASE_PV repurchasePv ,cm.PK_PLACE_PARENT pkPlaceParent,
|
||||
mb.REAL_INCOME_TOTAL realIncomeTotal,m.REPURCHASE_AMOUNT repurchaseAmount,
|
||||
a.loginNumber,
|
||||
a.lastLoginTime,
|
||||
cm.CREATION_TIME creationTime,cm.PAY_TIME payTime ,cm.DIRECT_PUSH_NUMBER directPushNumber
|
||||
from cu_member cm
|
||||
left join (
|
||||
select count(ml.PK_ID) loginNumber,PK_MEMBER, max(ml.LOGIN_TIME) lastLoginTime
|
||||
from CU_MEMBER_LOGIN ml
|
||||
where ml.STATUS = 0
|
||||
group by PK_MEMBER
|
||||
) a on a.PK_MEMBER = cm.PK_ID
|
||||
left join ${settleTableName} m on cm.PK_ID = m.PK_MEMBER
|
||||
left join CU_MEMBER_BONUS mb on mb.PK_MEMBER = cm.PK_ID and mb.PERIOD = #{period}
|
||||
where cm.del_flag = 0
|
||||
<if test="pkAwards != null">
|
||||
and cm.PK_AWARDS = #{pkAwards}
|
||||
</if>
|
||||
<if test="realIncomeTotal != null">
|
||||
and mb.REAL_INCOME_TOTAL = #{realIncomeTotal}
|
||||
</if>
|
||||
<if test="consanguinityAlgebra != null">
|
||||
and level = #{consanguinityAlgebra}
|
||||
</if>
|
||||
<if test="resettleLevel != null">
|
||||
and level = #{resettleLevel}
|
||||
</if>
|
||||
<if test="placeDept != null">
|
||||
and cm.PLACE_DEPT = #{placeDept}
|
||||
</if>
|
||||
start
|
||||
with cm.MEMBER_CODE = #{memberCode}
|
||||
connect by cm.pk_parent = prior cm.pk_id
|
||||
order by level
|
||||
</select>
|
||||
|
||||
<select id="queryMemberTeamInfoPlaceParentList" resultType="com.hzs.member.base.vo.MemberTeamVo">
|
||||
select
|
||||
level,cm.MEMBER_NAME memberName,cm.MEMBER_CODE memberCode,m.A_NEW_PV afirstPv,m.B_NEW_PV bfirstPv,m.REP_A_SUM_PV repASumPv,m.REP_B_SUM_PV repBSumPv,
|
||||
m.A_SUM_REAL_PV aSumRealPv, m.B_SUM_REAL_PV bSumRealPv,
|
||||
cm.PK_AWARDS pkAwards,cm.PK_ID memberId,cm.PLACE_DEPT placeDept ,m.REPURCHASE_PV repurchasePv ,cm.PK_PLACE_PARENT pkPlaceParent,
|
||||
mb.REAL_INCOME_TOTAL realIncomeTotal,m.REPURCHASE_AMOUNT repurchaseAmount,
|
||||
a.loginNumber,
|
||||
a.lastLoginTime,
|
||||
cm.CREATION_TIME creationTime,cm.PAY_TIME payTime ,cm.DIRECT_PUSH_NUMBER directPushNumber
|
||||
from cu_member cm
|
||||
left join (
|
||||
select count(ml.PK_ID) loginNumber,PK_MEMBER, max(ml.LOGIN_TIME) lastLoginTime
|
||||
from CU_MEMBER_LOGIN ml
|
||||
where ml.STATUS = 0
|
||||
group by PK_MEMBER
|
||||
) a on a.PK_MEMBER = cm.PK_ID
|
||||
left join ${settleTableName} m on cm.PK_ID = m.PK_MEMBER
|
||||
left join CU_MEMBER_BONUS mb on mb.PK_MEMBER = cm.PK_ID and mb.PERIOD = #{period}
|
||||
where cm.del_flag = 0
|
||||
<if test="realIncomeTotal != null">
|
||||
and mb.REAL_INCOME_TOTAL = #{realIncomeTotal}
|
||||
</if>
|
||||
<if test="pkAwards != null">
|
||||
and cm.PK_AWARDS = #{pkAwards}
|
||||
</if>
|
||||
<if test="consanguinityAlgebra != null">
|
||||
and level = #{consanguinityAlgebra}
|
||||
</if>
|
||||
<if test="resettleLevel != null">
|
||||
and level = #{resettleLevel}
|
||||
</if>
|
||||
<if test="placeDept != null">
|
||||
and cm.PLACE_DEPT = #{placeDept}
|
||||
</if>
|
||||
start
|
||||
with cm.MEMBER_CODE = #{memberCode}
|
||||
connect by cm.PK_PLACE_PARENT = prior cm.pk_id
|
||||
order by level
|
||||
</select>
|
||||
|
||||
<!-- 更新团队为空 -->
|
||||
<update id="updateTeamNullById">
|
||||
update cu_member
|
||||
|
|
|
|||
|
|
@ -58,7 +58,6 @@
|
|||
<result column="REC_CITY" property="recCity"/>
|
||||
<result column="REC_COUNTY" property="recCounty"/>
|
||||
<result column="REC_ADDRESS" property="recAddress"/>
|
||||
|
||||
<collection property="itemList" ofType="com.hzs.member.self.vo.MyOrderItemsVO">
|
||||
<result column="pk_Order" property="pkOrder"/>
|
||||
<result column="PRODUCT_NAME" property="productName"/>
|
||||
|
|
@ -69,20 +68,8 @@
|
|||
<result column="ASS_ACHIEVEMENT" property="assAchievement"/>
|
||||
<result column="IS_GIFT" property="isGift"/>
|
||||
</collection>
|
||||
|
||||
</resultMap>
|
||||
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
DEL_FLAG,
|
||||
CREATION_TIME,
|
||||
MODIFIED_TIME,
|
||||
PK_COUNTRY,
|
||||
PK_CREATOR,
|
||||
PK_MODIFIED,
|
||||
PK_ID, PK_MEMBER, EDIT_TYPE, OLD_VALUE, NEW_VALUE, BUSINESS_NO, APPROVE_STATUS, APPROVE_NUMBER, EDIT_TYPE_PAY, SINGLE_AMOUNT
|
||||
</sql>
|
||||
|
||||
|
||||
<!-- 自助服务-查询已申请修改收货地址-->
|
||||
<select id="querySelfModifyAddressList" parameterType="com.hzs.member.self.vo.SelfModifyAddressVO"
|
||||
|
|
@ -232,9 +219,9 @@
|
|||
select count(0)
|
||||
from sa_order so
|
||||
where so.del_flag = 0
|
||||
and order_status in (1)
|
||||
and so.pk_creator = #{memberId}
|
||||
AND TO_CHAR(so.PAY_TIME,'YYYY-MM-DD') = TO_CHAR(SYSDATE, 'YYYY-MM-DD')
|
||||
and order_status in (1)
|
||||
and so.pk_creator = #{memberId}
|
||||
AND TO_CHAR(so.PAY_TIME, 'YYYY-MM-DD') = TO_CHAR(SYSDATE, 'YYYY-MM-DD')
|
||||
</select>
|
||||
|
||||
<!-- 根据订单ID查询订单明细列表 -->
|
||||
|
|
@ -250,7 +237,6 @@
|
|||
</foreach>
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectSelfServiceByPkMember" resultType="com.hzs.common.domain.member.self.CuSelfServiceLogExt">
|
||||
select l.*, m.member_code memberCode
|
||||
from cu_self_service_log l
|
||||
|
|
@ -267,14 +253,14 @@
|
|||
and l.business_no = #{businessNo}
|
||||
</if>
|
||||
<if test="memberCode != null and memberCode != ''">
|
||||
and m.member_code like '%'|| #{memberCode} || '%'
|
||||
and m.member_code like '%'|| #{memberCode} || '%'
|
||||
</if>
|
||||
|
||||
<if test="memberName != null and memberName != ''">
|
||||
and l.OLD_VALUE like '%'|| #{memberName} || '%'
|
||||
</if>
|
||||
<if test="phone != null and phone != ''">
|
||||
and l.OLD_VALUE like '%'|| #{phone} || '%'
|
||||
and l.OLD_VALUE like '%'|| #{phone} || '%'
|
||||
</if>
|
||||
<if test="approveStatus != null">
|
||||
and l.APPROVE_STATUS = #{approveStatus}
|
||||
|
|
@ -291,67 +277,29 @@
|
|||
|
||||
<select id="selectDomicileChangeDetail" resultType="com.hzs.common.domain.member.self.CuSelfServiceLogExt">
|
||||
select l.*, m.member_code memberCode
|
||||
from cu_self_service_log l
|
||||
left join cu_member m
|
||||
on l.pk_member = m.pk_id
|
||||
and m.del_flag = 0
|
||||
where l.del_flag = 0
|
||||
and l.pk_id = #{pkId}
|
||||
from cu_self_service_log l
|
||||
left join cu_member m
|
||||
on l.pk_member = m.pk_id
|
||||
and m.del_flag = 0
|
||||
where l.del_flag = 0
|
||||
and l.pk_id = #{pkId}
|
||||
</select>
|
||||
|
||||
<select id="selectDomicileChangeByPkMember" resultType="com.hzs.common.domain.member.self.CuSelfServiceLogExt">
|
||||
select l.*, m.member_code memberCode
|
||||
from cu_self_service_log l
|
||||
left join cu_member m
|
||||
on l.pk_member = m.pk_id
|
||||
and m.del_flag = 0
|
||||
where l.del_flag = 0
|
||||
and l.pk_member = #{pkMember}
|
||||
and l.pk_country = #{pkCountry}
|
||||
and l.edit_type = #{editType}
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectSelfServiceByBusinessNo" resultMap="BaseResultMap">
|
||||
select l.*
|
||||
from cu_self_service_log l
|
||||
where l.del_flag = 0
|
||||
from cu_self_service_log l
|
||||
where l.del_flag = 0
|
||||
and l.edit_type = #{editType}
|
||||
and l.business_no = #{businessNo}
|
||||
</select>
|
||||
|
||||
<!--查询自助服务申请的最大次数-->
|
||||
<select id="checkSelfService" resultType="java.lang.Integer">
|
||||
select count(1)
|
||||
from CU_SELF_SERVICE_LOG a
|
||||
WHERE a.PK_MEMBER=#{pkMember} and
|
||||
a.DEL_FLAG = 0 AND (a.APPROVE_STATUS =0 or a.APPROVE_STATUS =1 )
|
||||
<if test="editType != null">
|
||||
AND a.EDIT_TYPE = #{editType}
|
||||
</if>
|
||||
<if test="pkCountry != null ">
|
||||
AND a.PK_COUNTRY = #{pkCountry}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectByMaxApproveNumber" parameterType="com.hzs.common.domain.member.self.CuSelfServiceLog"
|
||||
resultType="integer">
|
||||
select nvl(max(APPROVE_NUMBER),0) from CU_SELF_SERVICE_LOG
|
||||
select nvl(max(APPROVE_NUMBER), 0)
|
||||
from CU_SELF_SERVICE_LOG
|
||||
where EDIT_TYPE = #{editType}
|
||||
and PK_MEMBER = #{pkMember}
|
||||
and APPROVE_STATUS=#{approveStatus}
|
||||
and PK_MEMBER = #{pkMember}
|
||||
and APPROVE_STATUS = #{approveStatus}
|
||||
</select>
|
||||
|
||||
<update id="updateSelfServiceByBusinessNo">
|
||||
update cu_self_service_log
|
||||
<set>
|
||||
<if test="approveStatus != null">approve_status = #{approveStatus},</if>
|
||||
<if test="approveTime != null">approve_time = #{approveTime},</if>
|
||||
<if test="pkModified != null">pk_modified = #{pkModified},</if>
|
||||
modified_time = sysdate
|
||||
</set>
|
||||
where BUSINESS_NO = #{businessNo}
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -1,15 +1,20 @@
|
|||
package com.hzs.retail.sale.controller.service.impl;
|
||||
|
||||
import cn.hutool.core.codec.Base64Encoder;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.lang.Validator;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import cn.hutool.http.HttpUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.hzs.common.core.config.BdConfig;
|
||||
import com.hzs.common.core.constant.*;
|
||||
import com.hzs.common.core.domain.R;
|
||||
import com.hzs.common.core.enums.*;
|
||||
import com.hzs.common.core.exception.ServiceException;
|
||||
import com.hzs.common.core.service.RedisService;
|
||||
import com.hzs.common.core.utils.*;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.domain.member.account.CuMemberAccount;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.member.ext.CuMemberAccountExt;
|
||||
|
|
@ -17,6 +22,7 @@ import com.hzs.common.domain.sale.ext.BdWaresDetailExt;
|
|||
import com.hzs.common.domain.sale.ext.SaOrderExt;
|
||||
import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt;
|
||||
import com.hzs.common.domain.sale.order.*;
|
||||
import com.hzs.common.domain.sale.product.BdProduct;
|
||||
import com.hzs.common.domain.sale.wares.BdWaresRange;
|
||||
import com.hzs.common.domain.system.base.BdStorehouse;
|
||||
import com.hzs.common.domain.system.config.BdAwards;
|
||||
|
|
@ -34,6 +40,7 @@ import com.hzs.sale.order.param.OrderItemsParam;
|
|||
import com.hzs.sale.order.param.WaresNumberParam;
|
||||
import com.hzs.sale.order.service.*;
|
||||
import com.hzs.sale.order.service.impl.SaOrderHandle;
|
||||
import com.hzs.sale.product.service.IBdProductService;
|
||||
import com.hzs.sale.wares.service.IBdWaresDetailService;
|
||||
import com.hzs.sale.wares.service.IBdWaresExtendService;
|
||||
import com.hzs.sale.wares.service.IBdWaresRangeService;
|
||||
|
|
@ -84,6 +91,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
|
|||
private ISaOrderTempService iSaOrderTempService;
|
||||
@Autowired
|
||||
private ISaOrderWaresLimitService iSaOrderWaresLimitService;
|
||||
@Autowired
|
||||
private IBdProductService iBdProductService;
|
||||
@Autowired
|
||||
private ISaOrderSyncService iSaOrderSyncService;
|
||||
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
|
|
@ -704,6 +715,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
|
|||
*/
|
||||
private void pushOrderMq(SaOrderExt saOrderExt) {
|
||||
try {
|
||||
// 同步全网产品库存
|
||||
this.allProductSync(saOrderExt);
|
||||
|
||||
if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()
|
||||
|| EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()
|
||||
|| EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()
|
||||
|
|
@ -723,8 +737,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
|
|||
@Override
|
||||
public String onlinePaymentCallBack(Long pkMember, String orderCode) {
|
||||
String resultStr;
|
||||
// 临时订单信息
|
||||
SaOrderTemp saOrderTemp = null;
|
||||
|
||||
// 获取缓存订单
|
||||
SaOrderExt saOrderExt = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + pkMember + orderCode);
|
||||
|
|
@ -1045,4 +1057,58 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 同步全网产品库存
|
||||
*
|
||||
* @param saOrderExt
|
||||
*/
|
||||
private void allProductSync(SaOrderExt saOrderExt) {
|
||||
if (EYesNo.NO.getIntValue() == BdConfig.getProductSync()) {
|
||||
return;
|
||||
}
|
||||
Map<Integer, BdProduct> productMap = iBdProductService.queryProductMap(saOrderExt.getOrderItemsList().stream().map(SaOrderItems::getPkProduct).collect(Collectors.toSet()), null);
|
||||
// 开启线程调用全网产品库存
|
||||
// 请求参数
|
||||
Map<String, Object> bodyMap = new HashMap<>();
|
||||
bodyMap.put("source", BdConfig.getSysName());
|
||||
bodyMap.put("orderCode", saOrderExt.getOrderCode());
|
||||
List<Map<String, Object>> bodyDetailList = new ArrayList<>();
|
||||
for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) {
|
||||
Map<String, Object> detailMap = new HashMap<>();
|
||||
detailMap.put("wmsCode", productMap.get(saOrderItems.getPkProduct()).getWmsCode());
|
||||
detailMap.put("changeNum", saOrderItems.getQuantity());
|
||||
bodyDetailList.add(detailMap);
|
||||
}
|
||||
bodyMap.put("detailList", bodyDetailList);
|
||||
// 请求头
|
||||
String header = Base64Encoder.encode(BdConfig.getSysName() + "!" + saOrderExt.getOrderCode());
|
||||
ThreadUtils.threadPoolExecutor.submit(() -> {
|
||||
log.info("同步产品,header: {}", header);
|
||||
log.info("同步产品,bodyMap: {}", bodyMap);
|
||||
HttpRequest httpRequest = HttpUtil.createPost(BdConfig.getProductSyncUrl());
|
||||
httpRequest.header("authorization", header);
|
||||
httpRequest.body(JSONUtil.toJsonStr(bodyMap));
|
||||
httpRequest.setReadTimeout(5000);
|
||||
try {
|
||||
// 同步产品接口返回
|
||||
String resultStr = httpRequest.execute().body();
|
||||
AjaxResult ajaxResult = JSONUtil.toBean(resultStr, AjaxResult.class);
|
||||
log.info("同步产品,resultStr: {}", resultStr);
|
||||
if (!ajaxResult.isSuccess()) {
|
||||
// 同步产品失败,250毫秒后重试
|
||||
Thread.sleep(250);
|
||||
resultStr = httpRequest.execute().body();
|
||||
log.info("同步产品失败重试,resultStr: {}", resultStr);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("同步产品库存异常", e);
|
||||
// 保存订单产品同步记录
|
||||
iSaOrderSyncService.save(SaOrderSync.builder()
|
||||
.orderCode(saOrderExt.getOrderCode())
|
||||
.bodyDetail(JSONUtil.toJsonStr(bodyDetailList))
|
||||
.build());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -203,7 +203,6 @@ public class SaDeliverHandledController extends BaseController {
|
|||
.productName(deliverHandled.getProductName())
|
||||
.specsName(deliverHandled.getSpecsName())
|
||||
.quantity(deliverHandled.getQuantity())
|
||||
.price(BigDecimal.ZERO)
|
||||
.build();
|
||||
if (!deliverCode.equals(deliverHandled.getDeliverCode())) {
|
||||
deliverCode = deliverHandled.getDeliverCode();
|
||||
|
|
|
|||
|
|
@ -50,11 +50,7 @@ import java.util.*;
|
|||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: 发货清单未合单控制器
|
||||
* @Author: jiang chao
|
||||
* @Time: 2022/10/28 11:24
|
||||
* @Classname: SaDeliverOrderController
|
||||
* @PackageName: com.hzs.sale.deliver.controller.manage
|
||||
* 发货清单未合单控制器
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/manage/deliver-unhandled")
|
||||
|
|
@ -102,22 +98,10 @@ public class SaDeliverUnhandledController extends BaseController {
|
|||
param.setSystemType(SecurityUtils.getSystemType());
|
||||
// 未合单目前查询状态(已付款)
|
||||
param.setOrderStatusList(Collections.singletonList(EOrderStatus.PAY.getValue()));
|
||||
// 查询语句已经写死查询【在售】,此处可以直接赋空
|
||||
param.setPreSaleStatus(null);
|
||||
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
// 返回数据
|
||||
List<DeliverUnhandledVO> resultList = new ArrayList<>();
|
||||
|
||||
if (StringUtils.isNotEmpty(param.getOriginalOrderCode())) {
|
||||
// 原单号不为空,则需要查询
|
||||
LambdaQueryWrapper<SaOrder> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SaOrder::getOrderCode, param.getOriginalOrderCode());
|
||||
queryWrapper.eq(SaOrder::getPkCountry, pkCountry);
|
||||
SaOrder querySaOrder = iSaOrderService.getOne(queryWrapper);
|
||||
if (null == querySaOrder) {
|
||||
return getDataTable(resultList);
|
||||
}
|
||||
param.setPkOriginalOrder(querySaOrder.getPkId());
|
||||
}
|
||||
|
||||
// 获取管理员权限(角色地区范围、体系列表、团队列表)
|
||||
UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData();
|
||||
|
|
@ -126,7 +110,7 @@ public class SaDeliverUnhandledController extends BaseController {
|
|||
param.setTeamList(userAuthorityDTO.getUserTeamList());
|
||||
|
||||
startPage();
|
||||
resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry);
|
||||
List<DeliverUnhandledVO> resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry);
|
||||
|
||||
// 当查询有数据才进行处理
|
||||
if (resultList.size() > 0) {
|
||||
|
|
@ -157,23 +141,10 @@ public class SaDeliverUnhandledController extends BaseController {
|
|||
param.setSystemType(SecurityUtils.getSystemType());
|
||||
// 未合单目前查询状态(已付款)
|
||||
param.setOrderStatusList(Collections.singletonList(EOrderStatus.PAY.getValue()));
|
||||
// 查询语句已经写死查询【在售】,此处可以直接赋空
|
||||
param.setPreSaleStatus(null);
|
||||
|
||||
Integer pkCountry = SecurityUtils.getPkCountry();
|
||||
// 返回数据
|
||||
List<DeliverUnhandledVO> resultList = new ArrayList<>();
|
||||
if (StringUtils.isNotEmpty(param.getOriginalOrderCode())) {
|
||||
// 原单号不为空,则需要查询
|
||||
LambdaQueryWrapper<SaOrder> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SaOrder::getOrderCode, param.getOriginalOrderCode());
|
||||
queryWrapper.eq(SaOrder::getPkCountry, pkCountry);
|
||||
SaOrder querySaOrder = iSaOrderService.getOne(queryWrapper);
|
||||
if (null == querySaOrder) {
|
||||
ExcelUtil<DeliverUnhandledVO> util = new ExcelUtil<>(DeliverUnhandledVO.class);
|
||||
util.exportExcel(response, resultList, "发货清单未合单导出");
|
||||
return;
|
||||
}
|
||||
param.setPkOriginalOrder(querySaOrder.getPkId());
|
||||
}
|
||||
|
||||
// 获取管理员权限(角色地区范围、体系列表、团队列表)
|
||||
UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData();
|
||||
|
|
@ -181,7 +152,7 @@ public class SaDeliverUnhandledController extends BaseController {
|
|||
param.setVertexIdList(userAuthorityDTO.getVertexIdList());
|
||||
param.setTeamList(userAuthorityDTO.getUserTeamList());
|
||||
|
||||
resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry);
|
||||
List<DeliverUnhandledVO> resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry);
|
||||
|
||||
// 当查询有数据才进行处理
|
||||
if (resultList.size() > 0) {
|
||||
|
|
|
|||
|
|
@ -149,15 +149,6 @@ public class DeliverUnhandledParam extends BaseAuthorityEntity {
|
|||
*/
|
||||
private String specsName;
|
||||
|
||||
/**
|
||||
* 原单号
|
||||
*/
|
||||
private String originalOrderCode;
|
||||
/**
|
||||
* 原单号ID
|
||||
*/
|
||||
private Long pkOriginalOrder;
|
||||
|
||||
/**
|
||||
* 发货仓库
|
||||
*/
|
||||
|
|
@ -187,4 +178,9 @@ public class DeliverUnhandledParam extends BaseAuthorityEntity {
|
|||
*/
|
||||
private Long pkVertex;
|
||||
|
||||
/**
|
||||
* 非售商品列表
|
||||
*/
|
||||
private List<Integer> pkWaresList;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -236,12 +236,6 @@ public class DeliverUnhandledVO {
|
|||
@Excel(name = "预售状态")
|
||||
private String preSaleStatusVal;
|
||||
|
||||
/**
|
||||
* 原单号
|
||||
*/
|
||||
@Excel(name = "原单号")
|
||||
private String originalOrderCode;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -18,89 +18,53 @@ import java.math.BigDecimal;
|
|||
@Data
|
||||
public class DeliverWmsVO implements Serializable {
|
||||
|
||||
@Excel(name = "<必填>订单号")
|
||||
@Excel(name = "平台订单号")
|
||||
private String deliverCode;
|
||||
|
||||
@Excel(name = "下单时间")
|
||||
private String createTime;
|
||||
@Excel(name = "付款时间")
|
||||
private String payTime;
|
||||
|
||||
@Excel(name = "交易类型")
|
||||
private String payType;
|
||||
@Excel(name = "业务员")
|
||||
private String peopleName;
|
||||
@Excel(name = "备注")
|
||||
private String orderRemark;
|
||||
@Excel(name = "买家留言")
|
||||
private String buyRemark;
|
||||
@Excel(name = "系统备注")
|
||||
private String sysRemark;
|
||||
@Excel(name = "仓库")
|
||||
private String storeName;
|
||||
@Excel(name = "总金额")
|
||||
private BigDecimal totalAmount;
|
||||
@Excel(name = "运费")
|
||||
private String postAmount;
|
||||
@Excel(name = "实付总额")
|
||||
private String realTotalAmount;
|
||||
@Excel(name = "本次收款")
|
||||
private String receiveAmount;
|
||||
@Excel(name = "结算账户")
|
||||
private String settleAccount;
|
||||
|
||||
@Excel(name = "<必填>收货人姓名")
|
||||
@Excel(name = "收件人姓名")
|
||||
private String recName;
|
||||
|
||||
@Excel(name = "手机")
|
||||
@Excel(name = "收件人手机号/电话")
|
||||
private String recPhone;
|
||||
|
||||
@Excel(name = "固话")
|
||||
private String fixedPhone;
|
||||
|
||||
@Excel(name = "<必填>地址")
|
||||
@Excel(name = "收件人地址")
|
||||
private String recAddress;
|
||||
|
||||
@Excel(name = "邮编")
|
||||
private String postal;
|
||||
|
||||
@Excel(name = "电子邮箱")
|
||||
private String email;
|
||||
|
||||
@Excel(name = "<必填>商品编码")
|
||||
@Excel(name = "商家编码")
|
||||
private String wmsCode;
|
||||
|
||||
@Excel(name = "产品名称")
|
||||
@Excel(name = "货品信息")
|
||||
private String productName;
|
||||
|
||||
@Excel(name = "规格名称")
|
||||
@Excel(name = "规格信息")
|
||||
private String specsName;
|
||||
|
||||
@Excel(name = "<必填>数量")
|
||||
@Excel(name = "货品数量")
|
||||
private Integer quantity;
|
||||
|
||||
@Excel(name = "单价")
|
||||
private BigDecimal price;
|
||||
|
||||
@Excel(name = "实付")
|
||||
private BigDecimal realPay;
|
||||
|
||||
@Excel(name = "配送方式")
|
||||
private String delivery;
|
||||
|
||||
@Excel(name = "明细备注")
|
||||
private String remark;
|
||||
|
||||
@Excel(name = "批次号")
|
||||
private String batchNo;
|
||||
|
||||
@Excel(name = "生产日期")
|
||||
private String produceDate;
|
||||
|
||||
@Excel(name = "过期日期")
|
||||
private String expireDate;
|
||||
|
||||
|
||||
|
||||
@Excel(name = "货品单价")
|
||||
private String str1;
|
||||
@Excel(name = "金额小计")
|
||||
private String str2;
|
||||
@Excel(name = "邮费收入")
|
||||
private String str3;
|
||||
@Excel(name = "店铺")
|
||||
private String str4;
|
||||
@Excel(name = "买家留言")
|
||||
private String str5;
|
||||
@Excel(name = "客服备注")
|
||||
private String str6;
|
||||
@Excel(name = "买家昵称")
|
||||
private String str7;
|
||||
@Excel(name = "主播ID")
|
||||
private String str8;
|
||||
@Excel(name = "主播名称")
|
||||
private String str9;
|
||||
@Excel(name = "业务员")
|
||||
private String str10;
|
||||
@Excel(name = "付款类型")
|
||||
private String str11;
|
||||
@Excel(name = "下单时间")
|
||||
private String str12;
|
||||
@Excel(name = "付款时间")
|
||||
private String str13;
|
||||
@Excel(name = "仓库")
|
||||
private String str14;
|
||||
@Excel(name = "快递公司")
|
||||
private String str15;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,7 +31,6 @@ import com.hzs.sale.shopping.vo.ProductGroup;
|
|||
import com.hzs.sale.shopping.vo.ShoppingCartRedis;
|
||||
import com.hzs.sale.shopping.vo.ShoppingCartVO;
|
||||
import com.hzs.system.base.IAreaServiceApi;
|
||||
import com.hzs.system.base.ICurrencyServiceApi;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
|
@ -45,8 +44,6 @@ public abstract class ParentOrderController extends BaseController {
|
|||
|
||||
@DubboReference
|
||||
IAreaServiceApi iAreaServiceApi;
|
||||
@DubboReference
|
||||
ICurrencyServiceApi currencyServiceApi;
|
||||
|
||||
private ISaOrderService orderService;
|
||||
|
||||
|
|
@ -405,8 +402,7 @@ public abstract class ParentOrderController extends BaseController {
|
|||
* @return boolean
|
||||
*/
|
||||
protected Boolean checkRecMsgBoolean(OrderParam orderParam) {
|
||||
if (orderParam.getDeliveryWay() != null && (EDelivery.COMPANY_PICKED_UP.getValue() == orderParam.getDeliveryWay() ||
|
||||
EDelivery.SHOP_PICKED_UP.getValue() == orderParam.getDeliveryWay())) {
|
||||
if (orderParam.getDeliveryWay() != null && (EDelivery.COMPANY_PICKED_UP.getValue() == orderParam.getDeliveryWay())) {
|
||||
orderParam.setTransType(null);
|
||||
return orderParam.getSpecialArea() != null
|
||||
&& orderParam.getOrderItemsParams() != null
|
||||
|
|
|
|||
|
|
@ -49,10 +49,6 @@ public class ApiOthSaOrderController extends ParentOrderController {
|
|||
return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY));
|
||||
}
|
||||
|
||||
if (!orderService.checkPreSalesQuantity(orderParam)) {
|
||||
// 商品预售数量不足
|
||||
return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.WARES_PRE_SALE_QUANTITY_LACK));
|
||||
}
|
||||
if (orderParam.getSpecialArea() != EOrderType.REGISTER_ORDER.getValue()) {
|
||||
convertShoppingCarToSku(orderParam);
|
||||
if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()
|
||||
|
|
|
|||
|
|
@ -68,11 +68,6 @@ public class ApiRegSaOrderController extends ParentOrderController {
|
|||
}
|
||||
orderParam.setSource(source);
|
||||
|
||||
if (!orderService.checkPreSalesQuantity(orderParam)) {
|
||||
// 商品预售数量不足
|
||||
return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.WARES_PRE_SALE_QUANTITY_LACK));
|
||||
}
|
||||
|
||||
AjaxResult result = validateSaveMember(orderParam);
|
||||
if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) {
|
||||
return result;
|
||||
|
|
|
|||
|
|
@ -34,27 +34,19 @@ import java.util.*;
|
|||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @BelongsProject: hzs_cloud
|
||||
* @BelongsPackage: com.hzs.sale.order.controller.manage
|
||||
* @Author: yh
|
||||
* @CreateTime: 2023-04-11 10:22
|
||||
* @Description:
|
||||
* @Version: 1.0
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/manage/order-charge-log")
|
||||
public class SaOrderChargeLogController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ITransactionCommonService transactionCommonService;
|
||||
private ITransactionCommonService iTransactionCommonService;
|
||||
@Autowired
|
||||
private ISaOrderChargeLogService orderChargeLogService;
|
||||
private ISaOrderChargeLogService iSaOrderChargeLogService;
|
||||
|
||||
@DubboReference
|
||||
IVertexServiceApi vertexServiceApi;
|
||||
IVertexServiceApi iVertexServiceApi;
|
||||
@DubboReference
|
||||
IAreaServiceApi areaServiceApi;
|
||||
IAreaServiceApi iAreaServiceApi;
|
||||
|
||||
/**
|
||||
* 撤单信息列表
|
||||
|
|
@ -96,18 +88,18 @@ public class SaOrderChargeLogController extends BaseController {
|
|||
}
|
||||
|
||||
startPage();
|
||||
List<SaOrderChargeLogExt> list = orderChargeLogService.cancellationList(orderChargeLogParam);
|
||||
List<SaOrderChargeLogExt> list = iSaOrderChargeLogService.cancellationList(orderChargeLogParam);
|
||||
List<OrderChargeLogVo> resultList = new ArrayList<>();
|
||||
|
||||
if (CollectionUtil.isNotEmpty(list)) {
|
||||
// 地区
|
||||
R<Map<Integer, String>> areaMap = areaServiceApi.getAreaMap(SecurityUtils.getPkCountry());
|
||||
R<Map<Integer, String>> areaMap = iAreaServiceApi.getAreaMap(SecurityUtils.getPkCountry());
|
||||
// 体系
|
||||
R<List<VertexDTO>> vertexAll = vertexServiceApi.findAll();
|
||||
R<List<VertexDTO>> vertexAll = iVertexServiceApi.findAll();
|
||||
Map<Long, VertexDTO> vertexMap = vertexAll.getData().stream().collect(Collectors.toMap(VertexDTO::getPkId, Function.identity()));
|
||||
|
||||
Map<String, String> transactionMap = transactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EPresaleStatus.values(),
|
||||
ESupplyWay.values(), EDelivery.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(),
|
||||
Map<String, String> transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(),
|
||||
EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(),
|
||||
EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values());
|
||||
|
||||
for (SaOrderChargeLogExt orderChargeLogExt : list) {
|
||||
|
|
@ -195,13 +187,9 @@ public class SaOrderChargeLogController extends BaseController {
|
|||
// 发货时间
|
||||
orderChargeLogVo.setDeliveryTime(orderChargeLogExt.getDeliveryTime());
|
||||
// 发货方式
|
||||
if (orderChargeLogExt.getDeliveryWay() != null) {
|
||||
orderChargeLogVo.setDeliveryWayStr(transactionMap.get(EDelivery.getDelivery(orderChargeLogExt.getDeliveryWay()).getKey()));
|
||||
}
|
||||
orderChargeLogVo.setDeliveryWayStr(EDelivery.getLabelByValue(orderChargeLogExt.getDeliveryWay()));
|
||||
//销售方式
|
||||
if (orderChargeLogExt.getOperateScope() != null && ESupplyWay.getESupplyWay(orderChargeLogExt.getOperateScope()) != null) {
|
||||
orderChargeLogVo.setOperateScopeStr(transactionMap.get(ESupplyWay.getESupplyWay(orderChargeLogExt.getOperateScope()).getKey()));
|
||||
}
|
||||
orderChargeLogVo.setOperateScopeStr(ESupplyWay.getLabelByVal(orderChargeLogExt.getOperateScope()));
|
||||
// 运输方式
|
||||
List<String> tranList = new ArrayList<>();
|
||||
if (orderChargeLogExt.getIsLandTrans() != null && orderChargeLogExt.getIsLandTrans().equals(0)) {
|
||||
|
|
@ -213,13 +201,9 @@ public class SaOrderChargeLogController extends BaseController {
|
|||
}
|
||||
orderChargeLogVo.setTranTypeStr(StringUtils.join(tranList, ","));
|
||||
// 预售状态
|
||||
if (orderChargeLogExt.getPreSaleStatus() != null) {
|
||||
orderChargeLogVo.setPreSaleStatusStr(transactionMap.get(EPresaleStatus.getEPresaleStatus(orderChargeLogExt.getPreSaleStatus()).getKey()));
|
||||
}
|
||||
orderChargeLogVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(orderChargeLogExt.getPreSaleStatus()));
|
||||
// 支付方式
|
||||
if (orderChargeLogExt.getPayType() != null && EOrderPayType.getEnumByValue(orderChargeLogExt.getPayType()) != null) {
|
||||
orderChargeLogVo.setPayTypeStr(EOrderPayType.getEnumByValue(orderChargeLogExt.getPayType()).getLabel());
|
||||
}
|
||||
orderChargeLogVo.setPayTypeStr(EOrderPayType.getLabelByValue(orderChargeLogExt.getPayType()));
|
||||
// 撤单人
|
||||
orderChargeLogVo.setCreatorName(orderChargeLogExt.getCancelTheOrderName());
|
||||
// 终审
|
||||
|
|
@ -278,18 +262,18 @@ public class SaOrderChargeLogController extends BaseController {
|
|||
orderChargeLogParam.setEndCancelOrderTime(DateUtils.getEndTime(orderChargeLogParam.getEndCancelOrderTime()));
|
||||
}
|
||||
|
||||
List<SaOrderChargeLogExt> list = orderChargeLogService.cancellationList(orderChargeLogParam);
|
||||
List<SaOrderChargeLogExt> list = iSaOrderChargeLogService.cancellationList(orderChargeLogParam);
|
||||
List<OrderChargeLogVo> resultList = new ArrayList<>();
|
||||
|
||||
if (CollectionUtil.isNotEmpty(list)) {
|
||||
// 地区
|
||||
R<Map<Integer, String>> areaMap = areaServiceApi.getAreaMap(SecurityUtils.getPkCountry());
|
||||
R<Map<Integer, String>> areaMap = iAreaServiceApi.getAreaMap(SecurityUtils.getPkCountry());
|
||||
// 体系
|
||||
R<List<VertexDTO>> vertexAll = vertexServiceApi.findAll();
|
||||
R<List<VertexDTO>> vertexAll = iVertexServiceApi.findAll();
|
||||
Map<Long, VertexDTO> vertexMap = vertexAll.getData().stream().collect(Collectors.toMap(VertexDTO::getPkId, Function.identity()));
|
||||
|
||||
Map<String, String> transactionMap = transactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EPresaleStatus.values(),
|
||||
ESupplyWay.values(), EDelivery.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(),
|
||||
Map<String, String> transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(),
|
||||
EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(),
|
||||
EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values());
|
||||
|
||||
for (SaOrderChargeLogExt orderChargeLogExt : list) {
|
||||
|
|
@ -377,13 +361,9 @@ public class SaOrderChargeLogController extends BaseController {
|
|||
// 发货时间
|
||||
orderChargeLogVo.setDeliveryTime(orderChargeLogExt.getDeliveryTime());
|
||||
// 发货方式
|
||||
if (orderChargeLogExt.getDeliveryWay() != null) {
|
||||
orderChargeLogVo.setDeliveryWayStr(transactionMap.get(EDelivery.getDelivery(orderChargeLogExt.getDeliveryWay()).getKey()));
|
||||
}
|
||||
orderChargeLogVo.setDeliveryWayStr(EDelivery.getLabelByValue(orderChargeLogExt.getDeliveryWay()));
|
||||
//销售方式
|
||||
if (orderChargeLogExt.getOperateScope() != null && ESupplyWay.getESupplyWay(orderChargeLogExt.getOperateScope()) != null) {
|
||||
orderChargeLogVo.setOperateScopeStr(transactionMap.get(ESupplyWay.getESupplyWay(orderChargeLogExt.getOperateScope()).getKey()));
|
||||
}
|
||||
orderChargeLogVo.setOperateScopeStr(ESupplyWay.getLabelByVal(orderChargeLogExt.getOperateScope()));
|
||||
// 运输方式
|
||||
List<String> tranList = new ArrayList<>();
|
||||
if (orderChargeLogExt.getIsLandTrans() != null && orderChargeLogExt.getIsLandTrans().equals(0)) {
|
||||
|
|
@ -395,13 +375,9 @@ public class SaOrderChargeLogController extends BaseController {
|
|||
}
|
||||
orderChargeLogVo.setTranTypeStr(StringUtils.join(tranList, ","));
|
||||
// 预售状态
|
||||
if (orderChargeLogExt.getPreSaleStatus() != null) {
|
||||
orderChargeLogVo.setPreSaleStatusStr(transactionMap.get(EPresaleStatus.getEPresaleStatus(orderChargeLogExt.getPreSaleStatus()).getKey()));
|
||||
}
|
||||
orderChargeLogVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(orderChargeLogExt.getPreSaleStatus()));
|
||||
// 支付方式
|
||||
if (orderChargeLogExt.getPayType() != null && EOrderPayType.getEnumByValue(orderChargeLogExt.getPayType()) != null) {
|
||||
orderChargeLogVo.setPayTypeStr(EOrderPayType.getEnumByValue(orderChargeLogExt.getPayType()).getLabel());
|
||||
}
|
||||
orderChargeLogVo.setPayTypeStr(EOrderPayType.getLabelByValue(orderChargeLogExt.getPayType()));
|
||||
// 撤单人
|
||||
orderChargeLogVo.setCreatorName(orderChargeLogExt.getCancelTheOrderName());
|
||||
// 终审
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ import cn.hutool.core.collection.CollectionUtil;
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.hzs.common.core.annotation.AccessPermissions;
|
||||
import com.hzs.common.core.annotation.Log;
|
||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
||||
import com.hzs.common.core.enums.*;
|
||||
import com.hzs.common.core.utils.DateUtils;
|
||||
import com.hzs.common.core.utils.StringUtils;
|
||||
|
|
@ -15,7 +14,6 @@ import com.hzs.common.core.web.page.TableDataInfo;
|
|||
import com.hzs.common.domain.sale.ext.SaOrderItemsExt;
|
||||
import com.hzs.common.domain.sale.order.SaOrderRemarks;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.service.ITransactionCommonService;
|
||||
import com.hzs.sale.order.controller.ParentOrderController;
|
||||
import com.hzs.sale.order.dto.OrderBusinessTemplate;
|
||||
import com.hzs.sale.order.param.*;
|
||||
|
|
@ -41,20 +39,12 @@ import java.util.stream.Collectors;
|
|||
|
||||
/**
|
||||
* 订单控制类
|
||||
*
|
||||
* @author: sui q
|
||||
* @time: 2022/8/27 16:20
|
||||
* @description:
|
||||
* @classname: OrderController
|
||||
* @package_name: com.hzs.sale.order.controller
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/manage/order")
|
||||
@Slf4j
|
||||
public class SaOrderController extends ParentOrderController {
|
||||
|
||||
@Autowired
|
||||
private ITransactionCommonService iTransactionCommonService;
|
||||
@Autowired
|
||||
private ISaOrderService orderService;
|
||||
@Autowired
|
||||
|
|
@ -116,49 +106,18 @@ public class SaOrderController extends ParentOrderController {
|
|||
if (waresOrderVo.getRecCountry() != null) {
|
||||
waresOrderVo.setRecCountryName(areaMap.get(waresOrderVo.getRecCountry()));
|
||||
}
|
||||
// 发货方式
|
||||
if (null != waresOrderVo.getDeliveryWay()) {
|
||||
EDelivery eDelivery = EDelivery.getDelivery(waresOrderVo.getDeliveryWay());
|
||||
if (null != eDelivery) {
|
||||
waresOrderVo.setDeliveryWayStr(eDelivery.getLabel());
|
||||
}
|
||||
}
|
||||
// 运输方式
|
||||
if (waresOrderVo.getTranType() != null) {
|
||||
waresOrderVo.setTranTypeStr(ETransportType.getETransportType(waresOrderVo.getTranType()).getLabel());
|
||||
}
|
||||
// 预售状态
|
||||
if (waresOrderVo.getPreSaleStatus() != null) {
|
||||
waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()).getLabel());
|
||||
}
|
||||
// 订单状态
|
||||
if (waresOrderVo.getOrderStatus() != null) {
|
||||
EOrderStatus orderStatusEnum = EOrderStatus.getEOrderStatus(waresOrderVo.getOrderStatus());
|
||||
if (orderStatusEnum != null) {
|
||||
waresOrderVo.setOrderStatusStr(orderStatusEnum.getLabel());
|
||||
}
|
||||
}
|
||||
// 支付方式
|
||||
if (waresOrderVo.getPayType() != null) {
|
||||
EOrderPayType eOrderPayType = EOrderPayType.getEnumByValue(waresOrderVo.getPayType());
|
||||
if (null != eOrderPayType) {
|
||||
waresOrderVo.setPayTypeStr(eOrderPayType.getLabel());
|
||||
}
|
||||
}
|
||||
// 订单类型
|
||||
if (waresOrderVo.getOrderType() != null) {
|
||||
EOrderType eOrderType = EOrderType.getEnumByValue(waresOrderVo.getOrderType());
|
||||
if (null != eOrderType) {
|
||||
waresOrderVo.setOrderTypeStr(eOrderType.getLabel());
|
||||
}
|
||||
}
|
||||
// 供应方式
|
||||
if (StringUtils.isNotBlank(waresOrderVo.getOperateScope())) {
|
||||
ESupplyWay eSupplyWay = ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope()));
|
||||
if (null != eSupplyWay) {
|
||||
waresOrderVo.setOperateScope(eSupplyWay.getLabel());
|
||||
}
|
||||
}
|
||||
waresOrderVo.setOrderTypeStr(EOrderType.getLabelByValue(waresOrderVo.getOrderType()));
|
||||
// 发货方式
|
||||
waresOrderVo.setDeliveryWayStr(EDelivery.getLabelByValue(waresOrderVo.getDeliveryWay()));
|
||||
// 运输方式
|
||||
waresOrderVo.setTranTypeStr(ETransportType.getLabelByValue(waresOrderVo.getTranType()));
|
||||
// 预售状态
|
||||
waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(waresOrderVo.getPreSaleStatus()));
|
||||
// 订单状态
|
||||
waresOrderVo.setOrderStatusStr(EOrderStatus.getLabelByValue(waresOrderVo.getOrderStatus()));
|
||||
// 支付方式
|
||||
waresOrderVo.setPayTypeStr(EOrderPayType.getLabelByValue(waresOrderVo.getPayType()));
|
||||
}
|
||||
return getDataTable(resultList);
|
||||
}
|
||||
|
|
@ -192,10 +151,7 @@ public class SaOrderController extends ParentOrderController {
|
|||
waresOrderParam.setAreaScopeList(userAuthorityDTO.getRoleAreaScopeList());
|
||||
waresOrderParam.setVertexIdList(userAuthorityDTO.getVertexIdList());
|
||||
waresOrderParam.setTeamList(userAuthorityDTO.getUserTeamList());
|
||||
// startPage();
|
||||
List<WaresOrderVo> resultList = orderService.selectByOrderInfoList(waresOrderParam);
|
||||
// 获取需要翻译的枚举翻译
|
||||
Map<String, String> transactionMap = iTransactionCommonService.exportEnumTransaction(EDelivery.values(), ESupplyWay.values(), ETransportType.values(), EPresaleStatus.values(), EOrderType.values(), EOrderStatus.values(), EOrderPayType.values(), ESaleType.values(), EShippingChannel.values());
|
||||
for (WaresOrderVo waresOrderVo : resultList) {
|
||||
// 省
|
||||
if (waresOrderVo.getRecProvince() != null) {
|
||||
|
|
@ -209,39 +165,18 @@ public class SaOrderController extends ParentOrderController {
|
|||
if (waresOrderVo.getRecCountry() != null) {
|
||||
waresOrderVo.setRecCountryName(areaMap.get(waresOrderVo.getRecCountry()));
|
||||
}
|
||||
// 发货方式
|
||||
waresOrderVo.setDeliveryWayStr(EDelivery.getDelivery(waresOrderVo.getDeliveryWay()).getLabel());
|
||||
// 运输方式
|
||||
if (waresOrderVo.getTranType() != null && ETransportType.getETransportType(waresOrderVo.getTranType()) != null) {
|
||||
waresOrderVo.setTranTypeStr(ETransportType.getETransportType(waresOrderVo.getTranType()).getLabel());
|
||||
}
|
||||
// 预售状态
|
||||
if (waresOrderVo.getPreSaleStatus() != null && EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()) != null) {
|
||||
waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()).getLabel());
|
||||
}
|
||||
// 订单状态
|
||||
if (waresOrderVo.getOrderStatus() != null) {
|
||||
EOrderStatus orderStatusEnum = EOrderStatus.getEOrderStatus(waresOrderVo.getOrderStatus());
|
||||
if (orderStatusEnum != null) {
|
||||
waresOrderVo.setOrderStatusStr(orderStatusEnum.getLabel());
|
||||
}
|
||||
}
|
||||
// 支付方式
|
||||
if (waresOrderVo.getPayType() != null) {
|
||||
waresOrderVo.setPayTypeStr(EOrderPayType.getEnumByValue(waresOrderVo.getPayType()).getLabel());
|
||||
}
|
||||
// 订单类型
|
||||
if (waresOrderVo.getOrderType() != null) {
|
||||
waresOrderVo.setOrderTypeVal(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + waresOrderVo.getOrderType()));
|
||||
}
|
||||
// 供应方式
|
||||
if (StringUtils.isNotBlank(waresOrderVo.getOperateScope()) && ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())) != null) {
|
||||
waresOrderVo.setOperateScope(ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())).getLabel());
|
||||
}
|
||||
// 发货类型
|
||||
waresOrderVo.setShippingChannelVal(transactionMap.get(EnumsPrefixConstants.E_SHIPPING_CHANNEL + waresOrderVo.getShippingChannel()));
|
||||
waresOrderVo.setLogisticsCode(waresOrderVo.getLogisticsCode());
|
||||
waresOrderVo.setLogisticsCompany(waresOrderVo.getLogisticsCompany());
|
||||
waresOrderVo.setOrderTypeVal(EOrderType.getLabelByValue(waresOrderVo.getOrderType()));
|
||||
// 发货方式
|
||||
waresOrderVo.setDeliveryWayStr(EDelivery.getLabelByValue(waresOrderVo.getDeliveryWay()));
|
||||
// 运输方式
|
||||
waresOrderVo.setTranTypeStr(ETransportType.getLabelByValue(waresOrderVo.getTranType()));
|
||||
// 预售状态
|
||||
waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(waresOrderVo.getPreSaleStatus()));
|
||||
// 订单状态
|
||||
waresOrderVo.setOrderStatusStr(EOrderStatus.getLabelByValue(waresOrderVo.getOrderStatus()));
|
||||
// 支付方式
|
||||
waresOrderVo.setPayTypeStr(EOrderPayType.getLabelByValue(waresOrderVo.getPayType()));
|
||||
}
|
||||
ExcelUtil<WaresOrderVo> util = new ExcelUtil<WaresOrderVo>(WaresOrderVo.class, iMenuColumnServiceApi.queryMenuColumn("Commodity", SecurityUtils.getUserId()).getData());
|
||||
util.exportExcel(response, resultList, "商品订单导出");
|
||||
|
|
@ -273,8 +208,6 @@ public class SaOrderController extends ParentOrderController {
|
|||
startPage();
|
||||
List<WaresOrderVo> resultList = orderItemsService.selectByInvestmentList(waresOrderParam);
|
||||
|
||||
// 获取需要翻译的枚举翻译
|
||||
Map<String, String> transactionMap = iTransactionCommonService.exportEnumTransaction(EDelivery.values(), ESupplyWay.values());
|
||||
Map<Integer, String> areaMap = areaServiceApi.getAreaMap(SecurityUtils.getPkCountry()).getData();
|
||||
for (WaresOrderVo waresOrderVo : resultList) {
|
||||
// 省
|
||||
|
|
@ -290,41 +223,23 @@ public class SaOrderController extends ParentOrderController {
|
|||
waresOrderVo.setRecCountryName(areaMap.get(waresOrderVo.getRecCountry()));
|
||||
}
|
||||
// 发货方式
|
||||
if (null != waresOrderVo.getDeliveryWay()) {
|
||||
waresOrderVo.setDeliveryWayStr(transactionMap.get(EnumsPrefixConstants.DELIVERY + waresOrderVo.getDeliveryWay()));
|
||||
}
|
||||
waresOrderVo.setDeliveryWayStr(EDelivery.getLabelByValue(waresOrderVo.getDeliveryWay()));
|
||||
// 运输方式
|
||||
if (waresOrderVo.getTranType() != null) {
|
||||
waresOrderVo.setTranTypeStr(ETransportType.getETransportType(waresOrderVo.getTranType()).getLabel());
|
||||
}
|
||||
waresOrderVo.setTranTypeStr(ETransportType.getLabelByValue(waresOrderVo.getTranType()));
|
||||
// 预售状态
|
||||
if (waresOrderVo.getPreSaleStatus() != null) {
|
||||
waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()).getLabel());
|
||||
}
|
||||
waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(waresOrderVo.getPreSaleStatus()));
|
||||
// 订单状态
|
||||
if (waresOrderVo.getOrderStatus() != null) {
|
||||
waresOrderVo.setOrderStatusStr(EOrderStatus.getEOrderStatus(waresOrderVo.getOrderStatus()).getLabel());
|
||||
}
|
||||
waresOrderVo.setOrderStatusStr(EOrderStatus.getLabelByValue(waresOrderVo.getOrderStatus()));
|
||||
// 支付方式
|
||||
if (waresOrderVo.getPayType() != null) {
|
||||
waresOrderVo.setPayTypeStr(EOrderPayType.getEnumByValue(waresOrderVo.getPayType()).getLabel());
|
||||
}
|
||||
waresOrderVo.setPayTypeStr(EOrderPayType.getLabelByValue(waresOrderVo.getPayType()));
|
||||
// 订单类型
|
||||
if (waresOrderVo.getOrderType() != null) {
|
||||
waresOrderVo.setOrderTypeStr(EOrderType.getEnumByValue(waresOrderVo.getOrderType()).getLabel());
|
||||
}
|
||||
waresOrderVo.setOrderTypeStr(EOrderType.getLabelByValue(waresOrderVo.getOrderType()));
|
||||
// 供应方式
|
||||
if (StringUtils.isNotBlank(waresOrderVo.getOperateScope())) {
|
||||
waresOrderVo.setOperateScope(ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())).getLabel());
|
||||
}
|
||||
// 计算汇率
|
||||
if (null != waresOrderVo.getInExchangeRate()) {
|
||||
waresOrderVo.setOrderAchieve(waresOrderVo.getInExchangeRate().multiply(waresOrderVo.getOrderAchieve()));
|
||||
waresOrderVo.setOperateScope(ESupplyWay.getLabelByVal(Integer.parseInt(waresOrderVo.getOperateScope())));
|
||||
}
|
||||
// 发货类型
|
||||
if (waresOrderVo.getShippingChannel() != null) {
|
||||
waresOrderVo.setShippingChannelStr(EShippingChannel.getEnumByValue(waresOrderVo.getShippingChannel()).getLabel());
|
||||
}
|
||||
waresOrderVo.setShippingChannelStr(EShippingChannel.getLabelByValue(waresOrderVo.getShippingChannel()));
|
||||
// 计算产品总计
|
||||
waresOrderVo.setProductPriceTotal(waresOrderVo.getProductPrice().multiply(BigDecimal.valueOf(waresOrderVo.getQuantity())));
|
||||
}
|
||||
|
|
@ -360,8 +275,6 @@ public class SaOrderController extends ParentOrderController {
|
|||
List<WaresOrderVo> resultList = orderItemsService.selectByInvestmentList(waresOrderParam);
|
||||
|
||||
Map<Integer, String> areaMap = areaServiceApi.getAreaMap(SecurityUtils.getPkCountry()).getData();
|
||||
// 获取需要翻译的枚举翻译
|
||||
Map<String, String> transactionMap = iTransactionCommonService.exportEnumTransaction(EDelivery.values(), ESupplyWay.values());
|
||||
|
||||
for (WaresOrderVo waresOrderVo : resultList) {
|
||||
// 省
|
||||
|
|
@ -377,56 +290,23 @@ public class SaOrderController extends ParentOrderController {
|
|||
waresOrderVo.setRecCountryName(areaMap.get(waresOrderVo.getRecCountry()));
|
||||
}
|
||||
// 发货方式
|
||||
if (waresOrderVo.getDeliveryWay() != null) {
|
||||
waresOrderVo.setDeliveryWayStr(transactionMap.get(EnumsPrefixConstants.DELIVERY + waresOrderVo.getDeliveryWay()));
|
||||
}
|
||||
|
||||
waresOrderVo.setDeliveryWayStr(EDelivery.getLabelByValue(waresOrderVo.getDeliveryWay()));
|
||||
// 运输方式
|
||||
if (waresOrderVo.getTranType() != null) {
|
||||
ETransportType transportType = ETransportType.getETransportType(waresOrderVo.getTranType());
|
||||
if (transportType != null) {
|
||||
waresOrderVo.setTranTypeStr(transportType.getLabel());
|
||||
}
|
||||
}
|
||||
|
||||
waresOrderVo.setTranTypeStr(ETransportType.getLabelByValue(waresOrderVo.getTranType()));
|
||||
// 预售状态
|
||||
if (waresOrderVo.getPreSaleStatus() != null) {
|
||||
EPresaleStatus presaleStatus = EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus());
|
||||
if (presaleStatus != null) {
|
||||
waresOrderVo.setPreSaleStatusStr(presaleStatus.getLabel());
|
||||
}
|
||||
}
|
||||
waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(waresOrderVo.getPreSaleStatus()));
|
||||
// 订单状态
|
||||
if (waresOrderVo.getOrderStatus() != null) {
|
||||
EOrderStatus orderStatus = EOrderStatus.getEOrderStatus(waresOrderVo.getOrderStatus());
|
||||
if (orderStatus != null) {
|
||||
waresOrderVo.setOrderStatusStr(orderStatus.getLabel());
|
||||
}
|
||||
}
|
||||
waresOrderVo.setOrderStatusStr(EOrderStatus.getLabelByValue(waresOrderVo.getOrderStatus()));
|
||||
// 支付方式
|
||||
if (waresOrderVo.getPayType() != null) {
|
||||
EOrderPayType orderPayType = EOrderPayType.getEnumByValue(waresOrderVo.getPayType());
|
||||
if (orderPayType != null) {
|
||||
waresOrderVo.setPayTypeStr(orderPayType.getLabel());
|
||||
}
|
||||
}
|
||||
waresOrderVo.setPayTypeStr(EOrderPayType.getLabelByValue(waresOrderVo.getPayType()));
|
||||
// 订单类型
|
||||
if (waresOrderVo.getOrderType() != null) {
|
||||
EOrderType orderType = EOrderType.getEnumByValue(waresOrderVo.getOrderType());
|
||||
if (orderType != null) {
|
||||
waresOrderVo.setOrderTypeStr(orderType.getLabel());
|
||||
}
|
||||
}
|
||||
waresOrderVo.setOrderTypeStr(EOrderType.getLabelByValue(waresOrderVo.getOrderType()));
|
||||
// 供应方式
|
||||
if (StringUtils.isNotBlank(waresOrderVo.getOperateScope()) && ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())) != null) {
|
||||
waresOrderVo.setOperateScope(ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())).getLabel());
|
||||
if (StringUtils.isNotBlank(waresOrderVo.getOperateScope())) {
|
||||
waresOrderVo.setOperateScope(ESupplyWay.getLabelByVal(Integer.parseInt(waresOrderVo.getOperateScope())));
|
||||
}
|
||||
// 计算汇率
|
||||
waresOrderVo.setOrderAchieve(waresOrderVo.getInExchangeRate().multiply(waresOrderVo.getOrderAchieve()));
|
||||
// 发货类型
|
||||
if (waresOrderVo.getShippingChannel() != null) {
|
||||
waresOrderVo.setShippingChannelStr(EShippingChannel.getEnumByValue(waresOrderVo.getShippingChannel()).getLabel());
|
||||
}
|
||||
waresOrderVo.setShippingChannelStr(EShippingChannel.getLabelByValue(waresOrderVo.getShippingChannel()));
|
||||
}
|
||||
List<WaresOrderInfoVo> waresOrderInfoList = resultList.stream().map(a -> {
|
||||
WaresOrderInfoVo waresOrderInfoVo = BeanUtil.copyProperties(a, WaresOrderInfoVo.class);
|
||||
|
|
|
|||
|
|
@ -0,0 +1,67 @@
|
|||
package com.hzs.sale.order.controller.manager;
|
||||
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.hzs.common.core.annotation.AccessPermissions;
|
||||
import com.hzs.common.core.annotation.Log;
|
||||
import com.hzs.common.core.enums.EOperationMethod;
|
||||
import com.hzs.common.core.enums.EOperationModule;
|
||||
import com.hzs.common.core.enums.ESaOrderSyncStatus;
|
||||
import com.hzs.common.core.utils.poi.ExcelUtil;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.core.web.page.TableDataInfo;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.sale.order.dto.SaOrderSyncBodyDetailDTO;
|
||||
import com.hzs.sale.order.param.SaOrderSyncParam;
|
||||
import com.hzs.sale.order.service.ISaOrderSyncService;
|
||||
import com.hzs.sale.order.vo.SaOrderSyncVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单同步记录控制器
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/manage/order-sync")
|
||||
public class SaOrderSyncController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ISaOrderSyncService orderSyncService;
|
||||
|
||||
/**
|
||||
* 同步订单列表
|
||||
*/
|
||||
@Log(module = EOperationModule.ORDER_SYNC, method = EOperationMethod.SELECT)
|
||||
@GetMapping("list")
|
||||
public TableDataInfo list(SaOrderSyncParam param) {
|
||||
startPage();
|
||||
List<SaOrderSyncVO> list = orderSyncService.queryList(param, SecurityUtils.getPkCountry());
|
||||
for (SaOrderSyncVO saOrderSyncVO : list) {
|
||||
saOrderSyncVO.setStatusVal(ESaOrderSyncStatus.getLabelByValue(saOrderSyncVO.getStatus()));
|
||||
saOrderSyncVO.setOrderProductDetail(JSONUtil.toList(saOrderSyncVO.getBodyDetail(), SaOrderSyncBodyDetailDTO.class));
|
||||
}
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 更新同步状态
|
||||
*/
|
||||
@Log(module = EOperationModule.ORDER_SYNC, method = EOperationMethod.UPDATE)
|
||||
@PostMapping("updateStatus")
|
||||
public AjaxResult updateStatus(@RequestBody SaOrderSyncParam param) {
|
||||
if (param.getPkId() == null) {
|
||||
return AjaxResult.error("主键ID不能为空");
|
||||
}
|
||||
if (param.getStatus() == null) {
|
||||
return AjaxResult.error("状态不能为空");
|
||||
}
|
||||
|
||||
return toAjax(orderSyncService.updateStatus(param.getPkId(), param.getStatus(),
|
||||
SecurityUtils.getUserId(), SecurityUtils.getPkCountry()));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
package com.hzs.sale.order.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Builder
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class SaOrderSyncBodyDetailDTO {
|
||||
/**
|
||||
* 仓储编号
|
||||
*/
|
||||
private String wmsCode;
|
||||
|
||||
/**
|
||||
* 变动数量
|
||||
*/
|
||||
private Integer changeNum;
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.hzs.sale.order.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.hzs.common.domain.sale.order.SaOrderSync;
|
||||
import com.hzs.sale.order.param.SaOrderSyncParam;
|
||||
import com.hzs.sale.order.vo.SaOrderSyncVO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单同步记录Mapper接口
|
||||
*/
|
||||
public interface SaOrderSyncMapper extends BaseMapper<SaOrderSync> {
|
||||
|
||||
/**
|
||||
* 查询订单同步记录列表
|
||||
*
|
||||
* @param param 查询参数
|
||||
* @param pkCountry 国家主键
|
||||
* @return 同步记录列表
|
||||
*/
|
||||
List<SaOrderSyncVO> queryList(@Param("param") SaOrderSyncParam param, @Param("pkCountry") Integer pkCountry);
|
||||
}
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
package com.hzs.sale.order.param;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 同步失败订单列表
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class SaOrderSyncParam {
|
||||
/**
|
||||
* 同步失败主键
|
||||
*/
|
||||
private Long pkId;
|
||||
|
||||
/**
|
||||
* 订单号
|
||||
*/
|
||||
private String orderCode;
|
||||
|
||||
/**
|
||||
* 开始日期(yyyy-MM-dd)
|
||||
*/
|
||||
private String startDate;
|
||||
|
||||
/**
|
||||
* 结束日期(yyyy-MM-dd)
|
||||
*/
|
||||
private String endDate;
|
||||
|
||||
/**
|
||||
* 同步状态 1=失败
|
||||
*/
|
||||
private Integer status;
|
||||
private String statusVal;
|
||||
}
|
||||
|
|
@ -119,17 +119,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi {
|
|||
return R.fail();
|
||||
}
|
||||
|
||||
@Override
|
||||
public R<?> saveOrder(SaOrderExt saOrderExt) {
|
||||
try {
|
||||
iSaOrderService.saveSaOrderByOrderExt(saOrderExt);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return R.fail(e.getMessage());
|
||||
}
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MemberFirstOrderDTO> checkMemberIsFirstOrder(List<String> memberCodeList) {
|
||||
List<MemberFirstOrderVo> memberFirstOrderVos = iSaOrderService.checkMemberIsFirstOrder(memberCodeList);
|
||||
|
|
|
|||
|
|
@ -20,9 +20,6 @@ import java.util.List;
|
|||
|
||||
/**
|
||||
* 销售订单-明细表 服务类
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-08-31
|
||||
*/
|
||||
public interface ISaOrderItemsService extends IService<SaOrderItems> {
|
||||
|
||||
|
|
@ -76,17 +73,11 @@ public interface ISaOrderItemsService extends IService<SaOrderItems> {
|
|||
* 更新订单明细表,将订单明细更改为删除
|
||||
*
|
||||
* @param saOrder
|
||||
* @return: Boolean
|
||||
* @Author: sui q
|
||||
* @Date: 2022/10/24 20:48
|
||||
*/
|
||||
Boolean updateOrderItems(SaOrder saOrder);
|
||||
|
||||
/*
|
||||
* @description:
|
||||
* @author: sui q
|
||||
* @date: 2023/7/27 16:16
|
||||
* @param: null null
|
||||
*
|
||||
**/
|
||||
void updateOrderItemsByMemberList(List<Long> memberList, Long pkApprove, Date currentDateTime);
|
||||
|
||||
|
|
@ -96,9 +87,6 @@ public interface ISaOrderItemsService extends IService<SaOrderItems> {
|
|||
* @param pkOrderItemsId 订单明细
|
||||
* @param pkApprove 审核人
|
||||
* @param currentDate 更新时间
|
||||
* @return: Boolean
|
||||
* @Author: sui q
|
||||
* @Date: 2023/3/28 11:25
|
||||
*/
|
||||
Boolean updateOrderItemsById(List<Long> pkOrderItemsId, Long pkApprove, Date currentDate);
|
||||
|
||||
|
|
@ -111,11 +99,7 @@ public interface ISaOrderItemsService extends IService<SaOrderItems> {
|
|||
List<SaOrderItemsExt> queryListByOrderId(List<Long> orderIdList);
|
||||
|
||||
/**
|
||||
* @description: 根据订单id查询订单商品列表
|
||||
* @author: zhang jing
|
||||
* @date: 2023/5/29 15:37
|
||||
* @param: [orderIdList, tOrderIdList]
|
||||
* @return: java.util.List<com.hzs.common.domain.sale.ext.SaOrderItemsExt>
|
||||
* 根据订单id查询订单商品列表
|
||||
**/
|
||||
List<WaresOrderVo> waresListByOrderId(List<Long> orderIdList);
|
||||
|
||||
|
|
@ -157,11 +141,7 @@ public interface ISaOrderItemsService extends IService<SaOrderItems> {
|
|||
List<SaOrderItemsExt> selectByList(Long pkOrder);
|
||||
|
||||
/**
|
||||
* @description: 根据订单ID查询商品
|
||||
* @author: zhang jing
|
||||
* @date: 2023/4/21 18:02
|
||||
* @param: [canApplyOrderVO]
|
||||
* @return: java.util.List<com.hzs.sale.order.vo.CanApplyOrderVO>
|
||||
* 根据订单ID查询商品
|
||||
**/
|
||||
List<OrderItemsParam> getOrderItemsParams(@Param("orderIdList") List<Long> orderIdList);
|
||||
|
||||
|
|
|
|||
|
|
@ -571,28 +571,6 @@ public interface ISaOrderService extends IService<SaOrder> {
|
|||
*/
|
||||
int insertBach(List<SaOrder> orderList, List<SaOrderItems> orderItemsList);
|
||||
|
||||
/**
|
||||
* 生成三方销售订单
|
||||
*/
|
||||
void saveSaOrderByOrderExt(SaOrderExt saOrderExt);
|
||||
|
||||
/**
|
||||
* 校验预售库存数量是否充足
|
||||
*
|
||||
* @param orderParam
|
||||
* @return
|
||||
*/
|
||||
Boolean checkPreSalesQuantity(OrderParam orderParam);
|
||||
|
||||
/**
|
||||
* 扣减预售状态下预售库存使用量
|
||||
*
|
||||
* @param orderCode
|
||||
* @param specialArea
|
||||
* @return
|
||||
*/
|
||||
Boolean reducePreSalesQuantity(String orderCode, Integer specialArea);
|
||||
|
||||
/**
|
||||
* 根据编号查询会员首单
|
||||
*
|
||||
|
|
|
|||
|
|
@ -0,0 +1,34 @@
|
|||
package com.hzs.sale.order.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.hzs.common.domain.sale.order.SaOrderSync;
|
||||
import com.hzs.sale.order.param.SaOrderSyncParam;
|
||||
import com.hzs.sale.order.vo.SaOrderSyncVO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单同步记录服务接口
|
||||
*/
|
||||
public interface ISaOrderSyncService extends IService<SaOrderSync> {
|
||||
|
||||
/**
|
||||
* 查询订单同步记录列表
|
||||
*
|
||||
* @param param 查询参数
|
||||
* @param pkCountry 国家主键
|
||||
* @return 同步记录列表
|
||||
*/
|
||||
List<SaOrderSyncVO> queryList(SaOrderSyncParam param, Integer pkCountry);
|
||||
|
||||
/**
|
||||
* 更新同步状态
|
||||
*
|
||||
* @param pkId 主键ID
|
||||
* @param status 状态
|
||||
* @param userId 用户ID
|
||||
* @param pkCountry 国家主键
|
||||
* @return 是否成功
|
||||
*/
|
||||
Boolean updateStatus(Long pkId, Integer status, Long userId, Integer pkCountry);
|
||||
}
|
||||
|
|
@ -25,9 +25,6 @@ import java.util.*;
|
|||
|
||||
/**
|
||||
* 销售订单-明细表 服务实现类
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-08-31
|
||||
*/
|
||||
@Service
|
||||
public class SaOrderItemsServiceImpl extends ServiceImpl<SaOrderItemsMapper, SaOrderItems> implements ISaOrderItemsService {
|
||||
|
|
|
|||
|
|
@ -768,9 +768,6 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
|
|||
// 【休止期】普通会员6个月,奖衔会员12个月(先按6个月来,后续MQ会统一处理同姓名同手机号会员)
|
||||
newCuMember.setStopDate(DateUtils.addMonths(newCuMember.getExpireDate(), 6));
|
||||
|
||||
String orderCode = saOrderExt.getOrderCode();
|
||||
Integer specialArea = saOrderExt.getSpecialArea();
|
||||
this.reducePreSalesQuantity(orderCode, specialArea);
|
||||
// 调用其他服务保存会员信息、会员注册信息
|
||||
R<Boolean> saveResult = memberServiceApi.saveMember(newCuMember, saOrderExt, isToBePay, cuMemberAccountExt);
|
||||
if (saveResult.isSuccess()) {
|
||||
|
|
@ -870,10 +867,6 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
|
|||
|
||||
// 更新订单信息
|
||||
updateSaOrder(saOrderExt);
|
||||
// 扣减预售状态下预售库存使用量
|
||||
String orderCode = saOrderExt.getOrderCode();
|
||||
Integer specialArea = saOrderExt.getSpecialArea();
|
||||
reducePreSalesQuantity(orderCode, specialArea);
|
||||
// 处理会员信息,更新会员等级,扣款
|
||||
R<Boolean> saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt);
|
||||
if (saveResult.isSuccess()) {
|
||||
|
|
@ -987,11 +980,6 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
|
|||
CuMember member = getCuMemberByKey(saOrderExt.getPkMember());
|
||||
CuMember cuMember = calculateHaFunMemberGrade(saOrderExt, member);
|
||||
|
||||
// 扣减预售状态下预售库存使用量
|
||||
String orderCode = saOrderExt.getOrderCode();
|
||||
Integer specialArea = saOrderExt.getSpecialArea();
|
||||
reducePreSalesQuantity(orderCode, specialArea);
|
||||
|
||||
R<Boolean> saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt);
|
||||
if (saveResult.isSuccess()) {
|
||||
if (!saveResult.getData()) {
|
||||
|
|
@ -1961,104 +1949,6 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
|
|||
return i;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void saveSaOrderByOrderExt(SaOrderExt saOrderExt) {
|
||||
save(saOrderExt);
|
||||
for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) {
|
||||
saOrderItems.setPkOrder(saOrderExt.getPkId());
|
||||
}
|
||||
saOrderItemsService.saveBatch(saOrderExt.getOrderItemsList());
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验预售库存数量是否充足
|
||||
*
|
||||
* @param orderParam
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Boolean checkPreSalesQuantity(OrderParam orderParam) {
|
||||
// 开关控制是否处理
|
||||
if (EYesNo.NO.getIntValue() == BdConfig.getEnable()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Set<String> waresCodeList = new HashSet<>();
|
||||
for (OrderItemsParam orderItemsParam : orderParam.getOrderItemsParams()) {
|
||||
if (StringUtils.isNotBlank(orderItemsParam.getWaresCode())) {
|
||||
waresCodeList.add(orderItemsParam.getWaresCode());
|
||||
}
|
||||
}
|
||||
if (waresCodeList.size() > 0) {
|
||||
List<WaresPreSaleVo> waresPreSaleVoList = iBdWaresExtendService.selectByWaresCodeList(waresCodeList, orderParam.getSpecialArea());
|
||||
if (CollectionUtil.isNotEmpty(waresPreSaleVoList)) {
|
||||
Map<String, WaresPreSaleVo> waresPreSaleMap = waresPreSaleVoList.stream().collect(Collectors.toMap(WaresPreSaleVo::getWaresCode, Function.identity()));
|
||||
for (OrderItemsParam orderItemsParam : orderParam.getOrderItemsParams()) {
|
||||
String waresCode = orderItemsParam.getWaresCode();
|
||||
if (StringUtils.isNotEmpty(waresCode)) {
|
||||
WaresPreSaleVo waresPreSaleVo = waresPreSaleMap.get(waresCode);
|
||||
if (null != waresPreSaleVo && waresPreSaleVo.getPreSaleStatus() != null && waresPreSaleVo.getPreSaleStatus().equals(EPresaleStatus.PRESALE.getValue())) {
|
||||
// 如果是预售状态 校验预售数量是否足够
|
||||
if (waresPreSaleVo.getPreSaleQuantity() != null) {
|
||||
// 预售数量不足
|
||||
return waresPreSaleVo.getPreSaleQuantity() >= orderItemsParam.getQuantity();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 扣减预售状态下预售库存使用量
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean reducePreSalesQuantity(String orderCode, Integer specialArea) {
|
||||
// 开关控制是否处理
|
||||
if (EYesNo.NO.getIntValue() == BdConfig.getEnable()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
List<OrderItemsParam> orderItemsList = saOrderItemsService.selectByWaresCodeList(orderCode);
|
||||
if (orderItemsList.size() > 0) {
|
||||
Set<String> waresCodeList = new HashSet<>();
|
||||
for (OrderItemsParam orderItemsParam : orderItemsList) {
|
||||
if (StringUtils.isNotBlank(orderItemsParam.getWaresCode())) {
|
||||
waresCodeList.add(orderItemsParam.getWaresCode());
|
||||
}
|
||||
}
|
||||
if (waresCodeList.size() > 0) {
|
||||
List<WaresPreSaleVo> waresPreSaleVoList = iBdWaresExtendService.selectByWaresCodeList(waresCodeList, specialArea);
|
||||
if (CollectionUtil.isNotEmpty(waresPreSaleVoList)) {
|
||||
Map<String, WaresPreSaleVo> waresPreSaleMap = waresPreSaleVoList.stream().collect(Collectors.toMap(WaresPreSaleVo::getWaresCode, Function.identity()));
|
||||
for (OrderItemsParam orderItemsParam : orderItemsList) {
|
||||
String waresCode = orderItemsParam.getWaresCode();
|
||||
if (StringUtils.isNotEmpty(waresCode)) {
|
||||
WaresPreSaleVo waresPreSaleVo = waresPreSaleMap.get(waresCode);
|
||||
if (null != waresPreSaleVo && waresPreSaleVo.getPreSaleStatus() != null && waresPreSaleVo.getPreSaleStatus().equals(EPresaleStatus.PRESALE.getValue())) {
|
||||
// 如果是预售状态 校验预售数量是否足够
|
||||
if (waresPreSaleVo.getPreSaleQuantity() != null) {
|
||||
if (waresPreSaleVo.getPreSaleQuantity() < orderItemsParam.getQuantity()) {
|
||||
// 预售数量不足
|
||||
return false;
|
||||
} else {
|
||||
iBdWaresService.updatePreSaleQuantityByWaresCode(waresCode, orderItemsParam.getQuantity());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据编号查询会员首单
|
||||
*
|
||||
|
|
@ -2070,13 +1960,6 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
|
|||
return baseMapper.checkMemberIsFirstOrder(memberCodeList);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description: 自助撤单
|
||||
* @author: zhang jing
|
||||
* @date: 2023/11/21 15:27
|
||||
* @param: [pkApprove, orderCancelParam, validateCancelOrderVO]
|
||||
* @return: void
|
||||
**/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void selfRevokeOrder(Long pkApprove, MyOrderVO myOrderVO) {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,36 @@
|
|||
package com.hzs.sale.order.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.hzs.common.domain.sale.order.SaOrderSync;
|
||||
import com.hzs.sale.order.mapper.SaOrderSyncMapper;
|
||||
import com.hzs.sale.order.param.SaOrderSyncParam;
|
||||
import com.hzs.sale.order.service.ISaOrderSyncService;
|
||||
import com.hzs.sale.order.vo.SaOrderSyncVO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单同步记录服务实现
|
||||
*/
|
||||
@Service
|
||||
public class SaOrderSyncServiceImpl extends ServiceImpl<SaOrderSyncMapper, SaOrderSync> implements ISaOrderSyncService {
|
||||
|
||||
@Override
|
||||
public List<SaOrderSyncVO> queryList(SaOrderSyncParam param, Integer pkCountry) {
|
||||
return baseMapper.queryList(param, pkCountry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean updateStatus(
|
||||
Long pkId, Integer status, Long userId, Integer pkCountry
|
||||
) {
|
||||
LambdaUpdateWrapper<SaOrderSync> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.eq(SaOrderSync::getPkId, pkId);
|
||||
updateWrapper.set(SaOrderSync::getStatus, status);
|
||||
|
||||
return this.update(updateWrapper);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
package com.hzs.sale.order.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.hzs.common.core.annotation.Excel;
|
||||
import com.hzs.sale.order.dto.SaOrderSyncBodyDetailDTO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单同步记录VO
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class SaOrderSyncVO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
private Long pkId;
|
||||
|
||||
/**
|
||||
* 订单编号
|
||||
*/
|
||||
@Excel(name = "订单编号")
|
||||
private String orderCode;
|
||||
|
||||
/**
|
||||
* 产品明细列表
|
||||
*/
|
||||
private String bodyDetail;
|
||||
private List<SaOrderSyncBodyDetailDTO> orderProductDetail;
|
||||
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date creationTime;
|
||||
|
||||
/**
|
||||
* 同步状态(1=失败)
|
||||
*/
|
||||
@Excel(name = "同步状态", readConverterExp = "1=失败,0=成功")
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
* 同步状态描述
|
||||
*/
|
||||
private String statusVal;
|
||||
|
||||
}
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
package com.hzs.sale.order.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.hzs.common.core.annotation.BigDecimalFormat;
|
||||
import com.hzs.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
|
|
@ -8,14 +9,6 @@ import java.io.Serializable;
|
|||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @BelongsProject: hzs_cloud
|
||||
* @BelongsPackage: com.hzs.sale.order.vo
|
||||
* @Author: yh
|
||||
* @CreateTime: 2023-08-02 16:32
|
||||
* @Description: TODO
|
||||
* @Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class WaresOrderInfoVo implements Serializable {
|
||||
|
||||
|
|
@ -45,6 +38,7 @@ public class WaresOrderInfoVo implements Serializable {
|
|||
/**
|
||||
* 重量
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
@Excel(name = "重量(KG)")
|
||||
private BigDecimal weight;
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -10,13 +10,6 @@ import java.math.BigDecimal;
|
|||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/1/31 14:09
|
||||
* @Classname: WaresOrderVo
|
||||
* @PackageName: com.hzs.sale.order.vo
|
||||
*/
|
||||
@Data
|
||||
public class WaresOrderVo implements Serializable {
|
||||
|
||||
|
|
@ -312,10 +305,6 @@ public class WaresOrderVo implements Serializable {
|
|||
* 重量
|
||||
*/
|
||||
private BigDecimal weight;
|
||||
/**
|
||||
* 展示汇率
|
||||
*/
|
||||
private BigDecimal inExchangeRate;
|
||||
/**
|
||||
* 产品订单明细列表
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,21 +1,7 @@
|
|||
package com.hzs.sale.order.vo;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2024/4/25 14:06
|
||||
* @Classname: WaresPreSaleVo
|
||||
* @PackageName: com.hzs.sale.order.vo
|
||||
*/
|
||||
package com.hzs.sale.order.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.sale.order.vo
|
||||
*@Author: yh
|
||||
*@CreateTime: 2024-04-25 14:06
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class WaresPreSaleVo {
|
||||
|
||||
|
|
@ -31,7 +17,7 @@ public class WaresPreSaleVo {
|
|||
/**
|
||||
* 商品名称
|
||||
*/
|
||||
private String waresName ;
|
||||
private String waresName;
|
||||
|
||||
/**
|
||||
* 预售状态
|
||||
|
|
|
|||
|
|
@ -554,7 +554,7 @@ public class BdProductController extends BaseController {
|
|||
}
|
||||
|
||||
// 发货类型翻译
|
||||
productVo.setShippingChannelVal(transactionMap.get(EShippingChannel.getEnumByValue(productVo.getShippingChannel()).getKey()));
|
||||
productVo.setShippingChannelVal(EShippingChannel.getLabelByValue(productVo.getShippingChannel()));
|
||||
// 产品属性翻译
|
||||
if (productVo.getProductAttr() != null) {
|
||||
productVo.setProductAttrVal(EProductAttrType.getEnumByValue(productVo.getProductAttr()).getLabel());
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ import com.hzs.common.core.web.domain.AjaxResult;
|
|||
import com.hzs.common.core.web.page.TableDataInfo;
|
||||
import com.hzs.common.domain.sale.classify.BdSpecs;
|
||||
import com.hzs.common.domain.sale.ext.BdWaresDetailExt;
|
||||
import com.hzs.common.domain.sale.ext.BdWaresExt;
|
||||
import com.hzs.common.domain.sale.ext.BdWaresSpecsRelationExt;
|
||||
import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt;
|
||||
import com.hzs.common.domain.sale.product.BdAreaClassify;
|
||||
|
|
@ -55,6 +56,8 @@ public class BdWaresController extends BaseController {
|
|||
@DubboReference
|
||||
IRangeServiceApi iRangeServiceApi;
|
||||
|
||||
@Autowired
|
||||
private IBdWaresService iBdWaresService;
|
||||
@Autowired
|
||||
private IBdWaresAuthorizeService iBdWaresAuthorizeService;
|
||||
@Autowired
|
||||
|
|
@ -72,8 +75,6 @@ public class BdWaresController extends BaseController {
|
|||
@Autowired
|
||||
private IBdWaresSpecsPackService iBdWaresSpecsPackService;
|
||||
@Autowired
|
||||
private IBdWaresService iBdWaresService;
|
||||
@Autowired
|
||||
private IBdWaresLabelService iBdWaresLabelService;
|
||||
@Autowired
|
||||
private IBdWaresExtendService iBdWaresExtendService;
|
||||
|
|
@ -140,9 +141,9 @@ public class BdWaresController extends BaseController {
|
|||
// 所属专区
|
||||
waresVo.setSpecialAreaVal(ESpecialArea.getESpecialArea(waresVo.getSpecialArea()));
|
||||
// 供应方式
|
||||
waresVo.setOperateScopeVal(ESupplyWay.getEnumLabelByValue(waresVo.getOperateScope()));
|
||||
waresVo.setOperateScopeVal(ESupplyWay.getLabelByVal(waresVo.getOperateScope()));
|
||||
// 预售状态
|
||||
waresVo.setPreSaleStatusVal(EPresaleStatus.getEnumLabelByValue(waresVo.getPreSaleStatus()));
|
||||
waresVo.setPreSaleStatusVal(EPresaleStatus.getLabelByValue(waresVo.getPreSaleStatus()));
|
||||
|
||||
WaresAuthorityVo waresAuthorityVo = iBdWaresService.getWaresAuthorityFirst(waresVo.getPkWares());
|
||||
if (waresAuthorityVo != null) {
|
||||
|
|
@ -959,4 +960,29 @@ public class BdWaresController extends BaseController {
|
|||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 非在售商品列表
|
||||
*
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/list-no-sale")
|
||||
public TableDataInfo listNoSale(WaresNoSaleParam param) {
|
||||
List<WaresNoSaleVO> resultList = new ArrayList<>();
|
||||
|
||||
List<BdWaresExt> list = iBdWaresService.listWaresNoSale(param);
|
||||
if (CollectionUtil.isNotEmpty(list)) {
|
||||
for (BdWaresExt bdWaresExt : list) {
|
||||
WaresNoSaleVO vo = BeanUtil.copyProperties(bdWaresExt, WaresNoSaleVO.class);
|
||||
vo.setSpecialAreaVal(ESpecialArea.getLabelByValue(vo.getSpecialArea()));
|
||||
vo.setPreSaleStatusVal(EPresaleStatus.getLabelByValue(vo.getPreSaleStatus()));
|
||||
resultList.add(vo);
|
||||
}
|
||||
}
|
||||
|
||||
TableDataInfo tableDataInfo = getDataTable(list);
|
||||
tableDataInfo.setRows(resultList);
|
||||
return tableDataInfo;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,18 +3,13 @@ package com.hzs.sale.wares.mapper;
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.hzs.common.domain.sale.wares.BdWaresExtend;
|
||||
import com.hzs.sale.order.param.WaresNumberParam;
|
||||
import com.hzs.sale.order.vo.WaresPreSaleVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 商品发布扩展表 Mapper 接口
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-09-09
|
||||
*/
|
||||
public interface BdWaresExtendMapper extends BaseMapper<BdWaresExtend> {
|
||||
|
||||
|
|
@ -34,13 +29,4 @@ public interface BdWaresExtendMapper extends BaseMapper<BdWaresExtend> {
|
|||
*/
|
||||
void updatePutOnTimeAndPutOffTimeByWaresId(@Param("waresId") Integer waresId, @Param("putOnTime") Date putOnTime, @Param("putOffTime") Date putOffTime);
|
||||
|
||||
/**
|
||||
* 根据商品编号查询 每个商品所剩余的预售数量
|
||||
*
|
||||
* @param waresCodeList
|
||||
* @param specialArea 专区
|
||||
* @return
|
||||
*/
|
||||
List<WaresPreSaleVo> selectByWaresCodeList(@Param("waresCodeList") Collection<String> waresCodeList, @Param("specialArea") Integer specialArea);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import com.hzs.common.domain.sale.wares.BdWares;
|
|||
import com.hzs.common.domain.sale.wares.BdWaresDetail;
|
||||
import com.hzs.common.domain.system.config.BdAgreement;
|
||||
import com.hzs.retail.wares.param.RetailWaresParam;
|
||||
import com.hzs.sale.wares.param.WaresNoSaleParam;
|
||||
import com.hzs.sale.wares.param.WaresParams;
|
||||
import com.hzs.sale.wares.vo.WaresAuthorityVo;
|
||||
import com.hzs.sale.wares.vo.WaresVo;
|
||||
|
|
@ -113,14 +114,6 @@ public interface BdWaresMapper extends BaseMapper<BdWares> {
|
|||
List<BdWaresExt> queryRecommendWaresByCondition(@Param("specialArea") Integer specialArea, @Param("pkAreaClassify") Integer pkAreaClassify,
|
||||
@Param("waresCode") String waresCode, @Param("waresName") String waresName, @Param("pkCountry") Integer pkCountry);
|
||||
|
||||
/**
|
||||
* 扣减预售数量库存
|
||||
*
|
||||
* @param waresCode
|
||||
* @param quantity
|
||||
*/
|
||||
void updatePreSaleQuantityByWaresCode(@Param("waresCode") String waresCode, @Param("quantity") Integer quantity);
|
||||
|
||||
/**
|
||||
* 查询商品可见类型
|
||||
*
|
||||
|
|
@ -157,4 +150,12 @@ public interface BdWaresMapper extends BaseMapper<BdWares> {
|
|||
*/
|
||||
List<String> listWaresCodeByVertex(@Param("pkVertex") Long pkVertex);
|
||||
|
||||
/**
|
||||
* 查询非在售商品
|
||||
*
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
List<BdWaresExt> listWaresNoSale(@Param("param") WaresNoSaleParam param);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,40 +0,0 @@
|
|||
package com.hzs.sale.wares.param;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/5/22 14:22
|
||||
* @Classname: ConfirmOrderWaresInfoParams
|
||||
* @PackageName: com.hzs.sale.wares.param
|
||||
*/
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.sale.wares.param
|
||||
*@Author: yh
|
||||
*@CreateTime: 2023-05-22 14:22
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class ConfirmOrderWaresInfoList {
|
||||
|
||||
|
||||
/**
|
||||
* 商品外键
|
||||
*/
|
||||
private Long pkTWares;
|
||||
/**
|
||||
* 商品sku外键
|
||||
*/
|
||||
private Long pkTWaresSku;
|
||||
/**
|
||||
* 商品数量
|
||||
*/
|
||||
private Integer quantity;
|
||||
|
||||
/**
|
||||
* 渠道
|
||||
*/
|
||||
private Integer source;
|
||||
}
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
package com.hzs.sale.wares.param;/**
|
||||
* @Description:
|
||||
* @Author: yuhui
|
||||
* @Time: 2023/5/23 15:21
|
||||
* @Classname: ConfirmOrderWaresInfoParams
|
||||
* @PackageName: com.hzs.sale.wares.param
|
||||
*/
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*@BelongsProject: hzs_cloud
|
||||
*@BelongsPackage: com.hzs.sale.wares.param
|
||||
*@Author: yh
|
||||
*@CreateTime: 2023-05-23 15:21
|
||||
*@Description: TODO
|
||||
*@Version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class ConfirmOrderWaresInfoParams {
|
||||
|
||||
|
||||
private List<ConfirmOrderWaresInfoList> confirmOrderWaresInfoParamsList;
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.hzs.sale.wares.param;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 非在售商品查询
|
||||
*/
|
||||
@Data
|
||||
public class WaresNoSaleParam {
|
||||
|
||||
/**
|
||||
* 商品编号
|
||||
*/
|
||||
private String waresCode;
|
||||
/**
|
||||
* 商品名称
|
||||
*/
|
||||
private String waresName;
|
||||
/**
|
||||
* 商品状态
|
||||
*/
|
||||
private Integer preSaleStatus;
|
||||
|
||||
}
|
||||
|
|
@ -3,17 +3,12 @@ package com.hzs.sale.wares.service;
|
|||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.hzs.common.domain.sale.wares.BdWaresExtend;
|
||||
import com.hzs.sale.order.param.WaresNumberParam;
|
||||
import com.hzs.sale.order.vo.WaresPreSaleVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 商品发布扩展表 服务类
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-09-09
|
||||
*/
|
||||
public interface IBdWaresExtendService extends IService<BdWaresExtend> {
|
||||
|
||||
|
|
@ -33,13 +28,4 @@ public interface IBdWaresExtendService extends IService<BdWaresExtend> {
|
|||
*/
|
||||
void updatePutOnTimeAndPutOffTimeByWaresId(Integer waresId, Date putOnTime, Date putOffTime);
|
||||
|
||||
/**
|
||||
* 根据商品编号查询 每个商品所剩余的预售数量
|
||||
*
|
||||
* @param waresCodeList
|
||||
* @param specialArea 专区
|
||||
* @return
|
||||
*/
|
||||
List<WaresPreSaleVo> selectByWaresCodeList(Collection<String> waresCodeList, Integer specialArea);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import com.hzs.common.domain.system.config.BdAgreement;
|
|||
import com.hzs.common.domain.system.config.ext.BdRangeExt;
|
||||
import com.hzs.retail.wares.param.RetailWaresParam;
|
||||
import com.hzs.sale.wares.param.ComputeWaresPrice;
|
||||
import com.hzs.sale.wares.param.WaresNoSaleParam;
|
||||
import com.hzs.sale.wares.param.WaresParams;
|
||||
import com.hzs.sale.wares.vo.WaresAuthorityVo;
|
||||
import com.hzs.sale.wares.vo.WaresVo;
|
||||
|
|
@ -171,14 +172,6 @@ public interface IBdWaresService extends IService<BdWares> {
|
|||
*/
|
||||
Map<Integer, List<BdWaresAuthority>> getWaresAuthority(List<Integer> pkWaresList);
|
||||
|
||||
/**
|
||||
* 扣减预售数量库存
|
||||
*
|
||||
* @param waresCode
|
||||
* @param quantity
|
||||
*/
|
||||
void updatePreSaleQuantityByWaresCode(String waresCode, Integer quantity);
|
||||
|
||||
/**
|
||||
* 查询商品可见类型
|
||||
*
|
||||
|
|
@ -229,4 +222,12 @@ public interface IBdWaresService extends IService<BdWares> {
|
|||
*/
|
||||
List<String> listWaresCodeByVertex(Long pkVertex);
|
||||
|
||||
/**
|
||||
* 查询非在售商品
|
||||
*
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
List<BdWaresExt> listWaresNoSale(WaresNoSaleParam param);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,29 +4,19 @@ import cn.hutool.core.collection.CollectionUtil;
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.hzs.common.domain.sale.wares.BdWaresExtend;
|
||||
import com.hzs.sale.order.param.WaresNumberParam;
|
||||
import com.hzs.sale.order.vo.WaresPreSaleVo;
|
||||
import com.hzs.sale.wares.mapper.BdWaresExtendMapper;
|
||||
import com.hzs.sale.wares.service.IBdWaresExtendService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 商品发布扩展表 服务实现类
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-09-09
|
||||
*/
|
||||
@Service
|
||||
public class BdWaresExtendServiceImpl extends ServiceImpl<BdWaresExtendMapper, BdWaresExtend> implements IBdWaresExtendService {
|
||||
|
||||
/**
|
||||
* 修改销量
|
||||
*
|
||||
* @param waresNumberParamList
|
||||
*/
|
||||
@Override
|
||||
public void updateWaresSalesAccrual(List<WaresNumberParam> waresNumberParamList) {
|
||||
if (CollectionUtil.isNotEmpty(waresNumberParamList)) {
|
||||
|
|
@ -34,27 +24,9 @@ public class BdWaresExtendServiceImpl extends ServiceImpl<BdWaresExtendMapper, B
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置上下架时间
|
||||
*
|
||||
* @param waresId
|
||||
* @param putOnTime
|
||||
* @param putOffTime
|
||||
*/
|
||||
@Override
|
||||
public void updatePutOnTimeAndPutOffTimeByWaresId(Integer waresId, Date putOnTime, Date putOffTime) {
|
||||
baseMapper.updatePutOnTimeAndPutOffTimeByWaresId(waresId, putOnTime, putOffTime);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据商品编号查询 每个商品所剩余的预售数量
|
||||
*
|
||||
* @param waresCodeList
|
||||
* @param specialArea
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<WaresPreSaleVo> selectByWaresCodeList(Collection<String> waresCodeList, Integer specialArea) {
|
||||
return baseMapper.selectByWaresCodeList(waresCodeList, specialArea);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1138,11 +1138,6 @@ public class BdWaresServiceImpl extends ServiceImpl<BdWaresMapper, BdWares> impl
|
|||
return map;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updatePreSaleQuantityByWaresCode(String waresCode, Integer quantity) {
|
||||
baseMapper.updatePreSaleQuantityByWaresCode(waresCode, quantity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public WaresAuthorityVo getWaresAuthorityFirst(Integer pkWares) {
|
||||
return baseMapper.getWaresAuthorityFirst(pkWares);
|
||||
|
|
@ -1175,4 +1170,10 @@ public class BdWaresServiceImpl extends ServiceImpl<BdWaresMapper, BdWares> impl
|
|||
public List<String> listWaresCodeByVertex(Long pkVertex) {
|
||||
return baseMapper.listWaresCodeByVertex(pkVertex);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BdWaresExt> listWaresNoSale(WaresNoSaleParam param) {
|
||||
return baseMapper.listWaresNoSale(param);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,49 @@
|
|||
package com.hzs.sale.wares.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 非在售商品查询返回
|
||||
*/
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class WaresNoSaleVO implements Serializable {
|
||||
|
||||
/**
|
||||
* 商品ID
|
||||
*/
|
||||
private Integer pkId;
|
||||
|
||||
/**
|
||||
* 商品图
|
||||
*/
|
||||
private String cover1;
|
||||
|
||||
/**
|
||||
* 商品编号
|
||||
*/
|
||||
private String waresCode;
|
||||
/**
|
||||
* 商品名称
|
||||
*/
|
||||
private String waresName;
|
||||
/**
|
||||
* 商品专区
|
||||
*/
|
||||
private Integer specialArea;
|
||||
private String specialAreaVal;
|
||||
/**
|
||||
* 商品状态
|
||||
*/
|
||||
private Integer preSaleStatus;
|
||||
private String preSaleStatusVal;
|
||||
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue