From ebda5e08f2c9e7a8c4fec39e59c2753c6bd45372 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期四, 09 四月 2026 09:26:01 +0800
Subject: [PATCH] 灵活用工工资计算,修改bug
---
cylsg/cylsg.Application/Orders/OrderWorkerAppService.cs | 35 +++++++++++++++++++++++++++++++++--
1 files changed, 33 insertions(+), 2 deletions(-)
diff --git a/cylsg/cylsg.Application/Orders/OrderWorkerAppService.cs b/cylsg/cylsg.Application/Orders/OrderWorkerAppService.cs
index 68eae2b..4719537 100644
--- a/cylsg/cylsg.Application/Orders/OrderWorkerAppService.cs
+++ b/cylsg/cylsg.Application/Orders/OrderWorkerAppService.cs
@@ -724,7 +724,7 @@
DateTime now = DateTime.Now;
// 鍒涘缓涓�涓〃绀烘櫄涓�8鐐圭殑鏃堕棿锛堝亣瀹氫粖澶╋級
- DateTime eveningTime = new DateTime(now.Year, now.Month, now.Day, 20, 0, 0); // 20:00:0
+ DateTime eveningTime = new DateTime(orderBiddingDetailChecks[i].Checktime.Value.Year, orderBiddingDetailChecks[i].Checktime.Value.Month, orderBiddingDetailChecks[i].Checktime.Value.Day, 20, 0, 0); // 20:00:0
//璁$畻鏄惁涓烘櫄涓�8鐐瑰悗鐨勫姞鐝椂闂�
if (orderBiddingDetailChecks[i].Checktime.Value > eveningTime)
{
@@ -885,6 +885,9 @@
int hours = 0;
int minutes = 0;
+ int jiabanhours = 0;
+ int jiabanminutes = 0;
+
for (int i = 0; i < orderBiddingDetailChecks.Count; i++)
{
@@ -894,18 +897,46 @@
hours += timeDifference.Hours;
minutes += timeDifference.Minutes;
+ // 鑾峰彇褰撳墠鏃堕棿
+ DateTime now = DateTime.Now;
+
+ // 鍒涘缓涓�涓〃绀烘櫄涓�8鐐圭殑鏃堕棿锛堝亣瀹氫粖澶╋級
+ DateTime eveningTime = new DateTime(orderBiddingDetailChecks[i].Checktime.Value.Year, orderBiddingDetailChecks[i].Checktime.Value.Month, orderBiddingDetailChecks[i].Checktime.Value.Day, 20, 0, 0); // 20:00:0
+ //璁$畻鏄惁涓烘櫄涓�8鐐瑰悗鐨勫姞鐝椂闂�
+ if (orderBiddingDetailChecks[i].Checktime.Value > eveningTime)
+ {
+ var timeDifferencejiaban = orderBiddingDetailChecks[i].Checktime.Value - eveningTime;
+ jiabanhours += timeDifferencejiaban.Hours;
+ jiabanminutes += timeDifferencejiaban.Minutes;
+ }
+
}
}
//褰撳墠鏈夋晥鐨勫伐浠�
var orderBiddingWorkPrice = (await orderBiddingWorkPriceRepository.GetListAsync(x => x.OrderBiddingId == orderBidding.Id && x.IsEn == true && x.IsDeleted == false && x.EffectTime <= orderDakaMingxiDto.WorkDate)).OrderByDescending(x => x.Id).FirstOrDefault();
if (orderBiddingWorkPrice != null)
{
- orderDakaMingxiDto.WorkPrice = orderBiddingWorkPrice.WorkPrice;
+ //濡傛灉涓哄崐鍥哄畾鐨勪复鏃跺伐锛屽伐浠峰浐瀹�11鍧�
+ if (orderBidding != null && orderBidding.IsGuding.HasValue && orderBidding.IsGuding.Value == true)
+ {
+ orderDakaMingxiDto.WorkPrice = 11;
+ }
+ else
+ {
+ orderDakaMingxiDto.WorkPrice = orderBiddingWorkPrice.WorkPrice;
+ }
+
}
orderDakaMingxiDto.WorkTime = hours + (minutes / 60);
if (orderDakaMingxiDto.WorkerType == 0)
{
orderDakaMingxiDto.TodaySalary = orderDakaMingxiDto.WorkTime * orderDakaMingxiDto.WorkPrice;
+ //濡傛灉涓哄崐鍥哄畾鐨勪复鏃跺伐锛屽姞鐝瘡涓皬鏃跺鍔�4鍧楅挶
+ if (orderBidding != null && orderBidding.IsGuding.HasValue && orderBidding.IsGuding.Value == true)
+ {
+ var jiabanshijian = jiabanhours + (jiabanminutes / 60);
+ orderDakaMingxiDto.TodaySalary += (jiabanshijian * 4);
+ }
}
else
{
--
Gitblit v1.9.1