@@ -0,0 +1,38 @@ | |||
package cn.com.taiji.core.entity.issue; | |||
import cn.com.taiji.core.entity.AbstractStringPropertyUUIDEntity; | |||
import lombok.Getter; | |||
import lombok.Setter; | |||
import javax.persistence.Column; | |||
import javax.persistence.Entity; | |||
import javax.persistence.Table; | |||
import java.time.LocalDateTime; | |||
/** | |||
* 发行订单表 | |||
*/ | |||
@Getter | |||
@Setter | |||
@Entity | |||
@Table(name = "CSMSN_CONSIGNEE") | |||
public class CsmsnConsignee extends AbstractStringPropertyUUIDEntity { | |||
@Column(name = "INSERT_TIME") | |||
private LocalDateTime insertTime; | |||
@Column(name = "AGENCY_ID") | |||
private String agencyId; | |||
@Column(name = "ONLINE_ORDER_NO") | |||
private String onlineOrderNo; | |||
@Column(name = "CARD_ID") | |||
private String cardId; | |||
@Column(name = "OBU_ID") | |||
private String obuId; | |||
@Column(name = "TRACKING_NUMBER") | |||
private String trackingNumber; | |||
@Column(name = "COURIER_COMPANY") | |||
private String courierCompany; | |||
@Column(name = "DELIVERY_ADDRESS") | |||
private String deliveryAddress; | |||
} |
@@ -0,0 +1,27 @@ | |||
package cn.com.taiji.core.model.comm.protocol.ias.order; | |||
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; | |||
@Getter | |||
@Setter | |||
public class IssueOrderConsigneeRequest extends AbstractSignTypeRequest<IssueOrderConsigneeResponse> { | |||
private String orgCode; | |||
private String onlineOrderNo; | |||
private String cardId; | |||
private String obuId; | |||
private String trackingNumber; | |||
private String courierCompany; | |||
private String deliveryAddress; | |||
public IssueOrderConsigneeRequest() { | |||
super(OrderServiceCmd.CONSIGNEE); | |||
} | |||
public void relatedValid(ErrorMsgBuilder builder) { | |||
} | |||
} |
@@ -0,0 +1,21 @@ | |||
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; | |||
import java.time.LocalDateTime; | |||
import java.time.format.DateTimeFormatter; | |||
@Getter | |||
@Setter | |||
public class IssueOrderConsigneeResponse extends AbstractSignTypeResponse { | |||
/*** 信息 */ | |||
private String info = "成功."; | |||
/*** 接收时间 */ | |||
private String receiveTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss")); | |||
private boolean hasData; | |||
} |
@@ -26,6 +26,7 @@ public enum OrderServiceCmd implements SignServiceCommand { | |||
ORDERRECEIVE("订单领取", OrderReceiveRequest.class), | |||
ORDERAUDIT("订单审核", OrderAuditRequest.class),// | |||
PUSHAGREEMENT("协议提交接口", PushAgreementRequest.class), | |||
CONSIGNEE("收货信息", IssueOrderConsigneeRequest.class), | |||
; | |||
private final String value; |
@@ -0,0 +1,13 @@ | |||
package cn.com.taiji.core.repo.jpa.issue; | |||
import cn.com.taiji.common.repo.jpa.AbstractJpaRepo; | |||
import cn.com.taiji.core.entity.issue.CsmsnConsignee; | |||
/** | |||
* @Author:ChenChao | |||
* @Date:2025/8/13 16:09 | |||
* @Filename:CsmsnConsigneeRepo | |||
* @description: | |||
*/ | |||
public interface CsmsnConsigneeRepo extends AbstractJpaRepo<CsmsnConsignee, String> { | |||
} |
@@ -29,6 +29,7 @@ public enum DataType { | |||
ORDER_AUDIT("orderAudit", IasServiceType.ORDER, OrderServiceCmd.ORDERAUDIT), | |||
PUSH_AGREEMENT("pushAgreement", IasServiceType.ORDER, OrderServiceCmd.PUSHAGREEMENT), | |||
ORDERSIGNCHECK("orderSignCheck", IasServiceType.ORDER, OrderServiceCmd.SIGNCHECK), | |||
CONSIGNEE("consignee", IasServiceType.ORDER, OrderServiceCmd.CONSIGNEE), | |||
GET_H5_URL("getH5Url", IasServiceType.ISSUE, IssueServiceCmd.GETH5URL), | |||
@@ -54,6 +54,8 @@ public class OrderServiceHandler extends AbstractIasServiceHandler<OrderServiceC | |||
private OrderAuditManager orderAuditManager; | |||
@Autowired | |||
private OrderSignCheckManager orderSignCheckManager; | |||
@Autowired | |||
private OrderConsigneeManager orderConsigneeManager; | |||
@Override | |||
protected <T extends AbstractSignTypeRequest<?>> AbstractSignTypeResponse handleInternal(T request, SignJsonRequest jsonReq, AbstractHttpRequestInfo reqInfo) throws ServiceHandleException { | |||
@@ -95,6 +97,8 @@ public class OrderServiceHandler extends AbstractIasServiceHandler<OrderServiceC | |||
return orderReceiveManager.serviceHandle((OrderReceiveRequest)request, jsonReq.getIfCode(), jsonReq.getReqId(), reqInfo); | |||
case ORDERAUDIT: | |||
return orderAuditManager.serviceHandle((OrderAuditRequest)request, jsonReq.getIfCode(), jsonReq.getReqId(), reqInfo); | |||
case CONSIGNEE: | |||
return orderConsigneeManager.serviceHandle((IssueOrderConsigneeRequest)request, jsonReq.getIfCode(), jsonReq.getReqId(), reqInfo); | |||
default: | |||
throw FileProtocolSystemError.NOT_SUPPORT.toHandleException(jsonReq.getIfCode()); | |||
} |
@@ -272,7 +272,12 @@ public abstract class AbstractOrderManager<T extends AbstractSignTypeRequest<?>> | |||
} | |||
for (IssueOrderPay pay : pays) { | |||
if (OrderPayStatus.UNPAY.equals(pay.getPayStatus()) || OrderPayStatus.PAYING.equals(pay.getPayStatus())) { | |||
paymentDetection(pay); | |||
if(pay.getFee() == 0){ | |||
//金额是0,则认为支付成功 | |||
pay.setPayStatus(OrderPayStatus.SUCCESS); | |||
}else { | |||
paymentDetection(pay); | |||
} | |||
} | |||
try { | |||
TimeUnit.MILLISECONDS.sleep(200); |
@@ -0,0 +1,67 @@ | |||
package cn.com.taiji.ias.manager.order; | |||
import cn.com.taiji.common.manager.net.http.ServiceHandleException; | |||
import cn.com.taiji.core.entity.issue.CsmsnConsignee; | |||
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse; | |||
import cn.com.taiji.core.model.comm.protocol.ias.order.IssueOrderConsigneeRequest; | |||
import cn.com.taiji.core.model.comm.protocol.ias.order.IssueOrderConsigneeResponse; | |||
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder; | |||
import cn.com.taiji.core.repo.jpa.issue.CsmsnConsigneeRepo; | |||
import cn.com.taiji.ias.dict.DataType; | |||
import cn.com.taiji.ias.model.ServiceLogEvent; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
import org.springframework.stereotype.Service; | |||
import java.time.LocalDateTime; | |||
import java.util.Map; | |||
/** | |||
* @Author : cehnchaod | |||
* @Date: 2025/2/20 23:37 | |||
* @Description: | |||
*/ | |||
@Service | |||
public class OrderConsigneeManager extends AbstractOrderManager<IssueOrderConsigneeRequest> { | |||
@Autowired | |||
private CsmsnConsigneeRepo csmsnConsigneeRepo; | |||
public OrderConsigneeManager() { | |||
super(DataType.CONSIGNEE); | |||
} | |||
@Override | |||
protected String getDataId(IssueOrderConsigneeRequest req) { | |||
return ""; | |||
} | |||
@Override | |||
protected void formatValidateInternal(ErrorMsgBuilder builder, IssueOrderConsigneeRequest req, | |||
ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException { | |||
} | |||
@Override | |||
protected void businessValidateInternal(ErrorMsgBuilder builder, IssueOrderConsigneeRequest req, | |||
ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException { | |||
} | |||
@Override | |||
protected void persistInternal(IssueOrderConsigneeRequest req, ServiceLogEvent event, | |||
Map<String, Object> dataStream) throws ServiceHandleException { | |||
CsmsnConsignee consignee = new CsmsnConsignee(); | |||
consignee.setInsertTime(LocalDateTime.now()); | |||
consignee.setAgencyId(req.getOrgCode()); | |||
consignee.setOnlineOrderNo(req.getOnlineOrderNo()); | |||
consignee.setCardId(req.getCardId()); | |||
consignee.setObuId(req.getObuId()); | |||
consignee.setTrackingNumber(req.getTrackingNumber()); | |||
consignee.setCourierCompany(req.getCourierCompany()); | |||
consignee.setDeliveryAddress(req.getDeliveryAddress()); | |||
csmsnConsigneeRepo.persist(consignee); | |||
} | |||
@Override | |||
protected AbstractSignTypeResponse getRes(IssueOrderConsigneeRequest reqDto, ServiceLogEvent event, | |||
Map<String, Object> dataStream) throws ServiceHandleException { | |||
return new IssueOrderConsigneeResponse(); | |||
} | |||
} |