Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Z
zhengyuan-danger-chemistry-manage
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
耿迪迪
zhengyuan-danger-chemistry-manage
Commits
55ef20cc
Commit
55ef20cc
authored
Jan 09, 2023
by
吴卿华
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
1a9754d6
64ae6154
Hide whitespace changes
Inline
Side-by-side
Showing
34 changed files
with
867 additions
and
123 deletions
+867
-123
TStaningBookController.java
...g/web/controller/hiddenDanger/TStaningBookController.java
+23
-8
TTrainCourseController.java
...m/zehong/web/controller/train/TTrainCourseController.java
+19
-0
TTrainCourse.java
.../src/main/java/com/zehong/system/domain/TTrainCourse.java
+10
-0
TTrainUserCourse.java
.../main/java/com/zehong/system/domain/TTrainUserCourse.java
+20
-1
HiddenStatVO.java
...c/main/java/com/zehong/system/domain/vo/HiddenStatVO.java
+43
-0
UserCourseVo.java
...c/main/java/com/zehong/system/domain/vo/UserCourseVo.java
+7
-0
TStaningBookMapper.java
...ain/java/com/zehong/system/mapper/TStaningBookMapper.java
+21
-0
ITStaningBookService.java
.../java/com/zehong/system/service/ITStaningBookService.java
+10
-0
ITTrainCourseService.java
.../java/com/zehong/system/service/ITTrainCourseService.java
+4
-0
TStaningBookServiceImpl.java
...m/zehong/system/service/impl/TStaningBookServiceImpl.java
+87
-9
TTrainCourseServiceImpl.java
...m/zehong/system/service/impl/TTrainCourseServiceImpl.java
+33
-1
TStaningBookMapper.xml
...m/src/main/resources/mapper/system/TStaningBookMapper.xml
+39
-6
TTrainCourseMapper.xml
...m/src/main/resources/mapper/system/TTrainCourseMapper.xml
+9
-3
TTrainUserCourseMapper.xml
...c/main/resources/mapper/system/TTrainUserCourseMapper.xml
+10
-2
lessonsProgram.js
...er-manage-web/src/api/educationPlanExam/lessonsProgram.js
+16
-1
book.js
danger-manage-web/src/api/system/book.js
+10
-1
index.vue
danger-manage-web/src/components/FileUpload/index.vue
+1
-0
index.vue
...anage-web/src/views/contractor/contractorPerson/index.vue
+2
-2
AddQuestion.vue
...ucationPlanExam/lessonsProgram/components/AddQuestion.vue
+12
-13
Dia.vue
...views/educationPlanExam/lessonsProgram/components/Dia.vue
+2
-2
Lesson.vue
...ws/educationPlanExam/lessonsProgram/components/Lesson.vue
+60
-5
index.vue
...c/views/educationPlanExam/myLessons/CheckLesson/index.vue
+74
-9
AnswerLesson.vue
...s/educationPlanExam/myLessons/components/AnswerLesson.vue
+4
-1
LearnAfter.vue
...ews/educationPlanExam/myLessons/components/LearnAfter.vue
+1
-1
LearnBefore.vue
...ws/educationPlanExam/myLessons/components/LearnBefore.vue
+1
-1
LearnItem.vue
...iews/educationPlanExam/myLessons/components/LearnItem.vue
+63
-4
Left.vue
...src/views/educationPlanExam/myLessons/components/Left.vue
+4
-2
index.vue
...anage-web/src/views/educationPlanExam/myLessons/index.vue
+3
-0
index.vue
...manage-web/src/views/educationPlanExam/testStat/index.vue
+1
-0
AddQuestion.vue
...ws/educationPlanExam/textPaper/components/AddQuestion.vue
+10
-11
Lesson.vue
...s/educationPlanExam/trainingProgram/components/Lesson.vue
+11
-11
index.vue
danger-manage-web/src/views/system/book/index.vue
+54
-26
index.vue
danger-manage-web/src/views/system/hiddenStat/index.vue
+200
-0
index.vue
danger-manage-web/src/views/system/library/index.vue
+3
-3
No files found.
danger-manage-admin/src/main/java/com/zehong/web/controller/hiddenDanger/TStaningBookController.java
View file @
55ef20cc
package
com
.
zehong
.
web
.
controller
.
hiddenDanger
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
cn.hutool.core.date.DateUtil
;
import
com.zehong.common.core.domain.entity.SysUser
;
import
com.zehong.common.core.domain.model.LoginUser
;
import
com.zehong.common.utils.ServletUtils
;
import
com.zehong.framework.web.service.TokenService
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PutMapping
;
import
org.springframework.web.bind.annotation.DeleteMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
com.zehong.common.annotation.Log
;
import
com.zehong.common.core.controller.BaseController
;
import
com.zehong.common.core.domain.AjaxResult
;
...
...
@@ -121,4 +117,23 @@ public class TStaningBookController extends BaseController
public
AjaxResult
statics
(
String
type
){
return
AjaxResult
.
success
(
tStaningBookService
.
statics
(
type
));
}
/**
* 隐患统计图
* @param troubleLevel 隐患等级
* @param beginTime 开始时间
* @param endTime 结束时间
* @return Map
*/
@GetMapping
(
value
=
"/hiddenStat"
)
public
AjaxResult
hiddenStat
(
@RequestParam
(
value
=
"troubleLevel"
,
required
=
false
)
Integer
troubleLevel
,
@RequestParam
(
value
=
"beginTime"
,
required
=
false
)
Date
beginTime
,
@RequestParam
(
value
=
"endTime"
,
required
=
false
)
Date
endTime
){
if
(
null
==
beginTime
&&
null
==
endTime
){
beginTime
=
DateUtil
.
beginOfYear
(
new
Date
());
endTime
=
DateUtil
.
endOfYear
(
new
Date
());
}
return
AjaxResult
.
success
(
tStaningBookService
.
hiddenStat
(
troubleLevel
,
beginTime
,
endTime
));
}
}
danger-manage-admin/src/main/java/com/zehong/web/controller/train/TTrainCourseController.java
View file @
55ef20cc
...
...
@@ -91,6 +91,15 @@ public class TTrainCourseController extends BaseController
{
return
AjaxResult
.
success
(
tTrainCourseService
.
selectTTrainCourseById
(
courseId
));
}
/**
* 获取培训课程详细信息
*/
@ApiOperation
(
"用户课程详情"
)
@GetMapping
(
value
=
"/userCourse"
)
public
AjaxResult
getUserCourse
(
Long
userCourseId
)
{
return
AjaxResult
.
success
(
tTrainCourseService
.
getUserCourse
(
userCourseId
));
}
/**
* 获取培训课程详细信息
...
...
@@ -123,6 +132,16 @@ public class TTrainCourseController extends BaseController
{
return
toAjax
(
tTrainCourseService
.
updateTTrainCourse
(
tTrainCourse
));
}
/**
* 修改用户课程
*/
@ApiOperation
(
"修改用户课程"
)
@Log
(
title
=
"修改用户课程"
,
businessType
=
BusinessType
.
UPDATE
)
@PutMapping
(
"/editUserCourse"
)
public
AjaxResult
editUserCourse
(
@RequestBody
TTrainUserCourse
tTrainUserCourse
)
{
return
toAjax
(
tTrainCourseService
.
updateTTrainUserCourse
(
tTrainUserCourse
));
}
/**
* 删除培训课程
...
...
danger-manage-system/src/main/java/com/zehong/system/domain/TTrainCourse.java
View file @
55ef20cc
...
...
@@ -89,6 +89,16 @@ public class TTrainCourse extends BaseEntity
private
Integer
personnelType
;
private
Integer
duration
;
public
Integer
getDuration
()
{
return
duration
;
}
public
void
setDuration
(
Integer
duration
)
{
this
.
duration
=
duration
;
}
public
String
getPlanName
()
{
return
planName
;
}
...
...
danger-manage-system/src/main/java/com/zehong/system/domain/TTrainUserCourse.java
View file @
55ef20cc
...
...
@@ -33,7 +33,7 @@ public class TTrainUserCourse extends BaseEntity
private
Integer
state
;
/** 最后一次考试时间 */
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd
HH:mm:ss
"
)
@Excel
(
name
=
"最后一次考试时间"
,
width
=
30
,
dateFormat
=
"yyyy-MM-dd"
)
private
Date
examinationTime
;
...
...
@@ -54,6 +54,25 @@ public class TTrainUserCourse extends BaseEntity
private
Integer
personnelType
;
private
Integer
finishDuration
;
private
Integer
trainState
;
public
Integer
getFinishDuration
()
{
return
finishDuration
;
}
public
void
setFinishDuration
(
Integer
finishDuration
)
{
this
.
finishDuration
=
finishDuration
;
}
public
Integer
getTrainState
()
{
return
trainState
;
}
public
void
setTrainState
(
Integer
trainState
)
{
this
.
trainState
=
trainState
;
}
public
Integer
getPersonnelType
()
{
return
personnelType
;
}
...
...
danger-manage-system/src/main/java/com/zehong/system/domain/vo/HiddenStatVO.java
0 → 100644
View file @
55ef20cc
package
com
.
zehong
.
system
.
domain
.
vo
;
public
class
HiddenStatVO
{
/**
* 隐患发现月份
*/
private
String
month
;
/**
* 发现隐患数量
*/
private
int
hiddenCount
;
/**
* 整改数量
*/
private
int
rectifiedCount
;
public
String
getMonth
()
{
return
month
;
}
public
void
setMonth
(
String
month
)
{
this
.
month
=
month
;
}
public
int
getHiddenCount
()
{
return
hiddenCount
;
}
public
void
setHiddenCount
(
int
hiddenCount
)
{
this
.
hiddenCount
=
hiddenCount
;
}
public
int
getRectifiedCount
()
{
return
rectifiedCount
;
}
public
void
setRectifiedCount
(
int
rectifiedCount
)
{
this
.
rectifiedCount
=
rectifiedCount
;
}
}
danger-manage-system/src/main/java/com/zehong/system/domain/vo/UserCourseVo.java
View file @
55ef20cc
...
...
@@ -35,4 +35,11 @@ public class UserCourseVo {
private
String
dataKind
;
private
Integer
personnelType
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
testStartTime
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
testEndTime
;
private
Integer
trainState
;
}
danger-manage-system/src/main/java/com/zehong/system/mapper/TStaningBookMapper.java
View file @
55ef20cc
package
com
.
zehong
.
system
.
mapper
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
com.zehong.system.domain.TStaningBook
;
import
com.zehong.system.domain.vo.HiddenStatVO
;
import
org.apache.ibatis.annotations.Param
;
/**
* 隐患台账Mapper接口
...
...
@@ -62,4 +65,22 @@ public interface TStaningBookMapper
public
int
deleteTStaningBookByIds
(
Long
[]
bookIds
);
public
Map
statics
(
String
type
);
/**
* 隐患统计柱状图
* @param troubleLevel 隐患等级
* @param beginTime 开始时间
* @param endTime 结束时间
* @return List<HiddenStatVO>
*/
List
<
HiddenStatVO
>
hiddenBarStat
(
@Param
(
value
=
"troubleLevel"
)
Integer
troubleLevel
,
@Param
(
value
=
"beginTime"
)
Date
beginTime
,
@Param
(
value
=
"endTime"
)
Date
endTime
);
/**
* 隐患统计环状图
* @param troubleLevel 隐患等级
* @param beginTime 开始时间
* @param endTime 结束时间
* @return
*/
Map
<
String
,
Integer
>
hiddenPieStat
(
@Param
(
value
=
"troubleLevel"
)
Integer
troubleLevel
,
@Param
(
value
=
"beginTime"
)
Date
beginTime
,
@Param
(
value
=
"endTime"
)
Date
endTime
);
}
danger-manage-system/src/main/java/com/zehong/system/service/ITStaningBookService.java
View file @
55ef20cc
package
com
.
zehong
.
system
.
service
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -67,4 +68,13 @@ public interface ITStaningBookService
* @return
*/
public
Map
statics
(
String
type
);
/**
* 隐患统计图
* @param troubleLevel 隐患等级
* @param beginTime 开始时间
* @param endTime 结束时间
* @return Map
*/
Map
<
String
,
List
>
hiddenStat
(
Integer
troubleLevel
,
Date
beginTime
,
Date
endTime
);
}
danger-manage-system/src/main/java/com/zehong/system/service/ITTrainCourseService.java
View file @
55ef20cc
...
...
@@ -54,6 +54,7 @@ public interface ITTrainCourseService
* @return 结果
*/
public
int
updateTTrainCourse
(
TTrainCourse
tTrainCourse
);
public
int
updateTTrainUserCourse
(
TTrainUserCourse
tTrainUserCourse
);
/**
* 批量删除培训课程
...
...
@@ -71,6 +72,9 @@ public interface ITTrainCourseService
*/
public
int
deleteTTrainCourseById
(
Long
courseId
);
public
TTrainUserCourse
getUserCourse
(
Long
userCourseId
);
/**
* 用户id
* @param userId
...
...
danger-manage-system/src/main/java/com/zehong/system/service/impl/TStaningBookServiceImpl.java
View file @
55ef20cc
package
com
.
zehong
.
system
.
service
.
impl
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
import
com.zehong.common.core.domain.entity.SysDept
;
import
com.zehong.common.utils.DateUtils
;
import
com.zehong.system.domain.THiddenTroubleWork
;
import
com.zehong.system.domain.TStaningBook
;
import
com.zehong.system.domain.vo.HiddenStatVO
;
import
com.zehong.system.mapper.SysDeptMapper
;
import
com.zehong.system.mapper.THiddenTroubleWorkMapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.zehong.system.mapper.TStaningBookMapper
;
import
com.zehong.system.domain.TStaningBook
;
import
com.zehong.system.service.ITStaningBookService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
/**
* 隐患台账Service业务层处理
...
...
@@ -24,6 +24,7 @@ import com.zehong.system.service.ITStaningBookService;
@Service
public
class
TStaningBookServiceImpl
implements
ITStaningBookService
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
TStaningBookServiceImpl
.
class
);
@Autowired
private
TStaningBookMapper
tStaningBookMapper
;
@Autowired
...
...
@@ -55,6 +56,7 @@ public class TStaningBookServiceImpl implements ITStaningBookService
List
<
Long
>
oneList
=
new
ArrayList
<>();
oneList
.
add
(
deptId
);
List
<
Long
>
deptIds
=
selectDeptIds
(
new
ArrayList
<>(),
oneList
);
deptIds
.
add
(
deptId
);
tStaningBook
.
setDeptList
(
deptIds
);
List
<
TStaningBook
>
list
=
tStaningBookMapper
.
selectTStaningBookList
(
tStaningBook
);
return
list
;
...
...
@@ -120,4 +122,80 @@ public class TStaningBookServiceImpl implements ITStaningBookService
public
Map
statics
(
String
type
)
{
return
tStaningBookMapper
.
statics
(
type
);
}
@Override
public
Map
<
String
,
List
>
hiddenStat
(
Integer
troubleLevel
,
Date
beginTime
,
Date
endTime
){
Map
<
String
,
List
>
result
=
new
HashMap
<>(
16
);
try
{
List
<
HiddenStatVO
>
barData
=
tStaningBookMapper
.
hiddenBarStat
(
troubleLevel
,
beginTime
,
endTime
);
//柱状图月份数据
List
<
String
>
months
=
getMonthBetweenDate
(
beginTime
,
endTime
);
//柱状图隐患数量
List
<
Integer
>
hiddens
=
new
ArrayList
<>();
//柱状图整改数量
List
<
Integer
>
rectifieds
=
new
ArrayList
<>();
for
(
String
month
:
months
){
boolean
isHas
=
false
;
for
(
HiddenStatVO
hidden
:
barData
){
if
(
month
.
equals
(
hidden
.
getMonth
())){
isHas
=
true
;
hiddens
.
add
(
hidden
.
getHiddenCount
());
rectifieds
.
add
(
hidden
.
getRectifiedCount
());
break
;
}
}
if
(!
isHas
){
hiddens
.
add
(
0
);
rectifieds
.
add
(
0
);
}
}
result
.
put
(
"months"
,
months
);
result
.
put
(
"hiddens"
,
hiddens
);
result
.
put
(
"rectifieds"
,
rectifieds
);
//环状统计图
Map
<
String
,
Integer
>
pieData
=
tStaningBookMapper
.
hiddenPieStat
(
troubleLevel
,
beginTime
,
endTime
);
List
<
Map
<
String
,
Object
>>
pieResult
=
new
ArrayList
<>();
Map
<
String
,
Object
>
rectifiedMap
=
new
HashMap
<>(
16
);
rectifiedMap
.
put
(
"name"
,
"已整改"
);
rectifiedMap
.
put
(
"value"
,
pieData
.
get
(
"rectifiedCount"
));
pieResult
.
add
(
rectifiedMap
);
Map
<
String
,
Object
>
stayRectifiedMap
=
new
HashMap
<>(
16
);
stayRectifiedMap
.
put
(
"name"
,
"未整改"
);
stayRectifiedMap
.
put
(
"value"
,
pieData
.
get
(
"stayRectifiedCount"
));
pieResult
.
add
(
stayRectifiedMap
);
result
.
put
(
"pieData"
,
pieResult
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"隐患统计错误:"
+
e
);
}
return
result
;
}
/**
* 获取两个日期之间的所有月份 (年月)
*
* @param startTime
* @param endTime
* @return:YYYY-MM
*/
private
List
<
String
>
getMonthBetweenDate
(
Date
startTime
,
Date
endTime
){
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM"
);
// 声明保存日期集合
List
<
String
>
list
=
new
ArrayList
<
String
>();
//用Calendar 进行日期比较判断
Calendar
calendar
=
Calendar
.
getInstance
();
while
(
startTime
.
getTime
()<=
endTime
.
getTime
()){
// 把日期添加到集合
list
.
add
(
sdf
.
format
(
startTime
));
// 设置日期
calendar
.
setTime
(
startTime
);
//把日期增加一天
calendar
.
add
(
Calendar
.
MONTH
,
1
);
// 获取增加后的日期
startTime
=
calendar
.
getTime
();
}
return
list
;
}
}
danger-manage-system/src/main/java/com/zehong/system/service/impl/TTrainCourseServiceImpl.java
View file @
55ef20cc
...
...
@@ -89,6 +89,9 @@ public class TTrainCourseServiceImpl implements ITTrainCourseService
@Override
public
Long
insertTTrainCourse
(
TTrainCourse
tTrainCourse
)
{
if
(
tTrainCourse
.
getDuration
()!=
null
){
//分钟转化秒
tTrainCourse
.
setDuration
(
tTrainCourse
.
getDuration
()*
60
);
}
if
(
tTrainCourse
.
getCourseType
()!=
null
){
TTrainPlan
p
=
tTrainPlanMapper
.
selectTTrainPlanById
(
tTrainCourse
.
getCourseType
());
if
(
p
!=
null
){
...
...
@@ -109,8 +112,17 @@ public class TTrainCourseServiceImpl implements ITTrainCourseService
@Override
public
int
updateTTrainCourse
(
TTrainCourse
tTrainCourse
)
{
if
(
tTrainCourse
.
getDuration
()!=
null
){
//分钟转化秒
tTrainCourse
.
setDuration
(
tTrainCourse
.
getDuration
()*
60
);
}
return
tTrainCourseMapper
.
updateTTrainCourse
(
tTrainCourse
);
}
@Override
public
int
updateTTrainUserCourse
(
TTrainUserCourse
tTrainUserCourse
)
{
return
tTrainUserCourseMapper
.
updateTTrainUserCourse
(
tTrainUserCourse
);
}
/**
* 批量删除培训课程
...
...
@@ -143,6 +155,14 @@ public class TTrainCourseServiceImpl implements ITTrainCourseService
@Override
public
List
<
UserCourseVo
>
userCourseList
(
Long
userId
,
Integer
type
){
List
<
UserCourseVo
>
list
=
tTrainCourseMapper
.
userCourseList
(
userId
,
type
,
1
);
for
(
UserCourseVo
v
:
list
){
if
(
v
.
getTestEndTime
()!=
null
&&
v
.
getTestEndTime
().
getTime
()<
new
Date
().
getTime
()){
v
.
setState
(
3
);
}
if
(
v
.
getTestStartTime
()!=
null
&&
v
.
getTestStartTime
().
getTime
()>
new
Date
().
getTime
()){
v
.
setState
(
4
);
}
}
return
list
;
}
...
...
@@ -162,7 +182,7 @@ public class TTrainCourseServiceImpl implements ITTrainCourseService
* @return
*/
@Override
@Transactional
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Map
<
String
,
Object
>
examination
(
Long
userCourseId
,
String
[]
answers
){
TTrainUserCourse
userCourse
=
tTrainUserCourseMapper
.
selectTTrainUserCourseById
(
userCourseId
);
TTrainCourseTopic
topic
=
new
TTrainCourseTopic
();
...
...
@@ -231,4 +251,16 @@ public class TTrainCourseServiceImpl implements ITTrainCourseService
public
List
<
TTrainUserCourse
>
testPersonDetailByCourseId
(
Long
courseId
){
return
tTrainUserCourseMapper
.
testPersonDetailByCourseId
(
courseId
);
}
@Override
public
TTrainUserCourse
getUserCourse
(
Long
userCourseId
){
TTrainUserCourse
userCourse
=
tTrainUserCourseMapper
.
selectTTrainUserCourseById
(
userCourseId
);
TTrainCourse
v
=
tTrainCourseMapper
.
selectTTrainCourseById
(
userCourse
.
getCourseId
());
if
(
v
.
getTestEndTime
()!=
null
&&
v
.
getTestEndTime
().
getTime
()<
new
Date
().
getTime
()){
userCourse
.
setState
(
3
);
}
return
userCourse
;
}
}
danger-manage-system/src/main/resources/mapper/system/TStaningBookMapper.xml
View file @
55ef20cc
...
...
@@ -46,19 +46,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</sql>
<select
id=
"selectTStaningBookList"
parameterType=
"TStaningBook"
resultMap=
"TStaningBookResult"
>
SELECT b.*,s
5.nick
_name AS escalationName,
SELECT b.*,s
1.staff
_name AS escalationName,
s2.`staff_name` AS rectificationName,
s3.`staff_name` AS personLiableName ,
d.`dept_name` AS deptName
FROM t_staning_book b
LEFT JOIN t_staff s1 ON b.`escalation` = s1.`staff_id`
LEFT JOIN sys_user s5 ON b.escalation=s5.user_id
LEFT JOIN t_staff s2 ON b.`rectification` = s2.`staff_id`
LEFT JOIN t_staff s3 ON b.`person_liable` = s3.`staff_id`
LEFT JOIN sys_user s1 ON b.`escalation` = s1.`user_id`
LEFT JOIN sys_user s2 ON b.`rectification` = s2.`user_id`
LEFT JOIN sys_user s3 ON b.`person_liable` = s3.`user_id`
LEFT JOIN sys_dept d ON d.`dept_id` = b.`dept_id`
<where>
<foreach
collection=
"deptList"
item=
"deptId"
open=
"AND
s1
.dept_id in ("
separator=
","
close=
")"
>
<foreach
collection=
"deptList"
item=
"deptId"
open=
"AND
b
.dept_id in ("
separator=
","
close=
")"
>
#{deptId}
</foreach>
<if
test=
"troubleName != null and troubleName != ''"
>
and b.trouble_name like concat('%', #{troubleName}, '%')
</if>
...
...
@@ -197,4 +196,38 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and DATE_SUB(now(), INTERVAL 365 DAY)
<
date(find_time)
</if>
</select>
<select
id=
"hiddenBarStat"
resultType=
"HiddenStatVO"
>
SELECT
IFNULL(DATE_FORMAT(find_time,'%Y-%m'),0) AS month,
IFNULL(count(1),0) hiddenCount,
IFNULL(sum(CASE state WHEN '2' THEN 1 ELSE 0 END),0) AS rectifiedCount
FROM
t_staning_book
WHERE
is_del = 0
<if
test=
"beginTime != null and endTime != null"
>
AND find_time BETWEEN #{ beginTime } AND #{ endTime }
</if>
<if
test=
"troubleLevel != null and troubleLevel != ''"
>
AND trouble_level = #{troubleLevel}
</if>
GROUP BY DATE_FORMAT(find_time,'%Y-%m')
</select>
<select
id=
"hiddenPieStat"
resultType=
"java.util.Map"
>
SELECT
IFNULL(sum(CASE state WHEN '2' THEN 1 ELSE 0 END),0) AS rectifiedCount,
IFNULL(sum(IF(IFNULL(state,'-1') != '2',1,0)),0) AS stayRectifiedCount
FROM
t_staning_book
WHERE
is_del = 0
<if
test=
"beginTime != null and endTime != null"
>
AND find_time BETWEEN #{ beginTime } AND #{ endTime }
</if>
<if
test=
"troubleLevel != null and troubleLevel != ''"
>
AND trouble_level = #{troubleLevel}
</if>
</select>
</mapper>
danger-manage-system/src/main/resources/mapper/system/TTrainCourseMapper.xml
View file @
55ef20cc
...
...
@@ -24,6 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"testStartTime"
column=
"test_start_time"
/>
<result
property=
"testEndTime"
column=
"test_end_time"
/>
<result
property=
"testPersons"
column=
"test_persons"
/>
<result
property=
"duration"
column=
"duration"
/>
</resultMap>
<resultMap
id=
"StatisticsTrainCourseResult"
type=
"StatisticsTrainCourse"
>
...
...
@@ -38,7 +39,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql
id=
"selectTTrainCourseVo"
>
select course_id, course_name, course_type, course_conent, status,personnel_type, release_time, enclosure, video, qualified_num, topic_num, create_time, create_user, is_del, data_kind, test_start_time, test_end_time, test_persons from t_train_course
select course_id, course_name, course_type, course_conent, status,personnel_type, release_time, enclosure, video, qualified_num, topic_num, create_time, create_user, is_del, data_kind, test_start_time, test_end_time, test_persons
,duration
from t_train_course
</sql>
<select
id=
"selectTTrainCourseList"
parameterType=
"TTrainCourse"
resultMap=
"TTrainCourseResult"
>
...
...
@@ -88,6 +89,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"testStartTime != null"
>
test_start_time,
</if>
<if
test=
"testEndTime != null"
>
test_end_time,
</if>
<if
test=
"testPersons != null"
>
test_persons,
</if>
<if
test=
"duration != null"
>
duration,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"courseName != null"
>
#{courseName},
</if>
...
...
@@ -107,6 +110,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"testStartTime != null"
>
#{testStartTime},
</if>
<if
test=
"testEndTime != null"
>
#{testEndTime},
</if>
<if
test=
"testPersons != null"
>
#{testPersons},
</if>
<if
test=
"duration != null"
>
#{duration},
</if>
</trim>
</insert>
...
...
@@ -130,6 +135,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"testStartTime != null"
>
test_start_time = #{testStartTime},
</if>
<if
test=
"testEndTime != null"
>
test_end_time = #{testEndTime},
</if>
<if
test=
"testPersons != null"
>
test_persons = #{testPersons},
</if>
<if
test=
"duration != null"
>
duration = #{duration},
</if>
</trim>
where course_id = #{courseId}
</update>
...
...
@@ -151,8 +157,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</foreach>
</insert>
<select
id=
"userCourseList"
resultType=
"com.zehong.system.domain.vo.UserCourseVo"
>
SELECT uc.user_course_id AS userCourseId,uc.state ,uc.examination_time AS examinationTime,
uc.`examination_result` AS examinationResult,uc.`create_time` AS createTime,
SELECT uc.user_course_id AS userCourseId,uc.state ,uc.examination_time AS examinationTime,
uc.train_state AS trainState,
uc.`examination_result` AS examinationResult,uc.`create_time` AS createTime,
c.test_start_time as testStartTime,c.test_end_time as testEndTime,
c.`course_name` AS courseName, c.`topic_num` AS topicNum,c.`release_time` AS releaseTime,c.data_kind as dataKind,c.personnel_type as personnelType,
p.`plan_name` AS courseType,c.course_id as courseId,c.qualified_num as qualifiedNum
FROM t_train_user_course uc
...
...
danger-manage-system/src/main/resources/mapper/system/TTrainUserCourseMapper.xml
View file @
55ef20cc
...
...
@@ -16,10 +16,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"createUser"
column=
"create_user"
/>
<result
property=
"staffName"
column=
"staff_name"
/>
<result
property=
"deptName"
column=
"dept_name"
/>
<result
property=
"finishDuration"
column=
"finish_duration"
/>
<result
property=
"trainState"
column=
"train_state"
/>
</resultMap>
<sql
id=
"selectTTrainUserCourseVo"
>
select user_course_id, user_id, course_id, state, examination_time, personnel_type,examination_result, create_time, create_user from t_train_user_course
select user_course_id, user_id, course_id, state, examination_time, personnel_type,examination_result, create_time, create_user
,finish_duration,train_state
from t_train_user_course
</sql>
<select
id=
"selectTTrainUserCourseList"
parameterType=
"TTrainUserCourse"
resultMap=
"TTrainUserCourseResult"
>
...
...
@@ -50,6 +52,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"examinationResult != null"
>
examination_result,
</if>
<if
test=
"createTime != null"
>
create_time,
</if>
<if
test=
"createUser != null"
>
create_user,
</if>
<if
test=
"finishDuration != null"
>
finish_duration,
</if>
<if
test=
"trainState != null"
>
train_state,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"userId != null"
>
#{userId},
</if>
...
...
@@ -60,6 +64,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"examinationResult != null"
>
#{examinationResult},
</if>
<if
test=
"createTime != null"
>
#{createTime},
</if>
<if
test=
"createUser != null"
>
#{createUser},
</if>
<if
test=
"finishDuration != null"
>
#{finishDuration},
</if>
<if
test=
"trainState != null"
>
#{trainState},
</if>
</trim>
</insert>
...
...
@@ -74,6 +80,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"examinationResult != null"
>
examination_result = #{examinationResult},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"createUser != null"
>
create_user = #{createUser},
</if>
<if
test=
"finishDuration != null"
>
finish_duration = #{finishDuration},
</if>
<if
test=
"trainState != null"
>
train_state = #{trainState},
</if>
</trim>
where user_course_id = #{userCourseId}
</update>
...
...
@@ -94,7 +102,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
sys.staff_name,
d.dept_name,
train.examination_result,
train.state
train.state
,train.examination_time
FROM
t_train_user_course train
LEFT JOIN sys_user sys ON train.user_id = sys.user_id
...
...
danger-manage-web/src/api/educationPlanExam/lessonsProgram.js
View file @
55ef20cc
...
...
@@ -34,6 +34,14 @@ export function getLessonById(id) {
method
:
'get'
,
})
}
//用户课程状态
export
function
getUserLessonById
(
query
)
{
return
request
({
url
:
'system/course/userCourse'
,
method
:
'get'
,
params
:
query
})
}
// 添加课程
export
function
addLessons
(
data
)
{
return
request
({
...
...
@@ -50,7 +58,14 @@ export function changeLesson(data) {
data
:
data
})
}
// // 修改用户课程
export
function
changeUserLesson
(
data
)
{
return
request
({
url
:
'/system/course/editUserCourse'
,
method
:
'put'
,
data
:
data
})
}
// 发布课程
export
function
issue
(
query
)
{
return
request
({
...
...
danger-manage-web/src/api/system/book.js
View file @
55ef20cc
...
...
@@ -50,4 +50,13 @@ export function exportBook(query) {
method
:
'get'
,
params
:
query
})
}
\ No newline at end of file
}
//隐患统计图
export
function
hiddenStat
(
query
)
{
return
request
({
url
:
'/system/book/hiddenStat'
,
method
:
'get'
,
params
:
query
})
}
danger-manage-web/src/components/FileUpload/index.vue
View file @
55ef20cc
...
...
@@ -230,6 +230,7 @@
},
},
created
()
{
console
.
log
(
this
.
fileArr
);
// this.fileList = this.list;
this
.
addShow
=
this
.
fileArr
.
length
>
0
?
true
:
false
;
},
...
...
danger-manage-web/src/views/contractor/contractorPerson/index.vue
View file @
55ef20cc
...
...
@@ -462,8 +462,8 @@ export default {
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(
function
()
{
row
.
isDel
=
"1"
;
return
updateContractorPerson
(
ids
);
row
.
isDel
=
"1"
;
return
updateContractorPerson
(
row
);
}).
then
(()
=>
{
this
.
getList
();
this
.
msgSuccess
(
"删除成功"
);
...
...
danger-manage-web/src/views/educationPlanExam/lessonsProgram/components/AddQuestion.vue
View file @
55ef20cc
...
...
@@ -77,7 +77,7 @@
</div>
</el-form-item>
<el-form-item
<
!--
<
el-form-item
class=
"noAttr"
:label=
"`选项$
{form.questions.length + 1}`"
prop=""
...
...
@@ -99,17 +99,16 @@
:class=
"
{ active: answerNum === form.questions.length }"
>
设为正确答案
</div>
</div>
-->
<div
style=
"padding-left:30px"
>
<el-button
size=
"mini"
type=
"primary"
@
click
.
prevent=
"add(addValue)"
>
新增选项
</el-button
>
</div>
<el-button
size=
"mini"
type=
"primary"
@
click
.
prevent=
"add(addValue)"
>
新增
</el-button
>
</div>
<!--
</div>
</div>
</el-form-item>
</el-form-item>
-->
</div>
</el-form>
</div>
...
...
@@ -143,7 +142,7 @@ export default {
return
{
form
:
{
topicTitle
:
""
,
questions
:
[{
value
:
""
},
{
value
:
""
}
,
{
value
:
""
}
],
questions
:
[{
value
:
""
},
{
value
:
""
}],
},
answerNum
:
null
,
addValue
:
""
,
...
...
@@ -176,11 +175,11 @@ export default {
getQuestion
()
{
getQuestion
({
courseId
:
this
.
courseId
}).
then
((
res
)
=>
{
// 如果是修改 就是原来的值,如果不是,就是总数+1
console
.
log
(
res
)
console
.
log
(
res
)
;
if
(
this
.
topicId
)
{
res
.
rows
.
forEach
((
item
,
index
)
=>
{
if
(
item
.
topicId
==
this
.
topicId
)
{
this
.
questionNextNum
=
index
+
1
;
this
.
questionNextNum
=
index
+
1
;
}
});
}
else
{
...
...
danger-manage-web/src/views/educationPlanExam/lessonsProgram/components/Dia.vue
View file @
55ef20cc
...
...
@@ -11,14 +11,14 @@
class=
"add-lession"
:title=
"title"
:visible
.
sync=
"visible"
width=
"10
0
0px"
width=
"10
5
0px"
:close-on-click-modal=
"false"
:close-on-press-escape=
"false"
:before-close=
"dialogCancel"
@
closed=
"closeFinished"
destroy-on-close
>
<div
v-if=
"visible"
ref=
"myBody"
class=
"body"
>
<div
v-if=
"visible"
ref=
"myBody"
class=
"body
"
>
<transition
name=
"fade"
mode=
"out-in"
>
<component
:is=
"currentComponent"
...
...
danger-manage-web/src/views/educationPlanExam/lessonsProgram/components/Lesson.vue
View file @
55ef20cc
...
...
@@ -17,9 +17,28 @@
>
<div
class=
"top flex"
>
<el-form-item
label=
"课程标题"
prop=
"courseName"
>
<el-input
style=
"width:
5
00px"
v-model=
"form.courseName"
></el-input>
<el-input
style=
"width:
4
00px"
v-model=
"form.courseName"
></el-input>
</el-form-item>
<!--
<el-form-item
label=
"培训计划"
prop=
"courseType"
>
-->
<!--
<el-select-->
<!--v-model="form.courseType"-->
<!--placeholder="请选择培训计划"-->
<!--clearable-->
<!--size="small"-->
<!-->-->
<!--
<el-option-->
<!--v-for="course in courseOptions"-->
<!--:key="course.planId"-->
<!--:label="course.planName"-->
<!--:value="course.planId"-->
<!--/>-->
<!--
</el-select>
-->
<!--
</el-form-item>
-->
</div>
<div
class=
"flex"
>
<el-form-item
label=
"培训计划"
prop=
"courseType"
>
<el-select
v-model=
"form.courseType"
...
...
@@ -35,8 +54,31 @@
/>
</el-select>
</el-form-item>
<el-form-item
label=
"培训时长"
prop=
"duration"
style=
"margin-left: 55px"
>
<el-input
style=
"width: 220px"
placeholder=
"分钟"
type=
"number"
v-model=
"form.duration"
></el-input>
</el-form-item>
</div>
<div
class=
"flex"
>
<el-form-item
label=
"开始时间"
prop=
"testStartTime"
>
<el-date-picker
style=
"margin-right: 50px"
v-model=
"form.testStartTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
type=
"datetime"
placeholder=
"选择日期时间"
default-time=
"00:00:00"
/>
</el-form-item>
<el-form-item
label=
"结束时间"
prop=
"testEndTime"
>
<el-date-picker
v-model=
"form.testEndTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
type=
"datetime"
placeholder=
"选择日期时间"
default-time=
"00:00:00"
/>
</el-form-item>
</div>
<!--
</div>
-->
<el-form-item
label=
"课程内容"
prop=
"courseConent"
>
<Editor
v-model=
"form.courseConent"
:min-height=
"192"
/>
...
...
@@ -111,7 +153,7 @@ export default {
readOnly
:
false
,
rules
:
{
courseName
:
[
{
required
:
true
,
trigger
:
"blur"
,
message
:
"课程
名称
不能为空"
},
{
required
:
true
,
trigger
:
"blur"
,
message
:
"课程
标题
不能为空"
},
],
courseType
:
[
{
required
:
true
,
trigger
:
"change"
,
message
:
"课程类型不能为空"
},
...
...
@@ -123,6 +165,15 @@ export default {
enclosure
:
[
{
required
:
true
,
trigger
:
"blur"
,
message
:
"附件不能为空"
},
],
duration
:
[
{
required
:
true
,
trigger
:
"blur"
,
message
:
"培训时长不能为空"
},
],
testStartTime
:
[
{
required
:
true
,
trigger
:
"blur"
,
message
:
"开始时间不能为空"
},
],
testEndTime
:
[
{
required
:
true
,
trigger
:
"blur"
,
message
:
"结束时间不能为空"
},
],
},
};
},
...
...
@@ -153,7 +204,7 @@ export default {
getLessonById
(
this
.
courseId
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
const
data
=
res
.
data
;
const
{
courseName
,
courseType
,
courseConent
,
video
,
enclosure
}
=
const
{
courseName
,
courseType
,
courseConent
,
video
,
enclosure
,
duration
,
testStartTime
,
testEndTime
}
=
data
;
this
.
form
=
{
courseName
,
...
...
@@ -161,6 +212,9 @@ export default {
courseConent
,
video
,
enclosure
,
duration
,
testStartTime
,
testEndTime
};
this
.
fileListVideo
=
[
{
...
...
@@ -174,6 +228,7 @@ export default {
url
:
uploadfile
,
},
];
console
.
log
(
"--"
,
this
.
fileListFile
);
}
});
},
...
...
@@ -252,7 +307,7 @@ export default {
.form-wrapper
{
padding-top
:
22px
;
width
:
100%
;
height
:
5
50px
;
height
:
6
50px
;
overflow
:
hidden
;
// padding-bottom: 10px;
margin-bottom
:
20px
;
...
...
danger-manage-web/src/views/educationPlanExam/myLessons/CheckLesson/index.vue
View file @
55ef20cc
...
...
@@ -9,8 +9,10 @@
<
template
>
<div
class=
"check-lession flex"
>
<div
class=
"top-title"
>
<div
class=
"item"
>
<div
class=
"item
allone
"
>
<div
class=
"text"
>
{{
state
!=
2
?
"学习课程"
:
"查看课程"
}}
</div>
<div
v-if=
"userlessonData.state!=3"
class=
"gotime"
>
{{
minute
}}
:
{{
calculation
(
second
)
}}
/
{{
parseInt
(
lessonData
.
duration
/
60
)
}}
:
{{
calculation
(
lessonData
.
duration
%
60
)
}}
</div>
<div
v-if=
"userlessonData.state==3"
style=
"background: red"
class=
"gotime"
>
已过期
</div>
</div>
<div
class=
"bt flex fz14 border-bottom"
>
...
...
@@ -90,7 +92,7 @@
</div>
<div
class=
"btn-wrapper flex"
>
<el-button
@
click=
"againQuesstion"
type=
"primary"
>
{{
<el-button
v-if=
"this.finish"
@
click=
"againQuesstion"
type=
"primary"
>
{{
state
==
2
||
state
==
1
?
"重新考试"
:
"开始考试"
}}
</el-button>
<el-button
@
click=
"$router.back()"
type=
"primary"
plain
>
取消
</el-button>
...
...
@@ -100,6 +102,7 @@
v-if=
"answerOpen"
:courseId=
"courseId"
:userCourseId=
"userCourseId"
:courseName=
"lessonData.courseName"
:visible
.
sync=
"answerOpen"
@
jj=
"jj"
/>
...
...
@@ -110,7 +113,7 @@
</
template
>
<
script
>
import
{
getLessonById
}
from
"@/api/educationPlanExam/lessonsProgram"
;
import
{
getLessonById
,
getUserLessonById
,
changeUserLesson
}
from
"@/api/educationPlanExam/lessonsProgram"
;
import
{
getPlanList
}
from
"@/api/educationPlanExam/trainingProgram"
;
import
AnswerLesson
from
"../components/AnswerLesson"
;
...
...
@@ -121,13 +124,18 @@ export default {
},
data
()
{
return
{
finish
:
false
,
minute
:
0
,
second
:
0
,
playerOptions
:
{
aspectRatio
:
"16:9"
,
},
dingshi
:
null
,
// 课程类型
courseOptions
:
[],
lessonData
:
{},
userlessonData
:{},
// 课程id
courseId
:
0
,
// 用户学习id
...
...
@@ -145,6 +153,11 @@ export default {
this
.
getPlanList
();
this
.
getLessonById
();
},
destroyed
(){
console
.
log
(
'销毁'
);
this
.
updateUserCourse
();
clearInterval
(
this
.
dingshi
);
},
methods
:
{
getPlanList
()
{
getPlanList
().
then
((
res
)
=>
{
...
...
@@ -172,9 +185,53 @@ export default {
getLessonById
(
courseId
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
lessonData
=
res
.
data
;
console
.
log
(
this
.
lessonData
);
this
.
changeVideo
(
this
.
lessonData
.
video
);
}
});
getUserLessonById
({
"userCourseId"
:
userCourseId
}).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
userlessonData
=
res
.
data
;
this
.
second
=
this
.
userlessonData
.
finishDuration
%
60
;
this
.
minute
=
parseInt
(
this
.
userlessonData
.
finishDuration
/
60
);
if
(
this
.
userlessonData
.
state
!=
3
){
this
.
dingshi
=
setInterval
(
this
.
goTime
,
1000
);
}
}
});
},
goTime
(){
if
(
this
.
userlessonData
.
finishDuration
>=
this
.
lessonData
.
duration
){
console
.
log
(
"结束"
);
clearInterval
(
this
.
dingshi
);
this
.
userlessonData
.
trainState
=
1
;
this
.
userlessonData
.
finishDuration
=
this
.
lessonData
.
duration
;
this
.
updateUserCourse
();
}
else
{
this
.
userlessonData
.
finishDuration
=
this
.
userlessonData
.
finishDuration
+
1
;
//console.log(this.userlessonData.finishDuration);
this
.
second
=
this
.
userlessonData
.
finishDuration
%
60
;
this
.
minute
=
parseInt
(
this
.
userlessonData
.
finishDuration
/
60
);
if
(
this
.
userlessonData
.
finishDuration
%
60
==
0
){
this
.
updateUserCourse
();
}
}
},
updateUserCourse
(){
this
.
userlessonData
.
state
=
null
;
changeUserLesson
(
this
.
userlessonData
).
then
(
response
=>
{
if
(
this
.
userlessonData
.
finishDuration
==
this
.
lessonData
.
duration
){
this
.
finish
=
true
;
}
})
},
calculation
(
num
){
if
(
num
<
10
){
num
=
"0"
+
num
;
}
return
num
;
},
changeVideo
(
src
)
{
this
.
playerOptions
=
{
...
...
@@ -248,12 +305,6 @@ export default {
};
xhr
.
send
();
},
openXslx
(
url
,
name
)
{
// window.open(`https://view.xdocin.com/view?src=${url}`);
console
.
log
(
url
)
this
.
ky
=
`https://view.xdocin.com/view?src=
${
url
}
`
;
this
.
iframeVisible
=
true
;
},
},
};
</
script
>
...
...
@@ -303,4 +354,18 @@ export default {
}
}
}
.allone
{
display
:flex
;
flex-direction
:row
;
justify-content
:flex-start
;
}
.gotime
{
background
:
#1c84c6
;
width
:
80px
;
text-align
:
center
;
line-height
:
22px
;
color
:
white
;
margin-left
:
40px
;
border-radius
:
10px
;
}
</
style
>
danger-manage-web/src/views/educationPlanExam/myLessons/components/AnswerLesson.vue
View file @
55ef20cc
...
...
@@ -12,7 +12,7 @@
>
<div
ref=
"myBody"
class=
"body"
v-loading=
"loading"
>
<div
class=
"text"
>
<div
class=
"float"
>
炼铁车间炉前工安全生产规范课程
</div>
<div
class=
"float"
>
{{
courseName
}}
</div>
</div>
<transition
name=
"fade"
mode=
"out-in"
>
<div
:key=
"goodJobShow"
>
...
...
@@ -92,6 +92,9 @@ export default {
userCourseId
:
{
type
:
[
Number
,
String
],
},
courseName
:{
type
:
[
String
,
String
]
},
courseId
:
{
type
:
[
Number
,
String
],
},
...
...
danger-manage-web/src/views/educationPlanExam/myLessons/components/LearnAfter.vue
View file @
55ef20cc
...
...
@@ -78,7 +78,7 @@ export default {
},
computed
:
{
afterList
()
{
return
this
.
list
.
filter
((
item
)
=>
item
.
state
>
1
);
return
this
.
list
.
filter
((
item
)
=>
item
.
state
==
2
);
},
},
created
()
{
...
...
danger-manage-web/src/views/educationPlanExam/myLessons/components/LearnBefore.vue
View file @
55ef20cc
...
...
@@ -77,7 +77,7 @@ export default {
},
computed
:
{
beforeList
()
{
return
this
.
list
.
filter
((
item
)
=>
item
.
state
<
2
);
return
this
.
list
.
filter
((
item
)
=>
item
.
state
!=
2
);
},
},
created
()
{
...
...
danger-manage-web/src/views/educationPlanExam/myLessons/components/LearnItem.vue
View file @
55ef20cc
...
...
@@ -16,8 +16,8 @@
</div>
<div
class=
"time"
>
发布时间:
{{
itemData
.
createTime
}}
</div>
<div
class=
"bottom flex"
>
<div
@
click=
"click"
class=
"btn"
:class=
"
{ again: yesOrNo }">
{{
yesOrNo
?
"重新考试"
:
"开始学习"
}}
<div
v-if=
"!itemData.state===4 || !(itemData.state===3 && itemData.dataKind==='1')"
@
click=
"click"
class=
"btn"
:class=
"
{ again: yesOrNo }">
{{
yesOrNo
}}
</div>
</div>
<div
...
...
@@ -25,16 +25,30 @@
:class=
"
{
no: itemData.state === 1,
yes: itemData.state === 2,
ygq:itemData.state === 3,
wks:itemData.state === 4,
}"
>
{{
state
[
itemData
.
state
]
}}
</div>
<AnswerLesson
v-if=
"answerOpen"
:courseId=
"itemData.courseId"
:userCourseId=
"itemData.userCourseId"
:courseName =
"itemData.courseName"
:visible
.
sync=
"answerOpen"
@
jj=
"jj"
/>
</div>
</
template
>
<
script
>
import
AnswerLesson
from
"./AnswerLesson"
;
export
default
{
name
:
""
,
components
:
{
AnswerLesson
,
},
props
:
{
itemData
:
{
type
:
Object
,
...
...
@@ -50,14 +64,52 @@ export default {
},
computed
:
{
yesOrNo
()
{
return
this
.
itemData
.
state
==
1
||
this
.
itemData
.
state
==
2
;
console
.
log
(
this
.
itemData
)
if
(
this
.
itemData
.
dataKind
===
"0"
){
if
(
this
.
itemData
.
state
===
0
){
return
'开始学习'
}
else
if
(
this
.
itemData
.
state
===
1
){
return
'重新考试'
}
else
if
(
this
.
itemData
.
state
===
2
){
return
'重新考试'
}
else
if
(
this
.
itemData
.
state
===
3
){
return
'开始学习'
}
else
if
(
this
.
itemData
.
state
===
4
){
return
'还未开始'
}
}
else
{
if
(
this
.
itemData
.
state
===
0
){
return
'开始考试'
}
else
if
(
this
.
itemData
.
state
===
1
){
return
'重新考试'
}
else
if
(
this
.
itemData
.
state
===
2
){
return
'重新考试'
}
else
if
(
this
.
itemData
.
state
===
3
){
return
'开始学习'
}
else
if
(
this
.
itemData
.
state
===
4
){
return
'还未开始'
}
}
},
},
data
()
{
return
{};
return
{
answerOpen
:
false
};
},
methods
:
{
jj
(
e
)
{
if
(
e
.
answer
>=
e
.
qualifiedNum
)
{
this
.
fenshu
=
Math
.
floor
((
e
.
answer
/
e
.
topicNum
)
*
100
);
this
.
state
=
2
;
}
},
click
()
{
if
(
this
.
itemData
.
dataKind
===
'1'
){
this
.
answerOpen
=
true
;
return
;
}
const
{
courseId
,
userCourseId
,
state
,
examinationResult
,
topicNum
}
=
this
.
itemData
;
// if (!this.yesOrNo) {
...
...
@@ -73,6 +125,7 @@ export default {
path
:
"myLessons/CheckLesson"
,
query
:
{
courseId
,
userCourseId
,
state
,
fenshu
},
});
// } else {
// this.$emit("examination", { courseId, userCourseId });
// }
...
...
@@ -161,6 +214,12 @@ export default {
&
.yes
{
background
:
#3cc426
!
important
;
}
&
.ygq
{
background
:
red
!
important
;
}
&
.wks
{
background
:
yellow
!
important
;
}
}
}
</
style
>
danger-manage-web/src/views/educationPlanExam/myLessons/components/Left.vue
View file @
55ef20cc
...
...
@@ -38,9 +38,11 @@ export default {
currentTabComponent
:
LearnBefore
,
list
:[],
state
:{
"0"
:
'未
学习
'
,
"0"
:
'未
完成
'
,
"1"
:
'未通过'
,
"2"
:
"通过"
"2"
:
"已完成"
,
"3"
:
"已过期"
,
"4"
:
"未开始"
},
};
},
...
...
danger-manage-web/src/views/educationPlanExam/myLessons/index.vue
View file @
55ef20cc
...
...
@@ -18,6 +18,7 @@
v-if=
"answerOpen"
:courseId=
"courseId"
:userCourseId=
"userCourseId"
:courseName =
"courseName"
:visible
.
sync=
"answerOpen"
/>
</div>
...
...
@@ -41,6 +42,7 @@ export default {
answerOpen
:
false
,
courseId
:
""
,
userCourseId
:
""
,
courseName
:
""
,
list
:
[],
};
},
...
...
@@ -57,6 +59,7 @@ export default {
examination
(
e
)
{
this
.
courseId
=
e
.
courseId
;
this
.
userCourseId
=
e
.
userCourseId
;
this
.
courseName
=
e
.
courseName
;
// this.answerOpen=true;
},
},
...
...
danger-manage-web/src/views/educationPlanExam/testStat/index.vue
View file @
55ef20cc
...
...
@@ -94,6 +94,7 @@
<el-table-column
label=
"序号"
width=
'100'
align=
"center"
prop=
"detailNum"
/>
<el-table-column
label=
"考试人员"
align=
"center"
prop=
"staffName"
/>
<el-table-column
label=
"所属部门"
align=
"center"
prop=
"deptName"
/>
<el-table-column
label=
"考试时间"
align=
"center"
prop=
"examinationTime"
/>
<el-table-column
label=
"答对个数"
align=
"center"
prop=
"examinationResult"
/>
<el-table-column
label=
"考试结果"
align=
"center"
prop=
"state"
>
<
template
slot-scope=
"scope"
>
...
...
danger-manage-web/src/views/educationPlanExam/textPaper/components/AddQuestion.vue
View file @
55ef20cc
...
...
@@ -77,7 +77,7 @@
</div>
</el-form-item>
<el-form-item
<
!--
<
el-form-item
class=
"noAttr"
:label=
"`选项$
{form.questions.length + 1}`"
prop=""
...
...
@@ -99,17 +99,16 @@
:class=
"
{ active: answerNum === form.questions.length }"
>
设为正确答案
</div>
</div>
-->
<div
style=
"padding-left:30px"
>
<el-button
size=
"mini"
type=
"primary"
@
click
.
prevent=
"add(addValue)"
>
新增选项
</el-button
>
</div>
<el-button
size=
"mini"
type=
"primary"
@
click
.
prevent=
"add(addValue)"
>
新增
</el-button
>
</div>
<!--
</div>
</div>
</el-form-item>
</el-form-item>
-->
</div>
</el-form>
</div>
...
...
@@ -143,7 +142,7 @@ export default {
return
{
form
:
{
topicTitle
:
""
,
questions
:
[{
value
:
""
},
{
value
:
""
}
,
{
value
:
""
}
],
questions
:
[{
value
:
""
},
{
value
:
""
}],
},
answerNum
:
null
,
addValue
:
""
,
...
...
danger-manage-web/src/views/educationPlanExam/trainingProgram/components/Lesson.vue
View file @
55ef20cc
...
...
@@ -19,17 +19,17 @@
<el-form-item
label=
"计划名称"
prop=
"bankName"
>
<el-input
style=
"width: 500px"
v-model=
"form.bankName"
></el-input>
</el-form-item>
<
el-form-item
label=
"人员类型"
prop=
"personnelType"
>
<
el-select
v-model=
"form.personnelType"
placeholder=
"请选择"
>
<
el-option
v-for=
"item in options"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
<
/el-option
>
<
/el-select
>
<
/el-form-item
>
<
!--
<el-form-item
label=
"人员类型"
prop=
"personnelType"
>
--
>
<
!--
<el-select
v-model=
"form.personnelType"
placeholder=
"请选择"
>
--
>
<
!--
<el-option-->
<!--v-for="item in options"-->
<!--:key="item.value"-->
<!--:label="item.label"-->
<!--:value="item.value"-->
<!-->--
>
<
!--
</el-option>
--
>
<
!--
</el-select>
--
>
<
!--
</el-form-item>
--
>
<!--
<el-form-item
label=
"开始时间"
prop=
"releaseTime"
>
-->
<!--
<el-date-picker-->
<!--v-model="form.startTime"-->
...
...
danger-manage-web/src/views/system/book/index.vue
View file @
55ef20cc
...
...
@@ -149,7 +149,7 @@
<el-row
:gutter=
"24"
class=
"mb8"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"隐患类型"
prop=
"troubleType"
width=
"50%"
>
<el-select
v-model=
"form.troubleType"
placeholder=
"请选择隐患类型"
@
change=
"changeType"
>
<el-select
v-model=
"form.troubleType"
placeholder=
"请选择隐患类型"
>
<el-option
v-for=
"dict in troubleTypeOptions"
:key=
"dict.dictValue"
...
...
@@ -161,7 +161,7 @@
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"隐患等级"
prop=
"troubleLevel"
>
<el-select
v-model=
"form.troubleLevel"
placeholder=
"请选择隐患等级"
>
<el-select
v-model=
"form.troubleLevel"
placeholder=
"请选择隐患等级"
@
change=
"changeType"
>
<el-option
v-for=
"dict in troubleLevelOptions"
:key=
"dict.dictValue"
...
...
@@ -367,7 +367,7 @@
<el-row
:gutter=
"24"
class=
"mb8"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"隐患类型"
prop=
"troubleType"
width=
"50%"
>
<el-select
v-model=
"form.troubleType"
placeholder=
"请选择隐患类型"
disabled
@
change=
"changeType"
>
<el-select
v-model=
"form.troubleType"
placeholder=
"请选择隐患类型"
disabled
>
<el-option
v-for=
"dict in troubleTypeOptions"
:key=
"dict.dictValue"
...
...
@@ -433,7 +433,16 @@
<el-image
:zIndex=
"9999"
:ref=
"'a'+form.id"
:src=
"form.picture"
v-show=
"false"
:preview-src-list=
"[form.picture]"
v-if=
"form.picture != '' && form.picture != null"
></el-image>
</el-form-item>
<el-form-item
label=
"隐患附件"
prop=
"enclosure"
v-if=
"zhong==1"
>
<el-input
v-model=
"form.enclosure"
placeholder=
"请输入隐患附件"
/>
<!--<el-input v-model="form.enclosure" placeholder="请输入隐患附件" />-->
<span
style=
"padding-top: 10px;"
class=
"dbtn"
@
click=
"checkFile(form.enclosure)"
v-if=
"form.enclosure != null && form.enclosure!=''"
>
<i
class=
"el-icon el-icon-view"
></i>
查看/下载
</span>
<span
v-else
>
-
</span>
</el-form-item>
<el-row
:gutter=
"24"
class=
"mb8"
>
<el-col
:span=
"12"
>
...
...
@@ -467,12 +476,12 @@
</el-form-item>
<el-divider
content-position=
"left"
><i
class=
"el-icon-info"
></i><span
class=
"boxx"
>
整改信息
</span></el-divider>
<
el-form-item
label=
"投入费用"
prop=
"investmentCost"
v-if=
"zhong==1"
>
<
el-input
v-model=
"form.investmentCost"
placeholder=
"请输入投入费用"
disabled
/
>
<
/el-form-item
>
<
el-form-item
label=
"投入物资"
prop=
"investmentMaterial"
v-if=
"zhong==1"
>
<
el-input
v-model=
"form.investmentMaterial"
placeholder=
"请输入投入物资"
disabled
/
>
<
/el-form-item
>
<
!--<el-form-item label="投入费用" prop="investmentCost" v-if="zhong==1">--
>
<
!--<el-input v-model="form.investmentCost" placeholder="请输入投入费用" disabled/>--
>
<
!--</el-form-item>--
>
<
!--<el-form-item label="投入物资" prop="investmentMaterial" v-if="zhong==1">--
>
<
!--<el-input v-model="form.investmentMaterial" placeholder="请输入投入物资" disabled/>--
>
<
!--</el-form-item>--
>
<el-row
:gutter=
"24"
class=
"mb8"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"整改人"
prop=
"rectification"
>
...
...
@@ -624,13 +633,15 @@
<el-form-item
label=
"隐患附件"
prop=
"enclosure"
v-if=
"zhong==1"
>
<!--<el-input v-model="form.enclosure" placeholder="请输入隐患附件" />-->
<FileUpload
listType=
"picture"
@
resFun=
"getFileInfo($event,3)"
@
remove=
"listRemove($event,3)"
:fileArr=
"fileList3"
/>
<el-input
v-show=
"false"
disabled
v-model=
"form.enclosure"
></el-input>
<span
style=
"padding-top: 10px;"
class=
"dbtn"
@
click=
"checkFile(form.enclosure)"
v-if=
"form.enclosure != null && form.enclosure!=''"
>
<i
class=
"el-icon el-icon-view"
></i>
查看/下载
</span>
<span
v-else
>
-
</span>
</el-form-item>
<el-row
:gutter=
"24"
class=
"mb8"
>
<el-col
:span=
"12"
>
...
...
@@ -716,7 +727,7 @@
<el-input
type=
"textarea"
v-model=
"form.rectificationText"
placeholder=
"请输入整改描述"
:disabled=
"disabled"
/>
</el-form-item>
<el-divider
content-position=
"left"
><i
class=
"el-icon-info"
></i><span
class=
"boxx"
>
复查信息
</span></el-divider>
<el-divider
content-position=
"left"
v-if=
"disabled"
><i
class=
"el-icon-info"
></i><span
class=
"boxx"
>
复查信息
</span></el-divider>
<el-row
:gutter=
"24"
class=
"mb8"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"复查人"
prop=
"personLiable"
v-if=
"disabled"
>
...
...
@@ -731,12 +742,12 @@
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"复查时间"
prop=
"inspectTime"
>
<el-form-item
label=
"复查时间"
prop=
"inspectTime"
v-if=
"disabled"
>
<el-date-picker
clearable
size=
"small"
v-model=
"form.inspectTime"
type=
"datetime"
value-format=
"yyyy-MM-dd HH:mm:ss"
placeholder=
"选择复查时间"
v-if=
"disabled"
>
placeholder=
"选择复查时间"
>
</el-date-picker>
</el-form-item>
</el-col>
...
...
@@ -900,6 +911,9 @@ export default {
this
.
loading
=
false
;
});
},
checkFile
(
url
)
{
window
.
open
(
url
,
'_blank'
);
},
/** 查询员工列表 */
getStaffList
()
{
this
.
loading
=
true
;
...
...
@@ -1016,7 +1030,7 @@ export default {
const
bookId
=
row
.
bookId
||
this
.
ids
getBook
(
bookId
).
then
(
response
=>
{
this
.
form
=
response
.
data
;
if
(
this
.
form
.
trouble
Type
==
2
){
if
(
this
.
form
.
trouble
Level
==
1
){
this
.
zhong
=
1
}
else
{
this
.
zhong
=
0
...
...
@@ -1049,7 +1063,7 @@ export default {
const
bookId
=
row
.
bookId
||
this
.
ids
getBook
(
bookId
).
then
(
response
=>
{
this
.
form
=
response
.
data
;
if
(
this
.
form
.
trouble
Type
==
2
){
if
(
this
.
form
.
trouble
Level
==
1
){
this
.
zhong
=
1
}
else
{
this
.
zhong
=
0
...
...
@@ -1082,6 +1096,9 @@ export default {
const
bookId
=
row
.
bookId
||
this
.
ids
getBook
(
bookId
).
then
(
response
=>
{
this
.
form
=
response
.
data
;
if
(
this
.
form
.
troubleLevel
==
1
){
this
.
zhong
=
1
}
if
(
this
.
form
.
picture
)
{
this
.
fileList
.
push
({
url
:
this
.
form
.
picture
,
...
...
@@ -1143,10 +1160,10 @@ export default {
console
.
log
(
"==="
,
row
.
id
);
},
changeType
(){
console
.
log
(
this
.
form
.
trouble
Type
);
if
(
this
.
form
.
trouble
Type
==
3
){
console
.
log
(
this
.
form
.
trouble
Level
);
if
(
this
.
form
.
trouble
Level
==
4
){
this
.
zhong
=
2
;
}
else
if
(
this
.
form
.
trouble
Type
==
2
){
}
else
if
(
this
.
form
.
trouble
Level
==
1
){
this
.
zhong
=
1
;
}
else
{
this
.
zhong
=
0
;
...
...
@@ -1157,7 +1174,7 @@ export default {
console
.
log
(
this
.
form
);
if
(
this
.
fast
){
this
.
form
.
state
=
2
;
}
else
if
(
this
.
form
.
trouble
Type
==
3
){
}
else
if
(
this
.
form
.
trouble
Level
==
4
){
this
.
form
.
state
=
1
;
}
this
.
$refs
[
"form"
].
validate
(
valid
=>
{
...
...
@@ -1245,6 +1262,17 @@ export default {
margin-bottom
:
10px
;
}
.dbtn
{
display
:
inline-block
;
line-height
:
normal
;
padding-left
:
2px
;
padding-right
:
2px
;
cursor
:
pointer
;
border-radius
:
3px
;
border-style
:
solid
;
border-width
:
0
;
color
:
rgb
(
48
,
180
,
107
);
}
.boxx
{
font-size
:
17px
;
font-weight
:
bold
;
...
...
danger-manage-web/src/views/system/hiddenStat/index.vue
0 → 100644
View file @
55ef20cc
<
template
>
<div
class=
"hiddenStat"
>
<el-form
:model=
"queryParams"
:inline=
"true"
label-width=
"100px"
style=
"margin-top: 10px"
>
<el-form-item
label=
"隐患级别"
prop=
"hiddenLevel"
>
<el-select
v-model=
"queryParams.troubleLevel"
placeholder=
"请选择隐患级别"
clearable
>
<el-option
v-for=
"dict in troubleLevelOptions"
:key=
"dict.dictValue"
:label=
"dict.dictLabel"
:value=
"parseInt(dict.dictValue)"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"隐患发现时间"
prop=
"hiddenTime"
>
<el-date-picker
v-model=
"findTime"
value-format=
"yyyy-MM-dd HH:mm:ss"
type=
"datetimerange"
range-separator=
"至"
start-placeholder=
"开始时间"
end-placeholder=
"结束时间"
@
change=
"dateFormat"
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"search"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<div
class=
"stat"
>
<div
id=
"barChar"
:style=
"
{width: '50%', height: '100%'}">
</div>
<div
id=
"pieChar"
:style=
"
{width: '50%', height: '100%'}">
</div>
</div>
</div>
</
template
>
<
script
>
import
{
hiddenStat
}
from
"@/api/system/book"
;
export
default
{
name
:
"index"
,
data
(){
return
{
queryParams
:{
hiddenLevel
:
null
,
beginTime
:
null
,
endTime
:
null
},
monthData
:
[],
hiddenBarData
:
[],
closeHiddenBarData
:
[],
pieData
:
[],
troubleLevelOptions
:
[],
findTime
:
[
new
Date
().
getFullYear
()
+
"-01-01 00:00:00"
,
new
Date
().
getFullYear
()
+
"-12-31 23:59:59"
]
}
},
mounted
(){
this
.
getHiddenData
();
this
.
getDicts
(
"t_trouble_level"
).
then
(
response
=>
{
this
.
troubleLevelOptions
=
response
.
data
;
});
},
methods
:{
//初始化柱状图
initBarEchars
(){
let
echar
=
this
.
$echarts
.
init
(
document
.
getElementById
(
'barChar'
));
let
option
=
{
title
:
{
text
:
"隐患数量统计"
,
left
:
"20"
},
legend
:
{
type
:
"plain"
,
align
:
"left"
,
right
:
"50"
},
xAxis
:
{
type
:
'category'
,
axisLabel
:
{
//x轴文字的配置
show
:
true
,
interval
:
0
,
//使x轴文字显示全
rotate
:
-
270
},
//data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
data
:
this
.
monthData
},
yAxis
:
{
type
:
'value'
,
axisLabel
:
{
interval
:
0
,
},
},
series
:
[
{
name
:
'发现数量'
,
type
:
'bar'
,
//data: [120, 200, 150, 80, 70, 110, 130],
data
:
this
.
hiddenBarData
},
{
name
:
'闭环数量'
,
type
:
'bar'
,
data
:
this
.
closeHiddenBarData
,
/*itemStyle: {
color: "rgba(0, 30, 255, 1)"
}*/
},
]
}
echar
.
setOption
(
option
);
},
//初始化环状图
initPieEchars
(){
let
echar
=
this
.
$echarts
.
init
(
document
.
getElementById
(
'pieChar'
));
let
option
=
{
title
:
{
text
:
"隐患整改率"
,
left
:
"20"
},
tooltip
:
{
trigger
:
'item'
,
formatter
:
'{b}:{c} ({d}%)'
},
legend
:
{
type
:
"plain"
,
align
:
"left"
,
right
:
"50"
},
series
:
[
{
name
:
'隐患整改率'
,
type
:
'pie'
,
radius
:
[
'40%'
,
'70%'
],
/*data: [
{ value: 50, name: '已整改' },
{ value: 50, name: '未整改' }
],*/
data
:
this
.
pieData
}
]
}
echar
.
setOption
(
option
);
},
getHiddenData
(){
hiddenStat
(
this
.
queryParams
).
then
(
res
=>
{
if
(
res
.
code
=
200
){
this
.
monthData
=
res
.
data
.
months
;
this
.
hiddenBarData
=
res
.
data
.
hiddens
;
this
.
closeHiddenBarData
=
res
.
data
.
rectifieds
;
this
.
pieData
=
res
.
data
.
pieData
;
//柱状图初始化
this
.
initBarEchars
();
//环状图初始化
this
.
initPieEchars
();
}
})
},
dateFormat
(
picker
){
if
(
!
picker
){
this
.
findTime
=
[];
this
.
queryParams
.
beginTime
=
null
;
this
.
queryParams
.
endTime
=
null
;
}
else
{
this
.
queryParams
.
beginTime
=
picker
[
0
];
this
.
queryParams
.
endTime
=
picker
[
1
];
}
},
search
(){
this
.
getHiddenData
();
},
resetQuery
(){
this
.
reset
();
this
.
getHiddenData
();
},
reset
(){
this
.
queryParams
=
{
hiddenLevel
:
null
,
beginTime
:
null
,
endTime
:
null
};
this
.
findTime
=
""
;
}
}
}
</
script
>
<
style
scoped
lang=
"scss"
>
.hiddenStat
{
height
:
calc
(
100vh
-
50px
);
width
:
100%
;
}
.stat
{
height
:
90%
;
width
:
100%
;
display
:
inline-flex
;
}
</
style
>
danger-manage-web/src/views/system/library/index.vue
View file @
55ef20cc
...
...
@@ -189,9 +189,9 @@ export default {
inspectTerm
:
[
{
required
:
true
,
message
:
"隐患名称不能为空"
,
trigger
:
"change"
}
],
inspectBasis
:
[
{
required
:
true
,
message
:
"检查依据不能为空"
,
trigger
:
"change"
}
],
//
inspectBasis: [
//
{ required: true, message: "检查依据不能为空", trigger: "change" }
//
],
// libraryContent: [
// { required: true, message: "内容/标准不能为空", trigger: "change" }
// ],
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment