using DTO;
|
using IServices;
|
using Microsoft.AspNetCore.Http;
|
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.Extensions.Logging;
|
using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Threading.Tasks;
|
using System.Transactions;
|
using zhengcaioa.IService;
|
using zhengcaioa.Models;
|
|
namespace zhengcaioa.Controllers
|
{
|
public class UserController : Controller
|
{
|
private readonly ILogger<UserController> _logger;
|
private readonly IUserService _userService;
|
private readonly IHrDeptService _hrDeptService;
|
private readonly IHrPositionService _hrPositionService;
|
private readonly ILiaotianService _liaotianService;
|
private readonly IPltJiatingchengyuanService _pltJiatingchengyuanService;
|
private readonly ISysAttachmentService _sysAttachmentService;
|
|
|
public UserController(ILogger<UserController> logger, IUserService userService, IHrDeptService hrDeptService, IHrPositionService hrPositionService, ILiaotianService liaotianService, IPltJiatingchengyuanService pltJiatingchengyuanService, ISysAttachmentService sysAttachmentService)
|
{
|
_logger = logger;
|
_userService = userService;
|
_hrDeptService = hrDeptService;
|
_hrPositionService = hrPositionService;
|
_liaotianService = liaotianService;
|
_pltJiatingchengyuanService = pltJiatingchengyuanService;
|
_sysAttachmentService = sysAttachmentService;
|
}
|
|
|
|
[CheckLogin]
|
public IActionResult Index()
|
{
|
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
|
ViewData["curentuser"] = curentuser;
|
List<ActionEntity> actionlist = new List<ActionEntity>();
|
ActionEntity actionEntity = new ActionEntity();
|
actionEntity.OpenType = 0;
|
actionEntity.ActionUrl = "";
|
actionEntity.ActionFun = "Search";
|
actionEntity.PageIco = "fa fa-search";
|
actionEntity.ActionName = "查询";
|
actionlist.Add(actionEntity);
|
ActionEntity actionEntity1 = new ActionEntity();
|
actionEntity1.OpenType = 0;
|
actionEntity1.ActionUrl = "";
|
actionEntity1.ActionFun = "Add";
|
actionEntity1.PageIco = "fa fa-plus";
|
actionEntity1.ActionName = "新增";
|
actionlist.Add(actionEntity1);
|
ViewData["ActionInfo"] = actionlist;
|
ViewBag.zhiwustatus = _liaotianService.GetSYScode("plt_user", "zhiwustatus").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
|
ViewBag.dept = _hrDeptService.GetList().Select(x => new { code = x.Id, label = x.DeptName }).ToList();
|
ViewBag.post = _hrPositionService.GetList().Select(x => new { code = x.Id, label = x.PostName }).ToList();
|
ViewBag.shifou = _liaotianService.GetSYScode("system", "shifou").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
|
ViewBag.sex = _liaotianService.GetSYScode("plt_user", "sex").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
|
ViewBag.isMaryed = _liaotianService.GetSYScode("plt_user", "IsMaryed").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
|
return View();
|
}
|
|
[CheckLogin]
|
public string GetUserList(PltUserDTOSearch search)
|
{
|
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
|
ViewData["curentuser"] = curentuser;
|
//JsonResult jsonResult = new JsonResult(_liaotianService.SearchByPaging(search), new Newtonsoft.Json.Serialization.DefaultContractResolver());
|
return JsonConvert.SerializeObject(_userService.SearchByPaging(search));
|
}
|
|
|
#region 编辑
|
[CheckLogin]
|
public ActionResult Edit(string id = null)
|
{
|
|
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
|
ViewData["curentuser"] = curentuser;
|
List<ActionEntity> actionlist = new List<ActionEntity>();
|
ActionEntity actionEntity = new ActionEntity();
|
actionEntity.OpenType = 0;
|
actionEntity.ActionUrl = "";
|
actionEntity.ActionFun = "Save";
|
actionEntity.PageIco = "glyphicon glyphicon-ok";
|
actionEntity.ActionName = "保存";
|
actionlist.Add(actionEntity);
|
ActionEntity actionEntity1 = new ActionEntity();
|
actionEntity1.OpenType = 0;
|
actionEntity1.ActionUrl = "";
|
actionEntity1.ActionFun = "Nullify";
|
actionEntity1.PageIco = "fa fa-remove";
|
actionEntity1.ActionName = "删除";
|
actionlist.Add(actionEntity1);
|
ViewData["ActionInfo"] = actionlist;
|
ViewBag.dept = _hrDeptService.GetList();//.Select(x => new { code = x.Id, label = x.DeptName }).ToList();
|
ViewBag.post = _hrPositionService.GetList();//.Select(x => new { code = x.Id, label = x.PostName }).ToList();
|
ViewBag.shifou = _liaotianService.GetSYScode("system", "shifou");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
|
ViewBag.zhiwustatus = _liaotianService.GetSYScode("plt_user", "zhiwustatus");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
|
ViewBag.sex = _liaotianService.GetSYScode("plt_user", "sex");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
|
ViewBag.isMaryed = _liaotianService.GetSYScode("plt_user", "IsMaryed");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
|
|
PltUserDTO PltUserDTO = new PltUserDTO();
|
PltUserDTO.Zhiwustatus = "A";
|
List<PltJiatingchengyuanDTO> pltJiatingchengyuanDTOs = new List<PltJiatingchengyuanDTO>();
|
if (!String.IsNullOrEmpty(id))
|
{
|
PltUserDTO = _userService.GetPltUserEntity(id);
|
pltJiatingchengyuanDTOs = _pltJiatingchengyuanService.GetList(id);
|
|
}
|
|
PltUserDTO.Passwordchushi = "123456";
|
|
|
if (PltUserDTO.ShiyongDate.HasValue)
|
{
|
PltUserDTO.ShiyongDateName = PltUserDTO.ShiyongDate.Value.ToString("yyyy-MM-dd");
|
}
|
|
if (PltUserDTO.Indate.HasValue)
|
{
|
PltUserDTO.IndateName = PltUserDTO.Indate.Value.ToString("yyyy-MM-dd");
|
}
|
if (PltUserDTO.ShiyongDateEnd.HasValue)
|
{
|
PltUserDTO.ShiyongDateEndName = PltUserDTO.ShiyongDateEnd.Value.ToString("yyyy-MM-dd");
|
}
|
if (PltUserDTO.Shebaodate.HasValue)
|
{
|
PltUserDTO.ShebaodateName = PltUserDTO.Shebaodate.Value.ToString("yyyy-MM-dd");
|
}
|
if (PltUserDTO.ShiyongDate.HasValue)
|
{
|
PltUserDTO.ShiyongDateName = PltUserDTO.ShiyongDate.Value.ToString("yyyy-MM-dd");
|
}
|
if (PltUserDTO.ShiyongDate.HasValue)
|
{
|
PltUserDTO.ShiyongDateName = PltUserDTO.ShiyongDate.Value.ToString("yyyy-MM-dd");
|
}
|
if (PltUserDTO.ShiyongDate.HasValue)
|
{
|
PltUserDTO.ShiyongDateName = PltUserDTO.ShiyongDate.Value.ToString("yyyy-MM-dd");
|
}
|
|
if (pltJiatingchengyuanDTOs.Count == 0)
|
{
|
pltJiatingchengyuanDTOs.Add(new PltJiatingchengyuanDTO());
|
}
|
PltUserDTO.pltJiatingchengyuanDTOs = pltJiatingchengyuanDTOs;
|
ViewData.Model = PltUserDTO;
|
|
|
ResultDataEntity<SysAttachmentDTO> resultshenfenzheng = new ResultDataEntity<SysAttachmentDTO>();
|
if (!string.IsNullOrEmpty(id))
|
{
|
SysAttachmentDTOSearch searchEntity = new SysAttachmentDTOSearch();
|
searchEntity.page = 1;
|
searchEntity.rows = 1000;
|
searchEntity.AttObj = "PltUsershenfenzheng";
|
searchEntity.AttObjid = id;
|
resultshenfenzheng = _sysAttachmentService.SearchByPaging(searchEntity);
|
}
|
ViewBag.shenfenzheng = resultshenfenzheng;
|
|
|
ResultDataEntity<SysAttachmentDTO> resultshenfenzhengbeimian = new ResultDataEntity<SysAttachmentDTO>();
|
if (!string.IsNullOrEmpty(id))
|
{
|
SysAttachmentDTOSearch searchEntity = new SysAttachmentDTOSearch();
|
searchEntity.page = 1;
|
searchEntity.rows = 1000;
|
searchEntity.AttObj = "PltUsershenfenzhengbeimian";
|
searchEntity.AttObjid = id;
|
resultshenfenzhengbeimian = _sysAttachmentService.SearchByPaging(searchEntity);
|
}
|
ViewBag.shenfenzhengbeimian = resultshenfenzhengbeimian;
|
|
|
|
ResultDataEntity<SysAttachmentDTO> resultsxuelizheng = new ResultDataEntity<SysAttachmentDTO>();
|
if (!string.IsNullOrEmpty(id))
|
{
|
SysAttachmentDTOSearch searchEntity = new SysAttachmentDTOSearch();
|
searchEntity.page = 1;
|
searchEntity.rows = 1000;
|
searchEntity.AttObj = "PltUserxuelizheng";
|
searchEntity.AttObjid = id;
|
resultsxuelizheng = _sysAttachmentService.SearchByPaging(searchEntity);
|
}
|
ViewBag.xuelizheng = resultsxuelizheng;
|
|
ResultDataEntity<SysAttachmentDTO> resultszhiyezigezheng = new ResultDataEntity<SysAttachmentDTO>();
|
if (!string.IsNullOrEmpty(id))
|
{
|
SysAttachmentDTOSearch searchEntity = new SysAttachmentDTOSearch();
|
searchEntity.page = 1;
|
searchEntity.rows = 1000;
|
searchEntity.AttObj = "PltUserzhiyezigezheng";
|
searchEntity.AttObjid = id;
|
resultszhiyezigezheng = _sysAttachmentService.SearchByPaging(searchEntity);
|
}
|
ViewBag.zhiyezigezheng = resultszhiyezigezheng;
|
|
|
ResultDataEntity<SysAttachmentDTO> resultsqitazhengshu = new ResultDataEntity<SysAttachmentDTO>();
|
if (!string.IsNullOrEmpty(id))
|
{
|
SysAttachmentDTOSearch searchEntity = new SysAttachmentDTOSearch();
|
searchEntity.page = 1;
|
searchEntity.rows = 1000;
|
searchEntity.AttObj = "PltUserqitazhengshu";
|
searchEntity.AttObjid = id;
|
resultsqitazhengshu = _sysAttachmentService.SearchByPaging(searchEntity);
|
}
|
ViewBag.qitazhengshu = resultsqitazhengshu;
|
return View();
|
}
|
|
|
|
|
|
|
[CheckLogin]
|
public string Get(string id = null)
|
{
|
PltUserDTO PltUserDTO = new PltUserDTO();
|
PltUserDTO.Zhiwustatus = "A";
|
if (!String.IsNullOrEmpty(id))
|
{
|
PltUserDTO = _userService.GetPltUserEntity(id);
|
}
|
|
// ViewData.Model = PltUserDTO;
|
return JsonConvert.SerializeObject(PltUserDTO);
|
}
|
|
|
/// <summary>
|
/// 保存
|
/// </summary>
|
/// <param name="data">岗位实体类对象</param>
|
/// <returns></returns>
|
[HttpPost]
|
[CheckLogin]
|
public string Save(PltUserDTO userdata)
|
{
|
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
|
ViewData["curentuser"] = curentuser;
|
ResultEntity resultEntity = new ResultEntity();
|
resultEntity.Result = false;
|
using (TransactionScope scope = new TransactionScope())
|
{
|
|
userdata.RecStatus = "A";
|
if (String.IsNullOrEmpty(userdata.Id))
|
{
|
userdata.Creater = curentuser.Id;
|
userdata.Createtime = DateTime.Now;
|
}
|
userdata.Modifier = curentuser.Id;
|
userdata.Modifytime = DateTime.Now;
|
|
resultEntity = _userService.savePltUser(userdata);
|
if (resultEntity.Result == false)
|
{
|
return JsonConvert.SerializeObject(resultEntity);
|
}
|
string[] JiatingchengyuanId = userdata.JiatingchengyuanId;
|
string[] Name = userdata.Name;
|
string[] Guanxi = userdata.Guanxi;
|
string[] Gongzuodanwei = userdata.Gongzuodanwei;
|
|
|
for (int i = 0; i < JiatingchengyuanId.Length; i++)
|
{
|
PltJiatingchengyuanDTO pltJiatingchengyuanDTO = new PltJiatingchengyuanDTO();
|
pltJiatingchengyuanDTO.Id = JiatingchengyuanId[i] == null ? "" : JiatingchengyuanId[i].Trim();
|
pltJiatingchengyuanDTO.UserId = userdata.Id;
|
pltJiatingchengyuanDTO.Name = Name[i] == null ? "" : Name[i].Trim();
|
pltJiatingchengyuanDTO.Guanxi = Guanxi[i] == null ? "" : Guanxi[i].Trim();
|
pltJiatingchengyuanDTO.Gongzuodanwei = Gongzuodanwei[i] == null ? "" : Gongzuodanwei[i].Trim();
|
pltJiatingchengyuanDTO.RecStatus = "A";
|
if (String.IsNullOrEmpty(JiatingchengyuanId[i]))
|
{
|
pltJiatingchengyuanDTO.Creater = curentuser.Id;
|
pltJiatingchengyuanDTO.Createtime = DateTime.Now;
|
}
|
pltJiatingchengyuanDTO.Modifier = curentuser.Id;
|
pltJiatingchengyuanDTO.Modifytime = DateTime.Now;
|
resultEntity = _pltJiatingchengyuanService.save(pltJiatingchengyuanDTO);
|
if (resultEntity.Result == false)
|
{
|
return JsonConvert.SerializeObject(resultEntity);
|
}
|
}
|
|
string[] Filepaths = userdata.Filepath;
|
|
if (Filepaths != null && Filepaths.Length > 0)
|
{
|
for (int i = 0; i < Filepaths.Length; i++)
|
{
|
if (string.IsNullOrEmpty(userdata.attachmentid[i]))
|
{
|
SysAttachmentDTO sysAttachmentDTO = new SysAttachmentDTO();
|
//sysAttachmentDTO.Id =
|
sysAttachmentDTO.AttObj = userdata.AttObj[i];
|
sysAttachmentDTO.AttObjid = userdata.Id;
|
sysAttachmentDTO.Filefullname = userdata.Filefullname[i];
|
sysAttachmentDTO.Filepath = userdata.Filepath[i];
|
sysAttachmentDTO.Creater = curentuser.Id;
|
sysAttachmentDTO.Modifier = curentuser.Id;
|
sysAttachmentDTO.Createtime = DateTime.Now;
|
sysAttachmentDTO.Modifytime = sysAttachmentDTO.Createtime;
|
|
resultEntity = _sysAttachmentService.save(sysAttachmentDTO);
|
if (resultEntity.Result == false)
|
{
|
return JsonConvert.SerializeObject(resultEntity);
|
}
|
}
|
|
}
|
|
|
}
|
scope.Complete();
|
}
|
|
return JsonConvert.SerializeObject(resultEntity);
|
}
|
#endregion
|
|
/// <summary>
|
/// 删除主信息
|
/// </summary>
|
/// <param name="info">实体</param>
|
/// <returns></returns>
|
///
|
[CheckLogin]
|
public string Nullify(string Id = "")
|
{
|
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
|
ViewData["curentuser"] = curentuser;
|
return JsonConvert.SerializeObject(_userService.ModifyStatus(Id, curentuser.Id));
|
}
|
|
/// <summary>
|
/// 删除家庭成员
|
/// </summary>
|
/// <param name="info">实体</param>
|
/// <returns></returns>
|
///
|
[CheckLogin]
|
public string Nullifyjiating(string Id = "")
|
{
|
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
|
ViewData["curentuser"] = curentuser;
|
return JsonConvert.SerializeObject(_pltJiatingchengyuanService.ModifyStatus(Id, curentuser.Id));
|
}
|
|
/// <summary>
|
/// 获取用户信息
|
/// </summary>
|
/// <param name="info">实体</param>
|
/// <returns></returns>
|
///
|
[CheckLogin]
|
public string GetList(string DeptId = null, string IsYwjl = null)
|
{
|
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
|
ViewData["curentuser"] = curentuser;
|
|
|
var quxian = _userService.GetList(DeptId, IsYwjl);
|
|
return JsonConvert.SerializeObject(quxian);
|
}
|
|
|
|
/// <summary>
|
/// 删除主信息
|
/// </summary>
|
/// <param name="info">实体</param>
|
/// <returns></returns>
|
///
|
[CheckLogin]
|
public string Chushimima(string Id, string Password)
|
{
|
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
|
ViewData["curentuser"] = curentuser;
|
PltUserDTO pltUserDTO =_userService.GetPltUserEntity(Id);
|
// pltUserDTO.Password = Password;
|
pltUserDTO.Modifier = curentuser.Id;
|
pltUserDTO.Password = Password;
|
pltUserDTO.ZsName = "D";
|
pltUserDTO.Modifytime = DateTime.Now;
|
|
ResultEntity resultEntity = _userService.savePltUser(pltUserDTO);
|
|
|
|
|
return JsonConvert.SerializeObject(resultEntity);
|
}
|
|
|
[CheckLogin]
|
public ActionResult Print(string id)
|
{
|
PltUserDTO dto = _userService.GetPltUserEntity(id);
|
ViewData.Model = dto;
|
return View();
|
}
|
|
|
}
|
}
|
|