using Estsh.Core.Controllers;
using Estsh.Core.Model.Result;
using Estsh.Core.Models;
using Estsh.Core.Services.IServices;
using Estsh.Core.Util;
using Microsoft.AspNetCore.Mvc;
using System.Collections;
/***************************************************************************************************
*
* 更新人:sitong.dong
* 描述:枚举数据管理控制类
* 修改时间:2022.06.22
* 修改日志:系统迭代升级
*
**************************************************************************************************/
namespace Estsh.Core.Web.Controllers
{
public class EnumController : BaseController
{
private IEnumService service;
public EnumController(IEnumService _service)
{
service = _service;
}
//
// GET:
public ActionResult Index()
{
return View();
}
///
/// 获取枚举数据列表数据
///
/// 枚举类型
///
///
///
///
public ActionResult getEnumListByPage(String enumType, Pager pager, String direction, String sort, String enabled = "Y")
{
Hashtable result = new Hashtable();
result.Add("pager.pageNo", pager.pageNo);
Hashtable dataHt = this.service.getEnumListByPage(enumType, pager, direction, sort, enabled);
result.Add("rows", dataHt["dataList"]);
result.Add("pager.totalRows", dataHt["totalCount"]);
result.Add("sort", sort);
result.Add("direction", direction);
return Json(result);
}
///
/// 获取下拉框中的枚举类型数据
///
///
public ActionResult getEnumTypeList()
{
Hashtable result = new Hashtable();
List enumTypeList = service.getEnumTypeList();
result.Add("list", enumTypeList);
return Json(result);
}
///
/// 保存枚举数据
///
///
public ActionResult saveEnum()
{
String editType = Request.Form["editType"].ToString();
String enumId = Request.Form["enumId"].ToString();
String enumType = Request.Form["enumType"].ToString();
String enumName = Request.Form["enumName"].ToString();
String enumValue = Request.Form["enumValue"].ToString();
String enumDesc = Request.Form["enumDesc"].ToString();
SysEnum sysEnum = new SysEnum();
sysEnum.EnumType = enumType;
sysEnum.EnumValue = enumValue;
sysEnum.EnumName = enumName;
sysEnum.EnumDesc = enumDesc;
sysEnum.FactoryId = CurrentEmp.FactoryId;
sysEnum.FactoryCode = CurrentEmp.FactoryCode;
String message = "";
String flag = "";
if (editType != null && editType.Trim().Equals("edit"))
{
try
{
sysEnum.UpdateUserId = CurrentEmp.EmpId;
sysEnum.EnumId =Convert.ToInt32( enumId);
this.service.updateEnum(sysEnum);
message = "修改成功";
flag = "OK";
}
catch (Exception e)
{
message = "修改失败!";
flag = "Fail";
}
}
else
{
try
{
sysEnum.CreateUserId = CurrentEmp.EmpId;
this.service.saveEnum(sysEnum);
message = "添加成功";
flag = "OK";
}
catch (Exception e)
{
message = "添加失败!";
flag = "Fail";
}
}
Hashtable result = new Hashtable();
result.Add("message", message);
result.Add("flag", flag);
return Json(result);
}
///
/// 编辑枚举数据
///
///
///
public ActionResult editEnum(String enumId)
{
if (!string.IsNullOrEmpty(enumId))
{
ViewData.Add("editType", "edit");
List enumList = this.service.getEnumDetail(enumId);
if (enumList.Count > 0)
{
ViewData.Add("enumId", enumList[0].EnumId);
ViewData.Add("enumType", enumList[0].EnumType);
ViewData.Add("enumValue", enumList[0].EnumValue);
ViewData.Add("enumName", enumList[0].EnumName);
ViewData.Add("enumDesc", enumList[0].EnumDesc);
}
}
else
{
ViewData.Add("editType", "new");
}
return View("EditEnumDefine");
}
///
/// 删除枚举数据
///
///
///
public ActionResult deleteEnum(String ids)
{
int delCount = 0;
try
{
delCount = this.service.deleteEnum(ids);
}
catch(Exception e)
{
delCount = -1;
}
Hashtable result = new Hashtable();
result.Add("status", delCount);
return Json(result);
}
///
/// 启用
///
///
///
public ActionResult onEnable(String ids)
{
int delCount = 0;
try
{
delCount = this.service.EnableData(ids);
}
catch (Exception e)
{
delCount = -1;
}
Hashtable result = new Hashtable();
result.Add("status", delCount);
return Json(result);
}
///
/// 禁用
///
///
///
public ActionResult onDisable(String ids)
{
int delCount = 0;
try
{
delCount = this.service.DisableData(ids);
}
catch (Exception e)
{
delCount = -1;
}
Hashtable result = new Hashtable();
result.Add("status", delCount);
return Json(result);
}
}
}