ReticleExcelDataForm.java

package com.mycim.valueobject.prp;

import com.mycim.framework.utils.lang.StringUtils;
import com.mycim.valueobject.consts.ImportSeqTag;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.regex.Pattern;

/**
 * 有referencefile的,必须建立一个属性名+RefVal的属性
 *
 * @author JP
 */
public class ReticleExcelDataForm {

    private String importError = new String();

    // 光罩组
    @ImportSeqTag(0)
    private String reticleFamily;

    // 光罩组描述
    @ImportSeqTag(value = 1)
    private String reticleFamilyDesc;

    // 光罩组类型
    @ImportSeqTag(value = 2, referencefile = "reticlefamilytype")
    private String reticleFamilyType;

    private String reticleFamilyTypeRefVal;

    // 光罩号
    @ImportSeqTag(3)
    private String reticleId;

    // 光罩描述
    @ImportSeqTag(4)
    private String reticleDesc;

    // 材质
    @ImportSeqTag(value = 5, referencefile = "reticletype")
    private String material;

    private String materialRefVal;

    // 过期时间
    @ImportSeqTag(6)
    private String deadline;

    // 关照等级
    @ImportSeqTag(value = 7, require = true)
    private String reticleLevel;

    // 贴膜数
    @ImportSeqTag(value = 8, referencefile = "maskInspectionId")
    private String filmNumber;

    private String filmNumberRefVal;

    // 版本号
    @ImportSeqTag(value = 9, require = true)
    private String versionID;

    // 光罩工厂
    @ImportSeqTag(value = 10, require = true, referencefile = "$$MASK_HOUSE")
    private String reticleFactory;

    private String reticleFactoryRefVal;

    // 清除率
    @ImportSeqTag(11)
    private String clearRatio;

    // 放大倍数
    @ImportSeqTag(value = 12, referencefile = "magnification")
    private String magnificationTimes;

    private String magnificationTimesRefVal;

    // 光罩尺寸
    @ImportSeqTag(value = 13, referencefile = "maskSize")
    private String reticleSize;

    private String reticleSizeRefVal;

    // 最大使用次数
    @ImportSeqTag(14)
    private String maxUsingTimes;

    // 工程师组
    @ImportSeqTag(15)
    private String engineerGroupID;

    // 附加文档
    @ImportSeqTag(16)
    private String documentID;

    // 附加文档描述
    @ImportSeqTag(17)
    private String documentDesc;

    // 附加文档位置
    @ImportSeqTag(18)
    private String location;

    public String getImportError() {
        return importError;
    }

    public void setImportError(String importError) {
        this.importError = importError;
    }

    public String getReticleFamily() {
        return reticleFamily;
    }

    public void setReticleFamily(String reticleFamily) {
        this.reticleFamily = reticleFamily;
    }

    public String getReticleFamilyDesc() {
        return reticleFamilyDesc;
    }

    public void setReticleFamilyDesc(String reticleFamilyDesc) {
        this.reticleFamilyDesc = reticleFamilyDesc;
    }

    public String getReticleFamilyType() {
        return reticleFamilyType;
    }

    public void setReticleFamilyType(String reticleFamilyType) {
        this.reticleFamilyType = reticleFamilyType;
    }

    public String getReticleId() {
        return reticleId;
    }

    public void setReticleId(String reticleId) {
        this.reticleId = reticleId;
    }

    public String getReticleDesc() {
        return reticleDesc;
    }

    public void setReticleDesc(String reticleDesc) {
        this.reticleDesc = reticleDesc;
    }

    public String getMaterial() {
        return material;
    }

    public void setMaterial(String material) {
        this.material = material;
    }

    public String getDeadline() {
        return deadline;
    }

    public void setDeadline(String deadline) {
        String reg = "^\\d+$";
        boolean macth = Pattern.matches(reg, deadline);
        if (macth) {
            Calendar calendar = new GregorianCalendar(1900, 0, -1);
            DateFormat sf = new SimpleDateFormat("yyyy/MM/dd");
            long dateTime = calendar.getTime().getTime() + Long.parseLong(deadline) * 24 * 60 * 60 * 1000;
            this.deadline = sf.format((new Date(dateTime)));
        } else {
            this.deadline = deadline;
        }

    }

    public String getReticleLevel() {
        return reticleLevel;
    }

    public void setReticleLevel(String reticleLevel) {
        this.reticleLevel = reticleLevel;
    }

    public String getFilmNumber() {
        return filmNumber;
    }

    public void setFilmNumber(String filmNumber) {
        this.filmNumber = filmNumber;
    }

    public String getReticleFactory() {
        return reticleFactory;
    }

    public void setReticleFactory(String reticleFactory) {
        this.reticleFactory = reticleFactory;
    }

    public String getClearRatio() {
        return clearRatio;
    }

    public void setClearRatio(String clearRatio) {
        if (StringUtils.isNotBlank(clearRatio) && !clearRatio.endsWith("%")) {
            Float f = Float.valueOf(clearRatio) * 100;
            this.clearRatio = f.toString() + "%";
        } else {
            this.clearRatio = clearRatio;
        }

    }

    public String getMagnificationTimes() {
        return magnificationTimes;
    }

    public void setMagnificationTimes(String magnificationTimes) {
        this.magnificationTimes = magnificationTimes;
    }

    public String getReticleSize() {
        return reticleSize;
    }

    public void setReticleSize(String reticleSize) {
        this.reticleSize = reticleSize;
    }

    public String getMaxUsingTimes() {
        return maxUsingTimes;
    }

    public void setMaxUsingTimes(String maxUsingTimes) {
        this.maxUsingTimes = maxUsingTimes;
    }

    public String getEngineerGroupID() {
        return engineerGroupID;
    }

    public void setEngineerGroupID(String engineerGroupID) {
        this.engineerGroupID = engineerGroupID;
    }

    public String getDocumentID() {
        return documentID;
    }

    public void setDocumentID(String documentID) {
        this.documentID = documentID;
    }

    public String getDocumentDesc() {
        return documentDesc;
    }

    public void setDocumentDesc(String documentDesc) {
        this.documentDesc = documentDesc;
    }

    public String getLocation() {
        return location;
    }

    public void setLocation(String location) {
        this.location = location;
    }

    public String getVersionID() {
        return versionID;
    }

    public void setVersionID(String versionID) {
        this.versionID = versionID;
    }

    public String getReticleFamilyTypeRefVal() {
        return reticleFamilyTypeRefVal;
    }

    public void setReticleFamilyTypeRefVal(String reticleFamilyTypeRefVal) {
        this.reticleFamilyTypeRefVal = reticleFamilyTypeRefVal;
    }

    public String getMaterialRefVal() {
        return materialRefVal;
    }

    public void setMaterialRefVal(String materialRefVal) {
        this.materialRefVal = materialRefVal;
    }

    public String getFilmNumberRefVal() {
        return filmNumberRefVal;
    }

    public void setFilmNumberRefVal(String filmNumberRefVal) {
        this.filmNumberRefVal = filmNumberRefVal;
    }

    public String getReticleFactoryRefVal() {
        return reticleFactoryRefVal;
    }

    public void setReticleFactoryRefVal(String reticleFactoryRefVal) {
        this.reticleFactoryRefVal = reticleFactoryRefVal;
    }

    public String getMagnificationTimesRefVal() {
        return magnificationTimesRefVal;
    }

    public void setMagnificationTimesRefVal(String magnificationTimesRefVal) {
        this.magnificationTimesRefVal = magnificationTimesRefVal;
    }

    public String getReticleSizeRefVal() {
        return reticleSizeRefVal;
    }

    public void setReticleSizeRefVal(String reticleSizeRefVal) {
        this.reticleSizeRefVal = reticleSizeRefVal;
    }

}