From 402f9568e48e6e1a9d29d37dcda46737047425d5 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期四, 25 十一月 2021 10:49:10 +0800 Subject: [PATCH] 专家通讯录优化 --- zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs | 411 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 399 insertions(+), 12 deletions(-) diff --git a/zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs b/zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs index 006781b..efaacce 100644 --- a/zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs @@ -11,10 +11,13 @@ using zhengcaioa.IService; using System.IO; using Microsoft.Extensions.Configuration; +using System.Transactions; +using CommonToolsCore; +using System.Text; namespace zhengcaioa.Controllers.Expert { - [CheckLogin] + public class ExpertController : Controller { private readonly ILogger<ExpertController> _logger; @@ -22,14 +25,27 @@ private readonly ILiaotianService _liaotianService; private readonly IProjectService _projectService; private readonly IUserService _userService; - public ExpertController(ILogger<ExpertController> logger, IExpertService expertService, IProjectService projectService, ILiaotianService liaotianService, IUserService userService) + private readonly IFiSubjectService _ifiSubjectService; + private readonly ICooperOrderService _cooperOrderService; + private readonly IFiAccountService _fiAccountService; + private readonly IFiAccountRecordService _iFiAccountRecordService; + private readonly IAreaService _iAreaService; + public ExpertController(ILogger<ExpertController> logger, IExpertService expertService, IProjectService projectService, ILiaotianService liaotianService, IUserService userService + , IFiSubjectService ifiSubjectService, ICooperOrderService cooperOrderService, IFiAccountService fiAccountService, IFiAccountRecordService iFiAccountRecordService + , IAreaService iAreaService) { _logger = logger; _expertService = expertService; _projectService = projectService; _liaotianService = liaotianService; _userService = userService; + _ifiSubjectService = ifiSubjectService; + _cooperOrderService = cooperOrderService; + _fiAccountService = fiAccountService; + _iFiAccountRecordService = iFiAccountRecordService; + _iAreaService = iAreaService; } + [CheckLogin] public IActionResult Index() { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); @@ -55,7 +71,7 @@ ViewBag.level = _liaotianService.GetSYScode("experts", "level").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); ViewBag.Province = _projectService.Getsheng().Select(x => new { code = x.CodeId, label = x.Name }).ToList(); // ViewBag.City = _projectService.Getshi( ).Select(x => new { code = x.CodeId, label = x.Name }).ToList(); - ViewBag.level = _liaotianService.GetSYScode("experts", "level").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + ViewBag.ReviewItem = _liaotianService.GetSYScode("experts", "ReviewItem").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); return View(); } @@ -64,15 +80,52 @@ public string GetList(ExpertDTOSearch search) { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + search.ShenheStatus = "A"; ViewData["curentuser"] = curentuser; return JsonConvert.SerializeObject(_expertService.SearchByPaging(search)); } #endregion - #region 缂栬緫 - public ActionResult Edit(string id = null) + [CheckLogin] + public IActionResult Indexziliao() + { + 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 actionEntity4 = new ActionEntity(); + actionEntity4.OpenType = 0; + actionEntity4.ActionUrl = ""; + actionEntity4.ActionFun = "Duanxin"; + actionEntity4.PageIco = ""; + actionEntity4.ActionName = "缇ゅ彂鐭俊"; + actionlist.Add(actionEntity4); + ViewData["ActionInfo"] = actionlist; + + ViewBag.expertType = _liaotianService.GetSYScode("experts", "expertType").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + ViewBag.level = _liaotianService.GetSYScode("experts", "level").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + ViewBag.Province = _projectService.Getsheng().Select(x => new { code = x.CodeId, label = x.Name }).ToList(); + // ViewBag.City = _projectService.Getshi( ).Select(x => new { code = x.CodeId, label = x.Name }).ToList(); + ViewBag.ReviewItem = _liaotianService.GetSYScode("experts", "ReviewItem").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + + + ViewBag.users = _userService.GetList().Select(x => new { code = x.Id, label = x.UserName }).ToList(); + ViewBag.YearJiou = _liaotianService.GetSYScode("experts", "year_jiou").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + return View(); + } + + + #region 缂栬緫 + [CheckLogin] + public ActionResult Edit(string id = null, string Province = null, string City = null) { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); @@ -95,8 +148,28 @@ } else { - expertDTO.Province = "510000"; - expertDTO.City = "510100"; + if (string.IsNullOrEmpty(Province)) + { + expertDTO.Province = "510000"; + } + else + { + expertDTO.Province = Province; + } + if (string.IsNullOrEmpty(City)) + { + expertDTO.City = "510100"; + } + else + { + expertDTO.City = City; + } + expertDTO.ExpertType = "4"; + expertDTO.Level = "1"; + expertDTO.CertiNumber = "SC"; + expertDTO.InfoSource = "01"; + expertDTO.Sex = "1"; + expertDTO.YearJiou = "1"; } // var sheng = _projectService.Getsheng(); @@ -105,11 +178,12 @@ ViewBag.sex = _liaotianService.GetSYScode("plt_user", "sex");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); ViewBag.expertType = _liaotianService.GetSYScode("experts", "expertType");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); ViewBag.level = _liaotianService.GetSYScode("experts", "level");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); - + ViewBag.ReviewItem = _liaotianService.GetSYScode("experts", "ReviewItem");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); ViewBag.Province = _projectService.Getsheng();//.Select(x => new { code = x.CodeId, label = x.Name }).ToList(); ViewBag.City = _projectService.Getshi(expertDTO.Province);//.Select(x => new { code = x.CodeId, label = x.Name }).ToList(); + ViewBag.YearJiou = _liaotianService.GetSYScode("experts", "year_jiou");//.Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); ViewData.Model = expertDTO; return View(); } @@ -175,11 +249,13 @@ /// <param name="data">宀椾綅瀹炰綋绫诲璞�</param> /// <returns></returns> [HttpPost] - + [CheckLogin] public string Save(ExpertDTO data) { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); ViewData["curentuser"] = curentuser; + data.ShenheStatus = "A"; + data.ReviewItem = data.ReviewItemSelect; data.RecStatus = "A"; if (String.IsNullOrEmpty(data.Id)) { @@ -206,7 +282,7 @@ /// <param name="info">瀹炰綋</param> /// <returns></returns> /// - + [CheckLogin] public string Nullify(string Id = "") { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); @@ -269,6 +345,7 @@ /// <param name="data">淇濆瓨鎺ㄥ箍璁板綍</param> /// <returns></returns> [HttpPost] + [CheckLogin] public string SavePromte(ExpertPromoteDTO data) { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); @@ -289,6 +366,7 @@ #endregion #region 涓撳娲惧伐 + [CheckLogin] public IActionResult ExpertOrderDispatch() { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); @@ -311,14 +389,15 @@ ViewBag.HuifangStatus = _liaotianService.GetSYScode("CooperOrder", "huifang_status").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); ViewBag.PingjiaStatus = _liaotianService.GetSYScode("CooperOrder", "pingjia_status").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); - + ViewBag.Expert = _expertService.GetList().Select(x => new { code = x.Id, label = x.Name }).ToList(); return View(); } - + [CheckLogin] public string GetOrderList(ExpertOrderDipatchDTOSearch search) { return JsonConvert.SerializeObject(_expertService.SearchOrderDispatch(search)); } + [CheckLogin] public IActionResult Dispatch(string orderid) { @@ -327,6 +406,7 @@ ViewBag.OrderId = orderid; return View(); } + [CheckLogin] public string SaveDispatch(ExpertOrderDipatchDTO data) { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); @@ -336,6 +416,7 @@ { data.Creater = curentuser.Id; data.Createtime = DateTime.Now; + data.sort = "D"; } data.Modifier = curentuser.Id; data.Modifytime = DateTime.Now; @@ -346,5 +427,311 @@ } #endregion + + + #region 涓撳璐圭敤缁撶畻 + [CheckLogin] + public IActionResult ExpertFeiyong() + { + 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 = "Jiesuan"; + actionEntity1.PageIco = "fa fa-plus-square"; + actionEntity1.ActionName = "缁撶畻"; + actionlist.Add(actionEntity1); + + + ViewData["ActionInfo"] = actionlist; + + + ViewBag.Expert = _expertService.GetList().Select(x => new { code = x.Id, label = x.Name }).ToList(); + ViewBag.shifou = _liaotianService.GetSYScode("system", "shifou").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + return View(); + } + + [CheckLogin] + public string GetJiesuanList(ExpertOrderDipatchDTOSearch search) + { + return JsonConvert.SerializeObject(_expertService.SearchJiesuan(search)); + } + + + public IActionResult EditJiesuan(string id) + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + decimal Money = 0; + FiOrderrecievemoneyDTO dto = new FiOrderrecievemoneyDTO(); + if (!String.IsNullOrEmpty(id)) + { + string[] ids = id.Split(','); + foreach(var iddd in ids) + { + var expertOrderDipatchDTO = _expertService.GetDispatch(iddd); + if(expertOrderDipatchDTO.sort != "A") + { + Money += expertOrderDipatchDTO.Money.Value; + } + + + } + } + dto.PayTime = DateTime.Now; + dto.Id = id; + + dto.Money = Money; + + + ViewData.Model = dto; + + ViewBag.PayType = _liaotianService.GetSYScode("fi_account", "accounttype"); + ViewBag.accounttype = _liaotianService.GetSYScode("fi_account", "accounttype"); + ViewBag.FiSubject = _ifiSubjectService.GetList().Where(x => x.Subjecttype == "02").ToList(); + + + + + + ViewData.Model = dto; + return View(); + } + + + /// <summary> + /// 淇濆瓨 + /// </summary> + /// <param name="data">宀椾綅瀹炰綋绫诲璞�</param> + /// <returns></returns> + /// + [HttpPost] + public IActionResult SaveJiesuan(FiOrderrecievemoneyDTO data) + { + ResultEntity resultEntity = new ResultEntity(); + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + using (TransactionScope scope = new TransactionScope()) + { + string[] ids = data.Id.Split(','); + foreach (var iddd in ids) + { + var expertOrderDipatchDTO = _expertService.GetDispatch(iddd); + if(expertOrderDipatchDTO.sort == "A") + { + resultEntity.Result = false; + resultEntity.Message = "瀛樺湪宸茬粡缁撶畻鐨勮鍗�"; + return new JsonResult(resultEntity); + } + + expertOrderDipatchDTO.sort = "A"; + expertOrderDipatchDTO.Modifier = curentuser.Id; + expertOrderDipatchDTO.Modifytime = DateTime.Now; + resultEntity = _expertService.SaveDispatch(expertOrderDipatchDTO); + if (!resultEntity.Result) + { + return new JsonResult(resultEntity); + } + var expertDTO = _expertService.Get(expertOrderDipatchDTO.ExpertId); + var orderDTO = _cooperOrderService.Get(expertOrderDipatchDTO.OrderId); + //鎻掑叆鏀嚭璁板綍 + FiAccountRecordDTO data1 = new FiAccountRecordDTO(); + data1.RecStatus = "A"; + data1.Creater = curentuser.Id; + data1.Createtime = data.PayTime; + data1.Modifier = curentuser.Id; + data1.Modifytime = data.PayTime; + data1.SubjectId = data.SubjectId; + data1.AccountId = data.AccountId; + data1.Money = expertOrderDipatchDTO.Money; + data1.PaymentUnit = expertDTO.Name; + data1.OperationalMatters = expertDTO.Name +" " +orderDTO.OrderNo+ "缁撶畻璐圭敤" ; + + + + FiAccountDTO firmAccount = _fiAccountService.Get(data1.AccountId); + + + data1.RecordTypeId = "2";//鏀跺叆 + data1.Department = ""; + + + firmAccount.AllExpenses = (firmAccount.AllExpenses ?? 0) + data1.Money; + firmAccount.Balance = (firmAccount.Balance ?? 0) - data1.Money; + + + + data1.AccountMoney = firmAccount.Balance; + resultEntity = _iFiAccountRecordService.save(data1); + if (!resultEntity.Result) + { + return new JsonResult(resultEntity); + } + + + resultEntity = _fiAccountService.save(firmAccount); + if (!resultEntity.Result) + { + return new JsonResult(resultEntity); + } + + } + scope.Complete(); + } + + return new JsonResult(resultEntity); + } + + + + + + #endregion + + + + + public IActionResult Duanxin(string id = null) + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + ViewData["baifangid"] = id; + + + + return View(); + } + + + + public IActionResult Fasong(string neirong, string baifangid) + { + ResultEntity resultEntity = new ResultEntity(); + resultEntity.Result = true; + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + List<ExpertDTO> result = new List<ExpertDTO>(); + + if (baifangid != null) + { + result = _expertService.GetList(baifangid.Split(",")); + } + else + { + resultEntity.Result = false; + resultEntity.Message = "鏃犺仈绯讳汉鍙风爜"; + } + string customename = ""; + StringBuilder number = new StringBuilder(); ; + if (result != null && result.Count > 0) + { + for (int i = 0; i < result.Count; i++) + { + number.Append(string.IsNullOrEmpty(result[i].Phone1) ? result[i].Phone2 : result[i].Phone1); + customename += result[i].Name + ","; + if (i != result.Count - 1) + { + number.Append(","); + } + } + } + else + { + resultEntity.Result = false; + resultEntity.Message = "鏃犺仈绯荤數璇�"; + } + + string sss = SMSHelper.PushWToUserMES(number.ToString(), "鎮ㄥソ锛屼笓瀹�. 璇︽儏瑙侊細" + neirong); + if (int.Parse(sss) <= 0) + { + resultEntity.Result = false; + resultEntity.Message = "鐭俊鍙戦�佸け璐�"; + + } + + _logger.LogInformation(curentuser.UserName + "鍙戦�佺煭淇$粰涓撳" + customename); + return new JsonResult(resultEntity); + } + + + /// <summary> + /// 鍒ゆ柇韬唤璇佹槸鍚﹂噸澶� + /// </summary> + /// <param name="shengid">鐪乮d</param> + /// <returns></returns> + /// + [CheckLogin] + public string IdCardChongfu(string IdCard = "",string Id = "") + { + ResultEntity resultEntity = _expertService.IdCardChongfu(IdCard, Id); + + return JsonConvert.SerializeObject(resultEntity); + + } + + + /// <summary> + /// 鍒ゆ柇涓撳璇佹槸鍚﹂噸澶� + /// </summary> + /// <param name="shengid">鐪乮d</param> + /// <returns></returns> + /// + [CheckLogin] + public string CertiNumberChongfu(string CertiNumber = "", string Id = "") + { + ResultEntity resultEntity = _expertService.CertiNumberChongfu(CertiNumber, Id); + if (resultEntity.Result) + { + //鎷嗚В涓撳璇佸彿 + + var CertiNumber11 = CertiNumber.Replace("SC", ""); + var sysCodeDtls = _liaotianService.GetSYScode("experts", "City"); + + var chengshis = sysCodeDtls.Where(x => CertiNumber11.StartsWith(x.CodeSn)).ToList(); + if (chengshis.Count > 0) + { + var areaDTOs = _iAreaService.GetList(); + + var chengshi = areaDTOs.Where(x => x.Name == chengshis[0].Comments).FirstOrDefault(); + if (chengshi != null) + { + resultEntity.Message = chengshi.CodeId; + resultEntity.Remark = chengshi.ParentId; + } + + } + + } + + return JsonConvert.SerializeObject(resultEntity); + + } + + + /// <summary> + /// 鍒ゆ柇鐢佃瘽鏄惁閲嶅 + /// </summary> + /// <param name="shengid">鐪乮d</param> + /// <returns></returns> + /// + [CheckLogin] + public string Phone1Chongfu(string Phone1 = "", string Id = "") + { + ResultEntity resultEntity = _expertService.Phone1Chongfu(Phone1, Id); + + return JsonConvert.SerializeObject(resultEntity); + + } + } } -- Gitblit v1.9.1