From 3a6b641fd48f7377fec66e31b069c472fac5ba60 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期四, 25 十一月 2021 14:47:34 +0800 Subject: [PATCH] 提交 --- zhengcaioa/Services/ExpertService.cs | 11 ++ zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs | 109 +++++++++++++++++++++ zhengcaioa/zhengcaioa/Views/Expert/Edit.cshtml | 25 ++-- zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs | 49 +++++++++ zhengcaioa/zhengcaioa/Views/Expert/Indexziliao.cshtml | 57 ++++++++++ zhengcaioa/IServices/IExpertService.cs | 2 zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs | 1 7 files changed, 240 insertions(+), 14 deletions(-) diff --git a/zhengcaioa/IServices/IExpertService.cs b/zhengcaioa/IServices/IExpertService.cs index ceb87af..ea0bd84 100644 --- a/zhengcaioa/IServices/IExpertService.cs +++ b/zhengcaioa/IServices/IExpertService.cs @@ -36,5 +36,7 @@ ResultEntity Phone1Chongfu(string Phone1 = "", string Id = ""); + List<ExpertDTO> GetListsalary(string userid, DateTime datemin, DateTime datemax); + } } diff --git a/zhengcaioa/Services/ExpertService.cs b/zhengcaioa/Services/ExpertService.cs index 2721acd..e24376f 100644 --- a/zhengcaioa/Services/ExpertService.cs +++ b/zhengcaioa/Services/ExpertService.cs @@ -818,5 +818,16 @@ } return resultEntity; } + + + public List<ExpertDTO> GetListsalary(string userid, DateTime datemin, DateTime datemax) + { + + + var listPosition = _context.Experts.Where(r => r.RecStatus == "A"&& r.ShenheStatus=="A"&& r.Creater == userid && r.Createtime >= datemin && r.Createtime < datemax).ToList(); + + var list = _mapper.Map<List<ExpertDTO>>(listPosition); + return list; + } } } diff --git a/zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs b/zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs index efaacce..c781cd9 100644 --- a/zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/Expert/ExpertController.cs @@ -119,6 +119,7 @@ ViewBag.users = _userService.GetList().Select(x => new { code = x.Id, label = x.UserName }).ToList(); ViewBag.YearJiou = _liaotianService.GetSYScode("experts", "year_jiou").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList(); + ViewBag.Createtime = DateTime.Now.ToString("yyyy-MM-dd"); ; return View(); } diff --git a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs index 6b1736e..44a2577 100644 --- a/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/admin/TongjiBaoBiaoController.cs @@ -60,6 +60,7 @@ private readonly IHrPositionService _hrPositionService; private readonly IHrDeptService _hrDeptService; private readonly IAdmSigninService _admSigninService; + private readonly IExpertService _expertService; public TongjiBaoBiaoController(ILogger<TongjiBaoBiaoController> logger , IAdmAttendanceRuleService attendanceRuleService @@ -90,6 +91,7 @@ , IHrPositionService hrPositionService , IHrDeptService hrDeptService , IAdmSigninService admSigninService + , IExpertService expertService ) { _logger = logger; @@ -121,6 +123,7 @@ _hrPositionService = hrPositionService; _hrDeptService = hrDeptService; _admSigninService = admSigninService; + _expertService = expertService; } public async Task<IActionResult> IndexAsync(string Tongjitime="") @@ -1091,6 +1094,59 @@ } if (decimal.Parse(qianyueDTO.benyueshuliang) > 0 || decimal.Parse(qianyueDTO.benrishuliang) > 0) tuiguangDTOs.Add(qianyueDTO); + #endregion + + + #region 涓撳褰曞叆 + TongjiBaoBiaoDTO zhuanjialuruDTO = new TongjiBaoBiaoDTO(); + zhuanjialuruDTO.gongzuo = "涓撳褰曞叆"; + //鏈湀鏁伴噺 + var zhuanjialuruDTOsyue = _expertService.GetListsalary(curentuser.Id, dateminkaoqin, datemaxkaoqin); + zhuanjialuruDTO.benyueshuliang = zhuanjialuruDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var zhuanjialuruDTOsri = zhuanjialuruDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + zhuanjialuruDTO.benrishuliang = zhuanjialuruDTOsri.Count.ToString(); + + var jijianizhuanjialuru = fiPiecerateDTOs.Where(x => x.Project == "涓撳褰曞叆").FirstOrDefault(); + + if (jijianizhuanjialuru != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianizhuanjialuru.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + zhuanjialuruDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + zhuanjialuruDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = zhuanjialuruDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + zhuanjialuruDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + zhuanjialuruDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ; + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = intentionCustomerDTOs.Count - renwujishu; + // if (youxiaojijian > 0) + // { + // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + // } + + //} + } + } + } + if (zhuanjialuruDTOsyue.Count > 0 || zhuanjialuruDTOsri.Count > 0) + tuiguangDTOs.Add(zhuanjialuruDTO); #endregion @@ -2797,6 +2853,59 @@ #endregion + #region 涓撳褰曞叆 + TongjiBaoBiaoDTO zhuanjialuruDTO = new TongjiBaoBiaoDTO(); + zhuanjialuruDTO.gongzuo = "涓撳褰曞叆"; + //鏈湀鏁伴噺 + var zhuanjialuruDTOsyue = _expertService.GetListsalary(Userid, dateminkaoqin, datemaxkaoqin); + zhuanjialuruDTO.benyueshuliang = zhuanjialuruDTOsyue.Count.ToString(); + //鏈棩鏁伴噺 + var zhuanjialuruDTOsri = zhuanjialuruDTOsyue.Where(x => x.Createtime >= chauxnshijian.Date && x.Createtime < chauxnshijian.Date.AddDays(1)).ToList(); + zhuanjialuruDTO.benrishuliang = zhuanjialuruDTOsri.Count.ToString(); + + var jijianizhuanjialuru = fiPiecerateDTOs.Where(x => x.Project == "涓撳褰曞叆").FirstOrDefault(); + + if (jijianizhuanjialuru != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianizhuanjialuru.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + + zhuanjialuruDTO.benyueqingkuang = (Yingchuqin * jixiaotichengfangan.Renwu.Value).ToString("0.##"); + zhuanjialuruDTO.benriqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = zhuanjialuruDTOsri.Count - jixiaotichengfangan.Renwu.Value; + if (youxiaojijian > 0) + { + zhuanjialuruDTO.dangrijixiao = Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2).ToString("0.##"); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + zhuanjialuruDTO.benyueqingkuang = jixiaotichengfangan.Renwu.Value.ToString("0.##"); ; + //if (jixiaotichengfangan.Tichengstandard == "01") + //{ + // decimal youxiaojijian = intentionCustomerDTOs.Count - renwujishu; + // if (youxiaojijian > 0) + // { + // hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + // } + + //} + } + } + } + if (zhuanjialuruDTOsyue.Count > 0 || zhuanjialuruDTOsri.Count > 0) + tuiguangDTOs.Add(zhuanjialuruDTO); + #endregion + + List<TongjiBaoBiaoDTO> baifangkehuDTOs = new List<TongjiBaoBiaoDTO>(); #region 涓婇棬鎷滆瀹㈡埛 diff --git a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs index 335cc97..83a593d 100644 --- a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs +++ b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs @@ -50,6 +50,7 @@ private readonly IHttpClientFactory _clientFactory; private readonly IAskService _askService; private readonly IAdmEvaluateService _admEvaluateService; + private readonly IExpertService _expertService; private readonly decimal jiabangongzibiaozhun = new decimal(21.5); public TimedBackgroundService(ILogger<TimedBackgroundService> logger, IServiceScopeFactory factory) @@ -83,6 +84,7 @@ _clientFactory = factory.CreateScope().ServiceProvider.GetRequiredService<IHttpClientFactory>(); _askService= factory.CreateScope().ServiceProvider.GetRequiredService<IAskService>(); _admEvaluateService = factory.CreateScope().ServiceProvider.GetRequiredService<IAdmEvaluateService>(); + _expertService = factory.CreateScope().ServiceProvider.GetRequiredService<IExpertService>(); } protected override async Task ExecuteAsync(CancellationToken stoppingToken) { @@ -3452,6 +3454,53 @@ #endregion + + + + #region 涓撳褰曞叆 + + var zhuanjialuruDTOsyue = _expertService.GetListsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin); + if (zhuanjialuruDTOsyue != null && zhuanjialuruDTOsyue.Count > 0) + { + var jijianidddd = fiPiecerateDTOs.Where(x => x.Project == "涓撳褰曞叆").FirstOrDefault(); + if (jijianidddd != null) + { + var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianidddd.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault(); + if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue) + { + if (jixiaotichengfangan.Renwustandard == "01") + { + decimal renwujishu = admAttendanceDTO.Yingchuqin * jixiaotichengfangan.Renwu.Value; + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = zhuanjialuruDTOsyue.Count - renwujishu; + if (youxiaojijian > 0) + { + hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + } + + } + + } + else if (jixiaotichengfangan.Renwustandard == "02") + { + decimal renwujishu = jixiaotichengfangan.Renwu.Value; + if (jixiaotichengfangan.Tichengstandard == "01") + { + decimal youxiaojijian = zhuanjialuruDTOsyue.Count - renwujishu; + if (youxiaojijian > 0) + { + hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2); + } + + } + } + } + + } + } + #endregion + } diff --git a/zhengcaioa/zhengcaioa/Views/Expert/Edit.cshtml b/zhengcaioa/zhengcaioa/Views/Expert/Edit.cshtml index f18f271..afc2f55 100644 --- a/zhengcaioa/zhengcaioa/Views/Expert/Edit.cshtml +++ b/zhengcaioa/zhengcaioa/Views/Expert/Edit.cshtml @@ -275,7 +275,7 @@ <input class="form-control" label="韬唤璇佸彿" name="IdCard" id="IdCard" labtype="txt" addvisible="true" editvisible="true" maxlength="18" reg="" ismust="true" type="text" value="@Model.IdCard" autocomplete="off"> </div> - <label class="text-right col-sm-1 col-md-1 control-label">涓撳璇佸彿</label> + <label class="text-right col-sm-1 col-md-1 control-label">涓撳璇佸彿<i class="red">*</i></label> <div class="col-sm-2 col-md-2" grouptype="Vdata"> <input class="form-control" label="涓撳璇佸彿" name="CertiNumber" id="CertiNumber" labtype="txt" addvisible="true" editvisible="true" maxlength="500" reg="" ismust="true" type="text" value="@Model.CertiNumber"> </div> @@ -377,7 +377,7 @@ </div> <div class="clearfix layer-area" style="padding-bottom:15px;"> - <label class="text-right col-sm-1 col-md-1 control-label">鑱旂郴鐢佃瘽1</label> + <label class="text-right col-sm-1 col-md-1 control-label">鑱旂郴鐢佃瘽1<i class="red">*</i></label> <div class="col-sm-2 col-md-2"> <input class="form-control" label="鑱旂郴鐢佃瘽1" name="Phone1" id="Phone1" labtype="txt" addvisible="true" editvisible="true" maxlength="500" reg="" ismust="true" type="text" value="@Model.Phone1" autocomplete="off"> </div> @@ -912,14 +912,14 @@ toastr.warning("涓撳濮撳悕涓嶈兘涓虹┖"); return; }; - //if (Verify.isNull($("#Province").val()) || Verify.isNull($("#City").val()) ) { - // toastr.warning("鍖哄煙涓嶈兘涓虹┖"); - // return; - //} - //if ($("#IdCard").val() == '') { - // toastr.warning("韬唤璇佸彿涓嶈兘涓虹┖"); - // return; - //} + if ($.trim($("#Phone1").val()) == '') { + toastr.warning("鑱旂郴鐢佃瘽涓嶈兘涓虹┖"); + return; + } + if ($.trim($("#CertiNumber").val()) == '' || $.trim($("#CertiNumber").val()) == 'SC') { + toastr.warning("涓撳璇佸彿涓嶈兘涓虹┖"); + return; + } @@ -1113,7 +1113,10 @@ if (data.Result) { - if ($("#Province").val() != data.Remark) { + if (data.Remark == null || data.Remark == "") { + return; + } + if ($("#Province").val() != data.Remark ) { $("#Province").val(data.Remark); var sheng = $("#Province").val(); diff --git a/zhengcaioa/zhengcaioa/Views/Expert/Indexziliao.cshtml b/zhengcaioa/zhengcaioa/Views/Expert/Indexziliao.cshtml index 665567f..cb8adec 100644 --- a/zhengcaioa/zhengcaioa/Views/Expert/Indexziliao.cshtml +++ b/zhengcaioa/zhengcaioa/Views/Expert/Indexziliao.cshtml @@ -11,7 +11,9 @@ var level = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.level))'; var ReviewItem = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.ReviewItem))'; var users = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.users))'; - var YearJiou= '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.YearJiou))'; + var YearJiou = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(ViewBag.YearJiou))'; + var Createtime = '@Html.Raw(ViewBag.Createtime)'; + loseherght = 60; gridConfig = { multiselect: true, selectcol: "Id" }; dataCol = [ @@ -40,7 +42,7 @@ { label: '淇敼鏃堕棿', name: 'Modifytime', labtype: 'txt', hidden: true } ]; - dataUrl = "/Expert/GetList"; + dataUrl = "/Expert/GetList?Province=510000&City=510100"; searchCol = [ { label: '鐪�', name: 'Province', labtype: 'combox', hidden: false, data: JSON.parse(Province), cwidth: '5%', cccwidth: '6.5%' }, { label: '甯�', name: 'City', labtype: 'combox', hidden: false, data: JSON.parse('[]'), cwidth: '1%', cccwidth: '7%' }, @@ -52,11 +54,24 @@ { label: '璇勫鍝佺洰', name: 'ReviewItem', labtype: 'combox', hidden: false, data: JSON.parse(ReviewItem) }, { label: '鑰冭瘯鏃堕棿', name: 'YearJiou', labtype: 'combox', hidden: false, data: JSON.parse(YearJiou) }, - + ]; + + + var _pageSearch = function () { + $("#jqGrid").jqGrid('setGridParam', { + url: '/Expert/GetList', postData: jsons, page: 1 + }); //閲嶆柊杞藉叆 + var jsons = GetSearchEnd(); + if (jsons == false) { + msg.info("璇峰綍鍏ユ煡璇㈡潯浠�"); + return false; + } + LoadGrid(jsons); + } var _pagedel = function (id) { if (confirm('鏄惁鍒犻櫎璁板綍')) { @@ -170,6 +185,42 @@ $("#PBSReviewItem").parent().next().remove(); + $("#PBSProvince").val("510000"); + $("#PBSProvince").trigger('chosen:updated');//鏇存柊閫夐」 + + $.ajax({ + type: "GET", + url: "/Project/getCity?shengid=510000", + dataType: "json", + global: false, + data: "", + success: function (data) { + + var city = $("#PBSCity"); + city.find('option').remove(); + var aaa = '<option value="" hassubinfo="true">璇烽�夋嫨</option>'; + city.append(aaa); + if (data.length > 0) { + for (var i = 0; i < data.length; i++) { + + var o = '<option value="' + data[i].CodeId + '" hassubinfo="true">' + data[i].Name + '</option>'; + city.append(o); + } + $("#PBSCity").val("510100"); + } + $("#PBSCity").trigger('chosen:updated');//鏇存柊閫夐」 + }, + error: function () { } + }); + + + $("#PBSCreatetimeend").val(Createtime); + + + + + + }); </script> } -- Gitblit v1.9.1