From ac94b1d939373a684344764e5b00dac44feabd81 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期五, 17 二月 2023 17:38:01 +0800
Subject: [PATCH] 增加service
---
src/main/java/com/wgcloud/service/FailureLoggingService.java | 58 ++++
src/main/resources/templates/failurelogging/list.html | 131 ++++++++++
src/main/resources/templates/common/aside.html | 43 +++
src/main/java/com/wgcloud/controller/FailureLoggingController.java | 170 +++++++++++++
src/main/java/com/wgcloud/WgcloudServiceApplication.java | 3
src/main/java/com/wgcloud/mapper/FailureLoggingMapper.java | 3
src/main/resources/templates/failurelogging/view.html | 124 +++++++++
src/main/resources/mybatis/mapper/FailureLoggingMapper.xml | 32 ++
src/main/resources/static/js/failurelogging.js | 27 ++
src/main/java/com/wgcloud/entity/FailureLogging.java | 2
src/main/resources/templates/failurelogging/add.html | 158 ++++++++++++
src/main/java/com/wgcloud/entity/WorkLogging.java | 2
src/main/java/com/wgcloud/entity/InspectionTask.java | 2
13 files changed, 749 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/wgcloud/WgcloudServiceApplication.java b/src/main/java/com/wgcloud/WgcloudServiceApplication.java
index 51c5a67..0acffdc 100644
--- a/src/main/java/com/wgcloud/WgcloudServiceApplication.java
+++ b/src/main/java/com/wgcloud/WgcloudServiceApplication.java
@@ -10,6 +10,7 @@
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Bean;
@@ -25,7 +26,7 @@
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
-@SpringBootApplication
+@SpringBootApplication(exclude = MongoAutoConfiguration.class)
@MapperScan("com.wgcloud.mapper")
@ServletComponentScan("com.wgcloud.filter")
@ComponentScan(basePackages = "com.wgcloud")
diff --git a/src/main/java/com/wgcloud/controller/FailureLoggingController.java b/src/main/java/com/wgcloud/controller/FailureLoggingController.java
new file mode 100644
index 0000000..1ec1615
--- /dev/null
+++ b/src/main/java/com/wgcloud/controller/FailureLoggingController.java
@@ -0,0 +1,170 @@
+package com.wgcloud.controller;
+
+import com.github.pagehelper.PageInfo;
+import com.wgcloud.entity.AccountInfo;
+import com.wgcloud.entity.Equipment;
+import com.wgcloud.entity.FailureLogging;
+import com.wgcloud.service.FailureLoggingService;
+import com.wgcloud.service.LogInfoService;
+import com.wgcloud.util.HostUtil;
+import com.wgcloud.util.PageUtil;
+import com.wgcloud.util.staticvar.StaticKeys;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.servlet.mvc.support.RedirectAttributes;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName FailureLoggingController.java
+ * @Description TODO
+ * @createTime 2023骞�02鏈�16鏃� 14:22:00
+ */
+@Controller
+@RequestMapping("/failurelogging")
+public class FailureLoggingController {
+
+ private static final Logger logger = LoggerFactory.getLogger(FailureLoggingController.class);
+
+ @Resource
+ private FailureLoggingService failureLoggingService;
+ @Resource
+ private LogInfoService logInfoService;
+
+ /**
+ * 鏍规嵁鏉′欢鏌ヨ璁惧鍒楄〃
+ *
+ * @param model
+ * @param request
+ * @return
+ */
+ @RequestMapping(value = "list")
+ public String failureList(FailureLogging failureLogging, Model model, HttpServletRequest request) {
+ Map<String, Object> params = new HashMap<String, Object>();
+ try {
+ StringBuffer url = new StringBuffer();
+// if (!StringUtils.isEmpty(failureLogging.getOldDeviceName())) {
+// url.append("&oldDeviceName=").append(failureLogging.getOldDeviceName());
+// }
+ PageInfo pageInfo = failureLoggingService.selectByParams(params, failureLogging.getPage(), failureLogging.getPageSize());
+ PageUtil.initPageNumber(pageInfo, model);
+
+
+ model.addAttribute("pageUrl", "/failurelogging/list?1=1" + url.toString());
+ model.addAttribute("page", pageInfo);
+ model.addAttribute("failureLogging", failureLogging);
+ }catch (Exception e){
+ logger.error("鏌ヨ璁惧鏇存崲鍒楄〃閿欒", e);
+ logInfoService.save("鏌ヨ璧勪骇淇℃伅閿欒", e.toString(), StaticKeys.LOG_XTCZ);
+ }
+ return "failurelogging/list";
+ }
+
+ @RequestMapping(value = "save")
+ public String saveFailureLogging(FailureLogging failureLogging, Model model, HttpServletRequest request) {
+ try {
+ if (StringUtils.isEmpty(failureLogging.getId())) {
+ failureLoggingService.save(failureLogging);
+ failureLoggingService.saveLog(request, StaticKeys.LOG_ADD, failureLogging);
+ } else {
+ failureLoggingService.updateById(failureLogging);
+ failureLoggingService.saveLog(request, StaticKeys.LOG_UPDATE, failureLogging);
+ }
+ } catch (Exception e) {
+ logger.error("淇濆瓨璁惧鏇存崲鏁版嵁閿欒", e);
+ logInfoService.save("淇濆瓨璁惧鏇存崲鏁版嵁閿欒", e.toString(), StaticKeys.LOG_XTCZ);
+ }
+ return "redirect:/failurelogging/list";
+ }
+
+ /**
+ * 娣诲姞
+ *
+ * @param model
+ * @param request
+ * @return
+ */
+ @RequestMapping(value = "edit")
+ public String edit(Model model, HttpServletRequest request) {
+ String errorMsg = "娣诲姞璁惧";
+ String id = request.getParameter("id");
+ FailureLogging failureLogging = new FailureLogging();
+ try {
+ if (StringUtils.isEmpty(id)) {
+ model.addAttribute("failureLogging", failureLogging);
+
+ return "failureLogging/add";
+ }
+ failureLogging = failureLoggingService.selectById(id);
+ model.addAttribute("failureLogging", failureLogging);
+ } catch (Exception e) {
+ logger.error(errorMsg, e);
+ logInfoService.save(errorMsg, e.toString(), StaticKeys.LOG_XTCZ);
+ }
+ return "failurelogging/add";
+ }
+
+ /**
+ * 鏌ョ湅璇ュ簲鐢ㄧ粺璁″浘
+ *
+ * @param model
+ * @param request
+ * @return
+ */
+ @RequestMapping(value = "view")
+ public String viewChart(Model model, HttpServletRequest request) {
+ String errorMsg = "鏌ョ湅璁惧鏇存崲閿欒";
+ String id = request.getParameter("id");
+ FailureLogging failureLogging = new FailureLogging();
+ try {
+ failureLogging = failureLoggingService.selectById(id);
+ model.addAttribute("failureLogging", failureLogging);
+ } catch (Exception e) {
+ logger.error(errorMsg, e);
+ logInfoService.save(errorMsg, e.toString(), StaticKeys.LOG_XTCZ);
+ }
+ return "failurelogging/view";
+ }
+
+
+ /**
+ * 鍒犻櫎璁惧
+ *
+ * @param
+ * @param model
+ * @param request
+ * @param redirectAttributes
+ * @return
+ */
+ @RequestMapping(value = "del")
+ public String delete(Model model, HttpServletRequest request, RedirectAttributes redirectAttributes) {
+ String errorMsg = "鍒犻櫎鏇存崲璁惧閿欒";
+ FailureLogging failureLogging = new FailureLogging();
+ try {
+ if (!StringUtils.isEmpty(request.getParameter("id"))) {
+ String[] ids = request.getParameter("id").split(",");
+ for (String id : ids) {
+ failureLogging = failureLoggingService.selectById(id);
+ failureLoggingService.saveLog(request, StaticKeys.LOG_DEL, failureLogging);
+ }
+ failureLoggingService.deleteById(ids);
+ }
+ } catch (Exception e) {
+ logger.error(errorMsg, e);
+ logInfoService.save(errorMsg, e.toString(), StaticKeys.LOG_XTCZ);
+ }
+ return "redirect:/failurelogging/list";
+ }
+
+
+}
diff --git a/src/main/java/com/wgcloud/entity/FailureLogging.java b/src/main/java/com/wgcloud/entity/FailureLogging.java
index 62977d4..b691c0a 100644
--- a/src/main/java/com/wgcloud/entity/FailureLogging.java
+++ b/src/main/java/com/wgcloud/entity/FailureLogging.java
@@ -57,6 +57,6 @@
/**
* 鏇存崲鏃堕棿
*/
- private Date personDate;
+ private String personDate;
}
diff --git a/src/main/java/com/wgcloud/entity/InspectionTask.java b/src/main/java/com/wgcloud/entity/InspectionTask.java
index 29b0803..285ea84 100644
--- a/src/main/java/com/wgcloud/entity/InspectionTask.java
+++ b/src/main/java/com/wgcloud/entity/InspectionTask.java
@@ -52,5 +52,5 @@
/**
* 鍒涘缓鏃堕棿
*/
- private Date createTime;
+ private String createTime;
}
diff --git a/src/main/java/com/wgcloud/entity/WorkLogging.java b/src/main/java/com/wgcloud/entity/WorkLogging.java
index 68fe51a..c2e83d5 100644
--- a/src/main/java/com/wgcloud/entity/WorkLogging.java
+++ b/src/main/java/com/wgcloud/entity/WorkLogging.java
@@ -27,7 +27,7 @@
/**
* 鎿嶄綔鏃堕棿
*/
- private Date workDate;
+ private String workDate;
/**
* 鎿嶄綔鏃ュ織
diff --git a/src/main/java/com/wgcloud/mapper/FailureLoggingMapper.java b/src/main/java/com/wgcloud/mapper/FailureLoggingMapper.java
index 1f299df..8e1d372 100644
--- a/src/main/java/com/wgcloud/mapper/FailureLoggingMapper.java
+++ b/src/main/java/com/wgcloud/mapper/FailureLoggingMapper.java
@@ -24,10 +24,11 @@
public List<FailureLogging> selectByParams(Map<String, Object> params) throws Exception;
- public Equipment selectById(String id) throws Exception;
+ public FailureLogging selectById(String id) throws Exception;
public int deleteById(String[] id) throws Exception;
public int countByParams(Map<String, Object> params) throws Exception;
+ public int updateById(FailureLogging failureLogging) throws Exception;
}
diff --git a/src/main/java/com/wgcloud/service/FailureLoggingService.java b/src/main/java/com/wgcloud/service/FailureLoggingService.java
index ea3c351..4a9b7ca 100644
--- a/src/main/java/com/wgcloud/service/FailureLoggingService.java
+++ b/src/main/java/com/wgcloud/service/FailureLoggingService.java
@@ -1,6 +1,21 @@
package com.wgcloud.service;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.wgcloud.entity.Equipment;
+import com.wgcloud.entity.FailureLogging;
+import com.wgcloud.mapper.EquipmentMapper;
+import com.wgcloud.mapper.FailureLoggingMapper;
+import com.wgcloud.util.DateUtil;
+import com.wgcloud.util.HostUtil;
+import com.wgcloud.util.UUIDUtil;
+import com.wgcloud.util.staticvar.StaticKeys;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+import java.util.Map;
/**
* @author kdq
@@ -11,4 +26,47 @@
*/
@Service
public class FailureLoggingService {
+ @Autowired
+ private FailureLoggingMapper failureLoggingMapper;
+ @Autowired
+ private LogInfoService logInfoService;
+
+ public PageInfo selectByParams(Map<String, Object> params, Integer currPage, Integer pageSize)throws Exception {
+ PageHelper.startPage(currPage, pageSize);
+ List<FailureLogging> list = failureLoggingMapper.selectByParams(params);
+ PageInfo<FailureLogging> pageInfo = new PageInfo<FailureLogging>(list);
+ return pageInfo;
+ }
+
+ public void save(FailureLogging failureLogging) throws Exception {
+ failureLogging.setId(UUIDUtil.getUUID());
+ failureLoggingMapper.save(failureLogging);
+ }
+
+ public void updateById(FailureLogging failureLogging)
+ throws Exception {
+ failureLoggingMapper.updateById(failureLogging);
+ }
+
+ /**
+ * 淇濆瓨鎿嶄綔鏃ュ織
+ *
+ * @param request 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛
+ * @param action 鎿嶄綔鏍囪瘑
+ */
+ public void saveLog(HttpServletRequest request, String action, FailureLogging failureLogging) {
+ if (null == failureLogging) {
+ return;
+ }
+ logInfoService.save(HostUtil.getAccountByRequest(request).getAccount() + action + "璁惧鏇存崲鍚嶇О锛�" + failureLogging.getOldDeviceName(),
+ "璁惧鏇存崲ip锛�" + failureLogging.getOldDeviceIp(), StaticKeys.LOG_XTCZ);
+ }
+
+ public FailureLogging selectById(String id)throws Exception {
+ return failureLoggingMapper.selectById(id);
+ }
+
+ public void deleteById(String[] ids)throws Exception {
+ failureLoggingMapper.deleteById(ids);
+ }
}
diff --git a/src/main/resources/mybatis/mapper/FailureLoggingMapper.xml b/src/main/resources/mybatis/mapper/FailureLoggingMapper.xml
index 516ef98..5fa2550 100644
--- a/src/main/resources/mybatis/mapper/FailureLoggingMapper.xml
+++ b/src/main/resources/mybatis/mapper/FailureLoggingMapper.xml
@@ -150,4 +150,36 @@
</select>
+ <update id="updateById" parameterType="com.wgcloud.entity.FailureLogging">
+ UPDATE FAILURE_LOGGING
+ <set>
+ <if test="oldDeviceName != null">
+ OLD_DEVICE_NAME = #{oldDeviceName},
+ </if>
+ <if test="oldDeviceIp != null">
+ OLD_DEVICE_IP = #{oldDeviceIp},
+ </if>
+ <if test="oldDeviceModel != null">
+ OLD_DEVICE_MODEL = #{oldDeviceModel},
+ </if>
+ <if test="newDeviceName != null">
+ NEW_DEVICE_NAME = #{newDeviceName},
+ </if>
+ <if test="newDeviceIp != null">
+ NEW_DEVICE_IP = #{newDeviceIp},
+ </if>
+ <if test="newDeviceModel != null">
+ NEW_DEVICE_MODEL = #{newDeviceModel},
+ </if>
+ <if test="personName != null">
+ PERSON_NAME = #{personName},
+ </if>
+ <if test="personDate != null">
+ PERSON_DATE = #{personDate}
+ </if>
+ </set>
+ WHERE ID = #{id}
+ </update>
+
+
</mapper>
diff --git a/src/main/resources/static/js/failurelogging.js b/src/main/resources/static/js/failurelogging.js
new file mode 100644
index 0000000..39994ea
--- /dev/null
+++ b/src/main/resources/static/js/failurelogging.js
@@ -0,0 +1,27 @@
+
+function add() {
+ window.location.href = "/tssw/failurelogging/edit";
+}
+
+function searchByAccount() {
+ window.location.href = "/tssw/failurelogging/list";
+}
+
+function view(id) {
+ window.location.href = "/tssw/failurelogging/view?id="+id;
+}
+
+function edit(id){
+ window.location.href = "/tssw/failurelogging/edit?id="+id;
+}
+
+function del(id) {
+ if(confirm('浣犵‘瀹氳鍒犻櫎鍚楋紵')) {
+ window.location.href = "/tssw/failurelogging/del?id=" + id;
+ }
+}
+
+
+function cancel(){
+ history.back();
+}
diff --git a/src/main/resources/templates/common/aside.html b/src/main/resources/templates/common/aside.html
index 36de3de..eb2263b 100644
--- a/src/main/resources/templates/common/aside.html
+++ b/src/main/resources/templates/common/aside.html
@@ -414,6 +414,47 @@
</a>
</li>
+ <th:block th:if="${#strings.startsWith(session.menuActive,'8')}">
+ <li class="nav-item has-treeview menu-open">
+ <a href="javascript:void(0);" class="nav-link active">
+ </th:block>
+ <th:block th:unless="${#strings.startsWith(session.menuActive,'8')}">
+ <li class="nav-item has-treeview">
+ <a href="javascript:void(0);" class="nav-link">
+ </th:block>
+ <i class="nav-icon fas fa-network-wired"></i>
+ <p title="宸℃绠$悊">
+ 宸℃绠$悊
+ <i class="fas fa-angle-left right"></i>
+ </p>
+ </a>
+ <ul class="nav nav-treeview">
+ <li class="nav-item">
+ <th:block th:if="${session.menuActive eq '81'}">
+ <a th:href="@{'/failurelogging/tuopuListHost'}" class="nav-link active">
+ </th:block>
+ <th:block th:unless="${session.menuActive eq '81'}">
+ <a th:href="@{'/failurelogging/tuopuListHost'}" class="nav-link">
+ </th:block>
+ <i class="nav-icon far fa-circle text-info"></i>
+ <p>宸℃璁″垝</p>
+ </a>
+ </li>
+ <li class="nav-item">
+ <th:block th:if="${session.menuActive eq '82'}">
+ <a th:href="@{'/failurelogging/list'}" class="nav-link active">
+ </th:block>
+ <th:block th:unless="${session.menuActive eq '82'}">
+ <a th:href="@{'/failurelogging/list'}" class="nav-link">
+ </th:block>
+ <i class="far fa-circle nav-icon"></i>
+ <p>澶囦欢鏇存崲</p>
+ </a>
+ </li>
+
+ </ul>
+ </li>
+
<!--<li class="nav-item">
<a target="_blank" href="http://www.wgstart.com/elasticsearch-head/index.html"
@@ -431,4 +472,4 @@
<!-- /.sidebar-menu -->
</div>
<!-- /.sidebar -->
-</aside>
\ No newline at end of file
+</aside>
diff --git a/src/main/resources/templates/failurelogging/add.html b/src/main/resources/templates/failurelogging/add.html
new file mode 100644
index 0000000..9c9976f
--- /dev/null
+++ b/src/main/resources/templates/failurelogging/add.html
@@ -0,0 +1,158 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <div th:replace="common/header.html"></div>
+
+</head>
+<body th:class="${application.sidebarCollapse}">
+<div th:replace="common/chart.html"></div>
+
+<div class="wrapper">
+
+ <div th:replace="common/navbar.html"></div>
+
+ <div th:replace="common/aside.html"></div>
+
+ <!-- Content Wrapper. Contains page content -->
+ <div class="content-wrapper" style="font-size:0.90rem">
+ <!-- Content Header (Page header) -->
+ <section class="content-header">
+ <div class="container-fluid">
+ <div class="row mb-2">
+ <div class="col-sm-6">
+ <h1></h1>
+ </div>
+ <div class="col-sm-6">
+ <ol class="breadcrumb float-sm-right">
+ <li class="breadcrumb-item active"></li>
+ </ol>
+ </div>
+ </div>
+ </div><!-- /.container-fluid -->
+ </section>
+
+ <!-- Main content -->
+ <section class="content">
+ <div class="container-fluid">
+ <div class="row">
+
+ <div class="col-md-10">
+ <div class="card card-primary">
+ <div class="card-header">
+ <h3 class="card-title">娣诲姞鏇存崲璁″垝</h3>
+ <div class=" float-sm-right">
+ <a href="javascript:history.back()">杩斿洖</a>
+ </div>
+ </div>
+ <!-- /.card-header -->
+ <!-- form start -->
+ <form role="form" id="form1" th:action="@{'/failurelogging/save'}">
+ <input type="hidden" name="id" th:value="${failureLogging.id}"/>
+ <div class="card-body">
+ <div class="row">
+ <div class="col-md-6">
+ <div class="form-group">
+ <label><font color="red">*</font>鏃ц澶囧悕绉�</label>
+ <input type="text" autocomplete="off" th:value="${failureLogging.oldDeviceName}" class="validate[required,maxSize[50]] form-control" name="oldDeviceName" id="oldDeviceName" placeholder="">
+ </div>
+ <div class="form-group">
+ <label>鏃ц澶噄p</label>
+ <input type="text" autocomplete="off" th:value="${failureLogging.oldDeviceIp}" class="validate[required,maxSize[50]] form-control" name="oldDeviceIp" id="oldDeviceIp" placeholder="">
+ </div>
+ <div class="form-group">
+ <label>鏃ц澶囧瀷鍙�</label>
+ <input type="text" autocomplete="off" th:value="${failureLogging.oldDeviceModel}" class="validate[required,maxSize[50]] form-control" name="oldDeviceModel" id="oldDeviceModel" placeholder="">
+ </div>
+ <div class="form-group">
+ <label>鏇存崲浜�</label>
+ <input type="text" autocomplete="off" th:value="${failureLogging.personName}" class="validate[required,maxSize[50]] form-control" name="personName" id="personName" placeholder="">
+ </div>
+
+ </div>
+ <div class="col-md-6">
+ <div class="form-group">
+ <label>鏂拌澶囧悕绉�</label>
+ <input type="text" autocomplete="off" th:value="${failureLogging.newDeviceName}" class="validate[required,maxSize[50]] form-control" name="newDeviceName" id="newDeviceName" placeholder="">
+ </div>
+
+ <div class="form-group">
+ <label>鏂拌澶噄p</label>
+ <input type="text" autocomplete="off" th:value="${failureLogging.newDeviceIp}" class="validate[required,maxSize[50]] form-control" name="newDeviceIp" id="newDeviceIp" placeholder="">
+ </div>
+ <div class="form-group">
+ <label>鏂拌澶囧瀷鍙�</label>
+ <input type="text" autocomplete="off" th:value="${failureLogging.newDeviceModel}" class="validate[required,maxSize[50]] form-control" name="newDeviceModel" id="newDeviceModel" placeholder="">
+ </div>
+ <div class="form-group">
+ <label>鏇存崲鏃堕棿</label>
+ <input type="text" autocomplete="off" th:value="${failureLogging.personDate}" class="validate[required,maxSize[50]] form-control" name="personDate" id="personDate" placeholder="">
+ </div>
+
+ </div>
+
+ </div>
+
+ </div>
+ <!-- /.card-body -->
+
+ <div class="card-footer">
+ <button type="submit" class="btn btn-primary btn-sm" style="margin-right:10px;">淇� 瀛�</button>
+ <button type="button" th:onclick="goback()" class="btn bg-gradient-danger btn-sm">杩� 鍥�</button>
+ </div>
+
+ </form>
+ <!-- /.card-body -->
+ </div>
+ <!-- /.card -->
+
+
+ </div>
+
+ </div>
+ </div>
+ </section>
+ </div>
+
+
+ <div th:replace="common/footer.html"></div>
+
+</div>
+<!-- ./wrapper -->
+<link rel="stylesheet" th:href="@{'/static/js/jQuery/validationEngine.jquery.css'}" type="text/css"/>
+<script th:src="@{'/static/js/jQuery/jquery.validationEngine-zh_CN.js'}" type="text/javascript" charset="utf-8"></script>
+<script th:src="@{'/static/js/jQuery/jquery.validationEngine.js'}" type="text/javascript" charset="utf-8"></script>
+<script th:inline="javascript">
+ $(document).ready(function(){
+ $("#form1").validationEngine();
+ var caigouDateResponse =[[${failureLogging.personDate}]];
+ var caigouDate = $('#personDate');
+ if(caigouDate!=null && caigouDate != undefined){
+ caigouDate.daterangepicker({
+ singleDatePicker: true,
+ showDropdowns: true,
+ // timePicker: true,
+ // timePicker24Hour : true,
+ // autoUpdateInput: false,
+ "opens": "center",
+ "locale": {
+ format: 'YYYY-MM-DD',
+ applyLabel: "搴旂敤",
+ cancelLabel: "鍙栨秷",
+ daysOfWeek: ['鏃�', '涓�', '浜�', '涓�', '鍥�', '浜�', '鍏�'],
+ monthNames: ['涓�鏈�', '浜屾湀', '涓夋湀', '鍥涙湀', '浜旀湀', '鍏湀', '涓冩湀', '鍏湀', '涔濇湀', '鍗佹湀', '鍗佷竴鏈�', '鍗佷簩鏈�'],
+ }
+ });
+ if(caigouDateResponse=='' || caigouDateResponse==null){
+ caigouDate.val("");
+ }
+ }
+
+ });
+
+
+ function goback() {
+ history.back();
+ }
+</script>
+</body>
+</html>
diff --git a/src/main/resources/templates/failurelogging/list.html b/src/main/resources/templates/failurelogging/list.html
new file mode 100644
index 0000000..20412ec
--- /dev/null
+++ b/src/main/resources/templates/failurelogging/list.html
@@ -0,0 +1,131 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <div th:replace="common/header.html"></div>
+
+
+</head>
+<body th:class="${application.sidebarCollapse}">
+<div th:replace="common/chart.html"></div>
+
+<div class="wrapper">
+
+ <div th:replace="common/navbar.html"></div>
+
+ <div th:replace="common/aside.html"></div>
+
+ <!-- Content Wrapper. Contains page content -->
+ <div class="content-wrapper" style="font-size:0.90rem">
+ <!-- Content Header (Page header) -->
+ <section class="content-header" style="height:38px">
+ <div class="container-fluid">
+ <div class="row mb-2" style="margin-top: -7px;">
+ <div class="col-sm-6"></div>
+ <div class="col-sm-6">
+ <ol class="breadcrumb float-sm-right">
+ <li class="breadcrumb-item"><a href="javascript:history.back()">杩斿洖涓婄骇</a></li>
+ </ol>
+ </div>
+ </div>
+ </div><!-- /.container-fluid -->
+ </section>
+
+ <!-- Main content -->
+ <section class="content">
+ <div class="container-fluid">
+ <div class="row">
+
+ <div class="col-md-12">
+ <div class="card">
+ <div class="card-header">
+ <h3 class="card-title"><i class="nav-icon fas fa-server"></i> 璁惧鍒楄〃</h3>
+ <div class=" float-sm-right">
+ <!-- SEARCH FORM -->
+ <form class="form-inline ml-3" th:action="@{'/failurelogging/list'}">
+ <th:block th:if="${session.LOGIN_KEY.role != 'guest'}">
+ <button type="button" onclick="delChecks('/failurelogging/del')" class="btn bg-danger btn-sm" style="margin-right:5px;">鍒犻櫎</button>
+ <button type="button" onclick="add()" class="btn btn-primary btn-sm" style="margin-right:5px;">娣诲姞</button>
+ </th:block>
+<!-- <div th:replace="common/accountSelect.html"></div>-->
+ <div class="input-group input-group-sm">
+<!-- <input class="form-control" name="name" autocomplete="off" th:value="${failurelogging.oldDeviceName}" type="text" placeholder="鏃ц澶囧悕绉�">-->
+ <div class="input-group-append">
+ <button class="btn btn-primary" type="submit">
+ <i class="fas fa-search"></i>
+ </button>
+ </div>
+ </div>
+ </form>
+
+ </div>
+ </div>
+ <!-- /.card-header -->
+ <div class="card-body">
+ <table class="table table-bordered table-hover">
+ <thead>
+ <tr>
+ <th style="width: 20px"> <input type="checkbox" value="" name="checkall" id="checkall"></th>
+ <th style="width: 60px">搴忓彿</th>
+ <th>鏃ц澶囧悕绉�</th>
+ <th>鏃ц澶噄p</th>
+ <th>鏃ц澶囧瀷鍙�</th>
+ <th>鏂拌澶囧悕绉�</th>
+ <th>鏂拌澶噄p</th>
+ <th>鏂拌澶囧瀷鍙�</th>
+ <th>鏇存崲浜�</th>
+ <th>鏇存崲鏃堕棿</th>
+<!-- <th th:if="${application.userInfoManage == 'true' && session.LOGIN_KEY.role == 'admin'}">璐﹀彿</th>-->
+ <th>鎿嶄綔</th>
+ </tr>
+ </thead>
+ <tbody>
+ <th:block th:each="item,iterStat : ${page.list}">
+ <tr>
+ <td><input type="checkbox" th:value="${item.id}" name="todo2" th:id="${item.id}+'_check'"/></td>
+ <td th:text="${iterStat.index+1}">1</td>
+ <td th:text="${item.oldDeviceName}">Update software</td>
+ <td th:text="${item.oldDeviceIp}">Update software</td>
+ <td th:text="${item.oldDeviceModel}">Update software</td>
+ <td th:text="${item.newDeviceName}">Update software</td>
+ <td th:text="${item.newDeviceIp}">Update software</td>
+ <td th:text="${item.newDeviceModel}">Update software</td>
+ <td th:text="${item.personName}">Update software</td>
+ <td th:text="${item.personDate}">Update software</td>
+ <td>
+ <th:block th:if="${session.LOGIN_KEY.role != 'guest'}">
+ <button type="button" th:onclick="edit([[${item.id}]])" class="btn bg-gradient-primary btn-sm">缂栬緫</button>
+ <button type="button" th:onclick="del([[${item.id}]])" class="btn bg-gradient-danger btn-sm">鍒犻櫎</button>
+ </th:block>
+ <button type="button" th:onclick="view([[${item.id}]])" class="btn bg-gradient-primary btn-sm">鏌ョ湅</button></td>
+ </tr>
+ </th:block>
+
+ </tbody>
+ </table>
+ </div>
+ <!-- /.card-body -->
+ <div th:replace="common/page.html"></div>
+ </div>
+ <!-- /.card -->
+
+
+ </div>
+
+ </div>
+ </div>
+ </section>
+ </div>
+
+
+ <div th:replace="common/footer.html"></div>
+
+</div>
+<!-- ./wrapper -->
+
+<script th:src="@{'/static/js/failurelogging.js?v=3.3.9'}"></script>
+
+<script th:inline="javascript">
+</script>
+
+</body>
+</html>
diff --git a/src/main/resources/templates/failurelogging/view.html b/src/main/resources/templates/failurelogging/view.html
new file mode 100644
index 0000000..5ca01ba
--- /dev/null
+++ b/src/main/resources/templates/failurelogging/view.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <div th:replace="common/header.html"></div>
+
+</head>
+<body th:class="${application.sidebarCollapse}">
+<div th:replace="common/chart.html"></div>
+
+<div class="wrapper">
+
+ <div th:replace="common/navbar.html"></div>
+
+ <div th:replace="common/aside.html"></div>
+
+ <!-- Content Wrapper. Contains page content -->
+ <div class="content-wrapper" style="font-size:0.90rem">
+ <!-- Content Header (Page header) -->
+ <section class="content-header">
+ <div class="container-fluid">
+ <div class="row mb-2">
+ <div class="col-sm-6">
+ <h1></h1>
+ </div>
+ <div class="col-sm-6">
+ <ol class="breadcrumb float-sm-right">
+ <li class="breadcrumb-item active"></li>
+ </ol>
+ </div>
+ </div>
+ </div><!-- /.container-fluid -->
+ </section>
+
+ <!-- Main content -->
+ <section class="content">
+ <div class="container-fluid">
+ <div class="row">
+
+ <div class="col-md-10">
+ <div class="card card-primary">
+ <div class="card-header">
+ <h3 class="card-title">鏌ョ湅澶囦欢鏇存崲</h3>
+ <div class=" float-sm-right">
+ <a href="javascript:history.back()">杩斿洖</a>
+ </div>
+ </div>
+ <!-- /.card-header -->
+ <!-- form start -->
+ <form role="form" id="form1" th:action="@{'/failurelogging/save'}">
+ <input type="hidden" name="id" th:value="${failurelogging.id}"/>
+ <div class="card-body">
+ <div class="row">
+ <div class="col-md-6">
+ <div class="form-group">
+ <label><font color="red">*</font>鏃ц澶囧悕绉�</label>
+ <div th:text="${failurelogging.oldDeviceName}" ></div>
+ </div>
+ <div class="form-group">
+ <label>鏃ц澶噄p</label>
+ <div th:text="${failurelogging.oldDeviceIp}" ></div>
+ </div>
+ <div class="form-group">
+ <label>鏃ц澶囧瀷鍙�</label>
+ <div th:text="${failurelogging.oldDeviceModel}" ></div>
+ </div>
+ <div class="form-group">
+ <label>鏂拌澶囧悕绉�</label>
+ <div th:text="${failurelogging.newDeviceName}" ></div>
+ </div>
+
+ </div>
+ <div class="col-md-6">
+ <div class="form-group">
+ <label><font color="red">*</font>鏂拌澶噄p</label>
+ <div th:text="${failurelogging.newDeviceIp}" ></div>
+ </div>
+
+ <div class="form-group">
+ <label>鏂拌澶囧瀷鍙�</label>
+ <div th:text="${failurelogging.newDeviceModel}" ></div>
+ </div>
+ <div class="form-group">
+ <label>鏇存崲浜�</label>
+ <div th:text="${failurelogging.personName}" ></div>
+ </div>
+ <div class="form-group">
+ <label>鏇存崲鏃堕棿</label>
+ <div th:text="${failurelogging.personDate}" ></div>
+ </div>
+
+ </div>
+
+ </div>
+ </div>
+ <!-- /.card-body -->
+ </form>
+ <!-- /.card-body -->
+ </div>
+ <!-- /.card -->
+
+
+ </div>
+
+ </div>
+ </div>
+ </section>
+ </div>
+
+
+ <div th:replace="common/footer.html"></div>
+
+</div>
+<!-- ./wrapper -->
+<link rel="stylesheet" th:href="@{'/static/js/jQuery/validationEngine.jquery.css'}" type="text/css"/>
+<script th:src="@{'/static/js/jQuery/jquery.validationEngine-zh_CN.js'}" type="text/javascript" charset="utf-8"></script>
+<script th:src="@{'/static/js/jQuery/jquery.validationEngine.js'}" type="text/javascript" charset="utf-8"></script>
+<script th:inline="javascript">
+
+ function goback() {
+ history.back();
+ }
+</script>
+</body>
+</html>
--
Gitblit v1.9.1