123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220 |
- package cn.fastfun.service.entity;
- import cn.fastfun.controller.param.HandelFormParam;
- import cn.fastfun.controller.param.LibraryOutFormParam;
- import cn.fastfun.controller.param.TransferBySnQueryParam;
- import cn.fastfun.controller.param.TransferFormParam;
- import cn.fastfun.service.UtilService;
- import com.bridge.entity.DateEntity;
- import com.fasterxml.jackson.annotation.JsonFormat;
- import com.fasterxml.jackson.annotation.JsonIgnore;
- import com.fasterxml.jackson.annotation.JsonInclude;
- import io.swagger.annotations.ApiModelProperty;
- import io.swagger.models.auth.In;
- import lombok.Getter;
- import lombok.NoArgsConstructor;
- import lombok.Setter;
- import org.springframework.format.annotation.DateTimeFormat;
- import javax.annotation.Resource;
- import javax.persistence.Column;
- import javax.persistence.Entity;
- import javax.persistence.Table;
- import javax.persistence.Transient;
- import java.math.BigInteger;
- import java.util.Date;
- @Entity
- @Table(name = "app_device_log")
- @Setter
- @Getter
- @NoArgsConstructor
- @JsonInclude(JsonInclude.Include.NON_NULL)
- public class AppDeviceLog extends DateEntity {
- private static final long serialVersionUID = 1L;
- @ApiModelProperty(value = "类型", name = "type", required = true)
- @Column(name = "type")
- private Integer type;
- @ApiModelProperty(value = "操作号", name = "operateID", required = true)
- @Column(name = "operate_id")
- private Integer operateID;
- @ApiModelProperty(value = "IMEI", name = "imei", required = true)
- @Column(name = "imei")
- private String imei;
- @ApiModelProperty(value = "SN", name = "sn", required = true)
- @Column(name = "sn")
- private String sn;
- @ApiModelProperty(value = "出库类型", name = "outType", required = true)
- @Column(name = "out_type")
- private Integer outType;
- @ApiModelProperty(value = "联系人", name = "receiverName", required = true)
- @Column(name = "receiver_name")
- private String receiverName;
- @ApiModelProperty(value = "电话", name = "receiverPhone", required = true)
- @Column(name = "receiver_phone")
- private String receiverPhone;
- @ApiModelProperty(value = "出库客户", name = "outCustomId", required = true)
- @Column(name = "out_custom_id")
- private String outCustomId;
- @ApiModelProperty(value = "备注", name = "remarks", required = true)
- @Column(name = "remarks")
- private String remarks;
- @ApiModelProperty(value = "划拨设备类型", name = "tfDeviceType", required = true)
- @Column(name = "tf_device_type")
- private Integer tfDeviceType;
- @ApiModelProperty(value = "用途", name = "tfUsed", required = true)
- @Column(name = "tf_used")
- private String tfUsed;
- @ApiModelProperty(value = "描述", name = "tfDescribe", required = true)
- @Column(name = "tf_describe")
- private String tfDescribe;
- @ApiModelProperty(value = "划拨动作", name = "tfEvent", required = true)
- @Column(name = "tf_event")
- private Integer tfEvent;
- @ApiModelProperty(value = "处置类型", name = "hfEvent", required = true)
- @Column(name = "hf_event")
- private Integer hfEvent;
- @ApiModelProperty(value = "处置内容", name = "hfHandleContent", required = true)
- @Column(name = "hf_handle_content")
- private String hfHandleContent;
- @ApiModelProperty(value = "操作者", name = "operator", required = true)
- @Column(name = "operator")
- private String operator;
- @ApiModelProperty(value = "批次号", name = "batchNum", required = true, example = "")
- @Column(name = "batch_num")
- @JsonIgnore
- private String batchNum;
- public AppDeviceLog(String sn, String imei) {
- setSn(sn);
- setImei(imei);
- }
- // 入库属性
- public AppDeviceLog toInStorage(Date addTime, String batchNum, BigInteger operateID) {
- setType(1); // 入库
- setAddTime(addTime);
- setBatchNum(batchNum);
- setOperateID(operateID.intValue());
- return this;
- }
- // 划拨
- public AppDeviceLog toTransfer(TransferFormParam param, Date addTime, String batchNum, BigInteger operateID) {
- setType(2); // 划拨
- setTfEvent(param.getEvent()); //
- setTfDeviceType(param.getDeviceType());
- setTfDescribe(param.getDescribe());
- setTfUsed(param.getUsed());
- setOutCustomId(param.getCustomId());
- setAddTime(addTime);
- setBatchNum(batchNum);
- setOperateID(operateID.intValue());
- return this;
- }
- // 回调
- public AppDeviceLog transferBack(TransferFormParam param, Date addTime, String batchNum, BigInteger operateID) {
- setType(5); // 回调
- setTfDeviceType(param.getDeviceType());
- setTfDescribe(param.getDescribe());
- setAddTime(addTime);
- setBatchNum(batchNum);
- setOperateID(operateID.intValue());
- return this;
- }
- // 出库
- public AppDeviceLog outStorage(LibraryOutFormParam param, Date addTime, String batchNum, BigInteger operateID) {
- setType(3); // 出库
- setOutType(param.getOutType());
- setReceiverName(param.getReceiverName());
- setReceiverPhone(param.getReceiverPhone());
- setAddTime(addTime);
- setBatchNum(batchNum);
- setOperateID(operateID.intValue());
- return this;
- }
- // 处置
- public AppDeviceLog toHandle(HandelFormParam param, Date addTime, String batchNum, BigInteger operateID) {
- setType(4);
- setHfEvent(param.getEvent());
- setHfHandleContent(param.getHandleContent());
- setAddTime(addTime);
- setBatchNum(batchNum);
- setOperateID(operateID.intValue());
- return this;
- }
- // 显示名称
- @Transient
- private String typeTitle = "";
- @Transient
- private String packTitle = "";
- @Transient
- private String specTitle = "";
- @Transient
- private String expandTitle = "";
- /**
- * 属性追加来源设备信息
- *
- * @param device
- */
- public void appendFormDevice(AppDevice device) {
- setTypeTitle(device.getTypeTitle());
- setPackTitle(device.getPackTitle());
- setSpecTitle(device.getSpecTitle());
- setExpandTitle(device.getExpandTitle());
- }
- @ApiModelProperty(value = "入库时间", name = "handleTime", required = true)
- @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
- @Column(name = "instorage_time")
- private Date instorageTime;
- public void appendInTime(AppDevice device) {
- setInstorageTime(device.getInstorageTime());
- }
- }
|