# 代码组成 1. 该项目代码由两部分组成,其中第一部分为**包头应急管理局**,第二部分为**集宁环保厅** 2. 包头应急管理局由原始代码 + check2 + 带有 v1 标记的代码 3. 集宁环保厅的由 v2 标记的代码 # 业务逻辑 ## 包头应急局 1. 案件由网格员进行上报,网格员的人员级别为5级,网格类型有**嘎查村(社区)**,**苏木乡镇(街道)**,**工业园区**等三类 2. 企业需要有网格员去认领 3. 网格员人员类型有:市管理员、旗县区管理员、旗县区委办局管理员、乡镇街道工业园区管理员、网格员,这几个相当于角色,并不做能否**新增**和**检查**企业判断 4. 真正判断是否是网格员的字段是:**isGridOperator** 该字段为 **1** 时,表示为网格员,即有**新增**和**检查**企业权限。 5. 上报案件时,检查项根据网格员的**网格类型**来获取。 6. 网格类型与检查项的关联表为 **gen_industry_check_item_v1**,表中 **classify_id** 对应的就是网格员表中的 **grid_type** 字段,同时对应这企业表中的 **classify** 字段。 7. 案件上报后,后台查询上报人的网格员属性,根据 **grid_type** 查询检查项用来判断企业的检查内容是否通过。 ### 案件的流转流程 1. 每月进行安全隐患巡检,根据企业实际情况上报。 2. 所有必查的检查项全部通过则流程结束 3. 如果检查项中存在**必查**且**未通过**,则进入案件复查。 4. 案件复查,如果必查项全部通过,则流程结束,如果存在**必查**且**未通过**检查项,则案件上报到**街道办事处**一级,由该级网格长处理案件 5. 街道办事处级网格长可以选在完成案件或者交由上级处理 6. 当将案件交由上级处理时,街道办事处一级可选择将案件上报至**直属领导(旗县区委办局)**或者上报至**旗县区管理员**,其中上报至**旗县区管理员**时,由于不是直接上下级关系,因此在上报时需要选择对应的网格长。 7. 旗县区委办局的网格长可以选择对案件进行处理、回退。 8. 旗县区管理员可以选择对案件进行处理、回退和交由**上级(市管理员)**处理。 9. 市管理员可以对案件进行处理、回退。该级市案件流转流程中的最后一级。 10. 只要用户处理过案件(案件的经办人或处理人),则可以再历史案件中看到自己处理过的案件。 ### 案件随机指派 1. taskCheck的v1版本 ### 增加用户轨迹 表名 ```sql CREATE TABLE `ac_action_point` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `action_point_id` char(36) NOT NULL, `lng` varchar(255) DEFAULT NULL COMMENT '经度', `lat` varchar(255) DEFAULT NULL COMMENT '维度', `gmt_create` datetime DEFAULT NULL COMMENT '创建时间', `creator` char(36) DEFAULT NULL COMMENT '创建人', `creator_name` varchar(255) DEFAULT NULL COMMENT '创建人姓名', PRIMARY KEY (`id`), UNIQUE KEY `action_point_id` (`action_point_id`), KEY `creator` (`creator`), KEY `gmt_create` (`gmt_create`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ``` ## 集宁环保厅 1. 案件上报与流转与包头v1一致 2. 不一致的地方是 1. 企业管理设置 **行业类型** 2. 企业管理设置 **所属分类** 3. 行业与检查项配置 4. 企业类型与检查项配置 5. 网格员管理 **是否为网格员** 设置为 **是** 3. 上报案件时,检查项由当前检查的企业中的行业(industryId)决定。 4. 上报时校对检查项也是由企业中的行业(industryId)决定。 ### 案件随机指派 1. taskCheck的v2版本