Commit 474ff6f7 authored by fhj's avatar fhj

Merge remote-tracking branch 'origin/v2' into v2

parents 0860c6ad efa0f9f6
......@@ -234,12 +234,6 @@ public class ReturnGoodsDO implements Serializable {
private String returnLogisticsNo;
/**
* 是否需要发票:0-否,1-是
*/
@Column(columnDefinition = "int")
private Integer needInvoice;
/**
*订单类型(OrderConstant.OrderType)
*/
@Column(columnDefinition = "int")
......@@ -253,14 +247,6 @@ public class ReturnGoodsDO implements Serializable {
this.orderType = orderType;
}
public Integer getNeedInvoice() {
return needInvoice;
}
public void setNeedInvoice(Integer needInvoice) {
this.needInvoice = needInvoice;
}
public Long getReturnLogisticsId() {
return returnLogisticsId;
}
......
......@@ -40,7 +40,6 @@ import com.ssy.lingxi.message.api.vo.request.SystemMessageRequest;
import com.ssy.lingxi.order.api.dto.request.AfterSalesListRequest;
import com.ssy.lingxi.order.api.dto.request.OrderProductDetailsUpdateRequest;
import com.ssy.lingxi.order.api.dto.request.OrderProductDetailsUpdateRequests;
import com.ssy.lingxi.order.api.dto.request.TheInvoiceOrderInfoResponse;
import com.ssy.lingxi.order.api.dto.response.OneBatchBrderListDetailsResponse;
import com.ssy.lingxi.pay.api.dto.request.WeChatRefundRequest;
import com.ssy.lingxi.pay.api.dto.request.assetAccount.BalanceRefundRequest;
......@@ -1026,9 +1025,9 @@ public class ReturnGoodsServiceImpl implements IReturnGoodsService {
returnDO.setCreateTime(System.currentTimeMillis());
returnDO.setUpdateTime(0L);
returnDO.setOrderType(saveVO.getOrderType());
// 设置是否需要发票
/*废弃:731 // 设置是否需要发票
returnDO.setNeedInvoice(CommonBooleanEnum.NO.getCode());
List<String> orderNoList = saveVO.getReturnGoodsList().stream().map(ReturnGoodsDetailSaveVO::getOrderNo).distinct().collect(Collectors.toList());
List<String> orderNoList = saveVO.getReturnGoodsList().stream().map(ReturnGoodsDetailSaveVO::getOrderNo).distinct().collect(Collectors.toList());
for (String orderNO : orderNoList) {
Wrapper<TheInvoiceOrderInfoResponse> wrapper = feignService.mergeOrderInvoice(orderNO);
if (null != wrapper && ResponseCode.SUCCESS.getCode() == wrapper.getCode()
......@@ -1036,7 +1035,7 @@ public class ReturnGoodsServiceImpl implements IReturnGoodsService {
returnDO.setNeedInvoice(CommonBooleanEnum.YES.getCode());
break;
}
}
}*/
return returnDO;
}
......
......@@ -97,4 +97,13 @@ public enum OrderTypeEnum {
OrderTypeEnum typeEnum = Arrays.stream(OrderTypeEnum.values()).filter(e -> e.getCode().equals(code)).findFirst().orElse(null);
return typeEnum == null ? "未知" : typeEnum.getName();
}
/**
* 根据类型枚举值获取枚举
* @param code 类型枚举值
* @return 枚举
*/
public static OrderTypeEnum parse(Integer code) {
return Arrays.stream(OrderTypeEnum.values()).filter(e -> e.getCode().equals(code)).findFirst().orElse(null);
}
}
......@@ -1291,6 +1291,7 @@ public enum ResponseCode {
ORDER_STATUS_IS_NOT_MATCHED(37158, "订单状态不正确,不允许操作"),
ORDER_CONTRACT_CAN_NOT_BE_EMPTY(37159, "请选择合同"),
ORDER_INVOICE_CAN_NOT_BE_EMPTY(37160, "请选择发票"),
ORDER_TYPE_DOES_NOT_EXIST(37161, "订单类型参数错误"),
//****************************************
......@@ -3227,6 +3228,7 @@ public enum ResponseCode {
MARKETING_COUPON_SURPLUS_QUANTITY_ZERO(56027, "剩余发放数量不足"),
MARKETING_COUPON_ZERO_DISCOUNT_MUST_MARKETING(56028, "0元购买抵扣劵,领券方式只能是营销活动用券"),
MARKETING_COUPON_USER_AMOUNT_CONDITION_GREATER(56029, "使用条件订单金额要大于券面额"),
MARKETING_PLATFORM_ACTIVITY_SIGN_UP_IS_REPEAT(56030, "请勿重复报名"),
//************************************************
......
......@@ -57,7 +57,7 @@ public class ReceiverAddressController extends BaseController {
* @return 返回结果
*/
@PostMapping(value = "/add")
public Wrapper<Void> addReceiverAddress(@RequestBody @Validated(ReceiverAddressRequest.Add.class) ReceiverAddressRequest request) {
public Wrapper<ReceiverAddressResponse> addReceiverAddress(@RequestBody @Validated(ReceiverAddressRequest.Add.class) ReceiverAddressRequest request) {
// TODO 手机, 电话正则校验
UserLoginCacheDTO sysUser = getSysUser();
return receiverAddressService.addReceiverAddress(request, sysUser);
......
......@@ -56,7 +56,7 @@ public class ShipperAddressController extends BaseController {
* @return 返回结果
*/
@PostMapping(value = "/add")
public Wrapper<Void> addShipperAddress(@RequestBody @Validated(ShipperAddressRequest.Add.class) ShipperAddressRequest request) {
public Wrapper<ShipperAddressResponse> addShipperAddress(@RequestBody @Validated(ShipperAddressRequest.Add.class) ShipperAddressRequest request) {
// TODO 手机, 电话正则校验
UserLoginCacheDTO sysUser = getSysUser();
return shipperAddressService.addShipperAddress(request, sysUser);
......
......@@ -61,7 +61,7 @@ public class MobileReceiverAddressController extends BaseController {
* @return 返回结果
*/
@PostMapping(value = "/add")
public Wrapper<Void> addReceiverAddress(@RequestBody @Validated(ReceiverAddressRequest.Add.class) ReceiverAddressRequest request) {
public Wrapper<ReceiverAddressResponse> addReceiverAddress(@RequestBody @Validated(ReceiverAddressRequest.Add.class) ReceiverAddressRequest request) {
UserLoginCacheDTO sysUser = getSysUser();
return receiverAddressService.addReceiverAddress(request, sysUser);
}
......
......@@ -59,7 +59,7 @@ public class MobileShipperAddressController extends BaseController {
* @return 返回结果
*/
@PostMapping(value = "/add")
public Wrapper<Void> addShipperAddress(@RequestBody @Validated(ShipperAddressRequest.Add.class) ShipperAddressRequest request) {
public Wrapper<ShipperAddressResponse> addShipperAddress(@RequestBody @Validated(ShipperAddressRequest.Add.class) ShipperAddressRequest request) {
UserLoginCacheDTO sysUser = getSysUser();
return shipperAddressService.addShipperAddress(request, sysUser);
}
......
......@@ -37,8 +37,9 @@ public interface IReceiverAddressService {
* 收货地址添加
* @param request 接口参数
* @param loginUser 登录用户信息
* @return 返回结果
*/
Wrapper<Void> addReceiverAddress(ReceiverAddressRequest request, UserLoginCacheDTO loginUser);
Wrapper<ReceiverAddressResponse> addReceiverAddress(ReceiverAddressRequest request, UserLoginCacheDTO loginUser);
/**
* 收货地址修改
......
......@@ -45,8 +45,9 @@ public interface IShipperAddressService {
* 发货地址添加
* @param request 接口参数
* @param loginUser 登录用户信息
* @return 返回结果
*/
Wrapper<Void> addShipperAddress(ShipperAddressRequest request, UserLoginCacheDTO loginUser);
Wrapper<ShipperAddressResponse> addShipperAddress(ShipperAddressRequest request, UserLoginCacheDTO loginUser);
/**
* 发货地址修改
......
......@@ -76,7 +76,7 @@ public class ReceiverAddressServiceImpl implements IReceiverAddressService {
@Transactional(rollbackFor = Exception.class)
@Override
public Wrapper<Void> addReceiverAddress(ReceiverAddressRequest request, UserLoginCacheDTO loginUser) {
public Wrapper<ReceiverAddressResponse> addReceiverAddress(ReceiverAddressRequest request, UserLoginCacheDTO loginUser) {
ReceiverAddress receiverAddress = new ReceiverAddress();
updateAllStateNotDefault(request.getIsDefault(), loginUser.getMemberId(), loginUser.getMemberRoleId());
......@@ -87,7 +87,9 @@ public class ReceiverAddressServiceImpl implements IReceiverAddressService {
receiverAddress.setCreateTime(System.currentTimeMillis());
receiverAddressRepository.saveAndFlush(receiverAddress);
return Wrapper.success();
ReceiverAddressResponse receiverAddressResponse = new ReceiverAddressResponse();
BeanUtils.copyProperties(receiverAddress, receiverAddressResponse);
return Wrapper.success(receiverAddressResponse);
}
@Transactional(rollbackFor = Exception.class)
......
......@@ -100,7 +100,7 @@ public class ShipperAddressServiceImpl implements IShipperAddressService {
@Transactional(rollbackFor = Exception.class)
@Override
public Wrapper<Void> addShipperAddress(ShipperAddressRequest request, UserLoginCacheDTO loginUser) {
public Wrapper<ShipperAddressResponse> addShipperAddress(ShipperAddressRequest request, UserLoginCacheDTO loginUser) {
ShipperAddress shipperAddress = new ShipperAddress();
updateAllStateNotDefault(request.getIsDefault(), loginUser.getMemberId(), loginUser.getMemberRoleId());
......@@ -111,7 +111,9 @@ public class ShipperAddressServiceImpl implements IShipperAddressService {
shipperAddress.setCreateTime(System.currentTimeMillis());
shipperAddressRepository.saveAndFlush(shipperAddress);
return Wrapper.success();
ShipperAddressResponse shipperAddressResponse = new ShipperAddressResponse();
BeanUtils.copyProperties(shipperAddress, shipperAddressResponse);
return Wrapper.success(shipperAddressResponse);
}
@Transactional(rollbackFor = Exception.class)
......
......@@ -212,7 +212,7 @@ public class PlatformActivitySignUpController extends BaseController {
}
/**
* 待提交报名资料-列表查询
* 待提交报名资料-提交报名
* @return
**/
@RequestMapping(value = "/submit/sign/up", method = RequestMethod.POST)
......
......@@ -123,6 +123,11 @@ public class PlatformActivityGoodsDO implements Serializable {
@Column(columnDefinition = "int4")
private Integer restrictTotalNum;
/**
* 商品主图
*/
@Column(columnDefinition = "varchar(250)")
private String productImgUrl;
/**
* 附属商品信息(仅赠送促销、换购、套票)
*/
@Transient
......@@ -285,6 +290,14 @@ public class PlatformActivityGoodsDO implements Serializable {
this.restrictTotalNum = restrictTotalNum;
}
public String getProductImgUrl() {
return productImgUrl;
}
public void setProductImgUrl(String productImgUrl) {
this.productImgUrl = productImgUrl;
}
public List<PlatformActivityGoodsSubsidiaryDO> getGoodsSubsidiaryDOList() {
return goodsSubsidiaryDOList;
}
......
......@@ -92,6 +92,11 @@ public class PlatformActivityGoodsSubsidiaryDO implements Serializable {
* */
@Column(columnDefinition = "numeric")
private BigDecimal groupPrice;
/**
* 赠品主图
*/
@Column(columnDefinition = "varchar(250)")
private String productImgUrl;
public Long getId() {
......@@ -205,4 +210,12 @@ public class PlatformActivityGoodsSubsidiaryDO implements Serializable {
public void setGroupPrice(BigDecimal groupPrice) {
this.groupPrice = groupPrice;
}
public String getProductImgUrl() {
return productImgUrl;
}
public void setProductImgUrl(String productImgUrl) {
this.productImgUrl = productImgUrl;
}
}
......@@ -83,6 +83,11 @@ public class PfActivitySignUpGoodsReq implements Serializable {
@Range(min = 1,message = "活动限购总数量必须大于0")
private Integer restrictTotalNum;
/**
* 活动商品图片
*/
@NotNull(message = "活动商品图片地址不能为空")
private String productImgUrl;
/**
* 商品赠品、换购商品、套餐商品
*/
private List<PfActivitySignUpGoodsSubsidiaryReq> goodsSubsidiaryList;
......
......@@ -71,4 +71,8 @@ public class PfActivitySignUpGoodsSubsidiaryReq implements Serializable {
* 套餐价格
* */
private BigDecimal groupPrice;
/**
* 赠品主图
*/
private String productImgUrl;
}
......@@ -112,4 +112,8 @@ public class PfActivitySignUpGoodsPageResp implements Serializable {
* */
private Integer restrictTotalNum;
/**
* 活动商品图片
*/
private String productImgUrl;
}
......@@ -68,4 +68,8 @@ public class PfActivitySignUpSubsidiaryGoodsResp implements Serializable {
* 套餐价格
* */
private BigDecimal groupPrice;
/**
* 赠品主图
*/
private String productImgUrl;
}
......@@ -240,11 +240,17 @@ public class PlatformActivitySignUpServiceImpl implements IPlatformActivitySignU
}).collect(Collectors.toList());
}
private List<PlatformActivityGoodsDO> convertPlatformActivityGoodsDOList(PfActivitySignUpAddReq addReq,PlatformActivityDO activityDO){
private List<PlatformActivityGoodsDO> convertPlatformActivityGoodsDOList(PfActivitySignUpAddReq addReq,PlatformActivityDO activityDO,UserLoginCacheDTO sysUser,Long signUpId){
List<PlatformActivityGoodsDO> goodsDOS=new ArrayList<>();
addReq.getProductList().forEach(vo ->{
PlatformActivityGoodsDO goodsDO=new PlatformActivityGoodsDO();
BeanUtils.copyProperties(vo,goodsDO);
goodsDO.setActivityId(activityDO.getId());
goodsDO.setMemberId(sysUser.getMemberId());
goodsDO.setRoleId(sysUser.getMemberRoleId());
goodsDO.setMemberName(sysUser.getCompany());
goodsDO.setRoleName(sysUser.getUserRoleName());
goodsDO.setSignUpId(signUpId);
//判断是否含附属信息
if(ActivityTypeEnum.containSubsidiary(activityDO.getActivityType())){
//赠送促销
......@@ -287,6 +293,11 @@ public class PlatformActivitySignUpServiceImpl implements IPlatformActivitySignU
long now = System.currentTimeMillis();
if(isSave){
signUpDO=convertSignUpDO(sysUser,addReq);
//校验重复报名
PlatformActivitySignUpDO dbSignUpDO = signUpRepository.findByActivityIdAndMemberIdAndRoleId(addReq.getActivityId(), sysUser.getMemberId(), sysUser.getMemberRoleId());
if(dbSignUpDO!=null){
throw new BusinessException(ResponseCode.MARKETING_PLATFORM_ACTIVITY_SIGN_UP_IS_REPEAT);
}
signUpRepository.saveAndFlush(signUpDO);
}else{
signUpDO=signUpRepository.findByIdAndMemberIdAndRoleId(addReq.getId(),sysUser.getMemberId(),sysUser.getMemberRoleId());
......@@ -311,7 +322,7 @@ public class PlatformActivitySignUpServiceImpl implements IPlatformActivitySignU
//校验15种类型特定参数
checkByActivityType(addReq,activityDO);
//保存报名资料
List<PlatformActivityGoodsDO> goodsDOS = convertPlatformActivityGoodsDOList(addReq, activityDO);
List<PlatformActivityGoodsDO> goodsDOS = convertPlatformActivityGoodsDOList(addReq, activityDO,sysUser,signUpDO.getId());
goodsRepository.saveAll(goodsDOS);
//附属商品
List<PlatformActivityGoodsSubsidiaryDO> goodsSubsidiaryDOS=new ArrayList<>();
......
......@@ -24,6 +24,6 @@ public interface MemberOrderCommentControllerFeign {
* @return 返回结果
*/
@RequestMapping(value = "/member/feign/orderComment/save", method = RequestMethod.POST)
public Wrapper<Void> saveMemberOrderComment(@RequestBody @Valid MemberOrderCommentVO memberOrderCommentVO);
Wrapper<Void> saveMemberOrderComment(@RequestBody @Valid MemberOrderCommentVO memberOrderCommentVO);
}
......@@ -19,25 +19,18 @@ public interface IReportFeignService {
void memberValidateReport(MemberRelationDO relationDO, Integer lastInnerStatus, String reason);
/**
* 会员订单评价之后发送首页统计通知
* @param typeEnum 会员评价类型
* @param memberId 会员id
* @param roleId 角色id
*/
void memberOrderCommentReport(Integer typeEnum, Long memberId, Long roleId);
/**
* 首页统计增加
*/
void increaseReport(Integer dataSource, Long memberId, Long roleId, Integer operateType);
void increaseReport(Integer dataSource, Integer operateType, Long memberId, Long roleId);
/**
* 首页统计减少
*/
void reduceReport(Integer dataSource, Long memberId, Long roleId, Integer operateType);
void reduceReport(Integer dataSource, Integer operateType, Long memberId, Long roleId);
/**
* 首页统计一方减少一方增加
*/
void reduceAndIncreaseReport(Integer dataSource, Long memberId, Long roleId, Integer operateType, Long subMemberId, Long subRoleId, Integer subOperateType);
void reduceAndIncreaseReport(Integer dataSource, Integer operateType, Long memberId, Long roleId,
Integer subDataSource, Integer subOperateType, Long subMemberId, Long subRoleId);
}
......@@ -3,11 +3,12 @@ package com.ssy.lingxi.member.merchant.serviceimpl.feign;
import com.ssy.lingxi.common.response.ResponseCode;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.member.merchant.entity.MemberRelationDO;
import com.ssy.lingxi.member.merchant.model.constant.*;
import com.ssy.lingxi.member.merchant.model.constant.MemberInnerStatusEnum;
import com.ssy.lingxi.member.merchant.model.constant.MemberProcessTypeEnum;
import com.ssy.lingxi.member.merchant.model.constant.MemberRelationTypeEnum;
import com.ssy.lingxi.member.merchant.model.constant.PlatformInnerStatusEnum;
import com.ssy.lingxi.member.merchant.service.feign.IReportFeignService;
import com.ssy.lingxi.report.api.enums.OperateDataSourceEnum;
import com.ssy.lingxi.report.api.enums.PurchaseOrderOperateTypeEnum;
import com.ssy.lingxi.report.api.enums.SaleOrderOperateTypeEnum;
import com.ssy.lingxi.report.api.feign.ReportControllerFeign;
import com.ssy.lingxi.report.api.vo.request.OperateNoticeVO;
import org.slf4j.Logger;
......@@ -95,34 +96,7 @@ public class ReportFeignServiceImpl implements IReportFeignService {
@Async
@Override
public void memberOrderCommentReport(Integer typeEnum, Long memberId, Long roleId) {
// 通知对象
OperateNoticeVO operateNoticeVO = new OperateNoticeVO();
operateNoticeVO.setMemberId(memberId);
operateNoticeVO.setRoleId(roleId);
if (MemberTradeTypeEnum.BUYER.getTypeEnum().equals(typeEnum)) {
// 买方
operateNoticeVO.setDataSource(OperateDataSourceEnum.TRADE_PURCHASE_ORDER.getCode());
operateNoticeVO.setReduceOperateType(PurchaseOrderOperateTypeEnum.TO_BE_EVALUATE.getCode());
operateNoticeVO.setReduceCount(1L);
} else if (MemberTradeTypeEnum.SELLER.getTypeEnum().equals(typeEnum)) {
// 卖方
operateNoticeVO.setDataSource(OperateDataSourceEnum.TRADE_SALE_ORDER.getCode());
operateNoticeVO.setReduceOperateType(SaleOrderOperateTypeEnum.TO_BE_EVALUATE.getCode());
operateNoticeVO.setReduceCount(1L);
}
try {
reportControllerFeign.addOperateNotice(operateNoticeVO);
} catch (Exception e) {
logger.error("会员订单评价数据通知错误", e);
}
}
@Async
@Override
public void increaseReport(Integer dataSource, Long memberId, Long roleId, Integer operateType) {
public void increaseReport(Integer dataSource, Integer operateType, Long memberId, Long roleId) {
List<OperateNoticeVO> operateNoticeVOList = new ArrayList<>();
// 待发送 - 增加
OperateNoticeVO increaseOperateNotice = new OperateNoticeVO();
......@@ -142,7 +116,7 @@ public class ReportFeignServiceImpl implements IReportFeignService {
@Async
@Override
public void reduceReport(Integer dataSource, Long memberId, Long roleId, Integer operateType) {
public void reduceReport(Integer dataSource, Integer operateType, Long memberId, Long roleId) {
List<OperateNoticeVO> operateNoticeVOList = new ArrayList<>();
// 待整改 - 减少
OperateNoticeVO reduceOperateNotice = new OperateNoticeVO();
......@@ -162,7 +136,7 @@ public class ReportFeignServiceImpl implements IReportFeignService {
@Async
@Override
public void reduceAndIncreaseReport(Integer dataSource, Long memberId, Long roleId, Integer operateType, Long subMemberId, Long subRoleId, Integer subOperateType) {
public void reduceAndIncreaseReport(Integer dataSource, Integer operateType, Long memberId, Long roleId, Integer subDataSource, Integer subOperateType, Long subMemberId, Long subRoleId) {
List<OperateNoticeVO> operateNoticeVOList = new ArrayList<>();
// 减少
OperateNoticeVO reduceOperateNotice = new OperateNoticeVO();
......@@ -177,7 +151,7 @@ public class ReportFeignServiceImpl implements IReportFeignService {
OperateNoticeVO increaseOperateNotice = new OperateNoticeVO();
increaseOperateNotice.setMemberId(subMemberId);
increaseOperateNotice.setRoleId(subRoleId);
increaseOperateNotice.setDataSource(dataSource);
increaseOperateNotice.setDataSource(subDataSource);
increaseOperateNotice.setIncreaseOperateType(subOperateType);
increaseOperateNotice.setIncreaseCount(1L);
operateNoticeVOList.add(increaseOperateNotice);
......
......@@ -337,14 +337,12 @@ public class MemberCommentServiceImpl implements IMemberCommentService {
if (MemberTradeTypeEnum.BUYER.equals(memberTradeTypeEnum)) {
// 首页统计
reportFeignService.reduceReport(OperateDataSourceEnum.TRADE_PURCHASE_ORDER.getCode(),
memberOrderCommentDO.getBuyerMemberId(), memberOrderCommentDO.getBuyerRoleId(),
PurchaseOrderOperateTypeEnum.TO_BE_EVALUATE.getCode());
reportFeignService.reduceReport(OperateDataSourceEnum.TRADE_PURCHASE_ORDER.getCode(), PurchaseOrderOperateTypeEnum.TO_BE_EVALUATE.getCode(),
memberOrderCommentDO.getBuyerMemberId(), memberOrderCommentDO.getBuyerRoleId());
} else {
// 首页统计
reportFeignService.reduceReport(OperateDataSourceEnum.TRADE_SALE_ORDER.getCode(),
memberOrderCommentDO.getVendorMemberId(), memberOrderCommentDO.getVendorRoleId(),
PurchaseOrderOperateTypeEnum.TO_BE_EVALUATE.getCode());
reportFeignService.reduceReport(OperateDataSourceEnum.TRADE_SALE_ORDER.getCode(), PurchaseOrderOperateTypeEnum.TO_BE_EVALUATE.getCode(),
memberOrderCommentDO.getVendorMemberId(), memberOrderCommentDO.getVendorRoleId());
}
return Wrapper.success();
......
......@@ -506,8 +506,8 @@ public class MemberRectifyServiceImpl implements IMemberRectifyService {
memberRectifyRepository.saveAndFlush(memberRectifyDO);
// 首页统计
reportFeignService.increaseReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(),
memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId(), MemberRectifyOperateTypeEnum.TO_BE_SEND_NOTICE_COUNT.getCode());
reportFeignService.increaseReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(), MemberRectifyOperateTypeEnum.TO_BE_SEND_NOTICE_COUNT.getCode(),
memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId());
// 发送消息
messageFeignService.sendSystemMessage(memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId(),
......@@ -570,8 +570,8 @@ public class MemberRectifyServiceImpl implements IMemberRectifyService {
memberRectifyRepository.delete(memberRectifyDO);
// 首页统计
reportFeignService.reduceReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(),
memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId(), MemberRectifyOperateTypeEnum.TO_BE_SEND_NOTICE_COUNT.getCode());
reportFeignService.reduceReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(), MemberRectifyOperateTypeEnum.TO_BE_SEND_NOTICE_COUNT.getCode(),
memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId());
return Wrapper.success();
}
......@@ -627,9 +627,8 @@ public class MemberRectifyServiceImpl implements IMemberRectifyService {
}
// 首页统计
reportFeignService.reduceAndIncreaseReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(),
memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId(), MemberRectifyOperateTypeEnum.TO_BE_SEND_NOTICE_COUNT.getCode(),
memberRectifyDO.getSubMember().getId(), memberRectifyDO.getSubRole().getId(), MemberRectifyNoticeOperateTypeEnum.TO_BE_RECTIFY_COUNT.getCode());
reportFeignService.reduceAndIncreaseReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(), MemberRectifyOperateTypeEnum.TO_BE_SEND_NOTICE_COUNT.getCode(), memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId(),
OperateDataSourceEnum.MEMBER_RECTIFY_NOTICE.getCode(), MemberRectifyNoticeOperateTypeEnum.TO_BE_RECTIFY_COUNT.getCode(), memberRectifyDO.getSubMember().getId(), memberRectifyDO.getSubRole().getId());
// 发送消息
messageFeignService.sendSystemMessage(memberRectifyDO.getSubMember().getId(), memberRectifyDO.getSubRole().getId(),
......@@ -676,9 +675,8 @@ public class MemberRectifyServiceImpl implements IMemberRectifyService {
memberRectifyRepository.saveAndFlush(memberRectifyDO);
// 首页统计
reportFeignService.reduceAndIncreaseReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(),
memberRectifyDO.getSubMember().getId(), memberRectifyDO.getSubRole().getId(), MemberRectifyNoticeOperateTypeEnum.TO_BE_RECTIFY_COUNT.getCode(),
memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId(), MemberRectifyOperateTypeEnum.TO_BE_CONFIRM_NOTICE_COUNT.getCode());
reportFeignService.reduceAndIncreaseReport(OperateDataSourceEnum.MEMBER_RECTIFY_NOTICE.getCode(), MemberRectifyNoticeOperateTypeEnum.TO_BE_RECTIFY_COUNT.getCode(), memberRectifyDO.getSubMember().getId(), memberRectifyDO.getSubRole().getId(),
OperateDataSourceEnum.MEMBER_RECTIFY.getCode(), MemberRectifyOperateTypeEnum.TO_BE_CONFIRM_NOTICE_COUNT.getCode(), memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId());
// 发送消息
messageFeignService.sendSystemMessage(memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId(),
......@@ -735,12 +733,12 @@ public class MemberRectifyServiceImpl implements IMemberRectifyService {
if (EnableDisableStatus.ENABLE.getCode().equals(agreeVO.getAgree())) {
// 首页统计
reportFeignService.reduceReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(),
memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId(), MemberRectifyOperateTypeEnum.TO_BE_CONFIRM_NOTICE_COUNT.getCode());
reportFeignService.reduceReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(), MemberRectifyOperateTypeEnum.TO_BE_CONFIRM_NOTICE_COUNT.getCode(),
memberRectifyDO.getMember().getId(), memberRectifyDO.getRole().getId());
} else {
// 首页统计
reportFeignService.increaseReport(OperateDataSourceEnum.MEMBER_RECTIFY.getCode(),
memberRectifyDO.getSubMember().getId(), memberRectifyDO.getSubRole().getId(), MemberRectifyNoticeOperateTypeEnum.TO_BE_RECTIFY_COUNT.getCode());
reportFeignService.increaseReport(OperateDataSourceEnum.MEMBER_RECTIFY_NOTICE.getCode(), MemberRectifyNoticeOperateTypeEnum.TO_BE_RECTIFY_COUNT.getCode(),
memberRectifyDO.getSubMember().getId(), memberRectifyDO.getSubRole().getId());
// 发送消息
messageFeignService.sendSystemMessage(memberRectifyDO.getSubMember().getId(), memberRectifyDO.getSubRole().getId(),
......
package com.ssy.lingxi.order.api.model.vo.request;
import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import java.io.Serializable;
import java.util.List;
/**
* 售后服务 - 修改订单商品的换货、退货、维修数量
* @author 万宁
* @version 2.0.0
* @date 2021-08-06
*/
public class OrderAfterSaleVO implements Serializable {
private static final long serialVersionUID = 3492933630945033716L;
/**
* 订单Id
*/
@NotNull(message = "订单Id要大于0")
@Positive(message = "订单Id要大于0")
private Long orderId;
/**
* 订单商品列表
*/
@NotEmpty(message = "订单商品列表不能为空")
@Valid
private List<OrderProductAfterSaleVO> products;
public Long getOrderId() {
return orderId;
}
public void setOrderId(Long orderId) {
this.orderId = orderId;
}
public List<OrderProductAfterSaleVO> getProducts() {
return products;
}
public void setProducts(List<OrderProductAfterSaleVO> products) {
this.products = products;
}
}
package com.ssy.lingxi.order.api.model.vo.request;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import java.io.Serializable;
/**
* 订单Id作为接口参数
* @author 万宁
* @version 2.0.0
* @date 2021-08-06
*/
public class OrderIdFeignVO implements Serializable {
private static final long serialVersionUID = 1503499935366204822L;
/**
* 订单Id
*/
@NotNull(message = "订单Id要大于0")
@Positive(message = "订单Id要大于0")
private Long orderId;
public Long getOrderId() {
return orderId;
}
public void setOrderId(Long orderId) {
this.orderId = orderId;
}
}
package com.ssy.lingxi.order.api.model.vo.request;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @author 万宁
* @version 2.0.0
* @date 2021-08-06
*/
public class OrderProductAfterSaleVO implements Serializable {
private static final long serialVersionUID = -828327298738792475L;
public OrderProductAfterSaleVO() {
this.productId = "";
this.exchangeCount = BigDecimal.ZERO;
this.returnCount = BigDecimal.ZERO;
this.maintainCount = BigDecimal.ZERO;
}
/**
* 商品SkuId或物料编号
*/
private String productId;
/**
* 换货数量
*/
private BigDecimal exchangeCount;
/**
* 退货数量
*/
private BigDecimal returnCount;
/**
* 维修数量
*/
private BigDecimal maintainCount;
public String getProductId() {
return productId;
}
public void setProductId(String productId) {
this.productId = productId;
}
public BigDecimal getExchangeCount() {
return exchangeCount;
}
public void setExchangeCount(BigDecimal exchangeCount) {
this.exchangeCount = exchangeCount;
}
public BigDecimal getReturnCount() {
return returnCount;
}
public void setReturnCount(BigDecimal returnCount) {
this.returnCount = returnCount;
}
public BigDecimal getMaintainCount() {
return maintainCount;
}
public void setMaintainCount(BigDecimal maintainCount) {
this.maintainCount = maintainCount;
}
}
......@@ -174,6 +174,12 @@ public class OrderProductDO implements Serializable {
private BigDecimal returnCount;
/**
* 维修数量
*/
@Column(columnDefinition = "numeric(15,4)")
private BigDecimal maintainCount;
/**
* 自提地址(如配送方式为自提,必填)
*/
@Column(columnDefinition = "varchar(200)")
......@@ -399,6 +405,14 @@ public class OrderProductDO implements Serializable {
this.returnCount = returnCount;
}
public BigDecimal getMaintainCount() {
return maintainCount;
}
public void setMaintainCount(BigDecimal maintainCount) {
this.maintainCount = maintainCount;
}
public String getAddress() {
return address;
}
......
package com.ssy.lingxi.order.model.vo.common.request;
import com.ssy.lingxi.common.model.vo.PageVO;
import com.ssy.lingxi.order.handler.annotation.DateStringFormatAnnotation;
import com.ssy.lingxi.order.handler.annotation.OrderTypeAnnotation;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import java.io.Serializable;
......@@ -38,6 +41,14 @@ public class OrderAfterSalePageVO extends PageVO implements Serializable {
private Integer orderType;
/**
* 售后类型,2-换货,3-退货,4-维修
*/
@NotNull(message = "售后类型不能为空,2-换货,3-退货,4-维修")
@Min(value = 2, message = "售后类型参数错误,2-换货,3-退货,4-维修")
@Max(value = 4, message = "售后类型参数错误,2-换货,3-退货,4-维修")
private Integer afterSalesType;
/**
* 订单编号
*/
private String orderNo;
......@@ -50,11 +61,13 @@ public class OrderAfterSalePageVO extends PageVO implements Serializable {
/**
* 下单起始日期,格式为yyyy-MM-dd
*/
@DateStringFormatAnnotation
private String startDate;
/**
* 下单结束日期,格式为yyyy-MM-dd
*/
@DateStringFormatAnnotation
private String endDate;
public Long getVendorMemberId() {
......@@ -81,6 +94,14 @@ public class OrderAfterSalePageVO extends PageVO implements Serializable {
this.orderType = orderType;
}
public Integer getAfterSalesType() {
return afterSalesType;
}
public void setAfterSalesType(Integer afterSalesType) {
this.afterSalesType = afterSalesType;
}
public String getOrderNo() {
return orderNo;
}
......
package com.ssy.lingxi.order.model.vo.common.response;
import com.ssy.lingxi.common.constant.order.OrderTypeEnum;
import com.ssy.lingxi.order.model.constant.OrderOuterStatusEnum;
import com.ssy.lingxi.order.model.constant.OrderServiceContants;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -12,6 +20,20 @@ import java.util.List;
public class OrderAfterSalePageQueryVO implements Serializable {
private static final long serialVersionUID = -1429417821303763899L;
public OrderAfterSalePageQueryVO(Long orderId, String orderNo, String vendorMemberName, Integer orderType, LocalDateTime createTime, Integer outerStatus, Long contractId, String contractNo, List<OrderAfterSaleProductDetailVO> products) {
this.orderId = orderId;
this.orderNo = orderNo;
this.vendorMemberName = vendorMemberName;
this.orderType = orderType;
this.orderTypeName = OrderTypeEnum.getNameByCode(this.orderType);
this.createTime = createTime.format(OrderServiceContants.DEFAULT_TIME_FORMATTER);
this.outerStatus = outerStatus;
this.outerStatusName = OrderOuterStatusEnum.getNameByCode(this.getOuterStatus());
this.contractId = contractId == null ? 0L : contractId;
this.contractNo = StringUtils.hasLength(contractNo) ? contractNo : "";
this.products = CollectionUtils.isEmpty(products) ? new ArrayList<>() : products;
}
/**
* 订单Id
*/
......@@ -53,6 +75,11 @@ public class OrderAfterSalePageQueryVO implements Serializable {
private String outerStatusName;
/**
* 合同Id
*/
private Long contractId;
/**
* 合同编号
*/
private String contractNo;
......@@ -126,6 +153,14 @@ public class OrderAfterSalePageQueryVO implements Serializable {
this.outerStatusName = outerStatusName;
}
public Long getContractId() {
return contractId;
}
public void setContractId(Long contractId) {
this.contractId = contractId;
}
public String getContractNo() {
return contractNo;
}
......
package com.ssy.lingxi.order.model.vo.common.response;
import com.ssy.lingxi.order.utils.NumberUtil;
import org.springframework.util.StringUtils;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 售后能力 - 退货换货 - 查询订单商品
......@@ -11,6 +15,26 @@ import java.io.Serializable;
public class OrderAfterSaleProductDetailVO implements Serializable {
private static final long serialVersionUID = -2975506613066526558L;
public OrderAfterSaleProductDetailVO(String processKey, Long skuId, String productNo, String name, String category, String brand, String unit, String spec, BigDecimal quantity, BigDecimal price, BigDecimal amount, BigDecimal exchangeCount, BigDecimal returnCount, BigDecimal maintainCount) {
this.processKey = StringUtils.hasLength(processKey) ? processKey : "";
this.productId = StringUtils.hasLength(productNo) ? productNo : String.valueOf(skuId);
this.name = StringUtils.hasLength(spec) ? name.concat("/").concat(spec) : name;
this.category = category;
this.brand = brand;
this.unit = unit;
this.quantity = NumberUtil.formatToInteger(quantity);
this.price = NumberUtil.formatAmount(price);
this.amount = NumberUtil.formatAmount(amount);
this.exchangeCount = NumberUtil.formatToInteger(exchangeCount);
this.returnCount = NumberUtil.formatToInteger(returnCount);
this.maintainCount = NumberUtil.formatToInteger(maintainCount);
}
/**
* 工作流的ProcessKey
*/
private String processKey;
/**
* 商品SkuId,或物料编号
*/
......@@ -61,6 +85,19 @@ public class OrderAfterSaleProductDetailVO implements Serializable {
*/
private String returnCount;
/**
* 维修数量
*/
private String maintainCount;
public String getProcessKey() {
return processKey;
}
public void setProcessKey(String processKey) {
this.processKey = processKey;
}
public String getProductId() {
return productId;
}
......@@ -140,4 +177,12 @@ public class OrderAfterSaleProductDetailVO implements Serializable {
public void setReturnCount(String returnCount) {
this.returnCount = returnCount;
}
public String getMaintainCount() {
return maintainCount;
}
public void setMaintainCount(String maintainCount) {
this.maintainCount = maintainCount;
}
}
......@@ -3,6 +3,7 @@ package com.ssy.lingxi.order.service.feign;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.member.merchant.api.model.constant.MemberRightSpendTypeEnum;
import com.ssy.lingxi.member.merchant.api.model.vo.inner.request.MemberFeignVO;
import com.ssy.lingxi.order.entity.OrderDO;
import com.ssy.lingxi.order.model.vo.platform.response.PlatformProcessMemberQueryVO;
import org.springframework.stereotype.Service;
......@@ -19,6 +20,17 @@ import java.util.List;
public interface IMemberFeignService {
/**
* (异步)通知会员服务,计算等级、权益、积分
* @param buyerMemberId 采购商会员Id
* @param buyerRoleId 采购商会员角色Id
* @param vendorMemberId 供应商会员Id
* @param vendorRoleId 供应商会员角色Id
* @param amount 订单金额
* @param orderNo 订单号
*/
void calculateMemberLrcAsync(Long buyerMemberId, Long buyerRoleId, Long vendorMemberId, Long vendorRoleId, BigDecimal amount, String orderNo);
/**
* 通知会员服务,计算等级、权益、积分
* @param buyerMemberId 采购商会员Id
* @param buyerRoleId 采购商会员角色Id
......@@ -45,6 +57,12 @@ public interface IMemberFeignService {
Wrapper<Void> calculateMemberUsedRightPoint(Long buyerMemberId, Long buyerRoleId, Long vendorMemberId, Long vendorRoleId, Integer memberRelationType, String payPassword, MemberRightSpendTypeEnum memberRightSpendTypeEnum, String orderNo);
/**
* 订单完成后,向会员服务的订单评论功能发送订单数据
* @param order 订单
*/
void saveMemberOrderCommentAsync(OrderDO order);
/**
* 查询平台会员的信息
* @param name 会员名称
* @param members 会员Id和角色Id列表
......
package com.ssy.lingxi.order.service.feign;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.order.api.model.vo.request.OrderAfterSaleVO;
import com.ssy.lingxi.order.api.model.vo.request.OrderPurchaseProcessFeignVO;
import com.ssy.lingxi.order.api.model.vo.request.OrderTradeProcessFeignVO;
import com.ssy.lingxi.order.api.model.vo.response.OrderPurchaseProcessFeignDetailVO;
......@@ -20,11 +21,17 @@ public interface IOrderFeignService {
*/
Wrapper<OrderTradeProcessFeignDetailVO> findVendorTradeProcess(OrderTradeProcessFeignVO feignVO);
/**
* 查询(采购)会员采购流程规则配置
* @param feignVO 接口参数
* @return 查询结果
*/
Wrapper<OrderPurchaseProcessFeignDetailVO> findBuyerPurchaseProcess(OrderPurchaseProcessFeignVO feignVO);
/**
* 售后服务 - 更新订单商品的换货、退货、维修数量
* @param afterSaleVO 接口参数
* @return 更新结果
*/
Wrapper<Void> updateAfterSaleOrderProduct(OrderAfterSaleVO afterSaleVO);
}
......@@ -744,7 +744,10 @@ public class BaseOrderServiceImpl implements IBaseOrderService {
}
//通知会员服务,计算会员权益积分
memberFeignService.calculateMemberLrc(order.getBuyerMemberId(), order.getBuyerRoleId(), order.getVendorMemberId(), order.getVendorRoleId(), order.getTotalAmount(), order.getOrderNo());
memberFeignService.calculateMemberLrcAsync(order.getBuyerMemberId(), order.getBuyerRoleId(), order.getVendorMemberId(), order.getVendorRoleId(), order.getTotalAmount(), order.getOrderNo());
//通知会员服务,记录订单,待评论订单
memberFeignService.saveMemberOrderCommentAsync(order);
//Srm订单不需要交易记录、不需要更新成交数量
if(!order.getOrderKind().equals(OrderSourceKindEnum.SRM.getCode())) {
......
......@@ -4,14 +4,17 @@ import com.ssy.lingxi.common.response.ResponseCode;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.member.merchant.api.feign.inner.MemberInnerControllerFeign;
import com.ssy.lingxi.member.merchant.api.feign.inner.MemberLevelRightCreditControllerFeign;
import com.ssy.lingxi.member.merchant.api.feign.inner.MemberOrderCommentControllerFeign;
import com.ssy.lingxi.member.merchant.api.model.constant.MemberRightSpendTypeEnum;
import com.ssy.lingxi.member.merchant.api.model.vo.inner.request.MemberFeignOrderVO;
import com.ssy.lingxi.member.merchant.api.model.vo.inner.request.MemberFeignRightSpendVO;
import com.ssy.lingxi.member.merchant.api.model.vo.inner.request.MemberFeignVO;
import com.ssy.lingxi.member.merchant.api.model.vo.inner.request.*;
import com.ssy.lingxi.member.merchant.api.model.vo.inner.response.MemberFeignPageQueryVO;
import com.ssy.lingxi.member.merchant.api.model.vo.inner.response.MemberFeignReturnRightVO;
import com.ssy.lingxi.order.entity.OrderDO;
import com.ssy.lingxi.order.model.vo.platform.response.PlatformProcessMemberQueryVO;
import com.ssy.lingxi.order.service.feign.IMemberFeignService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
......@@ -31,12 +34,47 @@ import java.util.stream.Collectors;
*/
@Service
public class MemberFeignServiceImpl implements IMemberFeignService {
private static final Logger logger = LoggerFactory.getLogger(MemberFeignServiceImpl.class);
@Resource
private MemberLevelRightCreditControllerFeign memberLevelRightCreditControllerFeign;
@Resource
private MemberInnerControllerFeign memberInnerControllerFeign;
@Resource
private MemberOrderCommentControllerFeign memberOrderCommentControllerFeign;
/**
* (异步)通知会员服务,计算等级、权益、积分
*
* @param buyerMemberId 采购商会员Id
* @param buyerRoleId 采购商会员角色Id
* @param vendorMemberId 供应商会员Id
* @param vendorRoleId 供应商会员角色Id
* @param amount 订单金额
* @param orderNo 订单号
*/
@Async
@Override
public void calculateMemberLrcAsync(Long buyerMemberId, Long buyerRoleId, Long vendorMemberId, Long vendorRoleId, BigDecimal amount, String orderNo) {
try {
MemberFeignOrderVO orderVO = new MemberFeignOrderVO();
orderVO.setUpperMemberId(vendorMemberId);
orderVO.setUpperRoleId(vendorRoleId);
orderVO.setSubMemberId(buyerMemberId);
orderVO.setSubRoleId(buyerRoleId);
orderVO.setOrderNo(orderNo);
orderVO.setAmount(amount.doubleValue());
Wrapper<MemberFeignReturnRightVO> returnRight = memberLevelRightCreditControllerFeign.calculateMemberLrcByOrder(orderVO);
if (returnRight.getCode() != ResponseCode.SUCCESS.getCode()) {
logger.error("通知会员服务,计算等级、权益、积分错误:" + returnRight.getMessage());
}
} catch (Exception e) {
logger.error("通知会员服务,计算等级、权益、积分错误:" + e.getMessage());
}
}
/**
* 通知会员服务,计算等级、权益、积分
*
......@@ -93,6 +131,74 @@ public class MemberFeignServiceImpl implements IMemberFeignService {
}
/**
* 订单完成后,向会员服务的订单评论功能发送订单数据
*
* @param order 订单
*/
@Async
@Override
public void saveMemberOrderCommentAsync(OrderDO order) {
try {
MemberOrderCommentVO commentVO = new MemberOrderCommentVO();
commentVO.setId(order.getId());
commentVO.setCreateTime(order.getCreateTime());
commentVO.setBuyerMemberId(order.getBuyerMemberId());
commentVO.setBuyerRoleId(order.getBuyerRoleId());
commentVO.setBuyerMemberName(order.getBuyerMemberName());
commentVO.setVendorMemberId(order.getVendorMemberId());
commentVO.setVendorRoleId(order.getVendorRoleId());
commentVO.setVendorMemberName(order.getVendorMemberName());
commentVO.setOrderNo(order.getOrderNo());
commentVO.setShopId(order.getShopId());
commentVO.setShopType(order.getShopType());
commentVO.setShopEnvironment(order.getShopEnvironment());
commentVO.setShopName(order.getShopName());
commentVO.setOrderMode(order.getOrderMode());
commentVO.setOrderType(order.getOrderType());
commentVO.setOrderKind(order.getOrderKind());
commentVO.setPayType(order.getPayType());
commentVO.setPayChannel(order.getPayChannel());
commentVO.setQuoteNo(order.getQuoteNo());
commentVO.setDigest(order.getDigest());
commentVO.setProductAmount(order.getProductAmount());
commentVO.setFreight(order.getFreight());
commentVO.setPromotionAmount(order.getPromotionAmount());
commentVO.setCouponAmount(order.getCouponAmount());
commentVO.setTotalAmount(order.getTotalAmount());
commentVO.setBuyerInnerStatus(order.getBuyerInnerStatus());
commentVO.setVendorInnerStatus(order.getVendorInnerStatus());
commentVO.setOuterStatus(order.getOuterStatus());
commentVO.setProducts(order.getProducts().stream().map(product -> {
MemberOrderProductCommentVO productCommentVO = new MemberOrderProductCommentVO();
productCommentVO.setId(product.getId());
productCommentVO.setProductId(product.getProductId());
productCommentVO.setProductNo(product.getProductNo());
productCommentVO.setName(product.getName());
productCommentVO.setCategory(product.getCategory());
productCommentVO.setBrand(product.getBrand());
productCommentVO.setSpec(product.getSpec());
productCommentVO.setUnit(product.getUnit());
productCommentVO.setLogo(product.getLogo());
productCommentVO.setPrice(product.getPrice());
productCommentVO.setQuantity(product.getQuantity());
productCommentVO.setAmount(product.getAmount());
productCommentVO.setDeliverType(product.getDeliverType());
productCommentVO.setAddress(product.getAddress());
productCommentVO.setReceiver(product.getReceiver());
productCommentVO.setPhone(product.getPhone());
return productCommentVO;
}).collect(Collectors.toList()));
Wrapper<Void> result = memberOrderCommentControllerFeign.saveMemberOrderComment(commentVO);
if (result.getCode() != ResponseCode.SUCCESS.getCode()) {
logger.error("订单完成后,向会员服务的订单评论功能发送订单数据错误:" + result.getMessage());
}
} catch (Exception e) {
logger.error("订单完成后,向会员服务的订单评论功能发送订单数据错误:" + e.getMessage());
}
}
/**
* 查询平台会员的信息
*
* @param members 会员Id和角色Id列表
......
......@@ -2,6 +2,7 @@ package com.ssy.lingxi.order.serviceimpl.feign;
import com.ssy.lingxi.common.response.ResponseCode;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.order.api.model.vo.request.OrderAfterSaleVO;
import com.ssy.lingxi.order.api.model.vo.request.OrderPurchaseProcessFeignVO;
import com.ssy.lingxi.order.api.model.vo.request.OrderTradeProcessFeignVO;
import com.ssy.lingxi.order.api.model.vo.response.OrderPurchaseProcessFeignDetailVO;
......@@ -73,4 +74,15 @@ public class OrderFeignServiceImpl implements IOrderFeignService {
detailVO.setSkipFirstStep(result.getData().getSkipFirstStep());
return Wrapper.success(detailVO);
}
/**
* 售后服务 - 更新订单商品的换货、退货、维修数量
*
* @param afterSaleVO 接口参数
* @return 更新结果
*/
@Override
public Wrapper<Void> updateAfterSaleOrderProduct(OrderAfterSaleVO afterSaleVO) {
return null;
}
}
......@@ -2,6 +2,8 @@ package com.ssy.lingxi.product.api.model.response.commodity;
import lombok.Data;
import java.util.Map;
/**
* 商品货品响应类
* @author jw.chen
......@@ -46,6 +48,16 @@ public class CommonCommodityPlatformResponse {
private String categoryName;
/**
* 计量单位
*/
private String unitName;
/**
* 商品单价
*/
private Map<String,Double> unitPrice;
/**
* 品牌
*/
private String brandName;
......
......@@ -2178,6 +2178,8 @@ public class CommodityServiceImpl implements ICommodityService {
commodityGoodsResponse.setMemberRoleId(commodity.getMemberRoleId());
commodityGoodsResponse.setMemberRoleName(commodity.getMemberRoleName());
commodityGoodsResponse.setMainPic(commodity.getMainPic());
commodityGoodsResponse.setUnitName(commodity.getUnitName());
commodityGoodsResponse.setUnitPrice(commodityUnitPriceAndPic.getUnitPrice());
Category category = commodity.getCustomerCategory().getCategory();
if(category != null){
commodityGoodsResponse.setCategoryName(category.getName());
......
......@@ -288,7 +288,6 @@ public class MemberHomeServiceImpl implements IMemberHomeService {
@Override
@Transactional
public Wrapper<Void> addOperateNotice(OperateNoticeVO operateVO) {
// 处理操作通知
handOperateNotice(operateVO);
......@@ -317,6 +316,7 @@ public class MemberHomeServiceImpl implements IMemberHomeService {
* @param operateVO
*/
private void handOperateNotice(OperateNoticeVO operateVO) {
logger.info("收到通知: {}", JSONUtil.toJsonStr(operateVO));
try {
handOperateNotice(operateVO,3);
}catch (Exception e){
......
......@@ -353,19 +353,19 @@ public class MemberTallyServiceImpl implements IMemberTallyService {
tallyBO.setToBeValifyQualificationCount(tallyBO.getToBeValifyQualificationCount() + noticeVO.getIncreaseCount());
break;
case TO_BE_IMPORT_EXPLORE:
tallyBO.setToBeImportExploreCount(tallyBO.getToBeImportExploreCount() + noticeVO.getReduceCount());
tallyBO.setToBeImportExploreCount(tallyBO.getToBeImportExploreCount() + noticeVO.getIncreaseCount());
break;
case TO_BE_IMPORT_CLASSIFY:
tallyBO.setToBeImportClassifyCount(tallyBO.getToBeImportClassifyCount() + noticeVO.getReduceCount());
tallyBO.setToBeImportClassifyCount(tallyBO.getToBeImportClassifyCount() + noticeVO.getIncreaseCount());
break;
case TO_BE_VALIFY_STEP1:
tallyBO.setToBeValifyStep1Count(tallyBO.getToBeValifyStep1Count() + noticeVO.getReduceCount());
tallyBO.setToBeValifyStep1Count(tallyBO.getToBeValifyStep1Count() + noticeVO.getIncreaseCount());
break;
case TO_BE_VALIFY_STEP2:
tallyBO.setToBeValifyStep2Count(tallyBO.getToBeValifyStep2Count() + noticeVO.getReduceCount());
tallyBO.setToBeValifyStep2Count(tallyBO.getToBeValifyStep2Count() + noticeVO.getIncreaseCount());
break;
case TO_BE_CONFIRM:
tallyBO.setToBeConfirmCount(tallyBO.getToBeConfirmCount() + noticeVO.getReduceCount());
tallyBO.setToBeConfirmCount(tallyBO.getToBeConfirmCount() + noticeVO.getIncreaseCount());
break;
}
}
......@@ -406,13 +406,13 @@ public class MemberTallyServiceImpl implements IMemberTallyService {
if (typeEnum != null) {
switch (typeEnum) {
case TO_BE_VALIFY_STEP1:
tallyBO.setToBeValifyStep1Count(tallyBO.getToBeValifyStep1Count() + noticeVO.getReduceCount());
tallyBO.setToBeValifyStep1Count(tallyBO.getToBeValifyStep1Count() + noticeVO.getIncreaseCount());
break;
case TO_BE_VALIFY_STEP2:
tallyBO.setToBeValifyStep2Count(tallyBO.getToBeValifyStep2Count() + noticeVO.getReduceCount());
tallyBO.setToBeValifyStep2Count(tallyBO.getToBeValifyStep2Count() + noticeVO.getIncreaseCount());
break;
case TO_BE_CONFIRM:
tallyBO.setToBeConfirmCount(tallyBO.getToBeConfirmCount() + noticeVO.getReduceCount());
tallyBO.setToBeConfirmCount(tallyBO.getToBeConfirmCount() + noticeVO.getIncreaseCount());
break;
}
}
......@@ -461,22 +461,22 @@ public class MemberTallyServiceImpl implements IMemberTallyService {
if (typeEnum != null) {
switch (typeEnum) {
case TO_BE_PUBLISH_COUNT:
tallyBO.setToBePublishCount(tallyBO.getToBePublishCount() + noticeVO.getReduceCount());
tallyBO.setToBePublishCount(tallyBO.getToBePublishCount() + noticeVO.getIncreaseCount());
break;
case TO_BE_SCORING_COUNT:
tallyBO.setToBeScoringCount(tallyBO.getToBeScoringCount() + noticeVO.getReduceCount());
tallyBO.setToBeScoringCount(tallyBO.getToBeScoringCount() + noticeVO.getIncreaseCount());
break;
case TO_BE_COMMIT_COUNT:
tallyBO.setToBeCommitCount(tallyBO.getToBeCommitCount() + noticeVO.getReduceCount());
tallyBO.setToBeCommitCount(tallyBO.getToBeCommitCount() + noticeVO.getIncreaseCount());
break;
case TO_BE_VALIFY_STEP1_COUNT:
tallyBO.setToBeValifyStep1Count(tallyBO.getToBeValifyStep1Count() + noticeVO.getReduceCount());
tallyBO.setToBeValifyStep1Count(tallyBO.getToBeValifyStep1Count() + noticeVO.getIncreaseCount());
break;
case TO_BE_VALIFY_STEP2_COUNT:
tallyBO.setToBeValifyStep2Count(tallyBO.getToBeValifyStep2Count() + noticeVO.getReduceCount());
tallyBO.setToBeValifyStep2Count(tallyBO.getToBeValifyStep2Count() + noticeVO.getIncreaseCount());
break;
case TO_BE_NOTICE_COUNT:
tallyBO.setToBeNoticeCount(tallyBO.getToBeNoticeCount() + noticeVO.getReduceCount());
tallyBO.setToBeNoticeCount(tallyBO.getToBeNoticeCount() + noticeVO.getIncreaseCount());
break;
}
}
......@@ -513,10 +513,10 @@ public class MemberTallyServiceImpl implements IMemberTallyService {
if (typeEnum != null) {
switch (typeEnum) {
case TO_BE_SEND_NOTICE_COUNT:
tallyBO.setToBeSendNoticeCount(tallyBO.getToBeSendNoticeCount() + noticeVO.getReduceCount());
tallyBO.setToBeSendNoticeCount(tallyBO.getToBeSendNoticeCount() + noticeVO.getIncreaseCount());
break;
case TO_BE_CONFIRM_NOTICE_COUNT:
tallyBO.setToBeConfirmNoticeCount(tallyBO.getToBeConfirmNoticeCount() + noticeVO.getReduceCount());
tallyBO.setToBeConfirmNoticeCount(tallyBO.getToBeConfirmNoticeCount() + noticeVO.getIncreaseCount());
break;
}
}
......@@ -548,7 +548,7 @@ public class MemberTallyServiceImpl implements IMemberTallyService {
typeEnum = MemberRectifyNoticeOperateTypeEnum.getEnum(noticeVO.getIncreaseOperateType());
if (typeEnum != null) {
if (typeEnum == MemberRectifyNoticeOperateTypeEnum.TO_BE_RECTIFY_COUNT) {
tallyBO.setToBeRectifyCount(tallyBO.getToBeRectifyCount() + noticeVO.getReduceCount());
tallyBO.setToBeRectifyCount(tallyBO.getToBeRectifyCount() + noticeVO.getIncreaseCount());
}
}
}
......@@ -627,7 +627,7 @@ public class MemberTallyServiceImpl implements IMemberTallyService {
}
// 更新数据
MemberOperateTypeEnum typeEnum;
if (noticeVO.getReduceOperateType() > 0) {
if (noticeVO.getReduceCount() > 0) {
typeEnum = MemberOperateTypeEnum.getEnum(noticeVO.getReduceOperateType());
if (typeEnum != null) {
switch (typeEnum) {
......
......@@ -9,7 +9,7 @@ spring:
main:
allow-bean-definition-overriding: true
datasource:
url: jdbc:postgresql://10.0.0.16:5432/scm-v2?stringtype=unspecified
url: jdbc:postgresql://10.0.0.16:5432/scm-v2?stringtype=unspecified&reWriteBatchedInserts=true
username: dbadmin
password: dbadmin
type: com.zaxxer.hikari.HikariDataSource
......@@ -28,6 +28,14 @@ spring:
database: postgresql
hibernate:
ddl-auto: update
properties:
hibernate:
enable_lazy_load_no_trans: true
jdbc:
batch_size: 50
batch_versioned_data: true
order_inserts: true
order_updates: true
# Consul Config
cloud:
kubernetes:
......@@ -45,6 +53,10 @@ spring:
enabled: true
health-check-timeout: 60s
instance-id: ${spring.application.name}-${spring.cloud.client.ip-address}-${server.port}
#健康检查失败多长时间取消注册
health-check-critical-timeout: 90s
#服务停止时取消注册
deregister: true
retry:
max-attempts: 100
# 禁止使用Ribbon,否则启动时会报Warning信息
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment