username@email.com
2023-02-02 db0147994ef4899702ac864ac0794a79fe980416
zhengcaioa/zhengcaioa/Controllers/Customer/CooperatecustomCustomerController.cs
@@ -16,6 +16,7 @@
using zhengcaioa.Models;
using zhengcaioa.IService;
using System.Transactions;
using System.IdentityModel.Tokens.Jwt;
namespace zhengcaioa.Controllers.Customer
{
@@ -30,11 +31,14 @@
        private readonly IHrDeptService _hrDeptService;
        private readonly ISysAttachmentService _sysAttachmentService;
        private readonly IPltPageService _pltPageService;
        private readonly ICooperVisitService _cooperVisitService;
        private readonly IIntentionCustomerService _intentionCustomerService;
        public CooperatecustomCustomerController(ILogger<CooperatecustomCustomerController> logger, IProjectService projectService, ILiaotianService liaotianService, ICooperatecustomCustomerService cooperatecustomCustomerService, IUserService userService, IHrDeptService hrDeptService
            , ISysAttachmentService sysAttachmentService
              , IPltPageService pltPageService)
              , IPltPageService pltPageService
             , ICooperVisitService cooperVisitService
            , IIntentionCustomerService intentionCustomerService)
        {
            _logger = logger;
            _projectService = projectService;
@@ -44,6 +48,8 @@
            _hrDeptService = hrDeptService;
            _sysAttachmentService = sysAttachmentService;
            _pltPageService = pltPageService;
            _cooperVisitService = cooperVisitService;
            _intentionCustomerService = intentionCustomerService;
        }
        public IActionResult Index()
@@ -135,9 +141,12 @@
            ViewBag.khly = _liaotianService.GetSYScode("CooperatecustomCustomer", "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.shifou = _liaotianService.GetSYScode("system", "shifou").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();
            var users = _userService.GetList().Where(x => x.IsYwjl == "A").Select(x => new { code = x.Id, label = x.UserName }).ToList();
            users.Insert(0, new { code = "11111", label = "无业务经理" });
            ViewBag.users = users;
            var areaDTOs = _projectService.Getsheng().ToList();
@@ -155,6 +164,12 @@
            areaDTOsic.ParentId = "0     ";
            areaDTOs.Insert(1, areaDTOsic);
            ViewBag.ShengDropDown = areaDTOs.Select(x => new { code = x.CodeId, label = x.Name }).ToList();
            ViewBag.Baomingtimebegin = DateTime.Now.AddMonths(-6).ToString("yyyy-MM-dd");
            ViewBag.Baomingtimeend = DateTime.Now.ToString("yyyy-MM-dd");
            return View();
   
        }
@@ -177,6 +192,13 @@
            {
                cooperatecustomCustomerDTO = _cooperatecustomCustomerService.Get(id);
                CooperVisitDTOSearch searchEntity = new CooperVisitDTOSearch();
                searchEntity.page = 1;
                searchEntity.rows = 1000;
                searchEntity.Viscustomer = id;
                var resultDataEntity = _cooperVisitService.SearchByPaging(searchEntity);
                ViewData["visitlishi"] = resultDataEntity.DataList;
            }
            else
            {
@@ -185,7 +207,9 @@
                cooperatecustomCustomerDTO.Sheng = "510000";
                cooperatecustomCustomerDTO.City = "510100";
                cooperatecustomCustomerDTO.AreaId = "510107";
                ViewData["visitlishi"] = new List<CooperVisitDTO>();
            }
            var areaDTOs = _projectService.Getsheng().ToList();
@@ -380,5 +404,186 @@
            return View();
        }
        [CheckLogin]
        public IActionResult IndexCustomerGuanlian(string CustomerId,string Customertype)
        {
            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
            CustomerGuanlianDTO customerGuanlianDTO = new CustomerGuanlianDTO();
            customerGuanlianDTO.CustomerId = CustomerId;
            customerGuanlianDTO.Customertype = Customertype;
            customerGuanlianDTO.cooperatecustomCustomerDTOs = _cooperatecustomCustomerService.GetListCustomerGuanlian(CustomerId);
            ViewData.Model = customerGuanlianDTO;
            return View();
        }
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="data">岗位实体类对象</param>
        /// <returns></returns>
        ///
        [HttpPost]
        public IActionResult DelCustomerGuanlian(CustomerGuanlianDTO dTO)
        {
            ResultEntity resultEntity = new ResultEntity();
            resultEntity.Result = false;
            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
            ViewData["curentuser"] = curentuser;
            resultEntity = _cooperatecustomCustomerService.DeleteCustomerGuanlian(dTO.CustomerId, dTO.SecCustomerId);
            return new JsonResult(resultEntity);
        }
        public IActionResult IndexSelect(string Id, string Customertype)
        {
            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 actionEntity2 = new ActionEntity();
            actionEntity2.OpenType = 0;
            actionEntity2.ActionUrl = "";
            actionEntity2.ActionFun = "Zhuanyi";
            actionEntity2.PageIco = "fa fa-exchange";
            actionEntity2.ActionName = "确认关联";
            actionlist.Add(actionEntity2);
            ViewData["ActionInfo"] = actionlist;
            //ViewData["ActionInfo2"] = pageEntities2;
            ViewBag.khlx = _liaotianService.GetSYScode("CooperatecustomCustomer", "khlx").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.shifou = _liaotianService.GetSYScode("system", "shifou").Select(x => new { code = x.CodeSn, label = x.Comments }).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();
            ViewBag.Baomingtimebegin = DateTime.Now.AddMonths(-6).ToString("yyyy-MM-dd");
            ViewBag.Baomingtimeend = DateTime.Now.ToString("yyyy-MM-dd");
            ViewBag.Id = Id;
            ViewBag.Customertype1 = Customertype;
            ViewBag.Customertype = _liaotianService.GetSYScode("ADM_Askzczbwsydtl", "Customertype").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
            return View();
        }
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="data">岗位实体类对象</param>
        /// <returns></returns>
        ///
        [HttpPost]
        public IActionResult SaveCustomerGuanlian(CustomerGuanlianDTO dTO)
        {
            ResultEntity resultEntity = new ResultEntity();
            resultEntity.Result = true;
            var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
            ViewData["curentuser"] = curentuser;
            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required,
           new TransactionOptions
           {
               IsolationLevel = IsolationLevel.ReadCommitted,
               Timeout = TransactionManager.MaximumTimeout
           }
           ))
            {
                if (!string.IsNullOrWhiteSpace(dTO.SecCustomerId))
                {
                    var SecCustomerId = dTO.SecCustomerId.Split(',');
                    var SecCustomertype = dTO.SecCustomertype.Split(',');
                    for (int i = 0; i < SecCustomerId.Length; i++)
                    {
                        var customerGuanlianDTO = _cooperatecustomCustomerService.GetCustomerGuanlian(dTO.CustomerId, SecCustomerId[i]);
                        if (string.IsNullOrEmpty(customerGuanlianDTO.Id))
                        {
                            customerGuanlianDTO.CustomerId = dTO.CustomerId;
                            customerGuanlianDTO.Customertype = dTO.Customertype;
                            customerGuanlianDTO.SecCustomerId = SecCustomerId[i];
                            customerGuanlianDTO.SecCustomertype = SecCustomertype[i];
                            resultEntity = _cooperatecustomCustomerService.saveCustomerGuanlian(customerGuanlianDTO);
                        }
                    }
                    scope.Complete();
                }
                else
                {
                    resultEntity.Result = true;
                }
            }
            return new JsonResult(resultEntity);
        }
    }
}