From 757e9a10418043eb1a5c5e41975d3eb39db66a80 Mon Sep 17 00:00:00 2001 From: 移动系统liao <liaoxujun@qq.com> Date: 星期五, 20 六月 2025 14:27:04 +0800 Subject: [PATCH] no message --- cylsg/cylsg.Application/CyOS/CyOSSettingController.cs | 173 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 162 insertions(+), 11 deletions(-) diff --git a/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs b/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs index 8db3b42..dcdb043 100644 --- a/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs +++ b/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs @@ -1,25 +1,33 @@ 锘縰sing cylsg.Model.ECTEModel; using ECTESTOA; +using EzCoreNet.Redis; +using Models; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using static SKIT.FlurlHttpClient.Wechat.Api.Models.ProductOfflineGetSameCityTemplateResponse.Types.Template.Types; namespace cylsg.Application.CyOS { /// <summary> /// 宸濆嵃閫氱敤淇℃伅鑾峰彇 /// </summary> - public class CYOSSettingController: IDynamicApiController + [Authorize] + [ApiDescriptionSettings("CYOA")] + public class CYOSSettingController : IDynamicApiController { private readonly ISqlSugarClient _client; private readonly IOAServices _oAServices; - public CYOSSettingController( ISqlSugarClient client,IOAServices oAServices ) + private readonly IEzCoreNetRedisService _eZCoreNetRedisService; + + public CYOSSettingController(ISqlSugarClient client, IOAServices oAServices, IEzCoreNetRedisService netRedisService) { _client = client.AsTenant().GetConnection("ECTESTOADB"); _oAServices = oAServices; + _eZCoreNetRedisService = netRedisService; } /// <summary> @@ -27,29 +35,172 @@ /// </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, - }).WithCache(3600).ToListAsync(); + Name = x.Name, + Keyid = x.Keyid, + Remark = x.Remark, + }).WithCache(60).ToListAsync(); } /// <summary> /// 鑾峰彇绉戠洰鍒楄〃 /// </summary> /// <returns></returns> [HttpGet] + [AllowAnonymous] 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, Remark = x.Remark, - }).WithCache(3600).ToListAsync(); + }).WithCache(60).ToListAsync(); + } + /// <summary> + /// 鑾峰彇娴佹按鍙� + /// </summary> + /// <returns></returns> + [HttpGet] + [AllowAnonymous] + public string GetShowID() + { + 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>().Includes(x=>x.Car).Where(x => x.Status == "鍦ㄨ亴" && x.FirmId == _oAServices.firmId && x.BF_IsDriver).Select(x => new OaStaff + { + Name = x.Name, + MemberId = x.MemberId, + Keyid = x.Keyid, + Car=x.Car + + }).ToListAsync(); } - } + + /// <summary> + /// 鑾峰彇杞﹁締鍒楄〃 + /// </summary> + /// <returns></returns> + [HttpGet] + public async Task<List<OA_CarManage>> GetCarList() + { + var listdata= await _client.Queryable<OA_CarManage>().Includes(x => x.Staff).Where(x => x.MemberID == _oAServices.firmId ).Select(x=>new OA_CarManage + { + Keyid = x.Keyid, + CarNumber = x.CarNumber, + Staff=x.Staff + }) + .ToListAsync(); + + foreach (var item in listdata) + { + if(item.Staff!=null) + { + if (item.Staff.Status != "鍦ㄨ亴") + { + item.Mark = "璇ュ憳宸ヤ笉灞炰簬鍦ㄨ亴鐘舵��,娲捐溅鍚庡彲鑳芥棤娉曞畬鎴愬悗缁祦绋�"; + } + if (item.Staff.BF_IsDriver ) + { + item.Mark+= "璇ュ憳宸ヤ笉鏄笓鑱屽徃鏈�"; + } + item.CarNumber = item.CarNumber + "(" + item.Staff.Name + ")"; + item.Staff = null; + } + item.StaffID = 0; + + + } + + return listdata; + } + /// <summary> + /// 鑾峰彇7澶╁唴鍙告満鍒楄〃 + /// </summary> + /// <returns></returns> + [HttpGet] + [AllowAnonymous] + public async Task<List<OaStaff>> GetDriversOfWithin7days() + { + + var list = await _client.Queryable<OA_DeliverPlanPaiche>().Where(x =>( x.DeliverTime.Value.Date < DateTime.Now.AddDays(8).Date) && (x.DeliverTime.Value.Date >= DateTime.Now.Date)).Select(x => x.DriverId).ToListAsync(); + return await _client.Queryable<OaStaff>().Includes(x=>x.Car).Where(x=>list.Contains(x.Keyid)).Where(x => x.Status == "鍦ㄨ亴" && x.FirmId == _oAServices.firmId && x.BF_IsDriver).Select(x => new OaStaff + { + Name = x.Name, + MemberId = x.MemberId, + Keyid = x.Keyid, + Car=x.Car + + })/*.WithCache(30)*/.ToListAsync(); //Includes(x => x.Car)鍔犵紦瀛樹細鎶ラ敊 + //// 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(); + } + + /// <summary> + /// 鑾峰彇鍛樺伐鍒楄〃 + /// </summary> + /// <returns></returns> + [HttpGet] + public async Task<List<OaStaff>>GetStaffList() + { + 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(30).ToListAsync(); + } + + } + + + } -- Gitblit v1.9.1