Example #1
0
        /// <summary>
        /// 根據機種返回路由描述信息
        /// </summary>
        /// <param name="requestValue"></param>
        /// <param name="Data"></param>
        /// <param name="StationReturn"></param>
        public void GetRouteDesc(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec   sfcdb     = null;
            string    RouteName = Data["ROUTE_NAME"].ToString();
            DataTable dt        = new DataTable();

            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                T_C_ROUTE table = new T_C_ROUTE(sfcdb, DBType);
                dt = table.GetByRouteName(RouteName, sfcdb);
                ConstructReturnValue(StationReturn, dt);
            }
            catch (Exception e)
            {
                ConstructReturnValue(StationReturn, e);
            }
            finally
            {
                this.DBPools["SFCDB"].Return(sfcdb);
            }
        }
        public void AddSKuRouteMapping(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            T_R_SKU_ROUTE table         = null;
            R_SKU_ROUTE   mapping       = null;
            OleExec       sfcdb         = null;
            string        result        = string.Empty;
            string        MappingObject = string.Empty;

            //MappingObject = @"{
            //    'DEFAULT_FLAG': 'Y',
            //    'SKU': {
            //        'ID': '111',
            //        'SKUNO': '222',
            //        'VERSION':'333'
            //    },
            //    'ROUTE': {
            //        'ID':'HWD00000000000000000000000000001X',
            //        'ROUTE_NAME':'555'
            //    }
            //}";

            try
            {
                if (Data["MappingObject"] != null && !string.IsNullOrEmpty(Data["MappingObject"].ToString()))
                {
                    sfcdb         = this.DBPools["SFCDB"].Borrow();
                    table         = new T_R_SKU_ROUTE(sfcdb, DBTYPE);
                    MappingObject = Data["MappingObject"].ToString();
                    mapping       = (R_SKU_ROUTE)JsonConvert.Deserialize(MappingObject, typeof(R_SKU_ROUTE));
                    if (mapping.ROUTE_ID != null)
                    {
                        T_C_ROUTE ROUTE   = new T_C_ROUTE(sfcdb, DBTYPE);
                        C_ROUTE   C_ROUTE = ROUTE.GetByRouteName(mapping.ROUTE_ID, sfcdb);
                        mapping.ROUTE_ID  = C_ROUTE.ID;
                        mapping.EDIT_EMP  = LoginUser.EMP_NO;
                        mapping.EDIT_TIME = GetDBDateTime();
                        result            = table.AddMapping(mapping, BU, sfcdb);
                        if (Int32.Parse(result) > 0)
                        {
                            StationReturn.Status      = StationReturnStatusValue.Pass;
                            StationReturn.MessageCode = "MES00000035";
                            StationReturn.MessagePara.Add(result);
                            StationReturn.Data = result;
                            //throw
                        }
                        else
                        {
                            StationReturn.Status      = StationReturnStatusValue.Pass;
                            StationReturn.MessageCode = "MES00000036";
                            StationReturn.Data        = result;
                        }
                        if (sfcdb != null)
                        {
                            this.DBPools["SFCDB"].Return(sfcdb);
                        }
                    }
                    else
                    {
                        StationReturn.Status      = StationReturnStatusValue.Fail;
                        StationReturn.MessageCode = "MES00000204";
                        StationReturn.Data        = result;
                    }
                }
            }
            catch (Exception e)
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000037";
                StationReturn.MessagePara.Add(e.Message);
                StationReturn.Data = e.Message;


                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
                //throw e;
            }
        }
Example #3
0
        private void getByIdOrRouteName(string parametName, string parametValue, OleExec sfcdb, MESDataObject.DB_TYPE_ENUM dbtype)
        {
            try
            {
                T_C_ROUTE             TC_ROUTE        = new T_C_ROUTE(sfcdb, dbtype);
                T_C_ROUTE_DETAIL      TC_ROUTE_DETAIL = new T_C_ROUTE_DETAIL(sfcdb, dbtype);
                C_ROUTE               getRoute        = new C_ROUTE();
                List <C_ROUTE_DETAIL> getRouteDetail  = new List <C_ROUTE_DETAIL>();
                // List<RouteDetail> RouteDetailList = new List<RouteDetail>();
                //T_C_ROUTE_DETAIL_DIRECTLINK TC_ROUTE_DETAIL_DIRECTLINK = new T_C_ROUTE_DETAIL_DIRECTLINK(sfcdb, dbtype);
                //T_C_ROUTE_DETAIL_RETURN TC_ROUTE_DETAIL_RETURN = new T_C_ROUTE_DETAIL_RETURN(sfcdb, dbtype);
                //List<C_ROUTE_DETAIL_RETURN> getDetailReturn = new List<C_ROUTE_DETAIL_RETURN>();
                //List<C_ROUTE_DETAIL_DIRECTLINK> getDetailDirectLink = new List<C_ROUTE_DETAIL_DIRECTLINK>();

                if (parametName.Trim() == "ID")
                {
                    getRoute = TC_ROUTE.GetById(parametValue.Trim(), sfcdb);
                }
                else if (parametName.Trim() == "ROUTENAME")
                {
                    getRoute = TC_ROUTE.GetByRouteName(parametValue.Trim(), sfcdb);
                }
                else
                {
                    throw new Exception(MESReturnMessage.GetMESReturnMessage("MES00000007", new string[] { "getByIdOrRouteName:" + parametName }));
                }
                if (getRoute != null)
                {
                    this._ID            = getRoute.ID;
                    this._ROUTE_NAME    = getRoute.ROUTE_NAME;
                    this._DEFAULT_SKUNO = getRoute.DEFAULT_SKUNO;
                    this._ROUTE_TYPE    = getRoute.ROUTE_TYPE;
                    getRouteDetail      = TC_ROUTE_DETAIL.GetByRouteIdOrderBySEQASC(getRoute.ID, sfcdb);
                    if (getRouteDetail != null && getRouteDetail.Count > 0)
                    {
                        this._DETAIL = new List <RouteDetail>();
                        for (int i = 0; i < getRouteDetail.Count; i++)
                        {
                            RouteDetail newRouteDetail = new RouteDetail(getRouteDetail[i].ID, sfcdb, dbtype);
                            #region 寫法一

                            /*
                             * RouteDetail newRouteDetail = new RouteDetail();
                             * newRouteDetail.ID = getRouteDetail[i].ID;
                             * newRouteDetail.SEQ_NO = getRouteDetail[i].SEQ_NO;
                             * newRouteDetail.ROUTE_ID = getRouteDetail[i].ROUTE_ID;
                             * newRouteDetail.STATION_NAME = getRouteDetail[i].STATION_NAME;
                             * newRouteDetail.STATION_TYPE = getRouteDetail[i].STATION_TYPE;
                             * newRouteDetail.RETURN_FLAG = getRouteDetail[i].RETURN_FLAG;
                             * if (getRouteDetail[i].RETURN_FLAG == "Y")
                             * {
                             *   getDetailReturn = TC_ROUTE_DETAIL_RETURN.GetByRoute_DetailId(newRouteDetail.ID, sfcdb);
                             *   if (getDetailReturn != null && getDetailReturn.Count > 0)
                             *   {
                             *       List<C_ROUTE_DETAIL> newReturnList = new List<C_ROUTE_DETAIL>();
                             *       for (int j = 0; j < getDetailReturn.Count; j++)
                             *       {
                             *           newReturnList.Add(TC_ROUTE_DETAIL.GetById(getDetailReturn[j].RETURN_ROUTE_DETAIL_ID, sfcdb));
                             *       }
                             *       newRouteDetail.RETURNLIST = newReturnList;
                             *   }
                             * }
                             * else
                             * {
                             *   newRouteDetail.RETURNLIST = null;
                             * }
                             * getDetailDirectLink = TC_ROUTE_DETAIL_DIRECTLINK.GetByDetailId(newRouteDetail.ID, sfcdb);
                             * if (getDetailDirectLink != null && getDetailDirectLink.Count > 0)
                             * {
                             *   List<C_ROUTE_DETAIL> newDirectLinkList = new List<C_ROUTE_DETAIL>();
                             *   for (int n = 0; n < getDetailDirectLink.Count; n++)
                             *   {
                             *       newDirectLinkList.Add(TC_ROUTE_DETAIL.GetById(getDetailDirectLink[n].DIRECTLINK_ROUTE_DETAIL_ID, sfcdb));
                             *   }
                             *   newRouteDetail.DIRECTLINKLIST = newDirectLinkList;
                             * }
                             * else
                             * {
                             *   newRouteDetail.DIRECTLINKLIST = null;
                             * }
                             * if (this.DETAIL == null)
                             * {
                             *   this.DETAIL = new List<RouteDetail>();
                             * }*/
                            #endregion 寫法一 end
                            this._DETAIL.Add(newRouteDetail);
                        }
                    }
                    else
                    {
                        this._DETAIL = null;
                    }
                }
                else
                {
                    this._ID            = "";
                    this._ROUTE_NAME    = "";
                    this._DEFAULT_SKUNO = "";
                    this._ROUTE_TYPE    = "";
                    this._DETAIL        = null;
                    throw new Exception(MESReturnMessage.GetMESReturnMessage("MES00000007", new string[] { "Route_" + parametName + ":" + parametValue }));
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }