package com.zy.crm.manager.entity; 
 | 
  
 | 
import com.baomidou.mybatisplus.annotations.TableField; 
 | 
import com.baomidou.mybatisplus.annotations.TableId; 
 | 
import com.baomidou.mybatisplus.annotations.TableName; 
 | 
import com.baomidou.mybatisplus.enums.IdType; 
 | 
import com.core.common.Cools; 
 | 
import com.core.common.SpringUtils; 
 | 
import com.zy.crm.manager.service.CstmrService; 
 | 
import com.zy.crm.manager.service.OrderService; 
 | 
import com.zy.crm.manager.service.PlanNeedService; 
 | 
import com.zy.crm.manager.service.PlanTypeService; 
 | 
import com.zy.crm.system.entity.Dept; 
 | 
import com.zy.crm.system.entity.Host; 
 | 
import com.zy.crm.system.entity.User; 
 | 
import com.zy.crm.system.service.DeptService; 
 | 
import com.zy.crm.system.service.HostService; 
 | 
import com.zy.crm.system.service.UserService; 
 | 
import io.swagger.annotations.ApiModelProperty; 
 | 
import lombok.Data; 
 | 
import org.springframework.format.annotation.DateTimeFormat; 
 | 
  
 | 
import java.io.Serializable; 
 | 
import java.text.SimpleDateFormat; 
 | 
import java.util.Date; 
 | 
  
 | 
@Data 
 | 
@TableName("man_plan") 
 | 
public class Plan implements Serializable { 
 | 
  
 | 
    private static final long serialVersionUID = 1L; 
 | 
  
 | 
    /** 
 | 
     * ID 
 | 
     */ 
 | 
    @ApiModelProperty(value= "ID") 
 | 
    @TableId(value = "id", type = IdType.AUTO) 
 | 
    private Long id; 
 | 
  
 | 
    /** 
 | 
     * 所属商户 
 | 
     */ 
 | 
    @ApiModelProperty(value= "所属商户") 
 | 
    @TableField("host_id") 
 | 
    private Long hostId; 
 | 
  
 | 
    /** 
 | 
     * 所属部门 
 | 
     */ 
 | 
    @ApiModelProperty(value= "所属部门") 
 | 
    @TableField("dept_id") 
 | 
    private Long deptId; 
 | 
  
 | 
    /** 
 | 
     * 业务类型 
 | 
     */ 
 | 
    @ApiModelProperty(value= "业务类型") 
 | 
    @TableField("plan_type") 
 | 
    private Long planType; 
 | 
  
 | 
    /** 
 | 
     * 业务员 
 | 
     */ 
 | 
    @ApiModelProperty(value= "业务员") 
 | 
    @TableField("user_id") 
 | 
    private Long userId; 
 | 
  
 | 
    /** 
 | 
     * 跟踪项目 
 | 
     */ 
 | 
    @ApiModelProperty(value= "跟踪项目") 
 | 
    @TableField("order_id") 
 | 
    private Long orderId; 
 | 
  
 | 
    /** 
 | 
     * 甲方单位 
 | 
     */ 
 | 
    @ApiModelProperty(value= "甲方单位") 
 | 
    @TableField("cstmr_id") 
 | 
    private Long cstmrId; 
 | 
  
 | 
    /** 
 | 
     * 规划单代号 
 | 
     */ 
 | 
    @ApiModelProperty(value= "规划单代号") 
 | 
    private String uuid; 
 | 
  
 | 
    /** 
 | 
     * 规划单名称 
 | 
     */ 
 | 
    @ApiModelProperty(value= "规划单名称") 
 | 
    private String name; 
 | 
  
 | 
    /** 
 | 
     * 申请日期 
 | 
     */ 
 | 
    @ApiModelProperty(value= "申请日期") 
 | 
    @TableField("apple_time") 
 | 
    @DateTimeFormat(pattern="yyyy-MM-dd") 
 | 
    private Date appleTime; 
 | 
  
 | 
    /** 
 | 
     * 方案所需 
 | 
     */ 
 | 
    @ApiModelProperty(value= "方案所需") 
 | 
    @TableField("plan_need") 
 | 
    private String planNeed; 
 | 
  
 | 
    /** 
 | 
     * 立项 1: 是  0: 否 
 | 
     */ 
 | 
    @ApiModelProperty(value= "立项 1: 是  0: 否  ") 
 | 
    @TableField("be_item") 
 | 
    private Integer beItem; 
 | 
  
 | 
    /** 
 | 
     * 表单内容 
 | 
     */ 
 | 
    @ApiModelProperty(value= "表单内容") 
 | 
    private String form; 
 | 
  
 | 
    /** 
 | 
     * 规划员 
 | 
     */ 
 | 
    @ApiModelProperty(value= "规划员") 
 | 
    private Long planner; 
 | 
  
 | 
    /** 
 | 
     * 完成时间 
 | 
     */ 
 | 
    @ApiModelProperty(value= "完成时间") 
 | 
    @TableField("finish_time") 
 | 
    @DateTimeFormat(pattern="yyyy-MM-dd") 
 | 
    private Date finishTime; 
 | 
  
 | 
    /** 
 | 
     * 更改方案 1: 是  0: 否 
 | 
     */ 
 | 
    @ApiModelProperty(value= "更改方案 1: 是  0: 否  ") 
 | 
    private Integer change; 
 | 
  
 | 
    /** 
 | 
     * 更改次数 
 | 
     */ 
 | 
    @ApiModelProperty(value= "更改次数") 
 | 
    @TableField("change_time") 
 | 
    private Integer changeTime; 
 | 
  
 | 
    /** 
 | 
     * 更改方案原因 
 | 
     */ 
 | 
    @ApiModelProperty(value= "更改方案原因") 
 | 
    @TableField("change_reason") 
 | 
    private String changeReason; 
 | 
  
 | 
    /** 
 | 
     * 规格奖金 
 | 
     */ 
 | 
    @ApiModelProperty(value= "规格奖金") 
 | 
    @TableField("plan_bonus") 
 | 
    private Double planBonus; 
 | 
  
 | 
    /** 
 | 
     * 规格组长奖金 
 | 
     */ 
 | 
    @ApiModelProperty(value= "规格组长奖金") 
 | 
    @TableField("plan_leader_bonus") 
 | 
    private Double planLeaderBonus; 
 | 
  
 | 
    /** 
 | 
     * 附件 
 | 
     */ 
 | 
    @ApiModelProperty(value= "附件") 
 | 
    private String files; 
 | 
  
 | 
    /** 
 | 
     * 进度 1: 开始  2: 组长审核  3: 售前组长审核  4: 规划员审核  5: 审批通过 
 | 
     */ 
 | 
    @ApiModelProperty(value= "进度 1: 开始  2: 组长审核  3: 售前审核  4: 规划员审核  5: 审批通过  ") 
 | 
    private Integer settle; 
 | 
  
 | 
    /** 
 | 
     * 审核进度 
 | 
     */ 
 | 
    @ApiModelProperty(value= "审核进度") 
 | 
    @TableField("settle_msg") 
 | 
    private String settleMsg; 
 | 
  
 | 
    /** 
 | 
     * 评论 
 | 
     */ 
 | 
    @ApiModelProperty(value= "评论") 
 | 
    private String comment; 
 | 
  
 | 
    /** 
 | 
     * 状态 1: 正常  0: 禁用 
 | 
     */ 
 | 
    @ApiModelProperty(value= "状态 1: 正常  0: 禁用  ") 
 | 
    private Integer status; 
 | 
  
 | 
    /** 
 | 
     * 添加人员 
 | 
     */ 
 | 
    @ApiModelProperty(value= "添加人员") 
 | 
    @TableField("create_by") 
 | 
    private Long createBy; 
 | 
  
 | 
    /** 
 | 
     * 添加时间 
 | 
     */ 
 | 
    @ApiModelProperty(value= "添加时间") 
 | 
    @TableField("create_time") 
 | 
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") 
 | 
    private Date createTime; 
 | 
  
 | 
    /** 
 | 
     * 修改人员 
 | 
     */ 
 | 
    @ApiModelProperty(value= "修改人员") 
 | 
    @TableField("update_by") 
 | 
    private Long updateBy; 
 | 
  
 | 
    /** 
 | 
     * 修改时间 
 | 
     */ 
 | 
    @ApiModelProperty(value= "修改时间") 
 | 
    @TableField("update_time") 
 | 
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") 
 | 
    private Date updateTime; 
 | 
  
 | 
    /** 
 | 
     * 注释 
 | 
     */ 
 | 
    @ApiModelProperty(value= "注释") 
 | 
    private String memo; 
 | 
  
 | 
    /** 
 | 
     * 项目进度流程{1:项目创建,2:核价处理,3:产品费用明细,4:报价预算单,5:报价单} 
 | 
     */ 
 | 
    @ApiModelProperty(value= "项目进度流程{1:项目创建,2:核价处理,3:产品费用明细,4:报价预算单,5:报价单}") 
 | 
    private Integer step; 
 | 
  
 | 
    /** 
 | 
     * 业务员联系方式 
 | 
     */ 
 | 
    @ApiModelProperty(value= "业务员联系方式") 
 | 
    private String userXmlSelPhone; 
 | 
  
 | 
    /** 
 | 
     * 节点负责人 
 | 
     */ 
 | 
    @ApiModelProperty(value= "节点负责人") 
 | 
    private Long director; 
 | 
  
 | 
    public Plan() {} 
 | 
  
 | 
    public String getHostId$(){ 
 | 
        HostService service = SpringUtils.getBean(HostService.class); 
 | 
        Host host = service.selectById(this.hostId); 
 | 
        if (!Cools.isEmpty(host)){ 
 | 
            return String.valueOf(host.getName()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getDirector$(){ 
 | 
        if (this.director==null) return ""; 
 | 
        UserService service = SpringUtils.getBean(UserService.class); 
 | 
        User user = service.selectById(this.director); 
 | 
        if (!Cools.isEmpty(user)){ 
 | 
            return String.valueOf(user.getNickname()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getDeptId$(){ 
 | 
        DeptService service = SpringUtils.getBean(DeptService.class); 
 | 
        Dept dept = service.selectById(this.deptId); 
 | 
        if (!Cools.isEmpty(dept)){ 
 | 
            return String.valueOf(dept.getName()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getPlanType$(){ 
 | 
        PlanTypeService service = SpringUtils.getBean(PlanTypeService.class); 
 | 
        PlanType planType = service.selectById(this.planType); 
 | 
        if (!Cools.isEmpty(planType)){ 
 | 
            return String.valueOf(planType.getName()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public Integer getPLType$(){ 
 | 
        PlanTypeService service = SpringUtils.getBean(PlanTypeService.class); 
 | 
        PlanType planType = service.selectById(this.planType); 
 | 
        if (!Cools.isEmpty(planType)){ 
 | 
            return planType.getType(); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getUserId$(){ 
 | 
        UserService service = SpringUtils.getBean(UserService.class); 
 | 
        User user = service.selectById(this.userId); 
 | 
        if (!Cools.isEmpty(user)){ 
 | 
            return String.valueOf(user.getNickname()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getOrderId$(){ 
 | 
        OrderService service = SpringUtils.getBean(OrderService.class); 
 | 
        Order order = service.selectById(this.orderId); 
 | 
        if (!Cools.isEmpty(order)){ 
 | 
            return String.valueOf(order.getName()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getCstmrId$(){ 
 | 
        CstmrService service = SpringUtils.getBean(CstmrService.class); 
 | 
        Cstmr cstmr = service.selectById(this.cstmrId); 
 | 
        if (!Cools.isEmpty(cstmr)){ 
 | 
            return String.valueOf(cstmr.getName()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getAppleTime$(){ 
 | 
        if (Cools.isEmpty(this.appleTime)){ 
 | 
            return ""; 
 | 
        } 
 | 
        return new SimpleDateFormat("yyyy-MM-dd").format(this.appleTime); 
 | 
    } 
 | 
  
 | 
    public String getPlanNeed$(){ 
 | 
        if (Cools.isEmpty(this.planNeed)){ 
 | 
            return null; 
 | 
        } 
 | 
        PlanNeedService service = SpringUtils.getBean(PlanNeedService.class); 
 | 
        String[] planNeeds = this.planNeed.split("-"); 
 | 
        String name=""; 
 | 
        for (String planNeeda : planNeeds){ 
 | 
            PlanNeed planNeed = service.selectById(Integer.parseInt(planNeeda)); 
 | 
            if (!Cools.isEmpty(planNeed)){ 
 | 
//                return String.valueOf(planNeed.getName()); 
 | 
                name = name+planNeed.getName()+";"; 
 | 
            } 
 | 
        } 
 | 
        return name; 
 | 
    } 
 | 
  
 | 
    public String getBeItem$(){ 
 | 
        if (null == this.beItem){ return null; } 
 | 
        switch (this.beItem){ 
 | 
            case 1: 
 | 
                return "是"; 
 | 
            case 0: 
 | 
                return "否"; 
 | 
            default: 
 | 
                return String.valueOf(this.beItem); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public String getFinishTime$(){ 
 | 
        if (Cools.isEmpty(this.finishTime)){ 
 | 
            return ""; 
 | 
        } 
 | 
        return new SimpleDateFormat("yyyy-MM-dd").format(this.finishTime); 
 | 
    } 
 | 
  
 | 
    public String getChange$(){ 
 | 
        if (null == this.change){ return null; } 
 | 
        switch (this.change){ 
 | 
            case 1: 
 | 
                return "是"; 
 | 
            case 0: 
 | 
                return "否"; 
 | 
            default: 
 | 
                return String.valueOf(this.change); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public String getSettle$(){ 
 | 
        if (null == this.settle){ return null; } 
 | 
        switch (this.settle){ 
 | 
//            case 1: 
 | 
//                return "等待组长审核"; 
 | 
            case 1: 
 | 
                return "等待售前分配规划员"; 
 | 
            case 2: 
 | 
                return "等待规划员提交"; 
 | 
            case 3: 
 | 
                return "规划员已提交"; 
 | 
            case 4: 
 | 
                return "审批通过"; 
 | 
            default: 
 | 
                return String.valueOf(this.settle); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public String getPlanner$(){ 
 | 
        if (this.planner==null) return "未分配"; 
 | 
        UserService service = SpringUtils.getBean(UserService.class); 
 | 
        User user = service.selectById(this.planner); 
 | 
        if (!Cools.isEmpty(user)){ 
 | 
            return String.valueOf(user.getNickname()); 
 | 
        } 
 | 
        return ""; 
 | 
    } 
 | 
  
 | 
    public String getNowHeadman$(){ 
 | 
        PlanTypeService planTypeService = SpringUtils.getBean(PlanTypeService.class); 
 | 
        PlanType planType = planTypeService.selectById(this.planType); 
 | 
        User user = planTypeService.findPlanLeader(planType); 
 | 
        if (!Cools.isEmpty(user)){ 
 | 
            return String.valueOf(user.getNickname()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getStatus$(){ 
 | 
        if (null == this.status){ return null; } 
 | 
        switch (this.status){ 
 | 
            case 2: 
 | 
                return "开始核价"; 
 | 
            case 1: 
 | 
                return "等待核价"; 
 | 
            case 0: 
 | 
                return "未完成"; 
 | 
            default: 
 | 
                return String.valueOf(this.status); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public String getCreateBy$(){ 
 | 
        UserService service = SpringUtils.getBean(UserService.class); 
 | 
        User user = service.selectById(this.createBy); 
 | 
        if (!Cools.isEmpty(user)){ 
 | 
            return String.valueOf(user.getNickname()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getCreateTime$(){ 
 | 
        if (Cools.isEmpty(this.createTime)){ 
 | 
            return ""; 
 | 
        } 
 | 
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); 
 | 
    } 
 | 
  
 | 
    public String getUpdateBy$(){ 
 | 
        UserService service = SpringUtils.getBean(UserService.class); 
 | 
        User user = service.selectById(this.updateBy); 
 | 
        if (!Cools.isEmpty(user)){ 
 | 
            return String.valueOf(user.getNickname()); 
 | 
        } 
 | 
        return null; 
 | 
    } 
 | 
  
 | 
    public String getUpdateTime$(){ 
 | 
        if (Cools.isEmpty(this.updateTime)){ 
 | 
            return ""; 
 | 
        } 
 | 
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); 
 | 
    } 
 | 
  
 | 
  
 | 
} 
 |