public JsonResult approval_process_in(approval_process_in_lib[] obj, int module_id, bool all, int group) { int company_id = Convert.ToInt32(Crypto.url_decrypt(Request.Cookies["CompanyId"])); int warehouse_id = Convert.ToInt32(Crypto.url_decrypt(Request.Cookies["WarehouseId"])); int created_by = Convert.ToInt32(Crypto.url_decrypt(Request.Cookies["UserId"])); approval_process_in_lib result = _master.approval_process_inAsync(obj, group, module_id, all, company_id, warehouse_id, created_by).Result; JsonResult json = Json(result); return(json); }
public approval_process_in_lib approval_process_in(approval_process_in_lib[] obj, int approval_group_id, int module_id, bool all, int company_id, int warehouse_id, int created_by) { approval_process_in_lib ret = new approval_process_in_lib(); List <menu_view_restriction_lib> resp = new List <menu_view_restriction_lib>(); DataTable dt = new DataTable(); ret.module_id = 1; SqlConnection oConn = new SqlConnection(_master); SqlTransaction oTrans; oConn.Open(); oTrans = oConn.BeginTransaction(); SqlCommand oCmd = new SqlCommand(); oCmd.Connection = oConn; oCmd.Transaction = oTrans; try { if (all) { SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = oCmd; oCmd.CommandText = "modules_view"; da.SelectCommand.CommandType = CommandType.StoredProcedure; oCmd.Parameters.Clear(); oCmd.Parameters.AddWithValue("@module_id", 0); oCmd.Parameters.AddWithValue("@is_ap", true); oCmd.Parameters.AddWithValue("@is_active", true); da.Fill(dt); resp = (from DataRow dr in dt.Rows select new menu_view_restriction_lib() { module_id = Convert.ToInt32(dr["module_id"].ToString()), }).ToList(); foreach (var m in resp) { oCmd.CommandText = "approval_process_del"; oCmd.CommandType = CommandType.StoredProcedure; oCmd.Parameters.Clear(); oCmd.Parameters.AddWithValue("@module_id", m.module_id); oCmd.Parameters.AddWithValue("@approval_group_id", approval_group_id); oCmd.Parameters.AddWithValue("@warehouse_id", warehouse_id); oCmd.Parameters.AddWithValue("@company_id", company_id); oCmd.ExecuteNonQuery(); int seq = 0; foreach (var x in obj) { foreach (var y in x.employee) { oCmd.CommandText = "approval_process_in"; oCmd.CommandType = CommandType.StoredProcedure; oCmd.Parameters.Clear(); oCmd.Parameters.AddWithValue("@module_id", m.module_id); oCmd.Parameters.AddWithValue("@status", x.status); oCmd.Parameters.AddWithValue("@seq", seq); oCmd.Parameters.AddWithValue("@approval_group_id", approval_group_id); oCmd.Parameters.AddWithValue("@employee_id", y.employee_id); oCmd.Parameters.AddWithValue("@warehouse_id", warehouse_id); oCmd.Parameters.AddWithValue("@company_id", company_id); oCmd.Parameters.AddWithValue("@active", x.active); oCmd.Parameters.AddWithValue("@created_by", created_by); oCmd.ExecuteNonQuery(); } seq++; } } } else { oCmd.CommandText = "approval_process_del"; oCmd.CommandType = CommandType.StoredProcedure; oCmd.Parameters.Clear(); oCmd.Parameters.AddWithValue("@module_id", module_id); oCmd.Parameters.AddWithValue("@approval_group_id", approval_group_id); oCmd.Parameters.AddWithValue("@warehouse_id", warehouse_id); oCmd.Parameters.AddWithValue("@company_id", company_id); oCmd.ExecuteNonQuery(); int seq = 0; foreach (var x in obj) { foreach (var y in x.employee) { oCmd.CommandText = "approval_process_in"; oCmd.CommandType = CommandType.StoredProcedure; oCmd.Parameters.Clear(); oCmd.Parameters.AddWithValue("@module_id", module_id); oCmd.Parameters.AddWithValue("@status", x.status); oCmd.Parameters.AddWithValue("@seq", seq); oCmd.Parameters.AddWithValue("@approval_group_id", approval_group_id); oCmd.Parameters.AddWithValue("@employee_id", y.employee_id); oCmd.Parameters.AddWithValue("@warehouse_id", warehouse_id); oCmd.Parameters.AddWithValue("@company_id", company_id); oCmd.Parameters.AddWithValue("@active", x.active); oCmd.Parameters.AddWithValue("@created_by", created_by); oCmd.ExecuteNonQuery(); } seq++; } } oTrans.Commit(); } catch (Exception e) { ret.module_id = 0; Console.WriteLine("Error: " + e.Message); error_log_in("0", "SP = util_dropdown_setting_in | " + e.Message, company_id, created_by); oTrans.Rollback(); } finally { oConn.Close(); } return(ret); }