From 8c92db325f7c801d2df095763a17673fa6c92085 Mon Sep 17 00:00:00 2001
From: 移动系统liao <liaoxujun@qq.com>
Date: 星期五, 07 三月 2025 18:56:09 +0800
Subject: [PATCH] 物流配送第一点

---
 cylsg/cylsg.Application/CyOS/CyOSSettingController.cs |  105 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 93 insertions(+), 12 deletions(-)

diff --git a/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs b/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs
index 5442385..687476c 100644
--- a/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs
+++ b/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs
@@ -1,6 +1,7 @@
 锘縰sing cylsg.Model.ECTEModel;
 using ECTESTOA;
 using EzCoreNet.Redis;
+using Models;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -12,14 +13,16 @@
     /// <summary>
     /// 宸濆嵃閫氱敤淇℃伅鑾峰彇
     /// </summary>
-    public class CYOSSettingController: IDynamicApiController
+    [Authorize]
+    [ApiDescriptionSettings("CYOA")]
+    public class CYOSSettingController : IDynamicApiController
     {
 
         private readonly ISqlSugarClient _client;
         private readonly IOAServices _oAServices;
         private readonly IEzCoreNetRedisService _eZCoreNetRedisService;
-         
-        public CYOSSettingController( ISqlSugarClient client,IOAServices oAServices,IEzCoreNetRedisService netRedisService )
+
+        public CYOSSettingController(ISqlSugarClient client, IOAServices oAServices, IEzCoreNetRedisService netRedisService)
         {
             _client = client.AsTenant().GetConnection("ECTESTOADB");
             _oAServices = oAServices;
@@ -31,13 +34,13 @@
         /// </summary>
         /// <returns></returns>
         [HttpGet]
-        public async Task< List<OaDepartment>> GetDepartLstt()
+        public async Task<List<OaDepartment>> GetDepartLstt()
         {
-            return await _client.Queryable<OaDepartment>().Where(x=>x.Status== "鍚敤"&&x.FirmId== _oAServices.firmId).Select(x=>new OaDepartment
+            return await _client.Queryable<OaDepartment>().Where(x => x.Status == "鍚敤" && x.FirmId == _oAServices.firmId).Select(x => new OaDepartment
             {
-                  Name=x.Name,
-                    Keyid=x.Keyid,
-                     Remark=x.Remark,
+                Name = x.Name,
+                Keyid = x.Keyid,
+                Remark = x.Remark,
             }).WithCache(3600).ToListAsync();
         }
         /// <summary>
@@ -45,9 +48,10 @@
         /// </summary>
         /// <returns></returns>
         [HttpGet]
+
         public async Task<List<OaSubjectSet>> getKeMuList()
         {
-            return await _client.Queryable<OaSubjectSet>().Where(x => x.Status == true && x.FirmId == _oAServices.firmId&& x.SubjectType=="璐�").Select(x => new OaSubjectSet
+            return await _client.Queryable<OaSubjectSet>().Where(x => x.Status == true && x.FirmId == _oAServices.firmId && x.SubjectType == "璐�").Select(x => new OaSubjectSet
             {
                 SubjectName = x.SubjectName,
                 Keyid = x.Keyid,
@@ -59,9 +63,86 @@
         /// </summary>
         /// <returns></returns>
         [HttpGet]
-        public  string GetShowID()
+        [AllowAnonymous]
+        public string GetShowID()
         {
-          return   _eZCoreNetRedisService.GetYYYMMddAnd4sn();
+            return _eZCoreNetRedisService.GetYYYMMddAnd4sn();
         }
-    }
+        /// <summary>
+        /// 鑾峰彇瀹㈡埛鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        [HttpGet]
+        [AllowAnonymous]
+        public async Task<object> GeCorporateClients()
+        {
+             return  await _client.Queryable<OA_CorporateClients>()
+                .LeftJoin<OA_CustomerCommunications>((Co,Cu)=>Co.Keyid==Cu.Keyid)
+                .Where((Co, Cu) => Co.Shifouwanjie != 1 && Co.FirmId == _oAServices.firmId).Select((Co, Cu) => new 
+            {
+                 Co.Keyid,
+                    Co.CompanyName,
+                  adder=Cu.Province+Cu.City+Cu.County+Cu.DetailedAddress,
+                  Cu.CompanyPhone,
+                  Cu.BusinessManagers,     
+
+
+            }).MergeTable().OrderBy(Co => Co.CompanyName).WithCache(1800).ToListAsync();
+        }
+        /// <summary>
+        /// 鑾峰彇鍙告満鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        [HttpGet]
+        public async Task<List<OaStaff>> Getdrivers()
+        {
+            return await _client.Queryable<OaStaff>().Where(x => x.Status == "鍦ㄨ亴" && x.FirmId == _oAServices.firmId && x.BF_IsDriver).Select(x => new OaStaff
+            {
+                Name = x.Name,
+                MemberId = x.MemberId,
+                Keyid = x.Keyid,
+
+            }).WithCache(1800).ToListAsync();
+        }
+
+
+        /// <summary>
+        /// 鑾峰彇7澶╁唴鍙告満鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        [HttpGet]
+        [AllowAnonymous]
+        public async Task<List<OaStaff>> GetDriversOfWithin7days()
+        {
+            var list = await _client.Queryable<OA_DeliverPlan>().Where(x => SqlFunc.ToDate(x.DeliverTime) < DateTime.Now.AddDays(8).Date && SqlFunc.ToDate(x.DeliverTime) >= DateTime.Now.Date).GroupBy(x => x.DriverId).Select(x => x.DriverId).ToListAsync();
+            return await _client.Queryable<OaStaff>().In(list).Where(x => x.Status == "鍦ㄨ亴" && x.FirmId == _oAServices.firmId && x.BF_IsDriver).Select(x => new OaStaff
+            {
+                Name = x.Name,
+                MemberId = x.MemberId,
+                Keyid = x.Keyid,
+
+            }).WithCache(1800).ToListAsync();
+            ////      return await _client.Queryable<OA_DeliverPlan>()
+            ////.LeftJoin<OaStaff>((dp, os) => dp.DriverId == os.Keyid)
+            ////.Where((dp, os) => SqlFunc.ToDate(dp.DeliverTime) < DateTime.Now.AddDays(8).Date
+            ////    && SqlFunc.ToDate(dp.DeliverTime) >= DateTime.Now.Date
+            ////    && os.Status == "鍦ㄨ亴"
+            ////    && os.FirmId == _oAServices.firmId
+            ////    )
+            ////.GroupBy((dp, os) => dp.DriverId)
+            ////.Select((dp, os) => new OaStaff
+            ////{
+            ////    Name = SqlFunc.AggregateMax(os.Name),
+            ////    MemberId = SqlFunc.AggregateMax(os.MemberId),
+            ////    Keyid = SqlFunc.AggregateMax(os.Keyid),
+            ////})
+            ////.WithCache(1800)
+            ////.ToListAsync();
+             }
+
+
+
+
+
+        }
 }

--
Gitblit v1.9.1