|  |  | 
 |  |  | import com.baomidou.mybatisplus.annotations.TableName; | 
 |  |  | import com.core.common.Cools; | 
 |  |  | import com.core.common.SpringUtils; | 
 |  |  | import com.core.exception.CoolException; | 
 |  |  | import com.zy.asrs.service.LocMastService; | 
 |  |  | import com.zy.common.utils.Synchro; | 
 |  |  | import com.zy.system.entity.User; | 
 |  |  | import com.zy.system.service.UserService; | 
 |  |  | import io.swagger.annotations.ApiModelProperty; | 
 |  |  | import lombok.Data; | 
 |  |  |  | 
 |  |  | import java.beans.BeanInfo; | 
 |  |  | import java.beans.Introspector; | 
 |  |  | import java.beans.PropertyDescriptor; | 
 |  |  | import java.io.Serializable; | 
 |  |  | import java.text.SimpleDateFormat; | 
 |  |  | import java.util.Date; | 
 |  |  | 
 |  |  |     @ExcelProperty("商品名称") | 
 |  |  |     private String maktx; | 
 |  |  |  | 
 |  |  |     @ApiModelProperty(value= "批号") | 
 |  |  |     @ExcelProperty("批号") | 
 |  |  |     @ApiModelProperty(value= "规格") | 
 |  |  |     @ExcelProperty("规格") | 
 |  |  |     private String specs; | 
 |  |  |  | 
 |  |  |     @ApiModelProperty(value= "货品特征") | 
 |  |  |     @ExcelProperty("货品特征") | 
 |  |  |     private String batch; | 
 |  |  |  | 
 |  |  |     @ApiModelProperty(value= "单据编号") | 
 |  |  |     @ExcelProperty("单据编号") | 
 |  |  |     @TableField("order_no") | 
 |  |  |     private String orderNo; | 
 |  |  |  | 
 |  |  |     @ApiModelProperty(value= "规格") | 
 |  |  |     private String specs; | 
 |  |  |  | 
 |  |  |     @ApiModelProperty(value= "型号") | 
 |  |  |     private String model; | 
 |  |  | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modiTime); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public String getAppeUser$(){ | 
 |  |  |         UserService service = SpringUtils.getBean(UserService.class); | 
 |  |  |         User user = service.selectById(this.appeUser); | 
 |  |  | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public void sync(Object dest) { | 
 |  |  |         try { | 
 |  |  |             BeanInfo sourceBean = Introspector.getBeanInfo(this.getClass(),Object.class); | 
 |  |  |             PropertyDescriptor[] sourceProperty = sourceBean.getPropertyDescriptors(); | 
 |  |  |             BeanInfo destBean = Introspector.getBeanInfo(dest.getClass(),Object.class); | 
 |  |  |             PropertyDescriptor[] destProperty = destBean.getPropertyDescriptors(); | 
 |  |  |             for (PropertyDescriptor propertyDescriptor : sourceProperty) { | 
 |  |  |                 for (PropertyDescriptor descriptor : destProperty) { | 
 |  |  |                     if (propertyDescriptor.getName().equals(descriptor.getName()) && propertyDescriptor.getPropertyType() == descriptor.getPropertyType()) { | 
 |  |  |                         descriptor.getWriteMethod().invoke(dest, propertyDescriptor.getReadMethod().invoke(this)); | 
 |  |  |                         break; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |             } | 
 |  |  |         } catch (Exception e) { | 
 |  |  |             throw new CoolException("属性复制失败:" + e.getMessage()); | 
 |  |  |     public long getStoreDate(){ | 
 |  |  |         if (Cools.isEmpty(this.appeTime)){ | 
 |  |  |             this.appeTime = new Date(); | 
 |  |  |         } | 
 |  |  |         long timeNow = new Date().getTime(); | 
 |  |  |         long timeCreate = this.appeTime.getTime(); | 
 |  |  |  | 
 |  |  |  | 
 |  |  |         return (timeNow - timeCreate) /24/60/60/1000; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public void sync(Object source) { | 
 |  |  |         Synchro.Copy(source, this); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } |