using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data; using System.Text; using System.Collections; using System.Reflection; using System.Web.Script.Serialization; using FangYar.Model; using FangYar.BLL; using System.Text.RegularExpressions; using FangYar.WebUI.WebModel; namespace FangYar.WebUI.ashx { /// /// OaLeaveHandler 的摘要说明 /// public class OaDutyManageHandler : IHttpHandler { private FangYar.BLL.OA.OA_DUTYMANAGE bll = new FangYar.BLL.OA.OA_DUTYMANAGE(); public void ProcessRequest(HttpContext context) { // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "值班操作请求", ""); context.Response.ContentType = "text/plain"; string action = context.Request.Params["Action"]; string returnstr = ""; switch (action) { case "ListByOrgId": returnstr = GetDutyManageListByOrgId(context); break; case "ListByDutyDate": returnstr = GetDutyManageListByDutyDate(context); break; //根据地区编码获取所有值班信息 case "GetDutyListByCityCode": returnstr = GetDutyListByCityCode(context); break; case "Add": returnstr = AddDutyManage(context); break; case "AppAddDutyManage": returnstr = AppAddDutyManage(context); break; case "Edit": returnstr = EditDutyManage(context); break; case "Del": returnstr = DelDutyManage(context); break; case "GetTree": returnstr = GetTree(context); break; case "getStaDutyHoliday": returnstr = getStaDutyHoliday(context); break; case "htmlToWord": HtmlToWord(context); break; } context.Response.Write(returnstr); } //根据机构ID查询 private string GetDutyManageListByOrgId(HttpContext context) { string returnstr = ""; try { string OrgId = context.Request.Params["OrgId"]; string treeID = context.Request.Params["treeID"]; string is_content = context.Request.Params["is_content"]; string searchTime = context.Request.Params["searchTime"]; string SubOrgCount = context.Request.Params["SubOrgCount"]; string page = context.Request.Params["page"]; string limit = context.Request.Params["limit"]; int pageIndex = 1; int pageSize = 10; if (!string.IsNullOrEmpty(page)) { pageIndex = int.Parse(page); } if (!string.IsNullOrEmpty(limit)) { pageSize = int.Parse(limit); } string where = null; if (!string.IsNullOrEmpty(treeID) && treeID != OrgId) { OrgId = treeID; } if (!string.IsNullOrEmpty(OrgId)) { if (is_content == "1") { where = " find_in_set(org_id, cids) "; } else { where = " ORG_ID = '" + OrgId + "' "; } } else { return "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; } if (!string.IsNullOrEmpty(searchTime)) { string startTime = "", endTime = ""; if (searchTime.IndexOf(" - ") != -1) { startTime = Regex.Split(searchTime, " - ", RegexOptions.IgnoreCase)[0]; endTime = Regex.Split(searchTime, " - ", RegexOptions.IgnoreCase)[1]; } where += " and date_format(DUTY_DATE,'%Y-%m-%d') between date_format('" + startTime + "','%Y-%m-%d') and date_format('" + endTime + "','%Y-%m-%d')"; } else { try { int subOrgCount = Convert.ToInt32(SubOrgCount); if (subOrgCount >= 1) { where += " and date_format(DUTY_DATE,'%Y-%m-%d') = date_format(now(),'%Y-%m-%d') "; } } catch (Exception) { } } where += " GROUP BY DUTY_DATE,ORG_ID "; DataTable list = bll.GetDutyManageListByWhere(pageIndex, pageSize, where, OrgId); returnstr = "{\"code\":0,\"msg\":\"\","; returnstr += "\"count\":" + bll.GetDutyManageCountByWhere(where, OrgId) + ",\"data\":"; returnstr += FangYar.Common.JsonHelper.ToJson(list); returnstr += "}"; } catch (Exception e) { returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "根据机构ID查询异常:" + e); } // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "值班操作请求", "根据机构ID查询"); return returnstr; } //根据值班日期查询 private string GetDutyManageListByDutyDate(HttpContext context) { string returnstr = ""; try { string DutyDate = context.Request.Params["DutyDate"]; string OrgId = context.Request.Params["OrgId"]; string where = ""; if (!string.IsNullOrEmpty(DutyDate)) { where = " DUTY_DATE ='" + DutyDate + "' GROUP BY DUTY_DATE "; } else { return "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; } returnstr = "{\"code\":0,\"msg\":\"\",\"data\":"; { DataTable list = bll.GetDutyManageListByDutyDate(OrgId, DutyDate); returnstr += FangYar.Common.JsonHelper.ToJson(list); } returnstr += "}"; } catch (Exception e) { returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "根据值班日期查询异常:" + e); } // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "值班操作请求", "根据值班日期查询"); return returnstr; } /// /// 根据地区编码获取所有值班信息 /// /// /// private string GetDutyListByCityCode(HttpContext context) { string returnstr = ""; returnstr = "{\"code\":0,\"msg\":\"无数据\",\"data\":[]}"; try { ///机构ID string OrgId = context.Request.Params["OrgId"]; ///地区编码 string cityCode = context.Request.Params["cityCode"]; ///地图地区编码 string mapCityCode = context.Request.Params["mapCityCode"]; ///地图地区编码 string dayStr = context.Request.Params["dayStr"]; DateTime dtm = DateTime.Now; if (!DateTime.TryParse(dayStr, out dtm)) { dtm = DateTime.Now; } dayStr = dtm.ToString("yyyy-MM-dd"); List retList = new List(); string sql = ""; //判断是否总队 if (mapCityCode == "540000") { //查询下级机关信息排班 sql = " SELECT * from fire_org ,(select get_Org_child_list('D8DC637B8B984848A63F82A018AFAEB0') cids ) s WHERE find_in_set(org_id,cids) and TYPE = '0' and ORG_NAME like '%机关%' ORDER BY EXTENDCODE4 "; } else if (mapCityCode == "540100" || mapCityCode == "540200" || mapCityCode == "540300" || mapCityCode == "540400" || mapCityCode == "540500" || mapCityCode == "540600" || mapCityCode == "542500") { //判断是否拉萨 if (mapCityCode == "540100") { if (OrgId == "36e8032be5f54a3cb994c4ac74ac3f77") { //训保账号登录 } else { OrgId = "f4d9f25b27114172a66a9d04cc158b00"; } } else { OrgId = GetOrgIdByCityCode(mapCityCode); } string sql1 = ""; //判断是否训保 if (OrgId == "36e8032be5f54a3cb994c4ac74ac3f77") { sql = " SELECT * from fire_org WHERE TYPE = '0' and ( ORG_ID = '" + OrgId + "' or pid = '" + OrgId + "') ORDER BY EXTENDCODE4 "; } else { sql = " SELECT * from fire_org ,(select get_Org_child_list('" + OrgId + "') cids ) s WHERE find_in_set(org_id,cids) and org_id <> '" + OrgId + "' and TYPE = '0' ORDER BY EXTENDCODE4 "; } } else { //判断当前登录用户地区编码和地图编码是否一致 if (cityCode == mapCityCode) { //一致,用机构ID进行查询 if (!string.IsNullOrWhiteSpace(OrgId)) { sql = " SELECT * from fire_org WHERE TYPE = '0' and ORG_ID = '" + OrgId + "' or pid = '" + OrgId + "' ORDER BY EXTENDCODE4 "; } } else { //不一致,用地区编码进行查询 sql = " SELECT * from fire_org WHERE TYPE = '0' and CITY = '" + mapCityCode + "' ORDER BY EXTENDCODE4 "; } } if (!string.IsNullOrWhiteSpace(sql)) { var dt = Common.MySqlHelper.QueryTable(sql); for (int i = 0; i < dt.Rows.Count; i++) { try { var orgIdItem = dt.Rows[i]["ORG_ID"] + ""; retList.Add(new DutyOrgListMo() { childrenIdStr = "", orgId = orgIdItem, orgPid = dt.Rows[i]["PID"] + "", orgCity = dt.Rows[i]["CITY"] + "", orgName = dt.Rows[i]["ORG_NAME"] + "", list = new List(), orgType = dt.Rows[i]["EXTENDCODE1"] + "", orgAbbreviation = dt.Rows[i]["EXTENDCODE3"] + "", }); } catch (Exception ex) { } } //判断是否存在机构数据 if (retList.Count > 0) { //查询机构下值班信息 //图片前缀 string CampImgUrlPrefix = System.Configuration.ConfigurationManager.AppSettings["CampImgUrlPrefix"] + ""; //机构ID信息 var orgIds = "'" + string.Join("','", retList.Select(p => p.orgId)) + "'"; //查询所有值班人员信息(旧功能值班) string sql1 = " SELECT t2.*,e.EMP_MOBILE phone,CONCAT('" + CampImgUrlPrefix + "',IF((ISNULL(PHOTO) > 0 or LENGTH(trim(PHOTO)) = 0), " + " 'images/imgPerDefaut.jpg', PHOTO)) img from (" + " SELECT EMP_ID uid, EMP_NAME `name`, org_id orgId, PROF post,SORT from OA_DUTYMANAGE WHERE DUTY_DATE ='" + dayStr + "' and ORG_ID in (" + orgIds + ") ) t2 " + " LEFT JOIN tbl_sys_emp e on t2.uid = e.USERS_UID ORDER BY SORT "; var dt1 = Common.MySqlHelper.QueryTable(sql1); //值班人员信息缓存 List listZb = new List(); //循环添加值班人员信息(旧功能值班) for (int i = 0; i < dt1.Rows.Count; i++) { try { listZb.Add(new DutyOrgListSubMo() { dkImg = "", img = dt1.Rows[i]["img"] + "", name = dt1.Rows[i]["name"] + "", orgId = dt1.Rows[i]["orgId"] + "", phone = dt1.Rows[i]["phone"] + "", post = dt1.Rows[i]["post"] + "", }); } catch (Exception ex) { } } //查询所有人员信息 string sqlEmp = " SELECT USERS_UID phone, EMP_NAME name, CONCAT('" + CampImgUrlPrefix + "',IF((ISNULL(PHOTO) > 0 or LENGTH(trim(PHOTO)) = 0), " + " 'images/imgPerDefaut.jpg', PHOTO)) img ,ORG_ID orgId from tbl_sys_emp WHERE ORG_ID in (" + orgIds + ") "; var dtEmp = Common.MySqlHelper.QueryTable(sqlEmp); //人员信息缓存集合 List listEmp = new List(); //循环添加人员值班信息缓存 for (int i = 0; i < dtEmp.Rows.Count; i++) { try { listEmp.Add(new DutyOrgListSubMo() { dkImg = "", img = dtEmp.Rows[i]["img"] + "", name = dtEmp.Rows[i]["name"] + "", orgId = dtEmp.Rows[i]["orgId"] + "", phone = dtEmp.Rows[i]["phone"] + "", post = "", }); } catch (Exception ex) { } } //查询新值班信息 string sqlZbNew = " SELECT * from oa_duty_details WHERE DUTY_TYPE_ID like 'zbrygl%' and DUTY_DAY = '" + dayStr + "' and ORG_ID in (" + orgIds + ") "; var dtZbNew = Common.MySqlHelper.QueryTable(sqlZbNew); for (int k = 0; k < dtZbNew.Rows.Count; k++) { try { DutyDiyTemplatePostMo mo = FangYar.Common.JsonHelper.FromJSON(dtZbNew.Rows[k]["DUTY_CONTENT"] + ""); //遍历处理人员信息 for (int i = 0; i < mo.attList.Count; i++) { var obj = mo.attList[i]; mo.attList[i].ListEmpRead = new List(); var str1 = obj.RowVal; var arrEmp1 = str1.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); var arrEmpName = obj.RowSelEmpName.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); if (arrEmp1.Length > 0) { //类型:0、输入项;1、选择项;2、人员选择;3、时间范围; switch (obj.RowType) { case "2": case "3": for (int j = 0; j < arrEmp1.Length; j++) { //手机号 var empPhone = arrEmp1[j]; var empObj = listEmp.Where(p => p.phone == empPhone).FirstOrDefault(); if (empObj != null) { listZb.Add(new DutyOrgListSubMo() { dkImg = "", img = empObj.img, name = empObj.name, orgId = empObj.orgId, phone = empObj.phone, post = obj.RowTitle, }); } } break; } } } } catch (Exception ex) { } } //循环回显值班人员信息 for (int i = 0; i < retList.Count; i++) { retList[i].list = new List(); var oid = retList[i].orgId; var l1 = listZb.Where(p => p.orgId == oid).ToList(); for (int j = 0; j < l1.Count; j++) { try { retList[i].list.Add(new DutyOrgListSubMo() { dkImg = l1[j].dkImg, img = l1[j].img, name = l1[j].name, orgId = l1[j].orgId, phone = l1[j].phone, post = l1[j].post, }); } catch (Exception e) { } } } } returnstr = "{\"code\":1,\"msg\":\"成功\",\"data\":" + FangYar.Common.JsonHelper.ToJSON1(retList) + "}"; } } catch (Exception e) { returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "根据值班日期查询异常:" + e); } // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "值班操作请求", "根据值班日期查询"); return returnstr; } /// /// 根据支队地区编码返回支队机构信息ID /// /// /// private string GetOrgIdByCityCode(string cityCode) { Dictionary dic = new Dictionary(); try { dic.Add("540200", "40a1e65991764d4dac2d826bfbbfc849"); dic.Add("540300", "5806465fa4e845998f31a10d023f332e"); dic.Add("540400", "b5b00dfb27a34e0a8bd86270930e02d6"); dic.Add("540500", "82487f0ebb6848e7ac4abc3d7cbc8504"); dic.Add("540600", "9a1324ec8b244a7f9d6cbca88cd614fd"); dic.Add("542500", "833b28c12b42495a99a5e41068eb6805"); return dic[cityCode]; } catch (Exception ex) { } return ""; } public class DutyOrgListMo { /// /// 机构名称 /// public string orgName { get; set; } /// /// 机构简称 /// public string orgAbbreviation { get; set; } /// /// 机构ID /// public string orgId { get; set; } /// /// 机构编码 /// public string orgCity { get; set; } /// /// 机构类型:0:支队;1:特勤站;2:大队;3:总队 /// public string orgType { get; set; } /// /// 所有下级机构ID字符串,包含本级别 /// public string childrenIdStr { get; set; } /// /// 组织机父级机构ID /// public string orgPid { get; set; } /// /// 值班信息详情 /// public List list { get; set; } } /// /// /// public class DutyOrgListSubMo { /// /// 机构信息ID /// public string orgId { get; set; } /// /// 姓名 /// public string name { get; set; } /// /// 值班人员职务 /// public string post { get; set; } /// /// 值班人员电话 /// public string phone { get; set; } /// /// 人员照片 /// public string img { get; set; } /// /// 打卡照片 /// public string dkImg { get; set; } } //添加值班管理 private string AddDutyManage(HttpContext context) { string returnstr = ""; int code = -1; string msg = ""; try { string arrStr = context.Request.Params["arrStr"]; //string ID = Guid.NewGuid().ToString("N"); ////判断是工作日还是节假期周末 FangYar.BLL.OA.OA_HOLIDAY bll_d = new BLL.OA.OA_HOLIDAY(); List list = FangYar.Common.JsonHelper.FromJSON>(arrStr); int addCount = 0; for (int i = 0; i < list.Count; i++) { var model = list[i]; model.ID = Guid.NewGuid().ToString("N"); List itemList = bll_d.GetModelList(" HDATE = '" + model.DUTY_DATE + "'"); if (itemList.Count > 0) { model.EXTENDCODE3 = itemList[0].REST; } else { model.EXTENDCODE3 = "-1"; } if (bll.AddTran(model)) { addCount++; //app推送消息 try { FangYar.FYMQTT.MessagePush mp = new FYMQTT.MessagePush(); mp.AloneMsgPush(model.EMP_ID, "值班管理", "您有一条值班任务,日期:" + model.DUTY_DATE + "!"); } catch (Exception e) { } } } if (addCount == list.Count) { msg = "添加成功!"; code = 1; } else { msg = "部分添加成功!"; } //string EMP_ID = context.Request.Params["EMP_ID"]; //string EMP_NAME = context.Request.Params["EMP_NAME"]; //string EMP_PHONE = context.Request.Params["EMP_PHONE"]; //string PROF = context.Request.Params["PROF"]; //string DUTY_DATE = context.Request.Params["DUTY_DATE"]; //string EXTENDCODE1 = context.Request.Params["EXTENDCODE1"]; //string EXTENDCODE2 = context.Request.Params["EXTENDCODE2"]; //string EXTENDCODE4 = context.Request.Params["EXTENDCODE4"]; //string EXTENDCODE5 = context.Request.Params["EXTENDCODE5"]; //string ORG_ID = context.Request.Params["ORG_ID"]; //string SORT = context.Request.Params["SORT"]; //string taskType = context.Request.Params["taskType"]; //string PHOTO = context.Request.Params["PHOTO"]; ////值班管理表 //FangYar.Model.OA.OA_DUTYMANAGE model = new FangYar.Model.OA.OA_DUTYMANAGE(); //model.ID = ID; //model.EMP_ID = EMP_ID; //model.EMP_NAME = EMP_NAME; //model.EMP_PHONE = EMP_PHONE; //model.PROF = PROF; //model.DUTY_DATE = DUTY_DATE; //string time1 = ""; //string time2 = ""; //if (!string.IsNullOrEmpty(DUTY_DATE)) //{ // DateTime time = Convert.ToDateTime(DUTY_DATE); // time1 = time.ToString("yyyy-MM-dd HH:mm:ss"); // time2 = time.AddDays(1).AddSeconds(-1).ToString("yyyy-MM-dd HH:mm:ss"); //} //model.EXTENDCODE1 = time1; //model.EXTENDCODE2 = time2; //model.EXTENDCODE4 = EXTENDCODE4; //model.EXTENDCODE5 = EXTENDCODE5; //model.ORG_ID = ORG_ID; ////model.TASKTYPE = taskType; //model.PHOTO = PHOTO; //if (!string.IsNullOrEmpty(SORT)) //{ // model.SORT = int.Parse(SORT); //} ////判断是工作日还是节假期周末 //FangYar.BLL.OA.OA_HOLIDAY bll_d = new BLL.OA.OA_HOLIDAY(); //List list = bll_d.GetModelList(" HDATE = '" + DUTY_DATE + "'"); //if (list.Count > 0) //{ // model.EXTENDCODE3 = list[0].REST; //} //else //{ // model.EXTENDCODE3 = "-1"; //} //if (bll.AddTran(model)) //{ // msg = "添加成功!"; // code = 1; // //app推送消息 // try // { // FangYar.FYMQTT.MessagePush mp = new FYMQTT.MessagePush(); // mp.AloneMsgPush(EMP_ID, "值班管理", "您有一条值班任务,日期:" + DUTY_DATE + "!"); // } // catch (Exception e) { } //} //else { msg = "添加失败!"; } } catch (Exception e) { msg = "添加失败"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "添加值班管理异常:" + e); } returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Add, "值班操作请求", "添加值班管理"); return returnstr; } /// /// App 添加值班管理 /// /// /// private string AppAddDutyManage(HttpContext context) { string returnstr = ""; int code = -1; string msg = ""; try { string ID = Guid.NewGuid().ToString("N"); string EMP_ID = context.Request.Params["EMP_ID"]; string EMP_NAME = context.Request.Params["EMP_NAME"]; string EMP_PHONE = context.Request.Params["EMP_PHONE"]; string PROF = context.Request.Params["PROF"]; string DUTY_DATE = context.Request.Params["DUTY_DATE"]; string EXTENDCODE1 = context.Request.Params["EXTENDCODE1"]; string EXTENDCODE2 = context.Request.Params["EXTENDCODE2"]; string EXTENDCODE4 = context.Request.Params["EXTENDCODE4"]; string EXTENDCODE5 = context.Request.Params["EXTENDCODE5"]; string ORG_ID = context.Request.Params["ORG_ID"]; string SORT = context.Request.Params["SORT"]; //string taskType = context.Request.Params["taskType"]; string PHOTO = context.Request.Params["PHOTO"]; //值班管理表 FangYar.Model.OA.OA_DUTYMANAGE model = new FangYar.Model.OA.OA_DUTYMANAGE(); model.ID = ID; model.EMP_ID = EMP_ID; model.EMP_NAME = EMP_NAME; model.EMP_PHONE = EMP_PHONE; model.PROF = PROF; model.DUTY_DATE = DUTY_DATE; string time1 = ""; string time2 = ""; if (!string.IsNullOrEmpty(DUTY_DATE)) { DateTime time = Convert.ToDateTime(DUTY_DATE); time1 = time.ToString("yyyy-MM-dd HH:mm:ss"); time2 = time.AddDays(1).AddSeconds(-1).ToString("yyyy-MM-dd HH:mm:ss"); } model.EXTENDCODE1 = time1; model.EXTENDCODE2 = time2; model.EXTENDCODE4 = EXTENDCODE4; model.EXTENDCODE5 = EXTENDCODE5; model.ORG_ID = ORG_ID; //model.TASKTYPE = taskType; model.PHOTO = PHOTO; if (!string.IsNullOrEmpty(SORT)) { model.SORT = int.Parse(SORT); } //判断是工作日还是节假期周末 FangYar.BLL.OA.OA_HOLIDAY bll_d = new BLL.OA.OA_HOLIDAY(); List list = bll_d.GetModelList(" HDATE = '" + DUTY_DATE + "'"); if (list.Count > 0) { model.EXTENDCODE3 = list[0].REST; } else { model.EXTENDCODE3 = "-1"; } if (bll.AddTran(model)) { msg = "添加成功!"; code = 1; //app推送消息 try { FangYar.FYMQTT.MessagePush mp = new FYMQTT.MessagePush(); mp.AloneMsgPush(EMP_ID, "值班管理", "您有一条值班任务,日期:" + DUTY_DATE + "!"); } catch (Exception e) { } } else { msg = "添加失败!"; } } catch (Exception e) { msg = "添加失败"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "App 添加值班管理异常:" + e); } returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Add, "值班操作请求", "App 添加值班管理"); return returnstr; } //修改值班管理 private string EditDutyManage(HttpContext context) { string returnstr = ""; int code = -1; string msg = ""; try { string ID = context.Request.Params["ID"]; string EMP_ID = context.Request.Params["EMP_ID"]; string EMP_NAME = context.Request.Params["EMP_NAME"]; string EMP_PHONE = context.Request.Params["EMP_PHONE"]; string PROF = context.Request.Params["PROF"]; string DUTY_DATE = context.Request.Params["DUTY_DATE"]; string EXTENDCODE1 = context.Request.Params["EXTENDCODE1"]; string EXTENDCODE2 = context.Request.Params["EXTENDCODE2"]; string EXTENDCODE3 = context.Request.Params["EXTENDCODE3"]; string EXTENDCODE4 = context.Request.Params["EXTENDCODE4"]; string EXTENDCODE5 = context.Request.Params["EXTENDCODE5"]; string ORG_ID = context.Request.Params["ORG_ID"]; string SORT = context.Request.Params["SORT"]; //string taskType = context.Request.Params["taskType"]; //值班管理表 FangYar.Model.OA.OA_DUTYMANAGE model = new FangYar.Model.OA.OA_DUTYMANAGE(); model.ID = ID; model.EMP_ID = EMP_ID; model.EMP_NAME = EMP_NAME; model.EMP_PHONE = EMP_PHONE; model.PROF = PROF; model.DUTY_DATE = DUTY_DATE; model.EXTENDCODE1 = EXTENDCODE1; model.EXTENDCODE2 = EXTENDCODE2; model.EXTENDCODE3 = EXTENDCODE3; model.EXTENDCODE4 = EXTENDCODE4; model.EXTENDCODE5 = EXTENDCODE5; model.ORG_ID = ORG_ID; //model.TASKTYPE = taskType; if (!string.IsNullOrEmpty(SORT)) { model.SORT = int.Parse(SORT); } if (bll.Update(model)) { msg = "修改成功!"; code = 1; } else { msg = "修改失败!"; } } catch (Exception e) { msg = "修改失败!"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "修改值班管理异常:" + e); } returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Update, "值班操作请求", "修改值班管理"); return returnstr; } //删除 private string DelDutyManage(HttpContext context) { string returnstr = ""; int code = -1; string msg = ""; try { string id = context.Request.Params["id"]; if (bll.Delete(id)) { msg = "删除成功!"; code = 1; } else { msg = "删除失败!"; } } catch (Exception e) { msg = "删除失败!"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "删除异常:" + e); } returnstr = "{\"code\":" + code + ",\"msg\":\"" + msg + "\"}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Delete, "值班操作请求", "删除"); return returnstr; } //机构人员Tree private string GetTree(HttpContext context) { string returnstr = ""; try { string orgId = context.Request.Params["OrgId"]; returnstr = "{\"code\":0,\"msg\":\"\",\"data\":"; DataTable data = bll.GetTree(orgId); returnstr += Common.JsonHelper.ToJson(data); returnstr += "}"; } catch (Exception e) { returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "机构人员Tree异常:" + e); } // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "值班操作请求", "机构人员Tree"); return returnstr; } //统计 private string getStaDutyHoliday(HttpContext context) { string returnstr = ""; try { string OrgId = context.Request.Params["OrgId"]; string STime = (context.Request.Params["STime"] + "").Trim(); string ETime = (context.Request.Params["ETime"] + "").Trim(); string is_content = context.Request.Params["is_content"]; string whereStr = ""; if (string.IsNullOrEmpty(OrgId)) { return returnstr = "{\"code\":0,\"msg\":\"所属机构不能为空\",\"count\":0,\"data\":[]}"; } if (is_content == "1") { whereStr = " org_id in ( select org_id from fire_org, (SELECT get_Org_child_list('" + OrgId + "') cids) t where find_in_set(ORG_ID, cids)) "; } else { whereStr = " ORG_ID ='" + OrgId + "' "; } if (!string.IsNullOrEmpty(STime) && !string.IsNullOrEmpty(ETime)) { //whereStr += " and date_format(duty_date ,'%Y-%m-%d')>= date_format('" + STime + "','%Y-%m') and date_format(duty_date ,'%Y-%m-%d')< add_months(date_format('" + ETime + "', '%Y-%m'), 1)"; whereStr += " and date(duty_date) between '" + STime + "-01' and '" + ETime + "-01' "; } else { return "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; } returnstr = "{\"code\":0,\"msg\":\"\",\"data\":"; { DataTable dt = bll.getStaDutyHoliday(whereStr); returnstr += FangYar.Common.JsonHelper.ToJson(dt); } returnstr += "}"; } catch (Exception e) { returnstr = "{\"code\":0,\"msg\":\"" + e.Message + "\",\"count\":0,\"data\":[]}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "统计异常:" + e); } // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "值班操作请求", "统计"); return returnstr; } private void HtmlToWord(HttpContext context) { try { string OrgId = context.Request.Params["OrgId"]; string STime = (context.Request.Params["STime"] + "").Trim(); string ETime = (context.Request.Params["ETime"] + "").Trim(); ; string whereStr = ""; if (!string.IsNullOrEmpty(OrgId)) { whereStr = " ORG_ID ='" + OrgId + "' "; } if (!string.IsNullOrEmpty(STime) && !string.IsNullOrEmpty(ETime)) { //whereStr += " and date_format(duty_date ,'%Y-%m-%d')>= date_format('" + STime + "','%Y-%m') and date_format(duty_date ,'%Y-%m-%d')< add_months(date_format('" + ETime + "', '%Y-%m'), 1)"; whereStr += " and date(duty_date) between '" + STime + "-01' and '" + ETime + "-01' "; } DataTable dt = bll.getStaDutyHoliday(whereStr); if (dt.Rows.Count == 0) { } else { dt.Columns.Remove("EMP_ID"); dt.Columns.Add("TOATLE", Type.GetType("System.Int32")); for (int i = 0; i < dt.Rows.Count; i++) { dt.Rows[i]["TOATLE"] = Convert.ToInt32(dt.Rows[i]["WEEKDAYS"].ToString()) + Convert.ToInt32(dt.Rows[i]["WEEKEND"].ToString()) + Convert.ToInt32(dt.Rows[i]["HOLIDAY"].ToString()); } System.Collections.Generic.Dictionary cellHeaders = new System.Collections.Generic.Dictionary(); cellHeaders.Add("EMP_NAME", "姓名"); cellHeaders.Add("WEEKDAYS", "工作日"); cellHeaders.Add("WEEKEND", "周末"); cellHeaders.Add("HOLIDAY", "节假日"); cellHeaders.Add("TOATLE", "总计"); // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "值班操作请求", "导出Excel"); FangYar.Common.NPOIExcelHelper.ExportByWeb(dt, null, cellHeaders, DateTime.Now.ToString("yyyyMMddHHmmss") + "值班人员统计数据表.xls"); } } catch (Exception e) { // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "值班操作请求", "导出Excel异常:" + e); } } public bool IsReusable { get { return false; } } } }