using CRM.Core.DTO; using CRM.Core.DTO.Hg; using Newtonsoft.Json; using Ninject; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using System.Web.Mvc; using WX.CRM.BLL.Util; using WX.CRM.Common; using WX.CRM.Common.Layui; using WX.CRM.Common.StockHelper; using WX.CRM.Model.Enum; using WX.CRM.WebHelper; using WX.CRM.WebHelper.DoItems; namespace WX.CRM.WEB.Controllers { /// /// 合规控制器 /// public class HgController : BaseController { [Inject] public CACHE_BL cache_BL { get; set; } /// /// 我的违规处罚单 /// /// [HttpGet] [AuthorizeRedirect(Roles = InitRights.CONST_违规通知单)] public ActionResult MyCheckNoticeIndex() { return View(); } [AuthorizeRedirect(Roles = InitRights.CONST_违规通知单)] public JsonResult CheckNoticeManageList(Laypage pager, HgCheckQualitySearchDto dto) { string roleCode = DataCacheHelper.GetCache().Get_RoleCodes(userRoleId); if (!roleCode.Contains("[ZXFZR]"))//中心责任人看全部,如果不是,那么就只能看到自己或者主管责任人的 { dto.eid = Convert.ToInt32(Eid); } dto.PageSize = pager.limit; dto.PageIndex = pager.page; var webapi = cache_BL.GetValue_Parameter(Parameter.Hg_Core_WebApi); var url = $"{webapi}/order/GetCheckQualityNotice"; var result = Utility.PostAjaxData(url, dto.ToJson(), Encoding.UTF8); var data = JsonConvert.DeserializeObject>>(result); var model = new LayuiData() { msg = "数据加载成功!", count = data.Data.Total, code = 0, data = (List)data.Data.Data }; PopupMessageFactory.hgPunishNoticeMessage.SetView(UserId); return Json(model, JsonRequestBehavior.AllowGet); } /// /// 通知单查看 /// /// [AuthorizeRedirect(Roles = InitRights.CONST_违规通知单)] [HttpGet] public ActionResult ShowTZD(int id) { var webapi = cache_BL.GetValue_Parameter(Parameter.Hg_Core_WebApi); var url = $"{webapi}/order/GetCheckQualityInfo"; var result = Utility.GetData(url, "id=" + id, Encoding.UTF8); //var data = JsonConvert.DeserializeObject>>(result); var data = JsonConvert.DeserializeObject>(result); return View(data.Data); } /// /// 处罚单查看 /// /// [AuthorizeRedirect(Roles = InitRights.CONST_违规通知单)] [HttpGet] public ActionResult ShowCFD(int id) { var webapi = cache_BL.GetValue_Parameter(Parameter.Hg_Core_WebApi); var url = $"{webapi}/order/GetCheckQualityInfo"; var result = Utility.GetData(url, "id=" + id, Encoding.UTF8); //var data = JsonConvert.DeserializeObject>>(result); var data = JsonConvert.DeserializeObject>(result); return View(data.Data); } [AuthorizeRedirect(Roles = InitRights.CONST_违规通知单)] [HttpGet] public ActionResult LookNoticeShow(int id) { string roleCode = DataCacheHelper.GetCache().Get_RoleCodes(userRoleId); ViewBag.isCenterManger = roleCode.Contains("[ZXFZR]");//是不是中心负责人 var webapi = cache_BL.GetValue_Parameter(Parameter.Hg_Core_WebApi); var url = $"{webapi}/order/GetCheckQualityInfo"; var result = Utility.GetData(url, "id=" + id, Encoding.UTF8); var data = JsonConvert.DeserializeObject>(result); if (data.Code == 0) { ViewBag.isSale = data.Data.ToEid == Eid.ToString();//是不是责任人 ViewBag.isManage = data.Data.Hg_CheckQuality_NoticeSigns.Where(m => m.NoticeLevel == "manage" && m.eid == Eid).Count() > 0;//是不是责任人主管 } return View(data.Data); } [AuthorizeRedirect(Roles = InitRights.CONST_违规通知单)] [HttpPost] public JsonResult AddNoticeOption(int id, string opinion, string NoticeLevel) { var ret = new retMsg { result = true, retcode = 200 }; try { var webapi = cache_BL.GetValue_Parameter(Parameter.Hg_Core_WebApi); var url = $"{webapi}/Order/AddQualityNoticeOption"; QualityNoticeOption dto = new QualityNoticeOption() { eid = Convert.ToInt32(Eid), id = id, NoticeLevel = NoticeLevel, opinion = opinion }; var result = Utility.PostAjaxData(url, JsonConvert.SerializeObject(dto), Encoding.UTF8); var data = JsonConvert.DeserializeObject>(result); if (data.code == 0) { } else { throw new Exception(data.message); } return Json(ret, JsonRequestBehavior.AllowGet); } catch (Exception ex) { ret = new retMsg { result = false, retcode = 200, retmsg = ex.Message }; return Json(ret, JsonRequestBehavior.AllowGet); } } } }