197 lines
7.4 KiB
C#
197 lines
7.4 KiB
C#
using Mini.Common;
|
|
using Air.Model.AirAdminViewModel;
|
|
using System;
|
|
using Mini.Services.Bas;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Mini.Web.WebHelper;
|
|
using Mini.Model.Entity;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
|
|
namespace Mini.Web.Areas.Admin.Controllers
|
|
{
|
|
public class InnerUserController : BaseController
|
|
{
|
|
|
|
ValidationErrors errors = new ValidationErrors();
|
|
private readonly IBasInnerUserService _basInnerUserService;
|
|
private readonly IBasInnerUserSaltService _basInnerUserSaltService;
|
|
public InnerUserController(IBasInnerUserService basInnerUserService, IBasInnerUserSaltService basInnerUserSaltService)
|
|
{
|
|
this._basInnerUserService = basInnerUserService;
|
|
this._basInnerUserSaltService = basInnerUserSaltService;
|
|
}
|
|
|
|
[Area("Admin")]
|
|
#region 首页
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_员工管理)]
|
|
public ActionResult Index()
|
|
{
|
|
|
|
|
|
//ToolBar
|
|
ToolBar tool = new ToolBar();
|
|
string[] toolbtn = new ToolButtonView().ToolButtonRight(InitRights.员工管理, userRightId);
|
|
tool.AllowButton(toolbtn);
|
|
tool.AddOtherButton("Other4", "确认员工离职", "icon-edit", "DismissChange_Click", true);
|
|
ViewBag.ToolBar = tool;
|
|
|
|
Pager pager = new Pager() { page = 1, rows = 10 };
|
|
string tableId = "tablist";
|
|
Table tab = new Table(tableId);
|
|
tab.AddHiddenHeadCol("uid", "ID");//影藏列
|
|
tab.AddHeadCol("eid", "", "工号", true);
|
|
tab.AddHeadCol("uname", "", "姓名", true);
|
|
tab.AddHeadCol("gender", "", "性别");
|
|
tab.AddHeadCol("birthday", "", "生日", true);
|
|
tab.AddHeadCol("isDismiss", "", "是否离职");
|
|
tab.AddHeadRow();
|
|
ViewBag.gridTable = tab.GetHead() + Pagination.GetPage(pager, tableId, "5,8,10,15");
|
|
ViewBag.type =HttpContext.Request.Query["type"].ToString();
|
|
return View();
|
|
}
|
|
#endregion
|
|
|
|
#region 列表
|
|
/// <summary>
|
|
/// 按照条件获取数据
|
|
/// </summary>
|
|
/// <param name="pager"></param>
|
|
/// <param name="queryStr"></param>
|
|
/// <returns></returns>
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_员工管理)]
|
|
[Area("Admin")]
|
|
public JsonResult GetHtmlList(Pager pager, string columns, int? eId, string uName, int? isDismiss)
|
|
{
|
|
Table table = new Table(columns, true);
|
|
table.gridPager = pager;
|
|
var list = _basInnerUserService.GetList(ref pager, eId, uName, isDismiss);
|
|
foreach (var model in list)
|
|
{
|
|
table.AddHiddenCol(model.uid);
|
|
table.AddCol(model.eid);
|
|
table.AddCol(model.uname);
|
|
table.AddCol(model.gender == "m" ? "男" : "女");
|
|
table.AddCol(model.birthday.HasValue ? model.birthday.Value.ToString("yyyy.MM.dd") : string.Empty);
|
|
table.AddCol((model.isdismiss == 1 ? "是" : "否"));
|
|
table.AddRow();
|
|
}
|
|
|
|
var json = new
|
|
{
|
|
totalPages = pager.totalPages,
|
|
totalRows = pager.totalRows,
|
|
rowsList = table.GetRows()
|
|
};
|
|
return Json(json);
|
|
}
|
|
#endregion
|
|
|
|
#region 编辑
|
|
[HttpGet]
|
|
[AuthorizeToolBar(InitRights.CONST_员工管理, InitToolBar.CONST_Edit)]
|
|
[Area("Admin")]
|
|
public ActionResult Edit(int? uId)
|
|
{
|
|
var model = new Bas_InnerUserEidtModel();
|
|
model.passwd = string.Empty;
|
|
model.passwd2 = string.Empty;
|
|
model.birthday = DateTime.Now;
|
|
if (!uId.HasValue)
|
|
{
|
|
model.gender = "m";
|
|
model.isdismiss = 0;
|
|
}
|
|
else
|
|
{
|
|
var info = _basInnerUserService.GetBasInnerUser(uId.Value);
|
|
model = new Bas_InnerUserEidtModel() { uid = info.uid, uname = info.uname, eid = info.eid, isdismiss = info.isdismiss, birthday= info.birthday, gender = info.gender, createUser = info.createUser, ctime = info.ctime, updateuser = info.updateuser, utime = info.utime };
|
|
}
|
|
|
|
return View(model);
|
|
}
|
|
|
|
[HttpPost]
|
|
[AuthorizeToolBar(InitRights.CONST_员工管理, InitToolBar.CONST_Edit)]
|
|
[Area("Admin")]
|
|
public JsonResult Edit(Bas_InnerUserEidtModel model)
|
|
{
|
|
if (!ModelState.IsValid)
|
|
return JsonHandler.ValidateFailMessage();
|
|
|
|
if (model.uid == 0)
|
|
{
|
|
model.ctime = DateTime.Now;
|
|
model.createUser = UserId;
|
|
string user_salt = Utility.CreateRandomSatl(8);
|
|
if (!string.IsNullOrEmpty(model.passwd))
|
|
{
|
|
model.passwd = Utility.Sha512(model.passwd + user_salt);
|
|
}
|
|
var info = new Bas_InnerUser() { uname = model.uname, eid = model.eid, passwd = model.passwd, gender = model.gender, isdismiss = model.isdismiss, birthday = model.birthday, createUser = model.createUser, ctime = model.ctime };
|
|
var pkid = _basInnerUserService.AddBasInnerUser(info);
|
|
if (pkid > 0)
|
|
{
|
|
var userSaltModel = new Bas_InnerUserSalt();
|
|
userSaltModel.InnerUserId = pkid;
|
|
userSaltModel.Eid = model.eid;
|
|
userSaltModel.PwdSalt = user_salt;
|
|
userSaltModel.CTime = DateTime.Now;
|
|
userSaltModel.CreateUser = UserId;
|
|
_basInnerUserSaltService.Create(userSaltModel);
|
|
}
|
|
bool scucced = true;
|
|
if (pkid == 0)
|
|
scucced = false;
|
|
|
|
return JsonHandler.InsertMessage(errors, scucced);
|
|
}
|
|
else
|
|
{
|
|
model.utime = DateTime.Now;
|
|
model.updateuser = UserId;
|
|
|
|
bool scucced = _basInnerUserService.Update(model);
|
|
|
|
return JsonHandler.UpdateMessage(errors, scucced);
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 删除
|
|
/// <summary>
|
|
/// 删除数据
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
[AuthorizeToolBar(InitRights.CONST_员工管理, InitToolBar.CONST_Delete)]
|
|
[Area("Admin")]
|
|
public JsonResult Delete(Bas_InnerUser user)
|
|
{
|
|
if (user == null)
|
|
return JsonHandler.ManageMessage("参数错误", false);
|
|
_basInnerUserService.Delete(user);
|
|
return JsonHandler.DeleteMessage(errors, true);
|
|
}
|
|
#endregion
|
|
|
|
#region 修改个人信息
|
|
[HttpGet]
|
|
[Authorize]
|
|
[Area("Admin")]
|
|
public ActionResult ChangeUserIfo()
|
|
{
|
|
//var info = _basInnerUserService.GetBasInnerUser(uId.Value);
|
|
BasUpdatePwd pwdinfo = new BasUpdatePwd() { uid=UserId};
|
|
return View(pwdinfo);
|
|
}
|
|
[HttpPost]
|
|
[Authorize]
|
|
[Area("Admin")]
|
|
public ActionResult ChangeUserIfo(BasUpdatePwd ChangeModel)
|
|
{
|
|
bool scucced = _basInnerUserService.UpdatePwd(ChangeModel, ref errors);
|
|
return JsonHandler.UpdateMessage(errors, scucced);
|
|
}
|
|
#endregion
|
|
}
|
|
} |