|
|
|
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 Newtonsoft.Json;
|
|
|
|
|
|
|
|
namespace FangYar.WebUI.ashx
|
|
|
|
{
|
|
|
|
/// <summary>
|
|
|
|
/// OaLeaveHandler 的摘要说明
|
|
|
|
/// </summary>
|
|
|
|
public class VisitorRegHandler : IHttpHandler
|
|
|
|
{
|
|
|
|
private FangYar.BLL.OA.TBL_VISITOR_REG bll = new FangYar.BLL.OA.TBL_VISITOR_REG();
|
|
|
|
private FangYar.BLL.OA_LEAVE lbll = new FangYar.BLL.OA_LEAVE();
|
|
|
|
private FangYar.BLL.OA.TBL_EPUIP_ORG eobll = new FangYar.BLL.OA.TBL_EPUIP_ORG();
|
|
|
|
|
|
|
|
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 "List":
|
|
|
|
returnstr = visRegList(context);
|
|
|
|
break;
|
|
|
|
case "getModel":
|
|
|
|
returnstr = visRegModel(context);
|
|
|
|
break;
|
|
|
|
case "add":
|
|
|
|
returnstr = visRegAdd(context);
|
|
|
|
break;
|
|
|
|
case "add2":
|
|
|
|
returnstr = visRegAdd2(context);
|
|
|
|
break;
|
|
|
|
case "edit":
|
|
|
|
returnstr = visRegEdit(context);
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
context.Response.Write(returnstr);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//查询
|
|
|
|
private string visRegList(HttpContext context)
|
|
|
|
{
|
|
|
|
string returnstr = "";
|
|
|
|
try
|
|
|
|
{
|
|
|
|
string OrgId = context.Request.Params["OrgId"];
|
|
|
|
string userId = context.Request.Params["userId"];
|
|
|
|
string keyword = context.Request.Params["keywords"];
|
|
|
|
string page = context.Request.Params["page"];
|
|
|
|
string limit = context.Request.Params["limit"];
|
|
|
|
string startTime = context.Request.Params["startTime"];
|
|
|
|
string endTime = context.Request.Params["endTime"];
|
|
|
|
string treeID = context.Request.Params["treeID"];
|
|
|
|
string selDeptId = context.Request.Params["selDeptId"];
|
|
|
|
//登录账号所属部门
|
|
|
|
string DeptID = context.Request.Params["DeptID"] + "";
|
|
|
|
//是否管理员账号
|
|
|
|
string IsAdmin = context.Request.Params["IsAdmin"] + "";
|
|
|
|
string is_content = context.Request.Params["is_content"];
|
|
|
|
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;
|
|
|
|
|
|
|
|
|
|
|
|
string queryOrgId = "";
|
|
|
|
|
|
|
|
if (!string.IsNullOrEmpty(treeID) && treeID != OrgId)
|
|
|
|
{
|
|
|
|
queryOrgId = treeID;
|
|
|
|
if (is_content == "1")
|
|
|
|
{
|
|
|
|
where = "( find_in_set(org_id, cids) ) ";
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
where = "( ORG_ID = '" + treeID + "' )";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
queryOrgId = OrgId;
|
|
|
|
if (is_content == "1")
|
|
|
|
{
|
|
|
|
where = "( find_in_set(org_id, cids) ) ";
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
where = "( ORG_ID = '" + OrgId + "' )";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!string.IsNullOrWhiteSpace(selDeptId))
|
|
|
|
{
|
|
|
|
where += " and VED_ID in ( SELECT USERS_UID from tbl_sys_emp WHERE ORG_ID='" + queryOrgId + "' and DEPT_ID='" + selDeptId + "' )";
|
|
|
|
}
|
|
|
|
|
|
|
|
//判断是否管理员账号,如果不是管理员则只查询本部门数据
|
|
|
|
if (IsAdmin != "1")
|
|
|
|
{
|
|
|
|
if (!string.IsNullOrWhiteSpace(DeptID))
|
|
|
|
{
|
|
|
|
where += " and VED_ID in ( SELECT USERS_UID from tbl_sys_emp WHERE ORG_ID='" + queryOrgId + "' and DEPT_ID='" + DeptID + "' )";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!string.IsNullOrEmpty(userId))
|
|
|
|
{
|
|
|
|
where += " and VED_ID ='" + userId + "'";
|
|
|
|
}
|
|
|
|
if (!string.IsNullOrEmpty(keyword))
|
|
|
|
{
|
|
|
|
where += " and ( name like '%" + keyword + "%' or VED_MAN like '%" + keyword + "%')";
|
|
|
|
}
|
|
|
|
|
|
|
|
if (!string.IsNullOrEmpty(startTime))
|
|
|
|
{
|
|
|
|
if (!startTime.Contains("请选择"))
|
|
|
|
{
|
|
|
|
where += " and REGISTERTIME >= date_format('" + startTime + "','%Y-%m-%d %H:%i:%s')";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (!string.IsNullOrEmpty(endTime))
|
|
|
|
{
|
|
|
|
if (!endTime.Contains("请选择"))
|
|
|
|
{
|
|
|
|
where += " and REGISTERTIME <= date_format('" + endTime + "','%Y-%m-%d %H:%i:%s')";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
returnstr = "{\"code\":0,\"msg\":\"\",";
|
|
|
|
int count = bll.GetRecordCount(where, queryOrgId);
|
|
|
|
returnstr += "\"count\":" + count + ",\"data\":";
|
|
|
|
if (count == 0)
|
|
|
|
{
|
|
|
|
returnstr += "[]";
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
List<FangYar.Model.OA.TBL_VISITOR_REG> list = bll.QueryList(pageIndex, pageSize, where, " registertime desc ", queryOrgId);
|
|
|
|
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 visRegModel(HttpContext context)
|
|
|
|
{
|
|
|
|
string returnstr = "";
|
|
|
|
try
|
|
|
|
{
|
|
|
|
string visRegId = context.Request.Params["visRegId"];
|
|
|
|
returnstr = "{\"code\":0,\"msg\":\"\",\"visRegData\":";
|
|
|
|
DataTable data = bll.getVisReg(visRegId);
|
|
|
|
returnstr += FangYar.Common.JsonHelper.ToJson(data);
|
|
|
|
//returnstr += ",\"visInData\":";
|
|
|
|
|
|
|
|
//string data1_string = "[";
|
|
|
|
//for (int i = 0; i < data[1].Rows.Count; i++)
|
|
|
|
//{
|
|
|
|
// string pic1 = "", pic2 = "";
|
|
|
|
// if (data[1].Rows[i]["ID_PIC"] != null && data[1].Rows[i]["ID_PIC"] != "")
|
|
|
|
// {
|
|
|
|
|
|
|
|
// pic1 = Convert.ToBase64String((byte[])data[1].Rows[i]["ID_PIC"]);
|
|
|
|
// }
|
|
|
|
// if (data[1].Rows[i]["V_PIC"] != null && data[1].Rows[i]["V_PIC"] != "")
|
|
|
|
// {
|
|
|
|
// pic2 = Convert.ToBase64String((byte[])data[1].Rows[i]["V_PIC"]);
|
|
|
|
// }
|
|
|
|
// data1_string += "{\"ID\":\"" + data[1].Rows[i]["ID"].ToString() + "\",";
|
|
|
|
// data1_string += "\"NAME\":\"" + data[1].Rows[i]["NAME"].ToString() + "\",";
|
|
|
|
// data1_string += "\"SEX\":\"" + data[1].Rows[i]["SEX"].ToString() + "\",";
|
|
|
|
// data1_string += "\"AGE\":\"" + data[1].Rows[i]["AGE"].ToString() + "\",";
|
|
|
|
// data1_string += "\"UNIT\":\"" + data[1].Rows[i]["UNIT"].ToString() + "\",";
|
|
|
|
// data1_string += "\"NATION\":\"" + data[1].Rows[i]["NATION"].ToString() + "\",";
|
|
|
|
// data1_string += "\"ADDR\":\"" + data[1].Rows[i]["ADDR"].ToString() + "\",";
|
|
|
|
// data1_string += "\"H_REG\":\"" + data[1].Rows[i]["H_REG"].ToString() + "\",";
|
|
|
|
// data1_string += "\"ID_NUM\":\"" + data[1].Rows[i]["ID_NUM"].ToString() + "\",";
|
|
|
|
// data1_string += "\"M_ID\":\"" + data[1].Rows[i]["M_ID"].ToString() + "\",";
|
|
|
|
// data1_string += "\"M_ADDR\":\"" + data[1].Rows[i]["M_ADDR"].ToString() + "\",";
|
|
|
|
// data1_string += "\"GOODS\":\"" + data[1].Rows[i]["GOODS"].ToString() + "\",";
|
|
|
|
// data1_string += "\"DRICAR\":\"" + data[1].Rows[i]["DRICAR"].ToString() + "\",";
|
|
|
|
// data1_string += "\"REGISTERTIME\":\"" + data[1].Rows[i]["REGISTERTIME"].ToString() + "\",";
|
|
|
|
// data1_string += "\"STATE\":\"" + data[1].Rows[i]["STATE"].ToString() + "\",";
|
|
|
|
// data1_string += "\"ORG_ID\":\"" + data[1].Rows[i]["ORG_ID"].ToString() + "\",";
|
|
|
|
// data1_string += "\"ID_PIC\":\"" + pic1 + "\",";
|
|
|
|
// data1_string += "\"V_PIC\":\"" + pic2 + "\"}";
|
|
|
|
// if (i != data[1].Rows.Count - 1)
|
|
|
|
// {
|
|
|
|
// data1_string += ",";
|
|
|
|
// }
|
|
|
|
//}
|
|
|
|
//returnstr += data1_string + "]";
|
|
|
|
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 visRegAdd(HttpContext context)
|
|
|
|
{
|
|
|
|
string returnstr = "";
|
|
|
|
int code = -1;
|
|
|
|
string msg = "";
|
|
|
|
try
|
|
|
|
{
|
|
|
|
string ID = Guid.NewGuid().ToString("N");
|
|
|
|
string NAME = context.Request.Params["NAME"];
|
|
|
|
string ORG_ID = context.Request.Params["ORG_ID"];
|
|
|
|
string VISIN_ID = context.Request.Params["VISIN_ID"];
|
|
|
|
string VISIN_NAME = context.Request.Params["VISIN_NAME"];
|
|
|
|
string REASON = context.Request.Params["REASON"];
|
|
|
|
string ABOUTTIME = context.Request.Params["ABOUTTIME"];
|
|
|
|
string VED_ID = context.Request.Params["VED_ID"];
|
|
|
|
string VED_MAN = context.Request.Params["VED_MAN"];
|
|
|
|
|
|
|
|
//访客登记表
|
|
|
|
FangYar.Model.OA.TBL_VISITOR_REG model = new Model.OA.TBL_VISITOR_REG();
|
|
|
|
model.ID = ID;
|
|
|
|
model.ORG_ID = ORG_ID;
|
|
|
|
model.NAME = NAME;
|
|
|
|
model.VISIN_ID = VISIN_ID;
|
|
|
|
model.VISIN_NAME = VISIN_NAME;
|
|
|
|
model.REASON = REASON;
|
|
|
|
model.ABOUTTIME = decimal.Parse(ABOUTTIME);
|
|
|
|
model.VED_ID = VED_ID;
|
|
|
|
model.VED_MAN = VED_MAN;
|
|
|
|
model.STATE = "0";
|
|
|
|
|
|
|
|
if (bll.Add(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.Add, "访客登记操作请求", "添加访客登记");
|
|
|
|
return returnstr;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//添加访客登记
|
|
|
|
private string visRegAdd2(HttpContext context)
|
|
|
|
{
|
|
|
|
string returnstr = "";
|
|
|
|
int code = -1;
|
|
|
|
string msg = "";
|
|
|
|
try
|
|
|
|
{
|
|
|
|
string ID = Guid.NewGuid().ToString("N");
|
|
|
|
string NAME = context.Request.Params["NAME"];
|
|
|
|
string CARID = context.Request.Params["CARID"];
|
|
|
|
string BELONGINGS = context.Request.Params["BELONGINGS"];
|
|
|
|
string ABOUTTIME = context.Request.Params["ABOUTTIME"];
|
|
|
|
string REASON = context.Request.Params["REASON"];
|
|
|
|
string VED_ID = context.Request.Params["VED_ID"];
|
|
|
|
string VED_MAN = context.Request.Params["VED_MAN"];
|
|
|
|
string ORG_ID = context.Request.Params["ORG_ID"];
|
|
|
|
|
|
|
|
//访客登记表
|
|
|
|
FangYar.Model.OA.TBL_VISITOR_REG model = new Model.OA.TBL_VISITOR_REG();
|
|
|
|
model.ID = ID;
|
|
|
|
model.NAME = NAME;
|
|
|
|
model.CARID = CARID;
|
|
|
|
model.BELONGINGS = BELONGINGS;
|
|
|
|
model.REASON = REASON;
|
|
|
|
if (string.IsNullOrEmpty(ABOUTTIME))
|
|
|
|
{
|
|
|
|
model.ABOUTTIME = 1;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
model.ABOUTTIME = decimal.Parse(ABOUTTIME);
|
|
|
|
}
|
|
|
|
model.VED_ID = VED_ID;
|
|
|
|
model.VED_MAN = VED_MAN;
|
|
|
|
model.ORG_ID = ORG_ID;
|
|
|
|
model.STATE = "0";
|
|
|
|
|
|
|
|
if (bll.Add2(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.Add, "访客登记操作请求", "添加访客登记");
|
|
|
|
return returnstr;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//访客登记审批
|
|
|
|
private string visRegEdit(HttpContext context)
|
|
|
|
{
|
|
|
|
string returnstr = "";
|
|
|
|
int code = -1;
|
|
|
|
string msg = "";
|
|
|
|
try
|
|
|
|
{
|
|
|
|
string visRegId = context.Request.Params["visRegId"];
|
|
|
|
string state = context.Request.Params["state"];
|
|
|
|
//string waitId = context.Request.Params["waitId"];
|
|
|
|
string a_opinion = context.Request.Params["a_opinion"];
|
|
|
|
|
|
|
|
FangYar.Model.OA.TBL_VISITOR_REG vrmodel = new FangYar.Model.OA.TBL_VISITOR_REG();
|
|
|
|
vrmodel.ID = visRegId;
|
|
|
|
vrmodel.STATE = state;
|
|
|
|
if (a_opinion == "" || a_opinion == null)
|
|
|
|
{
|
|
|
|
if (state == "1")
|
|
|
|
{
|
|
|
|
a_opinion = "同意";
|
|
|
|
WebCommon.HttpUtil.VisitorRegEmpower(visRegId);
|
|
|
|
}
|
|
|
|
else if (state == "2")
|
|
|
|
{
|
|
|
|
a_opinion = "不同意";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
vrmodel.FEEDBACKINFO = a_opinion;
|
|
|
|
|
|
|
|
//FangYar.Model.OA_WAITPROCESSED wmodel = new FangYar.Model.OA_WAITPROCESSED();
|
|
|
|
//wmodel.ID = waitId;
|
|
|
|
//wmodel.TASK_ID = visRegId;
|
|
|
|
//wmodel.STATE = state == "1" ? "2" : (state == "2" ? "3" : "1");
|
|
|
|
//wmodel.A_OPINION = a_opinion;
|
|
|
|
|
|
|
|
if (bll.editVisReg(vrmodel))
|
|
|
|
{
|
|
|
|
|
|
|
|
if (state == "1")
|
|
|
|
{
|
|
|
|
WebCommon.HttpUtil.VisitorRegEmpower(visRegId);
|
|
|
|
}
|
|
|
|
|
|
|
|
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;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public bool IsReusable
|
|
|
|
{
|
|
|
|
get
|
|
|
|
{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|