Example #1
0
        /// <summary>
        /// 刪除角色ID信息刪除C_ROLE表,C_ROLE_PRIVILEGE ,C_USER_ROLE
        /// </summary>
        public void DeleteRole(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec            sfcdb     = null;
            string             DeleteSql = "";
            string             strid     = "";
            T_C_ROLE           GetRoleInformation;
            T_C_ROLE_PRIVILEGE GetRolePrivilegeInfo;

            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                sfcdb.BeginTrain();
                GetRoleInformation   = new T_C_ROLE(sfcdb, DBTYPE);
                GetRolePrivilegeInfo = new T_C_ROLE_PRIVILEGE(sfcdb, DBTYPE);
                foreach (string item in Data["ID"])
                {
                    strid = item.Trim('\'').Trim('\"');
                    if (GetRoleInformation.CheckRole(strid, sfcdb))
                    {
                        Row_C_ROLE row = (Row_C_ROLE)GetRoleInformation.GetObjByID(strid, sfcdb);
                        DeleteSql += row.GetDeleteString(DBTYPE) + ";\n";
                        if (!GetRolePrivilegeInfo.CheckRolePrivilege(strid, sfcdb)) //檢查C_ROLE_PRIVILEGE是否有添加角色權限,如果存在就刪除
                        {
                            Row_C_PRIVILEGE PrivilegeRow = (Row_C_PRIVILEGE)GetRolePrivilegeInfo.GetObjByRoleID(strid, sfcdb);
                            DeleteSql += PrivilegeRow.GetDeleteString(DBTYPE) + ";\n";
                        }
                    }
                    else
                    {
                        sfcdb.RollbackTrain();
                        StationReturn.Status  = StationReturnStatusValue.Fail;
                        StationReturn.Message = "該角色已被賦予用戶使用,不能刪除";
                        StationReturn.Data    = "";
                        this.DBPools["SFCDB"].Return(sfcdb);
                        return;
                    }
                }

                DeleteSql = "BEGIN\n" + DeleteSql + "END;";

                sfcdb.ExecSQL(DeleteSql);
                sfcdb.CommitTrain();
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "刪除成功";
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #2
0
        /// <summary>
        /// 刪除用戶信息
        /// </summary>
        public void DeleteInformation(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec  sfcdb     = null;
            string   DeleteSql = "";
            string   strid     = "";
            T_c_user DeleteInformation;

            Newtonsoft.Json.Linq.JArray ID = (Newtonsoft.Json.Linq.JArray)Data["ID"];
            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                sfcdb.BeginTrain();
                DeleteInformation = new T_c_user(sfcdb, DBTYPE);
                for (int i = 0; i < ID.Count; i++)
                {
                    strid = ID[i].ToString();
                    Row_c_user row = (Row_c_user)DeleteInformation.GetObjByID(strid, sfcdb);
                    DeleteSql += row.GetDeleteString(DBTYPE) + ";\n";
                }
                DeleteSql = "begin\n" + DeleteSql + "end;";
                sfcdb.ExecSQL(DeleteSql);
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000004";
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #3
0
        /// <summary>
        /// 根據登錄系統的用戶查詢該用戶下能管理的角色所擁有的權限    EMP_LEVEL=9 會帶出所有角色, EMP_LEVEL=1 只能帶出本部門角色  EMP_LEVEL=0 無權限管理角色
        /// </summary>
        public void SelectRolePrivilegeByUserID(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec                     sfcdb = null;
            T_C_ROLE_PRIVILEGE          RolePrivilege;
            List <c_role_privilegeinfo> RolePrivilegeList;
            //   string USER_ID = Data["USER_ID"].ToString();
            String LEVEL_FLAG = LoginUser.EMP_LEVEL;

            if (LEVEL_FLAG == "0")
            {
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "該用戶無權限管理角色";
                return;
            }
            try
            {
                sfcdb                 = this.DBPools["SFCDB"].Borrow();
                RolePrivilege         = new T_C_ROLE_PRIVILEGE(sfcdb, DBTYPE);
                RolePrivilegeList     = RolePrivilege.QueryRolePrivilegeByUserID(LEVEL_FLAG, this.LoginUser.BU, this.LoginUser.FACTORY, this.LoginUser.DPT_NAME, sfcdb);
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "獲取成功";
                StationReturn.Data    = RolePrivilegeList;
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #4
0
        /// <summary>
        /// 刪除標簽顯示語言數據
        /// </summary>
        /// <param name="requestValue"></param>
        /// <param name="Data"></param>
        /// <param name="StationReturn"></param>
        public void DeletePageLanguage(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec           sfcdb     = null;
            string            DeleteSql = "";
            string            StrID     = "";
            T_C_LANGUAGE_PAGE language;

            //   string[] ID = Newtonsoft.Json.Linq.JArray(Data["ID"].);
            Newtonsoft.Json.Linq.JArray ID = (Newtonsoft.Json.Linq.JArray)Data["ID"];
            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                sfcdb.BeginTrain();
                language = new T_C_LANGUAGE_PAGE(sfcdb, DBTYPE);
                for (int i = 0; i < ID.Count; i++)
                {
                    StrID = ID[i].ToString();
                    Row_C_LANGUAGE_PAGE row = (Row_C_LANGUAGE_PAGE)language.GetObjByID(StrID, sfcdb);
                    DeleteSql = row.GetDeleteString(DBTYPE);
                    sfcdb.ExecSQL(DeleteSql);
                }
                sfcdb.CommitTrain();
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000004";
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #5
0
        public void DeleteCKpCheck(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            string    RWOKPREPLACEIDS = Data["IDS"].ToString().Trim();
            ArrayList DelIds          = new ArrayList(RWOKPREPLACEIDS.Split(','));

            DelIds.Remove("");
            OleExec      oleDB    = null;
            T_C_KP_Check cKpCheck = null;

            try
            {
                oleDB    = this.DBPools["SFCDB"].Borrow();
                cKpCheck = new T_C_KP_Check(oleDB, DBTYPE);
                oleDB.BeginTrain();
                foreach (var VARIABLE in (string[])DelIds.ToArray(typeof(string)))
                {
                    oleDB.ThrowSqlExeception = true;
                    Row_C_KP_Check row = (Row_C_KP_Check)cKpCheck.GetObjByID(VARIABLE, oleDB, DBTYPE);
                    oleDB.ExecSQL(row.GetDeleteString(DBTYPE));
                }
                oleDB.CommitTrain();
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000004";
            }
            catch (Exception e)
            {
                oleDB.RollbackTrain();
                throw e;
            }
            finally
            {
                this.DBPools["SFCDB"].Return(oleDB);
            }
        }
Example #6
0
        public void DeleteLine(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec  sfcdb = null;
            T_C_LINE line;
            C_LINE   checkLine;
            string   deleteid = "";

            Newtonsoft.Json.Linq.JArray ID = (Newtonsoft.Json.Linq.JArray)Data["ID"];
            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                line  = new T_C_LINE(sfcdb, DBTYPE);
                bool isallOK = true;
                sfcdb.BeginTrain();
                for (int i = 0; i < ID.Count; i++)
                {
                    deleteid  = ID[i].ToString();
                    checkLine = line.GetLineById(deleteid, sfcdb);
                    if (checkLine == null)
                    {
                        StationReturn.Status      = StationReturnStatusValue.Fail;
                        StationReturn.MessageCode = "MES00000007";
                        StationReturn.MessagePara.Add("Line Id:" + deleteid);
                        isallOK = false;
                        break;
                    }
                    else
                    {
                        int result = line.deleteById(deleteid, sfcdb);
                        if (result <= 0)
                        {
                            StationReturn.Status      = StationReturnStatusValue.Fail;
                            StationReturn.MessageCode = "MES00000023";
                            StationReturn.MessagePara.Add("Line Id:" + deleteid);
                            isallOK = false;
                            break;
                        }
                    }
                }
                if (isallOK)
                {
                    sfcdb.CommitTrain();
                    StationReturn.Status      = StationReturnStatusValue.Pass;
                    StationReturn.MessageCode = "MES00000001";
                }
                else
                {
                    sfcdb.RollbackTrain();
                }
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
                throw e;
            }
        }
        public void DeleteInputRuleList(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec        sfcdb     = null;
            string         DeleteSql = "";
            string         StrID     = "";
            T_C_INPUT_RULE inputrule;

            string[] ID = Data["ID"].ToString().Split(',');
            try
            {
                sfcdb     = this.DBPools["SFCDB"].Borrow();
                inputrule = new T_C_INPUT_RULE(sfcdb, DBTYPE);
                sfcdb.BeginTrain();
                for (int i = 0; i < ID.Length; i++)
                {
                    StrID = ID[i].ToString();
                    Row_C_INPUT_RULE row = (Row_C_INPUT_RULE)inputrule.GetObjByID(StrID, sfcdb);
                    DeleteSql = row.GetDeleteString(DBTYPE);
                    sfcdb.ExecSQL(DeleteSql);
                }
                sfcdb.CommitTrain();
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000004";
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #8
0
        public void DeleteCStationAcation(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec            sfcdb     = null;
            string             DeleteSql = "";
            string             StrID     = "";
            T_c_station_action stationaction;
            T_R_Station_Action saction;

            Newtonsoft.Json.Linq.JArray ID = (Newtonsoft.Json.Linq.JArray)Data["ID"];
            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                sfcdb.BeginTrain();
                stationaction = new T_c_station_action(sfcdb, DBTYPE);
                saction       = new T_R_Station_Action(sfcdb, DBTYPE);
                for (int i = 0; i < ID.Count; i++)
                {
                    StrID = ID[i].ToString();

                    if (saction.CheckExistByCSActionID(StrID, sfcdb))
                    {
                        Row_c_station_action row = (Row_c_station_action)stationaction.GetObjByID(StrID, sfcdb);
                        DeleteSql = row.GetDeleteString(DBTYPE);
                        sfcdb.ExecSQL(DeleteSql);
                    }
                    else
                    {
                        StationReturn.Status      = StationReturnStatusValue.Fail;
                        StationReturn.MessageCode = "MES00000113";
                        sfcdb.RollbackTrain();
                        this.DBPools["SFCDB"].Return(sfcdb);
                        return;
                    }
                }
                sfcdb.CommitTrain();
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000004";
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #9
0
        /// <summary>
        /// 依據ID清單Approve稱重工站
        /// </summary>
        /// <param name="requestValue"></param>
        /// <param name="Data"></param>
        /// <param name="StationReturn"></param>
        public void ApproveWTByID(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec         sfcdb     = null;
            T_C_WT_CONFIG   TCWT      = null;
            Row_C_WT_CONFIG RCWT      = null;
            string          sql       = "";
            string          strReturn = "";

            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                sfcdb.BeginTrain();
                TCWT = new T_C_WT_CONFIG(sfcdb, this.DBTYPE);
                RCWT = (Row_C_WT_CONFIG)TCWT.NewRow();
                foreach (string item in Data["IDList"])
                {
                    string strID = item.Trim('\'').Trim('\"');
                    RCWT              = (Row_C_WT_CONFIG)TCWT.GetObjByID(strID, sfcdb);
                    RCWT.APPROVE_EMP  = (string)Data["LoginUserEmp"];
                    RCWT.APPROVE_TIME = GetDBDateTime();
                    sql += RCWT.GetUpdateString(this.DBTYPE) + ";\n";
                }
                strReturn = sfcdb.ExecSQL("Begin\n" + sql + "End;");
                WriteIntoMESLog(sfcdb, BU, "WTConfig", "MESStation.Config.WTConfig", "ApproveWT", "簽核稱重記錄", sql.Substring(0, sql.Length - 1 > 900 ? 900 : sql.Length - 1), LoginUser.EMP_NO);
                //如果數據更新成功,則返回數據更新的記錄數,如果為Begn...END返回為-1,可被 Int32.Parse 方法轉換成 int
                if (Int32.Parse(strReturn) > -2)
                {
                    StationReturn.Status  = StationReturnStatusValue.Pass;
                    StationReturn.Message = "Approve成功!";
                }
                else
                {
                    StationReturn.Status  = StationReturnStatusValue.Fail;
                    StationReturn.Message = "Approve 數據更新失敗!";
                    StationReturn.Data    = strReturn;
                }
                sfcdb.CommitTrain();
            }catch (Exception e)
            {
                sfcdb.RollbackTrain();
                StationReturn.Status  = StationReturnStatusValue.Fail;
                StationReturn.Message = "Approve失敗或該記錄已經不存在!";
                StationReturn.Data    = e.Message;
            }
            finally
            {
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
            }
        }
        public void DeleteById(JObject requestValue, JToken Data, MESStationReturn StationReturn)
        {
            string id = Data["ID"].ToString();

            if (string.IsNullOrEmpty(id))
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara = new List <Object>()
                {
                    "Reason Code ID"
                };
                StationReturn.Data = null;
                return;
            }

            OleExec sfcdb = DBPools["SFCDB"].Borrow();

            string[]          ids             = id.Split(',');
            Row_C_REASON_CODE row_reason_code = (Row_C_REASON_CODE) new T_C_REASON_CODE(sfcdb, DB_TYPE_ENUM.Oracle).NewRow();

            try
            {
                string deleteString = null;
                sfcdb.BeginTrain();
                foreach (string deleteID in ids)
                {
                    deleteString = row_reason_code.GetDeleteString(DB_TYPE_ENUM.Oracle, deleteID);
                    sfcdb.ExecuteNonQuery(deleteString, CommandType.Text, null);
                }
                sfcdb.CommitTrain();
            }
            catch (Exception ex)
            {
                sfcdb.RollbackTrain();
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
                throw ex;
            }
            StationReturn.Status      = StationReturnStatusValue.Pass;
            StationReturn.MessageCode = "MES00000004";
            StationReturn.Data        = "";
            if (sfcdb != null)
            {
                this.DBPools["SFCDB"].Return(sfcdb);
            }
        }
Example #11
0
 public void GetBackFlustData()
 {
     SFCDB.BeginTrain();
     try
     {
         C_CONTROL control = t_c_control.GetControlByName("HWD_STOCKIN_TIME", SFCDB);
         if (control.CONTROL_VALUE == "" && string.IsNullOrEmpty(control.CONTROL_VALUE))
         {
             throw new Exception("Get last run time fail ");
         }
         startTime    = Convert.ToDateTime(control.CONTROL_VALUE);
         endTime      = InterfacePublicValues.GetDBDateTime(SFCDB, DB_TYPE_ENUM.Oracle);
         stockInTable = t_r_sn_station_detail.GetStockInQtyByTime(startTime, endTime, SFCDB);
         if (stockInTable != null)
         {
             foreach (DataRow dr in stockInTable.Rows)
             {
                 r_sap_temp              = (Row_R_SAP_TEMP)t_r_sap_temp.NewRow();
                 r_sap_temp.ID           = t_r_sap_temp.GetNewID(BU, SFCDB);
                 r_sap_temp.SKUNO        = dr["skuno"].ToString();
                 r_sap_temp.TYPE         = "011G To 016G";
                 r_sap_temp.QTY          = double.Parse(dr["qty"].ToString());
                 r_sap_temp.FROM_STORAGE = "011G";
                 r_sap_temp.TO_STORAGE   = "016G";
                 r_sap_temp.SAP_FLAG     = "0";
                 r_sap_temp.FAIL_COUNT   = 0;
                 r_sap_temp.EDIT_EMP     = "interface";
                 r_sap_temp.EDIT_TIME    = endTime;
                 SFCDB.ExecSQL(r_sap_temp.GetInsertString(DB_TYPE_ENUM.Oracle));
             }
         }
         Row_C_CONTROL rowControl = (Row_C_CONTROL)t_c_control.GetObjByID(control.ID, SFCDB);
         rowControl.CONTROL_VALUE = endTime.ToString("yyyy/MM/dd HH: mm: ss");
         rowControl.EDIT_EMP      = "intrerface";
         rowControl.EDIT_TIME     = endTime;
         SFCDB.ExecSQL(rowControl.GetUpdateString(DB_TYPE_ENUM.Oracle));
         SFCDB.CommitTrain();
     }
     catch (Exception exception)
     {
         SFCDB.RollbackTrain();
         WriteLog.WriteIntoMESLog(SFCDB, BU, "MESInterface", "MESInterface.HWD.StockInBackFlush", "GetBackFlustData", ip + ";" + exception.Message, "", "interface");
         StockInBackFlush_UI.OutPutMessage("", exception.Message, false);
     }
 }
Example #12
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;
            }
        }
Example #13
0
        public void DeleteWorkClass(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            //string id = Data["CLASS_ID"].ToString().Trim();
            Newtonsoft.Json.Linq.JArray idArray = (Newtonsoft.Json.Linq.JArray)Data["CLASS_ID"];
            OleExec          oleDB     = null;
            T_C_WORK_CLASS   workClass = null;
            Row_C_WORK_CLASS workClassRow;

            if (idArray.Count == 0)
            {
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000006";
                StationReturn.MessagePara.Add("CLASS ID");
                StationReturn.Data = "";
                return;
            }
            try
            {
                oleDB = this.DBPools["SFCDB"].Borrow();
                oleDB.ThrowSqlExeception = true;
                oleDB.BeginTrain();
                workClass = new T_C_WORK_CLASS(oleDB, DBTYPE);
                for (int i = 0; i < idArray.Count; i++)
                {
                    workClassRow = (Row_C_WORK_CLASS)workClass.GetObjByID(idArray[i].ToString(), oleDB, DBTYPE);

                    oleDB.ExecSQL(workClassRow.GetDeleteString(DBTYPE));
                }
                oleDB.CommitTrain();
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "MES00000004";
                StationReturn.Data    = "";
                this.DBPools["SFCDB"].Return(oleDB);
            }
            catch (Exception exception)
            {
                oleDB.RollbackTrain();
                this.DBPools["SFCDB"].Return(oleDB);
                throw exception;
            }
        }
Example #14
0
        /// <summary>
        /// Update Class Time
        /// </summary>
        /// <param name="requestValue"></param>
        /// <param name="Data"></param>
        /// <param name="StationReturn"></param>
        public void UpdateClassTime(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            string           strRet    = "";
            OleExec          sfcdb     = this.DBPools["SFCDB"].Borrow();
            T_C_CLASS_TIME   classTime = new T_C_CLASS_TIME(sfcdb, DB_TYPE_ENUM.Oracle);
            Row_C_CLASS_TIME row       = (Row_C_CLASS_TIME)classTime.NewRow();

            row = (Row_C_CLASS_TIME)classTime.GetObjByID(Data["ID"].ToString().Trim(), sfcdb, DB_TYPE_ENUM.Oracle);
            row.WORK_SECTION = Data["WORK_SECTION"].ToString().Trim();
            row.START_TIME   = Data["START_TIME"].ToString().Trim();
            row.END_TIME     = Data["END_TIME"].ToString().Trim();
            if (Data["DAY_DISTINCT"].ToString().Trim() == ("Shift1"))
            {
                row.WORK_CLASS   = ((int)WORK_CLASS.Shift1).ToString();
                row.DAY_DISTINCT = WORK_CLASS.Shift1.ToString();
            }
            else
            {
                row.WORK_CLASS   = ((int)WORK_CLASS.Shift2).ToString();
                row.DAY_DISTINCT = WORK_CLASS.Shift2.ToString();
            }
            row.EDIT_EMP  = this.LoginUser;
            row.EDIT_TIME = DateTime.Now;
            strRet        = sfcdb.ExecSQL(row.GetUpdateString(DB_TYPE_ENUM.Oracle));
            try
            {
                int rows = int.Parse(strRet);
                sfcdb.CommitTrain();
                StationReturn.Status  = "PASS";
                StationReturn.Message = "OK,Update Class Time OK!";
                StationReturn.data    = rows;
            }
            catch
            {
                sfcdb.RollbackTrain();
                StationReturn.Status  = "FAIL";
                StationReturn.Message = strRet;
                StationReturn.data    = "";
            }
            this.DBPools["SFCDB"].Return(sfcdb);
        }
Example #15
0
 public override void Start()
 {
     IsRuning = synLock.IsLock("TJL5_DownLoadWO", SFCDB, DB_TYPE_ENUM.Oracle, out lockIp);
     if (IsRuning)
     {
         throw new Exception("TJL5 DownLoadWO interface is running on " + lockIp + ",Please try again later");
     }
     try
     {
         synLock.SYNC_Lock(BU, ip, "TJL5_DownLoadWO", "TJL5_DownLoadWO", "interface", SFCDB, DB_TYPE_ENUM.Oracle);
         SFCDB.CommitTrain();
         CallRFC();
     }
     catch (Exception ex)
     {
         SFCDB.RollbackTrain();
         throw new Exception("Start DownLoadWO Fail" + ex.Message);
     }
     synLock.SYNC_UnLock(BU, ip, "TJL5_DownLoadWO", "TJL5_DownLoadWO", "interface", SFCDB, DB_TYPE_ENUM.Oracle);
     SFCDB.CommitTrain();
 }
Example #16
0
        public void DeleteKeyPart(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec       sfcdb = null;
            T_C_KEYPART   ketpart;
            Row_C_KEYPART newketpart;

            string[] ids = Data["ID"].ToString().Trim().Split(',');
            string   SQL = "";

            sfcdb = this.DBPools["SFCDB"].Borrow();
            sfcdb.BeginTrain();
            try
            {
                foreach (string id in ids)
                {
                    ketpart    = new T_C_KEYPART(sfcdb, DBTYPE);
                    newketpart = (Row_C_KEYPART)ketpart.GetObjByID(id, sfcdb);
                    SQL       += newketpart.GetDeleteString(DB_TYPE_ENUM.Oracle) + ";\n";
                }
                sfcdb.ExecSQL("Begin\n" + SQL + "End;");
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "刪除成功!!";
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "刪除失敗!!";
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
                throw e;
            }
        }
Example #17
0
        public override void Start()
        {
            //base.Start();
            IsRuning = synLock.IsLock("HWD_WOToMRBBackFlush", SFCDB, DB_TYPE_ENUM.Oracle, out lockIp);
            if (IsRuning)
            {
                throw new Exception("HWD WOToMRBBackFlush interface is running on " + lockIp + ",Please try again later");
            }

            try
            {
                synLock.SYNC_Lock(BU, ip, "HWD_WOToMRBBackFlush", "HWD_WOToMRBBackFlush", "interface", SFCDB, DB_TYPE_ENUM.Oracle);
                SFCDB.CommitTrain();
                DoMrbBackFlush();
            }
            catch (Exception ex)
            {
                SFCDB.RollbackTrain();
                throw new Exception("Start MrbBackFlush Fail" + ex.Message);
            }
            synLock.SYNC_UnLock(BU, ip, "HWD_WOToMRBBackFlush", "HWD_WOToMRBBackFlush", "interface", SFCDB, DB_TYPE_ENUM.Oracle);
            SFCDB.CommitTrain();
        }
Example #18
0
        public void LoadUserRoleInfo(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec                sfcdb = null;
            T_c_user_role          UserRoleInfo;
            List <c_load_userrole> UserRoleInfoList;
            string EMP_NO = Data["EMP_NO"].ToString();

            try
            {
                sfcdb                 = this.DBPools["SFCDB"].Borrow();
                UserRoleInfo          = new T_c_user_role(sfcdb, DBTYPE);
                UserRoleInfoList      = UserRoleInfo.QueryUserRoleInfo(EMP_NO, this.LoginUser.DPT_NAME, this.LoginUser.BU, this.LoginUser.FACTORY, this.LoginUser.EMP_LEVEL, sfcdb);
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "獲取成功";
                StationReturn.Data    = UserRoleInfoList;
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #19
0
        /// <summary>
        /// 查詢角色權限C_ROLE_PRIVILEGE
        /// </summary>
        public void SelectRolePrivilege(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec            sfcdb = null;
            T_C_ROLE_PRIVILEGE RolePrivilege;
            List <c_role_privilegeinfobyemp> RolePrivilegeList;
            string Role_Id = Data["ROLE_ID"].ToString();

            try
            {
                sfcdb                 = this.DBPools["SFCDB"].Borrow();
                RolePrivilege         = new T_C_ROLE_PRIVILEGE(sfcdb, DBTYPE);
                RolePrivilegeList     = RolePrivilege.QueryRolePrivilege(Role_Id, sfcdb);
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "獲取成功";
                StationReturn.Data    = RolePrivilegeList;
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #20
0
        /// <summary>
        /// 根據傳入角色 除掉登錄人能管理的角色中存在和該角色相同的權限ID
        /// </summary>
        public void CheckTwoRolePrivilegeID(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec            sfcdb = null;
            T_C_ROLE_PRIVILEGE CheckRolePrivilege;
            T_C_ROLE           GetMangeRole;
            List <c_role_privilegeinfobyemp> CheckRolePrivilegeList;
            List <c_role_byempl>             GetMangeRoleList;
            string EDITROLE_ID = Data["EDITROLE_ID"].ToString();

            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                CheckRolePrivilege = new T_C_ROLE_PRIVILEGE(sfcdb, DBTYPE);
                GetMangeRole       = new T_C_ROLE(sfcdb, DBTYPE);
                GetMangeRoleList   = GetMangeRole.ManageRoleByUser(new List <get_c_roleid>(), this.LoginUser.DPT_NAME, this.LoginUser.BU, this.LoginUser.FACTORY, this.LoginUser.EMP_LEVEL, sfcdb);
                if (GetMangeRoleList.Count == 0)
                {
                    StationReturn.Status  = StationReturnStatusValue.Fail;
                    StationReturn.Message = "無角色能管理";
                    this.DBPools["SFCDB"].Return(sfcdb);
                    return;
                }
                CheckRolePrivilegeList    = CheckRolePrivilege.CheckTwoRolePrivilegeID(GetMangeRoleList, EDITROLE_ID, this.LoginUser.EMP_LEVEL, sfcdb);
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000026";
                // StationReturn.Message = "獲取成功";
                StationReturn.Data = CheckRolePrivilegeList;
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #21
0
        /// <summary>
        ///刪除用戶添加角色 DELETE C_USER_ROLE
        /// </summary>
        public void DeleteUserRolePrivilege(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec       sfcdb     = null;
            string        DeleteSql = "";
            T_c_user_role GetUserRole;
            string        EMP_NO = Data["EMP_NO"].ToString();

            //   string[] ROLE_ID = Data["ROLE_ID"].ToString().Split(',');

            try
            {
                sfcdb       = this.DBPools["SFCDB"].Borrow();
                GetUserRole = new T_c_user_role(sfcdb, DBTYPE);
                string USER_ID = GetUserRole.GetUserID(EMP_NO, sfcdb);
                sfcdb.BeginTrain();
                foreach (string item in Data["ROLE_ID"])
                {
                    string          strroleid = item.Trim('\'').Trim('\"');
                    Row_c_user_role row       = (Row_c_user_role)GetUserRole.GetObjByUserIDRoleID(USER_ID, strroleid, sfcdb, this.DBTYPE);
                    DeleteSql += row.GetDeleteString(DBTYPE) + ";\n";
                }
                DeleteSql = "begin\n" + DeleteSql + "end;";
                sfcdb.ExecSQL(DeleteSql);
                sfcdb.CommitTrain();
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "刪除成功";
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #22
0
 public override void Start()
 {
     //判斷當前任務是否正在被執行:SELECT * From R_SYNC_LOCK where Lock_Name='{Section}'
     IsRuning = synLock.IsLock(Section, SFCDB, DB_TYPE_ENUM.Oracle, out lockIp);
     if (IsRuning)
     {
         throw new Exception(Section + " interface is running on " + lockIp + ",Please try again later");
     }
     try
     {
         //TEST();
         //寫一筆正在執行的記錄
         synLock.SYNC_Lock(BU, ip, Section, Section, "interface", SFCDB, DB_TYPE_ENUM.Oracle);
         SFCDB.CommitTrain();
         CallRFC();
     }
     catch (Exception ex)
     {
         SFCDB.RollbackTrain();
         throw new Exception("Start DownLoadWO Fail" + ex.Message);
     }
     synLock.SYNC_UnLock(BU, ip, Section, Section, "interface", SFCDB, DB_TYPE_ENUM.Oracle);
     SFCDB.CommitTrain();
 }
Example #23
0
        /// <summary>
        /// 刪除角色權限
        /// </summary>
        public void DeleteRolePrivilege(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec sfcdb = this.DBPools["SFCDB"].Borrow();
            string  DeleteSql = "", P_code = "";
            string  strid  = "";
            string  MenuID = "";

            T_C_PRIVILEGE   CheckExistMenuID = new T_C_PRIVILEGE(sfcdb, DBTYPE);
            Row_C_PRIVILEGE ChRow            = (Row_C_PRIVILEGE)CheckExistMenuID.NewRow();
            T_C_MENU        tcm  = new T_C_MENU(sfcdb, DBTYPE);
            DataTable       rcm  = new DataTable();
            DataTable       TTcm = new DataTable();
            List <c_role_privilegeinfobyemp> RolePrivilegeList = new List <c_role_privilegeinfobyemp>();
            List <string>        DeletePrivilege = new List <string>();
            List <MENUS>         GetMenuList     = new List <MENUS>();
            T_C_ROLE_PRIVILEGE   tcup            = new T_C_ROLE_PRIVILEGE(sfcdb, DBTYPE);
            Row_C_ROLE_PRIVILEGE rcup            = (Row_C_ROLE_PRIVILEGE)tcup.NewRow();
            T_C_MENU             Tmenu           = new T_C_MENU(sfcdb, DBTYPE);
            string ROLE_ID = Data["ROLE_ID"].ToString();

            try
            {
                //sfcdb.BeginTrain();
                //foreach (string  item in Data["PRIVILEGE_ID"])
                //{
                //    DeletePrivilege.Add(item.Trim('\'').Trim('\"'));
                //}


                foreach (string item in Data["PRIVILEGE_ID"])
                {
                    string PRIVILEGE_ID = item.Trim('\'').Trim('\"');

                    //RolePrivilegeList = tcup.QueryRolePrivilege(ROLE_ID, sfcdb);

                    //ChRow = (Row_C_PRIVILEGE)CheckExistMenuID.getC_PrivilegebyID(PRIVILEGE_ID, sfcdb);
                    //if (ChRow.MENU_ID != null && ChRow.MENU_ID != "N/A")
                    //{
                    //    if (!Tmenu.Check_PARENT(ChRow.MENU_ID,sfcdb))  //CHECK刪除的權限是否存在下級權限
                    //    {
                    //        GetMenuList = Tmenu.GetMenuNextID("PARENT_CODE", ChRow.MENU_ID, sfcdb);
                    //        if (GetMenuList!=null)
                    //        {
                    //            for (int i = 0; i < GetMenuList.Count-1; i++)
                    //            {
                    //                ChRow = (Row_C_PRIVILEGE)CheckExistMenuID.getC_PrivilegebyMenuID(GetMenuList[i].ID.ToString(), sfcdb);
                    //                c_role_privilegeinfobyemp h = RolePrivilegeList.Find(s=>s.PRIVILEGE_ID== ChRow.ID);
                    //                if (h != null)
                    //                {
                    //                    string u = DeletePrivilege.Find(t => t == ChRow.ID);
                    //                    if (u == null || u == "")
                    //                    {
                    //                        StationReturn.Status = StationReturnStatusValue.Fail;
                    //                        StationReturn.Message = "要刪除的權限存在下級權限,無法越級刪除";
                    //                        StationReturn.Data = ChRow.PRIVILEGE_NAME;
                    //                        this.DBPools["SFCDB"].Return(sfcdb);
                    //                        return;
                    //                    }
                    //                }

                    //            }
                    //        }

                    //    }

                    //        rcup = tcup.GetC_Role_Privilege_ID(ROLE_ID, PRIVILEGE_ID, sfcdb);
                    //        strid = rcup.ID.ToString();
                    //        rcup = (Row_C_ROLE_PRIVILEGE)tcup.GetObjByID(strid, sfcdb);
                    //        DeleteSql += rcup.GetDeleteString(DBTYPE) + ";\n";

                    //}
                    //else
                    //{
                    //    rcup = tcup.GetC_Role_Privilege_ID(ROLE_ID, PRIVILEGE_ID, sfcdb);
                    //    strid = rcup.ID.ToString();
                    //    rcup = (Row_C_ROLE_PRIVILEGE)tcup.GetObjByID(strid, sfcdb);
                    //    DeleteSql += rcup.GetDeleteString(DBTYPE) + ";\n";
                    //}


                    // by SDL  CHECK要刪除的權限要是存在下級菜單則不允許刪除
                    rcup       = tcup.GetC_Role_Privilege_ID(ROLE_ID, PRIVILEGE_ID, sfcdb);
                    strid      = rcup.ID.ToString();
                    rcup       = (Row_C_ROLE_PRIVILEGE)tcup.GetObjByID(strid, sfcdb);
                    DeleteSql += rcup.GetDeleteString(DBTYPE) + ";\n";

                    ChRow = (Row_C_PRIVILEGE)CheckExistMenuID.getC_PrivilegebyID(PRIVILEGE_ID, sfcdb);
                    if (ChRow.MENU_ID != null || ChRow.MENU_ID != "N/A")
                    {
                        rcm = tcm.getC_MenubyPARENT_CODE(ChRow.MENU_ID, sfcdb);

                        if (rcm.Rows.Count != 0)
                        {
                            for (int i = 0; i < rcm.Rows.Count - 1; i++)
                            {
                                MenuID = rcm.Rows[i]["ID"].ToString();

                                ChRow = (Row_C_PRIVILEGE)CheckExistMenuID.getC_PrivilegebyMenuID(MenuID, sfcdb);
                                rcup  = (Row_C_ROLE_PRIVILEGE)tcup.GetC_Role_Privilege_ID(ROLE_ID, ChRow.ID, sfcdb);
                                if (P_code.IndexOf(MenuID) < 0 && rcup != null)
                                {
                                    rcup       = (Row_C_ROLE_PRIVILEGE)tcup.GetObjByID(rcup.ID, sfcdb);
                                    DeleteSql += rcup.GetDeleteString(DBTYPE) + ";\n";
                                    P_code    += MenuID + ",";
                                }
                                TTcm = tcm.getC_MenubyPARENT_CODE(MenuID, sfcdb);

                                if (TTcm.Rows.Count != 0)
                                {
                                    for (int j = 0; j < TTcm.Rows.Count - 1; j++)
                                    {
                                        MenuID = TTcm.Rows[j]["ID"].ToString();
                                        ChRow  = (Row_C_PRIVILEGE)CheckExistMenuID.getC_PrivilegebyMenuID(MenuID, sfcdb);
                                        if (ChRow != null)
                                        {
                                            rcup = (Row_C_ROLE_PRIVILEGE)tcup.GetC_Role_Privilege_ID(ROLE_ID, ChRow.ID, sfcdb);
                                            if (P_code.IndexOf(MenuID) < 0 && rcup != null)
                                            {
                                                rcup       = (Row_C_ROLE_PRIVILEGE)tcup.GetObjByID(rcup.ID, sfcdb);
                                                DeleteSql += rcup.GetDeleteString(DBTYPE) + ";\n";
                                                P_code    += MenuID + ",";
                                            }
                                        }

                                        DataTable HHcm = tcm.getC_MenubyPARENT_CODE(MenuID, sfcdb);

                                        if (HHcm.Rows.Count != 0)
                                        {
                                            for (int z = 0; z < HHcm.Rows.Count - 1; z++)
                                            {
                                                MenuID = HHcm.Rows[z]["ID"].ToString();
                                                ChRow  = (Row_C_PRIVILEGE)CheckExistMenuID.getC_PrivilegebyMenuID(MenuID, sfcdb);
                                                if (ChRow != null)
                                                {
                                                    rcup = (Row_C_ROLE_PRIVILEGE)tcup.GetC_Role_Privilege_ID(ROLE_ID, ChRow.ID, sfcdb);
                                                    if (P_code.IndexOf(MenuID) < 0 && rcup != null)
                                                    {
                                                        rcup       = (Row_C_ROLE_PRIVILEGE)tcup.GetObjByID(rcup.ID, sfcdb);
                                                        DeleteSql += rcup.GetDeleteString(DBTYPE) + ";\n";
                                                        P_code    += MenuID + ",";
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

                DeleteSql = "begin\n" + DeleteSql + "end;";
                sfcdb.ExecSQL(DeleteSql);
                sfcdb.CommitTrain();
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "刪除成功";
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #24
0
        public void AddLink(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            System.Web.Script.Serialization.JavaScriptSerializer JsonConvert = new System.Web.Script.Serialization.JavaScriptSerializer();
            OleExec       sfcdb = this.DBPools["SFCDB"].Borrow();
            T_C_KEYPART   ketpart;
            Row_C_KEYPART newketpart;
            string        KeyPartId   = Data["KEYPART_ID"].ToString().Trim();
            string        StationName = Data["STATION_NAME"].ToString().Trim();
            string        Skuno       = Data["SKUNO"].ToString().Trim();
            string        SkunoVer    = Data["SKUNO_VER"].ToString().Trim();
            //string SEQ = Data["SEQ"].ToString().Trim();
            string SQL = "";

            sfcdb.BeginTrain();
            try
            {
                if (KeyPartId.Length <= 0)
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000006";
                    StationReturn.MessagePara.Add("KEYPART_ID");
                    return;
                }


                if (StationName.Length <= 0)
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000006";
                    StationReturn.MessagePara.Add("STAION_NAME");
                    return;
                }

                if (Skuno.Length <= 0)
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000006";
                    StationReturn.MessagePara.Add("SKUNO");
                    return;
                }
                if (SkunoVer.Length <= 0)
                {
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000006";
                    StationReturn.MessagePara.Add("SKUNO_VER");
                    return;
                }

                KEYPARTLIST list = new KEYPARTLIST();
                foreach (Newtonsoft.Json.Linq.JToken s in Data["KEYPARTLIST"])
                {
                    int i = 10;
                    list                     = (KEYPARTLIST)JsonConvert.Deserialize(s.ToString(), typeof(KEYPARTLIST));
                    ketpart                  = new T_C_KEYPART(sfcdb, DBTYPE);
                    newketpart               = (Row_C_KEYPART)ketpart.NewRow();
                    newketpart.ID            = ketpart.GetNewID(BU, sfcdb);
                    newketpart.KEYPART_ID    = KeyPartId;
                    newketpart.SEQ_NO        = list.SEQ;
                    newketpart.PART_NO       = list.PART_NO;
                    newketpart.PART_NO_VER   = list.PART_NO_VER;
                    newketpart.QTY           = Convert.ToDouble(list.QTY);
                    newketpart.STATION_NAME  = StationName;
                    newketpart.CATEGORY      = list.CATEGORY;
                    newketpart.CATEGORY_NAME = list.CATEGORY_NAME;
                    newketpart.SKUNO         = Skuno;
                    newketpart.SKUNO_VER     = SkunoVer;
                    newketpart.EDIT_EMP      = LoginUser.EMP_NO;
                    newketpart.EDIT_TIME     = GetDBDateTime();
                    i   += 10;
                    SQL += newketpart.GetInsertString(DB_TYPE_ENUM.Oracle) + ";\n";
                }

                sfcdb.ExecSQL("Begin\n" + SQL + "End;");
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "添加成功!!";
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "添加失敗!!";
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
                throw e;
            }
        }
Example #25
0
        /// <summary>
        /// Deploy New Class Time Row
        /// </summary>
        /// <param name="requestValue"></param>
        /// <param name="Data"></param>
        /// <param name="StationReturn"></param>
        public void DeployNewClassTime(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            MESException exception = new MESException("");

            string[] msg = new string[1];
            if (string.IsNullOrEmpty(Data["WORK_SECTION"].ToString()))
            {
                //msg[0] = "Please Input Work Section";
                //throw exception.GetMESException("", "", msg);
                throw new Exception("Please Input Work Section");
            }
            if (string.IsNullOrEmpty(Data["START_TIME"].ToString()))
            {
                throw new Exception("Please Input Start Time");
            }
            if (string.IsNullOrEmpty(Data["END_TIME"].ToString()))
            {
                throw new Exception("Please Input End Time");
            }
            if (string.IsNullOrEmpty(Data["DAY_DISTINCT"].ToString()))
            {
                throw new Exception("Please Input Day Distinct");
            }
            string           strRet    = "";
            OleExec          sfcdb     = this.DBPools["SFCDB"].Borrow();
            T_C_CLASS_TIME   classTime = new T_C_CLASS_TIME(sfcdb, DB_TYPE_ENUM.Oracle);
            Row_C_CLASS_TIME r         = (Row_C_CLASS_TIME)classTime.NewRow();

            //r.ID = classTime.GetNewID(this.BU,sfcdb,DB_TYPE_ENUM.Oracle);
            r.ID           = classTime.GetNewID("HWD", sfcdb, DB_TYPE_ENUM.Oracle);
            r.SEQ_NO       = classTime.GetTotalRows(sfcdb) + 1;
            r.WORK_SECTION = Data["WORK_SECTION"].ToString().Trim();
            r.START_TIME   = Data["START_TIME"].ToString().Trim();
            r.END_TIME     = Data["END_TIME"].ToString().Trim();
            if (Data["DAY_DISTINCT"].ToString().Trim() == "Shift1")
            {
                r.WORK_CLASS   = ((int)WORK_CLASS.Shift1).ToString();
                r.DAY_DISTINCT = WORK_CLASS.Shift1.ToString();
            }
            else
            {
                r.WORK_CLASS   = ((int)WORK_CLASS.Shift2).ToString();
                r.DAY_DISTINCT = WORK_CLASS.Shift2.ToString();
            }
            r.EDIT_EMP  = this.LoginUser;
            r.EDIT_TIME = DateTime.Now;
            strRet      = sfcdb.ExecSQL(r.GetInsertString(DB_TYPE_ENUM.Oracle));
            try
            {
                int rows = int.Parse(strRet);
                sfcdb.CommitTrain();
                StationReturn.Status  = "PASS";
                StationReturn.Message = "OK,Deploy New Class Time OK!";
                StationReturn.data    = rows;
            }
            catch
            {
                sfcdb.RollbackTrain();
                StationReturn.Status  = "FAIL";
                StationReturn.Message = strRet;
                StationReturn.data    = "";
            }
            this.DBPools["SFCDB"].Return(sfcdb);
        }
Example #26
0
        /// <summary>
        ///給用戶添加角色 INSERT C_USER_ROLE,并更新C_USER LEVEL_FLAG欄位的值 0表示普通用戶,1表示普通管理員,9 IT所有
        /// </summary>
        public void AddUserRolePrivilege(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec       sfcdb = null;
            string        InsertSql = "", UpdateSql = "";
            T_c_user_role UserRoler;
            T_c_user      EmpLevel;
            string        EMP_NO     = Data["EMP_NO"].ToString();
            string        LEVEL_FLAG = Data["LEVEL_FLAG"].ToString();

            //    string[] ROLE_ID = Data["ROLE_ID"].ToString().Trim('[').Trim(']').Split(',');
            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                sfcdb.BeginTrain();
                UserRoler = new T_c_user_role(sfcdb, DBTYPE);
                EmpLevel  = new T_c_user(sfcdb, DBTYPE);
                string USER_ID = UserRoler.GetUserID(EMP_NO, sfcdb);

                foreach (string item in Data["ROLE_ID"])
                {
                    string strroleid = item.Trim('\'').Trim('\"');
                    if (UserRoler.CheckUserRole(USER_ID, strroleid, sfcdb))
                    {
                        Row_c_user_role row = (Row_c_user_role)UserRoler.NewRow();
                        row.ID          = UserRoler.GetNewID(BU, sfcdb);
                        row.USER_ID     = USER_ID;
                        row.ROLE_ID     = strroleid;
                        row.EDIT_EMP    = LoginUser.EMP_NO;
                        row.SYSTEM_NAME = SystemName;
                        row.EDIT_TIME   = GetDBDateTime();
                        InsertSql      += row.GetInsertString(DBTYPE) + ";\n";
                    }
                    else
                    {
                        sfcdb.RollbackTrain();
                        StationReturn.Status  = StationReturnStatusValue.Fail;
                        StationReturn.Message = "該用戶已擁有該角色";
                        StationReturn.Data    = "";
                        this.DBPools["SFCDB"].Return(sfcdb);
                        return;
                    }
                }

                InsertSql = "begin\n" + InsertSql + "end;";
                sfcdb.ExecSQL(InsertSql);

                if (EmpLevel.CheckEmpLevel(USER_ID, LEVEL_FLAG, sfcdb))
                {
                    Row_c_user RowLevel = (Row_c_user)EmpLevel.GetObjByID(USER_ID, sfcdb);
                    RowLevel.ID        = USER_ID;
                    RowLevel.EMP_LEVEL = LEVEL_FLAG;
                    RowLevel.EDIT_EMP  = LoginUser.EMP_NO;
                    RowLevel.EDIT_TIME = GetDBDateTime();

                    UpdateSql = RowLevel.GetUpdateString(DBTYPE);
                    sfcdb.ExecSQL(UpdateSql);
                }

                sfcdb.CommitTrain();
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "添加成功";
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #27
0
        /// <summary>
        ///添加角色所擁有的權限ID INSERT C_ROLE_PRIVILEGE
        /// </summary>
        public void AddRolePrivilege(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            OleExec            sfcdb     = null;
            string             InsertSql = "";
            string             P_code    = "";
            T_C_ROLE_PRIVILEGE Roler;
            string             ROLE_ID = Data["ROLE_ID"].ToString();

            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                sfcdb.BeginTrain();
                Roler = new T_C_ROLE_PRIVILEGE(sfcdb, DBTYPE);
                T_C_PRIVILEGE        CheckExistMenuID = new T_C_PRIVILEGE(sfcdb, DBTYPE);
                T_C_MENU             tcm  = new T_C_MENU(sfcdb, DBTYPE);
                Row_C_MENU           rcm  = (Row_C_MENU)tcm.NewRow();
                T_C_ROLE_PRIVILEGE   tcup = new T_C_ROLE_PRIVILEGE(sfcdb, DBTYPE);
                Row_C_ROLE_PRIVILEGE rcup = (Row_C_ROLE_PRIVILEGE)tcup.NewRow();

                foreach (string item in Data["PRIVILEGE_ID"])
                {
                    string PRIVILEGE_ID = item.Trim('\'').Trim('\"');
                    if (Roler.CheckPrivilegeData(ROLE_ID, PRIVILEGE_ID, sfcdb))
                    {
                        Row_C_ROLE_PRIVILEGE row = (Row_C_ROLE_PRIVILEGE)Roler.NewRow();
                        row.ID           = Roler.GetNewID(BU, sfcdb);
                        row.ROLE_ID      = ROLE_ID;
                        row.PRIVILEGE_ID = PRIVILEGE_ID;
                        row.EDIT_EMP     = LoginUser.EMP_NO;
                        row.SYSTEM_NAME  = SystemName;
                        row.EDIT_TIME    = GetDBDateTime();
                        InsertSql       += row.GetInsertString(DBTYPE) + ";\n";

                        Row_C_PRIVILEGE ChRow = (Row_C_PRIVILEGE)CheckExistMenuID.getC_PrivilegebyID(PRIVILEGE_ID, sfcdb);
                        if (ChRow.MENU_ID != null || ChRow.MENU_ID != "N/A")
                        {
                            P_code += ChRow.MENU_ID + ",";
                            rcm     = tcm.getC_MenubyID(ChRow.MENU_ID, sfcdb);

                            if (rcm.PARENT_CODE != "0")
                            {
                                if (P_code.IndexOf(rcm.PARENT_CODE) < 0 && tcup.GetC_Role_Privilege_ID(ROLE_ID, ChRow.MENU_ID, sfcdb) == null && Roler.CheckPrivilegeData(ROLE_ID, rcm.PARENT_CODE, sfcdb))
                                {
                                    rcup.ID           = tcup.GetNewID(BU, sfcdb);
                                    rcup.SYSTEM_NAME  = SystemName;
                                    rcup.ROLE_ID      = ROLE_ID;
                                    rcup.PRIVILEGE_ID = rcm.PARENT_CODE;
                                    rcup.EDIT_EMP     = LoginUser.EMP_NO;
                                    rcup.EDIT_TIME    = DateTime.Now;
                                    InsertSql        += rcup.GetInsertString(this.DBTYPE) + ";\n";
                                    P_code           += rcm.PARENT_CODE + ",";
                                }
                                do
                                {
                                    rcm = tcm.getC_MenubyID(rcm.PARENT_CODE, sfcdb);
                                    if (rcm.PARENT_CODE != "0")
                                    {
                                        if (P_code.IndexOf(rcm.PARENT_CODE) < 0 && tcup.GetC_Role_Privilege_ID(ROLE_ID, ChRow.MENU_ID, sfcdb) == null && Roler.CheckPrivilegeData(ROLE_ID, rcm.PARENT_CODE, sfcdb))
                                        {
                                            rcup.ID           = tcup.GetNewID(BU, sfcdb);
                                            rcup.SYSTEM_NAME  = SystemName;
                                            rcup.ROLE_ID      = ROLE_ID;
                                            rcup.PRIVILEGE_ID = rcm.PARENT_CODE;
                                            rcup.EDIT_EMP     = LoginUser.EMP_NO;
                                            rcup.EDIT_TIME    = DateTime.Now;
                                            InsertSql        += rcup.GetInsertString(this.DBTYPE) + ";\n";
                                            P_code           += rcm.PARENT_CODE + ",";
                                        }
                                    }
                                } while (rcm.PARENT_CODE != "0");
                            }
                        }
                    }
                    else
                    {
                        StationReturn.Status  = StationReturnStatusValue.Fail;
                        StationReturn.Message = "該角色已包含該權限ID";
                        StationReturn.Data    = "";
                        this.DBPools["SFCDB"].Return(sfcdb);
                        return;
                    }
                }

                InsertSql = "begin\n" + InsertSql + "end;";

                sfcdb.ExecSQL(InsertSql);
                sfcdb.CommitTrain();
                StationReturn.Status  = StationReturnStatusValue.Pass;
                StationReturn.Message = "添加成功";
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }
        }
Example #28
0
        public void DeleteByIdArray(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JToken Data, MESStationReturn StationReturn)
        {
            OleExec sfcdb = null;

            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                T_C_STORAGE_CODE TC_STORAGE_CODE   = new T_C_STORAGE_CODE(sfcdb, MESDataObject.DB_TYPE_ENUM.Oracle);
                C_STORAGE_CODE   GetC_STORAGE_CODE = new C_STORAGE_CODE();
                string           strIdArray        = Data["IdArray"].ToString().Trim();
                strIdArray = strIdArray.Replace("[", "").Replace("]", "");
                strIdArray = strIdArray.Replace("\"", "");
                string[] IdArray = strIdArray.Replace("\r\n", "").Split(',');
                bool     isError = false;
                if (IdArray == null || IdArray.Length <= 0)
                {
                    StationReturn.Data        = "";
                    StationReturn.Status      = StationReturnStatusValue.Fail;
                    StationReturn.MessageCode = "MES00000006";
                    StationReturn.MessagePara.Add("IdArray");
                }
                else
                {
                    isError = false;
                    sfcdb.BeginTrain();
                    for (int i = 0; i < IdArray.Length; i++)
                    {
                        GetC_STORAGE_CODE = TC_STORAGE_CODE.GetById(IdArray[i].Trim(), sfcdb);
                        if (GetC_STORAGE_CODE != null)
                        {
                            int result = TC_STORAGE_CODE.DeleteById(IdArray[i].Trim(), sfcdb);
                            if (result <= 0)
                            {
                                StationReturn.Data        = IdArray[i].Trim();
                                StationReturn.Status      = StationReturnStatusValue.Fail;
                                StationReturn.MessageCode = "MES00000023";
                                StationReturn.MessagePara.Add("C_STORAGE_CODE");
                                isError = true;
                                break;
                            }
                        }
                        else
                        {
                            StationReturn.Data        = "";
                            StationReturn.Status      = StationReturnStatusValue.Fail;
                            StationReturn.MessageCode = "MES00000007";
                            StationReturn.MessagePara.Add("Id:" + IdArray[i].Trim());
                            isError = true;
                            break;
                        }
                    }
                    if (isError)
                    {
                        sfcdb.RollbackTrain();
                    }
                    else
                    {
                        sfcdb.CommitTrain();
                        StationReturn.Data        = "";
                        StationReturn.Status      = StationReturnStatusValue.Pass;
                        StationReturn.MessageCode = "MES00000001";
                    }
                }
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception ex)
            {
                if (sfcdb != null)
                {
                    this.DBPools["SFCDB"].Return(sfcdb);
                }
                StationReturn.Data        = "";
                StationReturn.Status      = StationReturnStatusValue.Fail;
                StationReturn.MessageCode = "MES00000037";
                StationReturn.MessagePara.Add(ex.Message);
            }
        }
Example #29
0
        public void DeleteSeriesById(JObject requestValue, JToken Data, MESStationReturn StationReturn)
        {
            OleExec    sfcdb     = null;
            string     DeleteSql = "";
            string     strid     = "";
            T_C_SERIES DeleteInformation;

            Newtonsoft.Json.Linq.JArray seriesId = (Newtonsoft.Json.Linq.JArray)Data["ID"];
            try
            {
                sfcdb = this.DBPools["SFCDB"].Borrow();
                sfcdb.BeginTrain();
                DeleteInformation = new T_C_SERIES(sfcdb, DBTYPE);
                for (int i = 0; i < seriesId.Count; i++)
                {
                    strid = seriesId[i].ToString();
                    Row_C_SERIES row = (Row_C_SERIES)DeleteInformation.GetObjByID(strid, sfcdb);
                    DeleteSql += row.GetDeleteString(DBTYPE) + ";\n";
                }
                DeleteSql = "begin\n" + DeleteSql + "end;";
                sfcdb.ExecSQL(DeleteSql);
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000004";
                sfcdb.CommitTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception e)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw e;
            }

            //string seriesId = Data["SeriesId"].ToString();
            //if (string.IsNullOrEmpty(seriesId))
            //{
            //    StationReturn.Status = StationReturnStatusValue.Fail;
            //    StationReturn.MessageCode = "MES00000006";
            //    StationReturn.MessagePara = new List<Object>() { "Series" };
            //    StationReturn.Data = null;
            //    return;
            //}

            //OleExec sfcdb = DBPools["SFCDB"].Borrow();
            //Row_C_SERIES c_series = (Row_C_SERIES) new T_C_SERIES(sfcdb, DB_TYPE_ENUM.Oracle).NewRow();
            //string[] ids = seriesId.Split(',');
            //try
            //{
            //    sfcdb.BeginTrain();
            //    string deleteString = null;
            //    foreach (string id in ids)
            //    {
            //        deleteString = c_series.GetDeleteString(DB_TYPE_ENUM.Oracle, id);
            //        sfcdb.ExecuteNonQuery(deleteString, CommandType.Text, null);
            //    }
            //    sfcdb.CommitTrain();
            //}
            //catch (Exception ex)
            //{
            //    sfcdb.RollbackTrain();
            //    if (sfcdb != null) this.DBPools["SFCDB"].Return(sfcdb);
            //    throw ex;
            //}
            //StationReturn.Status = StationReturnStatusValue.Pass;
            //StationReturn.MessageCode = "MES00000004";
            //StationReturn.Data = "";
            //if (sfcdb != null) this.DBPools["SFCDB"].Return(sfcdb);
        }
Example #30
0
        /// <summary>
        /// 保存工站信息
        /// </summary>
        /// <param name="requestValue"></param>
        /// <param name="Data"></param>
        /// <param name="StationReturn"></param>
        public void SaveStation(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JObject Data, MESStationReturn StationReturn)
        {
            string DisplayName     = Data["Station"]["DISPLAY_STATION_NAME"]?.ToString();
            string StationName     = Data["Station"]["STATION_NAME"]?.ToString();
            string FailStationID   = Data["Station"]["FAIL_STATION_ID"]?.ToString();
            double FailStationFlag = Convert.ToDouble(Data["Station"]["FAIL_STATION_FLAG"]);

            try
            {
                FailStationFlag = Convert.ToDouble(Data["Station"]["FAIL_STATION_FLAG"]);
            }
            catch
            { }

            string StationID = Data["Station"]["ID"]?.ToString();

            OleExec sfcdb = this.DBPools["SFCDB"].Borrow();

            try
            {
                sfcdb.BeginTrain();
                ByIDDeleteStationID(StationID, sfcdb);//刪除整下工站

                AddStation(DisplayName, StationName, FailStationID, FailStationFlag, StationID, sfcdb);
                //插入R_Station_Output表
                for (int i = 0; i < Data["Station"]["OutputList"].Count(); i++)
                {
                    JToken output = Data["Station"]["OutputList"][i];
                    AddStationOutput(output, sfcdb);
                }
                //插入 R_Station_Input 表
                for (int i = 0; i < Data["Station"]["InputList"].Count(); i++)
                {
                    //插入 R_Station_Input 表
                    JToken input = Data["Station"]["InputList"][i];
                    AddInput(input, sfcdb);
                    ////插入 R_Input_Action 表
                    //for (int j = 0; j < input["InputActionList"].Count(); j++)
                    //{
                    //    JToken iaction = input["InputActionList"][j];
                    //    AddInputActionS(iaction, sfcdb);
                    //    for (int k = 0; k < iaction["ParaSA"].Count(); k++) //插入R_Station_Action_Para表
                    //    {
                    //        AddStationActionPara(iaction["ParaSA"][k], sfcdb);
                    //    }
                    //}
                    //插入 R_Station_Action 表
                    for (int j = 0; j < input["StationActionList"].Count(); j++)
                    {
                        JToken saction = input["StationActionList"][j];
                        AddStationAction(saction, sfcdb);
                        for (int k = 0; k < saction["ParaSA"].Count(); k++) //插入R_Station_Action_Para表
                        {
                            AddStationActionPara(saction["ParaSA"][k], sfcdb);
                        }
                    }
                }
                sfcdb.CommitTrain();
                StationReturn.Status      = StationReturnStatusValue.Pass;
                StationReturn.MessageCode = "MES00000001";
                this.DBPools["SFCDB"].Return(sfcdb);
            }
            catch (Exception ee)
            {
                sfcdb.RollbackTrain();
                this.DBPools["SFCDB"].Return(sfcdb);
                throw ee;
            }
        }