From fc869b332b437db27ad90ed2221090491de28563 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期一, 28 六月 2021 14:21:34 +0800
Subject: [PATCH] 提交
---
zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml | 6 +
zhengcaioa/zhengcaioa/Views/WfApplytype/Index.cshtml | 171 ++++++++++++++++++++++++++++++++++
zhengcaioa/zhengcaioa/Controllers/OA/WfApplytypeController.cs | 39 +++++++
zhengcaioa/Services/WfApplytypeService.cs | 2
zhengcaioa/.vs/zhengcaioa/v16/.suo | 0
zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs | 62 ++++++++++--
zhengcaioa/zhengcaioa/Startup.cs | 4
zhengcaioa/zhengcaioa/Views/Signin/AskLeaveOff.cshtml | 4
8 files changed, 274 insertions(+), 14 deletions(-)
diff --git a/zhengcaioa/.vs/zhengcaioa/v16/.suo b/zhengcaioa/.vs/zhengcaioa/v16/.suo
index c1aa1f1..c43e172 100644
--- a/zhengcaioa/.vs/zhengcaioa/v16/.suo
+++ b/zhengcaioa/.vs/zhengcaioa/v16/.suo
Binary files differ
diff --git a/zhengcaioa/Services/WfApplytypeService.cs b/zhengcaioa/Services/WfApplytypeService.cs
index 86a9a08..123f7cf 100644
--- a/zhengcaioa/Services/WfApplytypeService.cs
+++ b/zhengcaioa/Services/WfApplytypeService.cs
@@ -162,7 +162,7 @@
{
- var listRole = _context.WfApplytypes.Where(r => r.RecStatus == "A").ToList();
+ var listRole = _context.WfApplytypes.Where(r => r.RecStatus == "A").OrderBy(x=>x.Sort).ToList();
var list = _mapper.Map<List<WfApplytypeDTO>>(listRole);
return list;
diff --git a/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs b/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs
index e10e018..bab1b0c 100644
--- a/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/AdmManagement/SigninController.cs
@@ -196,7 +196,7 @@
}
#endregion
#region 璇峰亣涓庨攢鍋�
- public IActionResult AskLeave(string id="", DateTime? StratTimeName = null, DateTime? EndTimeName = null)
+ public IActionResult AskLeave(string id="", string StratTimeName = "", string EndTimeName = "")
{
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
@@ -220,14 +220,35 @@
- if (StratTimeName.HasValue)
+ if (!string.IsNullOrWhiteSpace(StratTimeName))
{
- admAskLeaveDTO.StratTimeName = StratTimeName.Value.AddHours(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+ DateTime StratTimeName1;
+ if(DateTime.TryParse(StratTimeName, out StratTimeName1))
+ {
+ admAskLeaveDTO.StratTimeName = StratTimeName1.AddHours(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+
+ }
+
+ }
+ else
+ {
+ admAskLeaveDTO.StratTimeName =DateTime.Now.Date.AddHours(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+
}
- if (EndTimeName.HasValue)
+ if (!string.IsNullOrWhiteSpace(EndTimeName))
{
- admAskLeaveDTO.EndTimeName = EndTimeName.Value.AddHours(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+ DateTime EndTimeName1;
+ if (DateTime.TryParse(EndTimeName, out EndTimeName1))
+ {
+ admAskLeaveDTO.EndTimeName = EndTimeName1.AddHours(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+
+ }
+ }
+ else
+ {
+ admAskLeaveDTO.EndTimeName = DateTime.Now.Date.AddHours(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+
}
AdmAskLeaveDTO admAsk = jisianChecktime(DateTime.Parse(admAskLeaveDTO.StratTimeName), DateTime.Parse(admAskLeaveDTO.EndTimeName));
@@ -693,7 +714,7 @@
return admAsk;
}
- public IActionResult AskLeaveOff(string id = "", DateTime? StratTimeName = null, DateTime? EndTimeName = null)
+ public IActionResult AskLeaveOff(string id = "", string StratTimeName = "", string EndTimeName = "")
{
var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User"));
ViewData["curentuser"] = curentuser;
@@ -718,14 +739,35 @@
- if (StratTimeName.HasValue)
+ if (!string.IsNullOrWhiteSpace(StratTimeName))
{
- askLeaveOffDTO.StratTimeName = StratTimeName.Value.AddHours(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+ DateTime StratTimeName1;
+ if (DateTime.TryParse(StratTimeName, out StratTimeName1))
+ {
+ askLeaveOffDTO.StratTimeName = StratTimeName1.AddHours(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+
+ }
+
+ }
+ else
+ {
+ askLeaveOffDTO.StratTimeName = DateTime.Now.Date.AddHours(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.WorkingStart.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+
}
- if (EndTimeName.HasValue)
+ if (!string.IsNullOrWhiteSpace(EndTimeName))
{
- askLeaveOffDTO.EndTimeName = EndTimeName.Value.AddHours(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+ DateTime EndTimeName1;
+ if (DateTime.TryParse(EndTimeName, out EndTimeName1))
+ {
+ askLeaveOffDTO.EndTimeName = EndTimeName1.AddHours(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+
+ }
+ }
+ else
+ {
+ askLeaveOffDTO.EndTimeName = DateTime.Now.Date.AddHours(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[0])).AddMinutes(double.Parse(admAttendanceRuleDTO.OffworkEnd.Split('.')[1])).ToString("yyyy-MM-dd HH:mm");
+
}
ResultDataEntity<SysAttachmentDTO> results = new ResultDataEntity<SysAttachmentDTO>();
diff --git a/zhengcaioa/zhengcaioa/Controllers/OA/WfApplytypeController.cs b/zhengcaioa/zhengcaioa/Controllers/OA/WfApplytypeController.cs
new file mode 100644
index 0000000..9490308
--- /dev/null
+++ b/zhengcaioa/zhengcaioa/Controllers/OA/WfApplytypeController.cs
@@ -0,0 +1,39 @@
+锘縰sing DTO;
+using IServices;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.Extensions.Configuration;
+using Microsoft.Extensions.Logging;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net.Http;
+using System.Net.Http.Headers;
+using System.Threading.Tasks;
+using zhengcaioa.IService;
+using zhengcaioa.Models;
+
+namespace zhengcaioa.Controllers.OA
+{
+ public class WfApplytypeController : Controller
+ {
+ private readonly ILogger<WfApplytypeController> _logger;
+ private readonly IWfApplytypeService _wfApplytypeService;
+
+
+ public WfApplytypeController(ILogger<WfApplytypeController> logger, IWfApplytypeService wfApplytypeService)
+ {
+ _logger = logger;
+ _wfApplytypeService = wfApplytypeService;
+
+ }
+
+ public IActionResult Index()
+ {
+ ViewBag.wfApplytypeDTOs = _wfApplytypeService.GetList();
+ return View();
+ }
+ }
+}
diff --git a/zhengcaioa/zhengcaioa/Startup.cs b/zhengcaioa/zhengcaioa/Startup.cs
index a24264a..1ca0ad8 100644
--- a/zhengcaioa/zhengcaioa/Startup.cs
+++ b/zhengcaioa/zhengcaioa/Startup.cs
@@ -130,7 +130,9 @@
services.AddScoped(typeof(ICusFangwenjiluService), typeof(CusFangwenjiluService));
- services.AddScoped(typeof(ILZhuanjiahuidumService), typeof(LZhuanjiahuidumService));
+ services.AddScoped(typeof(ILZhuanjiahuidumService), typeof(LZhuanjiahuidumService));
+
+ services.AddScoped(typeof(IWfApplytypeService), typeof(WfApplytypeService));
//定时执行
services.AddHostedService<TimedBackgroundService>();
diff --git a/zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml b/zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml
index b2ccff1..fca84e4 100644
--- a/zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/Signin/AskLeave.cshtml
@@ -184,6 +184,8 @@
</form>
<script type="text/javascript">
+
+
var hh = document.body.clientHeight - $('.ibox-title').height() - $("#top").height() * 2 - 95;
$("#div_content").height(hh);
@@ -285,7 +287,9 @@
_pageAutoClose();//鑷姩鍏抽棴椤甸潰鏂规硶
}
catch (err) {
- parent._CloseTab1("/Signin/AskLeave/");
+ var pathname = window.location.pathname;
+ var search = window.location.search;
+ parent._CloseTab1(pathname + search);
}
}
diff --git a/zhengcaioa/zhengcaioa/Views/Signin/AskLeaveOff.cshtml b/zhengcaioa/zhengcaioa/Views/Signin/AskLeaveOff.cshtml
index 4155779..84f43e1 100644
--- a/zhengcaioa/zhengcaioa/Views/Signin/AskLeaveOff.cshtml
+++ b/zhengcaioa/zhengcaioa/Views/Signin/AskLeaveOff.cshtml
@@ -347,7 +347,9 @@
_pageAutoClose();//鑷姩鍏抽棴椤甸潰鏂规硶
}
catch (err) {
- parent._CloseTab1("/Signin/AskLeave/");
+ var pathname = window.location.pathname;
+ var search = window.location.search;
+ parent._CloseTab1(pathname + search);
}
}
diff --git a/zhengcaioa/zhengcaioa/Views/WfApplytype/Index.cshtml b/zhengcaioa/zhengcaioa/Views/WfApplytype/Index.cshtml
new file mode 100644
index 0000000..18b8a51
--- /dev/null
+++ b/zhengcaioa/zhengcaioa/Views/WfApplytype/Index.cshtml
@@ -0,0 +1,171 @@
+锘緻using DTO;
+@{
+ Layout = null;
+
+ List<WfApplytypeDTO> wfApplytypeDTOs = ViewData["wfApplytypeDTOs"] as List<WfApplytypeDTO>; //娴佺▼
+}
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
+ <meta name="description" content="">
+ <meta name="author" content="ThemeBucket">
+ <title>@(SiteConfig.SiteName)</title>
+ <link href="~/css/bootstrap.min.css" rel="stylesheet">
+ <link href="~/css/font-awesome.min.css" rel="stylesheet">
+ <link href="~/css/animate.min.css" rel="stylesheet">
+
+ @*<link href="~/css/plugins/iCheck/custom.css" rel="stylesheet">*@
+ <link href="~/css/style.min.css" rel="stylesheet">
+ <link href="~/css/plugins/chosen/chosen.css" rel="stylesheet">
+ @*<link href="~/js/plugins/layer/skin/layer.css" rel="stylesheet">*@
+ @*<link href="~/css/plugins/datapicker/datepicker3.css" rel="stylesheet">*@
+ <link href="~/css/style.min.css" rel="stylesheet">
+ <link href="~/css/plugins/toastr/toastr.min.css" rel="stylesheet" />
+ <link href="~/css/plugins/webuploader/webuploader.css" rel="stylesheet" />
+
+ <style type="text/css">
+ .webuploader-pick {
+ position: relative;
+ display: inline-block;
+ cursor: pointer;
+ background: #00b7ee;
+ padding: 8px 14px 7px 14px;
+ color: #fff;
+ text-align: center;
+ border-radius: 3px;
+ overflow: hidden;
+ }
+
+ div.clearfix > label {
+ padding-top: 8px;
+ }
+
+ .chosen-container {
+ border-radius: 1px;
+ border: 1px solid #e5e6e7;
+ }
+
+ .col-md-1.control-label {
+ padding-right: 0px;
+ font-weight: 400;
+ }
+ </style>
+
+ <!-- jqgrid-->
+ @*<link href="~/css/plugins/jqgrid/ui.jqgrid.css" rel="stylesheet">*@
+ <script language="javascript" src="~/js/jquery.min.js" type="text/javascript"></script>
+ <script src="~/js/bootstrap.min.js"></script>
+ @*<script src="~/js/plugins/bootstro/bootstro.js"></script>*@
+
+ <!--瀹瑰櫒-->
+ @*<script language="javascript" src="~/js/datehelper.js" type="text/javascript"></script>*@
+ @*<script language="javascript" src="~/js/plugins/query/jquery.query-object.js" type="text/javascript"></script>*@
+ @*<script language="javascript" src="~/js/plugins/iCheck/icheck.min.js" type="text/javascript"></script>*@
+ <script language="javascript" src="~/js/plugins/chosen/chosen.jquery.js" type="text/javascript"></script>
+ @*<script language="javascript" src="~/js/plugins/datapicker/bootstrap-datepicker.js" type="text/javascript"></script>*@
+ <script language="javascript" src="~/js/plugins/layer/layer.js" type="text/javascript"></script>
+ @*<script src="~/js/plugins/jqgrid/jquery.jqGrid.min.js" type="text/javascript"></script>*@
+ @*<script src="~/js/plugins/jqgrid/i18n/grid.locale-cn.js" type="text/javascript"></script>*@
+ <script src="~/js/plugins/toastr/toastr.min.js" type="text/javascript"></script>
+ <script src="~/js/plugins/webuploader/webuploader.min.js"></script>
+
+ <script language="javascript" src="~/js/common-layout.js" type="text/javascript"></script>
+ @*<script src="~/js/plugins/layer/laydate/laydate.js" type="text/javascript"></script>*@
+ @*<script src="~/js/plugins/iTexbox/itextbox.js" type="text/javascript"></script>*@
+ @*<script src="~/js/plugins/iuploader/iuploader.js"></script>*@
+ <script src="~/js/TUJS.js"></script>
+</head>
+<body class="gray-bg" style="overflow:hidden">
+ <form id="formtest">
+ <div class="wrapper wrapper-content" id="ibox-content" style="padding:15px;">
+ <div class="row">
+ <div class="col-sm-12">
+ <div class="ibox float-e-margins">
+ <div class="ibox-title">
+ <h5> <i class="fa fa-list"></i> 鍙戣捣娴佺▼</h5>@*<div class="ibox-tools">
+ <a class="collapse-link" onclick="collapseBox(this);"><i class="fa fa-chevron-up" title="鎶樺彔/灞曞紑鏄庣粏"></i></a>
+ </div>*@
+ </div>
+ <div id="div_content" class="ibox-content" style="background-color:white;overflow-y:auto;">
+ <div class="row">
+
+ @if (wfApplytypeDTOs != null && wfApplytypeDTOs.Count > 0)
+ {
+
+
+ foreach (var wfApplytypeDTO in wfApplytypeDTOs)
+ {
+
+
+
+ <div class="col-sm-3 col-md-3" grouptype="Vdata" style="padding-bottom:15px;">
+ <a class="J_menuItem" title="@wfApplytypeDTO.Applytiye" href="@wfApplytypeDTO.Deelurl" data-index="0">@wfApplytypeDTO.Applytiye</a>
+
+
+
+ </div>
+
+
+ }
+
+ }
+
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="wrapper wrapper-content" style="margin-top:0px"></div>
+
+ <div class="ibox-content" id="top" style="z-index:100; position:fixed; height:50px; width:100%;bottom:0; text-align: right; padding-top:8px ">
+ <div class="" style="float:right;" data-bootstro-width="500px" data-bootstro-content="鍔熻兘鎸夐挳锛氣�滀繚瀛樷�濓紝鈥滃垹闄も��">
+
+ </div>
+
+ </div>
+
+ </form>
+ <script type="text/javascript">
+
+ var hh = document.body.clientHeight - $('.ibox-title').height() - $("#top").height()*2 - 95;
+ $("#div_content").height(hh);
+
+
+ toastr.options = {
+ "closeButton": true,
+ "debug": false,
+ "progressBar": true,
+ "positionClass": "toast-bottom-right",
+ "onclick": null,
+ "showDuration": "300",
+ "hideDuration": "600",
+ "timeOut": "4500",
+ "extendedTimeOut": "600",
+ "showEasing": "swing",
+ "hideEasing": "linear",
+ "showMethod": "fadeIn",
+ "hideMethod": "fadeOut"
+ };
+
+
+
+
+
+
+
+
+
+ function _pageAutoClose() {
+ parent.window._reloadPageData();
+ var index = parent.layer.getFrameIndex(window.name);
+ parent.layer.isRefresh = true;
+ parent.layer.closeAll('loading');
+ parent.layer.close(index);
+ return false;
+ }
+ </script>
+</body>
+</html>
\ No newline at end of file
--
Gitblit v1.9.1