From c063ecbd8e498d88dd2be38ced8707baa39bf851 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期四, 29 七月 2021 14:14:43 +0800
Subject: [PATCH] 今日开发 工作建议 其他请示 处罚申诉
---
zhengcaioa/Services/AskService.cs | 1
zhengcaioa/DTO/AdmAskMarketingCostDTO.cs | 1
zhengcaioa/Services/WfRunProcessService.cs | 349 +++++++++++++++++++++
zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs | 130 +++++++
zhengcaioa/DTO/AdmBreakPrecedentDTO.cs | 1
zhengcaioa/IServices/IWfRunProcessService.cs | 2
zhengcaioa/zhengcaioa/Controllers/admin/AdmBreakPrecedentController.cs | 20 +
zhengcaioa/zhengcaioa/Views/AdmAsk/AskPunishAppeal.cshtml | 401 +++++++++++++++++++++++++
zhengcaioa/Model/AdmAskMarketingCost.cs | 1
zhengcaioa/Model/zhengcaioaContext.cs | 4
表修改.sql | 15
11 files changed, 922 insertions(+), 3 deletions(-)
diff --git a/zhengcaioa/DTO/AdmAskMarketingCostDTO.cs b/zhengcaioa/DTO/AdmAskMarketingCostDTO.cs
index 7807707..0fbc911 100644
--- a/zhengcaioa/DTO/AdmAskMarketingCostDTO.cs
+++ b/zhengcaioa/DTO/AdmAskMarketingCostDTO.cs
@@ -22,5 +22,6 @@
public string Tongguojujue { get; set; }
public string Step { get; set; }
public string ToUserId { get; set; }
+ public string BreakPrecedentId { get; set; }
}
}
diff --git a/zhengcaioa/DTO/AdmBreakPrecedentDTO.cs b/zhengcaioa/DTO/AdmBreakPrecedentDTO.cs
index 7590214..b93d761 100644
--- a/zhengcaioa/DTO/AdmBreakPrecedentDTO.cs
+++ b/zhengcaioa/DTO/AdmBreakPrecedentDTO.cs
@@ -16,6 +16,7 @@
public string BreakPrecedent { get; set; }
public string BreakThing { get; set; }
public decimal? Chufajine { get; set; }
+ public string ChufajineName { get; set; }
public string QianfaUserId { get; set; }
public string QianfaUserName { get; set; }
public string RecStatus { get; set; }
diff --git a/zhengcaioa/IServices/IWfRunProcessService.cs b/zhengcaioa/IServices/IWfRunProcessService.cs
index db5441c..8dbe3e9 100644
--- a/zhengcaioa/IServices/IWfRunProcessService.cs
+++ b/zhengcaioa/IServices/IWfRunProcessService.cs
@@ -36,5 +36,7 @@
ResultEntity WfAskSuggestion(string DanjuId, string step, string tongguojujue, string Userid, string Content, string title, string version);
ResultEntity WfAskOther(string DanjuId, string step, string tongguojujue, string Userid, string Content, string title, string version);
+
+ ResultEntity WfAskPunishAppeal(string DanjuId, string step, string tongguojujue, string Userid, string Content, string title, string version);
}
}
diff --git a/zhengcaioa/Model/AdmAskMarketingCost.cs b/zhengcaioa/Model/AdmAskMarketingCost.cs
index f47fe4f..7b8bc7c 100644
--- a/zhengcaioa/Model/AdmAskMarketingCost.cs
+++ b/zhengcaioa/Model/AdmAskMarketingCost.cs
@@ -19,5 +19,6 @@
public string CreaterName { get; set; }
public string Tittle { get; set; }
public string ToUserId { get; set; }
+ public string BreakPrecedentId { get; set; }
}
}
diff --git a/zhengcaioa/Model/zhengcaioaContext.cs b/zhengcaioa/Model/zhengcaioaContext.cs
index 5b551f4..39f2cf5 100644
--- a/zhengcaioa/Model/zhengcaioaContext.cs
+++ b/zhengcaioa/Model/zhengcaioaContext.cs
@@ -488,6 +488,10 @@
entity.Property(e => e.Id).HasMaxLength(50);
+ entity.Property(e => e.BreakPrecedentId)
+ .HasMaxLength(50)
+ .HasColumnName("break_precedentId");
+
entity.Property(e => e.Creater)
.IsRequired()
.HasMaxLength(50)
diff --git a/zhengcaioa/Services/AskService.cs b/zhengcaioa/Services/AskService.cs
index cde172e..2e45284 100644
--- a/zhengcaioa/Services/AskService.cs
+++ b/zhengcaioa/Services/AskService.cs
@@ -282,6 +282,7 @@
entity.Feiyong = admAsk.Feiyong;
entity.Remark = admAsk.Remark;
entity.ToUserId = admAsk.ToUserId;
+ entity.BreakPrecedentId = admAsk.BreakPrecedentId;
entity.ShenpiStatus = admAsk.ShenpiStatus;
entity.CreaterName = admAsk.CreaterName;
diff --git a/zhengcaioa/Services/WfRunProcessService.cs b/zhengcaioa/Services/WfRunProcessService.cs
index c8e2598..b99eece 100644
--- a/zhengcaioa/Services/WfRunProcessService.cs
+++ b/zhengcaioa/Services/WfRunProcessService.cs
@@ -4971,5 +4971,354 @@
return result;
}
+ public ResultEntity WfAskPunishAppeal(string DanjuId, string step, string tongguojujue, string Userid, string Content, string title, string version)
+ {
+
+ ResultEntity result = new ResultEntity();
+ result.Result = true;
+
+
+ WfRunProcessDTO wfRunProcessDTO = this.GetList(DanjuId, "09").FirstOrDefault();
+ if (wfRunProcessDTO != null)
+ {
+ version = wfRunProcessDTO.Version;
+ }
+
+
+ if (version == "v1")
+ {
+ if (step == "鎻愪氦")
+ {
+ //鏇存柊娴佺▼瀹炰緥
+ // WfRunProcessDTO wfRunProcessDTO = this.GetList(DanjuId, "09").FirstOrDefault();
+ if (wfRunProcessDTO == null)
+ {
+ //鎻掑叆娴佺▼瀹炰緥
+ wfRunProcessDTO = new WfRunProcessDTO();
+ //wfRunProcessDTO.Applyno =
+ wfRunProcessDTO.Applytime = DateTime.Now;
+ wfRunProcessDTO.Applytiye = "09";
+ wfRunProcessDTO.DanjuId = DanjuId;
+ wfRunProcessDTO.Content = title;
+ wfRunProcessDTO.Step = "澶勭綒绛惧彂浜�";
+ wfRunProcessDTO.ShenpiStatus = "D";
+ wfRunProcessDTO.Version = version;
+ wfRunProcessDTO.RecStatus = "A";
+ wfRunProcessDTO.Creater = Userid;
+ wfRunProcessDTO.Createtime = DateTime.Now;
+ wfRunProcessDTO.Modifier = Userid;
+ wfRunProcessDTO.Modifytime = DateTime.Now;
+ wfRunProcessDTO.Deelurl = "/AdmAsk/AskPunishAppeal?id=" + DanjuId;
+ result = this.save(wfRunProcessDTO);
+ if (result.Result == false)
+ {
+ return result;
+ }
+ //鏌ヨ澶勭悊浜�
+ var danju = _context.AdmAskMarketingCosts.Where(x => x.RecStatus == "A" && x.Id == DanjuId).FirstOrDefault();
+ if (danju == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒板崟鎹�";
+ return result;
+ }
+ //var pltUsers = (from a in _context.PltUsers.Where(x => x.RecStatus == "A" && x.Zhiwustatus == "A")
+ // join b in _context.PltUserRoles.Where(x => x.RecStatus == "A" && x.RoleId == hrPositions.Id) on a.Id equals b.UserId
+ // select a
+ // ).ToList();
+ var admBreakPrecedent = _context.AdmBreakPrecedents.Where(x => x.RecStatus == "A" && x.Id == danju.BreakPrecedentId).FirstOrDefault();
+ if (admBreakPrecedent == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒板缃氬喅瀹�";
+ return result;
+ }
+ else
+ {
+ //鎻掑叆寰呭姙
+ WfNeeddeelDTO wfNeeddeelDTO = new WfNeeddeelDTO();
+ wfNeeddeelDTO.RunProcessId = wfRunProcessDTO.Id;
+ wfNeeddeelDTO.SendUserId = Userid;
+ wfNeeddeelDTO.DeelUserId = admBreakPrecedent.QianfaUserId;
+ wfNeeddeelDTO.Sendtime = DateTime.Now;
+ wfNeeddeelDTO.Resivetime = DateTime.Now;
+ wfNeeddeelDTO.Step = "澶勭綒绛惧彂浜�";
+ wfNeeddeelDTO.NeeddeelType = "1";
+ wfNeeddeelDTO.ChuliStatus = "0";
+ wfNeeddeelDTO.Deelurl = "/AdmAsk/AskPunishAppeal?id=" + DanjuId;
+ wfNeeddeelDTO.Content = "";
+ wfNeeddeelDTO.Sort = 1;
+ wfNeeddeelDTO.RecStatus = "A";
+ wfNeeddeelDTO.Creater = Userid;
+ wfNeeddeelDTO.Createtime = DateTime.Now;
+ wfNeeddeelDTO.Modifier = Userid;
+ wfNeeddeelDTO.Modifytime = wfNeeddeelDTO.Createtime;
+ result = _wfNeeddeelService.save(wfNeeddeelDTO);
+ if (result.Result == false)
+ {
+ return result;
+ }
+ }
+
+ //鎻掑叆鏂扮殑宸插姙
+ WfHistory wfHistoryDTO1 = new WfHistory();
+ wfHistoryDTO1.Id = Guid.NewGuid().ToString();
+ wfHistoryDTO1.RunProcessId = wfRunProcessDTO.Id;
+ wfHistoryDTO1.SendUserId = Userid;
+ wfHistoryDTO1.DeelUserId = wfRunProcessDTO.Creater;
+ wfHistoryDTO1.Sendtime = DateTime.Now;
+ wfHistoryDTO1.Resivetime = DateTime.Now;
+ wfHistoryDTO1.Step = "鎻愪氦";
+ wfHistoryDTO1.NeeddeelType = "1";
+ wfHistoryDTO1.ChuliStatus = "2";
+ wfHistoryDTO1.Deelurl = "/AdmAsk/AskPunishAppeal?id=" + DanjuId;
+ wfHistoryDTO1.Content = "";
+ wfHistoryDTO1.Sort = 1;
+ wfHistoryDTO1.RecStatus = "A";
+ wfHistoryDTO1.Creater = Userid;
+ wfHistoryDTO1.Createtime = DateTime.Now;
+ wfHistoryDTO1.Modifier = Userid;
+ wfHistoryDTO1.Modifytime = wfHistoryDTO1.Createtime;
+ _context.WfHistories.Add(wfHistoryDTO1);
+ _context.SaveChanges();
+ }
+ else
+ {
+ wfRunProcessDTO.Step = "澶勭綒绛惧彂浜�";
+ wfRunProcessDTO.Modifier = Userid;
+ wfRunProcessDTO.Modifytime = DateTime.Now;
+ result = this.save(wfRunProcessDTO);
+ if (result.Result == false)
+ {
+ return result;
+ }
+
+ //鏇存柊寰呭姙
+ List<WfNeeddeelDTO> wfNeeddeelDTOs = _wfNeeddeelService.GetList(wfRunProcessDTO.Id, "鎻愪氦");
+ var wfHistoryDTOs = _mapper.Map<List<WfHistoryDTO>>(wfNeeddeelDTOs);
+
+ var wfHistoryDTO = wfHistoryDTOs.Where(x => x.DeelUserId == Userid).FirstOrDefault();
+ if (wfHistoryDTO == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒颁唬鍔�";
+ return result;
+ }
+ wfHistoryDTO.Content = Content;
+ wfHistoryDTO.ChuliStatus = "2";
+ wfHistoryDTO.Modifier = Userid;
+ wfHistoryDTO.Modifytime = DateTime.Now;
+ var wfHistories = _mapper.Map<List<WfHistory>>(wfHistoryDTOs);
+ foreach (var wfHistory in wfHistories)
+ {
+ _context.WfHistories.Add(wfHistory);
+ }
+ var wfNeeddeels = _mapper.Map<List<WfNeeddeel>>(wfNeeddeelDTOs);
+ foreach (var wfNeeddeel in wfNeeddeels)
+ {
+ //_wfNeeddeelService.ModifyStatus(wfNeeddeel.Id, Userid);
+ _context.WfNeeddeels.Remove(wfNeeddeel);
+ }
+ _context.SaveChanges();
+
+ //鏌ヨ澶勭悊浜�
+ //鏌ヨ澶勭悊浜�
+ var danju = _context.AdmAskMarketingCosts.Where(x => x.RecStatus == "A" && x.Id == DanjuId).FirstOrDefault();
+ if (danju == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒板崟鎹�";
+ return result;
+ }
+ //var pltUsers = (from a in _context.PltUsers.Where(x => x.RecStatus == "A" && x.Zhiwustatus == "A")
+ // join b in _context.PltUserRoles.Where(x => x.RecStatus == "A" && x.RoleId == hrPositions.Id) on a.Id equals b.UserId
+ // select a
+ // ).ToList();
+ var admBreakPrecedent = _context.AdmBreakPrecedents.Where(x => x.RecStatus == "A" && x.Id == danju.BreakPrecedentId).FirstOrDefault();
+ if (admBreakPrecedent == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒板缃氬喅瀹�";
+ return result;
+ }
+ else
+ {
+ //鎻掑叆鏂扮殑寰呭姙
+ WfNeeddeelDTO wfNeeddeelDTO = new WfNeeddeelDTO();
+ wfNeeddeelDTO.RunProcessId = wfRunProcessDTO.Id;
+ wfNeeddeelDTO.SendUserId = Userid;
+ wfNeeddeelDTO.DeelUserId = admBreakPrecedent.QianfaUserId;
+ wfNeeddeelDTO.Sendtime = DateTime.Now;
+ wfNeeddeelDTO.Resivetime = DateTime.Now;
+ wfNeeddeelDTO.Step = "澶勭綒绛惧彂浜�";
+ wfNeeddeelDTO.NeeddeelType = "1";
+ wfNeeddeelDTO.ChuliStatus = "0";
+ wfNeeddeelDTO.Deelurl = "/AdmAsk/AskPunishAppeal?id=" + DanjuId;
+ wfNeeddeelDTO.Content = "";
+ wfNeeddeelDTO.Sort = 2;
+ wfNeeddeelDTO.RecStatus = "A";
+ wfNeeddeelDTO.Creater = Userid;
+ wfNeeddeelDTO.Createtime = DateTime.Now;
+ wfNeeddeelDTO.Modifier = Userid;
+ wfNeeddeelDTO.Modifytime = wfNeeddeelDTO.Createtime;
+ result = _wfNeeddeelService.save(wfNeeddeelDTO);
+ if (result.Result == false)
+ {
+ return result;
+ }
+ }
+ }
+
+
+
+
+ }
+
+
+ if (step == "澶勭綒绛惧彂浜�")
+ {
+ //鏇存柊娴佺▼瀹炰緥
+ //WfRunProcessDTO wfRunProcessDTO = this.GetList(DanjuId, "09").FirstOrDefault();
+ if (wfRunProcessDTO == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒版祦绋嬪疄渚�";
+ return result;
+ }
+ if (wfRunProcessDTO.Step != "澶勭綒绛惧彂浜�")
+ {
+ result.Result = false;
+ result.Message = "褰撳墠姝ラ宸茬粡澶勭悊";
+ return result;
+ }
+ if (tongguojujue == "A")
+ {
+
+ wfRunProcessDTO.Step = "瀹岀粨";
+ wfRunProcessDTO.ShenpiStatus = "A";
+ wfRunProcessDTO.Modifier = Userid;
+ wfRunProcessDTO.Modifytime = DateTime.Now;
+ result = this.save(wfRunProcessDTO);
+ if (result.Result == false)
+ {
+ return result;
+ }
+ //鏇存柊鍗曟嵁
+ var admAskMarketingCost = _context.AdmAskMarketingCosts.Find(DanjuId);
+ if (wfRunProcessDTO == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒板崟鎹�";
+ return result;
+ }
+ admAskMarketingCost.ShenpiStatus = "A";
+ _context.SaveChanges();
+
+ List<WfNeeddeelDTO> wfNeeddeelDTOs = _wfNeeddeelService.GetList(wfRunProcessDTO.Id, "澶勭綒绛惧彂浜�");
+
+ var wfHistoryDTOs = _mapper.Map<List<WfHistoryDTO>>(wfNeeddeelDTOs);
+
+ var wfHistoryDTO = wfHistoryDTOs.Where(x => x.DeelUserId == Userid).FirstOrDefault();
+ if (wfHistoryDTO == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒颁唬鍔�";
+ return result;
+ }
+ wfHistoryDTO.Content = Content;
+ wfHistoryDTO.ChuliStatus = "2";
+ wfHistoryDTO.Modifier = Userid;
+ wfHistoryDTO.Modifytime = DateTime.Now;
+ var wfHistories = _mapper.Map<List<WfHistory>>(wfHistoryDTOs);
+ foreach (var wfHistory in wfHistories)
+ {
+ _context.WfHistories.Add(wfHistory);
+ }
+ var wfNeeddeels = _mapper.Map<List<WfNeeddeel>>(wfNeeddeelDTOs);
+ foreach (var wfNeeddeel in wfNeeddeels)
+ {
+ // _wfNeeddeelService.ModifyStatus(wfNeeddeel.Id, Userid);
+ _context.WfNeeddeels.Remove(wfNeeddeel);
+ }
+ _context.SaveChanges();
+ }
+ else
+ {
+ wfRunProcessDTO.Step = "鎻愪氦";
+ wfRunProcessDTO.Modifier = Userid;
+ wfRunProcessDTO.Modifytime = DateTime.Now;
+ result = this.save(wfRunProcessDTO);
+ if (result.Result == false)
+ {
+ return result;
+ }
+
+ //鏇存柊寰呭姙
+ List<WfNeeddeelDTO> wfNeeddeelDTOs = _wfNeeddeelService.GetList(wfRunProcessDTO.Id, "澶勭綒绛惧彂浜�");
+ var wfHistoryDTOs = _mapper.Map<List<WfHistoryDTO>>(wfNeeddeelDTOs);
+
+ var wfHistoryDTO = wfHistoryDTOs.Where(x => x.DeelUserId == Userid).FirstOrDefault();
+ if (wfHistoryDTO == null)
+ {
+ result.Result = false;
+ result.Message = "鏈壘鍒颁唬鍔�";
+ return result;
+ }
+ wfHistoryDTO.Content = Content;
+ wfHistoryDTO.ChuliStatus = "1";
+ wfHistoryDTO.Modifier = Userid;
+ wfHistoryDTO.Modifytime = DateTime.Now;
+ var wfHistories = _mapper.Map<List<WfHistory>>(wfHistoryDTOs);
+ foreach (var wfHistory in wfHistories)
+ {
+ _context.WfHistories.Add(wfHistory);
+ }
+ var wfNeeddeels = _mapper.Map<List<WfNeeddeel>>(wfNeeddeelDTOs);
+ foreach (var wfNeeddeel in wfNeeddeels)
+ {
+ //_wfNeeddeelService.ModifyStatus(wfNeeddeel.Id, Userid);
+ _context.WfNeeddeels.Remove(wfNeeddeel);
+ }
+ _context.SaveChanges();
+
+
+ //鎻掑叆鏂扮殑寰呭姙
+ WfNeeddeelDTO wfNeeddeelDTO = new WfNeeddeelDTO();
+ wfNeeddeelDTO.RunProcessId = wfRunProcessDTO.Id;
+ wfNeeddeelDTO.SendUserId = Userid;
+ wfNeeddeelDTO.DeelUserId = wfRunProcessDTO.Creater;
+ wfNeeddeelDTO.Sendtime = DateTime.Now;
+ wfNeeddeelDTO.Resivetime = DateTime.Now;
+ wfNeeddeelDTO.Step = "鎻愪氦";
+ wfNeeddeelDTO.NeeddeelType = "1";
+ wfNeeddeelDTO.ChuliStatus = "0";
+ wfNeeddeelDTO.Deelurl = "/AdmAsk/AskPunishAppeal?id=" + DanjuId;
+ wfNeeddeelDTO.Content = "";
+ wfNeeddeelDTO.Sort = 1;
+ wfNeeddeelDTO.RecStatus = "A";
+ wfNeeddeelDTO.Creater = Userid;
+ wfNeeddeelDTO.Createtime = DateTime.Now;
+ wfNeeddeelDTO.Modifier = Userid;
+ wfNeeddeelDTO.Modifytime = wfNeeddeelDTO.Createtime;
+ result = _wfNeeddeelService.save(wfNeeddeelDTO);
+ if (result.Result == false)
+ {
+ return result;
+ }
+
+ }
+
+
+
+ }
+
+
+ }
+
+
+
+ return result;
+ }
+
}
}
diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs
index 419d05e..60ca79c 100644
--- a/zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/admin/AdmAskController.cs
@@ -26,12 +26,14 @@
private readonly IAdmGoodsManageService _admGoodsManageService;
private readonly ILiaotianService _liaotianService;
private readonly IUserService _userService;
+ private readonly IAdmBreakPrecedentService _aAdmBreakPrecedentService;
public AdmAskController(ILogger<AdmAskController> logger, IAskService askService, IHrDeptService hrDeptService, IWfRunProcessService wfRunProcessService
, IWfHistoryService wfHistoryService, IWfNeeddeelService wfNeeddeelService
, IAdmGoodsManageService admGoodsManageService
, ILiaotianService liaotianService
- , IUserService userService)
+ , IUserService userService
+ , IAdmBreakPrecedentService aAdmBreakPrecedentService)
{
_logger = logger;
_hrDeptService = hrDeptService;
@@ -42,6 +44,7 @@
_admGoodsManageService = admGoodsManageService;
_liaotianService = liaotianService;
_userService = userService;
+ _aAdmBreakPrecedentService = aAdmBreakPrecedentService;
}
public IActionResult Askcost(string id = "")
@@ -689,7 +692,7 @@
/// <summary>
- /// 淇濆瓨鐢ㄨ溅鐢宠
+ /// 淇濆瓨宸ヤ綔寤鸿
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
@@ -801,7 +804,7 @@
/// <summary>
- /// 淇濆瓨閿�鍞垂鐢ㄧ敵璇�
+ /// 淇濆瓨鍏朵粬璇风ず
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
@@ -842,5 +845,126 @@
}
return new JsonResult(resultEntity);
}
+
+
+ public IActionResult AskPunishAppeal(string id = "")
+ {
+ AdmAskMarketingCostDTO dto = new AdmAskMarketingCostDTO();
+ var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
+
+
+ //娴佺▼鐩稿叧
+ string shifoubiaoji = "A";
+ string sifoudangqian = "A";
+ string dangqianbuzhou = "鎻愪氦";
+ var lishiyijian = new List<WfHistoryDTO>();
+
+ if (string.IsNullOrEmpty(id))
+ {
+ dto.CreaterName = curentuser.UserName;
+ dto.Tittle = "澶勭綒鐢宠瘔锛�" + curentuser.UserName + "锛�";
+ }
+ else if (dto != null)
+ {
+ dto = _askService.GetAskMarketingCost(id);
+ //dto.FeiyongName = dto.Feiyong.Value.ToString("F2");
+
+ var wfRunProcessDTO = _wfRunProcessService.GetList(dto.Id, "09").FirstOrDefault();
+ if (wfRunProcessDTO == null)
+ {
+ shifoubiaoji = "D";
+ sifoudangqian = "D";
+ }
+ else
+ {
+ dangqianbuzhou = wfRunProcessDTO.Step;
+ //鏌ヨ瀹℃壒杩涘害
+ lishiyijian = _wfHistoryService.GetListshenpi(wfRunProcessDTO.Id);
+ if (wfRunProcessDTO.Step != "鎻愪氦")
+ {
+ shifoubiaoji = "D";
+ }
+
+ //鏌ヨ寰呭姙
+ var chaxundaiban = _wfNeeddeelService.GetListTracking(wfRunProcessDTO.Id, wfRunProcessDTO.Step).Where(x => x.DeelUserId == curentuser.Id).ToList();
+ if (chaxundaiban != null && chaxundaiban.Count > 0)
+ {
+ sifoudangqian = "A";
+ }
+ else
+ {
+ sifoudangqian = "D";
+ }
+
+ }
+
+
+
+
+ }
+
+ ViewBag.shifoubiaoji = shifoubiaoji;
+ ViewBag.sifoudangqian = sifoudangqian;
+ ViewBag.lishiyijian = lishiyijian;
+ ViewBag.dangqianbuzhou = dangqianbuzhou;
+ if (string.IsNullOrEmpty(id))
+ {
+ ViewBag.AdmBreakPrecedentDTOs = _aAdmBreakPrecedentService.GetList(curentuser.Id, DateTime.Now.Date.AddYears(-20), DateTime.Now.Date.AddDays(1)).ToList();
+ }
+ else
+ {
+ ViewBag.AdmBreakPrecedentDTOs = _aAdmBreakPrecedentService.GetList(dto.Creater, DateTime.Now.Date.AddYears(-20), DateTime.Now.Date.AddDays(1)).ToList();
+ }
+
+
+
+
+ ViewData.Model = dto;
+ return View();
+ }
+
+
+ /// <summary>
+ /// 淇濆瓨澶勭綒鐢宠瘔
+ /// </summary>
+ /// <param name="data"></param>
+ /// <returns></returns>
+ [HttpPost]
+ public IActionResult SaveAskPunishAppeal(AdmAskMarketingCostDTO data)
+ {
+ var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
+ ResultEntity resultEntity = new ResultEntity();
+ using (TransactionScope scope = new TransactionScope())
+ {
+ if (data.Step == "鎻愪氦")
+ {
+
+ data.ShenpiStatus = "D";
+ data.RecStatus = "A";
+ data.Creater = curentuser.Id;
+ data.Createtime = DateTime.Now;
+ data.Modifier = data.Creater;
+ data.Modifytime = data.Createtime;
+
+ resultEntity = _askService.SaveAskMarketingCost(data);
+ if (!resultEntity.Result)
+ {
+ return new JsonResult(resultEntity);
+ }
+ }
+
+
+
+ //鍙戣捣娴佺▼鐩稿叧
+
+ resultEntity = _wfRunProcessService.WfAskPunishAppeal(data.Id, data.Step, data.Tongguojujue, curentuser.Id, data.Content, data.Tittle, "v1");
+ if (!resultEntity.Result)
+ {
+ return new JsonResult(resultEntity);
+ }
+ scope.Complete();
+ }
+ return new JsonResult(resultEntity);
+ }
}
}
diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/AdmBreakPrecedentController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/AdmBreakPrecedentController.cs
index a9d96c0..c67cb86 100644
--- a/zhengcaioa/zhengcaioa/Controllers/admin/AdmBreakPrecedentController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/admin/AdmBreakPrecedentController.cs
@@ -153,5 +153,25 @@
ViewData["curentuser"] = curentuser;
return new JsonResult(_admBreakPrecedentService.ModifyStatus(Id, curentuser.Id));
}
+
+
+
+ public IActionResult GetBreakPrecedent(string id)
+ {
+ var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
+ ViewData["curentuser"] = curentuser;
+ ResultEntity<AdmBreakPrecedentDTO> resultEntity = new ResultEntity<AdmBreakPrecedentDTO>();
+ resultEntity.Result = false;
+
+ AdmBreakPrecedentDTO dto = _admBreakPrecedentService.Get(id);
+ dto.UserName = _userService.GetPltUserEntity(dto.UserId).UserName;
+ dto.QianfaUserName = _userService.GetPltUserEntity(dto.QianfaUserId).UserName;
+ dto.BreakTimeName = dto.BreakTime.ToString("yyyy-MM-dd");
+ dto.ChufajineName = dto.Chufajine.HasValue ? dto.Chufajine.Value.ToString("F2") : "";
+ resultEntity.Result = true;
+ resultEntity.DataInfo = dto;
+
+ return new JsonResult(resultEntity);
+ }
}
}
diff --git a/zhengcaioa/zhengcaioa/Views/AdmAsk/AskPunishAppeal.cshtml b/zhengcaioa/zhengcaioa/Views/AdmAsk/AskPunishAppeal.cshtml
new file mode 100644
index 0000000..25110f0
--- /dev/null
+++ b/zhengcaioa/zhengcaioa/Views/AdmAsk/AskPunishAppeal.cshtml
@@ -0,0 +1,401 @@
+锘緻model AdmAskMarketingCostDTO;
+@using DTO;
+@using zhengcaioa.Models;
+@{
+ Layout = null;
+
+ //娴佺▼鐩稿叧
+ string shifoubiaoji = ViewBag.shifoubiaoji as string;
+ string sifoudangqian = ViewBag.sifoudangqian as string;
+ string dangqianbuzhou = ViewBag.dangqianbuzhou as string;
+
+ List<WfHistoryDTO> lishiyijian = ViewData["lishiyijian"] as List<WfHistoryDTO>; //瀹℃壒杩涘害
+
+ List<AdmBreakPrecedentDTO> AdmBreakPrecedentDTOs = ViewData["AdmBreakPrecedentDTOs"] as List<AdmBreakPrecedentDTO>;
+}
+
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
+ <meta name="description" content="">
+ <meta name="author" content="ThemeBucket">
+ <link href="~/css/bootstrap.min.css" rel="stylesheet">
+ <link href="~/css/font-awesome.min.css" rel="stylesheet">
+ <link href="~/css/animate.min.css" rel="stylesheet">
+ <link href="~/css/style.min.css" rel="stylesheet">
+ <link href="~/css/plugins/chosen/chosen.css" rel="stylesheet">
+ <link href="~/js/plugins/layer/skin/layer.css" rel="stylesheet">
+ <link href="~/css/style.min.css" rel="stylesheet">
+ <link href="~/css/plugins/toastr/toastr.min.css" rel="stylesheet" />
+
+ <!-- jqgrid-->
+ <script language="javascript" src="~/js/jquery.min.js" type="text/javascript"></script>
+ <script src="~/js/bootstrap.min.js"></script>
+
+ <!--瀹瑰櫒-->
+ <script language="javascript" src="~/js/plugins/chosen/chosen.jquery.js" type="text/javascript"></script>
+ <script language="javascript" src="~/js/plugins/layer/layer.js" type="text/javascript"></script>
+ <script src="~/js/plugins/toastr/toastr.min.js" type="text/javascript"></script>
+ <script language="javascript" src="~/js/common-layout.js" type="text/javascript"></script>
+ <script src="~/js/plugins/layer/laydate/laydate.js" type="text/javascript"></script>
+ <script src="~/js/TUJS.js"></script>
+
+ <style type="text/css">
+
+ div.clearfix > label {
+ padding-top: 8px;
+ }
+
+ .col-md-1.control-label {
+ padding-right: 0px;
+ font-weight: 400;
+ }
+ </style>
+
+
+</head>
+
+<body class="gray-bg" style="overflow:auto">
+ <form id="fm" method="post">
+ <div class="wrapper wrapper-content" id="ibox-content" style="padding:15px;">
+ <div class="row">
+ <div class="col-sm-12">
+ <div class="ibox float-e-margins">
+ <div id="div_content" class="ibox-content" style="background-color:white;">
+ <div class="row">
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">鍗曟嵁鍚嶇О<i class="red">*</i></label>
+ <div class="col-sm-2 col-md-2">
+ <input type="text" class="form-control" value="@Model.Tittle" name="tittle" id="tittle" validate="RequiredField" autocomplete="off" readonly="readonly">
+
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">鐢宠浜�<i class="red">*</i></label>
+ <div class="col-sm-2 col-md-2">
+ <input type="text" class="form-control" value="@Model.CreaterName" name="createrName" id="createrName" validate="RequiredField" autocomplete="off" readonly="readonly">
+
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">杩濈邯淇℃伅<i class="red">*</i></label>
+ <div class="col-sm-2 col-md-2">
+ <select id="BreakPrecedentId" class="form-control" name="BreakPrecedentId" data-placeholder="閫夋嫨 搴忓垪 ...">
+ <option value="" hassubinfo="true">璇烽�夋嫨</option>
+ @foreach (var item in AdmBreakPrecedentDTOs)
+ {
+ @if (!item.Id.Equals(Model.BreakPrecedentId))
+ {
+ <option value="@item.Id" hassubinfo="true">
+ @item.BreakThing
+ </option>
+ }
+ else
+ {
+ <option value="@item.Id" hassubinfo="true" selected="selected">
+ @item.BreakThing
+ </option>
+ }
+
+ }
+
+
+ </select>
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">澶勭綒鏃堕棿</label>
+ <div class="col-sm-2 col-md-2" id="BreakTimeName">
+
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">鍛樺伐</label>
+ <div class="col-sm-2 col-md-2" id="UserName">
+
+ </div>
+ </div>
+
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">杩濆弽鍒跺害</label>
+ <div class="col-sm-6 col-md-6" id="BreakPrecedent">
+
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">杩濈邯浜嬬敱</label>
+ <div class="col-sm-6 col-md-6" id="BreakThing">
+
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">澶勭綒閲戦(鍏�)</label>
+ <div class="col-sm-2 col-md-2" id="ChufajineName">
+
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">澶勭綒绛惧彂</label>
+ <div class="col-sm-2 col-md-2" id="QianfaUserName">
+
+ </div>
+ </div>
+
+
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">鐢宠瘔鐞嗙敱<i class="red">*</i></label>
+ <div class="col-sm-6 col-md-6">
+ <textarea class="form-control bt" id="Remark" name="Remark" maxlength="500" length="long" style="resize:none;overflow-y:hidden; height:80px;">@Model.Remark</textarea>
+ </div>
+ </div>
+
+
+
+
+
+
+ <div class="clearfix layer-area" style="padding-bottom:15px;" id="shenpiyijian">
+ <label class="text-right col-sm-1 col-md-1 control-label">瀹℃壒鎰忚</label>
+ <div class="col-sm-6 col-md-6">
+ <textarea class="form-control data" id="Content" name="Content" style="resize:none;overflow-y:hidden; height:80px;" maxlength="500"></textarea>
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:15px;">
+ <label class="text-right col-sm-1 col-md-1 control-label">瀹℃壒杩涘害</label>
+ <div class="col-sm-6 col-md-6">
+ <table>
+ @if (lishiyijian.Count > 0)
+ {
+ <tr>
+ <td style="border:1px solid #ccc;width:150px;">姝ラ </td>
+ <td style="border:1px solid #ccc;width:150px;"> 鎵瑰鐘舵��</td>
+ <td style="border:1px solid #ccc;width:150px;">鎵瑰鏃堕棿</td>
+ <td style="border:1px solid #ccc;width:300px;"> 瀹℃壒鎰忚</td>
+ <td style="border:1px solid #ccc;width:100px;"> 鎵瑰浜�</td>
+ </tr>
+ }
+
+ @foreach (var wfHistory in lishiyijian)
+ {
+ <tr>
+ <td style="border:1px solid #ccc;width:150px;">@wfHistory.Step</td>
+ <td style="border:1px solid #ccc;width:150px;">@wfHistory.ChuliStatusName</td>
+ <td style="border:1px solid #ccc;width:150px;">@wfHistory.ModifytimeName</td>
+ <td style="border:1px solid #ccc;width:300px;">@wfHistory.Content</td>
+ <td style="border:1px solid #ccc;width:100px;">@wfHistory.DeelUserIdName</td>
+ </tr>
+ }
+ </table>
+ </div>
+ </div>
+ <div class="clearfix layer-area" style="padding-bottom:60px;">
+
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="ibox-content" id="top" style="z-index:100; position:fixed; height:50px; width:100%;bottom:0; text-align: right; padding-top:8px ">
+ <div class="" style="float:right;" data-bootstro-width="500px">
+ <a class="btn btn-success" href="javascript:void(0)" onclick="_pageAutoClose();" style="margin-left:4px; border-radius:4px;">
+ <i class="glyphicon glyphicon-remove"></i> <span class="bold">鍙栨秷</span>
+ </a>
+ <a class="btn btn-success" id="tijiao" href="javascript:void(0)" onclick="saveSimCost('');" style="margin-left:4px; border-radius:4px;">
+ <i class="glyphicon glyphicon-ok"></i> <span class="bold">鎻愪氦</span>
+ </a>
+
+ <a class="btn btn-success" id="tongyi" href="javascript:void(0)" onclick="saveSimCost('A');" style="margin-left:4px; border-radius:4px;">
+ <span class="bold">鍚屾剰</span>
+ </a>
+
+ <a class="btn btn-success" id="jujue" href="javascript:void(0)" onclick="saveSimCost('D');" style="margin-left:4px; border-radius:4px;">
+ <span class="bold">鎷掔粷</span>
+ </a>
+ <input type="hidden" id="id" name="id" value="@Model.Id" />
+ <input type="hidden" id="Tongguojujue" name="Tongguojujue" value="" />
+ <input type="hidden" id="Step" name="Step" value="@dangqianbuzhou" />
+ </div>
+ </div>
+
+ </form>
+
+ <script type="text/javascript">
+
+ var hh = document.body.clientHeight - $("#top").height() * 2 - 50;
+ $("#div_content").height(hh);
+
+ toastr.options = {
+ "closeButton": true,
+ "debug": false,
+ "progressBar": true,
+ "positionClass": "toast-bottom-right",
+ "onclick": null,
+ "showDuration": "300",
+ "hideDuration": "600",
+ "timeOut": "4500",
+ "extendedTimeOut": "600",
+ "showEasing": "swing",
+ "hideEasing": "linear",
+ "showMethod": "fadeIn",
+ "hideMethod": "fadeOut"
+ };
+
+
+ $(function () {
+
+ if ("@shifoubiaoji" != "A") {
+ $("input").attr('readonly', true);
+ $("textarea").attr('readonly', true);
+ $(':radio').attr('disabled', true);
+ $(':checkbox').attr('disabled', true);
+ $(':button').attr('disabled', true);
+ //$('a').removeAttr('onclick');
+ $('select').attr('disabled', true);
+ $("#fileUp").attr('disabled', true);
+
+ $('.fujianshanchu').removeAttr('onclick');
+
+
+ if ("@sifoudangqian" == "A") {
+ $("#Content").attr('readonly', false);
+ $('#tijiao').hide();
+ } else {
+ $('#tongyi').hide();
+ $('#jujue').hide();
+ $('#tijiao').hide();
+ $('#shenpiyijian').hide();
+ }
+
+ } else {
+
+
+ //瀹℃壒鐩稿叧
+ $('#shenpiyijian').hide();
+ if ("@sifoudangqian" == "A") {
+ $('#tongyi').hide();
+ $('#jujue').hide();
+ $('#BreakPrecedentId').chosen();
+ } else {
+ $('#tongyi').hide();
+ $('#jujue').hide();
+ $('#tijiao').hide();
+ }
+
+
+ }
+
+ })
+
+
+ // 淇濆瓨
+ function saveSimCost(tongyi) {
+
+
+ if ($.trim($("#BreakPrecedentId").val()) == '') {
+ toastr.warning("杩濈邯淇℃伅涓嶈兘涓虹┖");
+ return;
+ }
+ if ($.trim($("#Remark").val()) == '') {
+ toastr.warning("鐢宠瘔鐞嗙敱涓嶈兘涓虹┖");
+ return;
+ }
+
+ $("#Tongguojujue").val(tongyi);
+
+ $.ajax({
+ type: "POST",
+ url: "/AdmAsk/SaveAskPunishAppeal",
+ dataType: "json",
+ global: false,
+ data: $('#fm').serialize(),
+ success: function (data) {
+
+ if (data.Result) {
+ parent.layer.msg('鎻愪氦鎴愬姛', { icon: 6 });
+ try {
+ _pageAutoClose();//鑷姩鍏抽棴椤甸潰鏂规硶
+ }
+ catch (err) {
+ var pathname = window.location.pathname;
+ var search = window.location.search;
+ parent._CloseTab1(pathname + search);
+ }
+ }
+ else {
+ parent.layer.msg(data.Message, { icon: 5 });
+ }
+
+ },
+ error: function () {
+ parent.layer.msg('澶辫触', { icon: 5 });
+ }
+ });
+ }
+
+
+
+
+ $("#BreakPrecedentId").change(function () {
+
+ var BreakPrecedentId = $("#BreakPrecedentId").val();
+ if (BreakPrecedentId != "") {
+ $.ajax({
+ type: "GET",
+ url: "/AdmBreakPrecedent/GetBreakPrecedent?id=" + BreakPrecedentId,
+ dataType: "json",
+ global: false,
+ data: "",
+ success: function (data) {
+ if (data.Result) {
+ var DataInfo = data.DataInfo;
+
+
+ $("#BreakTimeName").html(DataInfo.BreakTimeName);
+ $("#UserName").html(DataInfo.UserName);
+ $("#BreakPrecedent").html(DataInfo.BreakPrecedent);
+ $("#BreakThing").html(DataInfo.BreakThing);
+ $("#ChufajineName").html(DataInfo.ChufajineName);
+ $("#QianfaUserName").html(DataInfo.QianfaUserName);
+
+ } else {
+ parent.layer.msg('澶辫触', { icon: 5 });
+ }
+
+
+ },
+ error: function () {
+
+
+ parent.layer.msg('澶辫触', { icon: 5 });
+ }
+ });
+ } else {
+ $("#BreakTimeName").html("");
+ $("#UserName").html("");
+ $("#BreakPrecedent").html("");
+ $("#BreakThing").html("");
+ $("#ChufajineName").html("");
+ $("#QianfaUserName").html("");
+ }
+
+ });
+
+ $("#BreakPrecedentId").trigger("change");
+
+
+
+ function _pageAutoClose() {
+ parent.window._reloadPageData();
+ var index = parent.layer.getFrameIndex(window.name);
+ parent.layer.isRefresh = true;
+ parent.layer.closeAll('loading');
+ parent.layer.close(index);
+ return false;
+ }
+ </script>
+</body>
+</html>
\ No newline at end of file
diff --git "a/\350\241\250\344\277\256\346\224\271.sql" "b/\350\241\250\344\277\256\346\224\271.sql"
index 625f86c..82e0866 100644
--- "a/\350\241\250\344\277\256\346\224\271.sql"
+++ "b/\350\241\250\344\277\256\346\224\271.sql"
@@ -3,6 +3,21 @@
GO
+ALTER TABLE [dbo].[ADM_AskMarketingCost] ADD [break_precedentId] [nvarchar](50) NULL;
+GO
+
+
+
+
+
+
+
+
+
+USE [zhengcaioa]
+GO
+
+
ALTER TABLE [dbo].[ADM_AskMarketingCost] ADD [ToUserId] [nvarchar](50) NULL;
GO
--
Gitblit v1.9.1