public JsonResult getDBSelect2DirectValue(string PageName, string PageParameterName, string value) { Page P = PDAL.FindPage(PageName); PageParameter PP = P.DicPageParameters[PageParameterName]; inputParameter ip = new inputParameter(); ip.key = PP.DBSelect2CommandDriectValueParameterName; ip.value = value; List <inputParameter> px = new List <inputParameter>(); inputParameter res = new inputParameter(); res.key = "result"; px.Add(ip); try { if (PP.DBSelect2CommandDriectValue.StartsWith("$") == false) { res.value = PDAL.ExecScaller(ref PP.DBSelect2CommandDriectValue, px); } else { res.value = CustomScaler(PP.DBSelect2CommandDriectValue, "!DirectValue", px.ToArray()); } } catch (Exception ex) { res.value = "!" + ex.Message; } return(Json(res)); }
public JsonResult Select2AjaxTable(string PageName, string colname, List <inputParameter> Parameters) { Page Info = PDAL.FindPage(PageName); ConvertNullToEmpty(Parameters); column Pp = null; for (int k = 0; k < Info.tables[0].columns.Count; k++) { if (Info.tables[0].columns[k].name == colname) { Pp = Info.tables[0].columns[k]; } } for (int k = 0; k < Pp.DBSelectCommandParameters.Count; k++) { if (Pp.DBSelectCommandParameters[k].source == "Session") { inputParameter i = new inputParameter(); i.key = Pp.DBSelectCommandParameters[k].name; i.value = PDAL.GetSession(Pp.DBSelectCommandParameters[k].Parameter); Parameters.Add(i); } } DataTable Dt = PDAL.ReadRecords(ref Pp.DBSelect2Command, Parameters); List <item> it = new List <item>(); for (int k = 0; k < Pp.options.Count; k++) { item i = new item(); i.id = Pp.options[k].value; i.text = Pp.options[k].text; it.Add(i); } for (int k = 0; k < Dt.Rows.Count; k++) { item i = new item(); i.id = Dt.Rows[k][Pp.codeColumn].ToString(); i.text = Dt.Rows[k][Pp.textColumn].ToString(); it.Add(i); } obj o = new obj(); o.results = it.ToArray(); return(Json(o)); }
public ActionResult Login(string txtUserId, string txtPassword) { try { string R = "CheckLogin"; List <inputParameter> Lis = new List <inputParameter>(); inputParameter p = new inputParameter(); p.key = "UserId"; p.value = txtUserId; Lis.Add(p); p = new inputParameter(); p.key = "Password"; p.value = Convertor.Encrypt(txtPassword, txtPassword); Lis.Add(p); int r = int.Parse(PDAL.ReadRecords(ref R, Lis).Rows[0][0].ToString()); if (r == 0) { return(Login("نام کاربری یا گذرواژه نادرست است")); } else { Session["UserName"] = txtUserId; Dictionary <string, string> Per = new Dictionary <string, string>(); R = "GetAllPerForUser"; Lis = new List <inputParameter>(); p = new inputParameter(); p.key = "UserId"; p.value = txtUserId; Lis.Add(p); DataTable Dt = PDAL.ReadRecords(ref R, Lis); foreach (DataRow Dr in Dt.Rows) { Per.Add(Dr["PerKey"].ToString(), "-"); } Session["Per"] = Per; return(RedirectToAction("Index", "Home")); } } catch { return(Login("خطای نامشخص")); } }
public JsonResult BatchCommand(string PageName, string CommandName, inputParameter[][][][] records) { Page Info = PDAL.FindPage(PageName); BatchCommand B = null; for (int i = 0; i < Info.BatchCommands.Count; i++) { if (Info.BatchCommands[i].name == CommandName) { B = Info.BatchCommands[i]; break; } } ScallerResult Res = new ScallerResult(); PDALSect.AccessResult DoAccess = PDALSect.GetCheckPer(B.PerKey, PageName, null); if (DoAccess == PDALSect.AccessResult.AccessDenied) { Res.code = 403; Res.Message = "شما اجازه دسترسی به این قسمت را ندارید"; return(Json(Res)); } if (DoAccess == PDALSect.AccessResult.ReLogin) { Res.code = 401; Res.Message = "نیاز به ورود مجدد می باشد"; return(Json(Res)); } SqlConnection Con = PDAL.GetConnection(); if (Con.State != ConnectionState.Open) { Con.Open(); } string[] scallerValues = new string[records.Length]; SqlTransaction Tran = Con.BeginTransaction(); try { for (int k = 0; k < records.Length; k++) { Command Com = B.Commands[k]; List <inputParameter> initValues = new List <inputParameter>(); for (int q = 0; q < Com.Parameters.Count; q++) { if (Com.Parameters[q].sourceType == "Session") { inputParameter ix = new inputParameter(); ix.key = Com.Parameters[q].name; ix.value = PDAL.GetSession(Com.Parameters[q].sourceTypeParameter); initValues.Add(ix); } if (Com.Parameters[q].sourceType == "SpecValue") { inputParameter ix = new inputParameter(); ix.key = Com.Parameters[q].name; ix.value = PDAL.GetSpecValue(Com.Parameters[q].sourceTypeParameter); initValues.Add(ix); } if (Com.Parameters[q].sourceType == "ScallerValues") { inputParameter ix = new inputParameter(); ix.key = Com.Parameters[q].name; ix.value = scallerValues[int.Parse(Com.Parameters[q].sourceTypeParameter)]; initValues.Add(ix); } } for (int k2 = 0; k2 < records[k].Length; k2++) { PDAL.ConvertValuesBatch(Info, Com, records[k][k2]); if (Com.DBCommand.StartsWith("$") == false) { for (int k3 = 1; k3 < records[k][k2].Length; k3++) { List <inputParameter> par = new List <inputParameter>(); par.AddRange(initValues); par.AddRange(records[k][k2][k3]); scallerValues[k] = PDAL.ExecScallerWithConnection(ref Com.DBCommand, par, Con, Tran); } } else { for (int k3 = 1; k3 < records[k][k2].Length; k3++) { List <inputParameter> par = new List <inputParameter>(); par.AddRange(initValues); par.AddRange(records[k][k2][k3]); scallerValues[k] = CustomScaler(Com.DBCommand, PageName, par.ToArray()); } } } } Tran.Commit(); Res.code = 0; Res.Message = "با موفقیت انجام شد"; } catch (Exception ex) { Tran.Rollback(); Res.code = 500; Res.Message = "خطا در انجام عملیات" + "<br />" + ex.Message; } if (Con.State != ConnectionState.Closed) { Con.Close(); } return(Json(Res)); //ConvertNullToEmpty(Parameters); //PDAL.ConvertValues(Info, Parameters); //ScallerResult Res = new ScallerResult(); //bool DoAccess = PDALSect.GetCheckPer(Info.PerKey, PageName, Parameters); //PDAL.InitServerSideParametersForSubmit(PageName, ref Parameters); //string error = PDAL.ValidateAndSetDefaultValue(Info, Parameters); //if (DoAccess == false) //{ // Res.code = 403; // Res.Message = "شما اجازه دسترسی به این قسمت را ندارید"; // return Json(Res); //} //if (error != "") //{ // Res.code = 200; // Res.Message = error; // return Json(Res); //} //try //{ // Res.code = 0; // Res.Message = "با موفقیت انجام شد"; // Res.retrunValue = PDAL.ExecScaller(Info.DBCommand, PDAL.SkipParameters(Info, Parameters)); //} //catch (SqlException Ex) //{ // Res.code = 300; // Res.Message = "خطایی رخ داد:" + Ex.ErrorCode.ToString() + ":" + Ex.Message; //} //catch (Exception Ex) //{ // Res.code = 500; // Res.Message = "خطایی رخ داد:" + Ex.Message; //} //return Json(Res); }