ChengDa_English/SGGL/WebAPI/Controllers/UserController.cs

493 lines
16 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using BLL;
using System;
using System.Linq;
using System.Web.Http;
namespace WebAPI.Controllers
{
/// <summary>
/// 用户
/// </summary>
public class UserController : ApiController
{
#region
/// <summary>
/// 登录方法
/// </summary>
/// <param name="userInfo"></param>
/// <returns></returns>
[HttpPost]
public Model.ResponeData postLoginOn([FromBody] Model.UserItem userInfo)
{
//登录方法 Model.UserItem
var responeData = new Model.ResponeData
{
message = "账号密码不匹配!"
};
try
{
var user = APIUserService.UserLogOn(userInfo);
if (user != null)
{
responeData.message = "登录成功!";
responeData.data = user;
}
else
{
var user1 = APIPersonService.PersonLogOn(userInfo);
if (user1 != null)
{
responeData.message = "登录成功!";
responeData.code = 2;
responeData.data = user1;
}
}
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region userid获取用户信息
/// <summary>
/// 根据userid获取用户信息
/// </summary>
/// <param name="userId"></param>
/// <returns></returns>
public Model.ResponeData getUserByUserId(string userId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIUserService.getUserByUserId(userId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region unitId获取用户信息
/// <summary>
/// 根据unitId获取用户信息
/// </summary>
/// <param name="unitId"></param>
/// <returns></returns>
public Model.ResponeData getUserByUnitid(string unitId)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = APIUserService.getUserByUnitId(unitId, null);
responeData.data = new { getDataList.Count, getDataList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region unitId获取用户信息
/// <summary>
/// 根据unitId获取用户信息
/// </summary>
/// <param name="unitId">单位ID</param>
/// <param name="strParam">查询</param>
/// <returns></returns>
public Model.ResponeData getUserByUnitidQuery(string unitId, string strParam)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = APIUserService.getUserByUnitId(unitId, strParam);
responeData.data = new { getDataList.Count, getDataList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region projectIdunitid获取用户信息
/// <summary>
/// 根据projectId、unitid获取用户信息
/// </summary>
/// <param name="projectId"></param>
/// <param name="unitId"></param>
/// <returns></returns>
public Model.ResponeData getUserByProjectIdUnitId(string projectId, string unitId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIUserService.getUserByProjectIdUnitIdQuery(projectId, unitId, null, null);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region projectIdunitid获取用户信息
/// <summary>
/// 根据projectId、unitid获取用户信息
/// </summary>
/// <param name="projectId"></param>
/// <param name="unitId"></param>
/// <param name="roleIds"></param>
/// <param name="strParam"></param>
/// <param name="pageIndex"></param>
/// <returns></returns>
public Model.ResponeData getUserByProjectIdUnitIdQuery(string projectId, string unitId, string roleIds, string strParam, int pageIndex)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = APIUserService.getUserByProjectIdUnitIdQuery(projectId, unitId, roleIds, strParam);
int pageCount = getDataList.Count();
if (pageCount > 0 && pageIndex > 0)
{
getDataList = getDataList.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
}
responeData.data = new { pageCount, getDataList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region UnitType单位类型获取用户信息
/// <summary>
/// 根据UnitType单位类型获取用户信息
/// </summary>
/// <param name="projectId"></param>
/// <param name="unitType">总包1;施工分包2;监理3;业主4;其他5</param>
/// <param name="roleIds"></param>
/// <param name="strParam"></param>
/// <param name="pageIndex"></param>
/// <returns></returns>
public Model.ResponeData getUserByProjectIdUnitTypeQuery(string projectId, string unitType, string roleIds, string strParam, int pageIndex)
{
var responeData = new Model.ResponeData();
try
{
var getDataList = APIUserService.getUserByProjectIdUnitTypeQuery(projectId, unitType, roleIds, strParam);
int pageCount = getDataList.Count();
if (pageCount > 0 && pageIndex > 0)
{
getDataList = getDataList.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList();
}
responeData.data = new { pageCount, getDataList };
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 保存人员电话号码
/// </summary>
/// <param name="userId"></param>
/// <param name="tel">电话</param>
/// <returns></returns>
public Model.ResponeData getSaveUserTel(string userId, string tel)
{
var responeData = new Model.ResponeData();
try
{
APIUserService.getSaveUserTel(userId, tel);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 保存人员电话号码
/// </summary>
/// <param name="userId"></param>
/// <param name="signatureUrl">签名</param>
/// <returns></returns>
public Model.ResponeData getSaveUserSignatureUrl(string userId, string signatureUrl)
{
var responeData = new Model.ResponeData();
try
{
APIUserService.getSaveUserSignatureUrl(userId, signatureUrl);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region UnitId判断是否为本单位用户或管理员
/// <summary>
/// 根据用户UnitId判断是否为本单位用户或管理员
/// </summary>
/// <param name="userId"></param>
/// <returns></returns>
public Model.ResponeData getIsMainUnitOrAdmin(string userId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data= CommonService.IsMainUnitOrAdmin(userId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 获取当前用户是否有菜单权限
/// </summary>
/// <param name="userId">当前人ID</param>
/// <param name="menuId">菜单ID</param>
/// <param name="projectId">项目ID</param>
/// <returns></returns>
public Model.ResponeData getIsHaveMenuPower(string userId, string menuId, string projectId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = CommonService.ReturnMenuByUserIdMenuId( userId, menuId, projectId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 获取当前用户是否有菜单权限
/// </summary>
/// <param name="userId">当前人ID</param>
/// <returns></returns>
public Model.ResponeData getSystemPowerList(string userId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = CommonService.GetSystemPowerList(userId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 获取当前用户是否有菜单权限
/// </summary>
/// <param name="userId">当前人ID</param>
/// <param name="projectId">项目ID</param>
/// <returns></returns>
public Model.ResponeData getMenuPowerList(string userId, string projectId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = CommonService.GetAllMenuList(projectId, userId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 获取当前用户是否有菜单权限
/// </summary>
/// <param name="userId">当前人ID</param>
/// <param name="menuId">菜单ID</param>
/// <param name="projectId">项目ID</param>
/// <param name="buttonName">按钮名称</param>
/// <returns></returns>
public Model.ResponeData getIsHaveButtonPower(string userId, string menuId, string projectId,string buttonName)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = CommonService.GetAllButtonPowerList(projectId, userId, menuId, buttonName);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 获取当前人未读数量
/// </summary>
/// <param name="menuId">菜单ID</param>
/// <param name="projectId">菜单ID</param>
/// <param name="userId">用户id</param>
/// <returns></returns>
public Model.ResponeData getMenuUnreadCount(string menuId, string projectId, string userId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIUserService.getMenuUnreadCount(menuId, projectId, userId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
public Model.ResponeData getHSSEManager(string projectId)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIBaseInfoService.getHSSEManager(projectId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
public Model.ResponeData GetUserListByProjectIdAndUnitId(string projectId, string unitId,string system)
{
var responeData = new Model.ResponeData();
try
{
responeData.data = APIBaseInfoService.GetUserListByProjectIdAndUnitId(projectId,unitId, "");
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 保存浏览记录
/// </summary>
/// <param name="menuId">菜单ID</param>
/// <param name="projectId">菜单ID</param>
/// <param name="userId">用户id</param>
/// <param name="dataId">主键ID</param>
/// <returns></returns>
public Model.ResponeData getSaveUserRead(string menuId, string projectId, string userId, string dataId)
{
var responeData = new Model.ResponeData();
try
{
APIUserService.getSaveUserRead(menuId, projectId, userId, dataId);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
#region
/// <summary>
/// 保存用户信息
/// </summary>
/// <param name="list">用户信息</param>
/// <returns></returns>
[HttpPost]
public Model.ResponeData postUserInfo([FromBody] Model.UserListItem list)
{
var responeData = new Model.ResponeData();
try
{
responeData.message= APIUserService.SaveUserInfo(list);
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
#endregion
}
}