From bf14008acffe7a9a7ac6e2eeb38ce3552b71b33a Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期二, 14 三月 2023 13:43:30 +0800 Subject: [PATCH] 提交 --- zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs | 378 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 326 insertions(+), 52 deletions(-) diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs index 0f9bb7f..f83cc95 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="") @@ -189,10 +201,13 @@ xiangmuDTO.gongzuo = "閲囪喘椤圭洰褰曞叆"; //鏈湀鏁伴噺 var projectDTOsyue = _projectService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin); - xiangmuDTO.benyueshuliang = projectDTOsyue.Count.ToString(); + var zhengfuprojectDTOsyue = _projectService.GetListsalaryzhengfu(curentuser.Id, dateminkaoqin, datemaxkaoqin); + + xiangmuDTO.benyueshuliang = (projectDTOsyue.Count+ zhengfuprojectDTOsyue .Count).ToString(); //鏈棩鏁伴噺 var projectDTOsri = projectDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); - xiangmuDTO.benrishuliang = projectDTOsri.Count.ToString(); + var zhengfuprojectDTOsri = zhengfuprojectDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + xiangmuDTO.benrishuliang = (projectDTOsri.Count+ zhengfuprojectDTOsri.Count).ToString(); var jijianixiangmu = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘椤圭洰褰曞叆").FirstOrDefault(); @@ -209,7 +224,7 @@ xiangmuDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); if (jixiaotichengfangan.Tichengstandard == "01") { - decimal youxiaojijian = projectDTOsri.Count - jixiaotichengfangan.Renwu.Value; + decimal youxiaojijian = projectDTOsri.Count+ zhengfuprojectDTOsri.Count - jixiaotichengfangan.Renwu.Value; if (youxiaojijian > 0) { xiangmuDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); @@ -232,10 +247,63 @@ } } } - if(projectDTOsyue.Count > 0 || projectDTOsri.Count > 0 ) + if(projectDTOsyue.Count > 0 || projectDTOsri.Count > 0 || zhengfuprojectDTOsri.Count > 0) tuiguangDTOs.Add(xiangmuDTO); #endregion + + + #region 閲囪喘鍏憡褰曞叆 + TongjiBaoBiaoDTO caigougonggaoDTO = new TongjiBaoBiaoDTO(); + caigougonggaoDTO.gongzuo = "閲囪喘鍏憡褰曞叆"; + //鏈湀鏁伴噺 + var caigougonggaoDTOsyue = _projectService.GetcaigougonggaoListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin); + caigougonggaoDTO.benyueshuliang = caigougonggaoDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var caigougonggaoDTOsri = caigougonggaoDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + caigougonggaoDTO.benrishuliang = caigougonggaoDTOsri.Count.ToString(); + + var jijianicaigougonggao = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘鍏憡褰曞叆").FirstOrDefault(); + + if (jijianicaigougonggao != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianicaigougonggao.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + //鏈湀瑙勫畾 + caigougonggaoDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + //鏈棩瑙勫畾 + caigougonggaoDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = caigougonggaoDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + caigougonggaoDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + } + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + //鏈湀瑙勫畾 + caigougonggaoDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ; + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = _intentionCustomerDTOs.Count + cooperatecustomCustomerDTOs.Count - renwujishu; + // if (youxiaojijian > 0) + // { + // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + // } + + //} + } + } + } + if (caigougonggaoDTOsyue.Count > 0 || caigougonggaoDTOsri.Count > 0) + tuiguangDTOs.Add(caigougonggaoDTO); + #endregion #region 瀹㈡埛璧勬枡褰曞叆 TongjiBaoBiaoDTO kehuluruDTO = new TongjiBaoBiaoDTO(); @@ -660,10 +728,10 @@ tuiguangDTOs.Add(qunzutuiguangDTO); #endregion - #region 鏈嬪弸鍦堝師鍒� + #region 鏈嬪弸鍦堣浆鍙� TongjiBaoBiaoDTO pengyouquanDTO = new TongjiBaoBiaoDTO(); - pengyouquanDTO.gongzuo = "鏈嬪弸鍦堝師鍒�"; - var jijianipengyouquan = fiPiecerateDTOs.Where(x => x.Project == "鏈嬪弸鍦堝師鍒�").FirstOrDefault(); + pengyouquanDTO.gongzuo = "鏈嬪弸鍦堣浆鍙�"; + var jijianipengyouquan = fiPiecerateDTOs.Where(x => x.Project == "鏈嬪弸鍦堣浆鍙�").FirstOrDefault(); if (jijianipengyouquan != null) { @@ -708,16 +776,22 @@ //} } + else if (jixiaotichengfangan.Renwustandard == "05") + { + //鏈湀瑙勫畾 + pengyouquanDTO.benyueqingkuang = (4 * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + + } } } if (decimal.Parse(pengyouquanDTO.benyueshuliang) > 0 || decimal.Parse(pengyouquanDTO.benrishuliang) > 0) tuiguangDTOs.Add(pengyouquanDTO); #endregion - #region 璁哄潧鍙戝笘 + #region 璁哄潧鎺ㄥ箍 TongjiBaoBiaoDTO luntanfatieDTO = new TongjiBaoBiaoDTO(); - luntanfatieDTO.gongzuo = "璁哄潧鍙戝笘"; - var jijianiluntanfatie = fiPiecerateDTOs.Where(x => x.Project == "璁哄潧鍙戝笘").FirstOrDefault(); + luntanfatieDTO.gongzuo = "璁哄潧鎺ㄥ箍"; + var jijianiluntanfatie = fiPiecerateDTOs.Where(x => x.Project == "璁哄潧鎺ㄥ箍").FirstOrDefault(); if (jijianiluntanfatie != null) { @@ -768,10 +842,10 @@ tuiguangDTOs.Add(luntanfatieDTO); #endregion - #region 璺熷笘璇勮 + #region 璐村惂鎺ㄥ箍 TongjiBaoBiaoDTO gentiepinglunDTO = new TongjiBaoBiaoDTO(); - gentiepinglunDTO.gongzuo = "璺熷笘璇勮"; - var jijianigentiepinglun = fiPiecerateDTOs.Where(x => x.Project == "璺熷笘璇勮").FirstOrDefault(); + gentiepinglunDTO.gongzuo = "璐村惂鎺ㄥ箍"; + var jijianigentiepinglun = fiPiecerateDTOs.Where(x => x.Project == "璐村惂鎺ㄥ箍").FirstOrDefault(); if (jijianigentiepinglun != null) { @@ -935,8 +1009,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 +1052,7 @@ } catch (Exception ex) { - + zhucehuiyuanDTO.benyueshuliang = "0"; } //var zhucehuiyuansyue = _admPieceCheckService.GetList(curentuser.Id, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianizhucehuiyuan.Id).ToList(); @@ -1085,6 +1159,59 @@ #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 + + List<TongjiBaoBiaoDTO> baifangkehuDTOs = new List<TongjiBaoBiaoDTO>(); #region 涓婇棬鎷滆瀹㈡埛 @@ -1135,16 +1262,22 @@ //} } + else if (jixiaotichengfangan.Renwustandard == "05") + { + //鏈湀瑙勫畾 + shangmenbanfangDTO.benyueqingkuang = (4 * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + + } } } if (decimal.Parse(shangmenbanfangDTO.benyueshuliang) > 0 || decimal.Parse(shangmenbanfangDTO.benrishuliang) > 0) baifangkehuDTOs.Add(shangmenbanfangDTO); #endregion - #region 鎺ュ緟鏉ヨ瀹㈡埛 + #region 褰曞叆瀹㈡埛鍜ㄨ TongjiBaoBiaoDTO jiedailaifangDTO = new TongjiBaoBiaoDTO(); - jiedailaifangDTO.gongzuo = "鎺ュ緟鏉ヨ瀹㈡埛"; - var jijianijiedailaifang = fiPiecerateDTOs.Where(x => x.Project == "鎺ュ緟鏉ヨ瀹㈡埛").FirstOrDefault(); + jiedailaifangDTO.gongzuo = "褰曞叆瀹㈡埛鍜ㄨ"; + var jijianijiedailaifang = fiPiecerateDTOs.Where(x => x.Project == "褰曞叆瀹㈡埛鍜ㄨ").FirstOrDefault(); if (jijianijiedailaifang != null) { @@ -1205,7 +1338,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(); @@ -1405,10 +1538,10 @@ ziliaoweihuDTOs.Add(zhengcaizhishiDTO); #endregion - #region 鏂板鍏紬鍙峰叧娉� + #region 寰俊寰崥鍏紬鍙锋柊澧炵矇涓� TongjiBaoBiaoDTO gongzhonghaoDTO = new TongjiBaoBiaoDTO(); - gongzhonghaoDTO.gongzuo = "鏂板鍏紬鍙峰叧娉�"; - var jijianigongzhonghao = fiPiecerateDTOs.Where(x => x.Project == "鏂板鍏紬鍙峰叧娉�").FirstOrDefault(); + gongzhonghaoDTO.gongzuo = "寰俊寰崥鍏紬鍙锋柊澧炵矇涓�"; + var jijianigongzhonghao = fiPiecerateDTOs.Where(x => x.Project == "寰俊寰崥鍏紬鍙锋柊澧炵矇涓�").FirstOrDefault(); if (jijianigongzhonghao != null) { @@ -1802,7 +1935,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 +1945,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>(); @@ -1882,6 +2015,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(); @@ -1892,10 +2030,12 @@ xiangmuDTO.gongzuo = "閲囪喘椤圭洰褰曞叆"; //鏈湀鏁伴噺 var projectDTOsyue = _projectService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin); - xiangmuDTO.benyueshuliang = projectDTOsyue.Count.ToString(); + var zhengfuprojectDTOsyue = _projectService.GetListsalaryzhengfu(Userid, dateminkaoqin, datemaxkaoqin); + xiangmuDTO.benyueshuliang = (projectDTOsyue.Count + zhengfuprojectDTOsyue.Count).ToString(); //鏈棩鏁伴噺 var projectDTOsri = projectDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); - xiangmuDTO.benrishuliang = projectDTOsri.Count.ToString(); + var zhengfuprojectDTOsri = zhengfuprojectDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + xiangmuDTO.benrishuliang = (projectDTOsri.Count+ zhengfuprojectDTOsri.Count).ToString(); var jijianixiangmu = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘椤圭洰褰曞叆").FirstOrDefault(); @@ -1912,7 +2052,7 @@ xiangmuDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); if (jixiaotichengfangan.Tichengstandard == "01") { - decimal youxiaojijian = projectDTOsri.Count - jixiaotichengfangan.Renwu.Value; + decimal youxiaojijian = projectDTOsri.Count + zhengfuprojectDTOsri.Count - jixiaotichengfangan.Renwu.Value; if (youxiaojijian > 0) { xiangmuDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); @@ -1939,6 +2079,58 @@ tuiguangDTOs.Add(xiangmuDTO); #endregion + + #region 閲囪喘鍏憡褰曞叆 + TongjiBaoBiaoDTO caigougonggaoDTO = new TongjiBaoBiaoDTO(); + caigougonggaoDTO.gongzuo = "閲囪喘鍏憡褰曞叆"; + //鏈湀鏁伴噺 + var caigougonggaoDTOsyue = _projectService.GetcaigougonggaoListsalary(Userid, dateminkaoqin, datemaxkaoqin); + caigougonggaoDTO.benyueshuliang = caigougonggaoDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var caigougonggaoDTOsri = caigougonggaoDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + caigougonggaoDTO.benrishuliang = caigougonggaoDTOsri.Count.ToString(); + + var jijianicaigougonggao = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘鍏憡褰曞叆").FirstOrDefault(); + + if (jijianicaigougonggao != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianicaigougonggao.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + //鏈湀瑙勫畾 + caigougonggaoDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + //鏈棩瑙勫畾 + caigougonggaoDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = caigougonggaoDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + caigougonggaoDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + } + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + //鏈湀瑙勫畾 + caigougonggaoDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ; + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = _intentionCustomerDTOs.Count + cooperatecustomCustomerDTOs.Count - renwujishu; + // if (youxiaojijian > 0) + // { + // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + // } + + //} + } + } + } + if (caigougonggaoDTOsyue.Count > 0 || caigougonggaoDTOsri.Count > 0) + tuiguangDTOs.Add(caigougonggaoDTO); + #endregion #region 瀹㈡埛璧勬枡褰曞叆 TongjiBaoBiaoDTO kehuluruDTO = new TongjiBaoBiaoDTO(); @@ -2122,7 +2314,7 @@ weixnDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); if (jixiaotichengfangan.Tichengstandard == "01") { - decimal youxiaojijian = cooperweixinDTOsri.Count + intentionweixinDTOsyue.Count - jixiaotichengfangan.Renwu.Value; + decimal youxiaojijian = cooperweixinDTOsri.Count + intentionweixinDTOsri.Count - jixiaotichengfangan.Renwu.Value; if (youxiaojijian > 0) { weixnDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); @@ -2363,10 +2555,10 @@ tuiguangDTOs.Add(qunzutuiguangDTO); #endregion - #region 鏈嬪弸鍦堝師鍒� + #region 鏈嬪弸鍦堣浆鍙� TongjiBaoBiaoDTO pengyouquanDTO = new TongjiBaoBiaoDTO(); - pengyouquanDTO.gongzuo = "鏈嬪弸鍦堝師鍒�"; - var jijianipengyouquan = fiPiecerateDTOs.Where(x => x.Project == "鏈嬪弸鍦堝師鍒�").FirstOrDefault(); + pengyouquanDTO.gongzuo = "鏈嬪弸鍦堣浆鍙�"; + var jijianipengyouquan = fiPiecerateDTOs.Where(x => x.Project == "鏈嬪弸鍦堣浆鍙�").FirstOrDefault(); if (jijianipengyouquan != null) { @@ -2411,16 +2603,22 @@ //} } + else if (jixiaotichengfangan.Renwustandard == "05") + { + //鏈湀瑙勫畾 + pengyouquanDTO.benyueqingkuang = (4 * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + + } } } if (decimal.Parse(pengyouquanDTO.benyueshuliang) > 0 || decimal.Parse(pengyouquanDTO.benrishuliang) > 0) tuiguangDTOs.Add(pengyouquanDTO); #endregion - #region 璁哄潧鍙戝笘 + #region 璁哄潧鎺ㄥ箍 TongjiBaoBiaoDTO luntanfatieDTO = new TongjiBaoBiaoDTO(); - luntanfatieDTO.gongzuo = "璁哄潧鍙戝笘"; - var jijianiluntanfatie = fiPiecerateDTOs.Where(x => x.Project == "璁哄潧鍙戝笘").FirstOrDefault(); + luntanfatieDTO.gongzuo = "璁哄潧鎺ㄥ箍"; + var jijianiluntanfatie = fiPiecerateDTOs.Where(x => x.Project == "璁哄潧鎺ㄥ箍").FirstOrDefault(); if (jijianiluntanfatie != null) { @@ -2471,10 +2669,10 @@ tuiguangDTOs.Add(luntanfatieDTO); #endregion - #region 璺熷笘璇勮 + #region 璐村惂鎺ㄥ箍 TongjiBaoBiaoDTO gentiepinglunDTO = new TongjiBaoBiaoDTO(); - gentiepinglunDTO.gongzuo = "璺熷笘璇勮"; - var jijianigentiepinglun = fiPiecerateDTOs.Where(x => x.Project == "璺熷笘璇勮").FirstOrDefault(); + gentiepinglunDTO.gongzuo = "璐村惂鎺ㄥ箍"; + var jijianigentiepinglun = fiPiecerateDTOs.Where(x => x.Project == "璐村惂鎺ㄥ箍").FirstOrDefault(); if (jijianigentiepinglun != null) { @@ -2681,7 +2879,7 @@ } catch (Exception ex) { - + zhucehuiyuanDTO.benyueshuliang = "0"; } @@ -2783,6 +2981,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 涓婇棬鎷滆瀹㈡埛 @@ -2833,16 +3084,22 @@ //} } + else if (jixiaotichengfangan.Renwustandard == "05") + { + //鏈湀瑙勫畾 + shangmenbanfangDTO.benyueqingkuang = (4 * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + + } } } if (decimal.Parse(shangmenbanfangDTO.benyueshuliang) > 0 || decimal.Parse(shangmenbanfangDTO.benrishuliang) > 0) baifangkehuDTOs.Add(shangmenbanfangDTO); #endregion - #region 鎺ュ緟鏉ヨ瀹㈡埛 + #region 褰曞叆瀹㈡埛鍜ㄨ TongjiBaoBiaoDTO jiedailaifangDTO = new TongjiBaoBiaoDTO(); - jiedailaifangDTO.gongzuo = "鎺ュ緟鏉ヨ瀹㈡埛"; - var jijianijiedailaifang = fiPiecerateDTOs.Where(x => x.Project == "鎺ュ緟鏉ヨ瀹㈡埛").FirstOrDefault(); + jiedailaifangDTO.gongzuo = "褰曞叆瀹㈡埛鍜ㄨ"; + var jijianijiedailaifang = fiPiecerateDTOs.Where(x => x.Project == "褰曞叆瀹㈡埛鍜ㄨ").FirstOrDefault(); if (jijianijiedailaifang != null) { @@ -2903,7 +3160,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(); @@ -3103,10 +3360,10 @@ ziliaoweihuDTOs.Add(zhengcaizhishiDTO); #endregion - #region 鏂板鍏紬鍙峰叧娉� + #region 寰俊寰崥鍏紬鍙锋柊澧炵矇涓� TongjiBaoBiaoDTO gongzhonghaoDTO = new TongjiBaoBiaoDTO(); - gongzhonghaoDTO.gongzuo = "鏂板鍏紬鍙峰叧娉�"; - var jijianigongzhonghao = fiPiecerateDTOs.Where(x => x.Project == "鏂板鍏紬鍙峰叧娉�").FirstOrDefault(); + gongzhonghaoDTO.gongzuo = "寰俊寰崥鍏紬鍙锋柊澧炵矇涓�"; + var jijianigongzhonghao = fiPiecerateDTOs.Where(x => x.Project == "寰俊寰崥鍏紬鍙锋柊澧炵矇涓�").FirstOrDefault(); if (jijianigongzhonghao != null) { @@ -3488,7 +3745,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