public ActionResult AddBugLevel() { #region 添加缺陷处理等级 int id = int.Parse(Request.Params["id"]); int?buglevel = int.Parse(Request.Params["buglevel"]); string buglevelname = Request.Params["buglevelname"]; ps_inspectiontask_detail result1 = (from a in medc.ps_inspectiontask_detail where a.id == id select a).FirstOrDefault(); bool result2 = true; try { result1.bugLevelName = buglevelname; result1.bugLevel = buglevel; result1.isBugLevel = 1; result1.lastUpdateTime = DateTime.Now; medc.SubmitChanges(); } catch (Exception) { result2 = false; } #endregion return(Json(result2)); }
public ActionResult GetUpdTaskInfo() { //获得session中保存的taskid int taskid = int.Parse(Session["solvetaskid"].ToString()); int pageindex = int.Parse(Request.Params["pageindex"]); //获得消缺员信息 var role = (from i in medc.ps_role where i.roleName == "消缺员" && i.isStart == 1 select i).FirstOrDefault(); var role2 = (from a in medc.ps_role where a.roleName == "线路管理员" && a.isStart == 1 select a).FirstOrDefault(); //先获得消缺信息主表数据 var solvers = (from a in medc.ps_solvetask_main where a.id == taskid select a).FirstOrDefault(); //再获得缺陷列表信息 var badlist = (from a in medc.ps_inspectiontask_detail join b in medc.ps_solvetask_detail on a.id equals b.inspectionTaskDelId where b.taskId == taskid select a).ToList(); //获得已选的消缺员 var solvetor = (from a in medc.ps_user join b in medc.ps_solver_detail on a.userCode equals b.solverCode join c in medc.ps_solvetask_main on b.taskId equals c.id where a.roleId == role.id && a.userStatus == 1 && c.taskStatus != 5 select a).ToList(); //再获得未选的消缺员 string sql = "select *from ps_user where 1=1 and userstatus=1 and roleid=(select id from ps_role where rolename='消缺员')"; foreach (var v in solvetor) { sql += " and usercode!='" + v.userCode + "'"; } SqlConnection con = new SqlConnection("server=.;database=MyElectrCheck_DB;Integrated Security=true;"); if (con.State != ConnectionState.Open) { con.Open(); } SqlCommand cmd = new SqlCommand(sql, con); SqlDataReader dr = cmd.ExecuteReader(); List <ps_user> userlist = new List <ps_user>(); while (dr.Read()) { ps_user user = new ps_user() { id = int.Parse(dr["id"].ToString()), userCode = dr["userCode"].ToString(), userName = dr["userName"].ToString() }; userlist.Add(user); } dr.Close(); //获得工作单据类型信息 var worklist = (from a in medc.ps_systemconfig where a.configCode == "DOC_TYPE" && a.isStart == 1 select a).ToList(); //获得任务负责人信息 var tasklist = (from a in medc.ps_user where a.roleId == role2.id && a.userStatus == 1 select a).ToList(); //获得缺陷列表信息 首先获得没有进行消缺任务的缺陷列表信息 var solvelist = (from s in medc.ps_solvetask_detail select s).ToList(); string strs = ""; sql = "select *from ps_inspectiontask_detail where issolve=0 and isbug=1 and taskstatus=4 and isBugLevel=1 "; if (solvelist.Count() > 0) { foreach (var v in solvelist) { sql += " and id!=" + v.inspectionTaskDelId; strs += v.inspectionTaskDelId + ","; } var index = strs.LastIndexOf(','); //123456, strs = strs.Substring(0, index); Session["strs"] = strs; } SqlCommand cmd2 = new SqlCommand(sql, con); dr = cmd2.ExecuteReader(); List <ps_inspectiontask_detail> idlist = new List <ps_inspectiontask_detail>(); while (dr.Read()) { ps_inspectiontask_detail id = new ps_inspectiontask_detail() { id = int.Parse(dr["id"].ToString()), lineCode = dr["lineCode"].ToString(), poleCode = dr["poleCode"].ToString(), bugLevelName = dr["bugLevelName"].ToString(), bugTypeName = dr["bugTypeName"].ToString(), bugDesc = dr["bugDesc"].ToString(), discovererName = dr["discovererName"].ToString(), discoverTime = Convert.ToDateTime(dr["discoverTime"].ToString()) }; idlist.Add(id); } dr.Close(); con.Close(); DataSource ds = new DataSource(); ds.userlist1 = userlist; ds.userlist2 = solvetor; ds.userlist3 = tasklist; ds.syslist = worklist; ds.updtaskdetlist = badlist; ds.taskmain = solvers; int datacount = idlist.Count(); int pagecount = (int)Math.Ceiling(datacount / 4.0); if (pageindex <= pagecount && pageindex > 0) { int skip = (pageindex - 1) * 4; ds.taskdetlist = idlist.Skip(skip).Take(4).ToList(); ds.datacount = pagecount; } string jsonstr = JsonConvert.SerializeObject(ds); return(Content(jsonstr)); }
public ActionResult GetUpdSolvetors() { int pageindex = int.Parse(Request.Params["pageindex"]); int taskid = int.Parse(Request.Params["taskid"]); var solvelist2 = (from s in medc.ps_solvetask_detail join b in medc.ps_solvetask_main on s.taskId equals b.id where s.taskId != taskid && b.isCancel == 0 && b.taskStatus != 5 select s).ToList(); string strs = ""; //获得session中保存的值 string sql = "select *from ps_inspectiontask_detail where issolve=0 and isbug=1 and taskstatus=4 and isBugLevel=1 "; if (solvelist2.Count() > 0) { foreach (var v in solvelist2) { sql += " and id!=" + v.inspectionTaskDelId; } } if (Request.Params["strs"] != "") { strs = Request.Params["strs"]; if (strs.IndexOf(',') >= 0) { string[] strlist2 = strs.Split(','); for (var i = 0; i < strlist2.Length; i++) { sql += " and id!=" + strlist2[i]; } } else { sql += " and id!=" + strs; } } SqlConnection con = new SqlConnection("server=.;database=MyElectrCheck_DB;Integrated Security=true;"); if (con.State != ConnectionState.Open) { con.Open(); } SqlCommand cmd = new SqlCommand(sql, con); SqlDataReader dr = cmd.ExecuteReader(); List <ps_inspectiontask_detail> idlist = new List <ps_inspectiontask_detail>(); while (dr.Read()) { ps_inspectiontask_detail id = new ps_inspectiontask_detail() { id = int.Parse(dr["id"].ToString()), lineCode = dr["lineCode"].ToString(), poleCode = dr["poleCode"].ToString(), bugLevelName = dr["bugLevelName"].ToString(), bugTypeName = dr["bugTypeName"].ToString(), bugDesc = dr["bugDesc"].ToString(), discovererName = dr["discovererName"].ToString(), discoverTime = Convert.ToDateTime(dr["discoverTime"].ToString()) }; idlist.Add(id); } dr.Close(); con.Close(); DataSource ds = new DataSource(); int datacount = idlist.Count(); int pagecount = (int)Math.Ceiling(datacount / 4.0); if (pageindex <= pagecount && pageindex > 0) { int skip = (pageindex - 1) * 4; ds.taskdetlist = idlist.Skip(skip).Take(4).ToList(); ds.datacount = pagecount; } string jsonstr = JsonConvert.SerializeObject(ds); return(Content(jsonstr)); }
public ActionResult AddTaskinfo() { string taskcode = Request.Params["taskcode"]; string taskname = Request.Params["taskname"]; int lineid = int.Parse(Request.Params["lineid"]); string linecode = Request.Params["linecode"]; string linename = Request.Params["linename"]; int startpole = int.Parse(Request.Params["startpole"]); int endpole = int.Parse(Request.Params["endpole"]); string startpolecode = Request.Params["startpolecode"]; string endpolecode = Request.Params["endpolecode"]; string desc = Request.Params["desc"]; DateTime issuedtime = Convert.ToDateTime(Request.Params["issuedtime"]); string inspecname = ""; string inspectorcode = ""; var user = (from u in medc.ps_user where u.id == int.Parse(Session["userid"].ToString()) && u.userStatus == 1 select u).FirstOrDefault(); bool b = true; if (Request.Params["inspecname"] != "" && Request.Params["inspectorcode"] != "") { inspectorcode = Request.Params["inspectorcode"]; inspecname = Request.Params["inspecname"]; ps_inspectiontask_main taskmain = new ps_inspectiontask_main(); taskmain.inspectionTaskCode = taskcode; taskmain.inspectionTaskName = taskname; taskmain.lineId = lineid; taskmain.lineCode = linecode; taskmain.lineName = linename; taskmain.startPole = startpole; taskmain.startPoleCode = startpolecode; taskmain.endPole = endpole; taskmain.endPoleCode = endpolecode; taskmain.issuedByCode = user.userCode; taskmain.issuedByName = user.userName; taskmain.issuedTime = issuedtime; taskmain.taskStatus = 2; taskmain.taskStatusName = "已分配"; taskmain.finishTime = null; taskmain.common = desc; taskmain.createdBy = user.userCode; taskmain.creationTime = DateTime.Now; taskmain.lastUpdateTime = DateTime.Now; taskmain.isCancel = 0; medc.ps_inspectiontask_main.InsertOnSubmit(taskmain); //保存添加 try { medc.SubmitChanges(); } catch (Exception) { b = false; } if (b) { var tm = (from m in medc.ps_inspectiontask_main orderby m.id descending select m).FirstOrDefault(); List <ps_inspector_detail> ilist = new List <ps_inspector_detail>(); if (inspectorcode.IndexOf(',') > 0) { string[] strslist = inspectorcode.Split(','); for (var i = 0; i < strslist.Length; i++) { var u = (from p in medc.ps_user where p.userCode == strslist[i] select p).FirstOrDefault(); ps_inspector_detail det = new ps_inspector_detail() { taskId = tm.id, inspectorCode = strslist[i], inspectorName = u.userName, creationTime = DateTime.Now, createdBy = user.userCode, lastUpdateTime = DateTime.Now }; ilist.Add(det); } } else { ps_inspector_detail det = new ps_inspector_detail() { taskId = tm.id, inspectorCode = inspectorcode, inspectorName = inspecname, creationTime = DateTime.Now, createdBy = user.userCode, lastUpdateTime = DateTime.Now }; ilist.Add(det); } medc.ps_inspector_detail.InsertAllOnSubmit(ilist); try { medc.SubmitChanges(); } catch (Exception) { b = false; } } } else { //实例化对象将数据添加到该实例中 ps_inspectiontask_main taskmain = new ps_inspectiontask_main() { inspectionTaskCode = taskcode, inspectionTaskName = taskname, lineId = lineid, lineCode = linecode, lineName = linename, startPole = startpole, startPoleCode = startpolecode, endPole = endpole, endPoleCode = endpolecode, issuedByCode = user.userCode, issuedByName = user.userName, issuedTime = issuedtime, taskStatus = 1, taskStatusName = "未分配", finishTime = null, common = desc, creationTime = DateTime.Now, createdBy = user.userCode, lastUpdateTime = DateTime.Now, isCancel = 0 }; medc.ps_inspectiontask_main.InsertOnSubmit(taskmain); try { medc.SubmitChanges(); } catch (Exception) { b = false; } } if (b) { //首先查询出刚刚添加的任务的id var taskmains = (from i in medc.ps_inspectiontask_main orderby i.id descending select i).FirstOrDefault(); //根据线路编号查询出所有的杆塔信息 var poles = (from p in medc.ps_pole_info where p.lineId == lineid select p).ToList(); List <ps_inspectiontask_detail> taskdetails = new List <ps_inspectiontask_detail>(); for (var i = 0; i < poles.Count(); i++) { ps_inspectiontask_detail dets = new ps_inspectiontask_detail() { taskid = taskmains.id, poleid = poles[i].id, poleCode = poles[i].poleCode, lineCode = poles[i].lineCode, lineName = poles[i].lineName, isBug = 0, intactRate = 100, bugLevel = null, bugLevelName = null, bugType = null, bugTypeName = null, bugDesc = null, discovererCode = user.userCode, discovererName = user.userName, discoverTime = DateTime.Now, isSolve = 0, inspectTime = null, createdBy = user.userCode, creationTime = DateTime.Now, lastUpdateTime = DateTime.Now, taskStatus = 1, isBugLevel = 0 }; taskdetails.Add(dets); } //插入数据 medc.ps_inspectiontask_detail.InsertAllOnSubmit(taskdetails); try { medc.SubmitChanges(); } catch (Exception) { b = false; } } return(Json(b)); }