From 2ff9e22aa01202003c8ba2b3d7c91226e61de1f8 Mon Sep 17 00:00:00 2001
From: 小飞侠 <8277136+liaoxujun@user.noreply.gitee.com>
Date: 星期四, 09 四月 2026 09:03:07 +0800
Subject: [PATCH] no message

---
 cylsg/cylsg.Application/Users/UserAppService.cs |   59 +++++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 47 insertions(+), 12 deletions(-)

diff --git a/cylsg/cylsg.Application/Users/UserAppService.cs b/cylsg/cylsg.Application/Users/UserAppService.cs
index d7899ee..74cf154 100644
--- a/cylsg/cylsg.Application/Users/UserAppService.cs
+++ b/cylsg/cylsg.Application/Users/UserAppService.cs
@@ -63,8 +63,36 @@
             {
                 userDto.userWorker = _mapper.Map<UserWorkerDto>(userWorker);
             }
-           
-            
+            bool IsGuDing = false;
+            var bdct = new BaseRepository<OrderBidding>();
+            if (bdct != null)
+            {
+                var userBd = await bdct.GetFirstAsync(x => x.WorkerUserId == userid&& x.IsGuding==true);
+                if (userBd != null)
+                {
+                    IsGuDing = true;
+                }
+            }
+            if (userDto.userWorker != null)
+                userDto.userWorker.IsLingHuoYongGong = IsGuDing;
+
+            decimal ab = (userDto.userWorker?.TiXianZonge ?? 0) - (userDto.userWorker?.YiTiXianJine ?? 0);
+            if (userDto.userWorker != null)
+            {
+                userDto.userWorker.Balance = ab < 0 ? 0 : ab;
+                if (IsGuDing)
+                {
+
+                    userDto.userWorker.AvailableBalance = (ab - 300) < 0 ? 0 : (ab - 300);
+
+                }
+                else
+
+                    userDto.userWorker.AvailableBalance = userDto.userWorker?.Balance ?? 0;
+            }
+
+
+
             var userCompany = await userCompanyRes.GetFirstAsync(p => p.UserId == userid);
             if (userCompany != null)
             {
@@ -304,29 +332,36 @@
             }
             bool IsGuDing = false;
             var bdct = new BaseRepository<OrderBidding>();
-            if (bdct == null)
+            if (bdct != null)
             {
-                var userBd = await bdct.GetFirstAsync(x => x.WorkerUserId == userid);
+                var userBd = await bdct.GetFirstAsync(x => x.WorkerUserId == userid && x.IsGuding == true);
                 if (userBd != null)
                 {
-                    IsGuDing = userBd.IsGuding ?? false;
+                    IsGuDing = true;
                 }
             }
+            if(userDto.userWorker != null)
             userDto.userWorker.IsLingHuoYongGong = IsGuDing;
-            userDto.userWorker.Balance = (userDto.userWorker.TiXianZonge - userDto.userWorker.YiTiXianJine < 0) ? 0 : (userDto.userWorker.TiXianZonge ?? 0 - userDto.userWorker.YiTiXianJine ?? 0);
-            if (IsGuDing)
+          
+            decimal ab = (userDto.userWorker?.TiXianZonge ?? 0) - (userDto.userWorker?.YiTiXianJine ?? 0);
+            if (userDto.userWorker != null)
             {
-                userDto.userWorker.AvailableBalance = (userDto.userWorker.TiXianZonge - userDto.userWorker.YiTiXianJine - 300 < 0) ? 0 : (userDto.userWorker.TiXianZonge ?? 0 - userDto.userWorker.YiTiXianJine ?? 0 - 300);
+                userDto.userWorker.Balance = ab < 0 ? 0 : ab;
+                if (IsGuDing)
+                {
 
+                    userDto.userWorker.AvailableBalance = (ab - 300) < 0 ? 0 : (ab - 300);
+
+                }
+                else
+
+                    userDto.userWorker.AvailableBalance = userDto.userWorker?.Balance ?? 0;
             }
-            else
-
-                userDto.userWorker.AvailableBalance = userDto.userWorker.Balance;
 
 
 
 
-              var userCompany = await userCompanyRes.GetFirstAsync(p => p.UserId == userid);
+            var userCompany = await userCompanyRes.GetFirstAsync(p => p.UserId == userid);
             if (userCompany != null)
             {
                 userDto.userCompany = _mapper.Map<UserCompanyDto>(userCompany);

--
Gitblit v1.9.1