예제 #1
0
        public static bool Return(ObjectModule.Local.Binning gb, ObjectModule.Local.Tracking gt)
        {
            List <SqlCommand> list = new List <SqlCommand>();

            try
            {
                if (gt.STATUS == "REUSE")
                {
                    SqlCommand cmd_Binning = Binning.Update(gb);
                    list.Add(cmd_Binning);
                    SqlCommand cmd_Tracking = Tracking.Update(gt);
                    list.Add(cmd_Tracking);
                }
                else
                {
                    SqlCommand cmd_Tracing = Tracking.Delete(gt.PART_ID);
                    list.Add(cmd_Tracing);
                }

                SqlCommand cmd_History = History.Insert(gt);
                list.Add(cmd_History);
                return(Common.DB.SqlDB.SetData_Rollback(list, StaticRes.Local));
            }
            catch
            {
                return(false);
            }
        }
예제 #2
0
 public static SqlCommand Update(ObjectModule.Local.Binning gb)
 {
     try
     {
         string     sql = @"Update Binning set PART_ID=@PART_ID,SAPCODE=@SAPCODE,DESCRIPTION=@DESCRIPTION,BATCH_NO=@BATCH_NO,START_WEIGHT=@START_WEIGHT,CURRENT_WEIGHT=@CURRENT_WEIGHT,
                        THAWING_DATETIME=@THAWING_DATETIME,READY_DATETIME=@READY_DATETIME,EXPIRY_DATETIME=@EXPIRY_DATETIME,MF_EXPIRY_DATE=@MF_EXPIRY_DATE,USER_ID=@USER_ID,USER_NAME=@USER_NAME,
                        USER_GROUP=@USER_GROUP,UPDATED_TIME=@UPDATED_TIME,STATUS=@STATUS,DEPARTMENT=@DEPARTMENT where SLOT_ID=@SLOT_ID and SLOT_INDEX=@SLOT_INDEX ";
         SqlCommand cmd = new SqlCommand(sql);
         cmd.Parameters.Add("@SLOT_ID", SqlDbType.Int).Value               = gb.SLOT_ID;
         cmd.Parameters.Add("@SLOT_INDEX", SqlDbType.Int).Value            = gb.SLOT_INDEX;
         cmd.Parameters.Add("@PART_ID", SqlDbType.VarChar).Value           = gb.PART_ID;
         cmd.Parameters.Add("@SAPCODE", SqlDbType.VarChar).Value           = gb.SAPCODE;
         cmd.Parameters.Add("@DESCRIPTION", SqlDbType.VarChar).Value       = gb.DESCRIPTION;
         cmd.Parameters.Add("@BATCH_NO", SqlDbType.VarChar).Value          = gb.BATCH_NO;
         cmd.Parameters.Add("@STATUS", SqlDbType.VarChar).Value            = gb.STATUS;
         cmd.Parameters.Add("@START_WEIGHT", SqlDbType.Float).Value        = gb.START_WEIGHT;
         cmd.Parameters.Add("@CURRENT_WEIGHT", SqlDbType.Float).Value      = gb.CURRENT_WEIGHT;
         cmd.Parameters.Add("@THAWING_DATETIME", SqlDbType.DateTime).Value = gb.THAWING_DATETIME;
         cmd.Parameters.Add("@READY_DATETIME", SqlDbType.DateTime).Value   = gb.READY_DATETIME;
         cmd.Parameters.Add("@EXPIRY_DATETIME", SqlDbType.DateTime).Value  = gb.EXPIRY_DATETIME;
         cmd.Parameters.Add("@MF_EXPIRY_DATE", SqlDbType.Date).Value       = gb.MF_EXPIRY_DATE;
         cmd.Parameters.Add("@USER_ID", SqlDbType.VarChar).Value           = gb.DEPARTMENT;
         cmd.Parameters.Add("@USER_NAME", SqlDbType.VarChar).Value         = gb.USER_NAME;
         cmd.Parameters.Add("@USER_GROUP", SqlDbType.VarChar).Value        = gb.USER_GROUP;
         cmd.Parameters.Add("@DEPARTMENT", SqlDbType.VarChar).Value        = gb.DEPARTMENT;
         cmd.Parameters.Add("@UPDATED_TIME", SqlDbType.DateTime).Value     = gb.UPDATED_TIME;
         return(cmd);
     }
     catch (SqlException ee)
     {
         throw ee;
     }
 }
예제 #3
0
            public static bool Local_Update(string Slot_ID, string Slot_Index, string Batch_No, string Sapcode, string Description,
                                            string Part_ID, string Thawing_Time, string Ready_Time, string Expiry_Time, string MF_Expiry_Date, string Weight, string Capacity, string Empty_Syringe_Weight)
            {
                #region Update BINNING DB
                ObjectModule.Local.Binning gb = new ObjectModule.Local.Binning();
                gb.BATCH_NO         = Batch_No;
                gb.CAPACITY         = int.Parse(Capacity);
                gb.CURRENT_WEIGHT   = float.Parse(Weight);
                gb.DEPARTMENT       = StaticRes.Global.Current_User.DEPARTMENT;
                gb.DESCRIPTION      = Description;
                gb.EXPIRY_DATETIME  = DateTime.Parse(Expiry_Time);
                gb.MF_EXPIRY_DATE   = DateTime.Parse(MF_Expiry_Date);
                gb.PART_ID          = Part_ID;
                gb.READY_DATETIME   = DateTime.Parse(Ready_Time);
                gb.SAPCODE          = Sapcode;
                gb.SLOT_ID          = int.Parse(Slot_ID);
                gb.SLOT_INDEX       = int.Parse(Slot_Index);
                gb.START_WEIGHT     = float.Parse(Weight);
                gb.STATUS           = StaticRes.Global.Binning_Status.New;
                gb.THAWING_DATETIME = DateTime.Parse(Thawing_Time);
                gb.UPDATED_TIME     = System.DateTime.Now;
                gb.USER_GROUP       = StaticRes.Global.Current_User.USER_GROUP;
                gb.USER_ID          = StaticRes.Global.Current_User.USER_ID;
                gb.USER_NAME        = StaticRes.Global.Current_User.USER_NAME;
                #endregion

                #region Insert Trakcing/History
                ObjectModule.Local.Tracking gt = new ObjectModule.Local.Tracking();
                gt.ACTION               = StaticRes.Global.Event.Load;
                gt.BATCH_NO             = Batch_No;
                gt.CAPACITY             = int.Parse(Capacity);
                gt.CURRENT_WEIGHT       = float.Parse(Weight);
                gt.DEPARTMENT           = StaticRes.Global.Current_User.DEPARTMENT;
                gt.DESCRIPTION          = Description;
                gt.DEVICE               = "";
                gt.EMPTY_SYRINGE_WEIGHT = float.Parse(Empty_Syringe_Weight);
                gt.EQUIP_ID             = "";
                gt.EXPIRY_DATETIME      = DateTime.Parse(Expiry_Time);
                gt.LOCID            = "";
                gt.LOT_ID           = "";
                gt.MF_EXPIRY_DATE   = DateTime.Parse(MF_Expiry_Date);
                gt.MONTH            = System.DateTime.Now.Month;
                gt.PART_ID          = Part_ID;
                gt.READY_DATETIME   = DateTime.Parse(Ready_Time);
                gt.REMARKS          = "";
                gt.SAPCODE          = Sapcode;
                gt.START_WEIGHT     = float.Parse(Weight);
                gt.STATUS           = StaticRes.Global.Status.Load;
                gt.THAWING_DATETIME = DateTime.Parse(Thawing_Time);
                gt.UPDATED_TIME     = System.DateTime.Now;
                gt.USER_ID          = StaticRes.Global.Current_User.USER_ID;
                gt.USER_NAME        = StaticRes.Global.Current_User.USER_NAME;
                gt.WEEK             = Logic.Common.weekofyear(System.DateTime.Now);
                gt.YEAR             = System.DateTime.Now.Year;
                return(DataProvider.Rollback.Load(gb, gt));

                #endregion
            }
예제 #4
0
        public static List <ObjectModule.Local.Binning> Slot_Status()
        {
            List <ObjectModule.Local.Binning> xx = new List <ObjectModule.Local.Binning>();

            ObjectModule.Local.Binning fb = new ObjectModule.Local.Binning();
            DataTable dt = DataProvider.Local.Binning.Select.All();

            foreach (DataRow a in dt.Rows)
            {
                fb = new ObjectModule.Local.Binning(a);
                xx.Add(fb);
            }
            return(xx);
        }
예제 #5
0
        public static ObjectModule.Local.Binning Search_Empty_Slot(int Capacity)
        {
            DataTable dt = DataProvider.Local.Binning.Select.Search_Empty_Position(Capacity);

            if (dt.Rows.Count == 0)
            {
                throw new System.Exception("Machine Full Already !!\n机器已满!!");
            }
            if (dt.Rows.Count <= StaticRes.Global.System_Setting.Storage_Pre_Set_Qty)
            {
                throw new System.Exception("Machine empty slot less/equal than pre set qty by admin\n机器空槽/等于小于预先设置数量管理!!");
            }
            ObjectModule.Local.Binning gb = new ObjectModule.Local.Binning(dt.Rows[0]);
            return(gb);
        }
예제 #6
0
            public static ObjectModule.Local.Binning BatchNo_Validate(string Sapcode, string Batch_No, ref int Record_Count)
            {
                if (Batch_No.Length <= 0 && Batch_No.Length >= 10)
                {
                    throw new System.Exception("Please input Batch No !!\n请输入Batch号码");
                }
                ObjectModule.Local.Binning bin = new ObjectModule.Local.Binning();
                DataTable dt = DataProvider.Local.Binning.Select.By_SapcodeBatchNo(Sapcode, Batch_No);

                Record_Count = dt.Rows.Count;
                if (dt.Rows.Count > 0)
                {
                    bin = new ObjectModule.Local.Binning(dt.Rows[0]);
                }
                return(bin);
            }
예제 #7
0
        public static bool Spool_Missing(ObjectModule.Local.Tracking gt, ObjectModule.Local.Binning gb)
        {
            List <SqlCommand> list = new List <SqlCommand>();

            try
            {
                SqlCommand cmd_GEMS_Binning = Binning.Update(gb);
                list.Add(cmd_GEMS_Binning);
                SqlCommand cmd_GEMS_Tracking = Tracking.Delete(gt.PART_ID);
                list.Add(cmd_GEMS_Tracking);
                SqlCommand cmd_GEMS_History = History.Insert(gt);
                list.Add(cmd_GEMS_History);
                return(Common.DB.SqlDB.SetData_Rollback(list, StaticRes.Local));
            }
            catch
            {
                return(false);
            }
        }
예제 #8
0
        public static bool Unload(ObjectModule.Local.Binning gb, ObjectModule.Local.Tracking gt)
        {
            List <SqlCommand> list = new List <SqlCommand>();

            try
            {
                SqlCommand cmd_Binning = Binning.Update(gb);
                list.Add(cmd_Binning);
                SqlCommand cmd_Tracking = Tracking.Update(gt);
                list.Add(cmd_Tracking);
                SqlCommand cmd_History = History.Insert(gt);
                list.Add(cmd_History);
                return(Common.DB.SqlDB.SetData_Rollback(list, StaticRes.Local));
            }
            catch
            {
                return(false);
            }
        }
예제 #9
0
            public static ObjectModule.Local.Binning search_Inventory(string sapcode, string department)
            {
                DataTable dt = DataProvider.Local.Binning.Select.By_Reuse_Sapcode(sapcode, department);

                if (dt.Rows.Count == 0)
                {
                    dt = DataProvider.Local.Binning.Select.By_New_Sapcode(sapcode, department);
                    if (dt.Rows.Count == 0)
                    {
                        throw new System.Exception("Non inventory inside machine !!\n机器里面没有!!");
                    }
                    else
                    {
                        ObjectModule.Local.Binning gb = new ObjectModule.Local.Binning(dt.Rows[0]);
                        return(gb);
                    }
                }
                else
                {
                    ObjectModule.Local.Binning gb = new ObjectModule.Local.Binning(dt.Rows[0]);
                    return(gb);
                }
            }
예제 #10
0
            public static bool Local_Update(string Part_ID, string Slot_ID, string Slot_Index, string Equip_ID,
                                            string status, string Start_Weight, string Current_Weight, string Sapcode, string Thawing_Time, string Ready_Time, string Expiry_Time,
                                            string Description, string Batch_No, string Capacity, string Remark)
            {
                #region Update BINNING DB
                ObjectModule.Local.Binning gb = new ObjectModule.Local.Binning();
                gb.BATCH_NO         = "";
                gb.CAPACITY         = int.Parse(Capacity);
                gb.CURRENT_WEIGHT   = 0;
                gb.DEPARTMENT       = StaticRes.Global.Current_User.DEPARTMENT;
                gb.DESCRIPTION      = "";
                gb.EXPIRY_DATETIME  = System.DateTime.Now;
                gb.MF_EXPIRY_DATE   = System.DateTime.Now;
                gb.PART_ID          = "";
                gb.READY_DATETIME   = System.DateTime.Now;
                gb.SAPCODE          = "";
                gb.SLOT_ID          = int.Parse(Slot_ID);
                gb.SLOT_INDEX       = int.Parse(Slot_Index);
                gb.START_WEIGHT     = 0;
                gb.STATUS           = StaticRes.Global.Binning_Status.Empty;
                gb.THAWING_DATETIME = System.DateTime.Now;
                gb.UPDATED_TIME     = System.DateTime.Now;
                gb.USER_GROUP       = StaticRes.Global.Current_User.USER_GROUP;
                gb.USER_ID          = StaticRes.Global.Current_User.USER_ID;
                gb.USER_NAME        = StaticRes.Global.Current_User.USER_NAME;
                #endregion

                #region Insert TRACKING/History
                DataTable dt = new DataTable();
                if (status == StaticRes.Global.Status.Load) //New Material
                {
                    dt = DataProvider.Local.Tracking.Select.by_PartID(Part_ID, StaticRes.Global.Status.Load);
                }
                else
                {
                    dt = DataProvider.Local.Tracking.Select.by_PartID(Part_ID, StaticRes.Global.Status.Reuse);
                }
                if (dt.Rows.Count == 0)
                {
                    #region If data missing
                    ObjectModule.Local.Tracking gt = new ObjectModule.Local.Tracking();
                    gt.ACTION               = StaticRes.Global.Event.Remove;
                    gt.BATCH_NO             = Batch_No;
                    gt.CAPACITY             = int.Parse(Capacity);
                    gt.CURRENT_WEIGHT       = float.Parse(Current_Weight);
                    gt.DEPARTMENT           = StaticRes.Global.Current_User.DEPARTMENT;
                    gt.DESCRIPTION          = Description;
                    gt.DEVICE               = "";
                    gt.EMPTY_SYRINGE_WEIGHT = 0;
                    if (Equip_ID.Length > 0)
                    {
                        gt.EQUIP_ID = Equip_ID;
                    }
                    else
                    {
                        gt.EQUIP_ID = "";
                    }
                    gt.EXPIRY_DATETIME  = DateTime.Parse(Expiry_Time);
                    gt.LOCID            = "";
                    gt.LOT_ID           = "";
                    gt.MF_EXPIRY_DATE   = System.DateTime.Now.AddYears(1);
                    gt.MONTH            = System.DateTime.Now.Month;
                    gt.PART_ID          = Part_ID;
                    gt.READY_DATETIME   = DateTime.Parse(Ready_Time);
                    gt.REMARKS          = "Missing";
                    gt.SAPCODE          = Sapcode;
                    gt.START_WEIGHT     = float.Parse(Start_Weight);
                    gt.STATUS           = StaticRes.Global.Status.Unload;
                    gt.THAWING_DATETIME = DateTime.Parse(Thawing_Time);
                    gt.UPDATED_TIME     = System.DateTime.Now;
                    gt.USER_ID          = StaticRes.Global.Current_User.USER_ID;
                    gt.USER_NAME        = StaticRes.Global.Current_User.USER_NAME;
                    gt.WEEK             = Logic.Common.weekofyear(System.DateTime.Now);
                    gt.YEAR             = System.DateTime.Now.Year;
                    return(DataProvider.Rollback.Unload_DataMissing(gb, gt));

                    #endregion
                }
                else
                {
                    ObjectModule.Local.Tracking gt = new ObjectModule.Local.Tracking(dt.Rows[0]);
                    gt.ACTION         = StaticRes.Global.Event.Remove;
                    gt.DEVICE         = "";
                    gt.LOCID          = "";
                    gt.LOT_ID         = "";
                    gt.MONTH          = System.DateTime.Now.Month;
                    gt.UPDATED_TIME   = System.DateTime.Now;
                    gt.USER_ID        = StaticRes.Global.Current_User.USER_ID;
                    gt.USER_NAME      = StaticRes.Global.Current_User.USER_NAME;
                    gt.WEEK           = Logic.Common.weekofyear(System.DateTime.Now);
                    gt.YEAR           = System.DateTime.Now.Year;
                    gt.BATCH_NO       = Batch_No;
                    gt.CAPACITY       = int.Parse(Capacity);
                    gt.CURRENT_WEIGHT = float.Parse(Current_Weight);
                    gt.DEPARTMENT     = StaticRes.Global.Current_User.DEPARTMENT;
                    gt.DESCRIPTION    = Description;
                    if (Equip_ID.Length > 0)
                    {
                        gt.EQUIP_ID = Equip_ID;
                    }
                    else
                    {
                        gt.EQUIP_ID = "";
                    }
                    gt.EXPIRY_DATETIME  = DateTime.Parse(Expiry_Time);
                    gt.PART_ID          = Part_ID;
                    gt.READY_DATETIME   = DateTime.Parse(Ready_Time);
                    gt.REMARKS          = Remark;
                    gt.SAPCODE          = Sapcode;
                    gt.START_WEIGHT     = float.Parse(Start_Weight);
                    gt.STATUS           = StaticRes.Global.Status.Remove;
                    gt.THAWING_DATETIME = DateTime.Parse(Thawing_Time);
                    return(DataProvider.Rollback.Unload(gb, gt));
                }
                #endregion
            }