You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

330 lines
14 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using System;
using System.Linq;
using System.Web.Mvc;
using DSWeb.MvcShipping.DAL.MsUerAuthority;
using DSWeb.MvcShipping.Models.MsUserAuthority;
using DSWeb.MvcShipping.Helper;
using DSWeb.MvcShipping.Comm.Cookie;
using System.Collections.Generic;
using HcUtility.Comm;
using HcUtility.Core;
using DSWeb.TruckMng.Helper.Repository;
using System.Web;
using System.Text;
namespace DSWeb.MvcShipping.Controllers
{
[JsonRequestBehavior]
public class MsUserAuthorityController : Controller
{
//
// GET:
public ActionResult Index()
{
return View();
}
//
// GET: /
public ActionResult Edit()
{
return View();
}
//
// GET
public ContentResult GetUserAuthorityList(int start, int limit, string sort,string userid)
{
var dataList = MsUerAuthorityDAL.GetUserAuthorityList(userid,sort);
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
return new ContentResult() { Content = json };
}
public ContentResult GetUserTreeRefList(string PARENTID)
{
var dataList = MsUerAuthorityDAL.GetUserTreeRefList(PARENTID);
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
return new ContentResult() { Content = json };
}
public ContentResult GetUserTreeExpRefList(string PARENTID, string condition = "")
{
var dataList = MsUerAuthorityDAL.GetUserTreeRefList(PARENTID,true, condition);
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
return new ContentResult() { Content = json };
}
public ContentResult Save(string body)
{
var bodyList = JsonConvert.Deserialize<List<UserAuthority>>(body);
var modb = new ModelObjectRepository();
DBResult result = MsUerAuthorityDAL.SaveDetail(bodyList, Convert.ToString(Session["USERID"]));
var jsonRespose = new JsonResponse
{
Success = result.Success,
Message = result.Message
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
public ContentResult GetUserAuthorityCompanyList(int start, int limit, string sort, string userid, string authorityid)
{
var dataList = MsUerAuthorityDAL.GetUserAuthorityCompanyList(userid,authorityid,sort);
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
return new ContentResult() { Content = json };
}
public ContentResult SaveAuthorityCompany(string body, string rtype)
{
var bodyList = JsonConvert.Deserialize<List<UserAuthorityCompany>>(body);
var modb = new ModelObjectRepository();
DBResult result = MsUerAuthorityDAL.SaveAuthorityCompanyDetail(bodyList, Convert.ToString(Session["USERID"]), rtype);
var jsonRespose = new JsonResponse
{
Success = result.Success,
Message = result.Message
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
/// <summary>
/// 人员权限设置 右侧 选择人员列表
/// </summary>
/// <param name="start"></param>
/// <param name="limit"></param>
/// <param name="sort"></param>
/// <param name="userid"></param>
/// <param name="authorityid"></param>
/// <returns></returns>
public ContentResult GetUserAuthorityOpList(int start, int limit, string sort, string userid, string authorityid)
{
var dataList = MsUerAuthorityDAL.GetUserAuthorityOpList(userid, authorityid, sort);
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = dataList.ToList() });
return new ContentResult() { Content = json };
}
public ContentResult GetUserAuthorityVISIBLETreeList(string PARENTID, string USERID, string AUTHORITYID)
{
var CURRUSERID = "";
var CURRAUTHORITYID = "";
if (string.IsNullOrEmpty(USERID))
{
if (PARENTID == "0")
{
var json1 = JsonConvert.Serialize(new { Success = true, Message = "" });
return new ContentResult() { Content = json1 };
};
try
{
CURRUSERID = HttpRuntime.Cache.Get(Convert.ToString(Session["USERID"]) + "_UserAuthorityVISIBLE_CURRUSERID").ToString();
CURRAUTHORITYID = HttpRuntime.Cache.Get(Convert.ToString(Session["USERID"]) + "_UserAuthorityVISIBLE_CURRAUTHORITYID").ToString();
}
catch
{
var json0 = JsonConvert.Serialize(new { Success = false, Message = "" });
return new ContentResult() { Content = json0 };
}
}
else
{
CURRUSERID = USERID;
CURRAUTHORITYID = AUTHORITYID;
HttpRuntime.Cache.Insert(Convert.ToString(Session["USERID"]) + "_UserAuthorityVISIBLE_CURRUSERID", USERID);
HttpRuntime.Cache.Insert(Convert.ToString(Session["USERID"]) + "_UserAuthorityVISIBLE_CURRAUTHORITYID", AUTHORITYID);
}
var dataList = MsUerAuthorityDAL.GetUserAuthorityVISIBLE_Tree(PARENTID, CURRUSERID, CURRAUTHORITYID);
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", data = dataList.ToList() });
return new ContentResult() { Content = json };
}
public ContentResult GetUserAuthorityOPERATETreeList(string PARENTID, string USERID, string AUTHORITYID) {
//var result = new JsonResponse();
var CURRUSERID = "";
var CURRAUTHORITYID = "";
if (string.IsNullOrEmpty(USERID))
{
if (PARENTID == "0")
{
var json1 = JsonConvert.Serialize(new { Success = true, Message = "" });
return new ContentResult() { Content = json1 };
};
try
{
CURRUSERID = HttpRuntime.Cache.Get(Convert.ToString(Session["USERID"]) + "_UserAuthorityOPERATE_CURRUSERID").ToString();
CURRAUTHORITYID = HttpRuntime.Cache.Get(Convert.ToString(Session["USERID"]) + "_UserAuthorityOPERATE_CURRAUTHORITYID").ToString();
}
catch
{
var json0 = JsonConvert.Serialize(new { Success = false, Message = "" });
return new ContentResult() { Content = json0 };
}
}
else
{
CURRUSERID = USERID;
CURRAUTHORITYID = AUTHORITYID;
HttpRuntime.Cache.Insert(Convert.ToString(Session["USERID"]) + "_UserAuthorityOPERATE_CURRUSERID", USERID);
HttpRuntime.Cache.Insert(Convert.ToString(Session["USERID"]) + "_UserAuthorityOPERATE_CURRAUTHORITYID", AUTHORITYID);
}
var dataList = MsUerAuthorityDAL.GetUserAuthorityOPERATE_Tree(PARENTID, CURRUSERID, CURRAUTHORITYID);
var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", data = dataList.ToList() });
return new ContentResult() { Content = json };
}
public ContentResult SaveAuthorityOpDetail(string body, string rtype)
{
var bodyList = JsonConvert.Deserialize<List<UserAuthorityOp>>(body);
var modb = new ModelObjectRepository();
DBResult result = MsUerAuthorityDAL.SaveAuthorityOpDetail(bodyList, Convert.ToString(Session["USERID"]), rtype);
var jsonRespose = new JsonResponse
{
Success = result.Success,
Message = result.Message
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
public ContentResult SaveAuthorityOpAll(string body, string rtype)
{
var bodyList = JsonConvert.Deserialize<List<UserAuthorityOp>>(body);
var AUTHORITYID = "";
var op = "";
if (bodyList.Count!=0) {
AUTHORITYID = bodyList[0].AUTHORITYID;
op = bodyList[0].USERID;
}
var modb = new ModelObjectRepository();
DBResult result = MsUerAuthorityDAL.SaveAuthorityOpDetailAll(AUTHORITYID, op,Convert.ToString(Session["USERID"]), rtype);
var jsonRespose = new JsonResponse
{
Success = result.Success,
Message = result.Message
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
#region 参照部分
#endregion
public ContentResult SaveAuthorityOpVsDetail_Tree(string body, string rtype)
{
var bodyList = JsonConvert.Deserialize<List<UserAuthorityOp>>(body);
UserAuthorityOp.SetOpVsValue(bodyList, rtype);
var modb = new ModelObjectRepository();
DBResult result = MsUerAuthorityDAL.SaveAuthorityOpDetail(bodyList, Convert.ToString(Session["USERID"]), rtype);
var jsonRespose = new JsonResponse
{
Success = result.Success,
Message = result.Message
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
public ContentResult SaveAuthorityOpVsAll_Tree(string USERID, string AUTHORITYID, string rtype)
{
var bodyList = MsUerAuthorityDAL.GetUserAuthority_All(USERID, AUTHORITYID);
var modb = new ModelObjectRepository();
DBResult result = MsUerAuthorityDAL.SaveAuthorityOpDetailAll(AUTHORITYID, USERID, Convert.ToString(Session["USERID"]), rtype);
var jsonRespose = new JsonResponse
{
Success = result.Success,
Message = result.Message
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
public ContentResult CopyAuthority(string USERID, string AUTHORITYID, string ToUSERIDLIST)
{
var useridlist = ToUSERIDLIST.Split(',');
StringBuilder sqlstrbase = new StringBuilder();
sqlstrbase.Append("declare @USERID varchar(50) ");
sqlstrbase.Append("declare @CREATEUSER varchar(50) ");
sqlstrbase.Append("declare @FROMUSER varchar(50) ");
sqlstrbase.Append("declare @AUTHORITYID varchar(50) ");
sqlstrbase.Append("set @USERID='{0}' ");
sqlstrbase.Append("set @CREATEUSER='{1}' ");
sqlstrbase.Append("set @FROMUSER = '{2}' ");
sqlstrbase.Append("set @AUTHORITYID = '{3}' ");
sqlstrbase.Append("delete from user_authority_range where USERID=@USERID and AUTHORITYID=@AUTHORITYID ");
sqlstrbase.Append("insert into user_authority_range (GID,USERID,AUTHORITYID,VISIBLERANGE,OPERATERANGE,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME) ");
sqlstrbase.Append("select newid(),@USERID,AUTHORITYID,VISIBLERANGE,OPERATERANGE,@CREATEUSER,getdate(),@CREATEUSER,getdate() from user_authority_range where userid = @FROMUSER and AUTHORITYID=@AUTHORITYID ");
sqlstrbase.Append("delete from user_authority_range_op where USERID=@USERID and AUTHORITYID=@AUTHORITYID ");
sqlstrbase.Append("insert into user_authority_range_op (GID,USERID,AUTHORITYID,OPID,OPNAME,VISIBLERANGE,OPERATERANGE,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME) ");
sqlstrbase.Append("select newid(),@USERID,AUTHORITYID,OPID,OPNAME,VISIBLERANGE,OPERATERANGE,@CREATEUSER,getdate(),@CREATEUSER,getdate() from user_authority_range_op where userid = @FROMUSER and AUTHORITYID=@AUTHORITYID ");
sqlstrbase.Append("delete from user_authority_range_company where USERID=@USERID and AUTHORITYID=@AUTHORITYID ");
sqlstrbase.Append("insert into user_authority_range_company (GID,USERID,AUTHORITYID,COMPANYID,VISIBLERANGE,OPERATERANGE,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME) ");
sqlstrbase.Append("select newid(),@USERID,AUTHORITYID,COMPANYID,VISIBLERANGE,OPERATERANGE,@CREATEUSER,getdate(),@CREATEUSER,getdate() from user_authority_range_company where userid = @FROMUSER and AUTHORITYID=@AUTHORITYID ");
foreach (var userid in useridlist)
{
string sqlstr = string.Format(sqlstrbase.ToString(), userid, Session["USERID"].ToString(), USERID, AUTHORITYID);
var _r = Areas.CommMng.DAL.BasicDataRefDAL.ExecSql(sqlstr);
if (_r == -1)
{
var jsonRespose2 = new MvcShipping.Helper.JsonResponse
{
Success = true,
Message = "设置错误,请联系管理员!",
Data = ""
};
return new ContentResult() { Content = MvcShipping.Helper.JsonConvert.Serialize(jsonRespose2) };
}
}
var jsonRespose = new JsonResponse
{
Success = true,
Message = "设置完成",
Data = ""
};
return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) };
}
}
}