From 8b613a5275e6fe23b91f65cc6a7fba720ae4d7ef Mon Sep 17 00:00:00 2001 From: 移动系统liao <liaoxujun@qq.com> Date: 星期二, 18 二月 2025 11:10:35 +0800 Subject: [PATCH] 完成阿里云本地上传token生成,实现小程序本地上传 --- cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs | 54 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 49 insertions(+), 5 deletions(-) diff --git a/cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs b/cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs index d255339..5ccdc56 100644 --- a/cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs +++ b/cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs @@ -25,8 +25,29 @@ _OAServices = oaservices; _SugarClient = sugarClient.AsTenant().GetConnection("ECTESTOADB"); } + /// <summary> + /// 鏌ヨ + /// </summary> + /// <returns></returns> + [HttpGet] + [AllowAnonymous] + public async Task<List<OaWorkPlan>> gettest() + { + var datal = await _SugarClient.Queryable<OaWorkPlan>().Where(x=>x.PlanType==3&&x.PlanDataType==17) + .Select(x => new OaWorkPlan + { + OaWorkPlanShenpi = SqlFunc.Subqueryable<OaWorkPlanShenpi>().Where(y => y.OA_WorkPlanId == x.Keyid).First() + }, true).MergeTable() + .OrderBy(z => z.OaWorkPlanShenpi.ApprovalTime).ToListAsync(); + return datal; + var data2 = await _SugarClient.Queryable<OaWorkPlan>() + .Select(x => new OaWorkPlan + { + SentStaff = SqlFunc.Subqueryable<OaStaff>().Where(y => y.MemberId == x.SentStaffId).First() + }, true).MergeTable() + .OrderBy(y => y.SentStaff.MemberId).ToListAsync(); - + } /// <summary> /// 鏌ヨ /// </summary> @@ -41,12 +62,13 @@ Expression<Func<OaWorkPlan, bool>> SearchList = (x) => true; //宸濆嵃宸ヤ綔鍗� + SearchList = SearchList.And(x => x.ApprovalStatus != PlanStatusType.Uncommitted); SearchList = SearchList.And(x => x.MemberId == _OAServices.firmId); SearchList = SearchList.And(x => x.PlanType == 3); SearchList = SearchList.And(x => x.PlanDataType == 17); //SearchList = SearchList.And(x => x.ApprovalStatus == PlanStatusType.unApproval); //SearchList = SearchList.And(x => x.OaWorkPlanShenpis.Where(y => y.Buzhou == 1 && y.ApprovalStaffId == Permissions.MemberId).Count()<=0); - SearchList = SearchList.And(x => x.DepartId == Permissions.DepartId); + //SearchList = SearchList.And(x => x.DepartId == Permissions.DepartId); 閮ㄩ棬绛涢�� if (!string.IsNullOrEmpty(param.StaffName)) { SearchList = SearchList.And(x => x.SentStaff.Name.Contains(param.StaffName)); @@ -90,7 +112,7 @@ RefAsync<int> totle = 0; //寮哄埗澧炲姞鍛樺伐杩囨护 - + var data = await _SugarClient.Queryable<OaWorkPlan>().Includes(x=>x.Depart) .Includes(x=>x.OaWorkPlanShenpis.Where(y=>y.ApprovalStaffId==Permissions.MemberId&&y.Buzhou==1).ToList()) .Where(SearchList).OrderByDescending(x => x.PlanStartTime).Mapper( @@ -135,7 +157,18 @@ { throw Oops.Oh("娌℃湁鏉冮檺"); } - return await _SugarClient.Queryable<OaWorkPlan>().Includes(x => x.OaWorkPlanShenpis.Where(y => y.Buzhou == 1).ToList(), y => y.ApprovalStaff).Includes(x => x.SentStaff).Includes(x => x.Depart).Includes(x => x.WorkPlanAttachments).Where(x=>x.Keyid==id).FirstAsync(); + return await _SugarClient.Queryable<OaWorkPlan>().Includes(x => x.OaWorkPlanShenpis.Where(y => y.Buzhou == 1).ToList(), y => y.ApprovalStaff).Includes(x => x.SentStaff).Includes(x => x.Depart).Includes(x => x.WorkPlanAttachments).Where(x=>x.Keyid==id).Mapper(x=> + { + if (x.ApprovalStatus == PlanStatusType.unApproval) + { + var oashenpi = x.OaWorkPlanShenpis?.Where(x=>x.ApprovalStaffId==Permissions.MemberId).FirstOrDefault(); + if (oashenpi != null) + x.ApprovalStatus = oashenpi.ApprovalStatus; + + + } + ; + }).FirstAsync(); } /// <summary> @@ -157,6 +190,10 @@ throw Oops.Oh("娌℃湁鎵惧埌鎶ラ攢鍗�"); if (data.ApprovalStatus != null && data.ApprovalStatus != PlanStatusType.unApproval) throw Oops.Oh("鎶ラ攢鍗曞凡缁忔壒澶嶅畬姣�"); + if(data.ApprovalStatus== PlanStatusType.Uncommitted) + { + throw Oops.Oh("鎶ラ攢鍗曟湭鎻愪氦涓嶅彲瀹℃壒"); + } OaWorkPlanShenpi shenpi = data.OaWorkPlanShenpis.Where(x => x.ApprovalStaffId == Permissions.MemberId&&x.Buzhou==1).FirstOrDefault(); if (shenpi!=null) { @@ -167,7 +204,14 @@ } else { - await _SugarClient.AsTenant().BeginTranAsync(); + + + data.RewardResult = param.RewardResult; + data.PlanContent = param.PlanContent; + if (param.PlanMoney > 0 && param.PlanMoney <= data.PlanMoney) + data.PlanMoney = param.PlanMoney; + + await _SugarClient.AsTenant().BeginTranAsync(); try { if (param.ApprovalStatus == PlanStatusType.No) -- Gitblit v1.9.1