@@ -101,6 +101,7 @@ public enum OperateType { | |||
ORDER_EXAMINE("发行订单审核"), | |||
ORDER_DELIVER("发行订单发货"), | |||
ORDER_CHANGESEND("发行订单换货发货"), | |||
ORDER_RETURNEXAM("发行订单退货审核"), | |||
; | |||
private final String value; |
@@ -48,9 +48,9 @@ public class IssueOrderRechange extends AbstractStringPropertyUUIDEntity { | |||
@Column(name = "SERVICE_HALL_ID") | |||
private String serviceHallId;//退货网点id | |||
@Column(name = "CARD_ID") | |||
private String cardId;//卡号 | |||
private String cardId;//退货卡号 线上审核后录入 | |||
@Column(name = "OBU_ID") | |||
private String obuId;//签号 | |||
private String obuId;//退回签号 线上审核后录入 | |||
@Column(name = "AUDIT_INFO") | |||
private String auditInfo;//审核备注 | |||
@Column(name = "AUDIT_OPEN_ID") |
@@ -3,6 +3,8 @@ package cn.com.taiji.core.model.comm.protocol.ias.order; | |||
import cn.com.taiji.core.entity.dict.basic.SourceType; | |||
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest; | |||
import cn.com.taiji.core.model.comm.protocol.constraint.FixedLength; | |||
import cn.com.taiji.core.model.comm.protocol.constraint.IntegerConstant; | |||
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import javax.validation.constraints.NotBlank; | |||
@@ -27,22 +29,19 @@ public class ChangeGoodsRequest extends AbstractSignTypeRequest<ChangeGoodsRespo | |||
private SourceType sourceType;//申请来源 | |||
@NotBlank | |||
private String reason;//换货原因 | |||
// @NotNull | |||
// @IntegerConstant(values = "1,2") | |||
// private Integer rechangeMode;//换货方式 1-线上 2-线下 | |||
@NotNull | |||
@IntegerConstant(values = "1,2") | |||
private Integer rechangeMode;//换货方式 1-线上 2-线下 | |||
private String cardId;//卡号 | |||
private String obuId;//签号 | |||
@NotBlank | |||
private String logisticsCompany;//快递公司 | |||
@NotBlank | |||
private String logisticsNumber;//快递单号 | |||
@NotBlank | |||
private String consignee;//收货人 | |||
@NotBlank | |||
private String consigneeTel;//收货人电话 | |||
@NotBlank | |||
private String region;//收货所在地区(省、市、区、街道) | |||
@NotBlank | |||
private String address;//收货详细地址 | |||
@NotBlank | |||
@@ -51,6 +50,21 @@ public class ChangeGoodsRequest extends AbstractSignTypeRequest<ChangeGoodsRespo | |||
@FixedLength(length = 19) | |||
private String serviceHallId;//退货网点id | |||
public void relatedValid(ErrorMsgBuilder builder) { | |||
if(rechangeMode == 1) { | |||
builder.validFieldNotBlank(logisticsCompany, "logisticsCompany"); | |||
builder.validFieldNotBlank(logisticsNumber, "logisticsNumber"); | |||
builder.validFieldNotBlank(consignee, "consignee"); | |||
builder.validFieldNotBlank(consigneeTel, "consigneeTel"); | |||
builder.validFieldNotBlank(region, "region"); | |||
builder.validFieldNotBlank(address, "address"); | |||
}else { | |||
builder.validFieldNotBlank(cardId, "cardId"); | |||
builder.validFieldNotBlank(obuId, "obuId"); | |||
} | |||
} | |||
// public void relatedValid(ErrorMsgBuilder builder) { | |||
// | |||
// builder.validFieldTrue("rechangeMode", (SourceType.WECHAT.equals(sourceType) || SourceType.ALI.equals(sourceType)) |
@@ -22,6 +22,7 @@ public enum OrderServiceCmd implements SignServiceCommand { | |||
SIGNCHECK("订单用户校验", SignCheckRequest.class), | |||
CHANGEGOODS("换货申请", ChangeGoodsRequest.class), | |||
RETURNGOODS("退货申请", ReturnGoodsRequest.class), | |||
RETURNEXAMINE("退货审核", ReturnExamineRequest.class), | |||
; | |||
private final String value; |
@@ -0,0 +1,40 @@ | |||
package cn.com.taiji.core.model.comm.protocol.ias.order; | |||
import cn.com.taiji.core.entity.dict.issue.RechangeStatus; | |||
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest; | |||
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import javax.validation.constraints.NotBlank; | |||
import javax.validation.constraints.NotNull; | |||
/** | |||
* @Author:ChenChao | |||
* @Date:2025/7/7 21:14 | |||
* @Filename:ReturnExamineRequest | |||
* @description: 订单退货审核请求 | |||
*/ | |||
@Getter | |||
@Setter | |||
public class ReturnExamineRequest extends AbstractSignTypeRequest<ReturnExamineResponse> { | |||
public ReturnExamineRequest() { | |||
super(OrderServiceCmd.RETURNEXAMINE); | |||
} | |||
@NotBlank | |||
private String id;//退换货表Id | |||
@NotBlank | |||
private String orderNo;//订单编号 | |||
@NotNull | |||
private RechangeStatus rechangeStatus;//退换状态 | |||
@NotBlank | |||
private String auditInfo;//审核备注 | |||
@NotBlank | |||
private String openId; | |||
public void relatedValid(ErrorMsgBuilder builder) { | |||
builder.validFieldTrue("rechangeStatus",!RechangeStatus.NEW.equals(rechangeStatus),"审核状态值错误"); | |||
} | |||
} |
@@ -0,0 +1,19 @@ | |||
package cn.com.taiji.core.model.comm.protocol.ias.order; | |||
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
/** | |||
* @Author:ChenChao | |||
* @Date:2025/7/7 21:14 | |||
* @Filename:ReturnExamineResponse | |||
* @description: | |||
*/ | |||
@Getter | |||
@Setter | |||
public class ReturnExamineResponse extends AbstractSignTypeResponse { | |||
private String id;//响应客户端发行订单id,记录操作日志 | |||
private String msg; | |||
} |
@@ -1,12 +1,14 @@ | |||
package cn.com.taiji.core.model.comm.protocol.ias.order; | |||
import cn.com.taiji.common.valid.ViolationValidator; | |||
import cn.com.taiji.core.entity.dict.basic.SecretKeyType; | |||
import cn.com.taiji.core.entity.dict.basic.SourceType; | |||
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest; | |||
import cn.com.taiji.core.model.comm.protocol.constraint.FixedLength; | |||
import cn.com.taiji.core.model.comm.protocol.constraint.IntegerConstant; | |||
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import javax.persistence.Column; | |||
import javax.validation.constraints.NotBlank; | |||
import javax.validation.constraints.NotNull; | |||
@@ -19,39 +21,44 @@ import javax.validation.constraints.NotNull; | |||
@Getter | |||
@Setter | |||
public class ReturnGoodsRequest extends AbstractSignTypeRequest<ReturnGoodsResponse> { | |||
public ReturnGoodsRequest() { | |||
super(OrderServiceCmd.RETURNGOODS); | |||
} | |||
@NotBlank | |||
private String orderNo;//订单编号 | |||
private String returnLogisticsCompany;//退货物流公司 | |||
@NotNull | |||
private SourceType sourceType;//申请来源 | |||
private String returnLogisticsNumber;//退货物流单号 | |||
private String logisticsCompany;//退货物流公司 | |||
@NotBlank | |||
private String returnReason;//退货原因 | |||
@NotBlank | |||
private String returnMode;//退货方式,ON_LINE-线上,OFFLINE-线下 | |||
private String logisticsNumber;//退货物流单号 | |||
private String returnNetworkId;//退货网点ID | |||
private String cardId;//退货卡号 | |||
private String obuId;//退回签号 | |||
private String returnNetworkName;//退货网点名称 | |||
@NotBlank | |||
private String reason;//退货原因 | |||
private String address;//退货地址 | |||
@NotNull | |||
@IntegerConstant(values = "1,2") | |||
private Integer rechangeMode;//换货方式 1-线上 2-线下 | |||
private SecretKeyType deviceType;//设备类型 | |||
@NotBlank | |||
private String openId;//操作人openid | |||
@NotBlank | |||
@FixedLength(length = 19) | |||
private String serviceHallId;//退货网点ID | |||
public ReturnGoodsRequest() { | |||
super(OrderServiceCmd.RETURNGOODS); | |||
} | |||
public void relatedValid(ErrorMsgBuilder builder) { | |||
if("ON_LINE".equals(returnMode)) { | |||
builder.validFieldNotBlank(returnLogisticsCompany, "returnLogisticsCompany"); | |||
builder.validFieldNotBlank(returnLogisticsNumber, "returnLogisticsNumber"); | |||
} else { | |||
builder.validFieldNotBlank(returnNetworkId, "returnNetworkId"); | |||
builder.validFieldNotBlank(returnNetworkName, "returnNetworkName"); | |||
if(rechangeMode == 1) { | |||
builder.validFieldNotBlank(logisticsCompany, "logisticsCompany"); | |||
builder.validFieldNotBlank(logisticsNumber, "logisticsNumber"); | |||
}else { | |||
builder.validFieldNotBlank(cardId, "cardId"); | |||
builder.validFieldNotBlank(obuId, "obuId"); | |||
} | |||
} | |||
@@ -13,4 +13,8 @@ import lombok.Setter; | |||
@Getter | |||
@Setter | |||
public class ReturnGoodsResponse extends AbstractSignTypeResponse { | |||
private String msg;//成功后返回信息 | |||
private String orderNo;//黔通订单编号 | |||
private String receiveTime;//接收时间 yyyy-MM-ddTHH:mm:ss | |||
private String id;//订单主键id,给客户端端返回,记录操作日志 | |||
} |
@@ -82,9 +82,9 @@ public class VehicleUploadRequest extends AbstractSignTypeRequest<VehicleUploadR | |||
private String proxyUrl;// 委托书地址 | |||
@NotBlank | |||
private String vehBodyUrl;// 车身45°照片 | |||
@NotNull | |||
@IntegerConstant(values = "0,1") | |||
private Integer tractorSign;// 牵引车标识:0否 1 是 | |||
// @NotNull | |||
// @IntegerConstant(values = "0,1") | |||
// private Integer tractorSign;// 牵引车标识:0否 1 是 | |||
private String roadTransportPermitPicUrl;// 道路运输许可证图片地址 | |||
@NotNull | |||
@EnumInteger(enumClazz = VehicleUseCharacter.class) | |||
@@ -117,8 +117,9 @@ public class VehicleUploadRequest extends AbstractSignTypeRequest<VehicleUploadR | |||
validator.validFieldNotNull("axleCount", axleCount); | |||
} | |||
// 牵引车必填字段 | |||
if (tractorSign == 1) { | |||
if (useUserType == 0) { | |||
validator.validFieldNotBlank("roadTransportPermitPicUrl", roadTransportPermitPicUrl); | |||
validator.validFieldNotBlank("licenseIdNum",licenseIdNum); | |||
} | |||
@@ -3,6 +3,7 @@ package cn.com.taiji.core.repo.jpa.issue; | |||
import cn.com.taiji.common.repo.jpa.AbstractJpaRepo; | |||
import cn.com.taiji.core.entity.dict.issue.RechangeStatus; | |||
import cn.com.taiji.core.entity.dict.issue.RechangeType; | |||
import cn.com.taiji.core.entity.issue.IssueOrderRechange; | |||
import org.springframework.data.jpa.repository.Query; | |||
@@ -14,6 +15,7 @@ import org.springframework.data.jpa.repository.Query; | |||
*/ | |||
public interface IssueOrderRechangeRepo extends AbstractJpaRepo<IssueOrderRechange, String> { | |||
@Query(" from IssueOrderRechange where orderNo = ?1 and rechangeStatus = ?2") | |||
IssueOrderRechange findByOrderNoAndStatus(String orderNo, RechangeStatus rechangeStatus); | |||
// | |||
@Query(" from IssueOrderRechange where orderNo = ?1 and rechangeType = ?2 and rechangeStatus = ?3") | |||
IssueOrderRechange findRCByOrderNoAndStatus(String orderNo, RechangeType rechangeType, RechangeStatus rechangeStatus); | |||
} |
@@ -1,10 +1,17 @@ | |||
package cn.com.taiji.core.repo.jpa.issue; | |||
import cn.com.taiji.common.repo.jpa.AbstractJpaRepo; | |||
import cn.com.taiji.core.entity.dict.issue.OrderType; | |||
import cn.com.taiji.core.entity.issue.IssueOrderPost; | |||
import org.springframework.data.jpa.repository.Query; | |||
import java.util.List; | |||
public interface IssueOrderinfoPostRepo extends AbstractJpaRepo<IssueOrderPost, String>{ | |||
@Query("from IssueOrderPost where orderNo = ?1 and orderType = ?2 order by deliveryTime desc") | |||
List<IssueOrderPost> findByOrderNoList(String orderNo, OrderType orderType); | |||
} |