Browse Source

市场客户资料
新增查看详情

leiy 1 year ago
parent
commit
4990d018d8

+ 31 - 1
OASystem/OASystem.Api/Controllers/MarketCustomerResourcesController.cs

@@ -79,7 +79,37 @@ namespace OASystem.API.Controllers
 
             return Ok(jw);
         }
-        
+
+        /// <summary>
+        /// 客户资料数据
+        /// Details
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostNewClientDataDetails(NewClientDataDetailsDto dto)
+        {
+            JsonView jw = new JsonView();
+            try
+            {
+                Result resultData = await _clientDataRepository._BatchAssignment(dto.PortType , dto.Id);
+                if (resultData.Code == 0)
+                {
+                    jw = JsonView(true, resultData.Msg, resultData.Data);
+                }
+                else
+                {
+                    jw = JsonView(false, resultData.Msg, resultData.Data);
+                }
+            }
+            catch (Exception)
+            {
+                jw = JsonView(false, "程序错误!");
+            }
+
+            return Ok(jw);
+        }
+
         /// <summary>
         /// 客户资料操作(Status:1.新增,2.修改)
         /// </summary>

+ 7 - 0
OASystem/OASystem.Domain/Dtos/CRM/NewClientDataQueryDto.cs

@@ -191,6 +191,13 @@ namespace OASystem.Domain.Dtos.CRM
 
     }
 
+    /// <summary>
+    /// 详情 Dto
+    /// </summary>
+    public class NewClientDataDetailsDto:PortDtoBase
+    {
+        public int Id { get; set; }
+    }
     /// <summary>
     /// 批量指派
     /// </summary>

+ 114 - 0
OASystem/OASystem.Domain/ViewModels/CRM/NewClientDataView.cs

@@ -1,14 +1,128 @@
 using OASystem.Domain.Entities.Customer;
 using Org.BouncyCastle.Asn1.Ocsp;
+using Org.BouncyCastle.Asn1.X9;
 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
+using static Google.Protobuf.Reflection.SourceCodeInfo.Types;
 
 namespace OASystem.Domain.ViewModels.CRM
 {
 
+    public class DetailsView
+    {
+        public int Id { get; set; }
+        /// <summary>
+        /// 客户分类
+        /// </summary>
+        public int Category { get; set; }
+
+        /// <summary>
+        /// 地市州Id
+        /// </summary>
+        public int Lvlid { get; set; }
+
+        /// <summary>
+        /// 权重
+        /// </summary>
+        public string Weight { get; set; }
+
+        /// <summary>
+        /// 联系人
+        /// </summary>
+        public string Contact { get; set; }
+
+        /// <summary>
+        /// 联系人性别
+        /// </summary>
+        public int Gender { get; set; }
+
+        /// <summary>
+        /// 联系手机号
+        /// </summary>
+        public string Telephone { get; set; }
+
+        /// <summary>
+        /// 联系座机号
+        /// </summary>
+        public string Phone { get; set; }
+
+        /// <summary>
+        /// 邮件
+        /// </summary>
+        public string Email { get; set; }
+
+        /// <summary>
+        /// 职位
+        /// </summary>
+        public string Job { get; set; }
+
+        /// <summary>
+        /// 客户单位
+        /// </summary>
+        public string Client { get; set; }
+
+        /// <summary>
+        /// 客户单位简写
+        /// </summary>
+        public string ClientShort { get; set; }
+
+        /// <summary>
+        /// 所属区域(所在城市)
+        /// </summary>
+        public string Location { get; set; }
+
+        /// <summary>
+        /// 地址
+        /// </summary>
+        public string Address { get; set; }
+
+        /// <summary>
+        /// 护照
+        /// </summary>
+        public string Passport { get; set; }
+
+        /// <summary>
+        /// 护照日期
+        /// </summary>
+        public DateTime? PassportDate { get; set; }
+
+        /// <summary>
+        /// 生日
+        /// </summary>
+        public string Birthday { get; set; }
+
+        /// <summary>
+        /// 其他信息
+        /// </summary>
+        public string OtherInfo { get; set; }
+
+       
+        /// <summary>
+        /// 预计出团
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int PreDele { get; set; }
+
+        /// <summary>
+        /// 已出团
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int FinlishedDele { get; set; }
+
+        /// <summary>
+        /// 归属人员
+        /// </summary>
+        public List<int>? AscribedUser { get; set; }
+
+        /// <summary>
+        /// 归属部门
+        /// </summary>
+        public List<int>? AscribedDepartment { get; set; }
+    }
+
     public class NewClientDataAndroidIOSView
     {
         /// <summary>

+ 41 - 1
OASystem/OASystem.Infrastructure/Repositories/CRM/NewClientDataRepository.cs

@@ -30,7 +30,6 @@ namespace OASystem.Infrastructure.Repositories.CRM
             _mapper = mapper;
         }
 
-
         /// <summary>
         /// 客户资料
         /// 基础数据源
@@ -133,6 +132,47 @@ namespace OASystem.Infrastructure.Repositories.CRM
             return result;
         }
 
+        /// <summary>
+        /// 市场客户资料数据
+        /// 详情
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        public async Task<Result> _BatchAssignment(int portType,int id)
+        {
+            Result result = new Result() { Code = -2, Msg = "未知错误" };
+
+            if (portType == 1 || portType == 2 || portType == 3)
+            {
+                if (id < 0)
+                {
+                    result.Msg = string.Format("请传入有效的Id参数!");
+                    return result;
+                }
+
+                string infoSql = string.Format(@" Select * From  Crm_NewClientData Where Isdel = 0 And Id = {0}", id);
+                var info = await _sqlSugar.SqlQueryable<DetailsView>(infoSql).FirstAsync();
+                if (info != null )
+                {
+                    List<AscribedUser> AscribedUser = await _sqlSugar.SqlQueryable<AscribedUser>
+                           ("select u1.UsersId as UserId ,u2.CnName,u1.NewClientDataId from Crm_ClientDataAndUser u1,Sys_Users u2 where u1.UsersId=u2.Id and NewClientDataId=" + info.Id + "   AND u1.ISDEL = 0").ToListAsync();
+                    info.AscribedUser = AscribedUser.Select(it => it.UserId).ToList();
+
+                    List<AscribedDepartment> AscribedDepartment = await _sqlSugar.SqlQueryable<AscribedDepartment>
+                  ("select  d2.Id,d2.Name,d1.NewClientDataId  from Crm_ClientDataAndBusiness d1,Sys_SetData d2 where d1.SetDataId=d2.Id and NewClientDataId=" + info.Id + "  AND d1.ISDEL = 0").ToListAsync();
+                    info.AscribedDepartment = AscribedDepartment.Select(it => it.Id).ToList();
+
+                    result.Code = 0;
+                    result.Data = info;
+                }
+            }
+            else
+            {
+                result.Msg = string.Format("请传入有效的PortType参数!");
+            }
+
+            return result;
+        }
 
         /// <summary>
         /// 客户资料初识初始化