Commit 39fbb01a authored by wuqinghua's avatar wuqinghua

Merge remote-tracking branch 'origin/master'

parents 9b70cb49 0f2b1cdb
package com.zehong.web.controller.complainDeal;
import java.util.Date;
import java.util.List;
import com.zehong.common.core.domain.model.LoginUser;
......@@ -51,7 +52,6 @@ public class TComplainDealController extends BaseController
if(loginUser.getUser().getDeptId()!=-2){
tComplainDeal.setComplainAssignEnterproseId(loginUser.getUser().getDeptId());
}
System.out.println("=========="+loginUser.getUser().getDeptId());
startPage();
List<TComplainDeal> list = tComplainDealService.selectTComplainDealList(tComplainDeal);
return getDataTable(list);
......@@ -99,6 +99,9 @@ public class TComplainDealController extends BaseController
@PutMapping
public AjaxResult edit(@RequestBody TComplainDeal tComplainDeal)
{
if(tComplainDeal.getComplainStatus().equals("2")){
tComplainDeal.setDealTime(new Date());
}
return toAjax(tComplainDealService.updateTComplainDeal(tComplainDeal));
}
......
......@@ -8,13 +8,15 @@ import com.zehong.common.utils.file.FileUploadUtils;
import com.zehong.common.utils.file.FileUtils;
import com.zehong.framework.config.ServerConfig;
import com.zehong.system.domain.THiddenDangerStandingBook;
import com.zehong.system.domain.TSafeEquipmentStandingBook;
import com.zehong.system.domain.TTroubleStandingBook;
import com.zehong.system.domain.TVideoManager;
import com.zehong.system.domain.form.THiddenDangerStandingBookForm;
import com.zehong.system.domain.form.TTroubleStandingBookForm;
import com.zehong.system.domain.vo.HomepageVo;
import com.zehong.system.domain.vo.THiddenDangerStandingBookVo;
import com.zehong.system.domain.vo.TTroubleStandingBookVo;
import com.zehong.system.service.ITHiddenDangerStandingBookService;
import com.zehong.system.service.ITTroubleStandingBookService;
import com.zehong.system.service.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -41,10 +43,18 @@ public class StatisticController
{
private static final Logger log = LoggerFactory.getLogger(StatisticController.class);
@Autowired
private ITVideoManagerService tVideoManagerService;
@Autowired
private ITSafeEquipmentStandingBookService tSafeEquipmentStandingBookService;
@Autowired
private ITTroubleStandingBookService tTroubleStandingBookService;
@Autowired
private ITHiddenDangerStandingBookService tHiddenDangerStandingBookService;
@Autowired
private ITComplainDealService tComplainDealService;
@Autowired
private ITWorkOrderService tWorkOrderService;
/**
* 燃气事故台账统计
......@@ -64,4 +74,29 @@ public class StatisticController
return AjaxResult.success(tHiddenDangerStandingBookService.selectTHiddenDangerStandingBookStatistic());
}
/**
* 首页统计
*/
@GetMapping("/homepageStatistic")
public AjaxResult homepageStatistic()
{
HomepageVo homepageVo = new HomepageVo();
homepageVo = tComplainDealService.countTComplainDeal();
homepageVo.setTaskTotal(tWorkOrderService.countTWorkOrder().getTaskTotal());
homepageVo.setTaskFeedbackTotal(tWorkOrderService.countTWorkOrder().getTaskFeedbackTotal());
List<TVideoManager> tVideoManagerList = tVideoManagerService.selectTVideoManagerList(null);
List<TSafeEquipmentStandingBook> tSafeEquipmentStandingBookList = tSafeEquipmentStandingBookService.selectTSafeEquipmentStandingBookList(null);
List<TTroubleStandingBook> tTroubleStandingBookList = tTroubleStandingBookService.selectTTroubleStandingBookList(null);
List<THiddenDangerStandingBook> tHiddenDangerStandingBookList = tHiddenDangerStandingBookService.selectTHiddenDangerStandingBookList(null);
homepageVo.setVideoTotal(tVideoManagerList.size());
homepageVo.setEquipmentTotal(tSafeEquipmentStandingBookList.size());
homepageVo.setTroubleTotal(tTroubleStandingBookList.size());
homepageVo.setHiddenTotal(tHiddenDangerStandingBookList.size());
return AjaxResult.success(homepageVo);
}
}
package com.zehong.system.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
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;
import java.util.Date;
/**
* 投诉处置对象 t_complain_deal
*
......@@ -34,8 +37,11 @@ public class TComplainDeal extends BaseEntity
@Excel(name = "转办记录")
private String transferRecord;
@Excel(name = "反馈事件")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date dealTime;
/** 办理情况 */
@Excel(name = "办理情况")
@Excel(name = "办理反馈情况")
private String dealCondition;
/** 指派单位名称 */
......@@ -184,6 +190,14 @@ public class TComplainDeal extends BaseEntity
return remarks;
}
public Date getDealTime() {
return dealTime;
}
public void setDealTime(Date dealTime) {
this.dealTime = dealTime;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
......
package com.zehong.system.domain.vo;
import lombok.Data;
@Data
public class HomepageVo
{
// 任务总数
private int taskTotal;
// 任务反馈总数
private int taskFeedbackTotal;
// 投诉总数
private int complaintTotal;
// 投诉反馈总数
private int complaintFeedbackTotal;
// 视频监控总数
private int videoTotal;
// 安全装置总数
private int equipmentTotal;
// 事故总数
private int troubleTotal;
// 隐患总数
private int hiddenTotal;
}
......@@ -5,6 +5,7 @@ import java.util.Map;
import java.util.Objects;
import com.zehong.system.domain.TComplainDeal;
import com.zehong.system.domain.vo.HomepageVo;
import org.apache.ibatis.annotations.Param;
/**
......@@ -31,6 +32,13 @@ public interface TComplainDealMapper
*/
public List<TComplainDeal> selectTComplainDealList(TComplainDeal tComplainDeal);
/**
* 投诉处置统计
*
* @return 投诉处置统计
*/
public HomepageVo countTComplainDeal();
/**
* 新增投诉处置
*
......
......@@ -2,6 +2,7 @@ package com.zehong.system.mapper;
import java.util.List;
import com.zehong.system.domain.TWorkOrder;
import com.zehong.system.domain.vo.HomepageVo;
/**
* 燃气任务Mapper接口
......@@ -27,6 +28,13 @@ public interface TWorkOrderMapper
*/
public List<TWorkOrder> selectTWorkOrderList(TWorkOrder tWorkOrder);
/**
* 燃气任务统计
*
* @return 燃气任务统计
*/
public HomepageVo countTWorkOrder();
/**
* 新增燃气任务
*
......
......@@ -4,6 +4,7 @@ import java.util.List;
import java.util.Map;
import com.zehong.system.domain.TComplainDeal;
import com.zehong.system.domain.vo.HomepageVo;
/**
* 投诉处置Service接口
......@@ -29,6 +30,13 @@ public interface ITComplainDealService
*/
public List<TComplainDeal> selectTComplainDealList(TComplainDeal tComplainDeal);
/**
* 投诉处置统计
*
* @return 投诉处置统计
*/
public HomepageVo countTComplainDeal();
/**
* 新增投诉处置
*
......
......@@ -2,6 +2,7 @@ package com.zehong.system.service;
import java.util.List;
import com.zehong.system.domain.TWorkOrder;
import com.zehong.system.domain.vo.HomepageVo;
/**
* 燃气任务Service接口
......@@ -27,6 +28,13 @@ public interface ITWorkOrderService
*/
public List<TWorkOrder> selectTWorkOrderList(TWorkOrder tWorkOrder);
/**
* 燃气任务统计
*
* @return 燃气任务统计
*/
public HomepageVo countTWorkOrder();
/**
* 新增燃气任务
*
......
......@@ -4,6 +4,7 @@ import java.util.List;
import java.util.Map;
import com.zehong.common.utils.DateUtils;
import com.zehong.system.domain.vo.HomepageVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zehong.system.mapper.TComplainDealMapper;
......@@ -46,6 +47,16 @@ public class TComplainDealServiceImpl implements ITComplainDealService
return tComplainDealMapper.selectTComplainDealList(tComplainDeal);
}
/**
* 投诉处置统计
*
* @return 投诉处置统计
*/
public HomepageVo countTComplainDeal()
{
return tComplainDealMapper.countTComplainDeal();
}
/**
* 新增投诉处置
*
......
......@@ -5,6 +5,7 @@ import com.zehong.common.utils.SecurityUtils;
import com.zehong.common.utils.StringUtils;
import com.zehong.system.domain.TEnterpriseInfo;
import com.zehong.system.domain.TWorkOrder;
import com.zehong.system.domain.vo.HomepageVo;
import com.zehong.system.mapper.TEnterpriseInfoMapper;
import com.zehong.system.mapper.TWorkOrderMapper;
import com.zehong.system.service.ITWorkOrderService;
......@@ -52,6 +53,16 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
return tWorkOrderMapper.selectTWorkOrderList(tWorkOrder);
}
/**
* 燃气任务统计
*
* @return 燃气任务统计
*/
public HomepageVo countTWorkOrder()
{
return tWorkOrderMapper.countTWorkOrder();
}
/**
* 新增燃气任务
*
......@@ -92,6 +103,9 @@ public class TWorkOrderServiceImpl implements ITWorkOrderService
{
tWorkOrder.setUpdateTime(DateUtils.getNowDate());
tWorkOrder.setUpdateBy(SecurityUtils.getUsername());
/*if(StringUtils.isNotEmpty(tWorkOrder.getIconUrl()) || StringUtils.isNotEmpty(tWorkOrder.getRectificationResult())){
tWorkOrder.setWorkStatus("2");
}*/
return tWorkOrderMapper.updateTWorkOrder(tWorkOrder);
}
......
......@@ -10,6 +10,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="complainPhone" column="complain_phone" />
<result property="complainMatter" column="complain_matter" />
<result property="transferRecord" column="transfer_record" />
<result property="dealTime" column="deal_time" />
<result property="dealCondition" column="deal_condition" />
<result property="complainAssignEnterproseName" column="complain_assign_enterprose_name" />
<result property="complainAssignEnterproseId" column="complain_assign_enterprose_id" />
......@@ -25,7 +26,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectTComplainDealVo">
select complain_deal_id, complain_name, complain_phone, complain_matter, transfer_record, deal_condition, complain_assign_enterprose_name, complain_assign_enterprose_id, complain_assign_man_id, complain_assign_man, complain_status, create_by, create_time, update_by, update_time, is_del, remarks from t_complain_deal
select complain_deal_id, complain_name, complain_phone, complain_matter, transfer_record, deal_time,deal_condition, complain_assign_enterprose_name, complain_assign_enterprose_id, complain_assign_man_id, complain_assign_man, complain_status, create_by, create_time, update_by, update_time, is_del, remarks from t_complain_deal
</sql>
<select id="selectTComplainDealList" parameterType="TComplainDeal" resultMap="TComplainDealResult">
......@@ -44,13 +45,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="isDel != null and isDel != ''"> and is_del = #{isDel}</if>
<if test="remarks != null and remarks != ''"> and remarks = #{remarks}</if>
</where>
order by create_time desc
</select>
<select id="selectTComplainDealById" parameterType="Long" resultMap="TComplainDealResult">
<include refid="selectTComplainDealVo"/>
where complain_deal_id = #{complainDealId}
</select>
<select id="countTComplainDeal" resultType="HomepageVo">
select COUNT(t.complain_deal_id) AS complaintTotal,
SUM(CASE t.complain_status WHEN '2' THEN 1 ELSE 0 END) AS complaintFeedbackTotal
from (select * from t_complain_deal where is_del = '0') t
</select>
<insert id="insertTComplainDeal" parameterType="TComplainDeal" useGeneratedKeys="true" keyProperty="complainDealId">
insert into t_complain_deal
<trim prefix="(" suffix=")" suffixOverrides=",">
......@@ -58,6 +66,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="complainPhone != null">complain_phone,</if>
<if test="complainMatter != null">complain_matter,</if>
<if test="transferRecord != null">transfer_record,</if>
<if test="dealTime !=null">deal_time,</if>
<if test="dealCondition != null">deal_condition,</if>
<if test="complainAssignEnterproseName != null">complain_assign_enterprose_name,</if>
<if test="complainAssignEnterproseId != null">complain_assign_enterprose_id,</if>
......@@ -76,6 +85,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="complainPhone != null">#{complainPhone},</if>
<if test="complainMatter != null">#{complainMatter},</if>
<if test="transferRecord != null">#{transferRecord},</if>
<if test="dealTime != null">#{dealTime},</if>
<if test="dealCondition != null">#{dealCondition},</if>
<if test="complainAssignEnterproseName != null">#{complainAssignEnterproseName},</if>
<if test="complainAssignEnterproseId != null">#{complainAssignEnterproseId},</if>
......@@ -98,6 +108,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="complainPhone != null">complain_phone = #{complainPhone},</if>
<if test="complainMatter != null">complain_matter = #{complainMatter},</if>
<if test="transferRecord != null">transfer_record = #{transferRecord},</if>
<if test="dealTime != null">deal_time = #{dealTime},</if>
<if test="dealCondition != null">deal_condition = #{dealCondition},</if>
<if test="complainAssignEnterproseName != null">complain_assign_enterprose_name = #{complainAssignEnterproseName},</if>
<if test="complainAssignEnterproseId != null">complain_assign_enterprose_id = #{complainAssignEnterproseId},</if>
......
......@@ -28,7 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectTVideoManagerList" parameterType="TVideoManager" resultMap="TVideoManagerResult">
<include refid="selectTVideoManagerVo"/>
<where>
<where> is_del = '0'
<if test="videoName != null and videoName != ''"> and video_name like concat('%', #{videoName}, '%')</if>
<if test="resourceId != null and resourceId != ''"> and resource_id = #{resourceId}</if>
<if test="longitude != null "> and longitude = #{longitude}</if>
......@@ -37,7 +37,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="type != null and type != ''"> and type = #{type}</if>
<if test="beyondEnterpriseId != null "> and beyond_enterprise_id = #{beyondEnterpriseId}</if>
<if test="beyondEnterpriseName != null and beyondEnterpriseName != ''"> and beyond_enterprise_name like concat('%', #{beyondEnterpriseName}, '%')</if>
<if test="isDel != null and isDel != ''"> and is_del = #{isDel}</if>
<if test="remarks != null and remarks != ''"> and remarks = #{remarks}</if>
</where>
</select>
......
......@@ -34,39 +34,77 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectTWorkOrderVo">
select work_id, work_title, work_type, work_content, work_create_enterprise_name, work_create_enterprise_id, work_assign_enterprose_name, work_assign_enterprose_id, work_assign_man_id, work_assign_man, work_status, inspection_date, inspection_route, problem_description, icon_url, rectification_plan, rectification_result, responsible_unit, responsible_person, expiry_date, create_by, create_time, update_by, update_time, is_del, remarks from t_work_order
SELECT
workOrder.work_id,
workOrder.work_title,
workOrder.work_type,
workOrder.work_content,
workOrder.work_create_enterprise_name,
workOrder.work_create_enterprise_id,
info.enterprise_name AS work_assign_enterprose_name,
workOrder.work_assign_enterprose_id,
workOrder.work_assign_man_id,
usr.user_name AS work_assign_man,
workOrder.work_status,
workOrder.inspection_date,
workOrder.inspection_route,
workOrder.problem_description,
workOrder.icon_url,
workOrder.rectification_plan,
workOrder.rectification_result,
workOrder.responsible_unit,
workOrder.responsible_person,
workOrder.expiry_date,
workOrder.create_by,
workOrder.create_time,
workOrder.update_by,
workOrder.update_time,
workOrder.is_del,
workOrder.remarks
FROM
t_work_order workOrder
LEFT JOIN sys_user usr ON usr.user_id = workOrder.work_assign_man_id
LEFT JOIN t_enterprise_info info ON info.enterprise_id = workOrder.work_assign_enterprose_id
</sql>
<select id="selectTWorkOrderList" parameterType="TWorkOrder" resultMap="TWorkOrderResult">
<include refid="selectTWorkOrderVo"/>
<where>
<if test="workTitle != null and workTitle != ''"> and work_title like concat('%', #{workTitle}, '%')</if>
<if test="workType != null and workType != ''"> and work_type = #{workType}</if>
<if test="workContent != null and workContent != ''"> and work_content = #{workContent}</if>
<if test="workCreateEnterpriseName != null and workCreateEnterpriseName != ''"> and work_create_enterprise_name like concat('%', #{workCreateEnterpriseName}, '%')</if>
<if test="workCreateEnterpriseId != null and workCreateEnterpriseId != ''"> and work_create_enterprise_id = #{workCreateEnterpriseId}</if>
<if test="workAssignEnterproseName != null and workAssignEnterproseName != ''"> and work_assign_enterprose_name like concat('%', #{workAssignEnterproseName}, '%')</if>
<if test="workAssignEnterproseId != null "> and work_assign_enterprose_id = #{workAssignEnterproseId}</if>
<if test="workAssignManId != null "> and work_assign_man_id = #{workAssignManId}</if>
<if test="workAssignMan != null and workAssignMan != ''"> and work_assign_man = #{workAssignMan}</if>
<if test="workStatus != null and workStatus != ''"> and work_status = #{workStatus}</if>
<if test="inspectionDate != null "> and inspection_date = #{inspectionDate}</if>
<if test="inspectionRoute != null and inspectionRoute != ''"> and inspection_route = #{inspectionRoute}</if>
<if test="problemDescription != null and problemDescription != ''"> and problem_description = #{problemDescription}</if>
<if test="iconUrl != null and iconUrl != ''"> and icon_url = #{iconUrl}</if>
<if test="rectificationPlan != null and rectificationPlan != ''"> and rectification_plan = #{rectificationPlan}</if>
<if test="rectificationResult != null and rectificationResult != ''"> and rectification_result = #{rectificationResult}</if>
<if test="responsibleUnit != null and responsibleUnit != ''"> and responsible_unit = #{responsibleUnit}</if>
<if test="responsiblePerson != null and responsiblePerson != ''"> and responsible_person = #{responsiblePerson}</if>
<if test="expiryDate != null "> and expiry_date = #{expiryDate}</if>
<if test="isDel != null and isDel != ''"> and is_del = #{isDel}</if>
<if test="remarks != null and remarks != ''"> and remarks = #{remarks}</if>
<if test="workTitle != null and workTitle != ''"> and workOrder.work_title like concat('%', #{workTitle}, '%')</if>
<if test="workType != null and workType != ''"> and workOrder.work_type = #{workType}</if>
<if test="workContent != null and workContent != ''"> and workOrder.work_content = #{workContent}</if>
<if test="workCreateEnterpriseName != null and workCreateEnterpriseName != ''"> and workOrder.work_create_enterprise_name like concat('%', #{workCreateEnterpriseName}, '%')</if>
<if test="workCreateEnterpriseId != null and workCreateEnterpriseId != ''"> and workOrder.work_create_enterprise_id = #{workCreateEnterpriseId}</if>
<if test="workAssignEnterproseName != null and workAssignEnterproseName != ''"> and info.work_assign_enterprose_name like concat('%', #{workAssignEnterproseName}, '%')</if>
<if test="workAssignEnterproseId != null "> and workOrder.work_assign_enterprose_id = #{workAssignEnterproseId}</if>
<if test="workAssignManId != null "> and workOrder.work_assign_man_id = #{workAssignManId}</if>
<if test="workAssignMan != null and workAssignMan != ''"> and user.work_assign_man = #{workAssignMan}</if>
<if test="workStatus != null and workStatus != ''"> and workOrder.work_status = #{workStatus}</if>
<if test="inspectionDate != null "> and workOrder.inspection_date = #{inspectionDate}</if>
<if test="inspectionRoute != null and inspectionRoute != ''"> and workOrder.inspection_route = #{inspectionRoute}</if>
<if test="problemDescription != null and problemDescription != ''"> and workOrder.problem_description = #{problemDescription}</if>
<if test="iconUrl != null and iconUrl != ''"> and workOrder.icon_url = #{iconUrl}</if>
<if test="rectificationPlan != null and rectificationPlan != ''"> and workOrder.rectification_plan = #{rectificationPlan}</if>
<if test="rectificationResult != null and rectificationResult != ''"> and workOrder.rectification_result = #{rectificationResult}</if>
<if test="responsibleUnit != null and responsibleUnit != ''"> and workOrder.responsible_unit = #{responsibleUnit}</if>
<if test="responsiblePerson != null and responsiblePerson != ''"> and workOrder.responsible_person = #{responsiblePerson}</if>
<if test="expiryDate != null "> and workOrder.expiry_date = #{expiryDate}</if>
<if test="isDel != null and isDel != ''"> and workOrder.is_del = #{isDel}</if>
<if test="remarks != null and remarks != ''"> and workOrder.remarks = #{remarks}</if>
</where>
ORDER BY workOrder.create_time DESC
</select>
<select id="selectTWorkOrderById" parameterType="Long" resultMap="TWorkOrderResult">
<include refid="selectTWorkOrderVo"/>
where work_id = #{workId}
where workOrder.work_id = #{workId}
</select>
<select id="countTWorkOrder" resultType="HomepageVo">
select COUNT(t.work_id) AS taskTotal,
SUM(CASE t.work_status WHEN '2' THEN 1 ELSE 0 END) AS taskFeedbackTotal
from (select * from t_work_order where is_del = '0') t
</select>
<insert id="insertTWorkOrder" parameterType="TWorkOrder" useGeneratedKeys="true" keyProperty="workId">
......@@ -137,7 +175,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="workCreateEnterpriseId != null">work_create_enterprise_id = #{workCreateEnterpriseId},</if>
<if test="workAssignEnterproseName != null">work_assign_enterprose_name = #{workAssignEnterproseName},</if>
<if test="workAssignEnterproseId != null">work_assign_enterprose_id = #{workAssignEnterproseId},</if>
<if test="workAssignManId == null">work_assign_man_id = null,</if>
<if test="workAssignManId == null and workAssignMan == ''">work_assign_man_id = null,</if>
<if test="workAssignManId != null">work_assign_man_id = #{workAssignManId},</if>
<if test="workAssignMan != null">work_assign_man = #{workAssignMan},</if>
<if test="workStatus != null">work_status = #{workStatus},</if>
......
import request from '@/utils/request'
// 燃气事故台账统计
export function troubleStatistic(query) {
export function troubleStatistic() {
return request({
url: '/statistic/troubleStatistic',
method: 'get',
params: query
method: 'get'
})
}
// 隐患整治台账统计
export function hiddenStatistic(query) {
export function hiddenStatistic() {
return request({
url: '/statistic/hiddenStatistic',
method: 'get',
params: query
method: 'get'
})
}
// 隐患整治台账统计
export function homepageStatistic() {
return request({
url: '/statistic/homepageStatistic',
method: 'get'
})
}
......@@ -82,10 +82,20 @@
<el-table-column label="投诉人姓名" align="center" prop="complainName" />
<el-table-column label="投诉人电话" align="center" prop="complainPhone" />
<el-table-column label="投诉事项" align="center" prop="complainMatter" />
<el-table-column label="办理情况" align="center" prop="dealCondition" />
<!--<el-table-column label="反馈内容" align="center" prop="dealCondition" />-->
<el-table-column label="指派单位名称" align="center" prop="complainAssignEnterproseName" />
<el-table-column label="指派人" align="center" prop="complainAssignMan" />
<el-table-column label="任务状态" align="center" prop="complainStatus" :formatter="taskStateFormat" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="反馈时间" align="center" prop="dealTime" width="180" >
<!--<template slot-scope="scope">-->
<!--<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>-->
<!--</template>-->
</el-table-column>
<el-table-column label="备注" align="center" prop="remarks" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200">
<template slot-scope="scope" >
......@@ -181,7 +191,7 @@
<el-form-item label="投诉事项" prop="complainMatter">
<el-input v-model="form.complainMatter" type = "textarea" placeholder="请输入投诉事项" :disabled="readonly"/>
</el-form-item>
<el-form-item label="办理情况" prop="dealCondition" :style="display">
<el-form-item label="反馈内容" prop="dealCondition" :style="display">
<el-input v-model="form.dealCondition" type = "textarea" placeholder="请输入办理情况" :disabled="readonly"/>
</el-form-item>
<el-form-item label="转办记录" prop="transferRecord" :style="display">
......@@ -208,9 +218,16 @@
</el-dialog>
<el-dialog title="反馈内容" :visible.sync="dialogFormVisible" width="600px">
<el-form :model="form2">
<textarea class="inputstyle" v-model="form2.concent" type ="textarea" ></textarea>
<div style="width: 100%;min-height: 100px;margin-top: -20px">
<el-form-item label="投诉事项" prop="complainMatter">
<textarea class="inputstyle1" v-model="form2.complainMatter" readonly></textarea>
</el-form-item>
</div>
<el-form-item label="反馈" style = "margin-top: -15px;">
<textarea class="inputstyle" v-model="form2.concent" type ="textarea" ></textarea>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<div slot="footer" class="dialog-footer" style="margin-top: -30px;">
<el-button @click="dialogFormVisible = false"> </el-button>
<el-button type="primary" @click="submint2"> </el-button>
</div>
......@@ -278,6 +295,7 @@ export default {
},
form2:{
complainDealId:'',
complainMatter:'',
concent:'',
},
//身份
......@@ -498,6 +516,7 @@ export default {
this.form2.concent="";
this.dialogFormVisible = true;
this.form2.complainDealId=row.complainDealId;
this.form2.complainMatter = row.complainMatter;
},
//提交反馈信息
submint2(){
......@@ -539,5 +558,13 @@ export default {
border-color: 0.5px #99a9bf;
outline:none;
}
.inputstyle1{
min-height: 50px;
max-height: 200px;
width: 100%;
border : none;
resize:none;
outline:none;
}
</style>
<template>
<div class="app-container homeA">
<el-row :gutter="20">
<el-col :sm="24" :lg="24">
<blockquote class="text-warning" style="font-size: 14px">
领取阿里云通用云产品1888优惠券
<br />
<el-link
href="https://www.aliyun.com/minisite/goods?userCode=brki8iof"
type="primary"
target="_blank"
>https://www.aliyun.com/minisite/goods?userCode=brki8iof</el-link
>
<br />
领取腾讯云通用云产品2860优惠券
<br />
<el-link
href="https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console"
type="primary"
target="_blank"
>https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console</el-link
>
<br />
阿里云服务器折扣区
<el-link href="http://aly.ruoyi.vip" type="primary" target="_blank"
>>☛☛点我进入☚☚</el-link
>
&nbsp;&nbsp;&nbsp; 腾讯云服务器秒杀区
<el-link href="http://txy.ruoyi.vip" type="primary" target="_blank"
>>☛☛点我进入☚☚</el-link
><br />
<h4 class="text-danger">
云产品通用红包,可叠加官网常规优惠使用。(仅限新用户)
</h4>
</blockquote>
<hr />
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :sm="24" :lg="12" style="padding-left: 20px">
<h2>若依后台管理框架</h2>
<p>
一直想做一款后台管理系统,看了很多优秀的开源项目但是发现没有合适自己的。于是利用空闲休息时间开始自己写一套后台系统。如此有了若依管理系统。,她可以用于所有的Web应用程序,如网站管理后台,网站会员中心,CMS,CRM,OA等等,当然,您也可以对她进行深度定制,以做出更强系统。所有前端后台代码封装过后十分精简易上手,出错概率低。同时支持移动客户端访问。系统会陆续更新一些实用功能。
</p>
<p>
<b>当前版本:</b> <span>v{{ version }}</span>
</p>
<p>
<el-tag type="danger">&yen;免费开源</el-tag>
</p>
<p>
<el-button
type="primary"
size="mini"
icon="el-icon-cloudy"
plain
@click="goTarget('https://gitee.com/y_project/RuoYi-Vue')"
>访问码云</el-button
>
<el-button
size="mini"
icon="el-icon-s-home"
plain
@click="goTarget('http://ruoyi.vip')"
>访问主页</el-button
>
</p>
</el-col>
<el-col :sm="24" :lg="12" style="padding-left: 50px">
<el-row>
<el-col :span="12">
<h2>技术选型</h2>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<h4>后端技术</h4>
<ul>
<li>SpringBoot</li>
<li>Spring Security</li>
<li>JWT</li>
<li>MyBatis</li>
<li>Druid</li>
<li>Fastjson</li>
<li>...</li>
</ul>
</el-col>
<el-col :span="6">
<h4>前端技术</h4>
<ul>
<li>Vue</li>
<li>Vuex</li>
<li>Element-ui</li>
<li>Axios</li>
<li>Sass</li>
<li>Quill</li>
<li>...</li>
</ul>
</el-col>
</el-row>
</el-col>
</el-row>
<el-divider />
<el-row :gutter="20">
<el-col :xs="24" :sm="24" :md="12" :lg="8">
<el-card class="update-log">
<div slot="header" class="clearfix">
<span>联系信息</span>
<div clss="div-row">
<div class="div-col1">
<el-card>
<div style="width: 50%;height: 100%;text-align: center;float: left;font-size: 15px;">
<img src="../assets/taskDistribution.png" width="15%" style="margin-top: 2.5rem;">
<p>任务下发</p>
</div>
<div class="body">
<p>
<i class="el-icon-s-promotion"></i> 官网:<el-link
href="http://www.ruoyi.vip"
target="_blank"
>http://www.ruoyi.vip</el-link
>
</p>
<p>
<i class="el-icon-user-solid"></i> QQ群:<s>满937441</s>
<s>满887144332</s> <s>满180251782</s> <s>满104180207</s>
<s>满186866453</s>
<a href="https://jq.qq.com/?_wv=1027&k=5vYAqA05" target="_blank">
201396349</a
>
</p>
<p>
<i class="el-icon-chat-dot-round"></i> 微信:<a
href="javascript:;"
>/ *若依</a
>
</p>
<p>
<i class="el-icon-money"></i> 支付宝:<a
href="javascript:;"
class="支付宝信息"
>/ *若依</a
>
</p>
<div style="width: 50%;height: 100%;text-align: center;line-height: 8rem;float: right;font-size: 2.5rem;font-family: 'UnidreamLED';">{{totalObj.taskTotal}}</div>
</el-card>
</div>
<div class="div-col1">
<el-card>
<div style="width: 50%;height: 100%; text-align: center;float: left;font-size: 15px;">
<img src="../assets/taskFeedback.png" width="15%" style="margin-top: 2.5rem;">
<p>任务反馈</p>
</div>
<div style="width: 50%;height: 100%;text-align: center;line-height: 8rem;float: right;font-size: 2.5rem;font-family: 'UnidreamLED';">{{totalObj.taskFeedbackTotal}}</div>
</el-card>
</el-col>
<el-col :xs="24" :sm="24" :md="12" :lg="8">
<el-card class="update-log">
<div slot="header" class="clearfix">
<span>更新日志</span>
</div>
<div class="div-col1">
<el-card>
<div style="width: 50%;height: 100%; text-align: center;float: left;font-size: 15px;">
<img src="../assets/complaint.png" width="15%" style="margin-top: 2.5rem;">
<p>投诉处置</p>
</div>
<el-collapse accordion>
<el-collapse-item title="v3.5.0 - 2021-05-25">
<ol>
<li>新增菜单导航显示风格TopNav(false为左侧导航菜单,true为顶部导航菜单)</li>
<li>布局设置支持保存&重置配置</li>
<li>修复树表数据显示不全&加载慢问题</li>
<li>新增IE浏览器版本过低提示页面</li>
<li>用户登录后记录最后登录IP&时间</li>
<li>页面导出按钮点击之后添加遮罩</li>
<li>富文本编辑器支持自定义上传地址</li>
<li>富文本编辑组件新增readOnly属性</li>
<li>页签TagsView新增关闭右侧功能</li>
<li>显隐列组件加载初始默认隐藏列</li>
<li>关闭头像上传窗口还原默认图片</li>
<li>个人信息添加手机&邮箱重复验证</li>
<li>代码生成模板导出按钮点击后添加遮罩</li>
<li>代码生成模板树表操作列添加新增按钮</li>
<li>代码生成模板修复主子表字段重名问题</li>
<li>升级fastjson到最新版1.2.76</li>
<li>升级druid到最新版本v1.2.6</li>
<li>升级mybatis到最新版3.5.6 阻止远程代码执行漏洞</li>
<li>升级oshi到最新版本v5.6.0</li>
<li>velocity剔除commons-collections版本,防止3.2.1版本的反序列化漏洞</li>
<li>数据监控页默认账户密码防止越权访问</li>
<li>修复firefox下表单构建拖拽会新打卡一个选项卡</li>
<li>修正后端导入表权限标识</li>
<li>修正前端操作日志&登录日志权限标识</li>
<li>设置Redis配置HashKey序列化</li>
<li>删除操作日志记录信息</li>
<li>上传媒体类型添加视频格式</li>
<li>修复请求形参未传值记录日志异常问题</li>
<li>优化xss校验json请求条件</li>
<li>树级结构更新子节点使用replaceFirst</li>
<li>优化ExcelUtil空值处理</li>
<li>日志记录过滤BindingResult对象,防止异常</li>
<li>修改主题后mini类型按钮无效问题</li>
<li>优化通用下载完成后删除节点</li>
<li>通用Controller添加响应返回消息</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<el-collapse-item title="v3.4.0 - 2021-02-22">
<ol>
<li>代码生成模板支持主子表</li>
<li>表格右侧工具栏组件支持显隐列</li>
<li>图片组件添加预览&移除功能</li>
<li>Excel注解支持Image图片导出</li>
<li>操作按钮组调整为朴素按钮样式</li>
<li>代码生成支持文件上传组件</li>
<li>代码生成日期控件区分范围</li>
<li>代码生成数据库文本类型生成表单文本域</li>
<li>用户手机邮箱&菜单组件修改允许空字符串</li>
<li>升级SpringBoot到最新版本2.2.13 提升启动速度</li>
<li>升级druid到最新版本v1.2.4</li>
<li>升级fastjson到最新版1.2.75</li>
<li>升级element-ui到最新版本2.15.0</li>
<li>修复IE11浏览器报错问题</li>
<li>优化多级菜单之间切换无法缓存的问题</li>
<li>修复四级菜单无法显示问题</li>
<li>修正侧边栏静态路由丢失问题</li>
<li>修复角色管理-编辑角色-功能权限显示异常</li>
<li>配置文件新增redis数据库索引属性</li>
<li>权限工具类增加admin判断</li>
<li>角色非自定义权限范围清空选择值</li>
<li>修复导入数据为负浮点数时丢失精度问题</li>
<li>移除path-to-regexp正则匹配插件</li>
<li>修复生成树表代码异常</li>
<li>修改ip字段长度防止ipv6地址长度不够</li>
<li>防止get请求参数值为false或0等特殊值会导致无法正确的传参</li>
<li>登录后push添加catch防止出现检查错误</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<el-collapse-item title="v3.3.0 - 2020-12-14">
<ol>
<li>新增缓存监控功能</li>
<li>支持主题风格配置</li>
<li>修复多级菜单之间切换无法缓存的问题</li>
<li>多级菜单自动配置组件</li>
<li>代码生成预览支持高亮显示</li>
<li>支持Get请求映射Params参数</li>
<li>删除用户和角色解绑关联</li>
<li>去除用户手机邮箱部门必填验证</li>
<li>Excel支持注解align对齐方式</li>
<li>Excel支持导入Boolean型数据</li>
<li>优化头像样式,鼠标移入悬停遮罩</li>
<li>代码生成预览提供滚动机制</li>
<li>代码生成删除多余的数字float类型</li>
<li>修正转换字符串的目标字符集属性</li>
<li>回显数据字典防止空值报错</li>
<li>日志记录增加过滤多文件场景</li>
<li>修改缓存Set方法可能导致嵌套的问题</li>
<li>移除前端一些多余的依赖</li>
<li>防止安全扫描YUI出现的风险提示</li>
<li>修改node-sass为dart-sass</li>
<li>升级SpringBoot到最新版本2.1.18</li>
<li>升级poi到最新版本4.1.2</li>
<li>升级oshi到最新版本v5.3.6</li>
<li>升级bitwalker到最新版本1.21</li>
<li>升级axios到最新版本0.21.0</li>
<li>升级element-ui到最新版本2.14.1</li>
<li>升级vue到最新版本2.6.12</li>
<li>升级vuex到最新版本3.6.0</li>
<li>升级vue-cli到版本4.5.9</li>
<li>升级vue-router到最新版本3.4.9</li>
<li>升级vue-cli到最新版本4.4.6</li>
<li>升级vue-cropper到最新版本0.5.5</li>
<li>升级clipboard到最新版本2.0.6</li>
<li>升级core-js到最新版本3.8.1</li>
<li>升级echarts到最新版本4.9.0</li>
<li>升级file-saver到最新版本2.0.4</li>
<li>升级fuse.js到最新版本6.4.3</li>
<li>升级js-beautify到最新版本1.13.0</li>
<li>升级js-cookie到最新版本2.2.1</li>
<li>升级path-to-regexp到最新版本6.2.0</li>
<li>升级quill到最新版本1.3.7</li>
<li>升级screenfull到最新版本5.0.2</li>
<li>升级sortablejs到最新版本1.10.2</li>
<li>升级vuedraggable到最新版本2.24.3</li>
<li>升级chalk到最新版本4.1.0</li>
<li>升级eslint到最新版本7.15.0</li>
<li>升级eslint-plugin-vue到最新版本7.2.0</li>
<li>升级lint-staged到最新版本10.5.3</li>
<li>升级runjs到最新版本4.4.2</li>
<li>升级sass-loader到最新版本10.1.0</li>
<li>升级script-ext-html-webpack-plugin到最新版本2.1.5</li>
<li>升级svg-sprite-loader到最新版本5.1.1</li>
<li>升级vue-template-compiler到最新版本2.6.12</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<el-collapse-item title="v3.2.1 - 2020-11-18">
<ol>
<li>阻止任意文件下载漏洞</li>
<li>代码生成支持上传控件</li>
<li>新增图片上传组件</li>
<li>调整默认首页</li>
<li>升级druid到最新版本v1.2.2</li>
<li>mapperLocations配置支持分隔符</li>
<li>权限信息调整</li>
<li>调整sql默认时间</li>
<li>解决代码生成没有bit类型的问题</li>
<li>升级pagehelper到最新版1.3.0</li>
</ol>
</el-collapse-item>
<el-collapse-item title="v3.2.0 - 2020-10-10">
<ol>
<li>升级springboot版本到2.1.17 提升安全性</li>
<li>升级oshi到最新版本v5.2.5</li>
<li>升级druid到最新版本v1.2.1</li>
<li>升级jjwt到版本0.9.1</li>
<li>升级fastjson到最新版1.2.74</li>
<li>修改sass为node-sass,避免el-icon图标乱码</li>
<li>代码生成支持同步数据库</li>
<li>代码生成支持富文本控件</li>
<li>代码生成页面时不忽略remark属性</li>
<li>代码生成添加select必填选项</li>
<li>Excel导出类型NUMERIC支持精度浮点类型</li>
<li>Excel导出targetAttr优化获取值,防止get方法不规范</li>
<li>Excel注解支持自动统计数据总和</li>
<li>Excel注解支持设置BigDecimal精度&舍入规则</li>
<li>菜单&数据权限新增(展开/折叠 全选/全不选 父子联动)</li>
<li>允许用户分配到部门父节点</li>
<li>菜单新增是否缓存keep-alive</li>
<li>表格操作列间距调整</li>
<li>限制系统内置参数不允许删除</li>
<li>富文本组件优化,支持自定义高度&图片冲突问题</li>
<li>富文本工具栏样式对齐</li>
<li>导入excel整形值校验优化</li>
<li>修复页签关闭所有时固定标签路由不刷新问题</li>
<li>表单构建布局型组件新增按钮</li>
<li>左侧菜单文字过长显示省略号</li>
<li>修正根节点为子部门时,树状结构显示问题</li>
<li>修正调用目标字符串最大长度</li>
<li>修正菜单提示信息错误</li>
<li>修正定时任务执行一次权限标识</li>
<li>修正数据库字符串类型nvarchar</li>
<li>优化递归子节点</li>
<li>优化数据权限判断</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<el-collapse-item title="v3.1.0 - 2020-08-13">
<ol>
<li>表格工具栏右侧添加刷新&显隐查询组件</li>
<li>后端支持CORS跨域请求</li>
<li>代码生成支持选择上级菜单</li>
<li>代码生成支持自定义路径</li>
<li>代码生成支持复选框</li>
<li>Excel导出导入支持dictType字典类型</li>
<li>Excel支持分割字符串组内容</li>
<li>验证码类型支持(数组计算、字符验证)</li>
<li>升级vue-cli版本到4.4.4</li>
<li>修改 node-sass 为 dart-sass</li>
<li>表单类型为Integer/Long设置整形默认值</li>
<li>代码生成器默认mapper路径与默认mapperScan路径不一致</li>
<li>优化防重复提交拦截器</li>
<li>优化上级菜单不能选择自己</li>
<li>修复角色的权限分配后,未实时生效问题</li>
<li>修复在线用户日志记录类型</li>
<li>修复富文本空格和缩进保存后不生效问题</li>
<li>修复在线用户判断逻辑</li>
<li>唯一限制条件只返回单条数据</li>
<li>添加获取当前的环境配置方法</li>
<li>超时登录后页面跳转到首页</li>
<li>全局异常状态汉化拦截处理</li>
<li>HTML过滤器改为将html转义</li>
<li>检查字符支持小数点&降级改成异常提醒</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<el-collapse-item title="v3.0.0 - 2020-07-20">
<ol>
<li>单应用调整为多模块项目</li>
<li>升级element-ui版本到2.13.2</li>
<li>删除babel,提高编译速度。</li>
<li>新增菜单默认主类目</li>
<li>编码文件名修改为uuid方式</li>
<li>定时任务cron表达式验证</li>
<li>角色权限修改时已有权限未自动勾选异常修复</li>
<li>防止切换权限用户后登录出现404</li>
<li>Excel支持sort导出排序</li>
<li>创建用户不允许选择超级管理员角色</li>
<li>修复代码生成导入表结构出现异常页面不提醒问题</li>
<li>修复代码生成点击多次表修改数据不变化的问题</li>
<li>修复头像上传成功二次打开无法改变裁剪框大小和位置问题</li>
<li>修复布局为small者mini用户表单显示错位问题</li>
<li>修复热部署导致的强换异常问题</li>
<li>修改用户管理复选框宽度,防止部分浏览器出现省略号</li>
<li>IpUtils工具,清除Xss特殊字符,防止Xff注入攻击</li>
<li>生成domain 如果是浮点型 统一用BigDecimal</li>
<li>定时任务调整label-width,防止部署出现错位</li>
<li>调整表头固定列默认样式</li>
<li>代码生成模板调整,字段为String并且必填则加空串条件</li>
<li>代码生成字典Integer/Long使用parseInt</li>
<li>
修复dict_sort不可update为0的问题&查询返回增加dict_sort升序排序
</li>
<li>修正岗位导出权限注解</li>
<li>禁止加密密文返回前端</li>
<li>修复代码生成页面中的查询条件创建时间未生效的问题</li>
<li>修复首页搜索菜单外链无法点击跳转问题</li>
<li>修复菜单管理选择图标,backspace删除时不过滤数据</li>
<li>用户管理部门分支节点不可检查&显示计数</li>
<li>数据范围过滤属性调整</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<div style="width: 50%;height: 100%;text-align: center;line-height: 8rem;float: right;font-size: 2.5rem;font-family: 'UnidreamLED';">{{totalObj.complaintTotal}}</div>
</el-card>
</div>
<div class="div-col1">
<el-card>
<div style="width: 50%;height: 100%; text-align: center;float: left;font-size: 15px;">
<img src="../assets/complaintFeedback.png" width="15%" style="margin-top: 2.5rem;">
<p>投诉反馈</p>
</div>
<div style="width: 50%;height: 100%;text-align: center;line-height: 8rem;float: right;font-size: 2.5rem;font-family: 'UnidreamLED';">{{totalObj.complaintFeedbackTotal}}</div>
</el-card>
</div>
</div>
<el-collapse-item title="v2.3.0 - 2020-06-01">
<ol>
<li>升级fastjson到最新版1.2.70 修复高危安全漏洞</li>
<li>dev启动默认打开浏览器</li>
<li>vue-cli使用默认source-map</li>
<li>slidebar eslint报错优化</li>
<li>当tags-view滚动关闭右键菜单</li>
<li>字典管理添加缓存读取</li>
<li>参数管理支持缓存操作</li>
<li>支持一级菜单(和主页同级)在main区域显示</li>
<li>限制外链地址必须以http(s)开头</li>
<li>tagview & sidebar 主题颜色与element ui(全局)同步</li>
<li>修改数据源类型优先级,先根据方法,再根据类</li>
<li>支持是否需要设置token属性,自定义返回码消息。</li>
<li>swagger请求前缀加入配置。</li>
<li>登录地点设置内容过长则隐藏显示</li>
<li>修复定时任务执行一次按钮后不提示消息问题</li>
<li>修改上级部门(选择项排除本身和下级)</li>
<li>通用http发送方法增加参数 contentType 编码类型</li>
<li>更换IP地址查询接口</li>
<li>修复页签变量undefined</li>
<li>添加校验部门包含未停用的子部门</li>
<li>修改定时任务详情下次执行时间日期显示错误</li>
<li>角色管理查询设置默认排序字段</li>
<li>swagger添加enable参数控制是否启用</li>
<li>只对json类型请求构建可重复读取inputStream的request</li>
<li>修改代码生成字典字段int类型没有自动选中问题</li>
<li>vuex用户名取值修正</li>
<li>表格树模板去掉多余的)</li>
<li>代码生成序号修正</li>
<li>全屏情况下不调整上外边距</li>
<li>代码生成Date字段添加默认格式</li>
<li>用户管理角色选择权限控制</li>
<li>修复路由懒加载报错问题</li>
<li>模板sql.vm添加菜单状态</li>
<li>设置用户名称不能修改</li>
<li>dialog添加append-to-body属性,防止ie遮罩</li>
<li>菜单区分状态和显示隐藏功能</li>
<li>升级fastjson到最新版1.2.68 修复安全加固</li>
<li>修复代码生成如果选择字典类型缺失逗号问题</li>
<li>登录请求params更换为data,防止暴露url</li>
<li>日志返回时间格式处理</li>
<li>添加handle控制允许拖动的元素</li>
<li>布局设置点击扩大范围</li>
<li>代码生成列属性排序查询</li>
<li>代码生成列支持拖动排序</li>
<li>修复时间格式不支持ios问题</li>
<li>表单构建添加父级class,防止冲突</li>
<li>定时任务并发属性修正</li>
<li>角色禁用&菜单隐藏不查询权限</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<div clss="div-row">
<div class="div-col1">
<el-card>
<div style="width: 50%;height: 100%; text-align: center;float: left;font-size: 15px;">
<img src="../assets/video.png" width="15%" style="margin-top: 2.5rem;">
<p>视频监控</p>
</div>
<div style="width: 50%;height: 100%;text-align: center;line-height: 8rem;float: right;font-size: 2.5rem;font-family: 'UnidreamLED';">{{totalObj.videoTotal}}</div>
</el-card>
</div>
<div class="div-col1">
<el-card>
<div style="width: 50%;height: 100%; text-align: center;float: left;font-size: 15px;">
<img src="../assets/equipment.png" width="15%" style="margin-top: 2.5rem;">
<p>安全装置</p>
</div>
<div style="width: 50%;height: 100%;text-align: center;line-height: 8rem;float: right;font-size: 2.5rem;font-family: 'UnidreamLED';">{{totalObj.equipmentTotal}}</div>
</el-card>
</div>
<div class="div-col1">
<el-card>
<div style="width: 50%;height: 100%; text-align: center;float: left;font-size: 15px;">
<img src="../assets/trouble.png" width="15%" style="margin-top: 2.5rem;">
<p>燃气事故</p>
</div>
<div style="width: 50%;height: 100%;text-align: center;line-height: 8rem;float: right;font-size: 2.5rem;font-family: 'UnidreamLED';">{{totalObj.troubleTotal}}</div>
</el-card>
</div>
<div class="div-col1">
<el-card>
<div style="width: 50%;height: 100%; text-align: center;float: left;font-size: 15px;">
<img src="../assets/hidden.png" width="15%" style="margin-top: 2.5rem;">
<p>隐患整治</p>
</div>
<div style="width: 50%;height: 100%;text-align: center;line-height: 8rem;float: right;font-size: 2.5rem;font-family: 'UnidreamLED';">{{totalObj.hiddenTotal}}</div>
</el-card>
</div>
</div>
<el-collapse-item title="v2.2.0 - 2020-03-18">
<ol>
<li>系统监控新增定时任务功能</li>
<li>添加一个打包Web工程bat</li>
<li>修复页签鼠标滚轮按下的时候,可以关闭不可关闭的tag</li>
<li>修复点击退出登录有时会无提示问题</li>
<li>修复防重复提交注解无效问题</li>
<li>修复通知公告批量删除异常问题</li>
<li>添加菜单时路由地址必填限制</li>
<li>代码生成字段描述可编辑</li>
<li>修复用户修改个人信息导致缓存不过期问题</li>
<li>个人信息创建时间获取正确属性值</li>
<li>操作日志详细显示正确类型</li>
<li>导入表单击行数据时选中对应的复选框</li>
<li>批量替换表前缀逻辑调整</li>
<li>固定重定向路径表达式</li>
<li>升级element-ui版本到2.13.0</li>
<li>操作日志排序调整</li>
<li>修复charts切换侧边栏或者缩放窗口显示bug</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<div clss="div-row">
<div class="div-col2" @click="$router.push('/operationMonitor/monitorData')">
<el-card>
<img src="../assets/dataMonitor.png" width="20%"/>
<p>数据监控</p>
</el-card>
</div>
<div class="div-col2" @click="$router.push('/emergency/eventInfo')">
<el-card>
<img src="../assets/emergency.png" width="20%"/>
<p>应急处置</p>
</el-card>
</div>
<div class="div-col2" @click="$router.push('/regulation/regulation')">
<el-card>
<img src="../assets/enterprise.png" width="20%"/>
<p>燃气企业</p>
</el-card>
</div>
<div class="div-col2" @click="$router.push('/regulation/gasuser')">
<el-card>
<img src="../assets/user.png" width="20%"/>
<p>燃气用户</p>
</el-card>
</div>
<div class="div-col2" @click="$router.push('/regulation/station')">
<el-card>
<img src="../assets/station.png" width="20%"/>
<p>场站信息</p>
</el-card>
</div>
<div class="div-col2" @click="$router.push('/regulation/pipe')">
<el-card>
<img src="../assets/pipe.png" width="20%"/>
<p>管道信息</p>
</el-card>
</div>
<div class="div-col2" @click="$router.push('/regulation/device')">
<el-card>
<img src="../assets/device.png" width="20%"/>
<p>设备信息</p>
</el-card>
</div>
<div class="div-col2" @click="$router.push('/standingBook/equipment')">
<el-card>
<img src="../assets/addDetector.png" width="20%"/>
<p>用户加装安全装置</p>
</el-card>
</div>
</div>
<el-collapse-item title="v2.1.0 - 2020-02-24">
<ol>
<li>新增表单构建</li>
<li>代码生成支持树表结构</li>
<li>新增用户导入</li>
<li>修复动态加载路由页面刷新问题</li>
<li>修复地址开关无效问题</li>
<li>汉化错误提示页面</li>
<li>代码生成已知问题修改</li>
<li>修复多数据源下配置关闭出现异常处理</li>
<li>添加HTML过滤器,用于去除XSS漏洞隐患</li>
<li>修复上传头像控制台出现异常</li>
<li>修改用户管理分页不正确的问题</li>
<li>修复验证码记录提示错误</li>
<li>修复request.js缺少Message引用</li>
<li>修复表格时间为空出现的异常</li>
<li>添加Jackson日期反序列化时区配置</li>
<li>调整根据用户权限加载菜单数据树形结构</li>
<li>调整成功登陆不恢复按钮,防止多次点击</li>
<li>修改用户个人资料同步缓存信息</li>
<li>修复页面同时出现el-upload和Editor不显示处理</li>
<li>修复在角色管理页修改菜单权限偶尔未选中问题</li>
<li>配置文件新增redis密码属性</li>
<li>设置mybatis全局的配置文件</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<div class="div-row">
<div class="div-col3">
<el-card>
<div slot="header">
<span class="div-header" style="cursor: pointer;" @click="$router.push('/operationMonitor/workOrder')">任务下发</span>
</div>
<div class="body">
<el-table v-loading="orderLoading" :data="orderList" height="265" style="width: 100%; border: 1px solid #e6ebf5;">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{(orderParams.pageNum - 1) * orderParams.pageSize + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="任务类型" align="center" prop="workType" width="90">
<template slot-scope="scope">
<span v-if="scope.row.workType == '1'">入户安检</span>
<span v-if="scope.row.workType == '2'">巡检</span>
<span v-if="scope.row.workType == '3'">报警巡查</span>
<span v-if="scope.row.workType == '4'">其他</span>
</template>
</el-table-column>
<el-table-column label="任务名称" align="left" prop="workTitle"/>
<el-table-column label="状态" align="center" prop="workStatus" width="100">
<template slot-scope="scope">
<span v-if="scope.row.workStatus == '0'">派发中</span>
</template>
</el-table-column>
</el-table>
<el-collapse-item title="v2.0.0 - 2019-12-02">
<ol>
<li>新增代码生成</li>
<li>新增@RepeatSubmit注解,防止重复提交</li>
<li>新增菜单主目录添加/删除操作</li>
<li>日志记录过滤特殊对象,防止转换异常</li>
<li>修改代码生成路由脚本错误</li>
<li>用户上传头像实时同步缓存,无需重新登录</li>
<li>调整切换页签后不重新加载数据</li>
<li>添加jsencrypt实现参数的前端加密</li>
<li>系统退出删除用户缓存记录</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<el-collapse-item title="v1.1.0 - 2019-11-11">
<ol>
<li>新增在线用户管理</li>
<li>新增按钮组功能实现(批量删除、导出、清空)</li>
<li>新增查询条件重置按钮</li>
<li>新增Swagger全局Token配置</li>
<li>新增后端参数校验</li>
<li>修复字典管理页面的日期查询异常</li>
<li>修改时间函数命名防止冲突</li>
<li>去除菜单上级校验,默认为顶级</li>
<li>修复用户密码无法修改问题</li>
<li>修复菜单类型为按钮时不显示权限标识</li>
<li>其他细节优化</li>
</ol>
</el-collapse-item>
<el-collapse-item title="v1.0.0 - 2019-10-08">
<ol>
<li>若依前后端分离系统正式发布</li>
</ol>
</el-collapse-item>
</el-collapse>
<pagination
v-show="orderTotal>=0"
:total="orderTotal"
:page.sync="orderParams.pageNum"
:limit.sync="orderParams.pageSize"
@pagination="getOrderList"
/>
</div>
</el-card>
</el-col>
<el-col :xs="24" :sm="24" :md="12" :lg="8">
<el-card class="update-log">
<div slot="header" class="clearfix">
<span>捐赠支持</span>
</div>
<div class="div-col3">
<el-card>
<div slot="header">
<span class="div-header" style="cursor: pointer;" @click="$router.push('/complainDeal')">投诉处置</span>
</div>
<div class="body">
<img
src="https://oscimg.oschina.net/oscnet/up-d6695f82666e5018f715c41cb7ee60d3b73.png"
alt="donate"
width="100%"
<el-table v-loading="complainLoading" :data="complainList" height="265" style="width: 100%; border: 1px solid #e6ebf5;">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{(complainParams.pageNum - 1) * complainParams.pageSize + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="投诉事项" align="left" prop="complainMatter"/>
<el-table-column label="投诉时间" align="center" prop="createTime" width="200"/>
<el-table-column label="状态" align="center" prop="complainStatus" width="100">
<template slot-scope="scope">
<span v-if="scope.row.complainStatus == '1'">派发中</span>
</template>
</el-table-column>
</el-table>
<pagination
v-show="complainTotal>=0"
:total="complainTotal"
:page.sync="complainParams.pageNum"
:limit.sync="complainParams.pageSize"
@pagination="getComplainDealList"
/>
<span style="display: inline-block; height: 30px; line-height: 30px"
>你可以请作者喝杯咖啡表示鼓励</span
>
</div>
</el-card>
</el-col>
</el-row>
</div>
</div>
</div>
</template>
<script>
import { homepageStatistic } from "@/api/statistic/statisticAnalysis";
import { listOrder } from "@/api/operationMonitor/order";
import { listComplainDeal } from "@/api/complainDeal/complainDeal";
export default {
name: "index",
data() {
return {
// 版本号
version: "3.5.0",
// 遮罩层
orderLoading: true,
complainLoading: true,
// 统计数据
totalObj: {},
// 列表数据
orderList: [],
complainList: [],
// 总条数
orderTotal: 0,
complainTotal: 0,
// 查询参数
orderParams: {
pageNum: 1,
pageSize: 10,
workStatus: '0',
isDel: '0'
},
complainParams: {
pageNum: 1,
pageSize: 10,
complainStatus: '1',
isDel: '0'
},
};
},
created(){
// 默认配置
console.log(this.$store.state.settings)
},
mounted() {
this.getStatiData();
this.getOrderList();
this.getComplainDealList();
},
methods: {
getStatiData() {
homepageStatistic().then(response => {
this.totalObj = response.data;
console.log("this.totalObj",this.totalObj)
});
},
getOrderList() {
this.orderLoading = true;
listOrder(this.orderParams).then(response => {
this.orderList = response.rows;
this.orderTotal = response.total;
this.orderLoading = false;
});
},
getComplainDealList() {
this.complainLoading = true;
listComplainDeal(this.complainParams).then(response => {
this.complainList = response.rows;
this.complainTotal = response.total;
this.complainLoading = false;
});
},
goTarget(href) {
window.open(href, "_blank");
},
......@@ -582,64 +279,46 @@ export default {
<style scoped lang="scss">
.homeA {
blockquote {
padding: 10px 20px;
margin: 0 0 20px;
font-size: 17.5px;
border-left: 5px solid #eee;
}
hr {
margin-top: 20px;
margin-bottom: 20px;
border: 0;
border-top: 1px solid #eee;
div {
color: #515a6e;
}
.col-item {
margin-bottom: 20px;
}
ul {
padding: 0;
margin: 0;
}
padding: 10px;
font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 13px;
color: #676a6c;
overflow-x: hidden;
ul {
list-style-type: none;
p {
margin: 0px;
color: #515a6e;
}
h4 {
margin-top: 0px;
.div-col1 {
width: 25%;
padding: 6px;
float: left;
}
h2 {
margin-top: 10px;
font-size: 26px;
font-weight: 100;
.div-col2 {
width: 12.5%;
padding: 6px;
float: left;
text-align: center;
cursor: pointer;
}
p {
margin-top: 10px;
b {
font-weight: 700;
}
.div-col3 {
width: 50%;
padding: 6px;
float: left;
}
.update-log {
ol {
display: block;
list-style-type: decimal;
margin-block-start: 1em;
margin-block-end: 1em;
margin-inline-start: 0;
margin-inline-end: 0;
padding-inline-start: 40px;
}
.div-header:hover {
text-decoration:underline;
}
}
</style>
......
......@@ -96,10 +96,10 @@
<el-table-column label="指派人" align="center" prop="workAssignMan" />
<el-table-column label="任务状态" align="center" prop="workStatus">
<template slot-scope="scope">
<span v-if="scope.row.workStatus == 0">派发中</span>
<span v-if="scope.row.workStatus == 1">已接单</span>
<span v-if="scope.row.workStatus == 2">已反馈</span>
<span v-if="scope.row.workStatus == 3">已归档</span>
<span v-if="scope.row.workStatus == 0" style='color: #ff4949'>派发中</span>
<span v-if="scope.row.workStatus == 1" style="color: mediumblue">已接单</span>
<span v-if="scope.row.workStatus == 2" style='color: #1890ff'>已反馈</span>
<span v-if="scope.row.workStatus == 3" style='color: #30B46B'>已归档</span>
</template>
</el-table-column>>
<!--<el-table-column label="巡检时间" align="center" prop="inspectionDate" width="180">
......@@ -132,8 +132,10 @@
type="text"
icon="el-icon-edit"
@click="workDetail(scope.row)"
v-hasPermi="['system:order:edit']"
key="detail"
>详情</el-button>
<el-button
<el-button v-if="scope.row.workStatus == '0' || scope.row.workStatus == '1'" key="edit"
size="mini"
type="text"
icon="el-icon-edit"
......@@ -146,30 +148,39 @@
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['system:order:remove']"
key="detele"
>删除</el-button>
<el-button v-if=" (('enterprise'== roleType && (scope.row.workAssignManId == '' || scope.row.workAssignManId == null)) || ('zhengfu'== roleType && (scope.row.workAssignEnterproseId == '' || scope.row.workAssignEnterproseId == null))) && scope.row.workStatus == '0'"
size="mini"
type="text"
icon="el-icon-edit"
@click="workIssue(scope.row)"
v-hasPermi="['system:order:edit']"
key="work"
>任务下发</el-button>
<el-button v-if=" 'inpector'== roleType && scope.row.workStatus == '0'"
size="mini"
type="text"
icon="el-icon-edit"
@click="takingOrder(scope.row)"
v-hasPermi="['system:order:edit']"
key="recieve"
>接单</el-button>
<el-button v-if="'zhengfu'!= roleType && scope.row.workStatus == '1'"
<el-button v-if="'zhengfu'!= roleType && (scope.row.workStatus == '0' || scope.row.workStatus == '1')"
size="mini"
type="text"
icon="el-icon-edit"
@click="feedbookWork(scope.row)"
v-hasPermi="['system:order:edit']"
key="feedbook"
>反馈</el-button>
<el-button v-if="'zhengfu'!= roleType && scope.row.workStatus == '2'"
size="mini"
type="text"
icon="el-icon-edit"
@click="sortWork(scope.row)"
v-hasPermi="['system:order:edit']"
key="sort"
>归档</el-button>
</template>
</el-table-column>
......@@ -263,15 +274,18 @@
<el-form-item label="整改方案" prop="rectificationPlan" v-show="form.workType=='3' && isDetail && (form.workStatus =='2' || form.workStatus =='3')">
<el-input v-model="form.rectificationPlan" type="textarea" placeholder="请输入整改方案" :disabled="isDetail"/>
</el-form-item>
<el-form-item label="反馈图片" prop="iconUrl" v-show="isDetail && (form.workStatus =='2' || form.workStatus =='3')">
<MyFileUpload
<el-form-item label="反馈图片" prop="iconUrl" v-show="isDetail && (form.workStatus =='2' || form.workStatus =='3') && form.iconUrl !='' && form.iconUrl != null">
<!--<MyFileUpload
listType="picture-card"
@resFun="getFileInfo"
@remove="listRemove"
:fileArr="fileList"
:readOnly= "isDetail"
/>
<el-input v-show="false" disabled v-model="form.iconUrl"></el-input>
<el-input v-show="false" disabled v-model="form.iconUrl"></el-input>-->
<div style="width: 20%;">
<el-image :src="form.iconUrl" :preview-src-list="[form.iconUrl]" style="width: auto;height: auto;" :z-index= "3000"></el-image>
</div>
</el-form-item>
<el-form-item label="反馈信息" prop="rectificationResult" v-show="isDetail && (form.workStatus =='2' || form.workStatus =='3')">
<el-input v-model="form.rectificationResult" type="textarea" placeholder="请输入整改结果" :disabled="isDetail"/>
......@@ -377,8 +391,8 @@
</el-col>
</el-row>
<el-form-item label="整改方案" prop="rectificationPlan" v-show="feedBookForm.workType=='3'">
<el-input v-model="form.rectificationPlan" type="textarea" placeholder="请输入整改方案" />
<el-form-item label="整改方案" prop="rectificationPlan" v-if="feedBookForm.workType=='3'">
<el-input v-model="feedBookForm.rectificationPlan" type="textarea" placeholder="请输入整改方案" />
</el-form-item>
<el-form-item label="反馈图片" prop="iconUrl">
......@@ -387,13 +401,12 @@
@resFun="getFileInfo"
@remove="listRemove"
:fileArr="fileList"
:readOnly= "isDetail"
/>
<el-input v-show="false" disabled v-model="form.iconUrl"></el-input>
<el-input v-show="false" disabled v-model="feedBookForm.iconUrl"></el-input>
</el-form-item>
<el-form-item label="反馈信息" prop="rectificationResult">
<el-input v-model="form.rectificationResult" type="textarea" placeholder="反馈信息" />
<el-input v-model="feedBookForm.rectificationResult" type="textarea" placeholder="反馈信息" />
</el-form-item>
</el-form>
......@@ -427,7 +440,6 @@ export default {
// 导出遮罩层
exportLoading: false,
detailDialogVisible: false,
workForm: {},
// 选中数组
ids: [],
// 非单个禁用
......@@ -510,16 +522,18 @@ export default {
//反馈校验
feedBookRules: {
iconUrl: [
{ required: true, message: "指派单位", trigger: "blur" }
{ required: true, message: "反馈图片", trigger: "change" }
],
rectificationResult: [
{ required: true, message: "指派人", trigger: "blur" }
rectificationResult:[
{ required: true, message: "反馈信息", trigger: "blur" }
]
},
roleType: "zhengfu",
workForm:{},
workOpen: false,
feedBookForm: {},
feedBookForm: {
iconUrl: ""
},
feedBookOpen: false
};
},
......@@ -654,7 +668,7 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const workIds = row.workId || this.ids;
this.$confirm('是否确认删除燃气任务编号为"' + workIds + '"的数据项?', "警告", {
this.$confirm('是否确认删除燃气任务名称为"' + row.workTitle + '"的数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
......@@ -681,7 +695,8 @@ export default {
}).catch(() => {});
},
getFileInfo(res){
this.form.iconUrl = res.url;
this.feedBookForm.iconUrl = res.url;
//this.$set(this.feedBookForm,'iconUrl',res.url)
},
listRemove(e) {
this.form.iconUrl = "";
......@@ -739,13 +754,14 @@ export default {
},*/
//详情
workDetail(row){
this.isDetail=true;
this.open = true;
this.title = "燃气任务详情";
this.form = row;
this.getEnterpriseLists();
this.getInspectionUserList(row.workAssignEnterproseId);
getOrder(row.workId).then(response => {
this.isDetail=true;
this.open = true;
this.title = "燃气任务详情";
this.form = response.data;
this.getEnterpriseLists();
this.getInspectionUserList(response.data.workAssignEnterproseId);
});
},
//任务下发
workIssue(row){
......@@ -763,7 +779,7 @@ export default {
this.workForm.workAssignMan = row.workAssignMan;
}*/
//this.workForm = row;
this.workForm.workStatus = '1';
//this.workForm.workStatus = '1';
this.workOpen = true;
this.getEnterpriseLists();
this.getInspectionUserList(row.workAssignEnterproseId);
......@@ -790,18 +806,19 @@ export default {
feedbookWork(row){
this.title = "反馈信息";
this.feedBookOpen = true;
//this.feedBookForm = {};
this.feedBookForm.workId = row.workId;
this.feedBookForm.workTitle = row.workTitle;
this.feedBookForm.workType = row.workType;
if(row.iconUrl){
/*if(row.iconUrl){
this.feedBookForm.iconUrl = row.iconUrl;
}
if(row.rectificationPlan){
}*/
/*if(row.rectificationPlan){
this.feedBookForm.rectificationPlan = row.rectificationPlan;
}
if(row.rectificationResult){
this.feedBookForm.rectificationResult = row.rectificationResult;
}
}*/
//this.feedBookForm = row;
this.getEnterpriseLists();
},
......@@ -848,11 +865,19 @@ export default {
if (valid) {
if (this.feedBookForm.workId != null) {
this.feedBookForm.workStatus = '2';
/*const param ={...this.feedBookForm};
param.workStatus = '2';*/
updateOrder(this.feedBookForm).then(response => {
this.msgSuccess("反馈成功");
this.feedBookOpen = false;
this.getList();
});
if(response.code = 200){
this.msgSuccess("反馈成功");
this.feedBookOpen = false;
this.getList();
}
/*if(!this.feedBookOpen){
this.getList();
}*/
//this.getList();
});
}
}
});
......
......@@ -155,7 +155,7 @@
/>
<!-- 添加或修改应急预案对话框 -->
<el-dialog :title="title" :visible.sync="open" width="1200px" append-to-body>
<el-dialog :title="title" :visible.sync="open" @closed="dialogClose" @open="dialogOpen" width="1200px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<div class="division">
<div style="width: 40%;">
......@@ -199,7 +199,7 @@
<el-form-item label="备注" prop="remarks">
<el-input v-model="form.remarks" placeholder="请输入备注" :disabled="readonly" />
</el-form-item>
<el-form-item label="预案附件" id="fujian" prop="iconUrl">
<el-form-item label="预案附件" v-if="!readonly" prop="iconUrl">
<FileUpload
listType="picture"
@resFun="getFileInfo"
......@@ -212,7 +212,7 @@
<!--<img width="100%" :src="dialogImageUrl" alt="">-->
<!--</el-dialog>-->
</el-form-item>
<el-form-item label="预案附件" id="fujianxia" prop="iconUrl" style="display: none">
<el-form-item label="预案附件" v-if="readonly" prop="iconUrl" >
<span
class="dbtn"
@click="checkFile(form.iconUrl)"
......@@ -226,15 +226,10 @@
</div>
<div style="width: 58%;margin-left: 2%">
<div class="titletitle">方案内容</div>
<!--<el-form-item label="应急方案" prop="planContents">-->
<!--<el-input v-model="form.planContents" placeholder="" />-->
<editor v-model="form.planContents" style="height: 300px;" :readOnly="readonly"/>
<!--<textarea id="editorA" v-model="form.planContents" height="100%"></textarea>-->
<!--</el-form-item>-->
<!--<editor v-model="form.planContents" style="height: 300px;" readonly="false"/>-->
<editor v-if="isOpen" id="editor" v-model="form.planContents" :min-height="300" :readOnly="readonly"/>
</div>
</div>
<!--<el-form-item label="所属企业名称" prop="beyondEnterpriseName">-->
<!--<el-input v-model="form.beyondEnterpriseName" placeholder="请输入所属企业名称" />-->
<!--</el-form-item>-->
......@@ -244,7 +239,7 @@
</el-form>
<div slot="footer" class="dialog-footer">
<el-button id="yesbutton" type="primary" @click="submitForm"> </el-button>
<el-button type="primary" v-if="!readonly" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
......@@ -265,7 +260,7 @@ export default {
return {
// 遮罩层
loading: true,
readonly: true,
readonly: false,
// 导出遮罩层
exportLoading: false,
// 选中数组
......@@ -287,6 +282,7 @@ export default {
title: "",
// 是否显示弹出层
open: false,
isOpen:false,
dialogImageUrl: '',
dialogVisible: false,
fileList:[],
......@@ -301,7 +297,8 @@ export default {
beyondEnterpriseId: null,
},
// 表单参数
form: {},
form: {
},
// 表单校验
rules: {
planTitle: [
......@@ -345,6 +342,12 @@ export default {
this.enterpriseList = response.data;
});
},
dialogClose(){
this.isOpen=false;
},
dialogOpen(){
this.isOpen=true;
},
qiyechang(value){
let obj = {};
obj = this.enterpriseList.find((item)=>{
......@@ -433,33 +436,23 @@ export default {
},
/** 新增按钮操作 */
handleAdd() {
this.open = true;
this.readonly=false;
this.open = true;
this.fileList = [];
this.reset();
this.title = "添加应急预案";
document.getElementById("fujian").style.display=""
document.getElementById("fujianxia").style.display="none"
document.getElementById("yesbutton").style.display="" ;
document.getElementsByClassName("el-upload--picture-card")[0].style.display="";
},
handleDtail(row){
this.readonly=true;
this.open = true;
this.fileList = [];
this.reset();
this.open = true;
const planId = row.planId || this.ids
getPlanInfo(planId).then(response => {
this.form = response.data;
this.title = "应急预案详情";
this.fileList = [{name: '附件', url:uploadfile}];
this.fileurl = row.iconUrl;
document.getElementById("yesbutton").style.display="none" ;
document.getElementById("fujian").style.display="none"
document.getElementById("fujianxia").style.display=""
});
},
/** 修改按钮操作 */
......@@ -475,9 +468,6 @@ export default {
if(this.form.iconUrl!=null||this.form.iconUrl==""){
this.fileList = [{name: 'file', url:uploadfile}];
}
document.getElementById("yesbutton").style.display="" ;
document.getElementById("fujian").style.display=""
document.getElementById("fujianxia").style.display="none"
});
},
/** 提交按钮 */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment