From e5d50b0415bef5e93c10b2bfbca98d377d3cad04 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期二, 07 十二月 2021 16:01:56 +0800
Subject: [PATCH] 提交
---
zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs | 160 ++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 150 insertions(+), 10 deletions(-)
diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs
index 0f9bb7f..44a2577 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);
@@ -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
@@ -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();
@@ -2783,6 +2853,59 @@
#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
+
+
List<TongjiBaoBiaoDTO> baifangkehuDTOs = new List<TongjiBaoBiaoDTO>();
#region 涓婇棬鎷滆瀹㈡埛
@@ -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