| | |
| | | } |
| | | } |
| | | |
| | | orderBiddings = orderBiddings.Where(x => (x.IsSelected == null || x.IsSelected != false)).ToList(); |
| | | orderBiddings = orderBiddings.Where(x => (x.IsSelected == null || x.IsSelected != false)).OrderBy(x=>x.IsSelected).ThenByDescending(x=>x.IsCollect).ToList(); |
| | | var orderBiddingDtos = _mapper.Map<List<OrderBiddingDto>>(orderBiddings); |
| | | if(orderBiddingDtos != null&& orderBiddingDtos.Count > 0) |
| | | { |
| | |
| | | |
| | | RefAsync<int> total = 0; |
| | | |
| | | |
| | | var orderBiddingDetailCheckRepository = new BaseRepository<OrderBiddingDetailCheck>(); |
| | | var orderBiddingWorkPriceRepository = new BaseRepository<OrderBiddingWorkPrice>(); |
| | | var orderBiddingRes = new BaseRepository<OrderBidding>(); |
| | | |
| | | var data = await orderRepository.Context.Queryable<Order, OrderBidding, OrderBiddingDetail ,UserCompany>((a, b ,c ,d) => |
| | | new JoinQueryInfos(JoinType.Inner, a.Id == b.OrderId , |
| | | JoinType.Inner, b.Id == c.OrderBiddingId , |
| | |
| | | WorkCount = c.WorkCount, |
| | | Suppliername = d.Suppliername, |
| | | OrderBiddingId = c.OrderBiddingId, |
| | | IsGuding = b.IsGuding, |
| | | }) |
| | | |
| | | .ToPageListAsync(page.PageIndex, page.PageSize, total); |
| | |
| | | string DakaMingxi = ""; |
| | | int hours = 0; |
| | | int minutes = 0; |
| | | |
| | | int jiabanhours = 0; |
| | | int jiabanminutes = 0; |
| | | |
| | | for (int i = 0; i < orderBiddingDetailChecks.Count; i++) |
| | | { |
| | | |
| | |
| | | hours += timeDifference.Hours; |
| | | minutes += timeDifference.Minutes; |
| | | |
| | | // 获取当前时间 |
| | | DateTime now = DateTime.Now; |
| | | |
| | | // 创建一个表示晚上8点的时间(假定今天) |
| | | DateTime eveningTime = new DateTime(now.Year, now.Month, now.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; |
| | | } |
| | | } |
| | | } |
| | | //如果当天还没有填写申请,则计算工作时间和工资 |
| | | if(dakaDto.IsShenPi == 0) |
| | | { |
| | | var orderBidding = await orderBiddingRes.GetByIdAsync(dakaDto.OrderBiddingId); |
| | | //当前有效的工价 |
| | | var orderBiddingWorkPrice = (await orderBiddingWorkPriceRepository.GetListAsync(x => x.OrderBiddingId == dakaDto.OrderBiddingId && x.IsEn == true && x.IsDeleted == false && x.EffectTime <= dakaDto.WorkDate)).OrderByDescending(x => x.Id).FirstOrDefault(); |
| | | if (orderBiddingWorkPrice != null) |
| | | { |
| | | dakaDto.WorkPrice = orderBiddingWorkPrice.WorkPrice; |
| | | //如果为半固定的临时工,工价固定11块 |
| | | if (orderBidding != null && orderBidding.IsGuding.HasValue && orderBidding.IsGuding.Value == true) |
| | | { |
| | | dakaDto.WorkPrice = 11; |
| | | } |
| | | else |
| | | { |
| | | dakaDto.WorkPrice = orderBiddingWorkPrice.WorkPrice; |
| | | } |
| | | } |
| | | dakaDto.WorkTime = hours+(minutes/60); |
| | | if(dakaDto.WorkerType == 0) |
| | | { |
| | | dakaDto.TodaySalary = dakaDto.WorkTime * dakaDto.WorkPrice; |
| | | |
| | | //如果为半固定的临时工,加班每个小时增加4块钱 |
| | | if (orderBidding != null && orderBidding.IsGuding.HasValue && orderBidding.IsGuding.Value == true) |
| | | { |
| | | var jiabanshijian = jiabanhours + (jiabanminutes / 60); |
| | | dakaDto.TodaySalary += (jiabanshijian * 4); |
| | | } |
| | | } |
| | | else |
| | | { |