首页及后台
This commit is contained in:
parent
9bdd98f2a9
commit
61fffac96b
|
|
@ -0,0 +1,77 @@
|
|||
package com.bonus.aqgqj.basis.controller;
|
||||
|
||||
import com.bonus.aqgqj.annotation.DecryptAndVerify;
|
||||
import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto;
|
||||
import com.bonus.aqgqj.basis.entity.vo.HomeVo;
|
||||
import com.bonus.aqgqj.basis.service.HomeService;
|
||||
import io.swagger.annotations.Api;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
/**
|
||||
* 工器具个体管理
|
||||
* @author hay
|
||||
*/
|
||||
@Api(tags = "首页")
|
||||
@RestController
|
||||
@RequestMapping("/home/")
|
||||
public class HomeController {
|
||||
|
||||
private static final Logger log = LoggerFactory.getLogger("adminLogger");
|
||||
|
||||
@Autowired
|
||||
private HomeService service;
|
||||
|
||||
@PostMapping(value = "getApprovalNum")
|
||||
@DecryptAndVerify(decryptedClass = ToolsManageDto.class)
|
||||
public Map<String,Object> getApprovalNum(HomeVo vo) {
|
||||
Map<String,Object> map=new HashMap<>();
|
||||
try{
|
||||
map=service.getApprovalNum(vo);
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
return map;
|
||||
}
|
||||
@PostMapping(value = "getATeamNumForEcharts")
|
||||
@DecryptAndVerify(decryptedClass = ToolsManageDto.class)
|
||||
public Map<String,Object> getATeamNumForEcharts(HomeVo vo) {
|
||||
Map<String,Object> map=new HashMap<>();
|
||||
try{
|
||||
map=service.getATeamNumForEcharts(vo);
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
return map;
|
||||
}
|
||||
@PostMapping(value = "getATeamCostForEcharts")
|
||||
@DecryptAndVerify(decryptedClass = ToolsManageDto.class)
|
||||
public Map<String,Object> getATeamCostForEcharts(HomeVo vo) {
|
||||
Map<String,Object> map=new HashMap<>();
|
||||
try{
|
||||
map=service.getATeamCostForEcharts(vo);
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
return map;
|
||||
}
|
||||
@PostMapping(value = "getCostRank")
|
||||
@DecryptAndVerify(decryptedClass = ToolsManageDto.class)
|
||||
public Map<String,Object> getCostRank(HomeVo vo) {
|
||||
Map<String,Object> map=new HashMap<>();
|
||||
try{
|
||||
map=service.getCostRank(vo);
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
return map;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
package com.bonus.aqgqj.basis.dao;
|
||||
|
||||
import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto;
|
||||
import com.bonus.aqgqj.basis.entity.vo.HomeVo;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Mapper
|
||||
public interface HomeDao {
|
||||
/**
|
||||
* 查询审批数
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
List<HomeVo> getApprovalNum(HomeVo vo);
|
||||
/**
|
||||
* 查询试验班组echarts
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
List<HomeVo> getATeamNumForEcharts(HomeVo vo);
|
||||
/**
|
||||
* 查询试验费用echarts
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
List<HomeVo> getATeamCostForEcharts(HomeVo vo);
|
||||
/**
|
||||
* 查询费用排名
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
List<HomeVo> getCostRank(HomeVo vo);
|
||||
}
|
||||
|
|
@ -0,0 +1,83 @@
|
|||
package com.bonus.aqgqj.basis.entity.vo;
|
||||
|
||||
import com.bonus.aqgqj.utils.UserUtil;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @className:ExperDeviceVo
|
||||
* @author:cwchen
|
||||
* @date:2024-07-19-13:29
|
||||
* @version:1.0
|
||||
* @description:试验设备-vo
|
||||
*/
|
||||
@Data
|
||||
public class HomeVo {
|
||||
/**
|
||||
* 待派工
|
||||
*/
|
||||
private String dispatchWorkNum;
|
||||
/**
|
||||
* 待试验/实验数
|
||||
*/
|
||||
private String testNum;
|
||||
/**
|
||||
* 待重新审阅
|
||||
*/
|
||||
private String reloadReviewNUm;
|
||||
/**
|
||||
* 待审阅
|
||||
*/
|
||||
private String reviewNUm;
|
||||
/**
|
||||
* 待审核
|
||||
*/
|
||||
private String examineNum;
|
||||
/**
|
||||
* 待审批
|
||||
*/
|
||||
private String approvalNum;
|
||||
/**
|
||||
* 班组名称
|
||||
*/
|
||||
private String teamName;
|
||||
/**
|
||||
* 试验日期
|
||||
*/
|
||||
private String testData;
|
||||
/**
|
||||
* 试验费用
|
||||
*/
|
||||
private String testCost;
|
||||
/**
|
||||
* 排名
|
||||
*/
|
||||
private String sortNum;
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
private String userName;
|
||||
/**
|
||||
* 总费用
|
||||
*/
|
||||
private String totalCost;
|
||||
/**
|
||||
* 订单量
|
||||
*/
|
||||
private String orderNum;
|
||||
/**
|
||||
* 联系人
|
||||
*/
|
||||
private String contacts;
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
private String contactPhone;
|
||||
/**
|
||||
* 合作时间
|
||||
*/
|
||||
private String cooperateDate;
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
package com.bonus.aqgqj.basis.service;
|
||||
|
||||
import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto;
|
||||
import com.bonus.aqgqj.basis.entity.vo.HomeVo;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 工器具个体管理
|
||||
* @author hay
|
||||
*/
|
||||
public interface HomeService {
|
||||
/**
|
||||
* 查询审批数
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
Map<String,Object> getApprovalNum(HomeVo vo);
|
||||
/**
|
||||
* 查询试验班组echarts
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
Map<String,Object> getATeamNumForEcharts(HomeVo vo);
|
||||
/**
|
||||
* 查询试验费用echarts
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
Map<String,Object> getATeamCostForEcharts(HomeVo vo);
|
||||
/**
|
||||
* 查询费用排名
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
Map<String,Object> getCostRank(HomeVo vo);
|
||||
}
|
||||
|
|
@ -0,0 +1,82 @@
|
|||
package com.bonus.aqgqj.basis.service.impl;
|
||||
|
||||
import com.bonus.aqgqj.basis.dao.HomeDao;
|
||||
import com.bonus.aqgqj.basis.dao.ToolsManageDao;
|
||||
import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto;
|
||||
import com.bonus.aqgqj.basis.entity.vo.HomeVo;
|
||||
import com.bonus.aqgqj.basis.service.HomeService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description 工器具个体管理
|
||||
* @author hay
|
||||
* @date 2024/7/20 16:10
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class HomeServiceImpl implements HomeService {
|
||||
@Resource
|
||||
private HomeDao dao;
|
||||
@Override
|
||||
public Map<String, Object> getApprovalNum(HomeVo vo) {
|
||||
Map<String, Object> map=new HashMap<>();
|
||||
try{
|
||||
List<HomeVo> list=dao.getApprovalNum(vo);
|
||||
HomeVo hvo=new HomeVo();
|
||||
map.put("data",hvo);
|
||||
map.put("code","200");
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
map.put("code","400");
|
||||
}
|
||||
return map;
|
||||
}
|
||||
@Override
|
||||
public Map<String, Object> getATeamNumForEcharts(HomeVo vo) {
|
||||
Map<String, Object> map=new HashMap<>();
|
||||
try{
|
||||
List<HomeVo> list=dao.getATeamNumForEcharts(vo);
|
||||
HomeVo hvo=new HomeVo();
|
||||
map.put("data",hvo);
|
||||
map.put("code","200");
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
map.put("code","400");
|
||||
}
|
||||
return map;
|
||||
}
|
||||
@Override
|
||||
public Map<String, Object> getATeamCostForEcharts(HomeVo vo) {
|
||||
Map<String, Object> map=new HashMap<>();
|
||||
try{
|
||||
List<HomeVo> list=dao.getATeamCostForEcharts(vo);
|
||||
HomeVo hvo=new HomeVo();
|
||||
map.put("data",hvo);
|
||||
map.put("code","200");
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
map.put("code","400");
|
||||
}
|
||||
return map;
|
||||
}
|
||||
@Override
|
||||
public Map<String, Object> getCostRank(HomeVo vo) {
|
||||
Map<String, Object> map=new HashMap<>();
|
||||
try{
|
||||
List<HomeVo> list=dao.getCostRank(vo);
|
||||
HomeVo hvo=new HomeVo();
|
||||
map.put("data",hvo);
|
||||
map.put("code","200");
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
map.put("code","400");
|
||||
}
|
||||
return map;
|
||||
}
|
||||
}
|
||||
|
|
@ -67,7 +67,7 @@ public class TokenFilter extends OncePerRequestFilter {
|
|||
@Autowired
|
||||
private RedisUtil redisUtil;
|
||||
|
||||
private static String url="/zhly/login.html";
|
||||
private static String url="/szgqj/login.html";
|
||||
|
||||
private static final Long MINUTES_10 = 10 * 60 * 1000L;
|
||||
|
||||
|
|
|
|||
|
|
@ -9,12 +9,15 @@ server.port=11997
|
|||
#\u8BBF\u95EE\u8DEF\u5F84
|
||||
server.servlet.context-path=/szgqj
|
||||
#mysql\u6570\u636E\u5E93\u8FDE\u63A5
|
||||
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/bns_zhly?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
spring.datasource.username=root
|
||||
spring.datasource.password=bonus@admin123
|
||||
#spring.datasource.url=jdbc:mysql://192.168.0.7:13306/bns_zhly?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
#spring.datasource.url=jdbc:mysql://127.0.0.1:3306/bns_zhly?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
#spring.datasource.username=root
|
||||
#spring.datasource.password=bonus@admin123
|
||||
#spring.datasource.url=jdbc:mysql://192.168.0.7:13306/sz_aqgqj?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
#spring.datasource.username=root
|
||||
#spring.datasource.password=Bonus@admin123!
|
||||
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/sz_aqgqj ?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
|
||||
spring.datasource.username=root
|
||||
spring.datasource.password=jsk@131551
|
||||
#spring.datasource.url=jdbc:mysql://192.168.0.14:2000/bns_zhly?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
#spring.datasource.username=root
|
||||
#spring.datasource.password=zhly@mysql14!
|
||||
|
|
@ -32,10 +35,12 @@ mybatis.type-aliases-package=com.bonus.aqgqj.*.vo
|
|||
#spring.redis.host=localhost
|
||||
|
||||
|
||||
#spring.redis.host=127.0.0.1
|
||||
#spring.redis.port=6379
|
||||
#spring.redis.database=4
|
||||
spring.redis.host=127.0.0.1
|
||||
spring.redis.port=6379
|
||||
spring.redis.database=4
|
||||
|
||||
spring.redis.password=123456
|
||||
|
||||
#spring.redis.host=192.168.0.14
|
||||
#spring.redis.port=2002
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@
|
|||
.two table td .daiban div:nth-child(2){
|
||||
margin-left: 2%;
|
||||
color: #0000FF;
|
||||
font-size: 18px;
|
||||
font-size: 40px;
|
||||
padding-top: 10px;
|
||||
}
|
||||
.two table td .daiban div:nth-child(3){
|
||||
|
|
@ -81,9 +81,12 @@
|
|||
}
|
||||
.three-one button:nth-child(2){
|
||||
float: right;
|
||||
width: 80px;
|
||||
}
|
||||
.three-one button:nth-child(3){
|
||||
float: right;
|
||||
margin-right: 20px;
|
||||
width: 80px;
|
||||
}
|
||||
.three-two div:nth-child(1){
|
||||
margin-top: 2%;
|
||||
|
|
|
|||
|
|
@ -25,10 +25,17 @@ var data=[{"numbers":1,"username":"测试","fee":"测试","dingdan":"测试","na
|
|||
,{"numbers":12,"username":"测试","fee":"测试","dingdan":"测试","name":"测试","phone":"测试","gettime":"测试"}
|
||||
,{"numbers":13,"username":"测试","fee":"测试","dingdan":"测试","name":"测试","phone":"测试","gettime":"测试"}
|
||||
]
|
||||
var intervalId;
|
||||
var scrollableDiv ; // 假设你的滚动容器类名为.scrollable
|
||||
var totalHeight ;
|
||||
var visibleHeight ;
|
||||
var currentScrollTop = 0;
|
||||
function iniTable(){
|
||||
table.render({
|
||||
elem: '#table-box',
|
||||
data:data,
|
||||
limit: 10000,
|
||||
page:false,
|
||||
cols: [[
|
||||
{type: 'numbers', title: '排名', width: '10%',align:"center"}//序号列
|
||||
,{field: 'username', title: '用户名称', width: '20%',align:"center"}
|
||||
|
|
@ -39,6 +46,32 @@ function iniTable(){
|
|||
,{field: 'gettime', title: '最近合作时间', width: '15%',align:"center"}
|
||||
]]
|
||||
});
|
||||
scrollableDiv = $('#table-box + div .layui-table-body'); // 假设你的滚动容器类名为.scrollable
|
||||
totalHeight = scrollableDiv[0].scrollHeight;
|
||||
visibleHeight = scrollableDiv.innerHeight();
|
||||
currentScrollTop = 0;
|
||||
console.log(totalHeight,"totalHeight")
|
||||
console.log(visibleHeight,"visibleHeight")
|
||||
intervalId = setInterval(scrolldiv, 40);
|
||||
monveinout();
|
||||
}
|
||||
function monveinout(){
|
||||
$('#table-box + div .layui-table-body').on("mouseenter",function(){
|
||||
clearInterval(intervalId);
|
||||
}).on("mouseleave",function(){
|
||||
intervalId = setInterval(scrolldiv, 40);
|
||||
})
|
||||
}
|
||||
function scrolldiv() {
|
||||
// 如果滚动到最底部,重置到顶部
|
||||
if (currentScrollTop + visibleHeight >= totalHeight) {
|
||||
currentScrollTop = 0;
|
||||
scrollableDiv.scrollTop(currentScrollTop);
|
||||
} else {
|
||||
// 否则,向下滚动一定的像素数
|
||||
currentScrollTop += 1; // 调整这个数字来改变滚动速度
|
||||
scrollableDiv.scrollTop(currentScrollTop);
|
||||
}
|
||||
}
|
||||
function echartsone(){
|
||||
var myChart = echarts.init(document.getElementById('echartsone'));
|
||||
|
|
@ -48,12 +81,23 @@ function echartsone(){
|
|||
},
|
||||
legend: {},
|
||||
tooltip: {
|
||||
trigger: 'axis'
|
||||
// 修改tooltip的触发方式,例如改为'axis'轴触发
|
||||
trigger: 'axis',
|
||||
// 自定义内容格式化函数
|
||||
// 其他tooltip样式和行为
|
||||
extraCssText: 'width:160px;height:100px;',
|
||||
backgroundColor: 'rgba(50,50,50,0.7)', // 背景颜色
|
||||
borderColor: '#333', // 边框颜色
|
||||
borderWidth: 1, // 边框宽度
|
||||
padding: 0, // 内边距
|
||||
textStyle: {
|
||||
color: '#fff' // 文本颜色
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
type: 'category',
|
||||
boundaryGap: false,
|
||||
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
|
||||
data: ['2024-07-01', '2024-07-02', '2024-07-03', '2024-07-04', '2024-07-05', '2024-07-06', '2024-07-07']
|
||||
},
|
||||
yAxis: {
|
||||
type: 'value',
|
||||
|
|
@ -66,12 +110,29 @@ function echartsone(){
|
|||
name: '实验一班',
|
||||
type: 'line',
|
||||
data: [10, 11, 13, 11, 12, 12, 9],
|
||||
|
||||
lineStyle: {
|
||||
color: '#0052D9',
|
||||
width: 2,
|
||||
type: 'solid'
|
||||
},
|
||||
// 设置散点(线中的点)颜色
|
||||
itemStyle: {
|
||||
color: '#0052D9'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: '实验二班',
|
||||
type: 'line',
|
||||
data: [1, 2, 2, 5, 3, 2, 4],
|
||||
lineStyle: {
|
||||
color: '#B5C7FF',
|
||||
width: 2,
|
||||
type: 'solid'
|
||||
},
|
||||
// 设置散点(线中的点)颜色
|
||||
itemStyle: {
|
||||
color: '#B5C7FF'
|
||||
}
|
||||
}
|
||||
]
|
||||
};
|
||||
|
|
@ -81,7 +142,8 @@ function echartstwo(){
|
|||
var myChart = echarts.init(document.getElementById('echartstwo'));
|
||||
option = {
|
||||
tooltip: {
|
||||
trigger: 'item'
|
||||
trigger: 'item',
|
||||
extraCssText: 'width:160px;height:100px;',
|
||||
},
|
||||
// legend: {
|
||||
// orient: 'vertical',
|
||||
|
|
@ -90,20 +152,14 @@ function echartstwo(){
|
|||
legend: {},
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
name: '',
|
||||
type: 'pie',
|
||||
radius: '50%',
|
||||
color: ['#0052D9', '#B5C7FF'],
|
||||
data: [
|
||||
{ value: 1048, name: '试验一班' },
|
||||
{ value: 735, name: '试验二班' }
|
||||
],
|
||||
emphasis: {
|
||||
itemStyle: {
|
||||
shadowBlur: 10,
|
||||
shadowOffsetX: 0,
|
||||
shadowColor: 'rgba(0, 0, 0, 0.3)'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
|
|
|
|||
|
|
@ -35,10 +35,10 @@ function error(xhr) {
|
|||
icon: 5,
|
||||
move: false,
|
||||
cancel: function (index, layero) {
|
||||
location.href = '/zhly/login.html';
|
||||
location.href = '/szgqj/login.html';
|
||||
}
|
||||
}, function () {
|
||||
location.href = '/zhly/login.html';
|
||||
location.href = '/szgqj/login.html';
|
||||
})
|
||||
} else if (code == 403) {
|
||||
console.log("未授权:" + message);
|
||||
|
|
|
|||
|
|
@ -6,6 +6,29 @@
|
|||
<link rel="stylesheet" type="text/css" media="screen" href="../../js/layui-v2.6.8/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/home/home.css">
|
||||
</head>
|
||||
<style>
|
||||
#table-box + div .layui-table-body {
|
||||
height: 392px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
/* 自定义整个滚动条 */
|
||||
::-webkit-scrollbar {
|
||||
width: 10px; /* 设置滚动条的宽度 */
|
||||
}
|
||||
/* 自定义滚动条轨道 */
|
||||
::-webkit-scrollbar-track {
|
||||
background: #f1f1f1; /* 设置轨道的背景颜色 */
|
||||
}
|
||||
/* 自定义滚动条的滑块(thumb) */
|
||||
::-webkit-scrollbar-thumb {
|
||||
background: #F2F2F2; /* 设置滑块的背景颜色 */
|
||||
}
|
||||
/* 当滑块悬停或活动时自定义滚动条的滑块 */
|
||||
::-webkit-scrollbar-thumb:hover {
|
||||
background: #888; /* 设置滑块在悬停状态下的背景颜色 */
|
||||
box-shadow: 0 0 10px #fff;
|
||||
}
|
||||
</style>
|
||||
<body style="width: 99% !important;">
|
||||
<div class="container">
|
||||
<div class="one"><span>待办任务统计</span></div>
|
||||
|
|
@ -21,14 +44,14 @@
|
|||
</td>
|
||||
<td>
|
||||
<div class="daiban">
|
||||
<div><span>待派工</span></div>
|
||||
<div><span>待试验</span></div>
|
||||
<div><span>24</span></div>
|
||||
<div><span>更新至</span><span>2024-07-18</span></div>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="daiban">
|
||||
<div><span>待派工</span></div>
|
||||
<div><span>待重新审阅</span></div>
|
||||
<div><span>24</span></div>
|
||||
<div><span>更新至</span><span>2024-07-18</span></div>
|
||||
</div>
|
||||
|
|
@ -37,21 +60,21 @@
|
|||
<tr>
|
||||
<td>
|
||||
<div class="daiban">
|
||||
<div><span>待派工</span></div>
|
||||
<div><span>待审阅</span></div>
|
||||
<div><span>24</span></div>
|
||||
<div><span>更新至</span><span>2024-07-18</span></div>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="daiban">
|
||||
<div><span>待派工</span></div>
|
||||
<div><span>待审核</span></div>
|
||||
<div><span>24</span></div>
|
||||
<div><span>更新至</span><span>2024-07-18</span></div>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div class="daiban">
|
||||
<div><span>待派工</span></div>
|
||||
<div><span>待审批</span></div>
|
||||
<div><span>24</span></div>
|
||||
<div><span>更新至</span><span>2024-07-18</span></div>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Reference in New Issue