Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
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
61db080f
Commit
61db080f
authored
Dec 24, 2022
by
吴卿华
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
e58998c5
31cb06b0
Show whitespace changes
Inline
Side-by-side
Showing
27 changed files
with
1731 additions
and
33 deletions
+1731
-33
TSafetyCommitmentAnnouncementController.java
...tyManagement/TSafetyCommitmentAnnouncementController.java
+129
-0
TTrainPlanController.java
...com/zehong/web/controller/train/TTrainPlanController.java
+8
-2
TSafetyCommitmentAnnouncement.java
...m/zehong/system/domain/TSafetyCommitmentAnnouncement.java
+87
-0
PlanVo.java
...tem/src/main/java/com/zehong/system/domain/vo/PlanVo.java
+3
-1
UserCourseVo.java
...c/main/java/com/zehong/system/domain/vo/UserCourseVo.java
+2
-0
TSafetyCommitmentAnnouncementMapper.java
...ng/system/mapper/TSafetyCommitmentAnnouncementMapper.java
+61
-0
TTrainPlanMapper.java
.../main/java/com/zehong/system/mapper/TTrainPlanMapper.java
+1
-1
ITSafetyCommitmentAnnouncementService.java
...system/service/ITSafetyCommitmentAnnouncementService.java
+61
-0
ITTrainPlanService.java
...in/java/com/zehong/system/service/ITTrainPlanService.java
+4
-2
TSafetyCommitmentAnnouncementServiceImpl.java
...ervice/impl/TSafetyCommitmentAnnouncementServiceImpl.java
+96
-0
TTrainCourseServiceImpl.java
...m/zehong/system/service/impl/TTrainCourseServiceImpl.java
+1
-1
TTrainPlanServiceImpl.java
...com/zehong/system/service/impl/TTrainPlanServiceImpl.java
+4
-4
TSafetyCommitmentAnnouncementMapper.xml
...ces/mapper/system/TSafetyCommitmentAnnouncementMapper.xml
+137
-0
TTrainCourseMapper.xml
...m/src/main/resources/mapper/system/TTrainCourseMapper.xml
+1
-1
TTrainPlanMapper.xml
...tem/src/main/resources/mapper/system/TTrainPlanMapper.xml
+5
-4
trainingProgram.js
...r-manage-web/src/api/educationPlanExam/trainingProgram.js
+6
-0
announcement.js
danger-manage-web/src/api/safetyManagement/announcement.js
+62
-0
assessmentLevel.png
danger-manage-web/src/assets/images/assessmentLevel.png
+0
-0
skao.png
danger-manage-web/src/assets/img/skao.png
+0
-0
ykao.png
danger-manage-web/src/assets/img/ykao.png
+0
-0
index.vue
...-web/src/views/educationPlanExam/lessonsProgram/index.vue
+7
-7
LearnItem.vue
...iews/educationPlanExam/myLessons/components/LearnItem.vue
+11
-2
Dia.vue
...iews/educationPlanExam/trainingProgram/components/Dia.vue
+177
-0
Item.vue
...ews/educationPlanExam/trainingProgram/components/Item.vue
+9
-2
Lesson.vue
...s/educationPlanExam/trainingProgram/components/Lesson.vue
+316
-0
index.vue
...web/src/views/educationPlanExam/trainingProgram/index.vue
+30
-6
index.vue
...age-web/src/views/safetyManagement/announcement/index.vue
+513
-0
No files found.
danger-manage-admin/src/main/java/com/zehong/web/controller/safetyManagement/TSafetyCommitmentAnnouncementController.java
0 → 100644
View file @
61db080f
package
com
.
zehong
.
web
.
controller
.
safetyManagement
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
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
com.zehong.common.annotation.Log
;
import
com.zehong.common.core.controller.BaseController
;
import
com.zehong.common.core.domain.AjaxResult
;
import
com.zehong.common.enums.BusinessType
;
import
com.zehong.system.domain.TSafetyCommitmentAnnouncement
;
import
com.zehong.system.service.ITSafetyCommitmentAnnouncementService
;
import
com.zehong.common.utils.poi.ExcelUtil
;
import
com.zehong.common.core.page.TableDataInfo
;
/**
* 安全承诺公告Controller
*
* @author zehong
* @date 2022-12-21
*/
@RestController
@RequestMapping
(
"/safetyManagement/announcement"
)
public
class
TSafetyCommitmentAnnouncementController
extends
BaseController
{
@Autowired
private
ITSafetyCommitmentAnnouncementService
tSafetyCommitmentAnnouncementService
;
/**
* 查询安全承诺公告列表
*/
@PreAuthorize
(
"@ss.hasPermi('system:announcement:list')"
)
@GetMapping
(
"/list"
)
public
TableDataInfo
list
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
)
{
startPage
();
List
<
TSafetyCommitmentAnnouncement
>
list
=
tSafetyCommitmentAnnouncementService
.
selectTSafetyCommitmentAnnouncementList
(
tSafetyCommitmentAnnouncement
);
return
getDataTable
(
list
);
}
/**
* 新增安全承诺公告验证
*/
@GetMapping
(
"/getCurrent"
)
public
AjaxResult
getCurrent
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
)
{
Calendar
calender
=
Calendar
.
getInstance
();
calender
.
setTime
(
new
Date
());
String
endTime
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
format
(
calender
.
getTime
());
calender
.
set
(
Calendar
.
HOUR_OF_DAY
,
0
);
calender
.
set
(
Calendar
.
MINUTE
,
0
);
calender
.
set
(
Calendar
.
SECOND
,
0
);
String
beginTime
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
).
format
(
calender
.
getTime
());
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"beginTime"
,
beginTime
);
map
.
put
(
"endTime"
,
endTime
);
tSafetyCommitmentAnnouncement
.
setParams
(
map
);
List
<
TSafetyCommitmentAnnouncement
>
list
=
tSafetyCommitmentAnnouncementService
.
selectTSafetyCommitmentAnnouncementList
(
tSafetyCommitmentAnnouncement
);
return
AjaxResult
.
success
(
list
);
}
/**
* 导出安全承诺公告列表
*/
//@PreAuthorize("@ss.hasPermi('system:announcement:export')")
@Log
(
title
=
"安全承诺公告"
,
businessType
=
BusinessType
.
EXPORT
)
@GetMapping
(
"/export"
)
public
AjaxResult
export
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
)
{
List
<
TSafetyCommitmentAnnouncement
>
list
=
tSafetyCommitmentAnnouncementService
.
selectTSafetyCommitmentAnnouncementList
(
tSafetyCommitmentAnnouncement
);
ExcelUtil
<
TSafetyCommitmentAnnouncement
>
util
=
new
ExcelUtil
<
TSafetyCommitmentAnnouncement
>(
TSafetyCommitmentAnnouncement
.
class
);
return
util
.
exportExcel
(
list
,
"安全承诺公告数据"
);
}
/**
* 获取安全承诺公告详细信息
*/
//@PreAuthorize("@ss.hasPermi('system:announcement:query')")
@GetMapping
(
value
=
"/{id}"
)
public
AjaxResult
getInfo
(
@PathVariable
(
"id"
)
Long
id
)
{
return
AjaxResult
.
success
(
tSafetyCommitmentAnnouncementService
.
selectTSafetyCommitmentAnnouncementById
(
id
));
}
/**
* 新增安全承诺公告
*/
//@PreAuthorize("@ss.hasPermi('system:announcement:add')")
@Log
(
title
=
"安全承诺公告"
,
businessType
=
BusinessType
.
INSERT
)
@PostMapping
public
AjaxResult
add
(
@RequestBody
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
)
{
return
toAjax
(
tSafetyCommitmentAnnouncementService
.
insertTSafetyCommitmentAnnouncement
(
tSafetyCommitmentAnnouncement
));
}
/**
* 修改安全承诺公告
*/
//@PreAuthorize("@ss.hasPermi('system:announcement:edit')")
@Log
(
title
=
"安全承诺公告"
,
businessType
=
BusinessType
.
UPDATE
)
@PutMapping
public
AjaxResult
edit
(
@RequestBody
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
)
{
return
toAjax
(
tSafetyCommitmentAnnouncementService
.
updateTSafetyCommitmentAnnouncement
(
tSafetyCommitmentAnnouncement
));
}
/**
* 删除安全承诺公告
*/
//@PreAuthorize("@ss.hasPermi('system:announcement:remove')")
@Log
(
title
=
"安全承诺公告"
,
businessType
=
BusinessType
.
DELETE
)
@DeleteMapping
(
"/{ids}"
)
public
AjaxResult
remove
(
@PathVariable
Long
[]
ids
)
{
return
toAjax
(
tSafetyCommitmentAnnouncementService
.
deleteTSafetyCommitmentAnnouncementByIds
(
ids
));
}
}
danger-manage-admin/src/main/java/com/zehong/web/controller/train/TTrainPlanController.java
View file @
61db080f
package
com
.
zehong
.
web
.
controller
.
train
;
package
com
.
zehong
.
web
.
controller
.
train
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
com.alibaba.fastjson.JSON
;
import
com.zehong.system.domain.vo.PlanVo
;
import
com.zehong.system.domain.vo.PlanVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
...
@@ -87,7 +89,9 @@ public class TTrainPlanController extends BaseController
...
@@ -87,7 +89,9 @@ public class TTrainPlanController extends BaseController
{
{
TTrainPlan
tTrainPlan
=
new
TTrainPlan
();
TTrainPlan
tTrainPlan
=
new
TTrainPlan
();
tTrainPlan
.
setPlanName
(
planVo
.
getPlanName
());
tTrainPlan
.
setPlanName
(
planVo
.
getPlanName
());
return
AjaxResult
.
success
(
tTrainPlanService
.
insertTTrainPlan
(
tTrainPlan
,
planVo
.
getPostIds
()));
tTrainPlan
.
setPersonnelType
(
planVo
.
getPersonnelType
());
List
<
Map
<
String
,
Object
>>
list
=
(
List
<
Map
<
String
,
Object
>>)
JSON
.
parse
(
planVo
.
getPeopleList
());
return
AjaxResult
.
success
(
tTrainPlanService
.
insertTTrainPlan
(
tTrainPlan
,
list
));
}
}
/**
/**
...
@@ -104,7 +108,9 @@ public class TTrainPlanController extends BaseController
...
@@ -104,7 +108,9 @@ public class TTrainPlanController extends BaseController
TTrainPlan
tTrainPlan
=
new
TTrainPlan
();
TTrainPlan
tTrainPlan
=
new
TTrainPlan
();
tTrainPlan
.
setPlanId
(
planVo
.
getPlanId
());
tTrainPlan
.
setPlanId
(
planVo
.
getPlanId
());
tTrainPlan
.
setPlanName
(
planVo
.
getPlanName
());
tTrainPlan
.
setPlanName
(
planVo
.
getPlanName
());
return
toAjax
(
tTrainPlanService
.
updateTTrainPlan
(
tTrainPlan
,
planVo
.
getPostIds
()));
tTrainPlan
.
setPersonnelType
(
planVo
.
getPersonnelType
());
List
<
Map
<
String
,
Object
>>
list
=
(
List
<
Map
<
String
,
Object
>>)
JSON
.
parse
(
planVo
.
getPeopleList
());
return
toAjax
(
tTrainPlanService
.
updateTTrainPlan
(
tTrainPlan
,
list
));
}
}
/**
/**
...
...
danger-manage-system/src/main/java/com/zehong/system/domain/TSafetyCommitmentAnnouncement.java
0 → 100644
View file @
61db080f
package
com
.
zehong
.
system
.
domain
;
import
java.util.Date
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
org.apache.commons.lang3.builder.ToStringStyle
;
import
com.zehong.common.annotation.Excel
;
import
com.zehong.common.core.domain.BaseEntity
;
/**
* 安全承诺公告对象 t_safety_commitment_announcement
*
* @author zehong
* @date 2022-12-21
*/
@Data
public
class
TSafetyCommitmentAnnouncement
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
1L
;
/** 安全承诺公告id */
private
Long
id
;
/** 生产装置 */
@Excel
(
name
=
"生产装置"
)
private
Long
productionUnit
;
/** 运行装置 */
@Excel
(
name
=
"运行装置"
)
private
Long
runningDevice
;
/** 停产装置 */
@Excel
(
name
=
"停产装置"
)
private
Long
shutdownDevice
;
/** 检修装置 */
@Excel
(
name
=
"检修装置"
)
private
Long
maintenanceDevice
;
/** 动火作业 */
@Excel
(
name
=
"动火作业"
)
private
Long
hotWork
;
/** 特殊动火作业 */
@Excel
(
name
=
"特殊动火作业"
)
private
Long
specialHotWork
;
/** 一级动火作业 */
@Excel
(
name
=
"一级动火作业"
)
private
Long
classOneHotWork
;
/** 二级动火作业 */
@Excel
(
name
=
"二级动火作业"
)
private
Long
classTwoHotWork
;
/** 是否受限空间作业(0是,1否) */
@Excel
(
name
=
"是否受限空间作业"
,
readConverterExp
=
"0=是,1否"
)
private
String
isConfinedSpace
;
/** 是否试生产(0是,1否) */
@Excel
(
name
=
"是否试生产"
,
readConverterExp
=
"0=是,1否"
)
private
String
isTrialProduction
;
/** 罐装、仓库等重大危险源是否处于安全状态(0是,1否) */
@Excel
(
name
=
"罐装、仓库等重大危险源是否处于安全状态"
,
readConverterExp
=
"0=是,1否"
)
private
String
isSecurityStatus
;
/** 风险等级 */
@Excel
(
name
=
"风险等级"
)
private
String
assessmentLevel
;
/** 主要负责人 */
@Excel
(
name
=
"主要负责人"
)
private
String
keyPerson
;
/** 承诺公告 */
@Excel
(
name
=
"承诺公告"
)
private
String
announcement
;
private
String
status
;
/** 承诺日期 */
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@Excel
(
name
=
"承诺日期"
,
width
=
30
,
dateFormat
=
"yyyy-MM-dd"
)
private
Date
commitmentDate
;
}
danger-manage-system/src/main/java/com/zehong/system/domain/vo/PlanVo.java
View file @
61db080f
...
@@ -8,7 +8,9 @@ public class PlanVo {
...
@@ -8,7 +8,9 @@ public class PlanVo {
private
String
planName
;
private
String
planName
;
private
Long
[]
postIds
;
private
Integer
personnelType
;
private
Long
[]
postIds
;
private
String
peopleList
;
}
}
danger-manage-system/src/main/java/com/zehong/system/domain/vo/UserCourseVo.java
View file @
61db080f
...
@@ -31,4 +31,6 @@ public class UserCourseVo {
...
@@ -31,4 +31,6 @@ public class UserCourseVo {
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
createTime
;
private
Date
createTime
;
private
String
dataKind
;
}
}
danger-manage-system/src/main/java/com/zehong/system/mapper/TSafetyCommitmentAnnouncementMapper.java
0 → 100644
View file @
61db080f
package
com
.
zehong
.
system
.
mapper
;
import
java.util.List
;
import
com.zehong.system.domain.TSafetyCommitmentAnnouncement
;
/**
* 安全承诺公告Mapper接口
*
* @author zehong
* @date 2022-12-21
*/
public
interface
TSafetyCommitmentAnnouncementMapper
{
/**
* 查询安全承诺公告
*
* @param id 安全承诺公告ID
* @return 安全承诺公告
*/
public
TSafetyCommitmentAnnouncement
selectTSafetyCommitmentAnnouncementById
(
Long
id
);
/**
* 查询安全承诺公告列表
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 安全承诺公告集合
*/
public
List
<
TSafetyCommitmentAnnouncement
>
selectTSafetyCommitmentAnnouncementList
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
);
/**
* 新增安全承诺公告
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 结果
*/
public
int
insertTSafetyCommitmentAnnouncement
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
);
/**
* 修改安全承诺公告
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 结果
*/
public
int
updateTSafetyCommitmentAnnouncement
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
);
/**
* 删除安全承诺公告
*
* @param id 安全承诺公告ID
* @return 结果
*/
public
int
deleteTSafetyCommitmentAnnouncementById
(
Long
id
);
/**
* 批量删除安全承诺公告
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public
int
deleteTSafetyCommitmentAnnouncementByIds
(
Long
[]
ids
);
}
danger-manage-system/src/main/java/com/zehong/system/mapper/TTrainPlanMapper.java
View file @
61db080f
...
@@ -52,7 +52,7 @@ public interface TTrainPlanMapper
...
@@ -52,7 +52,7 @@ public interface TTrainPlanMapper
* @param postIds
* @param postIds
* @return
* @return
*/
*/
public
int
insetsPlanPost
(
@Param
(
"planId"
)
Long
planId
,
@Param
(
"
postIds"
)
Long
[]
postIds
);
public
int
insetsPlanPost
(
@Param
(
"planId"
)
Long
planId
,
@Param
(
"
list"
)
List
<
Map
<
String
,
Object
>>
list
);
/**
/**
* 删除计划职位
* 删除计划职位
...
...
danger-manage-system/src/main/java/com/zehong/system/service/ITSafetyCommitmentAnnouncementService.java
0 → 100644
View file @
61db080f
package
com
.
zehong
.
system
.
service
;
import
java.util.List
;
import
com.zehong.system.domain.TSafetyCommitmentAnnouncement
;
/**
* 安全承诺公告Service接口
*
* @author zehong
* @date 2022-12-21
*/
public
interface
ITSafetyCommitmentAnnouncementService
{
/**
* 查询安全承诺公告
*
* @param id 安全承诺公告ID
* @return 安全承诺公告
*/
public
TSafetyCommitmentAnnouncement
selectTSafetyCommitmentAnnouncementById
(
Long
id
);
/**
* 查询安全承诺公告列表
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 安全承诺公告集合
*/
public
List
<
TSafetyCommitmentAnnouncement
>
selectTSafetyCommitmentAnnouncementList
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
);
/**
* 新增安全承诺公告
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 结果
*/
public
int
insertTSafetyCommitmentAnnouncement
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
);
/**
* 修改安全承诺公告
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 结果
*/
public
int
updateTSafetyCommitmentAnnouncement
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
);
/**
* 批量删除安全承诺公告
*
* @param ids 需要删除的安全承诺公告ID
* @return 结果
*/
public
int
deleteTSafetyCommitmentAnnouncementByIds
(
Long
[]
ids
);
/**
* 删除安全承诺公告信息
*
* @param id 安全承诺公告ID
* @return 结果
*/
public
int
deleteTSafetyCommitmentAnnouncementById
(
Long
id
);
}
danger-manage-system/src/main/java/com/zehong/system/service/ITTrainPlanService.java
View file @
61db080f
package
com
.
zehong
.
system
.
service
;
package
com
.
zehong
.
system
.
service
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
com.zehong.system.domain.TTrainPlan
;
import
com.zehong.system.domain.TTrainPlan
;
/**
/**
...
@@ -34,7 +36,7 @@ public interface ITTrainPlanService
...
@@ -34,7 +36,7 @@ public interface ITTrainPlanService
* @param tTrainPlan 培训计划
* @param tTrainPlan 培训计划
* @return 结果
* @return 结果
*/
*/
public
Long
insertTTrainPlan
(
TTrainPlan
tTrainPlan
,
L
ong
[]
postIds
);
public
Long
insertTTrainPlan
(
TTrainPlan
tTrainPlan
,
L
ist
<
Map
<
String
,
Object
>>
list
);
/**
/**
* 修改培训计划
* 修改培训计划
...
@@ -42,7 +44,7 @@ public interface ITTrainPlanService
...
@@ -42,7 +44,7 @@ public interface ITTrainPlanService
* @param tTrainPlan 培训计划
* @param tTrainPlan 培训计划
* @return 结果
* @return 结果
*/
*/
public
int
updateTTrainPlan
(
TTrainPlan
tTrainPlan
,
L
ong
[]
postIds
);
public
int
updateTTrainPlan
(
TTrainPlan
tTrainPlan
,
L
ist
<
Map
<
String
,
Object
>>
list
);
/**
/**
* 批量删除培训计划
* 批量删除培训计划
...
...
danger-manage-system/src/main/java/com/zehong/system/service/impl/TSafetyCommitmentAnnouncementServiceImpl.java
0 → 100644
View file @
61db080f
package
com
.
zehong
.
system
.
service
.
impl
;
import
java.text.DateFormat
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.List
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.zehong.system.mapper.TSafetyCommitmentAnnouncementMapper
;
import
com.zehong.system.domain.TSafetyCommitmentAnnouncement
;
import
com.zehong.system.service.ITSafetyCommitmentAnnouncementService
;
/**
* 安全承诺公告Service业务层处理
*
* @author zehong
* @date 2022-12-21
*/
@Service
public
class
TSafetyCommitmentAnnouncementServiceImpl
implements
ITSafetyCommitmentAnnouncementService
{
@Autowired
private
TSafetyCommitmentAnnouncementMapper
tSafetyCommitmentAnnouncementMapper
;
/**
* 查询安全承诺公告
*
* @param id 安全承诺公告ID
* @return 安全承诺公告
*/
@Override
public
TSafetyCommitmentAnnouncement
selectTSafetyCommitmentAnnouncementById
(
Long
id
)
{
return
tSafetyCommitmentAnnouncementMapper
.
selectTSafetyCommitmentAnnouncementById
(
id
);
}
/**
* 查询安全承诺公告列表
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 安全承诺公告
*/
@Override
public
List
<
TSafetyCommitmentAnnouncement
>
selectTSafetyCommitmentAnnouncementList
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
)
{
return
tSafetyCommitmentAnnouncementMapper
.
selectTSafetyCommitmentAnnouncementList
(
tSafetyCommitmentAnnouncement
);
}
/**
* 新增安全承诺公告
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 结果
*/
@Override
public
int
insertTSafetyCommitmentAnnouncement
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
)
{
return
tSafetyCommitmentAnnouncementMapper
.
insertTSafetyCommitmentAnnouncement
(
tSafetyCommitmentAnnouncement
);
}
/**
* 修改安全承诺公告
*
* @param tSafetyCommitmentAnnouncement 安全承诺公告
* @return 结果
*/
@Override
public
int
updateTSafetyCommitmentAnnouncement
(
TSafetyCommitmentAnnouncement
tSafetyCommitmentAnnouncement
)
{
return
tSafetyCommitmentAnnouncementMapper
.
updateTSafetyCommitmentAnnouncement
(
tSafetyCommitmentAnnouncement
);
}
/**
* 批量删除安全承诺公告
*
* @param ids 需要删除的安全承诺公告ID
* @return 结果
*/
@Override
public
int
deleteTSafetyCommitmentAnnouncementByIds
(
Long
[]
ids
)
{
return
tSafetyCommitmentAnnouncementMapper
.
deleteTSafetyCommitmentAnnouncementByIds
(
ids
);
}
/**
* 删除安全承诺公告信息
*
* @param id 安全承诺公告ID
* @return 结果
*/
@Override
public
int
deleteTSafetyCommitmentAnnouncementById
(
Long
id
)
{
return
tSafetyCommitmentAnnouncementMapper
.
deleteTSafetyCommitmentAnnouncementById
(
id
);
}
}
danger-manage-system/src/main/java/com/zehong/system/service/impl/TTrainCourseServiceImpl.java
View file @
61db080f
...
@@ -196,7 +196,7 @@ public class TTrainCourseServiceImpl implements ITTrainCourseService
...
@@ -196,7 +196,7 @@ public class TTrainCourseServiceImpl implements ITTrainCourseService
}
}
//新增考试人员
//新增考试人员
List
<
JSONObject
>
personList
=
JSONObject
.
parseArray
(
course
.
getTestPersons
(),
JSONObject
.
class
);
List
<
JSONObject
>
personList
=
JSONObject
.
parseArray
(
course
.
getTestPersons
(),
JSONObject
.
class
);
List
<
String
>
persons
=
personList
.
stream
().
map
(
item
->(
String
)
item
.
get
(
"
staff
Id"
)).
collect
(
Collectors
.
toList
());
List
<
String
>
persons
=
personList
.
stream
().
map
(
item
->(
String
)
item
.
get
(
"
peoPle
Id"
)).
collect
(
Collectors
.
toList
());
tTrainCourseMapper
.
insertUserCourse
(
tTrainCourse
.
getCourseId
(),
persons
,
tTrainCourse
.
getPersonnelType
());
tTrainCourseMapper
.
insertUserCourse
(
tTrainCourse
.
getCourseId
(),
persons
,
tTrainCourse
.
getPersonnelType
());
tTrainCourse
.
setStatus
(
1
);
tTrainCourse
.
setStatus
(
1
);
tTrainCourse
.
setReleaseTime
(
new
Date
());
tTrainCourse
.
setReleaseTime
(
new
Date
());
...
...
danger-manage-system/src/main/java/com/zehong/system/service/impl/TTrainPlanServiceImpl.java
View file @
61db080f
...
@@ -64,11 +64,11 @@ public class TTrainPlanServiceImpl implements ITTrainPlanService
...
@@ -64,11 +64,11 @@ public class TTrainPlanServiceImpl implements ITTrainPlanService
*/
*/
@Override
@Override
@Transactional
@Transactional
public
Long
insertTTrainPlan
(
TTrainPlan
tTrainPlan
,
L
ong
[]
postIds
)
public
Long
insertTTrainPlan
(
TTrainPlan
tTrainPlan
,
L
ist
<
Map
<
String
,
Object
>>
list
)
{
{
tTrainPlan
.
setCreateTime
(
DateUtils
.
getNowDate
());
tTrainPlan
.
setCreateTime
(
DateUtils
.
getNowDate
());
int
a
=
tTrainPlanMapper
.
insertTTrainPlan
(
tTrainPlan
);
int
a
=
tTrainPlanMapper
.
insertTTrainPlan
(
tTrainPlan
);
tTrainPlanMapper
.
insetsPlanPost
(
tTrainPlan
.
getPlanId
(),
postIds
);
tTrainPlanMapper
.
insetsPlanPost
(
tTrainPlan
.
getPlanId
(),
list
);
return
tTrainPlan
.
getPlanId
();
return
tTrainPlan
.
getPlanId
();
}
}
...
@@ -80,11 +80,11 @@ public class TTrainPlanServiceImpl implements ITTrainPlanService
...
@@ -80,11 +80,11 @@ public class TTrainPlanServiceImpl implements ITTrainPlanService
*/
*/
@Override
@Override
@Transactional
@Transactional
public
int
updateTTrainPlan
(
TTrainPlan
tTrainPlan
,
L
ong
[]
postIds
)
public
int
updateTTrainPlan
(
TTrainPlan
tTrainPlan
,
L
ist
<
Map
<
String
,
Object
>>
list
)
{
{
int
a
=
tTrainPlanMapper
.
updateTTrainPlan
(
tTrainPlan
);
int
a
=
tTrainPlanMapper
.
updateTTrainPlan
(
tTrainPlan
);
tTrainPlanMapper
.
deletePlanPost
(
tTrainPlan
.
getPlanId
());
tTrainPlanMapper
.
deletePlanPost
(
tTrainPlan
.
getPlanId
());
tTrainPlanMapper
.
insetsPlanPost
(
tTrainPlan
.
getPlanId
(),
postIds
);
tTrainPlanMapper
.
insetsPlanPost
(
tTrainPlan
.
getPlanId
(),
list
);
return
a
;
return
a
;
}
}
...
...
danger-manage-system/src/main/resources/mapper/system/TSafetyCommitmentAnnouncementMapper.xml
0 → 100644
View file @
61db080f
<?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.zehong.system.mapper.TSafetyCommitmentAnnouncementMapper"
>
<resultMap
type=
"TSafetyCommitmentAnnouncement"
id=
"TSafetyCommitmentAnnouncementResult"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"productionUnit"
column=
"production_unit"
/>
<result
property=
"runningDevice"
column=
"running_device"
/>
<result
property=
"shutdownDevice"
column=
"shutdown_device"
/>
<result
property=
"maintenanceDevice"
column=
"maintenance_device"
/>
<result
property=
"hotWork"
column=
"hot_work"
/>
<result
property=
"specialHotWork"
column=
"special_hot_work"
/>
<result
property=
"classOneHotWork"
column=
"class_one_hot_work"
/>
<result
property=
"classTwoHotWork"
column=
"class_two_hot_work"
/>
<result
property=
"isConfinedSpace"
column=
"is_confined_space"
/>
<result
property=
"isTrialProduction"
column=
"is_trial_production"
/>
<result
property=
"isSecurityStatus"
column=
"is_security_status"
/>
<result
property=
"assessmentLevel"
column=
"assessment_level"
/>
<result
property=
"keyPerson"
column=
"key_person"
/>
<result
property=
"announcement"
column=
"announcement"
/>
<result
property=
"commitmentDate"
column=
"commitment_date"
/>
<result
property=
"status"
column=
"status"
/>
</resultMap>
<sql
id=
"selectTSafetyCommitmentAnnouncementVo"
>
select id, production_unit, running_device, shutdown_device, maintenance_device, hot_work, special_hot_work, class_one_hot_work, class_two_hot_work, is_confined_space, is_trial_production, is_security_status, assessment_level, key_person, announcement, commitment_date, status from t_safety_commitment_announcement
</sql>
<select
id=
"selectTSafetyCommitmentAnnouncementList"
parameterType=
"TSafetyCommitmentAnnouncement"
resultMap=
"TSafetyCommitmentAnnouncementResult"
>
<include
refid=
"selectTSafetyCommitmentAnnouncementVo"
/>
<where>
<if
test=
"productionUnit != null "
>
and production_unit = #{productionUnit}
</if>
<if
test=
"runningDevice != null "
>
and running_device = #{runningDevice}
</if>
<if
test=
"shutdownDevice != null "
>
and shutdown_device = #{shutdownDevice}
</if>
<if
test=
"maintenanceDevice != null "
>
and maintenance_device = #{maintenanceDevice}
</if>
<if
test=
"hotWork != null "
>
and hot_work = #{hotWork}
</if>
<if
test=
"specialHotWork != null "
>
and special_hot_work = #{specialHotWork}
</if>
<if
test=
"classOneHotWork != null "
>
and class_one_hot_work = #{classOneHotWork}
</if>
<if
test=
"classTwoHotWork != null "
>
and class_two_hot_work = #{classTwoHotWork}
</if>
<if
test=
"isConfinedSpace != null and isConfinedSpace != ''"
>
and is_confined_space = #{isConfinedSpace}
</if>
<if
test=
"isTrialProduction != null and isTrialProduction != ''"
>
and is_trial_production = #{isTrialProduction}
</if>
<if
test=
"isSecurityStatus != null and isSecurityStatus != ''"
>
and is_security_status = #{isSecurityStatus}
</if>
<if
test=
"assessmentLevel != null and assessmentLevel != ''"
>
and assessment_level = #{assessmentLevel}
</if>
<if
test=
"keyPerson != null and keyPerson != ''"
>
and key_person = #{keyPerson}
</if>
<if
test=
"announcement != null and announcement != ''"
>
and announcement = #{announcement}
</if>
<if
test=
"status != null and status != ''"
>
and status = #{status}
</if>
<if
test=
"params.beginTime != null and params.beginTime != ''"
>
<!-- 开始时间检索 -->
AND commitment_date
>
= #{params.beginTime}
</if>
<if
test=
"params.endTime != null and params.endTime != ''"
>
<!-- 结束时间检索 -->
AND commitment_date
<
= #{params.endTime}
</if>
</where>
order by commitment_date desc
</select>
<select
id=
"selectTSafetyCommitmentAnnouncementById"
parameterType=
"Long"
resultMap=
"TSafetyCommitmentAnnouncementResult"
>
<include
refid=
"selectTSafetyCommitmentAnnouncementVo"
/>
where id = #{id}
</select>
<insert
id=
"insertTSafetyCommitmentAnnouncement"
parameterType=
"TSafetyCommitmentAnnouncement"
>
insert into t_safety_commitment_announcement
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
id,
</if>
<if
test=
"productionUnit != null"
>
production_unit,
</if>
<if
test=
"runningDevice != null"
>
running_device,
</if>
<if
test=
"shutdownDevice != null"
>
shutdown_device,
</if>
<if
test=
"maintenanceDevice != null"
>
maintenance_device,
</if>
<if
test=
"hotWork != null"
>
hot_work,
</if>
<if
test=
"specialHotWork != null"
>
special_hot_work,
</if>
<if
test=
"classOneHotWork != null"
>
class_one_hot_work,
</if>
<if
test=
"classTwoHotWork != null"
>
class_two_hot_work,
</if>
<if
test=
"isConfinedSpace != null"
>
is_confined_space,
</if>
<if
test=
"isTrialProduction != null"
>
is_trial_production,
</if>
<if
test=
"isSecurityStatus != null"
>
is_security_status,
</if>
<if
test=
"assessmentLevel != null"
>
assessment_level,
</if>
<if
test=
"keyPerson != null"
>
key_person,
</if>
<if
test=
"announcement != null"
>
announcement,
</if>
<if
test=
"status != null"
>
status,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
#{id},
</if>
<if
test=
"productionUnit != null"
>
#{productionUnit},
</if>
<if
test=
"runningDevice != null"
>
#{runningDevice},
</if>
<if
test=
"shutdownDevice != null"
>
#{shutdownDevice},
</if>
<if
test=
"maintenanceDevice != null"
>
#{maintenanceDevice},
</if>
<if
test=
"hotWork != null"
>
#{hotWork},
</if>
<if
test=
"specialHotWork != null"
>
#{specialHotWork},
</if>
<if
test=
"classOneHotWork != null"
>
#{classOneHotWork},
</if>
<if
test=
"classTwoHotWork != null"
>
#{classTwoHotWork},
</if>
<if
test=
"isConfinedSpace != null"
>
#{isConfinedSpace},
</if>
<if
test=
"isTrialProduction != null"
>
#{isTrialProduction},
</if>
<if
test=
"isSecurityStatus != null"
>
#{isSecurityStatus},
</if>
<if
test=
"assessmentLevel != null"
>
#{assessmentLevel},
</if>
<if
test=
"keyPerson != null"
>
#{keyPerson},
</if>
<if
test=
"announcement != null"
>
#{announcement},
</if>
<if
test=
"status != null"
>
#{status},
</if>
</trim>
</insert>
<update
id=
"updateTSafetyCommitmentAnnouncement"
parameterType=
"TSafetyCommitmentAnnouncement"
>
update t_safety_commitment_announcement
<trim
prefix=
"SET"
suffixOverrides=
","
>
<if
test=
"productionUnit != null"
>
production_unit = #{productionUnit},
</if>
<if
test=
"runningDevice != null"
>
running_device = #{runningDevice},
</if>
<if
test=
"shutdownDevice != null"
>
shutdown_device = #{shutdownDevice},
</if>
<if
test=
"maintenanceDevice != null"
>
maintenance_device = #{maintenanceDevice},
</if>
<if
test=
"hotWork != null"
>
hot_work = #{hotWork},
</if>
<if
test=
"specialHotWork != null"
>
special_hot_work = #{specialHotWork},
</if>
<if
test=
"classOneHotWork != null"
>
class_one_hot_work = #{classOneHotWork},
</if>
<if
test=
"classTwoHotWork != null"
>
class_two_hot_work = #{classTwoHotWork},
</if>
<if
test=
"isConfinedSpace != null"
>
is_confined_space = #{isConfinedSpace},
</if>
<if
test=
"isTrialProduction != null"
>
is_trial_production = #{isTrialProduction},
</if>
<if
test=
"isSecurityStatus != null"
>
is_security_status = #{isSecurityStatus},
</if>
<if
test=
"assessmentLevel != null"
>
assessment_level = #{assessmentLevel},
</if>
<if
test=
"keyPerson != null"
>
key_person = #{keyPerson},
</if>
<if
test=
"announcement != null"
>
announcement = #{announcement},
</if>
<if
test=
"status != null"
>
status = #{status},
</if>
<if
test=
"commitmentDate != null"
>
commitment_date = #{commitmentDate},
</if>
</trim>
where id = #{id}
</update>
<delete
id=
"deleteTSafetyCommitmentAnnouncementById"
parameterType=
"Long"
>
delete from t_safety_commitment_announcement where id = #{id}
</delete>
<delete
id=
"deleteTSafetyCommitmentAnnouncementByIds"
parameterType=
"String"
>
delete from t_safety_commitment_announcement where id in
<foreach
item=
"id"
collection=
"array"
open=
"("
separator=
","
close=
")"
>
#{id}
</foreach>
</delete>
</mapper>
\ No newline at end of file
danger-manage-system/src/main/resources/mapper/system/TTrainCourseMapper.xml
View file @
61db080f
...
@@ -153,7 +153,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -153,7 +153,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select
id=
"userCourseList"
resultType=
"com.zehong.system.domain.vo.UserCourseVo"
>
<select
id=
"userCourseList"
resultType=
"com.zehong.system.domain.vo.UserCourseVo"
>
SELECT uc.user_course_id AS userCourseId,uc.state ,uc.examination_time AS examinationTime,
SELECT uc.user_course_id AS userCourseId,uc.state ,uc.examination_time AS examinationTime,
uc.`examination_result` AS examinationResult,uc.`create_time` AS createTime,
uc.`examination_result` AS examinationResult,uc.`create_time` AS createTime,
c.`course_name` AS courseName, c.`topic_num` AS topicNum,c.`release_time` AS releaseTime,
c.`course_name` AS courseName, c.`topic_num` AS topicNum,c.`release_time` AS releaseTime,
c.data_kind as dataKind,
p.`plan_name` AS courseType,c.course_id as courseId,c.qualified_num as qualifiedNum
p.`plan_name` AS courseType,c.course_id as courseId,c.qualified_num as qualifiedNum
FROM t_train_user_course uc
FROM t_train_user_course uc
LEFT JOIN t_train_course c ON c.`course_id` = uc.`course_id`
LEFT JOIN t_train_course c ON c.`course_id` = uc.`course_id`
...
...
danger-manage-system/src/main/resources/mapper/system/TTrainPlanMapper.xml
View file @
61db080f
...
@@ -52,8 +52,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -52,8 +52,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</insert>
</insert>
<insert
id=
"insetsPlanPost"
>
<insert
id=
"insetsPlanPost"
>
INSERT INTO t_train_plan_post(plan_id,post_id) VALUES
INSERT INTO t_train_plan_post(plan_id,post_id) VALUES
<foreach
collection=
"
postIds
"
separator=
","
item=
"item"
>
<foreach
collection=
"
list
"
separator=
","
item=
"item"
>
(#{planId},#{item})
(#{planId},#{item
.staffId
})
</foreach>
</foreach>
</insert>
</insert>
...
@@ -84,8 +84,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -84,8 +84,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</delete>
</delete>
<select
id=
"selectTrainPostByPlanId"
parameterType=
"Long"
resultType=
"com.zehong.system.domain.vo.PlanPostVo"
>
<select
id=
"selectTrainPostByPlanId"
parameterType=
"Long"
resultType=
"com.zehong.system.domain.vo.PlanPostVo"
>
SELECT p.`post_id` as postId,p.`post_name` as postName,IF(pp.`post_id` IS NULL,FALSE,TRUE) AS ischeck FROM sys_post p
SELECT u.user_id AS postId, u.staff_name AS postName,TRUE AS ischeck FROM
LEFT JOIN t_train_plan_post pp ON ( p.`post_id` = pp.`post_id` AND pp.`plan_id` = #{planId} )
t_train_plan_post p LEFT JOIN sys_user u ON u.`user_id` = p.`post_id`
WHERE p.`plan_id` = #{planId}
</select>
</select>
<select
id=
"selectAlluserByplanId"
resultType=
"java.lang.String"
>
<select
id=
"selectAlluserByplanId"
resultType=
"java.lang.String"
>
SELECT post_id FROM t_train_plan_post WHERE plan_id =#{planId}
SELECT post_id FROM t_train_plan_post WHERE plan_id =#{planId}
...
...
danger-manage-web/src/api/educationPlanExam/trainingProgram.js
View file @
61db080f
...
@@ -52,5 +52,11 @@ export function deletePlan(query) {
...
@@ -52,5 +52,11 @@ export function deletePlan(query) {
params
:
query
params
:
query
})
})
}
}
export
function
getPlan
(
query
)
{
return
request
({
url
:
'/system/plan/'
+
query
,
method
:
'get'
,
})
}
danger-manage-web/src/api/safetyManagement/announcement.js
0 → 100644
View file @
61db080f
import
request
from
'@/utils/request'
// 查询安全承诺公告列表
export
function
listAnnouncement
(
query
)
{
return
request
({
url
:
'/safetyManagement/announcement/list'
,
method
:
'get'
,
params
:
query
})
}
// 查询安全承诺公告详细
export
function
getCurrent
(
query
)
{
return
request
({
url
:
'/safetyManagement/announcement/getCurrent'
,
method
:
'get'
,
params
:
query
})
}
// 查询安全承诺公告详细
export
function
getAnnouncement
(
id
)
{
return
request
({
url
:
'/safetyManagement/announcement/'
+
id
,
method
:
'get'
})
}
// 新增安全承诺公告
export
function
addAnnouncement
(
data
)
{
return
request
({
url
:
'/safetyManagement/announcement'
,
method
:
'post'
,
data
:
data
})
}
// 修改安全承诺公告
export
function
updateAnnouncement
(
data
)
{
return
request
({
url
:
'/safetyManagement/announcement'
,
method
:
'put'
,
data
:
data
})
}
// 删除安全承诺公告
export
function
delAnnouncement
(
id
)
{
return
request
({
url
:
'/safetyManagement/announcement/'
+
id
,
method
:
'delete'
})
}
// 导出安全承诺公告
export
function
exportAnnouncement
(
query
)
{
return
request
({
url
:
'/safetyManagement/announcement/export'
,
method
:
'get'
,
params
:
query
})
}
danger-manage-web/src/assets/images/assessmentLevel.png
0 → 100644
View file @
61db080f
2.01 KB
danger-manage-web/src/assets/img/skao.png
0 → 100644
View file @
61db080f
3.76 KB
danger-manage-web/src/assets/img/ykao.png
0 → 100644
View file @
61db080f
3.65 KB
danger-manage-web/src/views/educationPlanExam/lessonsProgram/index.vue
View file @
61db080f
...
@@ -112,13 +112,13 @@
...
@@ -112,13 +112,13 @@
<a
v-else
:href=
"enclosure"
class=
"down-load"
>
下载附件
</a>
<a
v-else
:href=
"enclosure"
class=
"down-load"
>
下载附件
</a>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<
el-table-column
label=
"视频"
align=
"center"
prop=
"video"
>
<
!--<el-table-column label="视频" align="center" prop="video">--
>
<
template
v-slot=
"{ row: { courseName, video } }"
>
<
!--<template v-slot="{ row: { courseName, video } }">--
>
<
a
@
click=
"downLoadVideo(video, courseName)"
class=
"down-load"
<
!--<a @click="downLoadVideo(video, courseName)" class="down-load"-->
>
下载视频
</a
<!-->下载视频</a-->
>
<!-->--
>
<
/
template
>
<
!--</template>--
>
<
/el-table-column
>
<
!--</el-table-column>--
>
<el-table-column
<el-table-column
label=
"发布时间"
label=
"发布时间"
align=
"center"
align=
"center"
...
...
danger-manage-web/src/views/educationPlanExam/myLessons/components/LearnItem.vue
View file @
61db080f
...
@@ -8,8 +8,12 @@
...
@@ -8,8 +8,12 @@
-->
-->
<
template
>
<
template
>
<div
class=
"item flex"
>
<div
class=
"item flex"
>
<div
class=
"title"
>
{{
itemData
.
courseType
||
'-'
}}
</div>
<div
class=
"title"
style=
"text-align: center"
>
{{
itemData
.
courseType
||
'-'
}}
</div>
<div
class=
"lesson"
>
{{
itemData
.
courseName
}}
</div>
<div
class=
"allone"
>
<img
v-if=
"itemData.dataKind==0"
style=
"height: 18px"
src=
"@/assets/img/ykao.png"
/>
<img
v-if=
"itemData.dataKind==1"
style=
"height: 18px"
src=
"@/assets/img/skao.png"
/>
<div
class=
"lesson"
style=
"width: 75%"
>
{{
itemData
.
courseName
}}
</div>
</div>
<div
class=
"time"
>
发布时间:
{{
itemData
.
createTime
}}
</div>
<div
class=
"time"
>
发布时间:
{{
itemData
.
createTime
}}
</div>
<div
class=
"bottom flex"
>
<div
class=
"bottom flex"
>
<div
@
click=
"click"
class=
"btn"
:class=
"
{ again: yesOrNo }">
<div
@
click=
"click"
class=
"btn"
:class=
"
{ again: yesOrNo }">
...
@@ -133,6 +137,11 @@ export default {
...
@@ -133,6 +137,11 @@ export default {
}
}
}
}
}
}
.allone
{
display
:flex
;
flex-direction
:row
;
justify-content
:flex-start
;
}
.img
{
.img
{
position
:
absolute
;
position
:
absolute
;
width
:
100px
;
width
:
100px
;
...
...
danger-manage-web/src/views/educationPlanExam/trainingProgram/components/Dia.vue
0 → 100644
View file @
61db080f
<!--
* @Author: 纪泽龙 jizelong@qq.com
* @Date: 2022-09-22 10:38:49
* @LastEditors: 纪泽龙 jizelong@qq.com
* @LastEditTime: 2022-12-19 14:01:37
* @FilePath: /danger-manage-web/src/views/lessonsProgram/components/addLesson.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<
template
>
<el-dialog
class=
"add-lession"
:title=
"title"
:visible
.
sync=
"visible"
width=
"1020px"
: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"
>
<transition
name=
"fade"
mode=
"out-in"
>
<component
:is=
"currentComponent"
:bankId
.
sync=
"bankId"
:subjectId
.
sync=
"subjectId"
ref=
"current"
></component>
</transition>
<!--
<Lesson
ref=
'lesson'
/>
-->
<!--
<AddQuestion
/>
<QuestionList/>
-->
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<!--
<el-button-->
<!--type="primary"-->
<!--v-if="this.componentsNum == 1 || this.componentsNum == 3"-->
<!--@click="save"-->
<!-->保存
</el-button-->
<!-->-->
<!--
<el-button
type=
"primary"
@
click=
"saveAndNext"
>
{{
-->
<!--
saveNextText
-->
<!--
}}
</el-button>
-->
<el-button
v-if=
"this.componentsNum == 2"
type=
"primary"
@
click=
"savePlan"
>
{{
"确认"
}}
</el-button
>
<el-button
@
click=
"dialogCancel"
>
取消
</el-button>
</div>
</el-dialog>
</
template
>
<
script
>
import
Lesson
from
"./Lesson"
;
import
AddQuestion
from
"../../textPaper/components/AddQuestion"
;
import
QuestionList
from
"../../textPaper/components/QuestionList"
;
export
default
{
name
:
"AnswerLesson"
,
props
:
{
visible
:
{
type
:
Boolean
,
default
:
false
,
},
componentsNum
:
{
type
:
Number
,
default
:
1
,
},
bankId
:
{
type
:
Number
,
},
},
// components: {
// Lesson,
// AddQuestion,
// QuestionList,
// },
data
()
{
return
{
title
:
"录入课程"
,
currentComponent
:
Lesson
,
// 当前题目查看
subjectId
:
null
,
};
},
watch
:
{
componentsNum
:
{
handler
(
num
)
{
if
(
num
===
1
)
{
this
.
currentComponent
=
Lesson
;
if
(
this
.
bankId
)
{
this
.
title
=
"修改课程"
;
}
else
{
this
.
title
=
"新增课程"
;
}
}
else
if
(
num
===
2
)
{
this
.
currentComponent
=
QuestionList
;
this
.
title
=
"题目列表"
;
}
else
{
this
.
currentComponent
=
AddQuestion
;
if
(
this
.
subjectId
)
{
this
.
title
=
"修改题目"
;
}
else
{
this
.
title
=
"新增题目"
;
}
}
},
deep
:
true
,
},
},
computed
:
{
saveNextText
()
{
let
text
;
if
(
this
.
componentsNum
==
1
)
{
text
=
"保存并录入题目"
;
}
else
if
(
this
.
componentsNum
==
2
)
{
text
=
"录入考题"
;
}
else
{
text
=
"保存并录入下一题"
;
}
return
text
;
},
},
methods
:
{
saveBody
()
{
this
.
startHeight
=
this
.
$refs
.
myBody
.
offsetHeight
-
55
+
"px"
;
},
closeFinished
()
{},
// 关闭之后
// 只保存
save
()
{
// this.answerClear();
this
.
$refs
.
current
.
save
();
},
savePlan
()
{
// this.answerClear();
this
.
$refs
.
current
.
savePlan
();
},
// 保存并录入
saveAndNext
()
{
this
.
$refs
.
current
.
saveAndNext
();
},
// 隐藏与显示dialog
dialogCancel
()
{
this
.
$emit
(
"update:visible"
,
false
);
},
// 把ID改变了
changeCourseId
(
bankId
)
{
this
.
$emit
(
"update:bankId"
,
bankId
);
},
// 改变当前组件
componentsNumChange
(
num
)
{
this
.
$emit
(
"update:componentsNum"
,
num
);
},
answerClear
()
{
this
.
answerArr
=
[];
this
.
changeCourseId
(
null
);
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.body
{
width
:
100%
;
height
:
100%
;
padding-right
:
40px
;
padding-left
:
36px
;
}
</
style
>
danger-manage-web/src/views/educationPlanExam/trainingProgram/components/Item.vue
View file @
61db080f
...
@@ -19,6 +19,10 @@
...
@@ -19,6 +19,10 @@
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"right flex"
style=
"line-height: 110px;"
>
<div
style=
"margin-left: 20px"
v-if=
"infoData.personnelType==1"
>
员工培训
</div>
<div
style=
"margin-left: 20px"
v-if=
"infoData.personnelType==2"
>
承包商培训
</div>
</div>
<div
class=
"middle flex"
>
<div
class=
"middle flex"
>
<div>
<div>
<div
class=
"top"
>
参与培训人员
</div>
<div
class=
"top"
>
参与培训人员
</div>
...
@@ -93,7 +97,9 @@ export default {
...
@@ -93,7 +97,9 @@ export default {
methods
:
{
methods
:
{
edit
()
{
edit
()
{
// 编辑
// 编辑
this
.
$emit
(
"edit"
,
this
.
oldInfoData
);
//console.log(this.infoData);
this
.
$parent
.
addClick
(
this
.
infoData
);
//this.$emit("edit", this.oldInfoData);
},
},
save
()
{
save
()
{
if
(
this
.
infoData
.
planName
==
""
)
{
if
(
this
.
infoData
.
planName
==
""
)
{
...
@@ -177,7 +183,7 @@ export default {
...
@@ -177,7 +183,7 @@ export default {
transition
:
all
0
.5s
;
transition
:
all
0
.5s
;
width
:
93
.2%
;
width
:
93
.2%
;
max-width
:
1600px
;
max-width
:
1600px
;
height
:
111px
;
min-
height
:
111px
;
border
:
1px
solid
#cecece
;
border
:
1px
solid
#cecece
;
box-shadow
:
-4px
0px
0px
0px
rgba
(
0
,
0
,
0
,
0
.1
);
box-shadow
:
-4px
0px
0px
0px
rgba
(
0
,
0
,
0
,
0
.1
);
background
:
linear-gradient
(
background
:
linear-gradient
(
...
@@ -196,6 +202,7 @@ export default {
...
@@ -196,6 +202,7 @@ export default {
height
:
100%
;
height
:
100%
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
right
;
justify-content
:
right
;
margin-top
:
25px
;
.left-item
{
.left-item
{
transition
:
all
0
.5s
;
transition
:
all
0
.5s
;
width
:
200px
;
width
:
200px
;
...
...
danger-manage-web/src/views/educationPlanExam/trainingProgram/components/Lesson.vue
0 → 100644
View file @
61db080f
<!--
* @Author: 纪泽龙 jizelong@qq.com
* @Date: 2022-09-22 10:59:44
* @LastEditors: 纪泽龙 jizelong@qq.com
* @LastEditTime: 2022-12-21 17:30:33
* @FilePath: /danger-manage-web/src/views/lessonsProgram/components/Lession.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<
template
>
<div
class=
"form-wrapper"
>
<el-form
class=
"form"
ref=
"form"
:model=
"form"
label-width=
"auto"
:rules=
"rules"
>
<div
class=
"top flex"
>
<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=
"releaseTime"
>
-->
<!--
<el-date-picker-->
<!--v-model="form.startTime"-->
<!--value-format="yyyy-MM-dd HH:mm:ss"-->
<!--type="datetime"-->
<!--placeholder="开始时间"-->
<!--default-time="12:00:00"-->
<!-->-->
<!--
</el-date-picker>
-->
<!--
</el-form-item>
-->
</div>
<!--
<el-form-item
label=
"结束时间"
prop=
"releaseTime"
>
-->
<!--
<el-date-picker-->
<!--v-model="form.endTime"-->
<!--value-format="yyyy-MM-dd HH:mm:ss"-->
<!--type="datetime"-->
<!--placeholder="结束时间"-->
<!--default-time="12:00:00"-->
<!-->-->
<!--
</el-date-picker>
-->
<!--
</el-form-item>
-->
<el-form-item
label=
"选择人员"
prop=
"releaseTime"
>
<!-- table -->
<!-- jsonSelectNameList就是呗选中的人员的json -->
<!-- getPeopleList 是每次选中或者删除人员都会返回 一个所有人员列表的json串,[
{staffId:staffId,staffName:staffName},{staffId:staffId,staffName:staffName}] -->
<!-- 要在jsonSelectNameList赋值完毕之后 调用一下 this.$refs.changePaple.changeNameList 135行 -->
<ChangePapel
ref=
"changePaple"
:jsonSelectNameList=
"jsonSelectNameList"
@
getPeopleList=
"getPeopleList"
/>
</el-form-item>
</el-form>
</div>
</
template
>
<
script
>
import
ChangePapel
from
"@/components/PeopleChange"
;
// import { mapGetters } from "vuex";
// import {
// addLessons,
// getLessonById,
// changeLesson,
// } from "@/api/educationPlanExam/lessonsProgram";
import
{
listBank
,
addBank
,
updateBank
,
getBank
,
}
from
"@/api/educationPlanExam/questionBank"
;
// 所有部门
import
{
treeselect
}
from
"@/api/system/dept"
;
import
Treeselect
from
"@riophae/vue-treeselect"
;
import
"@riophae/vue-treeselect/dist/vue-treeselect.css"
;
import
{
getPersonnel
,
addPlan
,
editPlan
,
getPlanList
,
getPlan
}
from
"@/api/educationPlanExam/trainingProgram"
;
export
default
{
name
:
""
,
props
:
{
bankId
:
{
type
:
Number
,
},
// jsonSelectNameList: {
// type: String,
// default:
// '[{"staffId":880,"staffName":"孙卓亚"},{"staffId":871,"staffName":"张玉宾"},{"staffId":869,"staffName":"李二朝"},{"staffId":870,"staffName":"盖永峰"},{"staffId":868,"staffName":"刘丽艳"},{"staffId":867,"staffName":"霍文俊"},{"staffId":866,"staffName":"刘志坚"},{"staffId":865,"staffName":"郝文权"},{"staffId":864,"staffName":"齐雪军"},{"staffId":852,"staffName":"刘江平"},{"staffId":853,"staffName":"谷建海"},{"staffId":851,"staffName":"丁振国"},{"staffId":850,"staffName":"齐江波"},{"staffId":849,"staffName":"周立新"},{"staffId":848,"staffName":"史志波"},{"staffId":847,"staffName":"王增波"},{"staffId":846,"staffName":"杨彦龙"},{"staffId":845,"staffName":"杨华国"},{"staffId":844,"staffName":"王青华"}]',
// },
},
components
:
{
ChangePapel
,
},
data
()
{
return
{
options
:
[{
value
:
1
,
label
:
'内部员工'
},
{
value
:
2
,
label
:
'承包商培训'
}],
form
:
{
bankName
:
""
,
// courseType: "",
// courseConent: "",
// video: "",
// enclosure: "",
deptId
:
null
,
personnelType
:
1
,
abc
:
0
,
},
// 参考人员
jsonSelectNameList
:
null
,
peopleList
:[],
// 归属部门列表
deptOptions
:
[],
fileListVideo
:
[],
fileListFile
:
[],
readOnly
:
false
,
// selectNameList: [],
rules
:
{
bankName
:
[
{
required
:
true
,
trigger
:
"blur"
,
message
:
"计划名称不能为空"
},
],
deptId
:
[
{
required
:
true
,
trigger
:
"blur"
,
message
:
"请选择所属部门"
},
],
},
};
},
computed
:
{
// 获取课程类型
// ...mapGetters(["courseOptions"]),
},
created
()
{
if
(
this
.
bankId
)
{
this
.
getLessonById
();
}
// 归属部门列表
// this.getTreeselect();
},
mounted
()
{
// this.jsonSelectNameList
// '[{"staffId":880,"staffName":"孙卓亚"},{"staffId":871,"staffName":"张玉宾"},{"staffId":869,"staffName":"李二朝"},{"staffId":870,"staffName":"盖永峰"},{"staffId":868,"staffName":"刘丽艳"},{"staffId":867,"staffName":"霍文俊"},{"staffId":866,"staffName":"刘志坚"},{"staffId":865,"staffName":"郝文权"},{"staffId":864,"staffName":"齐雪军"},{"staffId":852,"staffName":"刘江平"},{"staffId":853,"staffName":"谷建海"},{"staffId":851,"staffName":"丁振国"},{"staffId":850,"staffName":"齐江波"},{"staffId":849,"staffName":"周立新"},{"staffId":848,"staffName":"史志波"},{"staffId":847,"staffName":"王增波"},{"staffId":846,"staffName":"杨彦龙"},{"staffId":845,"staffName":"杨华国"},{"staffId":844,"staffName":"王青华"}]';
this
.
$refs
.
changePaple
.
changeNameList
(
this
.
jsonSelectNameList
);
},
methods
:
{
// 添加课程
addLessons
(
data
)
{
if
(
!
this
.
bankId
)
{
console
.
log
(
data
);
return
addBank
(
data
);
}
else
{
console
.
log
(
"修改"
);
return
updateBank
({
bankId
:
this
.
bankId
,
...
data
});
}
},
// 复现
getLessonById
()
{
getPlan
(
this
.
bankId
).
then
((
res
)
=>
{
console
.
log
(
"res"
,
res
);
if
(
res
.
code
==
200
)
{
this
.
form
=
{
bankName
:
res
.
data
.
planName
,
deptId
:
res
.
data
.
planId
,
personnelType
:
res
.
data
.
personnelType
};
// const data = res.data;
// const { bankName, courseType, courseConent, video, enclosure } =
// data;
// this.form = {
// bankName,
// courseType,
// courseConent,
// video,
// enclosure,
// };
// this.fileListVideo = [
// {
// name: bankName + "视频",
// url: uploadfile,
// },
// ];
// this.fileListFile = [
// {
// name: bankName + "附件",
// url: uploadfile,
// },
// ];
}
});
},
// 获取参考人员的list
getPeopleList
(
list
)
{
console
.
log
(
"参考人员"
,
list
);
this
.
peopleList
=
list
;
},
savePlan
(){
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
valid
)
{
if
(
this
.
peopleList
.
length
<
3
){
this
.
$message
.
error
(
'请至少选择一个考试人员'
);
return
}
//console.log(this.peopleList);
this
.
form
.
peopleList
=
this
.
peopleList
.
toString
();
this
.
form
.
planName
=
this
.
form
.
bankName
;
console
.
log
(
this
.
form
)
if
(
this
.
bankId
!=
null
){
this
.
form
.
planId
=
this
.
bankId
;
return
editPlan
(
this
.
form
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$parent
.
$parent
.
$parent
.
getPlanList
();
}
});
}
else
{
return
addPlan
(
this
.
form
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$parent
.
$parent
.
$parent
.
getPlanList
();
}
});
}
}
});
},
save
(
num
=
2
)
{
// 因为富文本编辑器会残留
<
p
><
br
><
/p>,所以要清
空
// if (this.form.courseConent === "
<
p
><
br
><
/p>"
)
{
// this.form.courseConent = "";
// }
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
addLessons
({
...
this
.
form
}).
then
((
res
)
=>
{
// 如果添加会传回来,就用传回来的,如果是修改本身就有,就用本身的
// console.log('res',res)
const
bankId
=
this
.
bankId
||
res
;
// if (res.code == 200) {
// 这样调比较纯函数一点
if
(
num
==
2
)
{
this
.
$message
({
message
:
"保存题库成功"
,
type
:
"success"
,
});
}
else
if
(
num
==
3
)
{
this
.
$message
({
message
:
"保存题库成功,请开始录入题目"
,
type
:
"success"
,
});
}
this
.
$parent
.
$parent
.
componentsNumChange
(
num
);
this
.
$parent
.
$parent
.
changeCourseId
(
bankId
);
this
.
$parent
.
$parent
.
$parent
.
getList
();
return
true
;
// }
});
}
else
{
if
(
!
this
.
form
.
deptId
)
{
document
.
querySelector
(
".vue-treeselect__control"
).
style
.
borderColor
=
"red"
;
}
else
{
document
.
querySelector
(
".vue-treeselect__control"
).
style
.
borderColor
=
""
;
this
.
$refs
.
treeItem
.
clearValidate
();
}
}
});
},
// 保存并进入题目
saveAndNext
()
{
this
.
save
(
3
);
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.form-wrapper
{
padding-top
:
22px
;
width
:
100%
;
height
:
550px
;
// overflow: hidden;
// padding-bottom: 10px;
margin-bottom
:
20px
;
// border-bottom: 1px solid #bbbbbb;
.top
{
width
:
100%
;
justify-content
:
space-between
;
}
}
</
style
>
danger-manage-web/src/views/educationPlanExam/trainingProgram/index.vue
View file @
61db080f
...
@@ -28,7 +28,7 @@
...
@@ -28,7 +28,7 @@
v-for=
"item in list"
v-for=
"item in list"
:key=
"item.planId"
:key=
"item.planId"
:infoData=
"item"
:infoData=
"item"
:personnelOptions=
"
personnelOption
s"
:personnelOptions=
"
item.postId
s"
@
edit=
"edit"
@
edit=
"edit"
@
save=
"itemSave"
@
save=
"itemSave"
@
deletePlan=
"deletePlan"
@
deletePlan=
"deletePlan"
...
@@ -60,16 +60,22 @@
...
@@ -60,16 +60,22 @@
</el-checkbox-group>
</el-checkbox-group>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"dialogSubmitForm"
>
确 定
</el-button>
<el-button
type=
"primary"
@
click=
"dialogSubmitForm"
>
确 定
</el-button>
<el-button
@
click=
"dialogCancel"
>
取 消
</el-button>
<el-button
@
click=
"dialogCancel"
>
取 消
</el-button>
</div>
</div>
</el-dialog>
</el-dialog>
<Dia
ref=
"Dia"
:componentsNum
.
sync=
"componentsNum"
:bankId
.
sync=
"bankId"
:visible
.
sync=
"dilogFlag"
/>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
Dia
from
"./components/Dia"
;
import
Item
from
"./components/Item"
;
import
Item
from
"./components/Item"
;
import
{
import
{
getPersonnel
,
getPersonnel
,
...
@@ -91,7 +97,7 @@ const personnelOptions = [
...
@@ -91,7 +97,7 @@ const personnelOptions = [
export
default
{
export
default
{
name
:
"trainingProgram"
,
name
:
"trainingProgram"
,
components
:
{
components
:
{
Item
,
Item
,
Dia
},
},
data
()
{
data
()
{
return
{
return
{
...
@@ -106,6 +112,10 @@ export default {
...
@@ -106,6 +112,10 @@ export default {
planName
:
""
,
planName
:
""
,
postIds
:
[],
postIds
:
[],
},
},
componentsNum
:
2
,
// 点击的id,如果是新增为空
bankId
:
null
,
dilogFlag
:
false
,
rules
:
{
rules
:
{
planName
:
[
planName
:
[
{
{
...
@@ -143,17 +153,21 @@ export default {
...
@@ -143,17 +153,21 @@ export default {
});
});
},
},
getPlanList
()
{
getPlanList
()
{
this
.
dilogFlag
=
false
;
return
getPlanList
().
then
((
res
)
=>
{
return
getPlanList
().
then
((
res
)
=>
{
console
.
log
(
res
.
data
);
console
.
log
(
res
.
data
);
this
.
list
=
res
.
data
.
map
((
item
)
=>
{
this
.
list
=
res
.
data
.
map
((
item
)
=>
{
return
{
return
{
planId
:
item
.
planId
,
planId
:
item
.
planId
,
planName
:
item
.
planName
,
planName
:
item
.
planName
,
postIds
:
item
.
postList
personnelType
:
item
.
personnelType
,
postIds
:
item
.
postList
,
postList
:
item
.
postList
.
filter
((
item
)
=>
item
.
ischeck
)
.
filter
((
item
)
=>
item
.
ischeck
)
.
map
((
item
)
=>
item
.
postId
),
.
map
((
item
)
=>
item
.
postId
),
};
};
});
});
console
.
log
(
this
.
list
);
});
});
},
},
addPlan
(
plan
)
{
addPlan
(
plan
)
{
...
@@ -214,8 +228,18 @@ export default {
...
@@ -214,8 +228,18 @@ export default {
this
.
isActiveId
=
999
;
this
.
isActiveId
=
999
;
},
},
changeList
()
{},
changeList
()
{},
addClick
()
{
addClick
(
form
)
{
this
.
addOpen
=
true
;
this
.
$refs
.
Dia
.
title
=
"新增培训计划"
;
this
.
componentsNum
=
2
;
this
.
bankId
=
null
;
this
.
dilogFlag
=
true
;
if
(
form
.
planId
!=
undefined
){
//console.log("=======")
this
.
$refs
.
Dia
.
title
=
"修改培训计划"
;
this
.
bankId
=
form
.
planId
;
}
//this.addOpen = true;
},
},
dialogSubmitForm
()
{
dialogSubmitForm
()
{
this
.
$refs
[
"form"
].
validate
((
valid
)
=>
{
this
.
$refs
[
"form"
].
validate
((
valid
)
=>
{
...
...
danger-manage-web/src/views/safetyManagement/announcement/index.vue
0 → 100644
View file @
61db080f
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
>
<el-form-item
label=
"风险等级"
prop=
"assessmentLevel"
>
<el-select
v-model=
"queryParams.assessmentLevel"
placeholder=
"请选择风险等级"
style=
"width: 100%"
>
<el-option
v-for=
"dict in levelOptions"
:key=
"dict.dictValue"
:label=
"dict.dictLabel"
:value=
"dict.dictValue"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"承诺时间"
prop=
"commitmentDate"
>
<el-date-picker
v-model=
"dateRange"
value-format=
"yyyy-MM-dd HH:mm:ss"
size=
"small"
style=
"width: 220px"
type=
"datetimerange"
range-separator=
"-"
start-placeholder=
"开始时间"
end-placeholder=
"结束时间"
:default-time=
"['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<el-button
style=
"width: 75px"
type=
"primary"
plain
size=
"mini"
@
click=
"handleAdd"
>
承诺
</el-button>
</el-col>
<right-toolbar
:showSearch
.
sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"announcementList"
>
<el-table-column
label=
"序号"
align=
"center"
type=
"index"
width=
"100"
/>
<el-table-column
label=
"风险等级"
align=
"center"
prop=
"assessmentLevel"
:formatter=
"levelFormate"
/>
<el-table-column
label=
"承诺人"
align=
"center"
prop=
"keyPerson"
/>
<el-table-column
label=
"承诺时间"
align=
"center"
prop=
"commitmentDate"
width=
"180"
/>
<el-table-column
label=
"承诺状态"
align=
"center"
prop=
"status"
>
<template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.status == '0'"
>
已承诺
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"查看报告"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleDetail(scope.row)"
>
安全承诺报告
</el-button>
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total>0"
:total=
"total"
:page
.
sync=
"queryParams.pageNum"
:limit
.
sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<!-- 添加或修改安全承诺公告对话框 -->
<el-dialog
:title=
"title"
center
:visible
.
sync=
"open"
width=
"1200px"
append-to-body
@
close=
"cancel"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"160px"
>
<el-row>
<el-col
:span=
"24"
>
<span
style=
"font-weight: bold"
>
企业状态
</span>
<el-divider></el-divider>
</el-col>
</el-row>
<el-row>
<div
v-show=
"!operate"
>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"生产装置"
prop=
"productionUnit"
>
<el-input
v-model=
"form.productionUnit"
placeholder=
""
disabled
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"运行装置"
prop=
"runningDevice"
>
<el-input-number
:min=
"0"
v-model=
"form.runningDevice"
placeholder=
"请输入运行装置数量"
@
change=
"unitSum"
/>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"停产装置"
prop=
"shutdownDevice"
>
<el-input-number
:min=
"0"
v-model=
"form.shutdownDevice"
placeholder=
"请输入停产装置数量"
@
change=
"unitSum"
/>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"检修装置"
prop=
"maintenanceDevice"
>
<el-input-number
:min=
"0"
v-model=
"form.maintenanceDevice"
placeholder=
"请输入检修装置数量"
@
change=
"unitSum"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"动火作业"
prop=
"hotWork"
>
<el-input
v-model=
"form.hotWork"
placeholder=
""
disabled
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"特殊动火作业"
prop=
"specialHotWork"
>
<el-input-number
:min=
"0"
v-model=
"form.specialHotWork"
placeholder=
"请输入特殊动火作业数量"
@
change=
"workSum"
/>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"一级动火作业"
prop=
"classOneHotWork"
>
<el-input-number
:min=
"0"
v-model=
"form.classOneHotWork"
placeholder=
"请输入一级动火作业数量"
@
change=
"workSum"
/>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"二级动火作业"
prop=
"classTwoHotWork"
>
<el-input-number
:min=
"0"
v-model=
"form.classTwoHotWork"
placeholder=
"请输入二级动火作业数量"
@
change=
"workSum"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"风险等级"
prop=
"assessmentLevel"
>
<el-select
v-model=
"form.assessmentLevel"
placeholder=
"请选择风险等级"
style=
"width: 100%"
>
<el-option
v-for=
"dict in levelOptions"
:key=
"dict.dictValue"
:label=
"dict.dictLabel"
:value=
"dict.dictValue"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"进入受限空间作业"
prop=
"isConfinedSpace"
>
<el-select
v-model=
"form.isConfinedSpace"
placeholder=
"是否进入受限空间作业"
style=
"width: 100%"
>
<el-option
v-for=
"dict in options"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"是否处于试生产"
prop=
"isTrialProduction"
>
<el-select
v-model=
"form.isTrialProduction"
placeholder=
"是否处于试生产"
style=
"width: 100%"
>
<el-option
v-for=
"dict in options"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"罐装、仓库等重大危险源是否处于安全状态"
>
<el-select
v-model=
"form.isSecurityStatus"
placeholder=
"是否处于安全状态"
style=
"width: 100%"
>
<el-option
v-for=
"dict in options"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
<div
v-show=
"operate"
>
<el-col
:span=
"18"
>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"生产装置:"
prop=
"productionUnit"
>
<span>
{{form.productionUnit}}
</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"运行装置:"
prop=
"runningDevice"
>
<span>
{{form.runningDevice}}
</span>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"停产装置:"
prop=
"shutdownDevice"
>
<span>
{{form.shutdownDevice}}
</span>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"检修装置:"
prop=
"maintenanceDevice"
>
<span>
{{form.maintenanceDevice}}
</span>
</el-form-item>
</el-col>
</el-row>
<br/>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"动火作业:"
prop=
"hotWork"
>
<span>
{{form.hotWork}}
</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"特殊动火作业:"
prop=
"specialHotWork"
>
<span>
{{form.specialHotWork}}
</span>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"一级动火作业:"
prop=
"classOneHotWork"
>
<span>
{{form.classOneHotWork}}
</span>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"二级动火作业:"
prop=
"classTwoHotWork"
>
<span>
{{form.classTwoHotWork}}
</span>
</el-form-item>
</el-col>
</el-row>
<br/>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"进入受限空间作业:"
prop=
"isConfinedSpace"
>
<span
v-if=
"form.isConfinedSpace == '0'"
>
是
</span>
<span
v-if=
"form.isConfinedSpace == '1'"
>
否
</span>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"是否处于试生产:"
prop=
"isTrialProduction"
>
<span
v-if=
"form.isTrialProduction == '0'"
>
是
</span>
<span
v-if=
"form.isTrialProduction == '1'"
>
否
</span>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"罐装、仓库等重大危险源是否处于安全状态:"
>
<span
v-if=
"form.isSecurityStatus == '0'"
>
是
</span>
<span
v-if=
"form.isSecurityStatus == '1'"
>
否
</span>
</el-form-item>
</el-col>
</el-row>
</el-col>
<el-col
:span=
"5"
style=
"margin:20px; border:1px solid #DCDFE6; border-radius: 10px"
>
<div
style=
"text-align: center; margin-top:50px; padding:20px"
>
<img
src=
"@/assets/images/assessmentLevel.png"
>
</div>
<div
style=
"text-align: center; margin-bottom:50px; padding:20px"
>
风险等级:
<span
v-if=
"form.assessmentLevel == '1'"
>
低风险
</span>
<span
v-if=
"form.assessmentLevel == '2'"
>
一般风险
</span>
<span
v-if=
"form.assessmentLevel == '3'"
>
较高风险
</span>
<span
v-if=
"form.assessmentLevel == '4'"
>
高风险
</span>
</div>
</el-col>
</div>
</el-row>
<el-row>
<el-col
:span=
"24"
>
<span
style=
"font-weight: bold"
>
企业承诺
</span>
<el-divider></el-divider>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"主要负责人"
prop=
"keyPerson"
>
<el-input
v-show=
"!operate"
v-model=
"form.keyPerson"
placeholder=
"请输入主要负责人"
/>
<span
v-show=
"operate"
>
{{form.keyPerson}}
</span>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"承诺日期"
prop=
"commitmentDate"
>
<el-date-picker
clearable
size=
"small"
disabled
v-show=
"!operate"
v-model=
"commitmentDate"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"选择承诺日期"
>
</el-date-picker>
<span
v-show=
"operate"
>
{{parseTime(form.commitmentDate, '{y}-{m}-{d}')}}
</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"24"
>
<el-form-item
label=
"承诺公告"
prop=
"announcement"
>
<el-input
v-show=
"!operate"
v-model=
"form.announcement"
type=
"textarea"
placeholder=
"请输入内容"
/>
<span
v-show=
"operate"
>
{{form.announcement}}
</span>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
v-show=
"!operate"
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
v-show=
"!operate"
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
listAnnouncement
,
getCurrent
,
getAnnouncement
,
delAnnouncement
,
addAnnouncement
,
updateAnnouncement
,
exportAnnouncement
}
from
"@/api/safetyManagement/announcement"
;
export
default
{
name
:
"Announcement"
,
components
:
{
},
data
()
{
return
{
// 遮罩层
loading
:
true
,
// 导出遮罩层
exportLoading
:
false
,
// 选中数组
ids
:
[],
// 日期范围(默认当日0点到当前时间)
dateRange
:
[
new
Date
(
new
Date
().
getFullYear
(),
new
Date
().
getMonth
(),
new
Date
().
getDate
(),
0
,
0
,
0
),
new
Date
()],
// dateRange: [],
levelOptions
:
[],
options
:
[{
value
:
"0"
,
label
:
"是"
},{
value
:
"1"
,
label
:
"否"
}],
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 安全承诺公告表格数据
announcementList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
//详情控制
operate
:
false
,
// 查询参数
queryParams
:
{
pageNum
:
1
,
pageSize
:
10
,
assessmentLevel
:
null
},
// 表单参数
form
:
{},
commitmentDate
:
new
Date
(),
// 表单校验
rules
:
{
keyPerson
:
[
{
required
:
true
,
message
:
"主要负责人不能为空"
,
trigger
:
"blur"
}
],
announcement
:
[
{
required
:
true
,
message
:
"承诺公告不能为空"
,
trigger
:
"blur"
}
],
}
};
},
created
()
{
this
.
getList
();
this
.
getDicts
(
"assessment_level"
).
then
(
response
=>
{
this
.
levelOptions
=
response
.
data
;
});
},
methods
:
{
/** 查询安全承诺公告列表 */
getList
()
{
this
.
loading
=
true
;
let
params
=
[];
console
.
log
(
"this.dateRange"
,
this
.
dateRange
);
if
(
this
.
dateRange
!=
null
&&
typeof
this
.
dateRange
[
0
]
!=
"string"
)
{
let
begin
=
this
.
dateRange
[
0
],
end
=
this
.
dateRange
[
1
];
params
=
[
begin
.
getFullYear
()
+
'-'
+
(
begin
.
getMonth
()
+
1
)
+
'-'
+
begin
.
getDate
()
+
' '
+
begin
.
getHours
()
+
':'
+
begin
.
getMinutes
()
+
':'
+
begin
.
getSeconds
(),
end
.
getFullYear
()
+
'-'
+
(
begin
.
getMonth
()
+
1
)
+
'-'
+
end
.
getDate
()
+
' '
+
end
.
getHours
()
+
':'
+
end
.
getMinutes
()
+
':'
+
end
.
getSeconds
()];
console
.
log
(
begin
,
end
);
console
.
log
(
"params"
,
params
);
}
else
{
params
=
this
.
dateRange
;
}
listAnnouncement
(
this
.
addDateRange
(
this
.
queryParams
,
params
)).
then
(
response
=>
{
this
.
announcementList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
levelFormate
(
row
){
console
.
log
(
"this.levelOptions"
,
this
.
levelOptions
);
return
this
.
levelOptions
.
find
(
item
=>
item
.
dictValue
==
row
.
assessmentLevel
).
dictLabel
;
},
unitSum
(){
if
(
isNaN
(
this
.
form
.
runningDevice
)){
this
.
form
.
runningDevice
=
0
;
}
if
(
isNaN
(
this
.
form
.
shutdownDevice
)){
this
.
form
.
shutdownDevice
=
0
;
}
if
(
isNaN
(
this
.
form
.
maintenanceDevice
)){
this
.
form
.
maintenanceDevice
=
0
;
}
this
.
form
.
productionUnit
=
this
.
form
.
runningDevice
+
this
.
form
.
shutdownDevice
+
this
.
form
.
maintenanceDevice
;
},
workSum
(){
if
(
isNaN
(
this
.
form
.
specialHotWork
)){
this
.
form
.
specialHotWork
=
0
;
}
if
(
isNaN
(
this
.
form
.
classOneHotWork
)){
this
.
form
.
classOneHotWork
=
0
;
}
if
(
isNaN
(
this
.
form
.
classTwoHotWork
)){
this
.
form
.
classTwoHotWork
=
0
;
}
this
.
form
.
hotWork
=
this
.
form
.
specialHotWork
+
this
.
form
.
classOneHotWork
+
this
.
form
.
classTwoHotWork
;
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
this
.
operate
=
false
;
this
.
reset
();
},
// 表单重置
reset
()
{
this
.
form
=
{
id
:
null
,
productionUnit
:
null
,
runningDevice
:
null
,
shutdownDevice
:
null
,
maintenanceDevice
:
null
,
hotWork
:
null
,
specialHotWork
:
null
,
classOneHotWork
:
null
,
classTwoHotWork
:
null
,
isConfinedSpace
:
null
,
isTrialProduction
:
null
,
isSecurityStatus
:
null
,
assessmentLevel
:
null
,
keyPerson
:
null
,
announcement
:
null
};
this
.
resetForm
(
"form"
);
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNum
=
1
;
this
.
getList
();
},
/** 重置按钮操作 */
resetQuery
()
{
this
.
dateRange
=
[
new
Date
(
new
Date
().
getFullYear
(),
new
Date
().
getMonth
(),
new
Date
().
getDate
(),
0
,
0
,
0
),
new
Date
()];
// this.dateRange = [];
this
.
resetForm
(
"queryForm"
);
this
.
handleQuery
();
},
/** 新增按钮操作 */
handleAdd
()
{
getCurrent
().
then
(
response
=>
{
let
list
=
response
.
data
;
console
.
log
(
list
,
"list"
);
if
(
list
===
undefined
||
list
.
length
===
0
)
{
this
.
reset
();
this
.
open
=
true
;
this
.
title
=
"安全承诺公告"
;
}
else
{
this
.
msgError
(
"今日已录入安全承诺"
);
}
});
},
/** 提交按钮 */
submitForm
()
{
this
.
$refs
[
"form"
].
validate
(
valid
=>
{
if
(
valid
)
{
addAnnouncement
(
this
.
form
).
then
(
response
=>
{
this
.
msgSuccess
(
"提交成功"
);
this
.
open
=
false
;
this
.
getList
();
});
}
});
},
handleDetail
(
row
)
{
getAnnouncement
(
row
.
id
).
then
(
response
=>
{
if
(
response
.
code
==
200
)
{
this
.
form
=
response
.
data
;
this
.
open
=
true
;
this
.
operate
=
true
;
this
.
title
=
"安全承诺公告报告"
;
}
else
{
this
.
msgSuccess
(
"查看失败"
);
}
});
},
}
};
</
script
>
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