package com.jwipc.contract.model.po;

import com.fasterxml.jackson.annotation.JsonFilter;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Map;

/**
 * 功能描述:
 *
 * @Author: zx
 * @Date: 2024/3/29 0029 13:39
 */
@Data
public class ContractOA {

    Head head ;

    Map item;

    public static class Head{
        /**
         * SRM单据唯一编号
         */
        public Long RecordId;


        /**
         * OA流程编号
         */
        public String ProcessId;

        /**
         * SRM业务类型
         */
        public String SRMToS;

        /**
         * 申请人
         */
        public String Applicant;

        /**
         * 申请日期
         */
        public String ApplyDate;

        /**
         * 采购组织
         */
        public String PurchaseOrgCode;

        /**
         * 采购组织(显示值)
         */
        public String PurchaseOrgName;

        /**
         * 组织代码
         */
        public String OrgCode;

        /**
         * 采购组
         */
        public String PurchaseGroupCode;

        /**
         * 采购组(显示值)
         */
        public String PurchaseGroupName;

        /**
         * 订单类型(采购)
         */
        public String OrderType;

        /**
         * 公司(显示值)
         */
        public String CompanyName;

        /**
         * 公司代码
         */
        public String CompanyCode;


        /**
         * 公司(显示值)
         */
        public String UnitName;

        /**
         * 公司代码
         */
        public String UnitCode;


        /**
         * 合同类别1
         */
        public String ContractYypeCode;

        /**
         * 合同类别1(显示值)
         */
        public String ContractTypeName;

        /**
         * 合同类别2
         */
        public String ContractTypeCode2;

        /**
         * 合同类别2(显示值)
         */
        public String ContractTypeName2;

        /**
         * 合同内容涉及
         */
        public String ContractCover;

        /**
         * 合同类别显示值
         */
        public String ContractTypeCode;


        /**
         * 类别备注
         */
        public String TypeRemarks;


        /**
         * 供应商全称(显示值)
         */
        public String SupplierFullName;

        /**
         * 供应商代码
         */
        public String SupplierCode;

        /**
         * 币别
         */
        public String Currency;

        /**
         * 合同编号
         */
        public String ContractNumber;

        /**
         * 合同签订日期
         */
        public String SigningDate;

        /**
         * 是否需要用印
         */
        public String ElectronicSeal;

        public Integer TransferSap;

        /**
         * 用印类别
         */
        public String SealType;

        /**
         * 合同金额
         */
        public BigDecimal ContractAmount;

        /**
         * 大写金额
         */
        public String AmountWoeds;

        /**
         * 关联文档
         */
        public String RelevanceFile;
        public String Attachments;

        public String StampFile;

        public String StampedAttachment;

        /**
         * 合同说明
         */
        public String contractApplyContent;
    }


    public static class Item{

        /**
         * 科目(区分是费用类别)
         */
        public String Course;

        /**
         * 物料号
         */
        public String MaterialNumber;
        /**
         * 短文本(品牌，型号)
         */
        public String ShortText;

        /**
         * 采购订单数量
         */
        public BigDecimal OrderQuantity;

        /**
         * 货币
         */
        public String Currency;

        /**
         * 订单单位
         */
        public String OrderUnit;

        /**
         * 单价（含税）
         */
        public BigDecimal UnitPrice;

        /**
         * 税码
         */
        public String TaxCode;

        /**
         * 税码(显示值)
         */
        public String TaxName;

        /**
         * 总价格
         */
        public BigDecimal TotalPrice;

        /**
         * 工厂
         */
        public String FactoryCode;

        /**
         * 工厂(显示值)
         */
        public String FactoryName;

        /**
         * SRM序号
         */
        public Long AssetSerialNumber;

        /**
         * 模具编号
         */
        public String MoldNumber = "";

        /**
         * 资产编号（审批结束返回行号+资产单号）
         */
        public String AssetNumber;

        /**
         *  请购单编号
         */
        public String PurchaseNumber;

        /**
         * 申购部门名称
         */
        @JsonFilter("Req_DeptNDame")
        public String Req_DeptNDame;

        /**
         * 标题（待定要不要回传）
         */
        public String Title;

        /**
         * 请购人名称
         */
        public String DemanderName;

        public String CostCenter;

        public String CustomerCode;

        public String DrivingFactors;

    }


    public static class MroItem{

        /**
         * 文件名称
          */
        public String FileName;

        /**
         * 份数
         */
        public String Share;

        /**
         * 签约日期
         */
        public String SigningDate;

        /**
         * 我方负责人
         */
        public String MyHead;

        /**
         * 对方单位名称
         */
        public String TargetUnitName;

        /**
         * 对方负责人
         */
        public String TargetHead;

        /**
         * 附件
         */
        public String Attachments;

        /**
         * 合同金额
         */
        public BigDecimal ContractAmount;

        /**
         * 备注
         */
        public String Remark;



    }

    

}
