using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using QMAPP.FJC.TRACING.DAInterface;
using QMAPP.FJC.Entity.Operation;

namespace QMAPP.FJC.TRACING.StateActions
{
    /// <summary>
    /// 创建本体数据
    /// </summary>
    public class CreateMain : IStateAction
    {
        public void Execute(DAObject data)
        {
            Main main = new Main()
            {
                COMPLETEFLAG = "1",
                COMPLETETIME = DateTime.Now,
                CREATEDATE = DateTime.Now,
                CREATEUSER = data.UserID,
                CURRENTPROCESS = "15",
                MACHINECODDE = data.MachineCode,
                OUTFLAG = "0",
                PID = Guid.NewGuid().ToString(),
                PROCESSSTATE = "1",
                PRODUCELINE = data.WorkLocState.WORKCENTER_CODE,
                STATUS = "0",
                UPDATEDATE = DateTime.Now,
                UPDATEUSER = data.UserID,
                IsNewInfo = true,
                MATERIAL_CODE = data.WorkLocState.CurrentState.MATERIAL_CODE,
                MAINCODE = new CodeGenerators.AssemblyCodeGenerator().Generate(data.WorkLocState.CurrentState.MATERIAL_CODE, DateTime.Now, null), //data.WorkLocState.CurrentState.PROCESS_CODE,
                SKID = "",
                SKELETONCODE = "",
                EID = "",
                EPIDERMISCODE = data.WorkLocState.CurrentState.PROCESS_CODE,
                WORKCELL_CODE = data.WorkLocState.WORKCELL_CODE,
                WORKCENTER_CODE = data.WorkLocState.WORKCENTER_CODE,
                WORKLOC_CODE = data.WorkLocState.WORKLOC_CODE
            };
            data.AddToPersistentList(main, main.PID);
        }
    }
}