using System.Collections;
using Microsoft.AspNetCore.Mvc;
using Estsh.Core.Services.IServices;
using Estsh.Core.Models;
using Estsh.Core.Util;
using Estsh.Core.Controllers;
/***************************************************************************************************
*
* 更新人:sitong.dong
* 描述:不良原因
* 修改时间:2022.06.22
* 修改日志:系统迭代升级
*
**************************************************************************************************/
namespace Estsh.Core.Web.Controllers
{
public class DefectReasonController : BaseController
{
private IDefectReasonService service;
public DefectReasonController(IDefectReasonService _service)
{
this.service = _service;
}
//
// GET: /DefectReason/
public ActionResult Index()
{
return View();
}
public ActionResult GetDefectCodeWhere(Pager pager)
{
Hashtable result = new Hashtable();
Hashtable dataHt = service.GetDefectReasonWhere(pager);
result.Add("rows", dataHt["dataList"]);
result.Add("pager.totalRows", dataHt["totalCount"]);
return Json(result);
}
public ActionResult SaveReasonInfo()
{
string editType = Request.Form["editType"].ToString();
string reasonId = Request.Form["reasonId"].ToString();
string reasonCode = Request.Form["reasonCode"].ToString();
string reasonLevel = Request.Form["reasonLevel"].ToString();
string reasonType = Request.Form["reasonType"].ToString();
string reasonDesc = Request.Form["reasonDesc"].ToString();
string enabled = Request.Form["enabled"].ToString();
Hashtable htParams = new Hashtable();
htParams.Add("reasonCode", reasonCode);
htParams.Add("reasonLevel", reasonLevel);
htParams.Add("reasonType", reasonType);
htParams.Add("reasonDesc", reasonDesc);
htParams.Add("enabled", enabled);
SysReason sysReason = new SysReason();
sysReason.ReasonCode = reasonCode;
sysReason.ReasonLevel = Convert.ToInt32(reasonLevel);
sysReason.ReasonType = reasonType;
sysReason.ReasonDesc = reasonDesc;
sysReason.Enabled = enabled;
int userId = CurrentEmp.EmpId;
String message = "";
String flag = "";
if (editType != null && editType.Trim().Equals("edit"))
{
try
{
htParams.Add("update_userid", userId);
sysReason.UpdateUserId = userId;
sysReason.ReasonId =Convert.ToInt32( reasonId);
bool value = service.UpdateById(sysReason);
if (value)
{
message = "修改成功";
flag = "OK";
}
else
{
message = "修改失败!";
flag = "Fail";
}
}
catch (Exception e)
{
message = "修改失败!Detail:" + e.Message;
flag = "Fail";
}
}
else
{
sysReason.CreateUserId = userId;
bool value = service.AddDefect(sysReason);
if (value)
{
message = "添加成功";
flag = "OK";
}
else
{
message = "添加失败!";
flag = "Fail";
}
}
Hashtable result = new Hashtable();
result.Add("message", message);
result.Add("flag", flag);
return Json(result);
}
///
/// 编辑菜单
///
///
///
public ActionResult editReasonInfo(string reasonId)
{
if (!string.IsNullOrEmpty(reasonId))
{
Hashtable result = this.service.GetReasonById(Convert.ToInt32( reasonId));
List arrList = (List)result["dataList"];
ViewData.Add("editType", "edit");
ViewData.Add("reasonId", reasonId);
ViewData.Add("reasonCode", arrList[0].ReasonCode);
ViewData.Add("reasonLevel", arrList[0].ReasonLevel);
ViewData.Add("reasonType", arrList[0].ReasonType);
ViewData.Add("reasonDesc", arrList[0].ReasonDesc);
ViewData.Add("enabled", arrList[0].Enabled);
}
else
{
ViewData.Add("editType", "new");
}
return View("EditDefectReason");
}
public ActionResult deleteReason(int reasonId)
{
string message = string.Empty;
string flag = string.Empty;
bool value = service.DeleteReasonById(reasonId);
if (value)
{
message = "删除成功!";
flag = "OK";
}
else
{
message = "删除失败!";
flag = "Fail";
}
Hashtable result = new Hashtable();
result.Add("message", message);
result.Add("flag", flag);
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);
}
}
}