package com.ydtech.modules.ins.model.ya; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.ydtech.modules.ins.model.vo.CarInfoVo; import com.ydtech.modules.ins.model.vo.CustomerInfoVo; import com.ydtech.modules.ins.model.vo.KindInfoVo; import com.ydtech.modules.ins.model.vo.RiskInfoVo; import com.ydtech.modules.order.entity.InsOrders; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import javax.validation.Valid; import java.io.Serializable; import java.time.LocalDateTime; import java.util.List; /** * @author gws * @version 1.0.0 * @description QuoteInfoVo * @since 2020/11/26 17:38 */ @Data public class YaQuoteInfoVo implements Serializable { private static final long serialVersionUID = -3891891223635492072L; @Valid private CarInfoVo carInfo; //车主 lig 2023-02-15 @Valid private CustomerInfoVo ownerInfo; @Valid //投保人信息 lig 2023-04-13 private CustomerInfoVo policyHolderInfo; @Valid //被保人信息 lig 2023-04-13 private CustomerInfoVo insuredPersonInfo; @Valid private List riskList; @Valid private List kindList; private String quoteno; @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime startDate; public YaQuoteInfoVo() { } public YaQuoteInfoVo(InsOrders insOrders) { this.ownerInfo = JSON.toJavaObject(insOrders.getOwnerinfo(), CustomerInfoVo.class); this.policyHolderInfo = JSON.toJavaObject(insOrders.getApplyinfo(), CustomerInfoVo.class); this.insuredPersonInfo = JSON.toJavaObject(insOrders.getInsureinfo(), CustomerInfoVo.class); this.carInfo = JSON.toJavaObject(insOrders.getCarinfo(), CarInfoVo.class); this.riskList = JSONObject.parseArray(JSON.toJSONString(insOrders.getRisk()), RiskInfoVo.class); this.kindList = JSONObject.parseArray(JSON.toJSONString(insOrders.getKing()), KindInfoVo.class); this.quoteno = insOrders.getQuoteno(); } }