From 5856a6e5de198436bc112923609db21c9a45fd10 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期二, 01 七月 2025 15:58:42 +0800
Subject: [PATCH] 增加公司收藏工人的功能
---
cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 50 insertions(+), 5 deletions(-)
diff --git a/cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs b/cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs
index d255339..18dd22f 100644
--- a/cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs
+++ b/cylsg/cylsg.Application/CyOS/CyOSBaoXiaoZHuGuanController.cs
@@ -15,6 +15,7 @@
/// 鎶ラ攢涓荤鐩稿叧鎺у埗鍣�
/// </summary>
[Authorize]
+ [ApiDescriptionSettings("CYOA")]
public class CyOSBaoXiaoZHuGuanController: IDynamicApiController
{
private readonly IOAServices _OAServices;
@@ -25,8 +26,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 +63,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 +113,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 +158,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 +191,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 +205,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