From 584cb7c9c691704cc450215ce152ddc6ff9b7d43 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期一, 29 八月 2022 14:39:48 +0800
Subject: [PATCH] 提交
---
zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs | 168 +++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 154 insertions(+), 14 deletions(-)
diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs
index 0f9bb7f..61b5848 100644
--- a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs
@@ -57,7 +57,10 @@
private readonly ILiaotianService _liaotianService;
private readonly IConfiguration _configuration;
private readonly IHttpClientFactory _clientFactory;
-
+ private readonly IHrPositionService _hrPositionService;
+ private readonly IHrDeptService _hrDeptService;
+ private readonly IAdmSigninService _admSigninService;
+ private readonly IExpertService _expertService;
public TongjiBaoBiaoController(ILogger<TongjiBaoBiaoController> logger
, IAdmAttendanceRuleService attendanceRuleService
@@ -82,9 +85,14 @@
, IDtChannelArticleNewsService dtChannelArticleNewsService
, IProjectService projectService
, ICusFangwenjiluService cusFangwenjiluService
- ,ILiaotianService liaotianService
- , IConfiguration configuration
- , IHttpClientFactory clientFactory)
+ , ILiaotianService liaotianService
+ , IConfiguration configuration
+ , IHttpClientFactory clientFactory
+ , IHrPositionService hrPositionService
+ , IHrDeptService hrDeptService
+ , IAdmSigninService admSigninService
+ , IExpertService expertService
+ )
{
_logger = logger;
_attendanceRuleService = attendanceRuleService;
@@ -112,6 +120,10 @@
_liaotianService = liaotianService;
_configuration = configuration;
_clientFactory = clientFactory;
+ _hrPositionService = hrPositionService;
+ _hrDeptService = hrDeptService;
+ _admSigninService = admSigninService;
+ _expertService = expertService;
}
public async Task<IActionResult> IndexAsync(string Tongjitime="")
@@ -935,8 +947,8 @@
if (jijianizhucehuiyuan != null)
{
- //鏈湀鏁伴噺
- List<YaoQingYongHuDTO> zhucehuiyuansyue = new List<YaoQingYongHuDTO>();
+ //鏈湀鏁伴噺
+ List <YaoQingYongHuDTO> zhucehuiyuansyue = new List<YaoQingYongHuDTO>();
try
{
//var pltUserDTO = _userService.GetPltUserEntity(curentuser.Id);
@@ -978,7 +990,7 @@
}
catch (Exception ex)
{
-
+ zhucehuiyuanDTO.benyueshuliang = "0";
}
//var zhucehuiyuansyue = _admPieceCheckService.GetList(curentuser.Id, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianizhucehuiyuan.Id).ToList();
@@ -1082,6 +1094,59 @@
}
if (decimal.Parse(qianyueDTO.benyueshuliang) > 0 || decimal.Parse(qianyueDTO.benrishuliang) > 0)
tuiguangDTOs.Add(qianyueDTO);
+ #endregion
+
+
+ #region 涓撳褰曞叆
+ TongjiBaoBiaoDTO zhuanjialuruDTO = new TongjiBaoBiaoDTO();
+ zhuanjialuruDTO.gongzuo = "涓撳褰曞叆";
+ //鏈湀鏁伴噺
+ var zhuanjialuruDTOsyue = _expertService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin);
+ zhuanjialuruDTO.benyueshuliang = zhuanjialuruDTOsyue.Count.ToString();
+ //鏈棩鏁伴噺
+ var zhuanjialuruDTOsri = zhuanjialuruDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList();
+ zhuanjialuruDTO.benrishuliang = zhuanjialuruDTOsri.Count.ToString();
+
+ var jijianizhuanjialuru = fiPiecerateDTOs.Where(x => x.Project == "涓撳褰曞叆").FirstOrDefault();
+
+ if (jijianizhuanjialuru != null)
+ {
+ var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianizhuanjialuru.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault();
+ if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue)
+ {
+ if (jixiaotichengfangan.Renwustandard == "01")
+ {
+
+ zhuanjialuruDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##");
+ zhuanjialuruDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##");
+ if (jixiaotichengfangan.Tichengstandard == "01")
+ {
+ decimal youxiaojijian = zhuanjialuruDTOsri.Count - jixiaotichengfangan.Renwu.Value;
+ if (youxiaojijian > 0)
+ {
+ zhuanjialuruDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##");
+ }
+
+ }
+
+ }
+ else if (jixiaotichengfangan.Renwustandard == "02")
+ {
+ zhuanjialuruDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ;
+ //if (jixiaotichengfangan.Tichengstandard == "01")
+ //{
+ // decimal youxiaojijian = intentionCustomerDTOs.Count - renwujishu;
+ // if (youxiaojijian > 0)
+ // {
+ // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2);
+ // }
+
+ //}
+ }
+ }
+ }
+ if (zhuanjialuruDTOsyue.Count > 0 || zhuanjialuruDTOsri.Count > 0)
+ tuiguangDTOs.Add(zhuanjialuruDTO);
#endregion
@@ -1205,7 +1270,7 @@
var benyuezonge = dingdanDTOsyue.Sum(x => x.Money) ?? 0;
//鏈棩鏁伴噺
- var dingdanDTOsri = dingdanDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList();
+ var dingdanDTOsri = dingdanDTOsyue.Where(x =>( x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)) || (x.Wangongtime >= chauxnshijian.Date && x.Wangongtime < chauxnshijian.Date.AddDays(1)) ).ToList();
foreach (var cooperOrderDTO in dingdanDTOsri)
{
TongjiDingDanDTO dingdanDTO = new TongjiDingDanDTO();
@@ -1802,7 +1867,7 @@
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
ViewData["curentuser"] = curentuser;
- DateTime chauxnshijian = DateTime.Now;
+ DateTime chauxnshijian = DateTime.Now.Date;
if (!string.IsNullOrEmpty(Tongjitime))
{
DateTime.TryParse(Tongjitime, out chauxnshijian);
@@ -1812,12 +1877,12 @@
string[] Userids = null;
if (!string.IsNullOrEmpty(userid) && userid!= "null")
{
- Userids = userid.Split(','); ;
+ Userids = userDTOs.Where(x=> userid.Split(',').Contains(x.Id)).OrderBy(x => x.DeptId).ThenBy(x => x.HrPosition).Select(x => x.Id).ToArray();
}
else
{
- Userids = userDTOs.OrderBy(x => x.UserSn).Select(x => x.Id).ToArray();
+ Userids = userDTOs.OrderBy(x => x.DeptId).ThenBy(x=>x.HrPosition).Select(x => x.Id).ToArray();
}
List<TongjibaobiaobaobiaoDTO> tongjibaobiaobaobiaoDTOs = new List<TongjibaobiaobaobiaoDTO>();
@@ -1881,6 +1946,11 @@
{
var userDTO = userDTOs.Where(x=>x.Id == Userid).FirstOrDefault();
string position = userDTO.HrPosition;
+
+ var hrPositionDTO = _hrPositionService.Get(userDTO.HrPosition);
+
+ var deptDTO = _hrDeptService.Get(userDTO.DeptId);
+ var admSignInDTO = _admSigninService.GetByUserAndDate(Userid, chauxnshijian);
var hrJixiaotichengThis = hrJixiaotichengDTOs.Where(x => x.PostId == position).ToList();
@@ -2681,7 +2751,7 @@
}
catch (Exception ex)
{
-
+ zhucehuiyuanDTO.benyueshuliang = "0";
}
@@ -2780,6 +2850,59 @@
}
if (decimal.Parse(qianyueDTO.benyueshuliang) > 0 || decimal.Parse(qianyueDTO.benrishuliang) > 0)
tuiguangDTOs.Add(qianyueDTO);
+ #endregion
+
+
+ #region 涓撳褰曞叆
+ TongjiBaoBiaoDTO zhuanjialuruDTO = new TongjiBaoBiaoDTO();
+ zhuanjialuruDTO.gongzuo = "涓撳褰曞叆";
+ //鏈湀鏁伴噺
+ var zhuanjialuruDTOsyue = _expertService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin);
+ zhuanjialuruDTO.benyueshuliang = zhuanjialuruDTOsyue.Count.ToString();
+ //鏈棩鏁伴噺
+ var zhuanjialuruDTOsri = zhuanjialuruDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList();
+ zhuanjialuruDTO.benrishuliang = zhuanjialuruDTOsri.Count.ToString();
+
+ var jijianizhuanjialuru = fiPiecerateDTOs.Where(x => x.Project == "涓撳褰曞叆").FirstOrDefault();
+
+ if (jijianizhuanjialuru != null)
+ {
+ var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianizhuanjialuru.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault();
+ if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue)
+ {
+ if (jixiaotichengfangan.Renwustandard == "01")
+ {
+
+ zhuanjialuruDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##");
+ zhuanjialuruDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##");
+ if (jixiaotichengfangan.Tichengstandard == "01")
+ {
+ decimal youxiaojijian = zhuanjialuruDTOsri.Count - jixiaotichengfangan.Renwu.Value;
+ if (youxiaojijian > 0)
+ {
+ zhuanjialuruDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##");
+ }
+
+ }
+
+ }
+ else if (jixiaotichengfangan.Renwustandard == "02")
+ {
+ zhuanjialuruDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ;
+ //if (jixiaotichengfangan.Tichengstandard == "01")
+ //{
+ // decimal youxiaojijian = intentionCustomerDTOs.Count - renwujishu;
+ // if (youxiaojijian > 0)
+ // {
+ // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2);
+ // }
+
+ //}
+ }
+ }
+ }
+ if (zhuanjialuruDTOsyue.Count > 0 || zhuanjialuruDTOsri.Count > 0)
+ tuiguangDTOs.Add(zhuanjialuruDTO);
#endregion
@@ -2903,7 +3026,7 @@
var benyuezonge = dingdanDTOsyue.Sum(x => x.Money) ?? 0;
//鏈棩鏁伴噺
- var dingdanDTOsri = dingdanDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList();
+ var dingdanDTOsri = dingdanDTOsyue.Where(x => (x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)) || (x.Wangongtime >= chauxnshijian.Date && x.Wangongtime < chauxnshijian.Date.AddDays(1))).ToList();
foreach (var cooperOrderDTO in dingdanDTOsri)
{
TongjiDingDanDTO dingdanDTO = new TongjiDingDanDTO();
@@ -3488,7 +3611,24 @@
tongjibaobiaobaobiaoDTO.ziliaoweihuDTOs = ziliaoweihuDTOs;
tongjibaobiaobaobiaoDTO.xiangmushishiDTOs = xiangmushishiDTOs;
tongjibaobiaobaobiaoDTO.dingdanDTOsCount = dingdanDTOsCount;
- tongjibaobiaobaobiaoDTO.UserName = userDTO.UserName;
+ tongjibaobiaobaobiaoDTO.UserName = "";
+ if (deptDTO != null)
+ {
+ tongjibaobiaobaobiaoDTO.UserName += "閮ㄩ棬锛�" + deptDTO.DeptName + "    ";
+ }
+ tongjibaobiaobaobiaoDTO.UserName += "濮撳悕锛�" + userDTO.UserName + "    ";
+
+ tongjibaobiaobaobiaoDTO.UserDaka = "";
+ if (hrPositionDTO != null)
+ {
+ tongjibaobiaobaobiaoDTO.UserDaka += "鑱屽姟锛�" + hrPositionDTO.PostName + "    ";
+ }
+ if (admSignInDTO != null)
+ {
+ tongjibaobiaobaobiaoDTO.UserDaka += " 鎵撳崱鏃堕棿锛氫笂鍗� " + (admSignInDTO.MorningIn.HasValue? admSignInDTO.MorningIn.Value.ToString("HH:mm:ss"):"") + "-" + (admSignInDTO.MorningOut.HasValue ? admSignInDTO.MorningOut.Value.ToString("HH:mm:ss") : "")
+ + "    涓嬪崍 " + (admSignInDTO.AfternoonIn.HasValue ? admSignInDTO.AfternoonIn.Value.ToString("HH:mm:ss") : "") + "-" + (admSignInDTO.AfternoonOut.HasValue ? admSignInDTO.AfternoonOut.Value.ToString("HH:mm:ss") : "")
+ + (admSignInDTO.OvertimeIn.HasValue ? " 鍔犵彮 " + admSignInDTO.OvertimeIn.Value.ToString("HH:mm:ss") + "-" : "") + (admSignInDTO.OvertimeOut.HasValue ? admSignInDTO.OvertimeOut.Value.ToString("HH:mm:ss") : "");
+ }
tongjibaobiaobaobiaoDTOs.Add(tongjibaobiaobaobiaoDTO);
--
Gitblit v1.9.1