username@email.com
2022-08-27 6e2b929cf381e2320ba6e7dec56c0371124d2b51
zhengcaioa/zhengcaioa/Controllers/Customer/IntentionVisitController.cs
@@ -18,6 +18,7 @@
using CommonToolsCore;
using static CommonToolsCore.SendMailHelper;
using System.Net.Mail;
using System.Transactions;
namespace zhengcaioa.Controllers.Customer
{
@@ -31,10 +32,11 @@
        private readonly IUserService _userService;
        private readonly IIntentionVisitService _intentionVisitService;
        private readonly ICusFangwenjiluService _cusFangwenjiluService;
        private readonly IPltPageService _pltPageService;
        public IntentionVisitController(ILogger<IntentionVisitController> logger, IProjectService projectService, ILiaotianService liaotianService, IIntentionCustomerService intentionCustomerService, IUserService userService, IIntentionVisitService intentionVisitService
             , ICusFangwenjiluService cusFangwenjiluService)
             , ICusFangwenjiluService cusFangwenjiluService
             , IPltPageService pltPageService)
        {
            _logger = logger;
            _projectService = projectService;
@@ -43,10 +45,11 @@
            _userService = userService;
            _intentionVisitService = intentionVisitService;
            _cusFangwenjiluService = cusFangwenjiluService;
            _pltPageService = pltPageService;
        }
        public IActionResult Index()
        public IActionResult Index(string Viscustomer = "", string IsYwjl = "")
        {
            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
            ViewData["curentuser"] = curentuser;
@@ -58,31 +61,57 @@
            actionEntity.PageIco = "fa fa-search";
            actionEntity.ActionName = "查询";
            actionlist.Add(actionEntity);
            ActionEntity actionEntity1 = new ActionEntity();
            actionEntity1.OpenType = 0;
            actionEntity1.ActionUrl = "";
            actionEntity1.ActionFun = "Add";
            actionEntity1.PageIco = "fa fa-plus";
            actionEntity1.ActionName = "新增";
            actionlist.Add(actionEntity1);
            //ActionEntity actionEntity1 = new ActionEntity();
            //actionEntity1.OpenType = 0;
            //actionEntity1.ActionUrl = "";
            //actionEntity1.ActionFun = "Add";
            //actionEntity1.PageIco = "fa fa-plus";
            //actionEntity1.ActionName = "新增";
            //actionlist.Add(actionEntity1);
            var pageEntities = _pltPageService.GetUserPage(curentuser.Id, "/IntentionVisit/Index/");
            var pageEntities1 = pageEntities.Where(x => x.PageMethod == "01").ToList();
            foreach (var pageEntity in pageEntities1)
            {
                ActionEntity actionEntity1 = new ActionEntity();
                actionEntity1.OpenType = pageEntity.OpenType;
                actionEntity1.ActionUrl = "";
                actionEntity1.ActionFun = pageEntity.PageShortcut;
                actionEntity1.PageIco = pageEntity.PageIco;
                actionEntity1.ActionName = pageEntity.PageName;
                actionlist.Add(actionEntity1);
            }
            ViewData["ActionInfo"] = actionlist;
            ViewBag.khlx = _liaotianService.GetSYScode("CooperatecustomCustomer", "khlx").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
            ViewBag.khly = _liaotianService.GetSYScode("CooperatecustomCustomer", "khly").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
            ViewBag.khly = _liaotianService.GetSYScode("IntentionCustomer", "khly").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
            ViewBag.hyfl = _liaotianService.GetSYScode("CooperatecustomCustomer", "hyfl").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
            ViewBag.users = _userService.GetList().Where(x => x.IsYwjl == "A").Select(x => new { code = x.Id, label = x.UserName }).ToList();
            ViewBag.creater = _userService.GetList().Select(x => new { code = x.Id, label = x.UserName }).ToList();
            ViewBag.Viscustomer = Viscustomer;
            ViewBag.IsYwjl = IsYwjl;
            ViewBag.ShengDropDown = _projectService.Getsheng().Select(x => new { code = x.CodeId, label = x.Name }).ToList();
            var areaDTOs = _projectService.Getsheng().ToList();
            foreach (var areaDTO in areaDTOs)
            {
                if (areaDTO.CodeId == "510000")
                {
                    areaDTOs.Remove(areaDTO);
                    break;
                }
            }
            var areaDTOsic = new Area();
            areaDTOsic.CodeId = "510000";
            areaDTOsic.Name = "四川省";
            areaDTOsic.ParentId = "0     ";
            areaDTOs.Insert(1, areaDTOsic);
            ViewBag.ShengDropDown = areaDTOs.Select(x => new { code = x.CodeId, label = x.Name }).ToList();
            return View();
        }
@@ -93,20 +122,56 @@
            return new JsonResult(_intentionVisitService.SearchByPaging(search));
        }
        public IActionResult Edit(string id = null)
        public IActionResult Edit(string id = null,string Viscustomer = null,string IsYwjl = "")
        {
            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
            ViewData["curentuser"] = curentuser;
            var pageEntities = _pltPageService.GetUserPage(curentuser.Id, "/IntentionVisit/Index/");
            var pageEntities2 = pageEntities.Where(x => x.PageMethod == "02").ToList();
            ViewData["ActionInfo2"] = pageEntities2;
            IntentionVisitDTO dto = new IntentionVisitDTO();
            if (!String.IsNullOrEmpty(id))
            {
                dto = _intentionVisitService.Get(id);
                //dto.Viscustomer = Viscustomer;
                IntentionVisitDTOSearch searchEntity = new IntentionVisitDTOSearch();
                searchEntity.page = 1;
                searchEntity.rows = 1000;
                searchEntity.Viscustomer = dto.Viscustomer;
                var resultDataEntity = _intentionVisitService.SearchByPaging(searchEntity);
                ViewData["visitlishi"] = resultDataEntity.DataList;
            }
            else
            {
                dto.Vistime = DateTime.Now;
                if (!string.IsNullOrWhiteSpace(Viscustomer))
                {
                    dto.Viscustomer = Viscustomer;
                    IntentionVisitDTOSearch searchEntity = new IntentionVisitDTOSearch();
                    searchEntity.page = 1;
                    searchEntity.rows = 1000;
                    searchEntity.Viscustomer = Viscustomer;
                   var resultDataEntity =  _intentionVisitService.SearchByPaging(searchEntity);
                    ViewData["visitlishi"] = resultDataEntity.DataList;
                }
                else
                {
                    ViewData["visitlishi"] = new List<IntentionVisitDTO>();
                }
                dto.VisType = "01";
                dto.Jtype = "02";
                //dto.Jdr = "02";
                dto.Talk = "介绍公司业务内容和产品。";
                dto.Yx = "03";
                dto.Jy = "02";
                dto.Zw = "02";
            }
@@ -120,11 +185,30 @@
            ViewData["yx"] = _liaotianService.GetSYScode("CooperVisit", "yx");
            ViewData["jy"] = _liaotianService.GetSYScode("CooperVisit", "jy");
            ViewData["Duanxin"] = _intentionVisitService.GetListDuanxin();
            ViewBag.IsYwjl = IsYwjl;
            ViewData.Model = dto;
            return View();
        }
        public IActionResult getDuanxin(string id)
        {
            ResultEntity resultEntity = new ResultEntity();
            resultEntity.Result = true;
            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
            ViewData["curentuser"] = curentuser;
          var intentionVisitDuanxinDTO =   _intentionVisitService.GetDuanxin(id);
            if(intentionVisitDuanxinDTO!=null && !string.IsNullOrEmpty(intentionVisitDuanxinDTO.DuanxinNeirong))
            {
                resultEntity.Message = string.Format(intentionVisitDuanxinDTO.DuanxinNeirong, curentuser.UserName, curentuser.Phone);
            }
            return new JsonResult(resultEntity);
        }
@@ -147,8 +231,77 @@
            }
            data.Modifier = curentuser.Id;
            data.Modifytime = DateTime.Now;
            ResultEntity resultEntity = new ResultEntity();
            using (TransactionScope scope = new TransactionScope())
            {
                resultEntity = _intentionVisitService.save(data);
                if (!resultEntity.Result)
                {
                    return new JsonResult(resultEntity);
                }
                if (!string.IsNullOrEmpty(data.IsYwjl))
                {
                    IntentionCustomerDTO intentionCustomerDTO = _intentionCustomerService.Get(data.Viscustomer);
                    intentionCustomerDTO.Zuijinzhuizongtime = data.Vistime;
                    if (string.IsNullOrEmpty(intentionCustomerDTO.Ywjl))
                    {
                        intentionCustomerDTO.Ywjl = curentuser.Id;
                    }
                    resultEntity = _intentionCustomerService.save(intentionCustomerDTO);
                    if (!resultEntity.Result)
                    {
                        return new JsonResult(resultEntity);
                    }
                }
                else if (data.Jy == "05")
                {
                    IntentionCustomerDTO intentionCustomerDTO = _intentionCustomerService.Get(data.Viscustomer);
                    intentionCustomerDTO.Yixiang = data.Jy;
                    intentionCustomerDTO.Yixiangtime = data.Vistime;
                    intentionCustomerDTO.Dianxiaozhuanyuan = curentuser.Id;
                    resultEntity = _intentionCustomerService.save(intentionCustomerDTO);
                    if (!resultEntity.Result)
                    {
                        return new JsonResult(resultEntity);
                    }
            ResultEntity resultEntity = _intentionVisitService.save(data);
                }
                if (!string.IsNullOrEmpty(data.DuanxinNeirong))
                {
                    IntentionCustomerDTO intentionCustomerDTO = _intentionCustomerService.Get(data.Viscustomer);
                    if(intentionCustomerDTO!=null && ( !string.IsNullOrEmpty(intentionCustomerDTO.Phone) ||  !string.IsNullOrEmpty(intentionCustomerDTO.Tel)))
                    {
                        string sss = SMSHelper.PushWToUserMES(string.IsNullOrEmpty(intentionCustomerDTO.Phone)? intentionCustomerDTO.Tel: intentionCustomerDTO.Phone,  data.DuanxinNeirong   );
                        if (int.Parse(sss) <= 0)
                        {
                            resultEntity.Result = false;
                            resultEntity.Message = "短信发送失败";
                        }
                        if (!resultEntity.Result)
                        {
                            return new JsonResult(resultEntity);
                        }
                    }
                    else
                    {
                        resultEntity.Result = false;
                        resultEntity.Message = "客户无手机号码";
                        return new JsonResult(resultEntity);
                    }
                }
                scope.Complete();
            }
            return new JsonResult(resultEntity);
        }
@@ -203,7 +356,7 @@
            {
                for(int i=0;i< result.Count; i++)
                {
                    number.Append(result[i].Phone);
                    number.Append(string.IsNullOrEmpty(result[i].Phone)? result[i].Tel: result[i].Phone);
                    customename += result[i].Name + ",";
                    if (i!= result.Count - 1)
                    {
@@ -217,7 +370,7 @@
                resultEntity.Message = "无联系人";
            }
            string sss = SMSHelper.PushWToUserMES(number.ToString(), neirong);
            string sss = SMSHelper.PushWToUserMES(number.ToString(),   neirong  );
            if (int.Parse(sss) <= 0)
            {
                resultEntity.Result = false;
@@ -227,7 +380,7 @@
            CusFangwenjiluDTO dto = new CusFangwenjiluDTO();
            dto.Fasongfangshi = "01";
            dto.Fasongneirong = neirong;
            dto.Jieshouren = baifangid;
            dto.Jieshouren = baifangid.Length > 2000 ? baifangid.Substring(0, 2000) : baifangid; ;
            dto.RecStatus = "A";
            dto.Creater = curentuser.Id;
            dto.Modifytime = DateTime.Now;
@@ -306,7 +459,7 @@
            CusFangwenjiluDTO dto = new CusFangwenjiluDTO();
            dto.Fasongfangshi = "02";
            dto.Fasongneirong = neirong;
            dto.Jieshouren = baifangid;
            dto.Jieshouren = baifangid.Length > 2000 ? baifangid.Substring(0, 2000) : baifangid; ;
            dto.RecStatus = "A";
            dto.Creater = curentuser.Id;
            dto.Modifytime = DateTime.Now;