From ea037964dba48654bdaf7169517c64508984841e Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期一, 19 七月 2021 14:53:45 +0800 Subject: [PATCH] 今日开发: 工作考评 按部门排序。不显示离职员工 工作统计,去掉标题 所有查询,只选择开始或者结束日期,自动补充另外一个日期 工作统计增加根据日期查询,只显示有数据的项 增加全员工作统计菜单,可以查询每个每个在职员工的工作统计 --- zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs | 1796 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 1,730 insertions(+), 66 deletions(-) diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs index 4e5fde7..8df149c 100644 --- a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs @@ -105,19 +105,22 @@ _liaotianService = liaotianService; } - public IActionResult Index() + public IActionResult Index(string Tongjitime="") { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); ViewData["curentuser"] = curentuser; - + DateTime chauxnshijian = DateTime.Now; + if (!string.IsNullOrEmpty(Tongjitime)) + { + DateTime.TryParse(Tongjitime,out chauxnshijian); + } + + - - - - DateTime dateminkaoqin = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); + DateTime dateminkaoqin = new DateTime(chauxnshijian.Year, chauxnshijian.Month, 1); DateTime datemaxkaoqin = dateminkaoqin.AddMonths(1); int Yingchuqin = 0; int Offdays = 0; @@ -168,7 +171,7 @@ } dateminkaoqin = dateminkaoqin.AddDays(1); } - dateminkaoqin = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); + dateminkaoqin = new DateTime(chauxnshijian.Year, chauxnshijian.Month, 1); List<TongjiBaoBiaoDTO> tuiguangDTOs = new List<TongjiBaoBiaoDTO>(); @@ -179,7 +182,7 @@ var projectDTOsyue = _projectService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin); xiangmuDTO.benyueshuliang = projectDTOsyue.Count.ToString(); //鏈棩鏁伴噺 - var projectDTOsri = projectDTOsyue.Where(x => x.Createtime >= DateTime.Now.Date && x.Createtime < DateTime.Now.Date.AddDays(1)).ToList(); + var projectDTOsri = projectDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); xiangmuDTO.benrishuliang = projectDTOsri.Count.ToString(); var jijianixiangmu = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘椤圭洰褰曞叆").FirstOrDefault(); @@ -220,7 +223,8 @@ } } } - tuiguangDTOs.Add(xiangmuDTO); + if(projectDTOsyue.Count > 0 || projectDTOsri.Count > 0 ) + tuiguangDTOs.Add(xiangmuDTO); #endregion @@ -231,7 +235,7 @@ var intentionCustomerDTOsyue = _intentionCustomerService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin); kehuluruDTO.benyueshuliang = intentionCustomerDTOsyue.Count .ToString(); //鏈棩鏁伴噺 - var intentionCustomerDTOsri = intentionCustomerDTOsyue.Where(x => x.Createtime >= DateTime.Now.Date && x.Createtime < DateTime.Now.Date.AddDays(1)).ToList(); + var intentionCustomerDTOsri = intentionCustomerDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); kehuluruDTO.benrishuliang = intentionCustomerDTOsri.Count.ToString(); var jijianikehuluru = fiPiecerateDTOs.Where(x => x.Project == "瀹㈡埛璧勬枡褰曞叆").FirstOrDefault(); @@ -272,7 +276,8 @@ } } } - tuiguangDTOs.Add(kehuluruDTO); + if (intentionCustomerDTOsyue.Count > 0 || intentionCustomerDTOsri.Count > 0) + tuiguangDTOs.Add(kehuluruDTO); #endregion #region 鏂板姞缇ょ粍 @@ -282,7 +287,7 @@ var groupTopicDTOsyue = _groupTopicService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin); qunzuDTO.benyueshuliang = groupTopicDTOsyue.Count.ToString(); //鏈棩鏁伴噺 - var groupTopicDTOsri = groupTopicDTOsyue.Where(x => x.Createtime >= DateTime.Now.Date && x.Createtime < DateTime.Now.Date.AddDays(1)).ToList(); + var groupTopicDTOsri = groupTopicDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); qunzuDTO.benrishuliang = groupTopicDTOsri.Count.ToString(); var jijianixianggroupTopic = fiPiecerateDTOs.Where(x => x.Project == "鏂板姞缇ょ粍").FirstOrDefault(); @@ -323,7 +328,8 @@ } } } - tuiguangDTOs.Add(qunzuDTO); + if (groupTopicDTOsyue.Count > 0 || groupTopicDTOsri.Count > 0) + tuiguangDTOs.Add(qunzuDTO); #endregion #region 鐢佃瘽鎺ㄥ箍 @@ -333,7 +339,7 @@ var intentionVisitDTOsyue = _intentionVisitService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin).Where(x => x.VisType == "01").ToList(); dianhuatuiguangDTO.benyueshuliang = intentionVisitDTOsyue.Count.ToString(); //鏈棩鏁伴噺 - var intentionVisitDTOsri = intentionVisitDTOsyue.Where(x => x.Vistime >= DateTime.Now.Date && x.Vistime < DateTime.Now.Date.AddDays(1)).ToList(); + var intentionVisitDTOsri = intentionVisitDTOsyue.Where(x => x.Vistime >= chauxnshijian.Date && x.Vistime < chauxnshijian.Date.AddDays(1)).ToList(); dianhuatuiguangDTO.benrishuliang = intentionVisitDTOsri.Count.ToString(); var jijianixiangdianhuatuiguang = fiPiecerateDTOs.Where(x => x.Project == "鐢佃瘽鎺ㄥ箍").FirstOrDefault(); @@ -374,7 +380,8 @@ } } } - tuiguangDTOs.Add(dianhuatuiguangDTO); + if (intentionVisitDTOsyue.Count > 0 || intentionVisitDTOsri.Count > 0) + tuiguangDTOs.Add(dianhuatuiguangDTO); #endregion #region 娣诲姞寰俊瀹㈡埛 @@ -385,8 +392,8 @@ var intentionweixinDTOsyue = _intentionCustomerService.GetListsalaryweixin(curentuser.Id, dateminkaoqin, datemaxkaoqin); weixnDTO.benyueshuliang = (cooperweixinDTOsyue.Count + intentionweixinDTOsyue.Count).ToString(); //鏈棩鏁伴噺 - var cooperweixinDTOsri = cooperweixinDTOsyue.Where(x => x.Weixintime >= DateTime.Now.Date && x.Weixintime < DateTime.Now.Date.AddDays(1)).ToList(); - var intentionweixinDTOsri = intentionweixinDTOsyue.Where(x => x.Weixintime >= DateTime.Now.Date && x.Weixintime < DateTime.Now.Date.AddDays(1)).ToList(); + var cooperweixinDTOsri = cooperweixinDTOsyue.Where(x => x.Weixintime >= chauxnshijian.Date && x.Weixintime < chauxnshijian.Date.AddDays(1)).ToList(); + var intentionweixinDTOsri = intentionweixinDTOsyue.Where(x => x.Weixintime >= chauxnshijian.Date && x.Weixintime < chauxnshijian.Date.AddDays(1)).ToList(); weixnDTO.benrishuliang = (cooperweixinDTOsri.Count + intentionweixinDTOsri.Count).ToString(); var jijianiweixn = fiPiecerateDTOs.Where(x => x.Project == "娣诲姞寰俊瀹㈡埛").FirstOrDefault(); @@ -427,7 +434,8 @@ } } } - tuiguangDTOs.Add(weixnDTO); + if ((cooperweixinDTOsyue.Count + intentionweixinDTOsyue.Count) > 0 || (cooperweixinDTOsri.Count + intentionweixinDTOsri.Count) > 0) + tuiguangDTOs.Add(weixnDTO); #endregion #region 缇ゅ彂鐭俊 @@ -437,7 +445,7 @@ var duanxinsyue = _cusFangwenjiluService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin).Where(x => x.Fasongfangshi == "01").ToList(); duanxinDTO.benyueshuliang = duanxinsyue.Count.ToString(); //鏈棩鏁伴噺 - var duanxinsri = duanxinsyue.Where(x => x.Createtime >= DateTime.Now.Date && x.Createtime < DateTime.Now.Date.AddDays(1)).ToList(); + var duanxinsri = duanxinsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); duanxinDTO.benrishuliang = duanxinsri.Count.ToString(); var jijianiduanxin = fiPiecerateDTOs.Where(x => x.Project == "缇ゅ彂鐭俊").FirstOrDefault(); @@ -478,7 +486,8 @@ } } } - tuiguangDTOs.Add(duanxinDTO); + if (duanxinsyue.Count > 0 || duanxinsri.Count > 0) + tuiguangDTOs.Add(duanxinDTO); #endregion @@ -494,7 +503,7 @@ xinhanDTO.benyueshuliang =(xinhansyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var xinhansri = xinhansyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var xinhansri = xinhansyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); xinhanDTO.benrishuliang = (xinhansri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); xinhanDTO.dangrijixiao = (xinhansri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -532,7 +541,8 @@ } } } - tuiguangDTOs.Add(xinhanDTO); + if (decimal.Parse(xinhanDTO.benyueshuliang) > 0 || decimal.Parse(xinhanDTO.benrishuliang) > 0) + tuiguangDTOs.Add(xinhanDTO); #endregion #region 缇ゅ彂閭欢 @@ -542,7 +552,7 @@ var youjiansyue = _cusFangwenjiluService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin).Where(x => x.Fasongfangshi == "02").ToList(); youjianDTO.benyueshuliang = youjiansyue.Count.ToString(); //鏈棩鏁伴噺 - var youjiansri = youjiansyue.Where(x => x.Createtime >= DateTime.Now.Date && x.Createtime < DateTime.Now.Date.AddDays(1)).ToList(); + var youjiansri = youjiansyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); youjianDTO.benrishuliang = youjiansri.Count.ToString(); var jijianiyoujian = fiPiecerateDTOs.Where(x => x.Project == "缇ゅ彂閭欢").FirstOrDefault(); @@ -583,7 +593,8 @@ } } } - tuiguangDTOs.Add(youjianDTO); + if (decimal.Parse(youjianDTO.benyueshuliang) > 0 || decimal.Parse(youjianDTO.benrishuliang) > 0) + tuiguangDTOs.Add(youjianDTO); #endregion #region 缇ょ粍鎺ㄥ箍 @@ -598,7 +609,7 @@ qunzutuiguangDTO.benyueshuliang = (qunzutuiguangsyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var qunzutuiguangsri = qunzutuiguangsyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var qunzutuiguangsri = qunzutuiguangsyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); qunzutuiguangDTO.benrishuliang = (qunzutuiguangsri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); qunzutuiguangDTO.dangrijixiao = (qunzutuiguangsri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -636,7 +647,8 @@ } } } - tuiguangDTOs.Add(qunzutuiguangDTO); + if (decimal.Parse(qunzutuiguangDTO.benyueshuliang) > 0 || decimal.Parse(qunzutuiguangDTO.benrishuliang) > 0) + tuiguangDTOs.Add(qunzutuiguangDTO); #endregion #region 鏈嬪弸鍦堝師鍒� @@ -651,7 +663,7 @@ pengyouquanDTO.benyueshuliang = (pengyouquansyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var pengyouquansri = pengyouquansyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var pengyouquansri = pengyouquansyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); pengyouquanDTO.benrishuliang = (pengyouquansri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); pengyouquanDTO.dangrijixiao = (pengyouquansri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -689,7 +701,8 @@ } } } - tuiguangDTOs.Add(pengyouquanDTO); + if (decimal.Parse(pengyouquanDTO.benyueshuliang) > 0 || decimal.Parse(pengyouquanDTO.benrishuliang) > 0) + tuiguangDTOs.Add(pengyouquanDTO); #endregion #region 璁哄潧鍙戝笘 @@ -704,7 +717,7 @@ luntanfatieDTO.benyueshuliang = (luntanfatiesyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var luntanfatiesri = luntanfatiesyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var luntanfatiesri = luntanfatiesyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); luntanfatieDTO.benrishuliang = (luntanfatiesri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); luntanfatieDTO.dangrijixiao = (luntanfatiesri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -742,7 +755,8 @@ } } } - tuiguangDTOs.Add(luntanfatieDTO); + if (decimal.Parse(luntanfatieDTO.benyueshuliang) > 0 || decimal.Parse(luntanfatieDTO.benrishuliang) > 0) + tuiguangDTOs.Add(luntanfatieDTO); #endregion #region 璺熷笘璇勮 @@ -757,7 +771,7 @@ gentiepinglunDTO.benyueshuliang = (gentiepinglunsyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var gentiepinglunsri = gentiepinglunsyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var gentiepinglunsri = gentiepinglunsyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); gentiepinglunDTO.benrishuliang = (gentiepinglunsri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); gentiepinglunDTO.dangrijixiao = (gentiepinglunsri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -795,7 +809,8 @@ } } } - tuiguangDTOs.Add(gentiepinglunDTO); + if (decimal.Parse(gentiepinglunDTO.benyueshuliang) > 0 || decimal.Parse(gentiepinglunDTO.benrishuliang) > 0) + tuiguangDTOs.Add(gentiepinglunDTO); #endregion #region 杞彂寰俊寰崥 @@ -810,7 +825,7 @@ zhuanfaDTO.benyueshuliang = (zhuanfasyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var zhuanfasri = zhuanfasyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var zhuanfasri = zhuanfasyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); zhuanfaDTO.benrishuliang = (zhuanfasri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); zhuanfaDTO.dangrijixiao = (zhuanfasri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -848,7 +863,8 @@ } } } - tuiguangDTOs.Add(zhuanfaDTO); + if (decimal.Parse(zhuanfaDTO.benyueshuliang) > 0 || decimal.Parse(zhuanfaDTO.benrishuliang) > 0) + tuiguangDTOs.Add(zhuanfaDTO); #endregion #region 鏂板鎰忓悜瀹㈡埛锛堣鍗曪級 @@ -858,7 +874,7 @@ var yixiangsyue = _intentionCustomerService.GetListsalaryyixiang(curentuser.Id, dateminkaoqin, datemaxkaoqin).ToList(); yixiangDTO.benyueshuliang = yixiangsyue.Count.ToString(); //鏈棩鏁伴噺 - var yixiangsri = yixiangsyue.Where(x => x.Yixiangtime >= DateTime.Now.Date && x.Yixiangtime < DateTime.Now.Date.AddDays(1)).ToList(); + var yixiangsri = yixiangsyue.Where(x => x.Yixiangtime >= chauxnshijian.Date && x.Yixiangtime < chauxnshijian.Date.AddDays(1)).ToList(); yixiangDTO.benrishuliang = yixiangsri.Count.ToString(); var jijianiyixiang = fiPiecerateDTOs.Where(x => x.Project == "鏂板鎰忓悜瀹㈡埛锛堣鍗曪級").FirstOrDefault(); @@ -899,7 +915,8 @@ } } } - tuiguangDTOs.Add(yixiangDTO); + if (decimal.Parse(yixiangDTO.benyueshuliang) > 0 || decimal.Parse(yixiangDTO.benrishuliang) > 0) + tuiguangDTOs.Add(yixiangDTO); #endregion #region 鏂板娉ㄥ唽浼氬憳 @@ -914,7 +931,7 @@ zhucehuiyuanDTO.benyueshuliang = (zhucehuiyuansyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var zhucehuiyuansri = zhucehuiyuansyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var zhucehuiyuansri = zhucehuiyuansyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); zhucehuiyuanDTO.benrishuliang = (zhucehuiyuansri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); zhucehuiyuanDTO.dangrijixiao = (zhucehuiyuansri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -952,7 +969,8 @@ } } } - tuiguangDTOs.Add(zhucehuiyuanDTO); + if (decimal.Parse(zhucehuiyuanDTO.benyueshuliang) > 0 || decimal.Parse(zhucehuiyuanDTO.benrishuliang) > 0) + tuiguangDTOs.Add(zhucehuiyuanDTO); #endregion #region 鏂板绛剧害瀹㈡埛 @@ -962,7 +980,7 @@ var qianyueDTOsyue = _cooperatecustomCustomerService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin); qianyueDTO.benyueshuliang = qianyueDTOsyue.Count.ToString(); //鏈棩鏁伴噺 - var qianyueDTOsri = qianyueDTOsyue.Where(x => x.Createtime >= DateTime.Now.Date && x.Createtime < DateTime.Now.Date.AddDays(1)).ToList(); + var qianyueDTOsri = qianyueDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); qianyueDTO.benrishuliang = qianyueDTOsri.Count .ToString(); var jijianiqianyue = fiPiecerateDTOs.Where(x => x.Project == "鏂板绛剧害瀹㈡埛").FirstOrDefault(); @@ -1003,7 +1021,8 @@ } } } - tuiguangDTOs.Add(qianyueDTO); + if (decimal.Parse(qianyueDTO.benyueshuliang) > 0 || decimal.Parse(qianyueDTO.benrishuliang) > 0) + tuiguangDTOs.Add(qianyueDTO); #endregion @@ -1017,8 +1036,8 @@ var shangmenbanfangcooperDTOsyue = _cooperVisitService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin).Where(x => x.VisType == "02").ToList(); shangmenbanfangDTO.benyueshuliang = (shangmenbanfangcooperDTOsyue.Count + shangmenbanfangDTOsyue.Count).ToString(); //鏈棩鏁伴噺 - var shangmenbanfangDTOsri = shangmenbanfangDTOsyue.Where(x => x.Vistime >= DateTime.Now.Date && x.Vistime < DateTime.Now.Date.AddDays(1)).ToList(); - var shangmenbanfangcooperDTOsri = shangmenbanfangcooperDTOsyue.Where(x => x.Vistime >= DateTime.Now.Date && x.Vistime < DateTime.Now.Date.AddDays(1)).ToList(); + var shangmenbanfangDTOsri = shangmenbanfangDTOsyue.Where(x => x.Vistime >= chauxnshijian.Date && x.Vistime < chauxnshijian.Date.AddDays(1)).ToList(); + var shangmenbanfangcooperDTOsri = shangmenbanfangcooperDTOsyue.Where(x => x.Vistime >= chauxnshijian.Date && x.Vistime < chauxnshijian.Date.AddDays(1)).ToList(); shangmenbanfangDTO.benrishuliang = (shangmenbanfangcooperDTOsri.Count + shangmenbanfangDTOsri.Count).ToString(); var jijianixiangshangmenbanfang = fiPiecerateDTOs.Where(x => x.Project == "涓婇棬鎷滆瀹㈡埛").FirstOrDefault(); @@ -1059,7 +1078,8 @@ } } } - baifangkehuDTOs.Add(shangmenbanfangDTO); + if (decimal.Parse(shangmenbanfangDTO.benyueshuliang) > 0 || decimal.Parse(shangmenbanfangDTO.benrishuliang) > 0) + baifangkehuDTOs.Add(shangmenbanfangDTO); #endregion #region 鎺ュ緟鏉ヨ瀹㈡埛 @@ -1074,7 +1094,7 @@ jiedailaifangDTO.benyueshuliang = (jiedailaifangsyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var jiedailaifangsri = jiedailaifangsyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var jiedailaifangsri = jiedailaifangsyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); jiedailaifangDTO.benrishuliang = (jiedailaifangsri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); jiedailaifangDTO.dangrijixiao = (jiedailaifangsri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -1112,7 +1132,8 @@ } } } - baifangkehuDTOs.Add(jiedailaifangDTO); + if (decimal.Parse(jiedailaifangDTO.benyueshuliang) > 0 || decimal.Parse(jiedailaifangDTO.benrishuliang) > 0) + baifangkehuDTOs.Add(jiedailaifangDTO); #endregion List<TongjiDingDanDTO> dingdanDTOs = new List<TongjiDingDanDTO>(); @@ -1125,7 +1146,7 @@ var benyuezonge = dingdanDTOsyue.Sum(x => x.Money) ?? 0; //鏈棩鏁伴噺 - var dingdanDTOsri = dingdanDTOsyue.Where(x => x.Createtime >= DateTime.Now.Date && x.Createtime < DateTime.Now.Date.AddDays(1)).ToList(); + var dingdanDTOsri = dingdanDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); foreach (var cooperOrderDTO in dingdanDTOsri) { TongjiDingDanDTO dingdanDTO = new TongjiDingDanDTO(); @@ -1161,7 +1182,7 @@ var dtChannelArticleNewsDTOs = _dtChannelArticleNewsService.GetList(searchEntity); xinwenzixunDTO.benyueshuliang = dtChannelArticleNewsDTOs.Count.ToString(); //鏈棩鏁伴噺 - var xinwenzixunsri = dtChannelArticleNewsDTOs.Where(x => x.AddTime >= DateTime.Now.Date && x.AddTime < DateTime.Now.Date.AddDays(1)).ToList(); + var xinwenzixunsri = dtChannelArticleNewsDTOs.Where(x => x.AddTime >= chauxnshijian.Date && x.AddTime < chauxnshijian.Date.AddDays(1)).ToList(); xinwenzixunDTO.benrishuliang = xinwenzixunsri.Count.ToString(); var jijianixinwenzixun = fiPiecerateDTOs.Where(x => x.Project == "鏂伴椈璧勮").FirstOrDefault(); @@ -1202,7 +1223,8 @@ } } } - ziliaoweihuDTOs.Add(xinwenzixunDTO); + if (decimal.Parse(xinwenzixunDTO.benyueshuliang) > 0 || decimal.Parse(xinwenzixunDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(xinwenzixunDTO); #endregion #region 鍏稿瀷妗堜緥 @@ -1217,7 +1239,7 @@ var dianxinanDTOs = _dtChannelArticleNewsService.GetList(searchEntity); dianxinanliDTO.benyueshuliang = dianxinanDTOs.Count.ToString(); //鏈棩鏁伴噺 - var dianxinanlisri = dianxinanDTOs.Where(x => x.AddTime >= DateTime.Now.Date && x.AddTime < DateTime.Now.Date.AddDays(1)).ToList(); + var dianxinanlisri = dianxinanDTOs.Where(x => x.AddTime >= chauxnshijian.Date && x.AddTime < chauxnshijian.Date.AddDays(1)).ToList(); dianxinanliDTO.benrishuliang = dianxinanlisri.Count.ToString(); var jijianidianxinanli = fiPiecerateDTOs.Where(x => x.Project == "鍏稿瀷妗堜緥").FirstOrDefault(); @@ -1258,7 +1280,8 @@ } } } - ziliaoweihuDTOs.Add(dianxinanliDTO); + if (decimal.Parse(dianxinanliDTO.benyueshuliang) > 0 || decimal.Parse(dianxinanliDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(dianxinanliDTO); #endregion #region 鏀块噰鐭ヨ瘑 TongjiBaoBiaoDTO zhengcaizhishiDTO = new TongjiBaoBiaoDTO(); @@ -1272,7 +1295,7 @@ var zhengcaizhishiDTOs = _dtChannelArticleNewsService.GetList(searchEntity); zhengcaizhishiDTO.benyueshuliang = zhengcaizhishiDTOs.Count.ToString(); //鏈棩鏁伴噺 - var zhengcaizhishisri = zhengcaizhishiDTOs.Where(x => x.AddTime >= DateTime.Now.Date && x.AddTime < DateTime.Now.Date.AddDays(1)).ToList(); + var zhengcaizhishisri = zhengcaizhishiDTOs.Where(x => x.AddTime >= chauxnshijian.Date && x.AddTime < chauxnshijian.Date.AddDays(1)).ToList(); zhengcaizhishiDTO.benrishuliang = zhengcaizhishisri.Count.ToString(); var jijianizhengcaizhishi = fiPiecerateDTOs.Where(x => x.Project == "鏀块噰鐭ヨ瘑").FirstOrDefault(); @@ -1313,7 +1336,8 @@ } } } - ziliaoweihuDTOs.Add(zhengcaizhishiDTO); + if (decimal.Parse(zhengcaizhishiDTO.benyueshuliang) > 0 || decimal.Parse(zhengcaizhishiDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(zhengcaizhishiDTO); #endregion #region 鏂板鍏紬鍙峰叧娉� @@ -1328,7 +1352,7 @@ gongzhonghaoDTO.benyueshuliang = (gongzhonghaosyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var gongzhonghaosri = gongzhonghaosyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var gongzhonghaosri = gongzhonghaosyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); gongzhonghaoDTO.benrishuliang = (gongzhonghaosri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); gongzhonghaoDTO.dangrijixiao = (gongzhonghaosri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -1366,7 +1390,8 @@ } } } - ziliaoweihuDTOs.Add(gongzhonghaoDTO); + if (decimal.Parse(gongzhonghaoDTO.benyueshuliang) > 0 || decimal.Parse(gongzhonghaoDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(gongzhonghaoDTO); #endregion #region 缃戦〉鍒朵綔 @@ -1381,7 +1406,7 @@ wangyeDTO.benyueshuliang = (wangyesyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var wangyesri = wangyesyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var wangyesri = wangyesyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); wangyeDTO.benrishuliang = (wangyesri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); wangyeDTO.dangrijixiao = (wangyesri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -1419,7 +1444,8 @@ } } } - ziliaoweihuDTOs.Add(wangyeDTO); + if (decimal.Parse(wangyeDTO.benyueshuliang) > 0 || decimal.Parse(wangyeDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(wangyeDTO); #endregion #region 鏂板灏忛噰闂 @@ -1429,7 +1455,7 @@ var xinzengwendaDTOsyue = _liaotianService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin); xinzengwendaDTO.benyueshuliang = xinzengwendaDTOsyue.Count.ToString(); //鏈棩鏁伴噺 - var xinzengwendaDTOsri = xinzengwendaDTOsyue.Where(x => x.Createtime >= DateTime.Now.Date && x.Createtime < DateTime.Now.Date.AddDays(1)).ToList(); + var xinzengwendaDTOsri = xinzengwendaDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); xinzengwendaDTO.benrishuliang = xinzengwendaDTOsri.Count.ToString(); var jijianixinzengwenda = fiPiecerateDTOs.Where(x => x.Project == "鏂板灏忛噰闂").FirstOrDefault(); @@ -1470,7 +1496,8 @@ } } } - ziliaoweihuDTOs.Add(xinzengwendaDTO); + if (decimal.Parse(xinzengwendaDTO.benyueshuliang) > 0 || decimal.Parse(xinzengwendaDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(xinzengwendaDTO); #endregion #region 瀹℃牳灏忛噰绛旈棶 @@ -1480,7 +1507,7 @@ var shenhewendaDTOsyue = _liaotianService.GetListsalaryshenhe(curentuser.Id, dateminkaoqin, datemaxkaoqin); shenhewendaDTO.benyueshuliang = shenhewendaDTOsyue.Count.ToString(); //鏈棩鏁伴噺 - var shenhewendaDTOsri = shenhewendaDTOsyue.Where(x => x.Shenhetime >= DateTime.Now.Date && x.Shenhetime < DateTime.Now.Date.AddDays(1)).ToList(); + var shenhewendaDTOsri = shenhewendaDTOsyue.Where(x => x.Shenhetime >= chauxnshijian.Date && x.Shenhetime < chauxnshijian.Date.AddDays(1)).ToList(); shenhewendaDTO.benrishuliang = shenhewendaDTOsri.Count.ToString(); var jijianishenhewenda = fiPiecerateDTOs.Where(x => x.Project == "瀹℃牳灏忛噰绛旈棶").FirstOrDefault(); @@ -1521,7 +1548,8 @@ } } } - ziliaoweihuDTOs.Add(shenhewendaDTO); + if (decimal.Parse(shenhewendaDTO.benyueshuliang) > 0 || decimal.Parse(shenhewendaDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(shenhewendaDTO); #endregion List<TongjiBaoBiaoDTO> xiangmushishiDTOs = new List<TongjiBaoBiaoDTO>(); @@ -1537,7 +1565,7 @@ biaoshuzhizuoDTO.benyueshuliang = (biaoshuzhizuosyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var biaoshuzhizuosri = biaoshuzhizuosyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var biaoshuzhizuosri = biaoshuzhizuosyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); biaoshuzhizuoDTO.benrishuliang = (biaoshuzhizuosri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); biaoshuzhizuoDTO.dangrijixiao = (biaoshuzhizuosri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -1575,7 +1603,8 @@ } } } - xiangmushishiDTOs.Add(biaoshuzhizuoDTO); + if (decimal.Parse(biaoshuzhizuoDTO.benyueshuliang) > 0 || decimal.Parse(biaoshuzhizuoDTO.benrishuliang) > 0) + xiangmushishiDTOs.Add(biaoshuzhizuoDTO); #endregion #region 鏍囦功妫�鏌� @@ -1590,7 +1619,7 @@ biaoshujianchaDTO.benyueshuliang = (biaoshujianchasyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var biaoshujianchasri = biaoshujianchasyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var biaoshujianchasri = biaoshujianchasyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); biaoshujianchaDTO.benrishuliang = (biaoshujianchasri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); biaoshujianchaDTO.dangrijixiao = (biaoshujianchasri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -1628,7 +1657,8 @@ } } } - xiangmushishiDTOs.Add(biaoshujianchaDTO); + if (decimal.Parse(biaoshujianchaDTO.benyueshuliang) > 0 || decimal.Parse(biaoshujianchaDTO.benrishuliang) > 0) + xiangmushishiDTOs.Add(biaoshujianchaDTO); #endregion #region 璧疯崏璐ㄧ枒鎶曡瘔 @@ -1643,7 +1673,7 @@ zhiyiDTO.benyueshuliang = (zhiyisyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); //鏈棩鏁伴噺 - var zhiyisri = zhiyisyue.Where(x => x.WorkTime >= DateTime.Now.Date && x.WorkTime < DateTime.Now.Date.AddDays(1)).ToList(); + var zhiyisri = zhiyisyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); zhiyiDTO.benrishuliang = (zhiyisri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); zhiyiDTO.dangrijixiao = (zhiyisri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); @@ -1681,7 +1711,8 @@ } } } - xiangmushishiDTOs.Add(zhiyiDTO); + if (decimal.Parse(zhiyiDTO.benyueshuliang) > 0 || decimal.Parse(zhiyiDTO.benrishuliang) > 0) + xiangmushishiDTOs.Add(zhiyiDTO); #endregion ViewBag.tuiguangDTOs = tuiguangDTOs; @@ -1690,6 +1721,1639 @@ ViewBag.ziliaoweihuDTOs = ziliaoweihuDTOs; ViewBag.xiangmushishiDTOs = xiangmushishiDTOs; + ViewBag.Tongjitime = chauxnshijian.ToString("yyyy-MM-dd"); + + return View(); + } + + + + public IActionResult IndexSuoyou(string Tongjitime = "",string userid = "") + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + + DateTime chauxnshijian = DateTime.Now; + if (!string.IsNullOrEmpty(Tongjitime)) + { + DateTime.TryParse(Tongjitime, out chauxnshijian); + } + string position = curentuser.HrPosition; + string Userid = curentuser.Id; + if (!string.IsNullOrEmpty(userid)) + { + Userid = userid; + position = _userService.GetPltUserEntity(Userid).HrPosition; + } + + + + + DateTime dateminkaoqin = new DateTime(chauxnshijian.Year, chauxnshijian.Month, 1); + DateTime datemaxkaoqin = dateminkaoqin.AddMonths(1); + int Yingchuqin = 0; + int Offdays = 0; + //鏄惁涓婄彮鏃ユ湡 + AdmAttendanceRuleDTO admAttendanceRuleDTO = _attendanceRuleService.Get(""); + var admAttendanceRulesDtlDTOs = _attendanceRuleService.GetDtlList(""); + var jiejiari = admAttendanceRulesDtlDTOs.Where(x => x.Name == "jiejiari").ToList(); + + var tiaoxiuri = admAttendanceRulesDtlDTOs.Where(x => x.Name == "tiaoxiuri").ToList(); + List<FiPiecerateDTO> fiPiecerateDTOs = _fiPiecerateService.GetList(); + List<HrJixiaotichengDTO> hrJixiaotichengDTOs = _hrJixiaotichengService.GetList().Where(x => x.Effecttime < datemaxkaoqin).ToList(); + var hrJixiaotichengThis = hrJixiaotichengDTOs.Where(x => x.PostId == position).ToList(); + + + //璁$畻姣忔湀宸ヤ綔鏃� + while (dateminkaoqin < datemaxkaoqin) + { + _logger.LogInformation("dateminkaoqin " + dateminkaoqin); + //bool iswork = false; + + + + if ((int)dateminkaoqin.DayOfWeek >= admAttendanceRuleDTO.WeekStart && (int)dateminkaoqin.DayOfWeek <= admAttendanceRuleDTO.WeekEnd) + { + //鏄惁鑺傚亣鏃� + if (jiejiari.Exists(x => x.ValueStart <= dateminkaoqin && x.ValueEnd >= dateminkaoqin)) + { + Offdays += 1; + } + else + { + Yingchuqin += 1; + //iswork = true; + } + } + else + { + //鏄惁璋冧紤鏃� 璋冧紤鏃ラ渶瑕佷笂鐝� + if (tiaoxiuri.Exists(x => x.ValueStart <= dateminkaoqin.Date && x.ValueEnd >= dateminkaoqin.Date)) + { + Yingchuqin += 1; + //iswork = true; + } + else + { + Offdays += 1; + } + } + dateminkaoqin = dateminkaoqin.AddDays(1); + } + dateminkaoqin = new DateTime(chauxnshijian.Year, chauxnshijian.Month, 1); + + List<TongjiBaoBiaoDTO> tuiguangDTOs = new List<TongjiBaoBiaoDTO>(); + + #region 閲囪喘椤圭洰褰曞叆 + TongjiBaoBiaoDTO xiangmuDTO = new TongjiBaoBiaoDTO(); + xiangmuDTO.gongzuo = "閲囪喘椤圭洰褰曞叆"; + //鏈湀鏁伴噺 + var projectDTOsyue = _projectService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin); + xiangmuDTO.benyueshuliang = projectDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var projectDTOsri = projectDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + xiangmuDTO.benrishuliang = projectDTOsri.Count.ToString(); + + var jijianixiangmu = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘椤圭洰褰曞叆").FirstOrDefault(); + + if (jijianixiangmu != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianixiangmu.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + //鏈湀瑙勫畾 + xiangmuDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + //鏈棩瑙勫畾 + xiangmuDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = projectDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + xiangmuDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + } + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + //鏈湀瑙勫畾 + xiangmuDTO.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 (decimal.Parse(xiangmuDTO.benyueshuliang) > 0 || decimal.Parse(xiangmuDTO.benrishuliang) > 0) + tuiguangDTOs.Add(xiangmuDTO); + #endregion + + + #region 瀹㈡埛璧勬枡褰曞叆 + TongjiBaoBiaoDTO kehuluruDTO = new TongjiBaoBiaoDTO(); + kehuluruDTO.gongzuo = "瀹㈡埛璧勬枡褰曞叆"; + //鏈湀鏁伴噺 + var intentionCustomerDTOsyue = _intentionCustomerService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin); + kehuluruDTO.benyueshuliang = intentionCustomerDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var intentionCustomerDTOsri = intentionCustomerDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + kehuluruDTO.benrishuliang = intentionCustomerDTOsri.Count.ToString(); + + var jijianikehuluru = fiPiecerateDTOs.Where(x => x.Project == "瀹㈡埛璧勬枡褰曞叆").FirstOrDefault(); + + if (jijianikehuluru != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianikehuluru.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + kehuluruDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + kehuluruDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = intentionCustomerDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + kehuluruDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + kehuluruDTO.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 (decimal.Parse(kehuluruDTO.benyueshuliang) > 0 || decimal.Parse(kehuluruDTO.benrishuliang) > 0) + tuiguangDTOs.Add(kehuluruDTO); + #endregion + + #region 鏂板姞缇ょ粍 + TongjiBaoBiaoDTO qunzuDTO = new TongjiBaoBiaoDTO(); + qunzuDTO.gongzuo = "鏂板姞缇ょ粍"; + //鏈湀鏁伴噺 + var groupTopicDTOsyue = _groupTopicService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin); + qunzuDTO.benyueshuliang = groupTopicDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var groupTopicDTOsri = groupTopicDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + qunzuDTO.benrishuliang = groupTopicDTOsri.Count.ToString(); + + var jijianixianggroupTopic = fiPiecerateDTOs.Where(x => x.Project == "鏂板姞缇ょ粍").FirstOrDefault(); + + if (jijianixianggroupTopic != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianixianggroupTopic.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + //鏈湀瑙勫畾 + qunzuDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + //鏈棩瑙勫畾 + qunzuDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = groupTopicDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + qunzuDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + } + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + //鏈湀瑙勫畾 + qunzuDTO.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 (decimal.Parse(qunzuDTO.benyueshuliang) > 0 || decimal.Parse(qunzuDTO.benrishuliang) > 0) + tuiguangDTOs.Add(qunzuDTO); + #endregion + + #region 鐢佃瘽鎺ㄥ箍 + TongjiBaoBiaoDTO dianhuatuiguangDTO = new TongjiBaoBiaoDTO(); + dianhuatuiguangDTO.gongzuo = "鐢佃瘽鎺ㄥ箍"; + //鏈湀鏁伴噺 + var intentionVisitDTOsyue = _intentionVisitService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.VisType == "01").ToList(); + dianhuatuiguangDTO.benyueshuliang = intentionVisitDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var intentionVisitDTOsri = intentionVisitDTOsyue.Where(x => x.Vistime >= chauxnshijian.Date && x.Vistime < chauxnshijian.Date.AddDays(1)).ToList(); + dianhuatuiguangDTO.benrishuliang = intentionVisitDTOsri.Count.ToString(); + + var jijianixiangdianhuatuiguang = fiPiecerateDTOs.Where(x => x.Project == "鐢佃瘽鎺ㄥ箍").FirstOrDefault(); + + if (jijianixiangdianhuatuiguang != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianixiangdianhuatuiguang.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + //鏈湀瑙勫畾 + dianhuatuiguangDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + //鏈棩瑙勫畾 + dianhuatuiguangDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = intentionVisitDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + dianhuatuiguangDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + } + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + //鏈湀瑙勫畾 + dianhuatuiguangDTO.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 (decimal.Parse(dianhuatuiguangDTO.benyueshuliang) > 0 || decimal.Parse(dianhuatuiguangDTO.benrishuliang) > 0) + tuiguangDTOs.Add(dianhuatuiguangDTO); + #endregion + + #region 娣诲姞寰俊瀹㈡埛 + TongjiBaoBiaoDTO weixnDTO = new TongjiBaoBiaoDTO(); + weixnDTO.gongzuo = "娣诲姞寰俊瀹㈡埛"; + //鏈湀鏁伴噺 + var cooperweixinDTOsyue = _cooperatecustomCustomerService.GetListsalaryweixin(Userid, dateminkaoqin, datemaxkaoqin); + var intentionweixinDTOsyue = _intentionCustomerService.GetListsalaryweixin(Userid, dateminkaoqin, datemaxkaoqin); + weixnDTO.benyueshuliang = (cooperweixinDTOsyue.Count + intentionweixinDTOsyue.Count).ToString(); + //鏈棩鏁伴噺 + var cooperweixinDTOsri = cooperweixinDTOsyue.Where(x => x.Weixintime >= chauxnshijian.Date && x.Weixintime < chauxnshijian.Date.AddDays(1)).ToList(); + var intentionweixinDTOsri = intentionweixinDTOsyue.Where(x => x.Weixintime >= chauxnshijian.Date && x.Weixintime < chauxnshijian.Date.AddDays(1)).ToList(); + weixnDTO.benrishuliang = (cooperweixinDTOsri.Count + intentionweixinDTOsri.Count).ToString(); + + var jijianiweixn = fiPiecerateDTOs.Where(x => x.Project == "娣诲姞寰俊瀹㈡埛").FirstOrDefault(); + + if (jijianiweixn != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianiweixn.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + weixnDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + weixnDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = cooperweixinDTOsri.Count + intentionweixinDTOsyue.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + weixnDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + weixnDTO.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 (decimal.Parse(weixnDTO.benyueshuliang) > 0 || decimal.Parse(weixnDTO.benrishuliang) > 0) + tuiguangDTOs.Add(weixnDTO); + #endregion + + #region 缇ゅ彂鐭俊 + TongjiBaoBiaoDTO duanxinDTO = new TongjiBaoBiaoDTO(); + duanxinDTO.gongzuo = "缇ゅ彂鐭俊"; + //鏈湀鏁伴噺 + var duanxinsyue = _cusFangwenjiluService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.Fasongfangshi == "01").ToList(); + duanxinDTO.benyueshuliang = duanxinsyue.Count.ToString(); + //鏈棩鏁伴噺 + var duanxinsri = duanxinsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + duanxinDTO.benrishuliang = duanxinsri.Count.ToString(); + + var jijianiduanxin = fiPiecerateDTOs.Where(x => x.Project == "缇ゅ彂鐭俊").FirstOrDefault(); + + if (jijianiduanxin != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianiduanxin.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + duanxinDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + duanxinDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = duanxinsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + duanxinDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + duanxinDTO.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 (decimal.Parse(duanxinDTO.benyueshuliang) > 0 || decimal.Parse(duanxinDTO.benrishuliang) > 0) + tuiguangDTOs.Add(duanxinDTO); + #endregion + + + #region 鍟嗕笟淇″嚱鎺ㄥ箍 + TongjiBaoBiaoDTO xinhanDTO = new TongjiBaoBiaoDTO(); + xinhanDTO.gongzuo = "鍟嗕笟淇″嚱鎺ㄥ箍"; + var jijianixinhan = fiPiecerateDTOs.Where(x => x.Project == "鍟嗕笟淇″嚱鎺ㄥ箍").FirstOrDefault(); + + if (jijianixinhan != null) + { + //鏈湀鏁伴噺 + var xinhansyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianixinhan.Id).ToList(); + + xinhanDTO.benyueshuliang = (xinhansyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var xinhansri = xinhansyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + xinhanDTO.benrishuliang = (xinhansri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + xinhanDTO.dangrijixiao = (xinhansri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianixinhan.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + xinhanDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + xinhanDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (xinhansri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // xinhanDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + xinhanDTO.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 (decimal.Parse(xinhanDTO.benyueshuliang) > 0 || decimal.Parse(xinhanDTO.benrishuliang) > 0) + tuiguangDTOs.Add(xinhanDTO); + #endregion + + #region 缇ゅ彂閭欢 + TongjiBaoBiaoDTO youjianDTO = new TongjiBaoBiaoDTO(); + youjianDTO.gongzuo = "缇ゅ彂閭欢"; + //鏈湀鏁伴噺 + var youjiansyue = _cusFangwenjiluService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.Fasongfangshi == "02").ToList(); + youjianDTO.benyueshuliang = youjiansyue.Count.ToString(); + //鏈棩鏁伴噺 + var youjiansri = youjiansyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + youjianDTO.benrishuliang = youjiansri.Count.ToString(); + + var jijianiyoujian = fiPiecerateDTOs.Where(x => x.Project == "缇ゅ彂閭欢").FirstOrDefault(); + + if (jijianiyoujian != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianiyoujian.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + youjianDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + youjianDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = youjiansri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + youjianDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + youjianDTO.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 (decimal.Parse(youjianDTO.benyueshuliang) > 0 || decimal.Parse(youjianDTO.benrishuliang) > 0) + tuiguangDTOs.Add(youjianDTO); + #endregion + + #region 缇ょ粍鎺ㄥ箍 + TongjiBaoBiaoDTO qunzutuiguangDTO = new TongjiBaoBiaoDTO(); + qunzutuiguangDTO.gongzuo = "缇ょ粍鎺ㄥ箍"; + var jijianiqunzutuiguang = fiPiecerateDTOs.Where(x => x.Project == "缇ょ粍鎺ㄥ箍").FirstOrDefault(); + + if (jijianiqunzutuiguang != null) + { + //鏈湀鏁伴噺 + var qunzutuiguangsyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianiqunzutuiguang.Id).ToList(); + + qunzutuiguangDTO.benyueshuliang = (qunzutuiguangsyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var qunzutuiguangsri = qunzutuiguangsyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + qunzutuiguangDTO.benrishuliang = (qunzutuiguangsri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + qunzutuiguangDTO.dangrijixiao = (qunzutuiguangsri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianiqunzutuiguang.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + qunzutuiguangDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + qunzutuiguangDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (qunzutuiguangsri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // qunzutuiguangDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + qunzutuiguangDTO.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 (decimal.Parse(qunzutuiguangDTO.benyueshuliang) > 0 || decimal.Parse(qunzutuiguangDTO.benrishuliang) > 0) + tuiguangDTOs.Add(qunzutuiguangDTO); + #endregion + + #region 鏈嬪弸鍦堝師鍒� + TongjiBaoBiaoDTO pengyouquanDTO = new TongjiBaoBiaoDTO(); + pengyouquanDTO.gongzuo = "鏈嬪弸鍦堝師鍒�"; + var jijianipengyouquan = fiPiecerateDTOs.Where(x => x.Project == "鏈嬪弸鍦堝師鍒�").FirstOrDefault(); + + if (jijianipengyouquan != null) + { + //鏈湀鏁伴噺 + var pengyouquansyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianipengyouquan.Id).ToList(); + + pengyouquanDTO.benyueshuliang = (pengyouquansyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var pengyouquansri = pengyouquansyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + pengyouquanDTO.benrishuliang = (pengyouquansri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + pengyouquanDTO.dangrijixiao = (pengyouquansri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianipengyouquan.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + pengyouquanDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + pengyouquanDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (pengyouquansri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // pengyouquanDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + pengyouquanDTO.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 (decimal.Parse(pengyouquanDTO.benyueshuliang) > 0 || decimal.Parse(pengyouquanDTO.benrishuliang) > 0) + tuiguangDTOs.Add(pengyouquanDTO); + #endregion + + #region 璁哄潧鍙戝笘 + TongjiBaoBiaoDTO luntanfatieDTO = new TongjiBaoBiaoDTO(); + luntanfatieDTO.gongzuo = "璁哄潧鍙戝笘"; + var jijianiluntanfatie = fiPiecerateDTOs.Where(x => x.Project == "璁哄潧鍙戝笘").FirstOrDefault(); + + if (jijianiluntanfatie != null) + { + //鏈湀鏁伴噺 + var luntanfatiesyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianiluntanfatie.Id).ToList(); + + luntanfatieDTO.benyueshuliang = (luntanfatiesyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var luntanfatiesri = luntanfatiesyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + luntanfatieDTO.benrishuliang = (luntanfatiesri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + luntanfatieDTO.dangrijixiao = (luntanfatiesri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianiluntanfatie.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + luntanfatieDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + luntanfatieDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (luntanfatiesri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // luntanfatieDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + luntanfatieDTO.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 (decimal.Parse(luntanfatieDTO.benyueshuliang) > 0 || decimal.Parse(luntanfatieDTO.benrishuliang) > 0) + tuiguangDTOs.Add(luntanfatieDTO); + #endregion + + #region 璺熷笘璇勮 + TongjiBaoBiaoDTO gentiepinglunDTO = new TongjiBaoBiaoDTO(); + gentiepinglunDTO.gongzuo = "璺熷笘璇勮"; + var jijianigentiepinglun = fiPiecerateDTOs.Where(x => x.Project == "璺熷笘璇勮").FirstOrDefault(); + + if (jijianigentiepinglun != null) + { + //鏈湀鏁伴噺 + var gentiepinglunsyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianigentiepinglun.Id).ToList(); + + gentiepinglunDTO.benyueshuliang = (gentiepinglunsyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var gentiepinglunsri = gentiepinglunsyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + gentiepinglunDTO.benrishuliang = (gentiepinglunsri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + gentiepinglunDTO.dangrijixiao = (gentiepinglunsri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianigentiepinglun.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + gentiepinglunDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + gentiepinglunDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (gentiepinglunsri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // gentiepinglunDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + gentiepinglunDTO.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 (decimal.Parse(gentiepinglunDTO.benyueshuliang) > 0 || decimal.Parse(gentiepinglunDTO.benrishuliang) > 0) + tuiguangDTOs.Add(gentiepinglunDTO); + #endregion + + #region 杞彂寰俊寰崥 + TongjiBaoBiaoDTO zhuanfaDTO = new TongjiBaoBiaoDTO(); + zhuanfaDTO.gongzuo = "杞彂寰俊寰崥"; + var jijianizhuanfa = fiPiecerateDTOs.Where(x => x.Project == "杞彂寰俊寰崥").FirstOrDefault(); + + if (jijianizhuanfa != null) + { + //鏈湀鏁伴噺 + var zhuanfasyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianizhuanfa.Id).ToList(); + + zhuanfaDTO.benyueshuliang = (zhuanfasyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var zhuanfasri = zhuanfasyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + zhuanfaDTO.benrishuliang = (zhuanfasri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + zhuanfaDTO.dangrijixiao = (zhuanfasri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianizhuanfa.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + zhuanfaDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + zhuanfaDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (zhuanfasri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // zhuanfaDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + zhuanfaDTO.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 (decimal.Parse(zhuanfaDTO.benyueshuliang) > 0 || decimal.Parse(zhuanfaDTO.benrishuliang) > 0) + tuiguangDTOs.Add(zhuanfaDTO); + #endregion + + #region 鏂板鎰忓悜瀹㈡埛锛堣鍗曪級 + TongjiBaoBiaoDTO yixiangDTO = new TongjiBaoBiaoDTO(); + yixiangDTO.gongzuo = "鏂板鎰忓悜瀹㈡埛锛堣鍗曪級"; + //鏈湀鏁伴噺 + var yixiangsyue = _intentionCustomerService.GetListsalaryyixiang(Userid, dateminkaoqin, datemaxkaoqin).ToList(); + yixiangDTO.benyueshuliang = yixiangsyue.Count.ToString(); + //鏈棩鏁伴噺 + var yixiangsri = yixiangsyue.Where(x => x.Yixiangtime >= chauxnshijian.Date && x.Yixiangtime < chauxnshijian.Date.AddDays(1)).ToList(); + yixiangDTO.benrishuliang = yixiangsri.Count.ToString(); + + var jijianiyixiang = fiPiecerateDTOs.Where(x => x.Project == "鏂板鎰忓悜瀹㈡埛锛堣鍗曪級").FirstOrDefault(); + + if (jijianiyixiang != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianiyixiang.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + yixiangDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + yixiangDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = yixiangsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + yixiangDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + yixiangDTO.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 (decimal.Parse(yixiangDTO.benyueshuliang) > 0 || decimal.Parse(yixiangDTO.benrishuliang) > 0) + tuiguangDTOs.Add(yixiangDTO); + #endregion + + #region 鏂板娉ㄥ唽浼氬憳 + TongjiBaoBiaoDTO zhucehuiyuanDTO = new TongjiBaoBiaoDTO(); + zhucehuiyuanDTO.gongzuo = "鏂板娉ㄥ唽浼氬憳"; + var jijianizhucehuiyuan = fiPiecerateDTOs.Where(x => x.Project == "鏂板娉ㄥ唽浼氬憳").FirstOrDefault(); + + if (jijianizhucehuiyuan != null) + { + //鏈湀鏁伴噺 + var zhucehuiyuansyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianizhucehuiyuan.Id).ToList(); + + zhucehuiyuanDTO.benyueshuliang = (zhucehuiyuansyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var zhucehuiyuansri = zhucehuiyuansyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + zhucehuiyuanDTO.benrishuliang = (zhucehuiyuansri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + zhucehuiyuanDTO.dangrijixiao = (zhucehuiyuansri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianizhucehuiyuan.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + zhucehuiyuanDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + zhucehuiyuanDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (zhucehuiyuansri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // zhucehuiyuanDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + zhucehuiyuanDTO.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 (decimal.Parse(zhucehuiyuanDTO.benyueshuliang) > 0 || decimal.Parse(zhucehuiyuanDTO.benrishuliang) > 0) + tuiguangDTOs.Add(zhucehuiyuanDTO); + #endregion + + #region 鏂板绛剧害瀹㈡埛 + TongjiBaoBiaoDTO qianyueDTO = new TongjiBaoBiaoDTO(); + qianyueDTO.gongzuo = "鏂板绛剧害瀹㈡埛"; + //鏈湀鏁伴噺 + var qianyueDTOsyue = _cooperatecustomCustomerService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin); + qianyueDTO.benyueshuliang = qianyueDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var qianyueDTOsri = qianyueDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + qianyueDTO.benrishuliang = qianyueDTOsri.Count.ToString(); + + var jijianiqianyue = fiPiecerateDTOs.Where(x => x.Project == "鏂板绛剧害瀹㈡埛").FirstOrDefault(); + + if (jijianiqianyue != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianiqianyue.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + qianyueDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + qianyueDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = qianyueDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + qianyueDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + qianyueDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = qianyueDTOs.Count - renwujishu; + // if (youxiaojijian > 0) + // { + // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + // } + + //} + } + } + } + if (decimal.Parse(qianyueDTO.benyueshuliang) > 0 || decimal.Parse(qianyueDTO.benrishuliang) > 0) + tuiguangDTOs.Add(qianyueDTO); + #endregion + + + List<TongjiBaoBiaoDTO> baifangkehuDTOs = new List<TongjiBaoBiaoDTO>(); + + #region 涓婇棬鎷滆瀹㈡埛 + TongjiBaoBiaoDTO shangmenbanfangDTO = new TongjiBaoBiaoDTO(); + shangmenbanfangDTO.gongzuo = "涓婇棬鎷滆瀹㈡埛"; + //鏈湀鏁伴噺 + var shangmenbanfangDTOsyue = _intentionVisitService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.VisType == "02").ToList(); + var shangmenbanfangcooperDTOsyue = _cooperVisitService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.VisType == "02").ToList(); + shangmenbanfangDTO.benyueshuliang = (shangmenbanfangcooperDTOsyue.Count + shangmenbanfangDTOsyue.Count).ToString(); + //鏈棩鏁伴噺 + var shangmenbanfangDTOsri = shangmenbanfangDTOsyue.Where(x => x.Vistime >= chauxnshijian.Date && x.Vistime < chauxnshijian.Date.AddDays(1)).ToList(); + var shangmenbanfangcooperDTOsri = shangmenbanfangcooperDTOsyue.Where(x => x.Vistime >= chauxnshijian.Date && x.Vistime < chauxnshijian.Date.AddDays(1)).ToList(); + shangmenbanfangDTO.benrishuliang = (shangmenbanfangcooperDTOsri.Count + shangmenbanfangDTOsri.Count).ToString(); + + var jijianixiangshangmenbanfang = fiPiecerateDTOs.Where(x => x.Project == "涓婇棬鎷滆瀹㈡埛").FirstOrDefault(); + + if (jijianixiangshangmenbanfang != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianixiangshangmenbanfang.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + //鏈湀瑙勫畾 + shangmenbanfangDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + //鏈棩瑙勫畾 + shangmenbanfangDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = shangmenbanfangcooperDTOsri.Count + shangmenbanfangDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + shangmenbanfangDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + } + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + //鏈湀瑙勫畾 + shangmenbanfangDTO.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 (decimal.Parse(shangmenbanfangDTO.benyueshuliang) > 0 || decimal.Parse(shangmenbanfangDTO.benrishuliang) > 0) + baifangkehuDTOs.Add(shangmenbanfangDTO); + #endregion + + #region 鎺ュ緟鏉ヨ瀹㈡埛 + TongjiBaoBiaoDTO jiedailaifangDTO = new TongjiBaoBiaoDTO(); + jiedailaifangDTO.gongzuo = "鎺ュ緟鏉ヨ瀹㈡埛"; + var jijianijiedailaifang = fiPiecerateDTOs.Where(x => x.Project == "鎺ュ緟鏉ヨ瀹㈡埛").FirstOrDefault(); + + if (jijianijiedailaifang != null) + { + //鏈湀鏁伴噺 + var jiedailaifangsyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianijiedailaifang.Id).ToList(); + + jiedailaifangDTO.benyueshuliang = (jiedailaifangsyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var jiedailaifangsri = jiedailaifangsyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + jiedailaifangDTO.benrishuliang = (jiedailaifangsri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + jiedailaifangDTO.dangrijixiao = (jiedailaifangsri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianijiedailaifang.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + jiedailaifangDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + jiedailaifangDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (jiedailaifangsri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // jiedailaifangDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + jiedailaifangDTO.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 (decimal.Parse(jiedailaifangDTO.benyueshuliang) > 0 || decimal.Parse(jiedailaifangDTO.benrishuliang) > 0) + baifangkehuDTOs.Add(jiedailaifangDTO); + #endregion + + List<TongjiDingDanDTO> dingdanDTOs = new List<TongjiDingDanDTO>(); + + #region 鏂板璁㈠崟 + + + //鏈湀鏁伴噺 + var dingdanDTOsyue = _cooperOrderService.GetListtongji(Userid, dateminkaoqin, datemaxkaoqin); + var benyuezonge = dingdanDTOsyue.Sum(x => x.Money) ?? 0; + + //鏈棩鏁伴噺 + var dingdanDTOsri = dingdanDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + foreach (var cooperOrderDTO in dingdanDTOsri) + { + TongjiDingDanDTO dingdanDTO = new TongjiDingDanDTO(); + dingdanDTO.dingdanbianhao = cooperOrderDTO.OrderNo; + dingdanDTO.dingdanmingcheng = cooperOrderDTO.OrderTypeName + "-" + cooperOrderDTO.OrderType1Name + (string.IsNullOrEmpty(cooperOrderDTO.OrderType2) ? "" : "-" + cooperOrderDTO.OrderType2); + dingdanDTO.danjia = cooperOrderDTO.Price.Value.ToString("0.##"); + dingdanDTO.shuliang = cooperOrderDTO.OrderNum.Value.ToString("0.##"); + dingdanDTO.jine = cooperOrderDTO.Money.Value.ToString("0.##"); + dingdanDTO.benyueleijijine = benyuezonge.ToString("0.##"); + + dingdanDTOs.Add(dingdanDTO); + } + if (dingdanDTOs.Count == 0) + { + TongjiDingDanDTO dingdanDTO = new TongjiDingDanDTO(); + dingdanDTO.benyueleijijine = benyuezonge.ToString("0.##"); + + dingdanDTOs.Add(dingdanDTO); + } + + #endregion + + List<TongjiBaoBiaoDTO> ziliaoweihuDTOs = new List<TongjiBaoBiaoDTO>(); + #region 鏂伴椈璧勮 + TongjiBaoBiaoDTO xinwenzixunDTO = new TongjiBaoBiaoDTO(); + xinwenzixunDTO.gongzuo = "鏂伴椈璧勮"; + //鏈湀鏁伴噺 + DtChannelArticleNewsDTOSearch searchEntity = new DtChannelArticleNewsDTOSearch(); + searchEntity.EndTime = datemaxkaoqin; + searchEntity.AddTime = dateminkaoqin; + searchEntity.UserName = curentuser.UserSn; + searchEntity.CategoryId = 3; + var dtChannelArticleNewsDTOs = _dtChannelArticleNewsService.GetList(searchEntity); + xinwenzixunDTO.benyueshuliang = dtChannelArticleNewsDTOs.Count.ToString(); + //鏈棩鏁伴噺 + var xinwenzixunsri = dtChannelArticleNewsDTOs.Where(x => x.AddTime >= chauxnshijian.Date && x.AddTime < chauxnshijian.Date.AddDays(1)).ToList(); + xinwenzixunDTO.benrishuliang = xinwenzixunsri.Count.ToString(); + + var jijianixinwenzixun = fiPiecerateDTOs.Where(x => x.Project == "鏂伴椈璧勮").FirstOrDefault(); + + if (jijianixinwenzixun != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianixinwenzixun.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + xinwenzixunDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + xinwenzixunDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = xinwenzixunsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + xinwenzixunDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + xinwenzixunDTO.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 (decimal.Parse(xinwenzixunDTO.benyueshuliang) > 0 || decimal.Parse(xinwenzixunDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(xinwenzixunDTO); + #endregion + + #region 鍏稿瀷妗堜緥 + TongjiBaoBiaoDTO dianxinanliDTO = new TongjiBaoBiaoDTO(); + dianxinanliDTO.gongzuo = "鍏稿瀷妗堜緥"; + //鏈湀鏁伴噺 + searchEntity = new DtChannelArticleNewsDTOSearch(); + searchEntity.EndTime = datemaxkaoqin; + searchEntity.AddTime = dateminkaoqin; + searchEntity.UserName = curentuser.UserSn; + searchEntity.CategoryId = 85; + var dianxinanDTOs = _dtChannelArticleNewsService.GetList(searchEntity); + dianxinanliDTO.benyueshuliang = dianxinanDTOs.Count.ToString(); + //鏈棩鏁伴噺 + var dianxinanlisri = dianxinanDTOs.Where(x => x.AddTime >= chauxnshijian.Date && x.AddTime < chauxnshijian.Date.AddDays(1)).ToList(); + dianxinanliDTO.benrishuliang = dianxinanlisri.Count.ToString(); + + var jijianidianxinanli = fiPiecerateDTOs.Where(x => x.Project == "鍏稿瀷妗堜緥").FirstOrDefault(); + + if (jijianidianxinanli != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianidianxinanli.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + dianxinanliDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + dianxinanliDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = dianxinanlisri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + dianxinanliDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + dianxinanliDTO.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 (decimal.Parse(dianxinanliDTO.benyueshuliang) > 0 || decimal.Parse(dianxinanliDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(dianxinanliDTO); + #endregion + #region 鏀块噰鐭ヨ瘑 + TongjiBaoBiaoDTO zhengcaizhishiDTO = new TongjiBaoBiaoDTO(); + zhengcaizhishiDTO.gongzuo = "鏀块噰鐭ヨ瘑"; + //鏈湀鏁伴噺 + searchEntity = new DtChannelArticleNewsDTOSearch(); + searchEntity.EndTime = datemaxkaoqin; + searchEntity.AddTime = dateminkaoqin; + searchEntity.UserName = curentuser.UserSn; + searchEntity.CategoryId = 73; + var zhengcaizhishiDTOs = _dtChannelArticleNewsService.GetList(searchEntity); + zhengcaizhishiDTO.benyueshuliang = zhengcaizhishiDTOs.Count.ToString(); + //鏈棩鏁伴噺 + var zhengcaizhishisri = zhengcaizhishiDTOs.Where(x => x.AddTime >= chauxnshijian.Date && x.AddTime < chauxnshijian.Date.AddDays(1)).ToList(); + zhengcaizhishiDTO.benrishuliang = zhengcaizhishisri.Count.ToString(); + + var jijianizhengcaizhishi = fiPiecerateDTOs.Where(x => x.Project == "鏀块噰鐭ヨ瘑").FirstOrDefault(); + + if (jijianizhengcaizhishi != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianizhengcaizhishi.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + zhengcaizhishiDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + zhengcaizhishiDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = zhengcaizhishisri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + zhengcaizhishiDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + zhengcaizhishiDTO.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 (decimal.Parse(zhengcaizhishiDTO.benyueshuliang) > 0 || decimal.Parse(zhengcaizhishiDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(zhengcaizhishiDTO); + #endregion + + #region 鏂板鍏紬鍙峰叧娉� + TongjiBaoBiaoDTO gongzhonghaoDTO = new TongjiBaoBiaoDTO(); + gongzhonghaoDTO.gongzuo = "鏂板鍏紬鍙峰叧娉�"; + var jijianigongzhonghao = fiPiecerateDTOs.Where(x => x.Project == "鏂板鍏紬鍙峰叧娉�").FirstOrDefault(); + + if (jijianigongzhonghao != null) + { + //鏈湀鏁伴噺 + var gongzhonghaosyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianigongzhonghao.Id).ToList(); + + gongzhonghaoDTO.benyueshuliang = (gongzhonghaosyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var gongzhonghaosri = gongzhonghaosyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + gongzhonghaoDTO.benrishuliang = (gongzhonghaosri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + gongzhonghaoDTO.dangrijixiao = (gongzhonghaosri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianigongzhonghao.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + gongzhonghaoDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + gongzhonghaoDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (gongzhonghaosri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // gongzhonghaoDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + gongzhonghaoDTO.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 (decimal.Parse(gongzhonghaoDTO.benyueshuliang) > 0 || decimal.Parse(gongzhonghaoDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(gongzhonghaoDTO); + #endregion + + #region 缃戦〉鍒朵綔 + TongjiBaoBiaoDTO wangyeDTO = new TongjiBaoBiaoDTO(); + wangyeDTO.gongzuo = "缃戦〉鍒朵綔"; + var jijianiwangye = fiPiecerateDTOs.Where(x => x.Project == "缃戦〉鍒朵綔").FirstOrDefault(); + + if (jijianiwangye != null) + { + //鏈湀鏁伴噺 + var wangyesyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianiwangye.Id).ToList(); + + wangyeDTO.benyueshuliang = (wangyesyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var wangyesri = wangyesyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + wangyeDTO.benrishuliang = (wangyesri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + wangyeDTO.dangrijixiao = (wangyesri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianiwangye.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + wangyeDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + wangyeDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (wangyesri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // wangyeDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + wangyeDTO.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 (decimal.Parse(wangyeDTO.benyueshuliang) > 0 || decimal.Parse(wangyeDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(wangyeDTO); + #endregion + + #region 鏂板灏忛噰闂 + TongjiBaoBiaoDTO xinzengwendaDTO = new TongjiBaoBiaoDTO(); + xinzengwendaDTO.gongzuo = "鏂板灏忛噰闂"; + //鏈湀鏁伴噺 + var xinzengwendaDTOsyue = _liaotianService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin); + xinzengwendaDTO.benyueshuliang = xinzengwendaDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var xinzengwendaDTOsri = xinzengwendaDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + xinzengwendaDTO.benrishuliang = xinzengwendaDTOsri.Count.ToString(); + + var jijianixinzengwenda = fiPiecerateDTOs.Where(x => x.Project == "鏂板灏忛噰闂").FirstOrDefault(); + + if (jijianixinzengwenda != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianixinzengwenda.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + xinzengwendaDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + xinzengwendaDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = xinzengwendaDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + xinzengwendaDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + xinzengwendaDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ; + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = xinzengwendaDTOs.Count - renwujishu; + // if (youxiaojijian > 0) + // { + // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + // } + + //} + } + } + } + if (decimal.Parse(xinzengwendaDTO.benyueshuliang) > 0 || decimal.Parse(xinzengwendaDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(xinzengwendaDTO); + #endregion + + #region 瀹℃牳灏忛噰绛旈棶 + TongjiBaoBiaoDTO shenhewendaDTO = new TongjiBaoBiaoDTO(); + shenhewendaDTO.gongzuo = "瀹℃牳灏忛噰绛旈棶"; + //鏈湀鏁伴噺 + var shenhewendaDTOsyue = _liaotianService.GetListsalaryshenhe(Userid, dateminkaoqin, datemaxkaoqin); + shenhewendaDTO.benyueshuliang = shenhewendaDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var shenhewendaDTOsri = shenhewendaDTOsyue.Where(x => x.Shenhetime >= chauxnshijian.Date && x.Shenhetime < chauxnshijian.Date.AddDays(1)).ToList(); + shenhewendaDTO.benrishuliang = shenhewendaDTOsri.Count.ToString(); + + var jijianishenhewenda = fiPiecerateDTOs.Where(x => x.Project == "瀹℃牳灏忛噰绛旈棶").FirstOrDefault(); + + if (jijianishenhewenda != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianishenhewenda.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + shenhewendaDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + shenhewendaDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = shenhewendaDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + shenhewendaDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + shenhewendaDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ; + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = shenhewendaDTOs.Count - renwujishu; + // if (youxiaojijian > 0) + // { + // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + // } + + //} + } + } + } + if (decimal.Parse(shenhewendaDTO.benyueshuliang) > 0 || decimal.Parse(shenhewendaDTO.benrishuliang) > 0) + ziliaoweihuDTOs.Add(shenhewendaDTO); + #endregion + + List<TongjiBaoBiaoDTO> xiangmushishiDTOs = new List<TongjiBaoBiaoDTO>(); + #region 鏍囦功鍒朵綔 + TongjiBaoBiaoDTO biaoshuzhizuoDTO = new TongjiBaoBiaoDTO(); + biaoshuzhizuoDTO.gongzuo = "鏍囦功鍒朵綔"; + var jijianibiaoshuzhizuo = fiPiecerateDTOs.Where(x => x.Project == "鏍囦功鍒朵綔").FirstOrDefault(); + + if (jijianibiaoshuzhizuo != null) + { + //鏈湀鏁伴噺 + var biaoshuzhizuosyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianibiaoshuzhizuo.Id).ToList(); + + biaoshuzhizuoDTO.benyueshuliang = (biaoshuzhizuosyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var biaoshuzhizuosri = biaoshuzhizuosyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + biaoshuzhizuoDTO.benrishuliang = (biaoshuzhizuosri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + biaoshuzhizuoDTO.dangrijixiao = (biaoshuzhizuosri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianibiaoshuzhizuo.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + biaoshuzhizuoDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + biaoshuzhizuoDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (biaoshuzhizuosri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // biaoshuzhizuoDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + biaoshuzhizuoDTO.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 (decimal.Parse(biaoshuzhizuoDTO.benyueshuliang) > 0 || decimal.Parse(biaoshuzhizuoDTO.benrishuliang) > 0) + xiangmushishiDTOs.Add(biaoshuzhizuoDTO); + #endregion + + #region 鏍囦功妫�鏌� + TongjiBaoBiaoDTO biaoshujianchaDTO = new TongjiBaoBiaoDTO(); + biaoshujianchaDTO.gongzuo = "鏍囦功妫�鏌�"; + var jijianibiaoshujiancha = fiPiecerateDTOs.Where(x => x.Project == "鏍囦功妫�鏌�").FirstOrDefault(); + + if (jijianibiaoshujiancha != null) + { + //鏈湀鏁伴噺 + var biaoshujianchasyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianibiaoshujiancha.Id).ToList(); + + biaoshujianchaDTO.benyueshuliang = (biaoshujianchasyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var biaoshujianchasri = biaoshujianchasyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + biaoshujianchaDTO.benrishuliang = (biaoshujianchasri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + biaoshujianchaDTO.dangrijixiao = (biaoshujianchasri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianibiaoshujiancha.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + biaoshujianchaDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + biaoshujianchaDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (biaoshujianchasri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // biaoshujianchaDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + biaoshujianchaDTO.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 (decimal.Parse(biaoshujianchaDTO.benyueshuliang) > 0 || decimal.Parse(biaoshujianchaDTO.benrishuliang) > 0) + xiangmushishiDTOs.Add(biaoshujianchaDTO); + #endregion + + #region 璧疯崏璐ㄧ枒鎶曡瘔 + TongjiBaoBiaoDTO zhiyiDTO = new TongjiBaoBiaoDTO(); + zhiyiDTO.gongzuo = "璧疯崏璐ㄧ枒鎶曡瘔涔�"; + var jijianizhiyi = fiPiecerateDTOs.Where(x => x.Project == "璧疯崏璐ㄧ枒鎶曡瘔涔�").FirstOrDefault(); + + if (jijianizhiyi != null) + { + //鏈湀鏁伴噺 + var zhiyisyue = _admPieceCheckService.GetList(Userid, dateminkaoqin, datemaxkaoqin).Where(x => x.WorkPro == jijianizhiyi.Id).ToList(); + + zhiyiDTO.benyueshuliang = (zhiyisyue.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + //鏈棩鏁伴噺 + var zhiyisri = zhiyisyue.Where(x => x.WorkTime >= chauxnshijian.Date && x.WorkTime < chauxnshijian.Date.AddDays(1)).ToList(); + zhiyiDTO.benrishuliang = (zhiyisri.Sum(x => x.Shuliang) ?? 0).ToString("0.##"); + zhiyiDTO.dangrijixiao = (zhiyisri.Sum(x => x.Gongzi) ?? 0).ToString("0.##"); + + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianizhiyi.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + zhiyiDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + zhiyiDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = (zhiyisri.Sum(x => x.Shuliang) ?? 0) - jixiaotichengfangan.Renwu.Value; + // if (youxiaojijian > 0) + // { + // zhiyiDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString(); + // } + + //} + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + zhiyiDTO.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 (decimal.Parse(zhiyiDTO.benyueshuliang) > 0 || decimal.Parse(zhiyiDTO.benrishuliang) > 0) + xiangmushishiDTOs.Add(zhiyiDTO); + #endregion + + ViewBag.tuiguangDTOs = tuiguangDTOs; + ViewBag.baifangkehuDTOs = baifangkehuDTOs; + ViewBag.dingdanDTOs = dingdanDTOs; + ViewBag.ziliaoweihuDTOs = ziliaoweihuDTOs; + ViewBag.xiangmushishiDTOs = xiangmushishiDTOs; + + ViewBag.Tongjitime = chauxnshijian.ToString("yyyy-MM-dd"); + ViewBag.Userid = Userid; + ViewData["UserIds"] = _userService.GetList(); + return View(); } } -- Gitblit v1.9.1