Ejemplo n.º 1
0
        public void AddNewCustomer(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            string       strbu         = BU;
            string       customer_name = Data["CUSTOMER_NAME"].ToString().Trim();
            string       description   = Data["DESCRIPTION"].ToString().Trim();
            OleExec      oleDB         = null;
            T_C_CUSTOMER customer      = null;

            if (string.IsNullOrEmpty(customer_name))
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara.Add("CUSTOMER NAME");
                StationReturn.Data = "";
                return;
            }
            if (string.IsNullOrEmpty(description))
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara.Add("DESCRIPTION");
                StationReturn.Data = "";
                return;
            }
            try
            {
                oleDB    = this.DBPools["SFCDB"].Borrow();
                customer = new T_C_CUSTOMER(oleDB, DBTYPE);
                if (customer.CustomerIsExist(oleDB, strbu, customer_name))
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000005";
                    StationReturn.Data        = "";
                }
                else
                {
                    Row_C_CUSTOMER customerRow = (Row_C_CUSTOMER)customer.NewRow();
                    customerRow.ID            = customer.GetNewID(this.BU, oleDB, DBTYPE);
                    customerRow.BU            = strbu;
                    customerRow.CUSTOMER_NAME = customer_name;
                    customerRow.DESCRIPTION   = description;
                    oleDB.ThrowSqlExeception  = true;
                    oleDB.ExecSQL(customerRow.GetInsertString(DBTYPE));
                    StationReturn.Status      = StationReturnStatusValue.Pass;
                    StationReturn.MessageCode = "MES00000002";
                    StationReturn.Data        = "";
                }
                this.DBPools["SFCDB"].Return(oleDB);
            }
            catch (Exception exception)
            {
                this.DBPools["SFCDB"].Return(oleDB);
                throw exception;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 從SKU加載Customer
        /// 若Series已裝載則從Series加載
        /// </summary>
        /// <param name="Station"></param>
        /// <param name="Input"></param>
        /// <param name="Paras"></param>
        public static void CustFromSKUDataloader(MESStationBase Station, MESStationInput Input, List <R_Station_Action_Para> Paras)
        {
            OleExec           sfcdb        = Station.SFCDB;
            C_SERIES          c_series     = null;
            C_CUSTOMER        c_customer   = null;
            MESStationSession serieSession = Station.StationSession.Find(t => t.MESDataType == Paras[0].SESSION_TYPE && t.SessionKey == Paras[0].SESSION_KEY);

            if (serieSession == null)
            {
                MESStationSession skuSession = Station.StationSession.Find(t => t.MESDataType == Paras[1].SESSION_TYPE && t.SessionKey == Paras[1].SESSION_KEY);
                if (skuSession == null)
                {
                    throw new MESReturnMessage(MESReturnMessage.GetMESReturnMessage("MES00000045", new string[] { "SKU" }));
                }
                SKU sku = (SKU)skuSession.Value;
                if (sku == null)
                {
                    throw new MESReturnMessage(MESReturnMessage.GetMESReturnMessage("MES00000045", new string[] { "SKU" }));
                }
                c_series = new T_C_SERIES(sfcdb, DB_TYPE_ENUM.Oracle).GetDetailById(sfcdb, sku.CSeriesId);//sku.CSeriesId
                //是否加入StationSession...
            }
            else
            {
                c_series = (C_SERIES)serieSession.Value;
            }
            if (c_series == null)
            {
                throw new MESReturnMessage(MESReturnMessage.GetMESReturnMessage("MES00000045", new string[] { "SERIES" }));
            }
            //構建查詢CUSTOMER參數
            Dictionary <string, string> parameters = new Dictionary <string, string>();

            parameters.Add("ID", c_series.CUSTOMER_ID);
            List <C_CUSTOMER> customers = new T_C_CUSTOMER(sfcdb, DB_TYPE_ENUM.Oracle).GetCustomerList(parameters, sfcdb);

            if (customers.Count == 0)
            {
                throw new MESReturnMessage(MESReturnMessage.GetMESReturnMessage("MES00000045", new string[] { "CUSTOMER" }));
            }
            c_customer = customers[0];
            MESStationSession custSession = Station.StationSession.Find(t => t.MESDataType == Paras[2].SESSION_TYPE && t.SessionKey == Paras[2].SESSION_KEY);

            if (custSession == null)
            {
                custSession = new MESStationSession()
                {
                    MESDataType = Paras[2].SESSION_TYPE, SessionKey = Paras[2].SESSION_KEY
                };
                Station.StationSession.Add(custSession);
            }
            custSession.Value = c_customer;

            Station.AddMessage("MES00000029", new string[] { "CUSTOMER", c_customer.CUSTOMER_NAME }, StationMessageState.Pass);
        }
Ejemplo n.º 3
0
        public void DeteleCustomer(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            string strbu = BU;

            Newtonsoft.Json.Linq.JArray idArray = (Newtonsoft.Json.Linq.JArray)Data["CUSTOMER_ID"];
            OleExec        oleDB       = null;
            T_C_CUSTOMER   customer    = null;
            Row_C_CUSTOMER customerRow = null;

            if (idArray.Count == 0)
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara.Add("CUSTOMER ID");
                StationReturn.Data = "";
                return;
            }
            try
            {
                oleDB    = this.DBPools["SFCDB"].Borrow();
                customer = new T_C_CUSTOMER(oleDB, DBTYPE);
                oleDB.ThrowSqlExeception = true;
                oleDB.BeginTrain();
                for (int i = 0; i < idArray.Count; i++)
                {
                    customerRow = (Row_C_CUSTOMER)customer.GetObjByID(idArray[i].ToString(), oleDB, DBTYPE);
                    oleDB.ExecSQL(customerRow.GetDeleteString(DBTYPE));
                }
                oleDB.CommitTrain();
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000004";
                StationReturn.Data        = "";
                this.DBPools["SFCDB"].Return(oleDB);
            }
            catch (Exception exception)
            {
                oleDB.RollbackTrain();
                this.DBPools["SFCDB"].Return(oleDB);
                throw exception;
            }
        }
Ejemplo n.º 4
0
        public void QueryCustomer(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            string       strbu                = BU;
            string       customer_name        = Data["CUSTOMER_NAME"].ToString().Trim();
            OleExec      sfcdb                = null;
            T_C_CUSTOMER customer             = null;
            Dictionary <string, string> paras = new Dictionary <string, string>();

            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                paras.Add("BU", strbu);
                if (!string.IsNullOrEmpty(customer_name))
                {
                    paras.Add("CUSTOMER_NAME", customer_name);
                }
                customer = new T_C_CUSTOMER(sfcdb, DBTYPE);
                List <C_CUSTOMER> costomerList = customer.GetCustomerList(paras, sfcdb);
                if (costomerList.Count > 0)
                {
                    StationReturn.Status      = StationReturnStatusValue.Pass;
                    StationReturn.MessageCode = "MES00000033";
                    StationReturn.Data        = costomerList;
                }
                else
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000034";
                    StationReturn.Data        = "";
                }
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception exception)
            {
                this.DBPools["SFCDB"].Return(sfcdb);
                throw exception;
            }
        }
Ejemplo n.º 5
0
        public void UpdateCustomer(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            string         strbu             = BU;
            string         id                = Data["CUSTOMER_ID"].ToString().Trim();
            string         new_customer_name = Data["NEW_CUSTOMER_NAME"].ToString().Trim();
            string         description       = Data["DESCRIPTION"].ToString().Trim();
            OleExec        oleDB             = null;
            T_C_CUSTOMER   customer          = null;
            Row_C_CUSTOMER customerRow       = null;

            if (string.IsNullOrEmpty(id))
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara.Add("CUSTOMER ID");
                StationReturn.Data = "";
                return;
            }
            if (string.IsNullOrEmpty(description))
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara.Add("DESCRIPTION");
                StationReturn.Data = "";
                return;
            }
            try
            {
                oleDB       = this.DBPools["SFCDB"].Borrow();
                customer    = new T_C_CUSTOMER(oleDB, DBTYPE);
                customerRow = (Row_C_CUSTOMER)customer.NewRow();
                if (!customer.CustomerIsExist(oleDB, id))
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000007";
                    StationReturn.Data        = "";
                }
                else if (!string.IsNullOrEmpty(new_customer_name) && customer.CustomerIsExist(oleDB, strbu, new_customer_name))
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000008";
                    StationReturn.MessagePara.Add(new_customer_name);
                    StationReturn.Data = "";
                }
                else
                {
                    customerRow = (Row_C_CUSTOMER)customer.GetObjByID(id, oleDB, DBTYPE);
                    if (!string.IsNullOrEmpty(new_customer_name))
                    {
                        customerRow.CUSTOMER_NAME = new_customer_name;
                    }
                    if (!string.IsNullOrEmpty(description))
                    {
                        customerRow.DESCRIPTION = description;
                    }
                    oleDB.ThrowSqlExeception = true;
                    oleDB.ExecSQL(customerRow.GetUpdateString(DBTYPE));
                    StationReturn.Status      = StationReturnStatusValue.Pass;
                    StationReturn.MessageCode = "MES00000003";
                    StationReturn.Data        = "";
                }
                this.DBPools["SFCDB"].Return(oleDB);
            }
            catch (Exception exception)
            {
                this.DBPools["SFCDB"].Return(oleDB);
                throw exception;
            }
        }
Ejemplo n.º 6
0
        public void UpdateSeries(JObject requestValue, JToken Data, MESStationReturn StationReturn)
        {
            if (Data == null)
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara = new List <Object>()
                {
                    "Series"
                };
                StationReturn.Data = null;
                return;
            }
            string serieid = Data["ID"].ToString();

            if (string.IsNullOrEmpty(serieid))
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara = new List <Object>()
                {
                    "SeriesID"
                };
                StationReturn.Data = null;
                return;
            }
            OleExec      sfcdb      = null;
            Row_C_SERIES c_series   = null;
            string       sql        = null;
            string       seriesName = Data["SERIES_NAME"].ToString();

            try
            {
                sfcdb    = DBPools["SFCDB"].Borrow();
                c_series = (Row_C_SERIES) new T_C_SERIES(sfcdb, DB_TYPE_ENUM.Oracle).GetObjByID(serieid, sfcdb);
                if (c_series == null)
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000007";
                    StationReturn.MessagePara = new List <Object>()
                    {
                        "Series"
                    };
                    StationReturn.Data = null;
                    return;
                }

                string CustomerID = new T_C_CUSTOMER(sfcdb, DB_TYPE_ENUM.Oracle).GetCustomerID(sfcdb, BU, Data["CUSTOMER_NAME"].ToString());
                if (string.IsNullOrEmpty(CustomerID))
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000006";
                    StationReturn.MessagePara = new List <Object>()
                    {
                        "Customer"
                    };
                    StationReturn.Data = Data["CUSTOMER_Name"].ToString();
                    return;
                }

                c_series.ID          = serieid;
                c_series.CUSTOMER_ID = CustomerID;
                c_series.SERIES_NAME = seriesName;
                c_series.DESCRIPTION = Data["DESCRIPTION"].ToString();
                c_series.EDIT_EMP    = this.LoginUser.EMP_NO;
                c_series.EDIT_TIME   = this.GetDBDateTime();
                sql = c_series.GetUpdateString(DB_TYPE_ENUM.Oracle);

                sfcdb.ExecuteNonQuery(sql, CommandType.Text);
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000003";
                StationReturn.Data        = c_series.GetDataObject();

                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
            }
            catch (Exception ex)
            {
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
                throw ex;
            }
        }
Ejemplo n.º 7
0
        public void AddNewSeries(JObject requestValue, JToken Data, MESStationReturn StationReturn)
        {
            //CUSTOMER_ID,SERIES_NAME,DESCRIPTION
            if (Data == null || string.IsNullOrEmpty(Data["SERIES_NAME"].ToString()))
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara = new List <Object>()
                {
                    "Series"
                };
                StationReturn.Data = null;
                return;
            }
            OleExec      sfcdb    = null;
            Row_C_SERIES c_series = null;

            OleDbParameter[] paras        = null;
            string           sql          = null;
            string           customerName = Data["CUSTOMER_NAME"].ToString();
            string           seriesName   = Data["SERIES_NAME"].ToString();

            try
            {
                sfcdb    = DBPools["SFCDB"].Borrow();
                c_series = (Row_C_SERIES) new T_C_SERIES(sfcdb, DB_TYPE_ENUM.Oracle).NewRow();
                //c_series.ID = GetNextId(sfcdb);//GetNewId
                c_series.ID = new T_C_SERIES(sfcdb, DB_TYPE_ENUM.Oracle).GetNewID(this.BU, sfcdb);

                string CustomerID = new T_C_CUSTOMER(sfcdb, DB_TYPE_ENUM.Oracle).GetCustomerID(sfcdb, BU, customerName);
                if (string.IsNullOrEmpty(CustomerID))
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000006";
                    StationReturn.MessagePara = new List <Object>()
                    {
                        "Customer"
                    };
                    StationReturn.Data = Data["CUSTOMER_Name"].ToString();
                    return;
                }
                if (new T_C_SERIES(sfcdb, DB_TYPE_ENUM.Oracle).isExist(sfcdb, seriesName, CustomerID))
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000008";
                    StationReturn.MessagePara = new List <Object>()
                    {
                        "SERIES_NAME"
                    };
                    StationReturn.Data = seriesName;
                    return;
                }
                c_series.CUSTOMER_ID = CustomerID;
                c_series.SERIES_NAME = seriesName;
                c_series.DESCRIPTION = Data["DESCRIPTION"].ToString();
                c_series.EDIT_EMP    = this.LoginUser.EMP_NO;
                c_series.EDIT_TIME   = this.GetDBDateTime();
                sql = c_series.GetInsertString(DB_TYPE_ENUM.Oracle);

                sfcdb.ExecuteNonQuery(sql, CommandType.Text, paras);

                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000002";
                StationReturn.Data        = null;
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
            }
            catch (Exception ex)
            {
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
                throw ex;
            }
        }