Compare commits
No commits in common. 'master' and 'wh' have entirely different histories.
@ -1,34 +0,0 @@
|
||||
package com.example.demo.common.util;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ResponseResult {
|
||||
/**
|
||||
* 请求状态
|
||||
*/
|
||||
private boolean success;
|
||||
/**
|
||||
* 返回提示信息
|
||||
*/
|
||||
private String msg;
|
||||
/**
|
||||
* 返回数据
|
||||
*/
|
||||
private Object data;
|
||||
|
||||
public ResponseResult(boolean success, String msg, Object data) {
|
||||
this.success = success;
|
||||
this.msg = msg;
|
||||
this.data = data;
|
||||
}
|
||||
|
||||
public ResponseResult(boolean code, String msg) {
|
||||
this.success = success;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
public ResponseResult(boolean success) {
|
||||
this.success = success;
|
||||
}
|
||||
}
|
||||
@ -1,33 +0,0 @@
|
||||
package com.example.demo.config.config;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
|
||||
import com.example.demo.domain.Task;
|
||||
import org.apache.ibatis.reflection.MetaObject;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
||||
@Component
|
||||
public class BaseEntityMetaObjectHandler implements MetaObjectHandler {
|
||||
|
||||
|
||||
@Override
|
||||
public void insertFill(MetaObject metaObject) {
|
||||
// 创建时间自动填充
|
||||
if (metaObject.hasSetter(Task.CREATE_TIME) && ObjectUtil.isNull(getFieldValByName(Task.CREATE_TIME, metaObject))) {
|
||||
this.strictInsertFill(metaObject, Task.CREATE_TIME, LocalDateTime.class, LocalDateTime.now());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateFill(MetaObject metaObject) {
|
||||
//修改时间自动填充
|
||||
if (metaObject.hasSetter(Task.MODIFIED_TIME) && ObjectUtil.isNull(getFieldValByName(Task.MODIFIED_TIME, metaObject))) {
|
||||
this.strictUpdateFill(metaObject, Task.MODIFIED_TIME, LocalDateTime.class, LocalDateTime.now());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,27 +0,0 @@
|
||||
package com.example.demo.config.config;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.DbType;
|
||||
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
|
||||
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
/**
|
||||
* MybatisPlus 配置类
|
||||
*
|
||||
* @author huang
|
||||
* @since 2022-03-18
|
||||
*/
|
||||
|
||||
@Configuration
|
||||
public class MybatisPlusConfig {
|
||||
/**
|
||||
* 分页插件
|
||||
*/
|
||||
@Bean
|
||||
public MybatisPlusInterceptor mybatisPlusInterceptor() {
|
||||
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
|
||||
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
|
||||
return interceptor;
|
||||
}
|
||||
}
|
||||
@ -1,42 +0,0 @@
|
||||
package com.example.demo.controller;
|
||||
|
||||
import com.example.demo.common.util.FormatResponseUtil;
|
||||
import com.example.demo.common.util.ResponseResult;
|
||||
import com.example.demo.domain.Dragon;
|
||||
import com.example.demo.service.impl.DragonServiceImpl;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/dragon")
|
||||
public class DragonController {
|
||||
@Autowired
|
||||
DragonServiceImpl dragonService;
|
||||
|
||||
@GetMapping("/dragonList")
|
||||
public ResponseResult queryAll() {
|
||||
return FormatResponseUtil.formatResponse(dragonService.queryAll());
|
||||
}
|
||||
|
||||
@PostMapping("/addDragon")
|
||||
public ResponseResult addDragon(@RequestBody Dragon dragon) {
|
||||
//System.out.println("1111111111");
|
||||
return FormatResponseUtil.formatResponse(dragonService.save(dragon));
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")//这里执行的是物理删除
|
||||
public ResponseResult delTDragonById(Integer id) {
|
||||
return FormatResponseUtil.formatResponse(dragonService.delDragonById(id));
|
||||
}
|
||||
|
||||
@GetMapping("/one")
|
||||
public ResponseResult queryById(int id) {
|
||||
return FormatResponseUtil.formatResponse(dragonService.queryDragonById(id));
|
||||
}
|
||||
|
||||
@PostMapping("/dragonInfo")
|
||||
public ResponseResult updateArea(@RequestBody Dragon dragon) {
|
||||
return FormatResponseUtil.formatResponse(dragonService.updateById(dragon));
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,47 +0,0 @@
|
||||
package com.example.demo.controller;
|
||||
import com.example.demo.domain.Task;
|
||||
import com.example.demo.service.impl.TaskServiceImpl;
|
||||
import com.example.demo.common.util.FormatResponseUtil;
|
||||
import com.example.demo.common.util.ResponseResult;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@RestController
|
||||
@Tag(name = "WXL")
|
||||
@RequestMapping("/task")
|
||||
|
||||
public class taskController {
|
||||
|
||||
@Autowired
|
||||
public TaskServiceImpl taskService;
|
||||
|
||||
@Operation(summary = "获取任务信息")
|
||||
@GetMapping("/taskList")
|
||||
public ResponseResult queryAll() {
|
||||
return FormatResponseUtil.formatResponse(taskService.queryAll());
|
||||
}
|
||||
|
||||
@PostMapping("/addTask")
|
||||
public ResponseResult addTask(@RequestBody Task task) {
|
||||
return FormatResponseUtil.formatResponse(taskService.save(task));
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")//这里执行的是物理删除
|
||||
public ResponseResult delTaskById(Integer id){
|
||||
return FormatResponseUtil.formatResponse(taskService.delTaskById(id));
|
||||
}
|
||||
|
||||
@GetMapping("/one")
|
||||
public ResponseResult queryById(int id){
|
||||
return FormatResponseUtil.formatResponse(taskService.queryTaskById(id));
|
||||
}
|
||||
|
||||
@PostMapping("/taskInfo")
|
||||
public ResponseResult updateArea(@RequestBody Task task){
|
||||
return FormatResponseUtil.formatResponse(taskService.updateById(task));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1,107 +0,0 @@
|
||||
package com.example.demo.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
public class Dragon {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public static final String CREATE_TIME = "createTime";
|
||||
public static final String MODIFIED_TIME = "lastEditTime";
|
||||
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private Integer id;
|
||||
|
||||
private String name;
|
||||
/*
|
||||
* 任务内容
|
||||
* */
|
||||
private String property;
|
||||
|
||||
/**
|
||||
* 创建时间戳
|
||||
*/
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime createTime;
|
||||
private String deadtime;
|
||||
private Integer status;
|
||||
|
||||
public Integer getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(Integer status) {
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public String getDeadtime() {
|
||||
return deadtime;
|
||||
}
|
||||
|
||||
public void setDeadtime(String deadtime) {
|
||||
this.deadtime = deadtime;
|
||||
}
|
||||
|
||||
/**
|
||||
* 最后修改时间戳
|
||||
*/
|
||||
@TableField(fill = FieldFill.UPDATE)
|
||||
private LocalDateTime lastTime;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getProperty() {
|
||||
return property;
|
||||
}
|
||||
|
||||
public void setProperty(String property) {
|
||||
this.property = property;
|
||||
}
|
||||
|
||||
public LocalDateTime getCreateTime() {
|
||||
return createTime;
|
||||
}
|
||||
|
||||
public void setCreateTime(LocalDateTime createTime) {
|
||||
this.createTime = createTime;
|
||||
}
|
||||
|
||||
public LocalDateTime getLastEditTime() {
|
||||
return lastTime;
|
||||
}
|
||||
|
||||
public void setLastEditTime(LocalDateTime lastEditTime) {
|
||||
this.lastTime = lastEditTime;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Dragon{" +
|
||||
"id=" + id +
|
||||
", name=" + name +
|
||||
", priority=" + property +
|
||||
", createTime=" + createTime +
|
||||
", lastEditTime=" + lastTime +
|
||||
"}";
|
||||
}
|
||||
}
|
||||
@ -1,12 +0,0 @@
|
||||
package com.example.demo.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.example.demo.domain.Dragon;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* 和数据库的连接层
|
||||
*/
|
||||
@Mapper
|
||||
public interface DragonMapper extends BaseMapper<Dragon> {
|
||||
}
|
||||
@ -1,18 +0,0 @@
|
||||
package com.example.demo.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.example.demo.domain.Task;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author huang
|
||||
* @since 2022-03-27
|
||||
*/
|
||||
@Mapper
|
||||
public interface TaskMapper extends BaseMapper<Task> {
|
||||
|
||||
}
|
||||
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.example.demo.mapper.DragonMapper">
|
||||
</mapper>
|
||||
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.example.demo.mapper.TaskMapper">
|
||||
|
||||
</mapper>
|
||||
@ -1,25 +0,0 @@
|
||||
package com.example.demo.service;
|
||||
|
||||
import com.example.demo.domain.Dragon;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 面向数据库的接口
|
||||
*/
|
||||
public interface IDragonService {
|
||||
/**
|
||||
* 查询所有Area
|
||||
*/
|
||||
List<Dragon> queryAll();
|
||||
|
||||
/**
|
||||
* 通过Id查询Dragon
|
||||
*/
|
||||
Dragon queryDragonById(int id);
|
||||
|
||||
/**
|
||||
* 通过Id删除Dragon
|
||||
*/
|
||||
boolean delDragonById(int id);
|
||||
}
|
||||
@ -1,29 +0,0 @@
|
||||
package com.example.demo.service;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.example.demo.domain.Task;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务类
|
||||
* </p>
|
||||
*/
|
||||
public interface ITaskService extends IService<Task> {
|
||||
|
||||
/**
|
||||
* 查询所有Area
|
||||
*/
|
||||
List<Task> queryAll();
|
||||
|
||||
/**
|
||||
* 通过Id查询Task
|
||||
*/
|
||||
Task queryTaskById(int id);
|
||||
|
||||
/**
|
||||
* 通过Id删除Task
|
||||
*/
|
||||
boolean delTaskById(int id);
|
||||
|
||||
}
|
||||
@ -1,43 +0,0 @@
|
||||
package com.example.demo.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.example.demo.domain.Dragon;
|
||||
import com.example.demo.mapper.DragonMapper;
|
||||
import com.example.demo.service.IDragonService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class DragonServiceImpl extends ServiceImpl<DragonMapper, Dragon> implements IDragonService {
|
||||
|
||||
|
||||
@Autowired
|
||||
DragonMapper dragonMapper;
|
||||
|
||||
@Override
|
||||
public List<Dragon> queryAll() {
|
||||
LambdaQueryWrapper<Dragon> wrapper = Wrappers.lambdaQuery();
|
||||
wrapper.orderByAsc(Dragon::getId);
|
||||
List<Dragon> dragonList = dragonMapper.selectList(wrapper);
|
||||
return dragonList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Dragon queryDragonById(int id) {
|
||||
Dragon dragon = dragonMapper.selectById(id);
|
||||
return dragon;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean delDragonById(int id) {
|
||||
boolean ans;
|
||||
int i = dragonMapper.deleteById(id);
|
||||
return ans = i > 0 ? true : false;
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,56 +0,0 @@
|
||||
package com.example.demo.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.example.demo.domain.Task;
|
||||
import com.example.demo.mapper.TaskMapper;
|
||||
import com.example.demo.service.ITaskService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务实现类
|
||||
* </p>
|
||||
*
|
||||
*/
|
||||
@Service
|
||||
|
||||
public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements ITaskService {
|
||||
|
||||
@Autowired(required = false)
|
||||
TaskMapper taskMapper;
|
||||
|
||||
@Override
|
||||
public List<Task> queryAll() {
|
||||
LambdaQueryWrapper<Task> wrapper = Wrappers.lambdaQuery();
|
||||
wrapper.orderByAsc(Task::getId);
|
||||
List<Task> taskList = taskMapper.selectList(wrapper);
|
||||
return taskList;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Task queryTaskById(int id) {
|
||||
Task task = taskMapper.selectById(id);
|
||||
return task;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean delTaskById(int id) {
|
||||
boolean ans;
|
||||
int i = taskMapper.deleteById(id);
|
||||
return ans = i>0 ? true:false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,93 +0,0 @@
|
||||
body {
|
||||
font-size: .875rem;
|
||||
}
|
||||
|
||||
.feather {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
vertical-align: text-bottom;
|
||||
}
|
||||
|
||||
/*
|
||||
* Sidebar
|
||||
*/
|
||||
|
||||
.sidebar {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
z-index: 100; /* Behind the navbar */
|
||||
padding: 0;
|
||||
box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
|
||||
}
|
||||
|
||||
.sidebar-sticky {
|
||||
position: -webkit-sticky;
|
||||
position: sticky;
|
||||
top: 48px; /* Height of navbar */
|
||||
height: calc(100vh - 48px);
|
||||
padding-top: .5rem;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
|
||||
}
|
||||
|
||||
.sidebar .nav-link {
|
||||
font-weight: 500;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.sidebar .nav-link .feather {
|
||||
margin-right: 4px;
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.sidebar .nav-link.active {
|
||||
color: #007bff;
|
||||
}
|
||||
|
||||
.sidebar .nav-link:hover .feather,
|
||||
.sidebar .nav-link.active .feather {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.sidebar-heading {
|
||||
font-size: .75rem;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
/*
|
||||
* Navbar
|
||||
*/
|
||||
|
||||
.navbar-brand {
|
||||
padding-top: .75rem;
|
||||
padding-bottom: .75rem;
|
||||
font-size: 1rem;
|
||||
background-color: rgba(0, 0, 0, .25);
|
||||
box-shadow: inset -1px 0 0 rgba(0, 0, 0, .25);
|
||||
}
|
||||
|
||||
.navbar .form-control {
|
||||
padding: .75rem 1rem;
|
||||
border-width: 0;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.form-control-dark {
|
||||
color: #fff;
|
||||
background-color: rgba(255, 255, 255, .1);
|
||||
border-color: rgba(255, 255, 255, .1);
|
||||
}
|
||||
|
||||
.form-control-dark:focus {
|
||||
border-color: transparent;
|
||||
box-shadow: 0 0 0 3px rgba(255, 255, 255, .25);
|
||||
}
|
||||
|
||||
/*
|
||||
* Utilities
|
||||
*/
|
||||
|
||||
.border-top { border-top: 1px solid #e5e5e5; }
|
||||
.border-bottom { border-bottom: 1px solid #e5e5e5; }
|
||||
@ -1,49 +0,0 @@
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body {
|
||||
display: -ms-flexbox;
|
||||
display: -webkit-box;
|
||||
display: flex;
|
||||
-ms-flex-align: center;
|
||||
-ms-flex-pack: center;
|
||||
-webkit-box-align: center;
|
||||
align-items: center;
|
||||
-webkit-box-pack: center;
|
||||
justify-content: center;
|
||||
padding-top: 40px;
|
||||
padding-bottom: 40px;
|
||||
/*background-color: #f5f5f5;*/
|
||||
}
|
||||
|
||||
.form-signin {
|
||||
width: 100%;
|
||||
max-width: 330px;
|
||||
padding: 15px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.form-signin .checkbox {
|
||||
font-weight: 400;
|
||||
}
|
||||
.form-signin .form-control {
|
||||
position: relative;
|
||||
box-sizing: border-box;
|
||||
height: auto;
|
||||
padding: 10px;
|
||||
font-size: 16px;
|
||||
}
|
||||
.form-signin .form-control:focus {
|
||||
z-index: 2;
|
||||
}
|
||||
.form-signin input[type="email"] {
|
||||
margin-bottom: -1px;
|
||||
border-bottom-right-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
.form-signin input[type="password"] {
|
||||
margin-bottom: 10px;
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
}
|
||||
|
Before Width: | Height: | Size: 1.1 KiB |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,14 +0,0 @@
|
||||
/**
|
||||
* 网页登录二维码生成
|
||||
* auther:wangh
|
||||
* 2022.11.6
|
||||
*/
|
||||
createCode()
|
||||
{
|
||||
let codeNumber = '';
|
||||
for (var i = 0; i < 0; i++) {
|
||||
codeNumber += Math.floor(Math.random() * 10);
|
||||
}
|
||||
this.codeNumber = codeNumber;
|
||||
this.qrCode = ''
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@ -1,233 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="asserts/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="asserts/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<nav class="col-md-2 d-none d-md-block bg-light sidebar">
|
||||
<div class="sidebar-sticky">
|
||||
<ul class="nav flex-column">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link active" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-home">
|
||||
<path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path>
|
||||
<polyline points="9 22 9 12 15 12 15 22"></polyline>
|
||||
</svg>
|
||||
Dashboard <span class="sr-only">(current)</span>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file">
|
||||
<path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path>
|
||||
<polyline points="13 2 13 9 20 9"></polyline>
|
||||
</svg>
|
||||
Orders
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-shopping-cart">
|
||||
<circle cx="9" cy="21" r="1"></circle>
|
||||
<circle cx="20" cy="21" r="1"></circle>
|
||||
<path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"></path>
|
||||
</svg>
|
||||
Products
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-users">
|
||||
<path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path>
|
||||
<circle cx="9" cy="7" r="4"></circle>
|
||||
<path d="M23 21v-2a4 4 0 0 0-3-3.87"></path>
|
||||
<path d="M16 3.13a4 4 0 0 1 0 7.75"></path>
|
||||
</svg>
|
||||
Customers
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-bar-chart-2">
|
||||
<line x1="18" y1="20" x2="18" y2="10"></line>
|
||||
<line x1="12" y1="20" x2="12" y2="4"></line>
|
||||
<line x1="6" y1="20" x2="6" y2="14"></line>
|
||||
</svg>
|
||||
Reports
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-layers">
|
||||
<polygon points="12 2 2 7 12 12 22 7 12 2"></polygon>
|
||||
<polyline points="2 17 12 22 22 17"></polyline>
|
||||
<polyline points="2 12 12 17 22 12"></polyline>
|
||||
</svg>
|
||||
Integrations
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h6 class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-4 mb-1 text-muted">
|
||||
<span>Saved reports</span>
|
||||
<a class="d-flex align-items-center text-muted" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-plus-circle"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line></svg>
|
||||
</a>
|
||||
</h6>
|
||||
<ul class="nav flex-column mb-2">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file-text">
|
||||
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path>
|
||||
<polyline points="14 2 14 8 20 8"></polyline>
|
||||
<line x1="16" y1="13" x2="8" y2="13"></line>
|
||||
<line x1="16" y1="17" x2="8" y2="17"></line>
|
||||
<polyline points="10 9 9 9 8 9"></polyline>
|
||||
</svg>
|
||||
Current month
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file-text">
|
||||
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path>
|
||||
<polyline points="14 2 14 8 20 8"></polyline>
|
||||
<line x1="16" y1="13" x2="8" y2="13"></line>
|
||||
<line x1="16" y1="17" x2="8" y2="17"></line>
|
||||
<polyline points="10 9 9 9 8 9"></polyline>
|
||||
</svg>
|
||||
Last quarter
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file-text">
|
||||
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path>
|
||||
<polyline points="14 2 14 8 20 8"></polyline>
|
||||
<line x1="16" y1="13" x2="8" y2="13"></line>
|
||||
<line x1="16" y1="17" x2="8" y2="17"></line>
|
||||
<polyline points="10 9 9 9 8 9"></polyline>
|
||||
</svg>
|
||||
Social engagement
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file-text">
|
||||
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path>
|
||||
<polyline points="14 2 14 8 20 8"></polyline>
|
||||
<line x1="16" y1="13" x2="8" y2="13"></line>
|
||||
<line x1="16" y1="17" x2="8" y2="17"></line>
|
||||
<polyline points="10 9 9 9 8 9"></polyline>
|
||||
</svg>
|
||||
Year-end sale
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<h1>404</h1>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="asserts/js/jquery-3.2.1.slim.min.js" ></script>
|
||||
<script type="text/javascript" src="asserts/js/popper.min.js" ></script>
|
||||
<script type="text/javascript" src="asserts/js/bootstrap.min.js" ></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="asserts/js/feather.min.js" ></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="asserts/js/Chart.min.js" ></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,21 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<table border="0" style="margin-top:4px; margin-left: 18px">
|
||||
<tr>
|
||||
<td><a href="#" class="easyui-linkbutton" onclick="downloadfile();">数据导出</a></td>
|
||||
|
||||
</tr>
|
||||
<script>
|
||||
function downloadfile() {
|
||||
window.location.href = "/exceldownload";
|
||||
}
|
||||
</script>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
@ -1,176 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="">admin</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" th:href="@{/index}">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<nav class="col-md-2 d-none d-md-block bg-light sidebar" th:fragment="sidebar">
|
||||
<div class="sidebar-sticky">
|
||||
<ul class="nav flex-column">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link active" th:href="@{/totaltask}">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-home">
|
||||
<path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path>
|
||||
<polyline points="9 22 9 12 15 12 15 22"></polyline>
|
||||
</svg>
|
||||
数据统计 <span class="sr-only">(current)</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" th:href="@{/taskedit}">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-shopping-cart">
|
||||
<circle cx="9" cy="21" r="1"></circle>
|
||||
<circle cx="20" cy="21" r="1"></circle>
|
||||
<path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"></path>
|
||||
</svg>
|
||||
任务管理
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" th:href="@{/users}">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-users">
|
||||
<path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path>
|
||||
<circle cx="9" cy="7" r="4"></circle>
|
||||
<path d="M23 21v-2a4 4 0 0 0-3-3.87"></path>
|
||||
<path d="M16 3.13a4 4 0 0 1 0 7.75"></path>
|
||||
</svg>
|
||||
成员管理
|
||||
</a>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<div class="chartjs-size-monitor" style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: hidden; pointer-events: none; visibility: hidden; z-index: -1;">
|
||||
<div class="chartjs-size-monitor-expand" style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
|
||||
<div style="position:absolute;width:1000000px;height:1000000px;left:0;top:0"></div>
|
||||
</div>
|
||||
<div class="chartjs-size-monitor-shrink" style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
|
||||
<div style="position:absolute;width:200%;height:200%;left:0; top:0"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pb-2 mb-3 border-bottom">
|
||||
<h1 class="h2">Dashboard</h1>
|
||||
<div class="btn-toolbar mb-2 mb-md-0">
|
||||
<div class="btn-group mr-2">
|
||||
<button class="btn btn-sm btn-outline-secondary">Share</button>
|
||||
<button class="btn btn-sm btn-outline-secondary">Export</button>
|
||||
</div>
|
||||
<button class="btn btn-sm btn-outline-secondary dropdown-toggle">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line></svg>
|
||||
This week
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<canvas class="my-4 chartjs-render-monitor" id="myChart" width="1076" height="454" style="display: block; width: 1076px; height: 454px;"></canvas>
|
||||
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="asserts/js/jquery-3.2.1.slim.min.js" ></script>
|
||||
<script type="text/javascript" src="asserts/js/popper.min.js" ></script>
|
||||
<script type="text/javascript" src="asserts/js/bootstrap.min.js" ></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="asserts/js/feather.min.js" ></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="asserts/js/Chart.min.js" ></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,40 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en" xmlns:th="http://www.thymeleaf.org">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
<title>Signin Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
|
||||
<link rel="stylesheet" th:href="@{/css/bootstrap.min.css}">
|
||||
<!-- Custom styles for this template -->
|
||||
|
||||
<link rel="stylesheet" th:href="@{/css/signin.css}">
|
||||
|
||||
</head>
|
||||
|
||||
<body class="text-center">
|
||||
<form class="form-signin" action="/login">
|
||||
<img class="mb-4" th:src="@{/img/bootstrap-solid.svg}" alt="" width="72" height="72">
|
||||
|
||||
<h1 class="h3 mb-3 font-weight-normal">Please sign in</h1>
|
||||
<p style="color: red" th:text="${msg}" ></p>
|
||||
<label class="sr-only">Username</label>
|
||||
<input type="text" name="code" class="form-control" placeholder="微信授权登录(未实现)" required="" autofocus="">
|
||||
|
||||
<div class="checkbox mb-3">
|
||||
<label>
|
||||
<input type="checkbox" value="remember-me"> Remember me
|
||||
</label>
|
||||
</div>
|
||||
<button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
|
||||
<p class="mt-5 mb-3 text-muted">© 2017-2018</p>
|
||||
<a class="btn btn-sm">中文</a>
|
||||
<a class="btn btn-sm">English</a>
|
||||
</form>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,146 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" >Admin</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" th:href="@{/index}"Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<h2>用户管理</h2>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>student_number</th>
|
||||
<th>name</th>
|
||||
<!-- <th>gender</th>-->
|
||||
<!-- <th>city</th>-->
|
||||
<th>power</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="user : ${users}" >
|
||||
<td th:text="${user.StudentNumber}"></td>
|
||||
<!-- <td>11</td>-->
|
||||
<td th:text="${user.name}"></td>
|
||||
<!-- <td th:text="${user.gender}"></td>-->
|
||||
<!-- <td th:text="${user.city}"></td>-->
|
||||
<td th:text="${user.power==0?'user':'admin'}"></td>
|
||||
<td>
|
||||
<a class="btn btn-sm btn-primary"th:href="@{/user/}+${user.StudentNumber}">编辑</a>
|
||||
<a class="btn btn-sm btn-danger"th:href="@{/deluser/}+${user.StudentNumber}">删除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<!-- <tr>-->
|
||||
<!-- <td th:text="${user.skey}"></td>-->
|
||||
<!-- </tr>-->
|
||||
<!-- <tr th:each="user:${users}">-->
|
||||
<!-- <td th:text="@{}"></td>-->
|
||||
<!-- </tr>-->
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,144 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<!-- <a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>-->
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" th:href="@{/index}">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<table class="table table-striped table-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>学号</th>
|
||||
<th>提交时间</th>
|
||||
<th>文件地址</th>
|
||||
|
||||
</tr>
|
||||
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<tr th:each="item : ${groupdetail}" >
|
||||
|
||||
|
||||
<form th:action="@{/totalgroupnote}" method="get">
|
||||
<td th:text="${item.Taskid}"></td>
|
||||
<td th:text="${item.studentnumber}"></td>
|
||||
<td th:text="${item.finishtime}"></td>
|
||||
<td th:text="${item.filepath}"></td>
|
||||
<td><a class="btn btn-sm btn-success"th:href="@{/exceldownload/}+${item.Taskid}">导出</a></td>
|
||||
|
||||
|
||||
|
||||
<button type="submit" class="btn btn-primary">返回</button>
|
||||
</form>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,139 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<!-- <a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>-->
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" th:href="@{/index}">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<h2>接龙管理</h2>
|
||||
<a class="btn btn-sm btn-success"th:href="@{/taskedit}">切换</a>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>id</th>
|
||||
<th>名称</th>
|
||||
<th>内容</th>
|
||||
<th>完成状态</th>
|
||||
<th>截止时间</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="item : ${tasks}" >
|
||||
<td th:text="${item.id}"></td>
|
||||
<td th:text="${item.name}"></td>
|
||||
<td th:text="${item.property}"></td>
|
||||
<td th:text="${item.status==0?'未完成':'已完成'}"></td>
|
||||
<td th:text="${item.deadtime}"></td>
|
||||
<td><a class="btn btn-sm btn-primary"th:href="@{/itemedit2/}+${item.id}">编辑</a>
|
||||
<a class="btn btn-sm btn-danger"th:href="@{/itemdel2/}+${item.id}">删除</a></td>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,138 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<!-- <a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>-->
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" th:href="@{/index}">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<h2>数据统计(接龙)</h2>
|
||||
<a class="btn btn-sm btn-success"th:href="@{/totaltask}">切换</a>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>id</th>
|
||||
<th>名称</th>
|
||||
<th>内容</th>
|
||||
<th>完成状态</th>
|
||||
<th>截止时间</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="item : ${tasks}" >
|
||||
<td th:text="${item.id}"></td>
|
||||
<td th:text="${item.name}"></td>
|
||||
<td th:text="${item.property}"></td>
|
||||
<td th:text="${item.status==0?'未完成':'已完成'}"></td>
|
||||
<td th:text="${item.deadtime}"></td>
|
||||
<td><a class="btn btn-sm btn-success"th:href="@{/exceldownload/}+${item.id}">导出</a></td>
|
||||
<td><a class="btn btn-sm btn-primary"th:href="@{/item2/}+${item.id}">详情</a></td>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,211 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<table class="table table-striped table-sm">
|
||||
|
||||
<tbody>
|
||||
<tr th:each="item : ${tasks}" >
|
||||
|
||||
|
||||
<form th:action="@{/groupnoteupdate}" method="get">
|
||||
|
||||
<div class="form-group">
|
||||
|
||||
<label th:text="@{/ID:/}+${item.id}"></label>
|
||||
<div></div>
|
||||
<!-- <div th:text="${item.id}"></div>-->
|
||||
<input type="hidden" name="id" th:value="${item.id}">
|
||||
<label>任务名称</label>
|
||||
<input type="text" name="name" class="form-control" th:placeholder="${item.name}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>内容</label>
|
||||
<input type="text" name="property" class="form-control" th:placeholder="${item.property}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>截止时间</label>
|
||||
<input type="text" name="deadtime" class="form-control" th:placeholder="${item.deadtime}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>完成状态</label><br>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="status" value="1">
|
||||
<label class="form-check-label">已完成</label>
|
||||
</div>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="status" value="0">
|
||||
<label class="form-check-label">未完成</label>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>管理员</label>-->
|
||||
<!-- <select class="form-control">-->
|
||||
<!-- <option>是</option>-->
|
||||
<!-- <option>否</option>-->
|
||||
<!-- <!– <option>3</option>–>-->
|
||||
<!-- <!– <option>4</option>–>-->
|
||||
<!-- <!– <option>5</option>–>-->
|
||||
<!-- </select>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>Birth</label>-->
|
||||
<!-- <input type="text" class="form-control" placeholder="嘤嘤嘤">-->
|
||||
<!-- </div>-->
|
||||
<button type="submit" class="btn btn-primary">添加</button>
|
||||
</form>
|
||||
</tr>
|
||||
<!-- <tr>-->
|
||||
<!-- <td th:text="${user.skey}"></td>-->
|
||||
<!-- </tr>-->
|
||||
<!-- <tr th:each="user:${users}">-->
|
||||
<!-- <td th:text="@{}"></td>-->
|
||||
<!-- </tr>-->
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- <form th:action="@{/user}">-->
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>学号</label>-->
|
||||
<!-- <input th:text="${user.name}" type="text" class="form-control" placeholder="海绵宝宝">-->
|
||||
<!-- <div th:text="${users}"></div>-->
|
||||
|
||||
<!-- </div>-->
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>姓名</label>-->
|
||||
<!-- <input type="email" class="form-control" placeholder="">-->
|
||||
<!-- </div>-->
|
||||
<!--<!– <div class="form-group">–>-->
|
||||
<!--<!– <label>Gender</label><br>–>-->
|
||||
<!--<!– <div class="form-check form-check-inline">–>-->
|
||||
<!--<!– <input class="form-check-input" type="radio" name="gender" value="1">–>-->
|
||||
<!--<!– <label class="form-check-label">男</label>–>-->
|
||||
<!--<!– </div>–>-->
|
||||
<!--<!– <div class="form-check form-check-inline">–>-->
|
||||
<!--<!– <input class="form-check-input" type="radio" name="gender" value="0">–>-->
|
||||
<!--<!– <label class="form-check-label">女</label>–>-->
|
||||
<!--<!– </div>–>-->
|
||||
<!--<!– </div>–>-->
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>管理员</label>-->
|
||||
<!-- <select class="form-control">-->
|
||||
<!-- <option>是</option>-->
|
||||
<!-- <option>否</option>-->
|
||||
<!--<!– <option>3</option>–>-->
|
||||
<!--<!– <option>4</option>–>-->
|
||||
<!--<!– <option>5</option>–>-->
|
||||
<!-- </select>-->
|
||||
<!-- </div>-->
|
||||
<!--<!– <div class="form-group">–>-->
|
||||
<!--<!– <label>Birth</label>–>-->
|
||||
<!--<!– <input type="text" class="form-control" placeholder="嘤嘤嘤">–>-->
|
||||
<!--<!– </div>–>-->
|
||||
<!-- <button type="submit" class="btn btn-primary">添加</button>-->
|
||||
<!-- </form>-->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,143 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<table class="table table-striped table-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>学号</th>
|
||||
<th>提交时间</th>
|
||||
<th>文件地址</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<tr th:each="item : ${taskdetail}" >
|
||||
|
||||
|
||||
<form th:action="@{/totaltask}" method="get">
|
||||
<td th:text="${item.Taskid}"></td>
|
||||
<td th:text="${item.studentnumber}"></td>
|
||||
<td th:text="${item.finishtime}"></td>
|
||||
<td th:text="${item.filepath}"></td>
|
||||
|
||||
|
||||
|
||||
|
||||
<button type="submit" class="btn btn-primary">返回</button>
|
||||
</form>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,139 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<h2>任务管理</h2>
|
||||
<a class="btn btn-sm btn-success"th:href="@{/togroupnoteedit}">切换</a>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>id</th>
|
||||
<th>名称</th>
|
||||
<th>内容</th>
|
||||
<th>完成状态</th>
|
||||
<th>截止时间</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="item : ${tasks}" >
|
||||
<td th:text="${item.id}"></td>
|
||||
<td th:text="${item.name}"></td>
|
||||
<td th:text="${item.property}"></td>
|
||||
<td th:text="${item.status==0?'未完成':'已完成'}"></td>
|
||||
<td th:text="${item.deadtime}"></td>
|
||||
<td><a class="btn btn-sm btn-primary"th:href="@{/itemedit1/}+${item.id}">编辑</a>
|
||||
<a class="btn btn-sm btn-danger"th:href="@{/itemdel1/}+${item.id}">删除</a></td>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,140 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<h2>数据统计(任务)</h2>
|
||||
<a class="btn btn-sm btn-success"th:href="@{/totalgroupnote}">切换</a>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>id</th>
|
||||
<th>名称</th>
|
||||
<th>内容</th>
|
||||
<th>完成状态</th>
|
||||
<th>截止时间</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="item : ${tasks}" >
|
||||
<td th:text="${item.id}"></td>
|
||||
<td th:text="${item.name}"></td>
|
||||
<td th:text="${item.property}"></td>
|
||||
<td th:text="${item.status==0?'未完成':'已完成'}"></td>
|
||||
<td th:text="${item.deadtime}"></td>
|
||||
<td><a class="btn btn-sm btn-success"th:href="@{/filedownload/}+${item.id}">导出</a></td>
|
||||
<td><a class="btn btn-sm btn-primary"th:href="@{/item1/}+${item.id}">编辑</a></td>
|
||||
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,156 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<table class="table table-striped table-sm">
|
||||
|
||||
<tbody>
|
||||
<tr th:each="item : ${tasks}" >
|
||||
|
||||
|
||||
<form th:action="@{/taskupdate}" method="get">
|
||||
|
||||
<div class="form-group">
|
||||
|
||||
<label th:text="@{/ID:/}+${item.id}"></label>
|
||||
<div></div>
|
||||
<!-- <div th:text="${item.id}"></div>-->
|
||||
<input type="hidden" name="id" th:value="${item.id}">
|
||||
<label>任务名称</label>
|
||||
<input type="text" name="name" class="form-control" th:placeholder="${item.name}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>内容</label>
|
||||
<input type="text" name="property" class="form-control" th:placeholder="${item.property}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>截止时间</label>
|
||||
<input type="text" name="deadtime" class="form-control" th:placeholder="${item.deadtime}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>完成状态</label><br>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="status" value="1">
|
||||
<label class="form-check-label">已完成</label>
|
||||
</div>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="status" value="0">
|
||||
<label class="form-check-label">未完成</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-primary">添加</button>
|
||||
</form>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1,203 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0052)http://getbootstrap.com/docs/4.0/examples/dashboard/ -->
|
||||
<html lang=xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<title>Dashboard Template for Bootstrap</title>
|
||||
<!-- Bootstrap core CSS -->
|
||||
<link href="/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom styles for this template -->
|
||||
<link href="/css/dashboard.css" rel="stylesheet">
|
||||
<style type="text/css">
|
||||
/* Chart.js */
|
||||
|
||||
@-webkit-keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes chartjs-render-animation {
|
||||
from {
|
||||
opacity: 0.99
|
||||
}
|
||||
to {
|
||||
opacity: 1
|
||||
}
|
||||
}
|
||||
|
||||
.chartjs-render-monitor {
|
||||
-webkit-animation: chartjs-render-animation 0.001s;
|
||||
animation: chartjs-render-animation 0.001s;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0">
|
||||
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Company name</a>
|
||||
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
|
||||
<ul class="navbar-nav px-3">
|
||||
<li class="nav-item text-nowrap">
|
||||
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">Sign out</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div th:insert="~{dashboard::sidebar}"></div>
|
||||
|
||||
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4">
|
||||
<table class="table table-striped table-sm">
|
||||
|
||||
<tbody>
|
||||
<tr th:each="user : ${users}" >
|
||||
|
||||
|
||||
<form th:action="@{/update}" method="get">
|
||||
<input type="hidden" name="stuid" th:value="${user.StudentNumber}">
|
||||
<input type="hidden" name="stuname" th:value="${user.name}">
|
||||
<div class="form-group">
|
||||
<label>学号</label>
|
||||
<input type="text" name="Studentnumber" class="form-control" th:placeholder="${user.StudentNumber}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>姓名</label>
|
||||
<input type="text" name="name" class="form-control" th:placeholder="${user.name}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>权限</label><br>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="power" value="1">
|
||||
<label class="form-check-label">管理员</label>
|
||||
</div>
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" type="radio" name="power" value="0">
|
||||
<label class="form-check-label">用户</label>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>管理员</label>-->
|
||||
<!-- <select class="form-control">-->
|
||||
<!-- <option>是</option>-->
|
||||
<!-- <option>否</option>-->
|
||||
<!-- <!– <option>3</option>–>-->
|
||||
<!-- <!– <option>4</option>–>-->
|
||||
<!-- <!– <option>5</option>–>-->
|
||||
<!-- </select>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>Birth</label>-->
|
||||
<!-- <input type="text" class="form-control" placeholder="嘤嘤嘤">-->
|
||||
<!-- </div>-->
|
||||
<button type="submit" class="btn btn-primary">添加</button>
|
||||
</form>
|
||||
</tr>
|
||||
<!-- <tr>-->
|
||||
<!-- <td th:text="${user.skey}"></td>-->
|
||||
<!-- </tr>-->
|
||||
<!-- <tr th:each="user:${users}">-->
|
||||
<!-- <td th:text="@{}"></td>-->
|
||||
<!-- </tr>-->
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- <form th:action="@{/user}">-->
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>学号</label>-->
|
||||
<!-- <input th:text="${user.name}" type="text" class="form-control" placeholder="海绵宝宝">-->
|
||||
<!-- <div th:text="${users}"></div>-->
|
||||
|
||||
<!-- </div>-->
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>姓名</label>-->
|
||||
<!-- <input type="email" class="form-control" placeholder="">-->
|
||||
<!-- </div>-->
|
||||
<!--<!– <div class="form-group">–>-->
|
||||
<!--<!– <label>Gender</label><br>–>-->
|
||||
<!--<!– <div class="form-check form-check-inline">–>-->
|
||||
<!--<!– <input class="form-check-input" type="radio" name="gender" value="1">–>-->
|
||||
<!--<!– <label class="form-check-label">男</label>–>-->
|
||||
<!--<!– </div>–>-->
|
||||
<!--<!– <div class="form-check form-check-inline">–>-->
|
||||
<!--<!– <input class="form-check-input" type="radio" name="gender" value="0">–>-->
|
||||
<!--<!– <label class="form-check-label">女</label>–>-->
|
||||
<!--<!– </div>–>-->
|
||||
<!--<!– </div>–>-->
|
||||
<!-- <div class="form-group">-->
|
||||
<!-- <label>管理员</label>-->
|
||||
<!-- <select class="form-control">-->
|
||||
<!-- <option>是</option>-->
|
||||
<!-- <option>否</option>-->
|
||||
<!--<!– <option>3</option>–>-->
|
||||
<!--<!– <option>4</option>–>-->
|
||||
<!--<!– <option>5</option>–>-->
|
||||
<!-- </select>-->
|
||||
<!-- </div>-->
|
||||
<!--<!– <div class="form-group">–>-->
|
||||
<!--<!– <label>Birth</label>–>-->
|
||||
<!--<!– <input type="text" class="form-control" placeholder="嘤嘤嘤">–>-->
|
||||
<!--<!– </div>–>-->
|
||||
<!-- <button type="submit" class="btn btn-primary">添加</button>-->
|
||||
<!-- </form>-->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script type="text/javascript" src="/js/jquery-3.2.1.slim.min.js"></script>
|
||||
<script type="text/javascript" src="/js/popper.min.js"></script>
|
||||
<script type="text/javascript" src="/js/bootstrap.min.js"></script>
|
||||
|
||||
<!-- Icons -->
|
||||
<script type="text/javascript" src="/js/feather.min.js"></script>
|
||||
<script>
|
||||
feather.replace()
|
||||
</script>
|
||||
|
||||
<!-- Graphs -->
|
||||
<script type="text/javascript" src="/js/Chart.min.js"></script>
|
||||
<script>
|
||||
var ctx = document.getElementById("myChart");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
||||
datasets: [{
|
||||
data: [15339, 21345, 18483, 24003, 23489, 24092, 12034],
|
||||
lineTension: 0,
|
||||
backgroundColor: 'transparent',
|
||||
borderColor: '#007bff',
|
||||
borderWidth: 4,
|
||||
pointBackgroundColor: '#007bff'
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero: false
|
||||
}
|
||||
}]
|
||||
},
|
||||
legend: {
|
||||
display: false,
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@ -1 +0,0 @@
|
||||
{"containers":[],"config":{}}
|
||||
@ -1,47 +0,0 @@
|
||||
{
|
||||
"pages": [
|
||||
"pages/index/index",
|
||||
"pages/menu/menu",
|
||||
"pages/my/my",
|
||||
"pages/bd/bd",
|
||||
"pages/uploadfile/uploadfile",
|
||||
"pages/list/list",
|
||||
"pages/operation/operation",
|
||||
"pages/list1/list1",
|
||||
"pages/operation1/operation1",
|
||||
"pages/mmm/mmm",
|
||||
"pages/submit/submit",
|
||||
"pages/dragon/dragon"
|
||||
],
|
||||
"window": {
|
||||
"backgroundTextStyle": "light",
|
||||
"navigationBarBackgroundColor": "#fff",
|
||||
"navigationBarTitleText": "班级通",
|
||||
"navigationBarTextStyle": "black"
|
||||
},
|
||||
"tabBar": {
|
||||
"selectedColor": "#33a3dc",
|
||||
"list": [
|
||||
{
|
||||
"pagePath": "pages/index/index",
|
||||
"text": "首页",
|
||||
"iconPath": "/static/index/index.png",
|
||||
"selectedIconPath": "/static/index/index_active.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/menu/menu",
|
||||
"text": "菜单",
|
||||
"iconPath": "/static/menu/menu.png",
|
||||
"selectedIconPath": "/static/menu/menu_active.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/my/my",
|
||||
"text": "我的",
|
||||
"iconPath": "/static/my/my.png",
|
||||
"selectedIconPath": "/static/my/my_active.png"
|
||||
}
|
||||
]
|
||||
},
|
||||
"style": "v2",
|
||||
"sitemapLocation": "sitemap.json"
|
||||
}
|
||||
@ -1,20 +0,0 @@
|
||||
// app.ts
|
||||
App<IAppOption>({
|
||||
globalData: {
|
||||
|
||||
},
|
||||
onLaunch() {
|
||||
// 展示本地存储能力
|
||||
// const logs = wx.getStorageSync('logs') || []
|
||||
// logs.unshift(Date.now())
|
||||
// wx.setStorageSync('logs', logs)
|
||||
|
||||
// 登录
|
||||
// wx.login({
|
||||
// success: res => {
|
||||
// console.log(res.code)
|
||||
// 发送 res.code 到后台换取 openId, sessionKey, unionId
|
||||
// },
|
||||
// })
|
||||
},
|
||||
})
|
||||
@ -1,6 +0,0 @@
|
||||
/**app.wxss**/
|
||||
page {
|
||||
height: 100%;
|
||||
overflow-y: scroll;
|
||||
background: rgb(243, 243, 243);
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
@ -1,135 +0,0 @@
|
||||
// const app = getApp()
|
||||
Page({
|
||||
data: {
|
||||
realName: '',
|
||||
number: '',
|
||||
isDisabled: true //表示页面加载完成时disabled为禁用状态
|
||||
},
|
||||
|
||||
onLoad: function(options) {
|
||||
let number = options.number
|
||||
let realName = options.realName
|
||||
this.setData({
|
||||
number,
|
||||
realName
|
||||
})
|
||||
},
|
||||
|
||||
save: function() {
|
||||
let realName = this.data.realName;
|
||||
let number=this.data.number
|
||||
let skey = wx.getStorageSync('skey')
|
||||
wx.request({
|
||||
url: 'http://127.0.0.1:81/atbind',
|
||||
method: 'GET',
|
||||
|
||||
data: {
|
||||
skey:skey,
|
||||
studentnumber:number,
|
||||
name:realName
|
||||
},
|
||||
success: function(res :any) {
|
||||
if (res.data.error == true) {
|
||||
wx.showToast({
|
||||
title: res.data.message,
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
})
|
||||
} else {
|
||||
wx.showToast({
|
||||
title: res.data.message,
|
||||
icon: 'success',
|
||||
duration: 5000
|
||||
})
|
||||
wx.removeStorageSync('info')
|
||||
wx.navigateBack({
|
||||
delta: 2
|
||||
})
|
||||
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
inputRealName: function(e :any) {
|
||||
var realName = e.detail.value
|
||||
this.setData({
|
||||
realName
|
||||
})
|
||||
console.log(realName)
|
||||
if (realName !== '') {
|
||||
this.setData({
|
||||
isDisabled: false
|
||||
})
|
||||
} else {
|
||||
this.setData({
|
||||
isDisabled: true
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
inputNumber: function(e :any) {
|
||||
var number = e.detail.value
|
||||
this.setData({
|
||||
number
|
||||
})
|
||||
// console.log()
|
||||
if (number !== '') {
|
||||
this.setData({
|
||||
isDisabled: false
|
||||
})
|
||||
} else {
|
||||
this.setData({
|
||||
isDisabled: true
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
onReady: function() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow: function() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide: function() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload: function() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh: function() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom: function() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage: function() {
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
@ -1,15 +0,0 @@
|
||||
<!--pages/bd/bd.wxml-->
|
||||
<view>
|
||||
<view class="btn-area" id="buttonContainer">
|
||||
<view class='binding-item'>
|
||||
<view>姓名</view>
|
||||
<input type="text" placeholder="请输入您的真实姓名" value="{{realName}}" bindinput="inputRealName"></input>
|
||||
</view>
|
||||
<view class='binding-item'>
|
||||
<view>学号</view>
|
||||
<input type="number" placeholder="请输入您的学号" value="{{number}}" bindinput="inputNumber"></input>
|
||||
</view>
|
||||
|
||||
<button type="submit" bindtap="save" class="save" disabled='{{isDisabled}}'>提交</button>
|
||||
</view>
|
||||
</view>
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"navigationBarTitleText": "接龙信息表单"
|
||||
}
|
||||
@ -1,40 +0,0 @@
|
||||
/* pages/list/list.wxss */
|
||||
.container{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding-top: 10rpx;
|
||||
padding-bottom: 10rpx;
|
||||
}
|
||||
|
||||
.widget{
|
||||
position: relative;
|
||||
margin-top: 5rpx;
|
||||
margin-bottom: 5rpx;
|
||||
padding-top: 20rpx;
|
||||
padding-bottom: 20rpx;
|
||||
padding-left: 5rpx;
|
||||
padding-right: 4rpx;
|
||||
border: rgb(16, 196, 157) 1px solid;
|
||||
}
|
||||
|
||||
.row{
|
||||
width: 3rem;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
.form-box picker{
|
||||
margin: 30rpx 30rpx 0 0;
|
||||
color: rgb(187, 19, 19);
|
||||
}
|
||||
|
||||
.link-row{
|
||||
width: 5rem;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
.link{
|
||||
color: blue;
|
||||
display: inline-table;
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
@ -1,36 +0,0 @@
|
||||
<view class="wrip-view">
|
||||
<!-- 轮播区域 -->
|
||||
<view>
|
||||
<view class="swip">
|
||||
<text class="swip-text">公告栏</text>
|
||||
<swiper indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}">
|
||||
<block wx:for="{{3}}" wx:key="*this">
|
||||
<swiper-item>
|
||||
<view class="swiper-item">
|
||||
<image src="/static/index/spwr01.jpg"></image>
|
||||
</view>
|
||||
</swiper-item>
|
||||
</block>
|
||||
</swiper>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 任务列表 -->
|
||||
<view class="task" wx:if="{{list.length!=0}}">
|
||||
<block wx:for="{{list}}" wx:key="id">
|
||||
<view class="task-item">
|
||||
<view class="task-item -title"><test>任务名称:</test> {{item.name}}</view>
|
||||
<view class="task-item -title"><test>任务内容:</test> {{item.property}} </view>
|
||||
<view class="task-item-text">
|
||||
<text> 截止时间:{{item.deadtime}} </text>
|
||||
</view>
|
||||
<!-- <text bindtap='delTask' data-id='{{item.id}}' data-index='{{index}}' data-name='{{item.name}}'>提交任务
|
||||
</text> -->
|
||||
<button class="mini-btn" type='plain' size="mini"
|
||||
bindtap='submitTask' data-id='{{item.id}}' data-name='{{item.name}}'data-property='{{item.property}}'>提交任务</button>
|
||||
</view>
|
||||
</block>
|
||||
</view>
|
||||
<view class="error" wx:else>
|
||||
暂无数据
|
||||
</view>
|
||||
</view>
|
||||
@ -1,47 +0,0 @@
|
||||
.wrip-view {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.swip {
|
||||
background: rgb(243, 243, 243);
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.swip-text {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
z-index: 100;
|
||||
text-align: center;
|
||||
font-size: 20px;
|
||||
color: rgb(95, 95, 95);
|
||||
}
|
||||
|
||||
.task {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.task-item {
|
||||
padding: 8px 4px 10px 4px;
|
||||
margin: 10px 0;
|
||||
border-radius: 10px;
|
||||
background-color: rgb(240, 234, 234);
|
||||
}
|
||||
|
||||
.task-item-title {
|
||||
font-family: "楷体";
|
||||
font-size: 18px;
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
|
||||
.task-item-text {
|
||||
font-family: "楷体";
|
||||
font-size: 20px;
|
||||
color: rgb(241, 10, 10);
|
||||
}
|
||||
.error{
|
||||
text-align: center;
|
||||
padding: 20px;
|
||||
}
|
||||
.mini-btn{
|
||||
margin-right: 10rpx;
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"navigationBarTitleText": "任务信息列表"
|
||||
}
|
||||
@ -1,40 +0,0 @@
|
||||
/* pages/list/list.wxss */
|
||||
.container{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding-top: 10rpx;
|
||||
padding-bottom: 10rpx;
|
||||
}
|
||||
|
||||
.widget{
|
||||
position: relative;
|
||||
margin-top: 5rpx;
|
||||
margin-bottom: 5rpx;
|
||||
padding-top: 20rpx;
|
||||
padding-bottom: 20rpx;
|
||||
padding-left: 5rpx;
|
||||
padding-right: 4rpx;
|
||||
border: rgb(16, 196, 157) 1px solid;
|
||||
}
|
||||
|
||||
.row{
|
||||
width: 3rem;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
.form-box picker{
|
||||
margin: 30rpx 30rpx 0 0;
|
||||
color: rgb(187, 19, 19);
|
||||
}
|
||||
|
||||
.link-row{
|
||||
width: 5rem;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
.link{
|
||||
color: blue;
|
||||
display: inline-table;
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"navigationBarTitleText": "接龙信息列表"
|
||||
}
|
||||
@ -1,40 +0,0 @@
|
||||
/* pages/list/list.wxss */
|
||||
.container{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding-top: 10rpx;
|
||||
padding-bottom: 10rpx;
|
||||
}
|
||||
|
||||
.widget{
|
||||
position: relative;
|
||||
margin-top: 5rpx;
|
||||
margin-bottom: 5rpx;
|
||||
padding-top: 20rpx;
|
||||
padding-bottom: 20rpx;
|
||||
padding-left: 5rpx;
|
||||
padding-right: 4rpx;
|
||||
border: rgb(16, 196, 157) 1px solid;
|
||||
}
|
||||
|
||||
.row{
|
||||
width: 3rem;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
.form-box picker{
|
||||
margin: 30rpx 30rpx 0 0;
|
||||
color: rgb(187, 19, 19);
|
||||
}
|
||||
|
||||
.link-row{
|
||||
width: 5rem;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
.link{
|
||||
color: blue;
|
||||
display: inline-table;
|
||||
}
|
||||
@ -1,2 +0,0 @@
|
||||
{
|
||||
}
|
||||
@ -1,135 +0,0 @@
|
||||
// logs.ts
|
||||
// const util = require('../../utils/util.js')
|
||||
import { formatTime } from '../../utils/util'
|
||||
|
||||
Page({
|
||||
data: {
|
||||
logs: [],
|
||||
taskList: [],
|
||||
taskFlag: false,
|
||||
releaseFlag: false,
|
||||
from: {
|
||||
taskName: "",
|
||||
end: ""
|
||||
}
|
||||
},
|
||||
inputFrom(event: any) {
|
||||
if (event.currentTarget.dataset.gater == "from.end") {
|
||||
let num = event.detail.value;
|
||||
if (num.length == 4) num += "-";
|
||||
if (num.length == 7) num += "-";
|
||||
this.setData({ [`from.end`]: num })
|
||||
} else if(event.currentTarget.dataset.gater == "from.taskName"){
|
||||
this.setData({
|
||||
[`${event.currentTarget.dataset.gater}`]: event.detail.value
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
[`${event.currentTarget.dataset.gater}`]: event.detail.value
|
||||
})
|
||||
}
|
||||
},
|
||||
addSelect() {
|
||||
const { taskName, end } = this.data.from;
|
||||
if (end.length != 10) return;
|
||||
if (!taskName || !end) {
|
||||
wx.showToast({
|
||||
title: "请填写任务名称和任务进度",
|
||||
icon: 'error',
|
||||
});
|
||||
return;
|
||||
}
|
||||
const list = wx.getStorageSync("taskList") || [];
|
||||
const index = list.findIndex((item: any) => item.title == taskName);
|
||||
if (index >= 0) {
|
||||
wx.showToast({
|
||||
title: "任务名称重复",
|
||||
icon: 'error',
|
||||
});
|
||||
return;
|
||||
}
|
||||
const data = {
|
||||
id: list.length + 1,
|
||||
title: taskName,
|
||||
startTime: formatTime(new Date), endTime: end, end: '40',
|
||||
}
|
||||
list.push(data)
|
||||
wx.setStorageSync("taskList", list);
|
||||
wx.showToast({
|
||||
title: "发布成功",
|
||||
icon: 'success',
|
||||
});
|
||||
this.setData({
|
||||
taskList: wx.getStorageSync("taskList") || []
|
||||
});
|
||||
},
|
||||
atReleaseFlag() {
|
||||
const user = wx.getStorageSync("userInfo");
|
||||
console.log(user)
|
||||
if (!user) {
|
||||
wx.showToast({
|
||||
title: "请先登录",
|
||||
icon: 'error',
|
||||
});
|
||||
return;
|
||||
}
|
||||
this.setData({ releaseFlag: !this.data.releaseFlag })
|
||||
|
||||
const power = +wx.getStorageSync('power');
|
||||
console.log(power)
|
||||
if (power === 0) { // 0 为用户
|
||||
wx.showToast({
|
||||
title: "暂无权限",
|
||||
icon: 'error',
|
||||
});
|
||||
} else if (power === 1) { // 1 为管理员
|
||||
wx.navigateTo({ url: '/pages/list/list' })
|
||||
}
|
||||
},
|
||||
onPublishJielong() {
|
||||
const power = +wx.getStorageSync('power');
|
||||
if (power === 0) {
|
||||
wx.showToast({
|
||||
title: "暂无权限",
|
||||
icon: 'error',
|
||||
});
|
||||
}
|
||||
else if (power === 1) { // 1 为管理员
|
||||
wx.navigateTo({ url: '/pages/list1/list1' })
|
||||
}
|
||||
|
||||
},
|
||||
atTaskFlag() {
|
||||
const power = +wx.getStorageSync('power');
|
||||
if (power === 0) {
|
||||
wx.showToast({
|
||||
title: "暂无权限",
|
||||
icon: 'error',
|
||||
});
|
||||
return;
|
||||
}
|
||||
this.setData({ taskFlag: !this.data.taskFlag })
|
||||
},
|
||||
onDragon() {
|
||||
wx.navigateTo({ url: '/pages/dragon/dragon' });
|
||||
},
|
||||
onShow() {
|
||||
this.setData({
|
||||
taskList: wx.getStorageSync("taskList") || []
|
||||
});
|
||||
},
|
||||
|
||||
onLoad() {
|
||||
this.setData({
|
||||
taskList: wx.getStorageSync("taskList") || []
|
||||
});
|
||||
// this.setData({
|
||||
// logs: (wx.getStorageSync('logs') || []).map((log: string) => {
|
||||
// return {
|
||||
// date: formatTime(new Date(log)),
|
||||
// timeStamp: log
|
||||
// }
|
||||
// }),
|
||||
// })
|
||||
},
|
||||
})
|
||||
@ -1,36 +0,0 @@
|
||||
<view class="wrip-view">
|
||||
<view>
|
||||
<view catchtap="atReleaseFlag">
|
||||
<!-- <navigator url="/pages/list/list" hover-class="navigator-hover" class="title">发布任务</navigator> -->
|
||||
<view class="title">发布任务</view>
|
||||
</view>
|
||||
</view>
|
||||
<view catchtap="onPublishJielong">
|
||||
<view class="title">发布接龙</view>
|
||||
</view>
|
||||
<view>
|
||||
<view catchtap="onDragon">
|
||||
<!-- <navigator url="/pages/list/list" hover-class="navigator-hover" class="title">发布任务</navigator> -->
|
||||
<view class="title">完成接龙</view>
|
||||
</view>
|
||||
</view>
|
||||
<view>
|
||||
<view class="title" catchtap="atTaskFlag">查看任务进度</view>
|
||||
<view class="task" wx:if="{{taskFlag}}">
|
||||
<view wx:if="{{taskList.length!=0}}">
|
||||
<block wx:for="{{taskList}}" wx:key="id">
|
||||
<view class="task-item">
|
||||
<view class="task-item-title"> {{item.title}}: </view>
|
||||
<view class="task-item-text">
|
||||
<text>完成进度:{{item.end}} </text>
|
||||
</view>
|
||||
<view class="task-item-backg" style="width: {{item.end+'%'}};"></view>
|
||||
</view>
|
||||
</block>
|
||||
</view>
|
||||
<view wx:else>
|
||||
暂无任务
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@ -1,78 +0,0 @@
|
||||
.wrip-view {
|
||||
height: 100%;
|
||||
padding: 0 12px;
|
||||
}
|
||||
|
||||
.task {
|
||||
padding: 8px;
|
||||
background-color: #fff;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.task-item {
|
||||
padding: 4px 0;
|
||||
margin: 10px 0;
|
||||
border-radius: 10px;
|
||||
position: relative;
|
||||
z-index: 100;
|
||||
background-color: #fff;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.task-item-backg {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
background: #77bef0;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
z-index: -1;
|
||||
border-radius: 10px 0 0 10px;
|
||||
}
|
||||
|
||||
.task-item-title {
|
||||
font-family: "楷体";
|
||||
font-size: 18px;
|
||||
margin-bottom: 6px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.task-item-text {
|
||||
text-align: right;
|
||||
font-family: "楷体";
|
||||
font-size: 14px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
|
||||
.title {
|
||||
background: #fff;
|
||||
display: inline-block;
|
||||
border-radius: 4px;
|
||||
padding: 4px;
|
||||
margin: 10px 0;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.title::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
width: 100vw;
|
||||
height: 4px;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.release-view{
|
||||
padding: 8px;
|
||||
background-color: #fff;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.release-view input{
|
||||
border: 1px #ccc solid;
|
||||
border-radius: 4px;
|
||||
margin: 6px 0;
|
||||
padding: 4px;
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
@ -1,99 +0,0 @@
|
||||
// pages/mmm/mmm.ts
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
mmm:'',
|
||||
releaseFlag: false
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad: function () {
|
||||
|
||||
|
||||
},
|
||||
atbutton(){
|
||||
let skey = wx.getStorageSync('skey')
|
||||
var that = this
|
||||
wx.request({ //请求地址
|
||||
url: 'http://127.0.0.1:81/getrcode',
|
||||
method: 'GET',
|
||||
data:{
|
||||
skey:skey},
|
||||
header: { //请求头
|
||||
'content-type': 'application/json'
|
||||
// "Content-Type": "application/x-www-form-urlencoded"
|
||||
},
|
||||
|
||||
|
||||
success: function (res:any) {
|
||||
wx.showModal({
|
||||
title: '验证码',
|
||||
content: res.data
|
||||
})
|
||||
|
||||
if (res.confirm) {//这里是点击了确定以后
|
||||
console.log('用户点击确定')
|
||||
} else {//这里是点击了取消以后
|
||||
console.log('用户点击取消')
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
|
||||
}
|
||||
})
|
||||
@ -1,6 +0,0 @@
|
||||
<!--pages/mmm/mmm.wxml-->
|
||||
<view class="page-body">
|
||||
<view class="btn-area" id="buttonContainer" catchtap="atbutton">
|
||||
<button type="primary" >获取验证码</button>
|
||||
</view>
|
||||
</view>
|
||||
@ -1,5 +0,0 @@
|
||||
/* pages/mmm/mmm.wxss */
|
||||
button{
|
||||
margin-top: 30rpx;
|
||||
margin-bottom: 30rpx;
|
||||
}
|
||||
@ -1,2 +0,0 @@
|
||||
{
|
||||
}
|
||||
@ -1,25 +0,0 @@
|
||||
<view class="wrip">
|
||||
<view class="my-head">
|
||||
<view class="my-head-box">
|
||||
<view class="head-box-child">
|
||||
<view wx:if="{{!userInfo.avatarUrl}}" catchtap="atLogin">
|
||||
登录
|
||||
</view>
|
||||
<view wx:else>
|
||||
<image src="{{userInfo.avatarUrl}}"></image>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<view>
|
||||
<view class="my-box">
|
||||
<view class="my-top">
|
||||
<navigator url="/pages/bd/bd" hover-class="navigator-hover">已绑定,点击可重新绑定</navigator>
|
||||
</view>
|
||||
<view class="my-top">
|
||||
<navigator url="/pages/mmm/mmm" hover-class="navigator-hover">获取验证码</navigator>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@ -1,58 +0,0 @@
|
||||
.wrip {
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.log-list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 40rpx;
|
||||
}
|
||||
|
||||
.log-item {
|
||||
margin: 10rpx;
|
||||
}
|
||||
|
||||
.my-head {
|
||||
margin: 0 0 10px 0;
|
||||
}
|
||||
|
||||
.my-head-box {
|
||||
height: 160px;
|
||||
background: white;
|
||||
border-radius: 5px;
|
||||
position: relative;
|
||||
background-image: linear-gradient(to right top, #d16ba5, #c777b9, #ba83ca, #aa8fd8, #9a9ae1, #8aa7ec, #79b3f4, #69bff8, #52cffe, #41dfff, #46eefa, #5ffbf1);
|
||||
}
|
||||
|
||||
.my-box {
|
||||
height: 140px;
|
||||
background-image: linear-gradient(to right top, #051937, #004d7a, #008793, #00bf72, #a8eb12);
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.head-box-child {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
border-radius: 50%;
|
||||
text-align: center;
|
||||
border: 1px #ccc solid;
|
||||
color: rgb(255, 255, 255);
|
||||
line-height: 80px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.head-box-child image {
|
||||
width: 100%;
|
||||
height: 80px;
|
||||
}
|
||||
|
||||
.my-top {
|
||||
padding: 4px;
|
||||
color: white;
|
||||
box-shadow: rgba(116, 116, 116, 0.521) 0 0 10px ;
|
||||
background: rgba(204, 204, 204, 0.384);
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"navigationBarTitleText": "任务信息表单"
|
||||
}
|
||||
@ -1,147 +0,0 @@
|
||||
// logs.ts
|
||||
// const util = require('../../utils/util.js')
|
||||
import { formatTime } from '../../utils/util'
|
||||
|
||||
Page({
|
||||
data: {
|
||||
logs: [],
|
||||
taskList: [],
|
||||
taskFlag: false,
|
||||
releaseFlag: false,
|
||||
id:undefined,
|
||||
name:'',
|
||||
property:'',
|
||||
stuid:'',
|
||||
deadtime:'',
|
||||
addUrl:'http://localhost:81/task/addTask',
|
||||
updateUrl:'http://localhost:81/task/taskInfo',
|
||||
from: {
|
||||
taskName: "",
|
||||
end: ""
|
||||
}
|
||||
},
|
||||
|
||||
inputFrom(event:any) {
|
||||
if (event.currentTarget.dataset.gater == "from.end") {
|
||||
let num = event.detail.value;
|
||||
if (num.length == 4) num += "-";
|
||||
if (num.length == 7) num += "-";
|
||||
this.setData({ [`from.end`]: num })
|
||||
} else if(event.currentTarget.dataset.gater == "from.taskName"){
|
||||
this.setData({
|
||||
[`${event.currentTarget.dataset.gater}`]: event.detail.value
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
[`${event.currentTarget.dataset.gater}`]: event.detail.value
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
addSelect() {
|
||||
const { taskName, end } = this.data.from;
|
||||
if (end.length != 10) return;
|
||||
if (!taskName || !end) {
|
||||
wx.showToast({
|
||||
title: "请填写任务名称和任务进度",
|
||||
icon: 'error',
|
||||
});
|
||||
return;
|
||||
}
|
||||
const list = wx.getStorageSync("taskList") || [];
|
||||
const index = list.findIndex((item:any) => item.title == taskName);
|
||||
if (index >= 0) {
|
||||
wx.showToast({
|
||||
title: "任务名称重复",
|
||||
icon: 'error',
|
||||
});
|
||||
return;
|
||||
}
|
||||
const data = {
|
||||
id: list.length + 1,
|
||||
title: taskName,
|
||||
startTime: formatTime(new Date), endTime: end, end: '40',
|
||||
}
|
||||
list.push(data)
|
||||
wx.setStorageSync("taskList", list);
|
||||
wx.showToast({
|
||||
title: "发布成功",
|
||||
icon: 'success',
|
||||
});
|
||||
this.setData({
|
||||
taskList: wx.getStorageSync("taskList") || []
|
||||
});
|
||||
},
|
||||
formSubmit:function(e:any){
|
||||
var that = this;
|
||||
//获取表单值
|
||||
var formData = e.detail.value;
|
||||
var url = this.data.addUrl;
|
||||
if(this.data.id != undefined){
|
||||
//如果是编辑按钮跳转
|
||||
formData.id = this.data.id;
|
||||
url = this.data.updateUrl;
|
||||
}
|
||||
console.log(JSON.stringify(formData));
|
||||
wx.request({
|
||||
url: url,
|
||||
//将其转换成JSON
|
||||
data: JSON.stringify(formData),
|
||||
method: 'POST',
|
||||
success: function(res:any) {
|
||||
var result = res.data.success;
|
||||
var toastText = '请求成功';
|
||||
if(!result){
|
||||
toastText = '请求失败'+res.data.msg;
|
||||
}
|
||||
wx.showToast({
|
||||
title: toastText,
|
||||
duration: 2000,
|
||||
})
|
||||
if(result){
|
||||
wx.redirectTo({
|
||||
//操作结束后跳转回列表页
|
||||
url: '../list/list',
|
||||
})
|
||||
}
|
||||
},
|
||||
})
|
||||
},
|
||||
atTaskFlag() {
|
||||
this.setData({ taskFlag: !this.data.taskFlag })
|
||||
},
|
||||
onShow() {
|
||||
this.setData({
|
||||
taskList: wx.getStorageSync("taskList") || []
|
||||
});
|
||||
},
|
||||
onLoad: function (options:any) {
|
||||
//options为页面跳转带来的参数
|
||||
var that = this;
|
||||
if(options.id != undefined){
|
||||
//若是由编辑按钮跳转过来的
|
||||
that.setData({
|
||||
id:options.id
|
||||
});
|
||||
wx.request({
|
||||
url: 'http://localhost:81/task/one',
|
||||
data: {'id':options.id},
|
||||
method: 'GET',
|
||||
success: function(res:any) {
|
||||
var result = res.data.success;
|
||||
if(result){
|
||||
that.setData({
|
||||
areaName:res.data.data.name,
|
||||
priority: res.data.data.priority
|
||||
});
|
||||
}else{
|
||||
wx.showToast({
|
||||
title: '请求失败'+res.data.msg,
|
||||
duration: 2000,
|
||||
});
|
||||
}
|
||||
},
|
||||
})
|
||||
}
|
||||
},
|
||||
})
|
||||
@ -1,19 +0,0 @@
|
||||
<view class="release-view">
|
||||
<form bindsubmit='formSubmit' bindreset='formReset'>
|
||||
<label>任务名称
|
||||
<input type='text' name='name' placeholder='请输入任务名' value='{{name}}'></input>
|
||||
</label>
|
||||
<label>任务结束时间
|
||||
<input type="text" name="deadtime" value="{{deadtime}}" placeholder="输入任务结束时间" ></input>
|
||||
</label>
|
||||
<label>任务详情
|
||||
<input type="text" name="property" value="{{property}}" placeholder="输入任务详情" ></input>
|
||||
</label>
|
||||
|
||||
|
||||
<view class='row'>
|
||||
<button type='primary' form-type='submit' catchtap="addSelect">提交</button>
|
||||
<button type='primary' form-type='reset'>清空</button>
|
||||
</view>
|
||||
</form>
|
||||
</view>
|
||||
@ -1,69 +0,0 @@
|
||||
/* pages/opration/opration.wxss */
|
||||
.row input {
|
||||
font-size: 0.7rem;
|
||||
flex-grow: 3;
|
||||
border: ipx solid #09c;
|
||||
display: inline-block;
|
||||
border-radius: 0.3rem;
|
||||
box-shadow: 0 0 0.15rem #aaa;
|
||||
padding: 0.3rem;
|
||||
}
|
||||
|
||||
.row button {
|
||||
padding: 0.3rem;
|
||||
margin: 3rem 1rem;
|
||||
}
|
||||
|
||||
.container {
|
||||
padding: 1rem;
|
||||
font-size: 0.9rem;
|
||||
line-height: 1.5rem;
|
||||
}
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 0.8rem;
|
||||
}
|
||||
|
||||
.row text {
|
||||
flex-grow: 1.5;
|
||||
text-align: right;
|
||||
}
|
||||
.form-box picker{
|
||||
margin: 30rpx 30rpx 0 0;
|
||||
color: rgb(153, 153, 153);
|
||||
}
|
||||
|
||||
.title {
|
||||
background: #fff;
|
||||
display: inline-block;
|
||||
border-radius: 4px;
|
||||
padding: 4px;
|
||||
margin: 10px 0;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.title::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
width: 100vw;
|
||||
height: 4px;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.release-view{
|
||||
padding: 8px;
|
||||
background-color: #fff;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.release-view input{
|
||||
border: 1px #ccc solid;
|
||||
border-radius: 4px;
|
||||
margin: 6px 0;
|
||||
padding: 4px;
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"navigationBarTitleText": "接龙信息表单"
|
||||
}
|
||||
@ -1,95 +0,0 @@
|
||||
// logs.ts
|
||||
// const util = require('../../utils/util.js')
|
||||
import { formatTime } from '../../utils/util'
|
||||
|
||||
Page({
|
||||
data: {
|
||||
logs: [],
|
||||
taskList: [],
|
||||
taskFlag: false,
|
||||
releaseFlag: false,
|
||||
id:undefined,
|
||||
name:'',
|
||||
property:'',
|
||||
stuid:'',
|
||||
deadtime:'',
|
||||
addUrl:'http://localhost:81/dragon/addDragon',
|
||||
updateUrl:'http://localhost:81/dragon/dragonInfo',
|
||||
from: {
|
||||
taskName: "",
|
||||
end: ""
|
||||
}
|
||||
},
|
||||
formSubmit:function(e:any){
|
||||
var that = this;
|
||||
//获取表单值
|
||||
var formData = e.detail.value;
|
||||
var url = this.data.addUrl;
|
||||
if(this.data.id != undefined){
|
||||
//如果是编辑按钮跳转
|
||||
formData.id = this.data.id;
|
||||
url = this.data.updateUrl;
|
||||
}
|
||||
console.log(JSON.stringify(formData));
|
||||
wx.request({
|
||||
url: url,
|
||||
//将其转换成JSON
|
||||
data: JSON.stringify(formData),
|
||||
method: 'POST',
|
||||
success: function(res:any) {
|
||||
var result = res.data.success;
|
||||
var toastText = '请求成功';
|
||||
if(!result){
|
||||
toastText = '请求失败'+res.data.msg;
|
||||
}
|
||||
wx.showToast({
|
||||
title: toastText,
|
||||
duration: 2000,
|
||||
})
|
||||
if(result){
|
||||
wx.redirectTo({
|
||||
//操作结束后跳转回列表页
|
||||
url: '../list1/list1',
|
||||
})
|
||||
}
|
||||
},
|
||||
})
|
||||
},
|
||||
atTaskFlag() {
|
||||
this.setData({ taskFlag: !this.data.taskFlag })
|
||||
},
|
||||
onShow() {
|
||||
this.setData({
|
||||
taskList: wx.getStorageSync("taskList") || []
|
||||
});
|
||||
},
|
||||
onLoad: function (options:any) {
|
||||
//options为页面跳转带来的参数
|
||||
var that = this;
|
||||
if(options.id != undefined){
|
||||
//若是由编辑按钮跳转过来的
|
||||
that.setData({
|
||||
id:options.id
|
||||
});
|
||||
wx.request({
|
||||
url: 'http://localhost:81/dragon/one',
|
||||
data: {'id':options.id},
|
||||
method: 'GET',
|
||||
success: function(res:any) {
|
||||
var result = res.data.success;
|
||||
if(result){
|
||||
that.setData({
|
||||
areaName:res.data.data.name,
|
||||
priority: res.data.data.priority
|
||||
});
|
||||
}else{
|
||||
wx.showToast({
|
||||
title: '请求失败'+res.data.msg,
|
||||
duration: 2000,
|
||||
});
|
||||
}
|
||||
},
|
||||
})
|
||||
}
|
||||
},
|
||||
})
|
||||
@ -1,18 +0,0 @@
|
||||
<view class="release-view">
|
||||
<form bindsubmit='formSubmit' bindreset='formReset'>
|
||||
<label>接龙名称
|
||||
<input type='text' name='name' placeholder='请输入接龙名' value='{{name}}'></input>
|
||||
</label>
|
||||
<label>接龙结束时间
|
||||
<input type="text" name="deadtime" value="{{deadtime}}" placeholder="输入接龙结束时间" ></input>
|
||||
</label>
|
||||
<label>接龙详情
|
||||
<input type="text" name="property" value="{{property}}" placeholder="输入接龙详情" ></input>
|
||||
</label>
|
||||
|
||||
<view class='row'>
|
||||
<button type='primary' form-type='submit' catchtap="addSelect">提交</button>
|
||||
<button type='primary' form-type='reset'>清空</button>
|
||||
</view>
|
||||
</form>
|
||||
</view>
|
||||
@ -1,69 +0,0 @@
|
||||
/* pages/opration/opration.wxss */
|
||||
.row input {
|
||||
font-size: 0.7rem;
|
||||
flex-grow: 3;
|
||||
border: ipx solid #09c;
|
||||
display: inline-block;
|
||||
border-radius: 0.3rem;
|
||||
box-shadow: 0 0 0.15rem #aaa;
|
||||
padding: 0.3rem;
|
||||
}
|
||||
|
||||
.row button {
|
||||
padding: 0.3rem;
|
||||
margin: 3rem 1rem;
|
||||
}
|
||||
|
||||
.container {
|
||||
padding: 1rem;
|
||||
font-size: 0.9rem;
|
||||
line-height: 1.5rem;
|
||||
}
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 0.8rem;
|
||||
}
|
||||
|
||||
.row text {
|
||||
flex-grow: 1.5;
|
||||
text-align: right;
|
||||
}
|
||||
.form-box picker{
|
||||
margin: 30rpx 30rpx 0 0;
|
||||
color: rgb(153, 153, 153);
|
||||
}
|
||||
|
||||
.title {
|
||||
background: #fff;
|
||||
display: inline-block;
|
||||
border-radius: 4px;
|
||||
padding: 4px;
|
||||
margin: 10px 0;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.title::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
width: 100vw;
|
||||
height: 4px;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.release-view{
|
||||
padding: 8px;
|
||||
background-color: #fff;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.release-view input{
|
||||
border: 1px #ccc solid;
|
||||
border-radius: 4px;
|
||||
margin: 6px 0;
|
||||
padding: 4px;
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"navigationBarTitleText": "请完成任务提交"
|
||||
}
|
||||
@ -1,67 +0,0 @@
|
||||
/* pages/submit/submit.wxss */
|
||||
.wrip-view {
|
||||
height: 100%;
|
||||
}
|
||||
.image {
|
||||
height: 120%;
|
||||
position: relative;
|
||||
}
|
||||
.swip {
|
||||
background: rgb(243, 243, 243);
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.swip-text {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
z-index: 100;
|
||||
text-align: center;
|
||||
font-size: 20px;
|
||||
color: rgb(95, 95, 95);
|
||||
}
|
||||
.container{
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding-top: 10rpx;
|
||||
padding-bottom: 10rpx;
|
||||
}
|
||||
|
||||
.widget{
|
||||
position: relative;
|
||||
margin-top: 5rpx;
|
||||
margin-bottom: 5rpx;
|
||||
padding-top: 20rpx;
|
||||
padding-bottom: 20rpx;
|
||||
padding-left: 5rpx;
|
||||
padding-right: 4rpx;
|
||||
border: rgb(16, 196, 157) 1px solid;
|
||||
}
|
||||
|
||||
.row{
|
||||
width: 3rem;
|
||||
font-size:larger;
|
||||
display: table-cell;
|
||||
}
|
||||
.column{
|
||||
font-size:larger;
|
||||
|
||||
}
|
||||
|
||||
|
||||
.form-box picker{
|
||||
margin: 30rpx 30rpx 0 0;
|
||||
color: rgb(187, 19, 19);
|
||||
}
|
||||
|
||||
.link-row{
|
||||
width: 5rem;
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
.link{
|
||||
color: blue;
|
||||
display: inline-table;
|
||||
}
|
||||
@ -1,3 +0,0 @@
|
||||
{
|
||||
"navigationBarTitleText": "请完成接龙"
|
||||
}
|
||||
@ -1,69 +0,0 @@
|
||||
/* pages/opration/opration.wxss */
|
||||
.row input {
|
||||
font-size: 0.7rem;
|
||||
flex-grow: 3;
|
||||
border: ipx solid #09c;
|
||||
display: inline-block;
|
||||
border-radius: 0.3rem;
|
||||
box-shadow: 0 0 0.15rem rgb(22, 4, 4);
|
||||
padding: 0.3rem;
|
||||
}
|
||||
|
||||
.row button {
|
||||
padding: 0.3rem;
|
||||
margin: 3rem 1rem;
|
||||
}
|
||||
|
||||
.container {
|
||||
padding: 1rem;
|
||||
font-size: 0.9rem;
|
||||
line-height: 1.5rem;
|
||||
}
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 0.8rem;
|
||||
}
|
||||
|
||||
.row text {
|
||||
flex-grow: 1.5;
|
||||
text-align: right;
|
||||
}
|
||||
.form-box picker{
|
||||
margin: 30rpx 30rpx 0 0;
|
||||
color: rgb(153, 153, 153);
|
||||
}
|
||||
|
||||
.title {
|
||||
background: #fff;
|
||||
display: inline-block;
|
||||
border-radius: 4px;
|
||||
padding: 4px;
|
||||
margin: 10px 0;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.title::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
width: 100vw;
|
||||
height: 4px;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.release-view{
|
||||
padding: 8px;
|
||||
background-color: #fff;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.release-view input{
|
||||
border: 1px #ccc solid;
|
||||
border-radius: 4px;
|
||||
margin: 6px 0;
|
||||
padding: 4px;
|
||||
}
|
||||
@ -1,7 +0,0 @@
|
||||
{
|
||||
"desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html",
|
||||
"rules": [{
|
||||
"action": "allow",
|
||||
"page": "*"
|
||||
}]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 76 KiB |
|
Before Width: | Height: | Size: 6.2 KiB |
|
Before Width: | Height: | Size: 6.4 KiB |
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue