package com.ydtech.modules.scheme.entity.po; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.ydtech.constants.enums.dict.insurance.VehicleType; import com.ydtech.modules.order.entity.api.bohai.constants.VehicleUsage; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; /** * 协议承保规则与规则属性关联表 */ @TableName(value = "ptl_scheme_rules_attr_link", autoResultMap = true) @Data @NoArgsConstructor @AllArgsConstructor public class PtlSchemeRulesAttrLink { @TableId(value = "id", type = com.baomidou.mybatisplus.annotation.IdType.AUTO) private String id; @ApiModelProperty(value = "承包规则id") @TableField(value = "rules_id") private String rulesId; @ApiModelProperty(value = "属性id") @TableField(value = "attr_id") private String attrId; @ApiModelProperty(value = "属性编码") @TableField(value = "attr_code") private String attrCode; @ApiModelProperty(value = "左操作数") @TableField(value = "min") private String min; @ApiModelProperty(value = "左操作数数组") @TableField(exist = false) private String[] minArray; @ApiModelProperty(value = "操作符") @TableField(value = "operator") private String operator; @ApiModelProperty(value = "右操作数") @TableField(value = "max") private String max; @TableField(exist = false) private JSONArray dictLabal; @ApiModelProperty(value = "关联属性使用") @TableField(exist = false) private PtlSchemeRulesAttrLink children; public static PtlSchemeRulesAttrLink NewEnergy(String energyType){ PtlSchemeRulesAttrLink link = new PtlSchemeRulesAttrLink(); link.attrId = "52"; link.attrCode = "NewEnergy"; link.min = energyType; return link; } public static PtlSchemeRulesAttrLink CarType(String carType){ PtlSchemeRulesAttrLink link = new PtlSchemeRulesAttrLink(); link.attrId = "58"; link.attrCode = "CarType"; link.min = VehicleType.getByCode(carType); return link; } public static PtlSchemeRulesAttrLink carNature(String carNature){ PtlSchemeRulesAttrLink link = new PtlSchemeRulesAttrLink(); VehicleUsage vehicleUsageEnum = VehicleUsage.valueOf("VU_" + carNature); link.attrCode = "carnature"; link.min = vehicleUsageEnum.getDesc(); return link; } }