/// <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; } }
/// <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; } }
/// <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; } }
/// <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; } }
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); } }
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; } }
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; } }
/// <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); } }
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); } }
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; } }
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; } }
/// <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); }
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(); }
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; } }
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(); }
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; } }
/// <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; } }
/// <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; } }
/// <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; } }
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(); }
/// <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; } }
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; } }
/// <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); }
/// <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; } }
/// <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; } }
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); } }
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); }
/// <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; } }