Browse Source

委托服务

master
张彭杰 3 weeks ago
parent
commit
6f632eeed6
14 changed files with 346 additions and 0 deletions
  1. 40
      dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/eso/constant/EntrustServicePaymentStatusEnum.java
  2. 43
      dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/eso/constant/EntrustServiceStatusEnum.java
  3. 36
      dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/eso/constant/EntrustServiceTypeEnum.java
  4. 4
      dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/rewardconfig/constant/RewardTypeEnum.java
  5. 58
      dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/eso/entity/EntrustServiceOrder.java
  6. 7
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/order/user/OrderUserCommandController.java
  7. 22
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/order/user/request/UserSubmitEntrustServiceOrderDto.java
  8. 26
      dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/eso/EntrustServiceOrderApplicationService.java
  9. 31
      dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/eso/EntrustServiceOrderAggregate.java
  10. 12
      dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/eso/repository/EntrustServiceOrderRepository.java
  11. 12
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/eso/EntrustServiceOrderDao.java
  12. 41
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/repository/impl/EntrustServiceOrderRepositoryImpl.java
  13. 5
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/eso/EntrustServiceOrderQueryService.java
  14. 9
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/eso/impl/EntrustServiceOrderQueryServiceImpl.java

40
dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/eso/constant/EntrustServicePaymentStatusEnum.java

@ -0,0 +1,40 @@
package com.qniao.dam.domian.aggregate.eso.constant;
import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.Getter;
@Getter
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum EntrustServicePaymentStatusEnum {
INIT(0,"初始化"),
PAID(1, "已支付"),
BEING_REFUNDED(2, "退款中"),
REFUNDED(3, "已退款");
@EnumValue
@JsonValue
private final Integer value;
private final String desc;
EntrustServicePaymentStatusEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
@JsonCreator
public static EntrustServicePaymentStatusEnum get(Object code) {
for (EntrustServicePaymentStatusEnum e : EntrustServicePaymentStatusEnum.values()) {
if (e.getValue().equals(code)) {
return e;
}
}
return null;
}
}

43
dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/eso/constant/EntrustServiceStatusEnum.java

@ -0,0 +1,43 @@
package com.qniao.dam.domian.aggregate.eso.constant;
import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.Getter;
@Getter
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum EntrustServiceStatusEnum {
INIT(0,"初始化"),
PENDING_ACCEPT(1, "待接单"),
COMPLETED_SETTLEMENT(2, "已结单"),
FINISHED(3, "已完成"),
CANCELED(4, "已取消");
@EnumValue
@JsonValue
private final Integer value;
private final String desc;
EntrustServiceStatusEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
@JsonCreator
public static EntrustServiceStatusEnum get(Object code) {
for (EntrustServiceStatusEnum e : EntrustServiceStatusEnum.values()) {
if (e.getValue().equals(code)) {
return e;
}
}
return null;
}
}

36
dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/eso/constant/EntrustServiceTypeEnum.java

@ -0,0 +1,36 @@
package com.qniao.dam.domian.aggregate.eso.constant;
import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.Getter;
@Getter
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum EntrustServiceTypeEnum {
CONTACT_INFO_EXCHANGE(1, "交换联系方式"),
OFFLINE_MEETING(2, "线下见面");
@EnumValue
@JsonValue
private final Integer value;
private final String desc;
EntrustServiceTypeEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
@JsonCreator
public static EntrustServiceTypeEnum get(Object code) {
for (EntrustServiceTypeEnum e : EntrustServiceTypeEnum.values()) {
if (e.getValue().equals(code)) {
return e;
}
}
return null;
}
}

4
dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/rewardconfig/constant/RewardTypeEnum.java

@ -75,6 +75,10 @@ public enum RewardTypeEnum {
MATCHMAKER_TRAINEE_RENEW_VALIDITY_PERIOD(128, "实习红娘续费保护周期"),
//委托服务
ENTRUST_SERVICE_CONTACT_INFO_EXCHANGE_FEE(129, "委托服务交换联系方式费用"),
ENTRUST_SERVICE_OFFLINE_MEETING_FEE(130, "委托服务线下见面费用"),
// 2** 服务费

58
dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/eso/entity/EntrustServiceOrder.java

@ -0,0 +1,58 @@
package com.qniao.dam.domain.aggregate.eso.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.qniao.dam.domian.aggregate.eso.constant.EntrustServicePaymentStatusEnum;
import com.qniao.dam.domian.aggregate.eso.constant.EntrustServiceStatusEnum;
import com.qniao.dam.domian.aggregate.eso.constant.EntrustServiceTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.qniao.domain.Entity;
import java.math.BigDecimal;
/**
* 委托服务订单
*
* @date 2026/03/06
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("da_entrust_service_order")
public class EntrustServiceOrder extends Entity<EntrustServiceOrder> {
@ApiModelProperty("发起人用户标识")
private Long initiatorUserId;
@ApiModelProperty("发起人资料标识")
private Long initiatorMiId;
@ApiModelProperty("目标用户标识")
private Long targetUserId;
@ApiModelProperty("目标资料标识")
private Long targetMiId;
@ApiModelProperty("红娘标识")
private Long matchmakerId;
@ApiModelProperty("委托服务类型")
private EntrustServiceTypeEnum type;
@ApiModelProperty("奖励金额")
private BigDecimal rewardAmount;
@ApiModelProperty("关联订单ID")
private Long associateOrderId;
@ApiModelProperty("付款金额")
private BigDecimal paidAmount;
@ApiModelProperty("状态")
private EntrustServiceStatusEnum status;
@ApiModelProperty("付款状态")
private EntrustServicePaymentStatusEnum paymentStatus;
}

7
dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/order/user/OrderUserCommandController.java

@ -58,6 +58,13 @@ public class OrderUserCommandController {
return orderApplicationService.submitMarriageBountyOrder(order, productList, marriageBountyOrder, dto.getMeetingQuantity());
}
@ApiOperation("用户提交委托服务订单")
@PostMapping("submit/entrust-service-order")
public UserSubmitOrderVo userSubmitEntrustServiceOrder(@RequestBody @Valid UserSubmitEntrustServiceOrderDto dto) {
return null;
}
@ApiOperation("用户计算线下活动订单费用")
@PostMapping("calculate/site-activity-order/fee")
public UserCalculateOrderFeeVo userSubmitSiteActivityOrder(@RequestBody @Valid UserCalculateSiteActivityOrderDto dto,

22
dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/order/user/request/UserSubmitEntrustServiceOrderDto.java

@ -0,0 +1,22 @@
package com.qniao.dam.api.command.order.user.request;
import com.qniao.dam.domain.aggregate.order.entity.Order;
import com.qniao.dam.domian.aggregate.eso.constant.EntrustServiceTypeEnum;
import com.qniao.domain.Trans2DomainAssembler;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class UserSubmitEntrustServiceOrderDto implements Trans2DomainAssembler<Order> {
@ApiModelProperty("委托服务类型")
private EntrustServiceTypeEnum type;
@Override
public Order trans2Domain() {
Order order = new Order();
return order;
}
}

26
dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/eso/EntrustServiceOrderApplicationService.java

@ -0,0 +1,26 @@
package com.qniao.dam.application.service.eso;
import com.qniao.dam.domain.aggregate.eso.EntrustServiceOrderAggregate;
import com.qniao.dam.domain.aggregate.eso.entity.EntrustServiceOrder;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class EntrustServiceOrderApplicationService {
@Resource
private EntrustServiceOrderAggregate entrustServiceOrderAggregate;
public void create(EntrustServiceOrder entrustServiceOrder) {
entrustServiceOrderAggregate.create(entrustServiceOrder);
}
public void edit(EntrustServiceOrder entrustServiceOrder) {
entrustServiceOrderAggregate.edit(entrustServiceOrder);
}
public void delete(Long id) {
entrustServiceOrderAggregate.delete(id);
}
}

31
dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/eso/EntrustServiceOrderAggregate.java

@ -0,0 +1,31 @@
package com.qniao.dam.domain.aggregate.eso;
import com.qniao.dam.domain.aggregate.eso.entity.EntrustServiceOrder;
import com.qniao.dam.domain.aggregate.eso.repository.EntrustServiceOrderRepository;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* 委托服务订单
*
* @date 2026/03/06
*/
@Service
public class EntrustServiceOrderAggregate {
@Resource
private EntrustServiceOrderRepository repository;
public void create(EntrustServiceOrder entity) {
repository.save(entity);
}
public void edit(EntrustServiceOrder entity) {
repository.save(entity);
}
public void delete(Long id) {
repository.delete(id);
}
}

12
dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/eso/repository/EntrustServiceOrderRepository.java

@ -0,0 +1,12 @@
package com.qniao.dam.domain.aggregate.eso.repository;
import com.qniao.dam.domain.aggregate.eso.entity.EntrustServiceOrder;
import com.qniao.domain.Repository;
/**
* 委托服务订单
*
* @date 2026/03/06
*/
public interface EntrustServiceOrderRepository extends Repository<EntrustServiceOrder, Long> {
}

12
dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/eso/EntrustServiceOrderDao.java

@ -0,0 +1,12 @@
package com.qniao.dam.infrastructure.persistent.dao.eso;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qniao.dam.domain.aggregate.eso.entity.EntrustServiceOrder;
/**
* 委托服务订单
*
* @date 2026/03/06
*/
public interface EntrustServiceOrderDao extends BaseMapper<EntrustServiceOrder> {
}

41
dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/repository/impl/EntrustServiceOrderRepositoryImpl.java

@ -0,0 +1,41 @@
package com.qniao.dam.infrastructure.persistent.repository.impl;
import com.qniao.dam.domain.aggregate.eso.entity.EntrustServiceOrder;
import com.qniao.dam.domain.aggregate.eso.repository.EntrustServiceOrderRepository;
import com.qniao.dam.infrastructure.persistent.dao.eso.EntrustServiceOrderDao;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Objects;
/**
* 委托服务订单
*
* @date 2026/03/06
*/
@Service
public class EntrustServiceOrderRepositoryImpl implements EntrustServiceOrderRepository {
@Resource
private EntrustServiceOrderDao dao;
@Override
public EntrustServiceOrder load(Long id) {
return dao.selectById(id);
}
@Override
public Long save(EntrustServiceOrder entity) {
if (Objects.isNull(entity) || Objects.isNull(dao.selectById(entity.getId()))) {
dao.insert(entity);
} else {
dao.updateById(entity);
}
return entity.getId();
}
@Override
public void delete(Long id) {
dao.deleteById(id);
}
}

5
dating-agency-mall-server/src/main/java/com/qniao/dam/query/eso/EntrustServiceOrderQueryService.java

@ -0,0 +1,5 @@
package com.qniao.dam.query.eso;
public interface EntrustServiceOrderQueryService {
}

9
dating-agency-mall-server/src/main/java/com/qniao/dam/query/eso/impl/EntrustServiceOrderQueryServiceImpl.java

@ -0,0 +1,9 @@
package com.qniao.dam.query.eso.impl;
import com.qniao.dam.query.eso.EntrustServiceOrderQueryService;
import org.springframework.stereotype.Service;
@Service
public class EntrustServiceOrderQueryServiceImpl implements EntrustServiceOrderQueryService {
}
Loading…
Cancel
Save