فهرست منبع

项目推广码和项目统计接口

lifa 2 سال پیش
والد
کامیت
3e7771b0a9

+ 31 - 0
src/platform/ZhonTai.Admin/Services/DiTuiAPI/Dto/ProjectCountPageInput.cs

@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+
+#region <<版本注释>>
+/* ---------------------------
+* 版权所有 (c) 2023 Frank 保留所有权利。
+* CLR版本:4.0.30319.42000
+* 机器名称:FRANK-WIN
+* 命名空间:ZhonTai.Admin.Services.DiTuiAPI.Dto
+* 唯一标识:6ff5bd44-9134-41fa-9821-b0fde9a10440
+* 
+* 创建者:Frank
+* 电子邮箱: cfrank227@gmail.com
+* 创建时间:2023/5/16 13:53:58
+--------------------------*/
+#endregion <<版本注释>>
+
+namespace ZhonTai.Admin.Services.DiTuiAPI.Dto
+{
+    public class ProjectCountPageInput
+    {
+        /// <summary>
+        /// 项目ID
+        /// </summary>
+        public long ProjectId { get; set; }
+    }
+}

+ 60 - 0
src/platform/ZhonTai.Admin/Services/DiTuiAPI/Dto/ProjectCountPageOutput.cs

@@ -0,0 +1,60 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+
+#region <<版本注释>>
+/* ---------------------------
+* 版权所有 (c) 2023 Frank 保留所有权利。
+* CLR版本:4.0.30319.42000
+* 机器名称:FRANK-WIN
+* 命名空间:ZhonTai.Admin.Services.DiTuiAPI.Dto
+* 唯一标识:3be07a50-6008-4f64-8643-d69cdcd926d3
+* 
+* 创建者:Frank
+* 电子邮箱: cfrank227@gmail.com
+* 创建时间:2023/5/16 13:54:13
+--------------------------*/
+#endregion <<版本注释>>
+
+namespace ZhonTai.Admin.Services.DiTuiAPI.Dto
+{
+    public class ProjectCountPageOutput
+    {
+        public ProjectCountPageOutput(long id, string settleDate,List<SettleCount> settleCounts)
+        {
+            Id = id;
+            SettleDate = settleDate;
+            SettleCounts = settleCounts;
+        }
+        public long Id { get; set; }
+        public string SettleDate { get; set; }
+        public List<SettleCount> SettleCounts { get; set; }
+    }
+
+    public class SettleCount
+    {
+        public SettleCount(string settleStandard,string settleNum,string commission)
+        {
+            SettleStandard = settleStandard;
+            SettleNum = settleNum;
+            Commission = commission;
+
+        }
+        /// <summary>
+        /// 结算标准
+        /// </summary>
+        public string SettleStandard { get; set; }
+        /// <summary>
+        /// 结算数目
+        /// </summary>
+        public string SettleNum { get; set; }
+        /// <summary>
+        /// 佣金
+        /// </summary>
+        public string Commission { get; set; }
+
+    }
+}

+ 24 - 0
src/platform/ZhonTai.Admin/Services/DiTuiAPI/Dto/ProjectQrcodePageInput.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ZhonTai.Admin.Services.DiTuiAPI.Dto
+{
+    public class ProjectQrcodePageInput
+    {
+        /// <summary>
+        /// 项目Id
+        /// </summary>
+        public long ProjectId { get; set; }
+        /// <summary>
+        /// 姓名
+        /// </summary>
+        public string Salesman { get; set; }
+        /// <summary>
+        /// 手机号
+        /// </summary>
+        public string SalesmanPhone { get; set; }
+    }
+}

+ 32 - 0
src/platform/ZhonTai.Admin/Services/DiTuiAPI/Dto/ProjectQrcodePageOutput.cs

@@ -0,0 +1,32 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ZhonTai.Admin.Services.DiTuiAPI.Dto
+{
+    public class ProjectQrcodePageOutput
+    {
+        /// <summary>
+        /// ID
+        /// </summary>
+        public long Id { get; set; }
+        /// <summary>
+        /// 姓名
+        /// </summary>
+        public string Salesman { get; set; }
+        /// <summary>
+        /// 绑定日期
+        /// </summary>
+        public DateTime? UseTime { get; set; }
+        /// <summary>
+        /// 二维码URL
+        /// </summary>
+        public string QrcodeUrl { get; set; }
+        /// <summary>
+        /// 查单链接(订单明细)
+        /// </summary>
+        public string QueryUrl { get; set; }
+    }
+}

+ 20 - 0
src/platform/ZhonTai.Admin/Services/DiTuiAPI/IProjectsService.cs

@@ -9,8 +9,28 @@ namespace ZhonTai.Admin.Services.DiTuiAPI
 {
     public interface IProjectsService
     {
+        /// <summary>
+        /// 我的项目
+        /// </summary>
+        /// <returns></returns>
         Task<MyProjectOutput> MyProjectAsync();
+        /// <summary>
+        /// 项目详情
+        /// </summary>
+        /// <param name="id"></param>
+        /// <returns></returns>
         Task<ProjectDescOutput> ProjectDescAsync(long id);
+        /// <summary>
+        /// 项目说明
+        /// </summary>
+        /// <param name="id"></param>
+        /// <returns></returns>
         Task<ProjectSpecOutput> ProjectSpecAsync(long id);
+        ///// <summary>
+        ///// 项目推广码
+        ///// </summary>
+        ///// <param name="id"></param>
+        ///// <returns></returns>
+        //Task<ProjectQrcodeOutput> ProjectQrcodeAsync(long id);
     }
 }

+ 101 - 0
src/platform/ZhonTai.Admin/Services/DiTuiAPI/ProjectsService.cs

@@ -6,7 +6,10 @@ using System.Text;
 using System.Threading.Tasks;
 using ZhonTai.Admin.Core.Attributes;
 using ZhonTai.Admin.Core.Consts;
+using ZhonTai.Admin.Core.Dto;
+using ZhonTai.Admin.Repositories.ProjectLink;
 using ZhonTai.Admin.Services.DiTuiAPI.Dto;
+using ZhonTai.Admin.Services.ProjectLink.Dto;
 using ZhonTai.DynamicApi;
 using ZhonTai.DynamicApi.Attributes;
 
@@ -19,6 +22,11 @@ namespace ZhonTai.Admin.Services.DiTuiAPI
     //public class DiTuiAPIService : BaseService, IDiTuiAPIService, IDynamicApi
     public class ProjectsService : BaseService, IProjectsService, IDynamicApi
     {
+        private ProjectLinkRepository _ProjectLinkRepository;
+        public ProjectsService(ProjectLinkRepository projectLinkRepository)
+        {
+            _ProjectLinkRepository = projectLinkRepository;
+        }
 
         /// <summary>
         /// 我的项目
@@ -97,5 +105,98 @@ namespace ZhonTai.Admin.Services.DiTuiAPI
             return projectSpecOutput;
         }
 
+        /// <summary>
+        /// 项目推广码
+        /// </summary>
+        /// <param name="input"></param>
+        /// <returns></returns>
+        [HttpGet]
+        public async Task<PageOutput<ProjectQrcodePageOutput>> ProjectQrcodePageAsync(PageInput<ProjectQrcodePageInput> input)
+        {
+            var Salesman = input.Filter?.Salesman;
+            var SalesmanPhone = input.Filter?.SalesmanPhone;
+            var ProjectId = input.Filter?.ProjectId;
+
+            var list = _ProjectLinkRepository.Select.DisableGlobalFilter(FilterNames.Tenant)
+                .WhereIf(ProjectId.HasValue && ProjectId.Value > 0, a => a.ProjectId == ProjectId)
+                .WhereIf(Salesman.NotNull(), a => a.Salesman.Contains(Salesman))
+                .WhereIf(SalesmanPhone.NotNull(), a => a.SalesmanPhone.Contains(SalesmanPhone))
+            .Count(out var total)
+            .Page(input.CurrentPage, input.PageSize)
+            .ToList(m => new ProjectQrcodePageOutput()
+            {
+                Id = m.Id,
+                Salesman = m.Salesman,
+                UseTime = m.UseTime,
+                QrcodeUrl = m.QrcodeUrl,
+                QueryUrl = m.QueryUrl
+            });
+
+            var data = new PageOutput<ProjectQrcodePageOutput>()
+            {
+                List = list,
+                Total = total
+            };
+
+            return data;
+        }
+
+        /// <summary>
+        /// 项目统计
+        /// </summary>
+        /// <param name="input"></param>
+        /// <returns></returns>
+        [HttpGet]
+        public async Task<PageOutput<ProjectCountPageOutput>> ProjectCountPageAsync(PageInput<ProjectCountPageInput> input)
+        {
+            var ProjectId = input.Filter?.ProjectId;
+
+            //var list = _ProjectLinkRepository.Select.DisableGlobalFilter(FilterNames.Tenant)
+            //    .WhereIf(ProjectId.HasValue && ProjectId.Value > 0, a => a.ProjectId == ProjectId)
+            //    .WhereIf(Salesman.NotNull(), a => a.Salesman.Contains(Salesman))
+            //    .WhereIf(SalesmanPhone.NotNull(), a => a.SalesmanPhone.Contains(SalesmanPhone))
+            //.Count(out var total)
+            //.Page(input.CurrentPage, input.PageSize)
+            //.ToList(m => new ProjectQrcodePageOutput()
+            //{
+            //    Id = m.Id,
+            //    Salesman = m.Salesman,
+            //    UseTime = m.UseTime,
+            //    QrcodeUrl = m.QrcodeUrl,
+            //    QueryUrl = m.QueryUrl
+            //});
+
+            List<ProjectCountPageOutput> list = new List<ProjectCountPageOutput>();
+            List<SettleCount> settleCounts = new List<SettleCount>();
+            settleCounts.Add(new SettleCount("电商首购A级", "200/300单", "200元"));
+            settleCounts.Add(new SettleCount("电商首购B级", "201/300单", "201元"));
+            settleCounts.Add(new SettleCount("电商首购C级", "202/300单", "202元"));
+            settleCounts.Add(new SettleCount("今日汇总", "603/900单", "603元"));
+
+            //settleCounts.Add(new SettleCount("电商首购A级", "200/300单", "200元"));
+            //settleCounts.Add(new SettleCount("电商首购A级", "200/300单", "200元"));
+            list.Add(new ProjectCountPageOutput(416237348180038, "2023-05-02", settleCounts));
+
+            List<SettleCount> settleCounts1 = new List<SettleCount>();
+            settleCounts1.Add(new SettleCount("电商首购A级", "200/300单", "200元"));
+            settleCounts1.Add(new SettleCount("电商首购B级", "199/300单", "199元"));
+            settleCounts1.Add(new SettleCount("电商首购C级", "198/300单", "198元"));
+            settleCounts1.Add(new SettleCount("今日汇总", "597/900单", "597元"));
+
+            //settleCounts.Add(new SettleCount("电商首购A级", "200/300单", "200元"));
+            //settleCounts.Add(new SettleCount("电商首购A级", "200/300单", "200元"));
+            list.Add(new ProjectCountPageOutput(416237348180038, "2023-05-01", settleCounts1));
+
+            var total = list.Count;
+
+
+            var data = new PageOutput<ProjectCountPageOutput>()
+            {
+                List = list,
+                Total = total
+            };
+
+            return data;
+        }
     }
 }

+ 100 - 1
src/platform/ZhonTai.Admin/ZhonTai.Admin.xml

@@ -2589,7 +2589,12 @@
         </member>
         <member name="P:ZhonTai.Admin.Domain.Notice.NoticeEntity.IsAlter">
             <summary>
-            是否弹窗 1弹窗 0不弹窗
+            是否首页弹窗 1弹窗 0不弹窗(只有一个)
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Domain.Notice.NoticeEntity.Tags">
+            <summary>
+            标签
             </summary>
         </member>
         <member name="T:ZhonTai.Admin.Domain.OprationLog.OprationLogEntity">
@@ -5400,6 +5405,26 @@
             结算周期
             </summary>
         </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectCountPageInput.ProjectId">
+            <summary>
+            项目ID
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.SettleCount.SettleStandard">
+            <summary>
+            结算标准
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.SettleCount.SettleNum">
+            <summary>
+            结算数目
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.SettleCount.Commission">
+            <summary>
+            佣金
+            </summary>
+        </member>
         <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectDescOutput.Id">
             <summary>
             ID 
@@ -5430,6 +5455,46 @@
             项目详情
             </summary>
         </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageInput.ProjectId">
+            <summary>
+            项目Id
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageInput.Salesman">
+            <summary>
+            姓名
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageInput.SalesmanPhone">
+            <summary>
+            手机号
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageOutput.Id">
+            <summary>
+            ID
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageOutput.Salesman">
+            <summary>
+            姓名
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageOutput.UseTime">
+            <summary>
+            绑定日期
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageOutput.QrcodeUrl">
+            <summary>
+            二维码URL
+            </summary>
+        </member>
+        <member name="P:ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageOutput.QueryUrl">
+            <summary>
+            查单链接(订单明细)
+            </summary>
+        </member>
         <member name="T:ZhonTai.Admin.Services.DiTuiAPI.IndexService">
             <summary>
             首页接口
@@ -5448,6 +5513,26 @@
             </summary>
             <returns></returns>
         </member>
+        <member name="M:ZhonTai.Admin.Services.DiTuiAPI.IProjectsService.MyProjectAsync">
+            <summary>
+            我的项目
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:ZhonTai.Admin.Services.DiTuiAPI.IProjectsService.ProjectDescAsync(System.Int64)">
+            <summary>
+            项目详情
+            </summary>
+            <param name="id"></param>
+            <returns></returns>
+        </member>
+        <member name="M:ZhonTai.Admin.Services.DiTuiAPI.IProjectsService.ProjectSpecAsync(System.Int64)">
+            <summary>
+            项目说明
+            </summary>
+            <param name="id"></param>
+            <returns></returns>
+        </member>
         <member name="T:ZhonTai.Admin.Services.DiTuiAPI.ProjectsService">
             <summary>
             项目接口
@@ -5473,6 +5558,20 @@
             <param name="id"></param>
             <returns></returns>
         </member>
+        <member name="M:ZhonTai.Admin.Services.DiTuiAPI.ProjectsService.ProjectQrcodePageAsync(ZhonTai.Admin.Core.Dto.PageInput{ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectQrcodePageInput})">
+            <summary>
+            项目推广码
+            </summary>
+            <param name="input"></param>
+            <returns></returns>
+        </member>
+        <member name="M:ZhonTai.Admin.Services.DiTuiAPI.ProjectsService.ProjectCountPageAsync(ZhonTai.Admin.Core.Dto.PageInput{ZhonTai.Admin.Services.DiTuiAPI.Dto.ProjectCountPageInput})">
+            <summary>
+            项目统计
+            </summary>
+            <param name="input"></param>
+            <returns></returns>
+        </member>
         <member name="T:ZhonTai.Admin.Services.Document.DocumentService">
             <summary>
             文档服务