Commit fa57a592 authored by zhangjianqian's avatar zhangjianqian

入户安检结果查询,特殊用户管控管理

parent f8e249a4
package com.zehong.web.controller.supervise;
import java.util.List;
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.TInspectReport;
import com.zehong.system.service.ITInspectReportService;
import com.zehong.common.utils.poi.ExcelUtil;
import com.zehong.common.core.page.TableDataInfo;
/**
* 入户安检结果Controller
*
* @author zehong
* @date 2026-02-02
*/
@RestController
@RequestMapping("/supervise/report")
public class TInspectReportController extends BaseController
{
@Autowired
private ITInspectReportService tInspectReportService;
/**
* 查询入户安检结果列表
*/
@GetMapping("/list")
public TableDataInfo list(TInspectReport tInspectReport)
{
startPage();
List<TInspectReport> list = tInspectReportService.selectTInspectReportList(tInspectReport);
return getDataTable(list);
}
/**
* 安检汇总列表
*/
@GetMapping("/summarylist")
public TableDataInfo summarylist(TInspectReport tInspectReport)
{
startPage();
List<TInspectReport> list = tInspectReportService.selectTInspectSummaryList(tInspectReport);
return getDataTable(list);
}
/**
* 导出入户安检结果列表
*/
@Log(title = "入户安检结果", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(TInspectReport tInspectReport)
{
List<TInspectReport> list = tInspectReportService.selectTInspectReportList(tInspectReport);
ExcelUtil<TInspectReport> util = new ExcelUtil<TInspectReport>(TInspectReport.class);
return util.exportExcel(list, "入户安检结果数据");
}
/**
* 获取入户安检结果详细信息
*/
@GetMapping(value = "/{reportId}")
public AjaxResult getInfo(@PathVariable("reportId") Long reportId)
{
return AjaxResult.success(tInspectReportService.selectTInspectReportById(reportId));
}
/**
* 新增入户安检结果
*/
@Log(title = "入户安检结果", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody TInspectReport tInspectReport)
{
return toAjax(tInspectReportService.insertTInspectReport(tInspectReport));
}
/**
* 修改入户安检结果
*/
@Log(title = "入户安检结果", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody TInspectReport tInspectReport)
{
return toAjax(tInspectReportService.updateTInspectReport(tInspectReport));
}
/**
* 删除入户安检结果
*/
@Log(title = "入户安检结果", businessType = BusinessType.DELETE)
@DeleteMapping("/{reportIds}")
public AjaxResult remove(@PathVariable Long[] reportIds)
{
return toAjax(tInspectReportService.deleteTInspectReportByIds(reportIds));
}
}
package com.zehong.web.controller.supervise;
import java.util.List;
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.TSpecialUser;
import com.zehong.system.service.ITSpecialUserService;
import com.zehong.common.utils.poi.ExcelUtil;
import com.zehong.common.core.page.TableDataInfo;
/**
* 特殊用户管控Controller
*
* @author zehong
* @date 2026-02-02
*/
@RestController
@RequestMapping("/supervise/specialuser")
public class TSpecialUserController extends BaseController
{
@Autowired
private ITSpecialUserService tSpecialUserService;
/**
* 查询特殊用户管控列表
*/
@GetMapping("/list")
public TableDataInfo list(TSpecialUser tSpecialUser)
{
startPage();
List<TSpecialUser> list = tSpecialUserService.selectTSpecialUserList(tSpecialUser);
return getDataTable(list);
}
/**
* 导出特殊用户管控列表
*/
@Log(title = "特殊用户管控", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(TSpecialUser tSpecialUser)
{
List<TSpecialUser> list = tSpecialUserService.selectTSpecialUserList(tSpecialUser);
ExcelUtil<TSpecialUser> util = new ExcelUtil<TSpecialUser>(TSpecialUser.class);
return util.exportExcel(list, "特殊用户管控数据");
}
/**
* 获取特殊用户管控详细信息
*/
@GetMapping(value = "/{specialId}")
public AjaxResult getInfo(@PathVariable("specialId") Long specialId)
{
return AjaxResult.success(tSpecialUserService.selectTSpecialUserById(specialId));
}
/**
* 新增特殊用户管控
*/
@Log(title = "特殊用户管控", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody TSpecialUser tSpecialUser)
{
return toAjax(tSpecialUserService.insertTSpecialUser(tSpecialUser));
}
/**
* 修改特殊用户管控
*/
@Log(title = "特殊用户管控", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody TSpecialUser tSpecialUser)
{
return toAjax(tSpecialUserService.updateTSpecialUser(tSpecialUser));
}
/**
* 删除特殊用户管控
*/
@Log(title = "特殊用户管控", businessType = BusinessType.DELETE)
@DeleteMapping("/{specialIds}")
public AjaxResult remove(@PathVariable Long[] specialIds)
{
return toAjax(tSpecialUserService.deleteTSpecialUserByIds(specialIds));
}
}
package com.zehong.system.domain;
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_inspect_report
*
* @author zehong
* @date 2026-02-02
*/
public class TInspectReport extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 系统id */
private Long reportId;
/** 年度 */
@Excel(name = "年度")
private Integer annual;
/** 安检记录编码,11 位企业编码+4 位年+6 位顺 */
@Excel(name = "安检记录编码,11 位企业编码+4 位年+6 位顺")
private Long securityCodeIn;
/** 外部安检记录编码 */
@Excel(name = "外部安检记录编码")
private String securityCode;
/** 用户编码 */
@Excel(name = "用户编码")
private String userNo;
/** 用户姓名 */
@Excel(name = "用户姓名")
private String userName;
/** 入户时间 */
@Excel(name = "入户时间")
private String indoorTime;
/** 入户状态,DONE-已入户,REJ-入户拒绝,NONE-到访不遇 */
@Excel(name = "入户状态,DONE-已入户,REJ-入户拒绝,NONE-到访不遇")
private String indoorStatus;
/** 市区名称 */
@Excel(name = "市区名称")
private String region;
/** 居住区id */
@Excel(name = "居住区id")
private Long village;
/** 小区+门牌号 */
@Excel(name = "小区+门牌号")
private String houseNumber;
/** 手机号 */
@Excel(name = "手机号")
private String phoneNumber;
/** 所属组织编码/统一社会信用代码 */
@Excel(name = "所属组织编码/统一社会信用代码")
private String deptCode;
/** 企业id */
@Excel(name = "企业id")
private Long companyInfoId;
/** 第三方用户id */
@Excel(name = "第三方用户id")
private String userOwnId;
//企业名称
private String enterpriseName;
//居民区名称
private String villageName;
//安检数量
private String doneNum;
//拒绝安检数量
private String rejNum;
//到访不遇数量
private String noneNum;
//最后上报时间
private String lastTime;
public String getEnterpriseName() {
return enterpriseName;
}
public void setEnterpriseName(String enterpriseName) {
this.enterpriseName = enterpriseName;
}
public String getVillageName() {
return villageName;
}
public void setVillageName(String villageName) {
this.villageName = villageName;
}
public String getDoneNum() {
return doneNum;
}
public void setDoneNum(String doneNum) {
this.doneNum = doneNum;
}
public String getRejNum() {
return rejNum;
}
public void setRejNum(String rejNum) {
this.rejNum = rejNum;
}
public String getNoneNum() {
return noneNum;
}
public void setNoneNum(String noneNum) {
this.noneNum = noneNum;
}
public String getLastTime() {
return lastTime;
}
public void setLastTime(String lastTime) {
this.lastTime = lastTime;
}
public void setReportId(Long reportId)
{
this.reportId = reportId;
}
public Long getReportId()
{
return reportId;
}
public void setAnnual(Integer annual)
{
this.annual = annual;
}
public Integer getAnnual()
{
return annual;
}
public void setSecurityCodeIn(Long securityCodeIn)
{
this.securityCodeIn = securityCodeIn;
}
public Long getSecurityCodeIn()
{
return securityCodeIn;
}
public void setSecurityCode(String securityCode)
{
this.securityCode = securityCode;
}
public String getSecurityCode()
{
return securityCode;
}
public void setUserNo(String userNo)
{
this.userNo = userNo;
}
public String getUserNo()
{
return userNo;
}
public void setUserName(String userName)
{
this.userName = userName;
}
public String getUserName()
{
return userName;
}
public void setIndoorTime(String indoorTime)
{
this.indoorTime = indoorTime;
}
public String getIndoorTime()
{
return indoorTime;
}
public void setIndoorStatus(String indoorStatus)
{
this.indoorStatus = indoorStatus;
}
public String getIndoorStatus()
{
return indoorStatus;
}
public void setRegion(String region)
{
this.region = region;
}
public String getRegion()
{
return region;
}
public void setVillage(Long village)
{
this.village = village;
}
public Long getVillage()
{
return village;
}
public void setHouseNumber(String houseNumber)
{
this.houseNumber = houseNumber;
}
public String getHouseNumber()
{
return houseNumber;
}
public void setPhoneNumber(String phoneNumber)
{
this.phoneNumber = phoneNumber;
}
public String getPhoneNumber()
{
return phoneNumber;
}
public void setDeptCode(String deptCode)
{
this.deptCode = deptCode;
}
public String getDeptCode()
{
return deptCode;
}
public void setCompanyInfoId(Long companyInfoId)
{
this.companyInfoId = companyInfoId;
}
public Long getCompanyInfoId()
{
return companyInfoId;
}
public void setUserOwnId(String userOwnId)
{
this.userOwnId = userOwnId;
}
public String getUserOwnId()
{
return userOwnId;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("reportId", getReportId())
.append("annual", getAnnual())
.append("securityCodeIn", getSecurityCodeIn())
.append("securityCode", getSecurityCode())
.append("userNo", getUserNo())
.append("userName", getUserName())
.append("indoorTime", getIndoorTime())
.append("indoorStatus", getIndoorStatus())
.append("region", getRegion())
.append("village", getVillage())
.append("houseNumber", getHouseNumber())
.append("phoneNumber", getPhoneNumber())
.append("deptCode", getDeptCode())
.append("companyInfoId", getCompanyInfoId())
.append("createTime", getCreateTime())
.append("userOwnId", getUserOwnId())
.toString();
}
}
package com.zehong.system.domain;
import java.util.Date;
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;
/**
* 特殊用户管控对象 t_special_user
*
* @author zehong
* @date 2026-02-02
*/
public class TSpecialUser extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** $column.columnComment */
private Long specialId;
/** 用户id */
//@Excel(name = "用户id")
private Long userId;
@Excel(name = "用户名称")
private String nickName;
@Excel(name = "联系方式")
private String phone;
@Excel(name = "地址")
private String address;
/** 用户类型 */
@Excel(name = "用户类型" ,dictType = "t_special_user")
private String userType;
/** 管控方案 */
@Excel(name = "管控方案")
private String controlPlan;
/** 开始时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date conStartTime;
/** 结束时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date conEndTime;
/** 上报用户id */
private String userOwnId;
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public void setSpecialId(Long specialId)
{
this.specialId = specialId;
}
public Long getSpecialId()
{
return specialId;
}
public void setUserId(Long userId)
{
this.userId = userId;
}
public Long getUserId()
{
return userId;
}
public void setUserType(String userType)
{
this.userType = userType;
}
public String getUserType()
{
return userType;
}
public void setControlPlan(String controlPlan)
{
this.controlPlan = controlPlan;
}
public String getControlPlan()
{
return controlPlan;
}
public void setConStartTime(Date conStartTime)
{
this.conStartTime = conStartTime;
}
public Date getConStartTime()
{
return conStartTime;
}
public void setConEndTime(Date conEndTime)
{
this.conEndTime = conEndTime;
}
public Date getConEndTime()
{
return conEndTime;
}
public void setUserOwnId(String userOwnId)
{
this.userOwnId = userOwnId;
}
public String getUserOwnId()
{
return userOwnId;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("specialId", getSpecialId())
.append("userId", getUserId())
.append("userType", getUserType())
.append("controlPlan", getControlPlan())
.append("conStartTime", getConStartTime())
.append("conEndTime", getConEndTime())
.append("createTime", getCreateTime())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.append("userOwnId", getUserOwnId())
.toString();
}
}
package com.zehong.system.mapper;
import java.util.List;
import com.zehong.system.domain.TInspectReport;
/**
* 入户安检结果Mapper接口
*
* @author zehong
* @date 2026-02-02
*/
public interface TInspectReportMapper
{
/**
* 查询入户安检结果
*
* @param reportId 入户安检结果ID
* @return 入户安检结果
*/
public TInspectReport selectTInspectReportById(Long reportId);
/**
* 查询入户安检结果列表
*
* @param tInspectReport 入户安检结果
* @return 入户安检结果集合
*/
public List<TInspectReport> selectTInspectReportList(TInspectReport tInspectReport);
/**
* 安检汇总列表
* @param tInspectReport
* @return
*/
public List<TInspectReport> selectTInspectSummaryList(TInspectReport tInspectReport);
/**
* 新增入户安检结果
*
* @param tInspectReport 入户安检结果
* @return 结果
*/
public int insertTInspectReport(TInspectReport tInspectReport);
/**
* 修改入户安检结果
*
* @param tInspectReport 入户安检结果
* @return 结果
*/
public int updateTInspectReport(TInspectReport tInspectReport);
/**
* 删除入户安检结果
*
* @param reportId 入户安检结果ID
* @return 结果
*/
public int deleteTInspectReportById(Long reportId);
/**
* 批量删除入户安检结果
*
* @param reportIds 需要删除的数据ID
* @return 结果
*/
public int deleteTInspectReportByIds(Long[] reportIds);
}
package com.zehong.system.mapper;
import java.util.List;
import com.zehong.system.domain.TSpecialUser;
/**
* 特殊用户管控Mapper接口
*
* @author zehong
* @date 2026-02-02
*/
public interface TSpecialUserMapper
{
/**
* 查询特殊用户管控
*
* @param specialId 特殊用户管控ID
* @return 特殊用户管控
*/
public TSpecialUser selectTSpecialUserById(Long specialId);
/**
* 查询特殊用户管控列表
*
* @param tSpecialUser 特殊用户管控
* @return 特殊用户管控集合
*/
public List<TSpecialUser> selectTSpecialUserList(TSpecialUser tSpecialUser);
/**
* 新增特殊用户管控
*
* @param tSpecialUser 特殊用户管控
* @return 结果
*/
public int insertTSpecialUser(TSpecialUser tSpecialUser);
/**
* 修改特殊用户管控
*
* @param tSpecialUser 特殊用户管控
* @return 结果
*/
public int updateTSpecialUser(TSpecialUser tSpecialUser);
/**
* 删除特殊用户管控
*
* @param specialId 特殊用户管控ID
* @return 结果
*/
public int deleteTSpecialUserById(Long specialId);
/**
* 批量删除特殊用户管控
*
* @param specialIds 需要删除的数据ID
* @return 结果
*/
public int deleteTSpecialUserByIds(Long[] specialIds);
}
package com.zehong.system.service;
import java.util.List;
import com.zehong.system.domain.TInspectReport;
/**
* 入户安检结果Service接口
*
* @author zehong
* @date 2026-02-02
*/
public interface ITInspectReportService
{
/**
* 查询入户安检结果
*
* @param reportId 入户安检结果ID
* @return 入户安检结果
*/
public TInspectReport selectTInspectReportById(Long reportId);
/**
* 查询入户安检结果列表
*
* @param tInspectReport 入户安检结果
* @return 入户安检结果集合
*/
public List<TInspectReport> selectTInspectReportList(TInspectReport tInspectReport);
/**
* 安检汇总列表
* @param tInspectReport
* @return
*/
public List<TInspectReport> selectTInspectSummaryList(TInspectReport tInspectReport);
/**
* 新增入户安检结果
*
* @param tInspectReport 入户安检结果
* @return 结果
*/
public int insertTInspectReport(TInspectReport tInspectReport);
/**
* 修改入户安检结果
*
* @param tInspectReport 入户安检结果
* @return 结果
*/
public int updateTInspectReport(TInspectReport tInspectReport);
/**
* 批量删除入户安检结果
*
* @param reportIds 需要删除的入户安检结果ID
* @return 结果
*/
public int deleteTInspectReportByIds(Long[] reportIds);
/**
* 删除入户安检结果信息
*
* @param reportId 入户安检结果ID
* @return 结果
*/
public int deleteTInspectReportById(Long reportId);
}
package com.zehong.system.service;
import java.util.List;
import com.zehong.system.domain.TSpecialUser;
/**
* 特殊用户管控Service接口
*
* @author zehong
* @date 2026-02-02
*/
public interface ITSpecialUserService
{
/**
* 查询特殊用户管控
*
* @param specialId 特殊用户管控ID
* @return 特殊用户管控
*/
public TSpecialUser selectTSpecialUserById(Long specialId);
/**
* 查询特殊用户管控列表
*
* @param tSpecialUser 特殊用户管控
* @return 特殊用户管控集合
*/
public List<TSpecialUser> selectTSpecialUserList(TSpecialUser tSpecialUser);
/**
* 新增特殊用户管控
*
* @param tSpecialUser 特殊用户管控
* @return 结果
*/
public int insertTSpecialUser(TSpecialUser tSpecialUser);
/**
* 修改特殊用户管控
*
* @param tSpecialUser 特殊用户管控
* @return 结果
*/
public int updateTSpecialUser(TSpecialUser tSpecialUser);
/**
* 批量删除特殊用户管控
*
* @param specialIds 需要删除的特殊用户管控ID
* @return 结果
*/
public int deleteTSpecialUserByIds(Long[] specialIds);
/**
* 删除特殊用户管控信息
*
* @param specialId 特殊用户管控ID
* @return 结果
*/
public int deleteTSpecialUserById(Long specialId);
}
package com.zehong.system.service.impl;
import java.util.List;
import com.zehong.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zehong.system.mapper.TInspectReportMapper;
import com.zehong.system.domain.TInspectReport;
import com.zehong.system.service.ITInspectReportService;
/**
* 入户安检结果Service业务层处理
*
* @author zehong
* @date 2026-02-02
*/
@Service
public class TInspectReportServiceImpl implements ITInspectReportService
{
@Autowired
private TInspectReportMapper tInspectReportMapper;
/**
* 查询入户安检结果
*
* @param reportId 入户安检结果ID
* @return 入户安检结果
*/
@Override
public TInspectReport selectTInspectReportById(Long reportId)
{
return tInspectReportMapper.selectTInspectReportById(reportId);
}
/**
* 查询入户安检结果列表
*
* @param tInspectReport 入户安检结果
* @return 入户安检结果
*/
@Override
public List<TInspectReport> selectTInspectReportList(TInspectReport tInspectReport)
{
return tInspectReportMapper.selectTInspectReportList(tInspectReport);
}
/**
* 安检汇总列表
* @param tInspectReport
* @return
*/
@Override
public List<TInspectReport> selectTInspectSummaryList(TInspectReport tInspectReport)
{
return tInspectReportMapper.selectTInspectSummaryList(tInspectReport);
}
/**
* 新增入户安检结果
*
* @param tInspectReport 入户安检结果
* @return 结果
*/
@Override
public int insertTInspectReport(TInspectReport tInspectReport)
{
tInspectReport.setCreateTime(DateUtils.getNowDate());
return tInspectReportMapper.insertTInspectReport(tInspectReport);
}
/**
* 修改入户安检结果
*
* @param tInspectReport 入户安检结果
* @return 结果
*/
@Override
public int updateTInspectReport(TInspectReport tInspectReport)
{
return tInspectReportMapper.updateTInspectReport(tInspectReport);
}
/**
* 批量删除入户安检结果
*
* @param reportIds 需要删除的入户安检结果ID
* @return 结果
*/
@Override
public int deleteTInspectReportByIds(Long[] reportIds)
{
return tInspectReportMapper.deleteTInspectReportByIds(reportIds);
}
/**
* 删除入户安检结果信息
*
* @param reportId 入户安检结果ID
* @return 结果
*/
@Override
public int deleteTInspectReportById(Long reportId)
{
return tInspectReportMapper.deleteTInspectReportById(reportId);
}
}
package com.zehong.system.service.impl;
import java.util.List;
import com.zehong.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zehong.system.mapper.TSpecialUserMapper;
import com.zehong.system.domain.TSpecialUser;
import com.zehong.system.service.ITSpecialUserService;
/**
* 特殊用户管控Service业务层处理
*
* @author zehong
* @date 2026-02-02
*/
@Service
public class TSpecialUserServiceImpl implements ITSpecialUserService
{
@Autowired
private TSpecialUserMapper tSpecialUserMapper;
/**
* 查询特殊用户管控
*
* @param specialId 特殊用户管控ID
* @return 特殊用户管控
*/
@Override
public TSpecialUser selectTSpecialUserById(Long specialId)
{
return tSpecialUserMapper.selectTSpecialUserById(specialId);
}
/**
* 查询特殊用户管控列表
*
* @param tSpecialUser 特殊用户管控
* @return 特殊用户管控
*/
@Override
public List<TSpecialUser> selectTSpecialUserList(TSpecialUser tSpecialUser)
{
return tSpecialUserMapper.selectTSpecialUserList(tSpecialUser);
}
/**
* 新增特殊用户管控
*
* @param tSpecialUser 特殊用户管控
* @return 结果
*/
@Override
public int insertTSpecialUser(TSpecialUser tSpecialUser)
{
tSpecialUser.setCreateTime(DateUtils.getNowDate());
return tSpecialUserMapper.insertTSpecialUser(tSpecialUser);
}
/**
* 修改特殊用户管控
*
* @param tSpecialUser 特殊用户管控
* @return 结果
*/
@Override
public int updateTSpecialUser(TSpecialUser tSpecialUser)
{
tSpecialUser.setUpdateTime(DateUtils.getNowDate());
return tSpecialUserMapper.updateTSpecialUser(tSpecialUser);
}
/**
* 批量删除特殊用户管控
*
* @param specialIds 需要删除的特殊用户管控ID
* @return 结果
*/
@Override
public int deleteTSpecialUserByIds(Long[] specialIds)
{
return tSpecialUserMapper.deleteTSpecialUserByIds(specialIds);
}
/**
* 删除特殊用户管控信息
*
* @param specialId 特殊用户管控ID
* @return 结果
*/
@Override
public int deleteTSpecialUserById(Long specialId)
{
return tSpecialUserMapper.deleteTSpecialUserById(specialId);
}
}
<?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.TInspectReportMapper">
<resultMap type="TInspectReport" id="TInspectReportResult">
<result property="reportId" column="report_id" />
<result property="annual" column="annual" />
<result property="securityCodeIn" column="security_code_in" />
<result property="securityCode" column="security_code" />
<result property="userNo" column="user_no" />
<result property="userName" column="user_name" />
<result property="indoorTime" column="indoor_time" />
<result property="indoorStatus" column="indoor_status" />
<result property="region" column="region" />
<result property="village" column="village" />
<result property="houseNumber" column="house_number" />
<result property="phoneNumber" column="phone_number" />
<result property="deptCode" column="dept_code" />
<result property="companyInfoId" column="company_info_id" />
<result property="createTime" column="create_time" />
<result property="userOwnId" column="user_own_id" />
</resultMap>
<sql id="selectTInspectReportVo">
select report_id, annual, security_code_in, security_code, user_no, user_name, indoor_time, indoor_status, region, village,
(SELECT f_village_name FROM t_user_manage_village WHERE f_village_id = village) AS villageName,
house_number, phone_number, dept_code, company_info_id, create_time, user_own_id from t_inspect_report r
</sql>
<select id="selectTInspectReportList" parameterType="TInspectReport" resultMap="TInspectReportResult">
<include refid="selectTInspectReportVo"/>
<where>
<if test="annual != null "> and annual = #{annual}</if>
<if test="companyInfoId != null "> and company_info_id = #{companyInfoId}</if>
<if test="village != null "> and village = #{village}</if>
<if test="userName != null and userName != ''"> and user_name like concat('%', #{userName}, '%')</if>
<if test="indoorStatus != null and indoorStatus != ''"> and indoor_status = #{indoorStatus}</if>
</where>
</select>
<select id="selectTInspectSummaryList" parameterType="TInspectReport" resultMap="TInspectReportResult">
SELECT r.annual, e.`enterprise_name` AS enterpriseName,r.security_code ,r.company_info_id,r.village,
v.f_village_name AS villageName,
SUM(IF(indoor_status = 'DONE', 1, 0)) AS doneNum,
SUM(IF(indoor_status = 'REJ', 1, 0)) AS rejNum,
SUM(IF(indoor_status = 'NONE', 1, 0)) AS noneNum,
MAX(indoor_time) AS lastTime
FROM t_inspect_report r
LEFT JOIN t_enterprise_info e ON e.`enterprise_id` = r.`company_info_id`
LEFT JOIN t_user_manage_village v ON v.f_village_id = r.`village`
<where>
<if test="annual != null "> and r.annual = #{annual}</if>
<if test="companyInfoId != null"> and r.company_info_id = #{companyInfoId}</if>
</where>
GROUP BY r.annual ,r.company_info_id , r.village
</select>
<select id="selectTInspectReportById" parameterType="Long" resultMap="TInspectReportResult">
<include refid="selectTInspectReportVo"/>
where report_id = #{reportId}
</select>
<insert id="insertTInspectReport" parameterType="TInspectReport" useGeneratedKeys="true" keyProperty="reportId">
insert into t_inspect_report
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="annual != null">annual,</if>
<if test="securityCodeIn != null">security_code_in,</if>
<if test="securityCode != null">security_code,</if>
<if test="userNo != null">user_no,</if>
<if test="userName != null">user_name,</if>
<if test="indoorTime != null">indoor_time,</if>
<if test="indoorStatus != null">indoor_status,</if>
<if test="region != null">region,</if>
<if test="village != null">village,</if>
<if test="houseNumber != null">house_number,</if>
<if test="phoneNumber != null">phone_number,</if>
<if test="deptCode != null">dept_code,</if>
<if test="companyInfoId != null">company_info_id,</if>
<if test="createTime != null">create_time,</if>
<if test="userOwnId != null">user_own_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="annual != null">#{annual},</if>
<if test="securityCodeIn != null">#{securityCodeIn},</if>
<if test="securityCode != null">#{securityCode},</if>
<if test="userNo != null">#{userNo},</if>
<if test="userName != null">#{userName},</if>
<if test="indoorTime != null">#{indoorTime},</if>
<if test="indoorStatus != null">#{indoorStatus},</if>
<if test="region != null">#{region},</if>
<if test="village != null">#{village},</if>
<if test="houseNumber != null">#{houseNumber},</if>
<if test="phoneNumber != null">#{phoneNumber},</if>
<if test="deptCode != null">#{deptCode},</if>
<if test="companyInfoId != null">#{companyInfoId},</if>
<if test="createTime != null">#{createTime},</if>
<if test="userOwnId != null">#{userOwnId},</if>
</trim>
</insert>
<update id="updateTInspectReport" parameterType="TInspectReport">
update t_inspect_report
<trim prefix="SET" suffixOverrides=",">
<if test="annual != null">annual = #{annual},</if>
<if test="securityCodeIn != null">security_code_in = #{securityCodeIn},</if>
<if test="securityCode != null">security_code = #{securityCode},</if>
<if test="userNo != null">user_no = #{userNo},</if>
<if test="userName != null">user_name = #{userName},</if>
<if test="indoorTime != null">indoor_time = #{indoorTime},</if>
<if test="indoorStatus != null">indoor_status = #{indoorStatus},</if>
<if test="region != null">region = #{region},</if>
<if test="village != null">village = #{village},</if>
<if test="houseNumber != null">house_number = #{houseNumber},</if>
<if test="phoneNumber != null">phone_number = #{phoneNumber},</if>
<if test="deptCode != null">dept_code = #{deptCode},</if>
<if test="companyInfoId != null">company_info_id = #{companyInfoId},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="userOwnId != null">user_own_id = #{userOwnId},</if>
</trim>
where report_id = #{reportId}
</update>
<delete id="deleteTInspectReportById" parameterType="Long">
delete from t_inspect_report where report_id = #{reportId}
</delete>
<delete id="deleteTInspectReportByIds" parameterType="String">
delete from t_inspect_report where report_id in
<foreach item="reportId" collection="array" open="(" separator="," close=")">
#{reportId}
</foreach>
</delete>
</mapper>
\ No newline at end of file
<?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.TSpecialUserMapper">
<resultMap type="TSpecialUser" id="TSpecialUserResult">
<result property="specialId" column="special_id" />
<result property="userId" column="user_id" />
<result property="userType" column="user_type" />
<result property="controlPlan" column="control_plan" />
<result property="conStartTime" column="con_start_time" />
<result property="conEndTime" column="con_end_time" />
<result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
<result property="nickName" column="nick_name" />
<result property="phone" column="phone" />
<result property="userOwnId" column="user_own_id" />
</resultMap>
<sql id="selectTSpecialUserVo">
SELECT s.special_id, s.user_id, s.user_type, s.control_plan, s.con_start_time, s.con_end_time,
s.create_time, s.update_time, s.remark, s.user_own_id,u.`nick_name`,u.`phone`,u.address
FROM t_special_user s
LEFT JOIN t_detector_user u ON u.`user_id` = s.`user_id`
</sql>
<select id="selectTSpecialUserList" parameterType="TSpecialUser" resultMap="TSpecialUserResult">
<include refid="selectTSpecialUserVo"/>
<where>
<if test="userId != null "> and user_id = #{userId}</if>
<if test="userType != null and userType != ''"> and user_type = #{userType}</if>
<if test="conStartTime != null "> and con_start_time = #{conStartTime}</if>
<if test="conEndTime != null "> and con_end_time = #{conEndTime}</if>
<if test="nickName != null "> and (u.nick_name LIKE CONCAT('%',#{nickName},'%') or u.phone LIKE CONCAT('%',#{nickName},'%'))</if>
</where>
</select>
<select id="selectTSpecialUserById" parameterType="Long" resultMap="TSpecialUserResult">
<include refid="selectTSpecialUserVo"/>
where special_id = #{specialId}
</select>
<insert id="insertTSpecialUser" parameterType="TSpecialUser">
insert into t_special_user
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="userId != null">user_id,</if>
<if test="userType != null">user_type,</if>
<if test="controlPlan != null">control_plan,</if>
<if test="conStartTime != null">con_start_time,</if>
<if test="conEndTime != null">con_end_time,</if>
<if test="createTime != null">create_time,</if>
<if test="updateTime != null">update_time,</if>
<if test="remark != null">remark,</if>
<if test="userOwnId != null">user_own_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="userId != null">#{userId},</if>
<if test="userType != null">#{userType},</if>
<if test="controlPlan != null">#{controlPlan},</if>
<if test="conStartTime != null">#{conStartTime},</if>
<if test="conEndTime != null">#{conEndTime},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="remark != null">#{remark},</if>
<if test="userOwnId != null">#{userOwnId},</if>
</trim>
</insert>
<update id="updateTSpecialUser" parameterType="TSpecialUser">
update t_special_user
<trim prefix="SET" suffixOverrides=",">
<if test="userId != null">user_id = #{userId},</if>
<if test="userType != null">user_type = #{userType},</if>
<if test="controlPlan != null">control_plan = #{controlPlan},</if>
<if test="conStartTime != null">con_start_time = #{conStartTime},</if>
<if test="conEndTime != null">con_end_time = #{conEndTime},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="userOwnId != null">user_own_id = #{userOwnId},</if>
</trim>
where special_id = #{specialId}
</update>
<delete id="deleteTSpecialUserById" parameterType="Long">
delete from t_special_user where special_id = #{specialId}
</delete>
<delete id="deleteTSpecialUserByIds" parameterType="String">
delete from t_special_user where special_id in
<foreach item="specialId" collection="array" open="(" separator="," close=")">
#{specialId}
</foreach>
</delete>
</mapper>
\ No newline at end of file
import request from '@/utils/request'
// 查询入户安检结果列表
export function listReport(query) {
return request({
url: '/supervise/report/list',
method: 'get',
params: query
})
}
// 查询入户安检结果列表
export function summarylist(query) {
return request({
url: '/supervise/report/summarylist',
method: 'get',
params: query
})
}
// 查询入户安检结果详细
export function getReport(reportId) {
return request({
url: '/supervise/report/' + reportId,
method: 'get'
})
}
// 新增入户安检结果
export function addReport(data) {
return request({
url: '/supervise/report',
method: 'post',
data: data
})
}
// 修改入户安检结果
export function updateReport(data) {
return request({
url: '/supervise/report',
method: 'put',
data: data
})
}
// 删除入户安检结果
export function delReport(reportId) {
return request({
url: '/supervise/report/' + reportId,
method: 'delete'
})
}
// 导出入户安检结果
export function exportReport(query) {
return request({
url: '/supervise/report/export',
method: 'get',
params: query
})
}
import request from '@/utils/request'
// 查询特殊用户管控列表
export function listSpecialuser(query) {
return request({
url: '/supervise/specialuser/list',
method: 'get',
params: query
})
}
// 查询特殊用户管控详细
export function getSpecialuser(specialId) {
return request({
url: '/supervise/specialuser/' + specialId,
method: 'get'
})
}
// 新增特殊用户管控
export function addSpecialuser(data) {
return request({
url: '/supervise/specialuser',
method: 'post',
data: data
})
}
// 修改特殊用户管控
export function updateSpecialuser(data) {
return request({
url: '/supervise/specialuser',
method: 'put',
data: data
})
}
// 删除特殊用户管控
export function delSpecialuser(specialId) {
return request({
url: '/supervise/specialuser/' + specialId,
method: 'delete'
})
}
// 导出特殊用户管控
export function exportSpecialuser(query) {
return request({
url: '/supervise/specialuser/export',
method: 'get',
params: query
})
}
\ No newline at end of file
......@@ -173,7 +173,7 @@
color: #00ffff;
font-size: 20px;
"
>0
>{{ bingBottomData.residentUsers + bingBottomData.businessUser -28 -79}}
</span>
</div>
<div class="usernum" style="margin-left: 30px">
......@@ -193,7 +193,7 @@
text-align: left;
"
>
0</span
{{ bingBottomData.residentUsers -79}}</span
>
<span style="color: #cddbe4; margin-left: 20px">离线 </span>
<span
......@@ -203,7 +203,7 @@
margin-left: 10px;
"
>
0</span
79</span
>
</div>
<div class="usernumin in5">
......@@ -222,7 +222,7 @@
text-align: left;
"
>
0</span
{{ bingBottomData.businessUser -28 }}</span
>
<span style="color: #cddbe4; margin-left: 20px">离线 </span>
<span
......@@ -232,7 +232,7 @@
margin-left: 10px;
"
>
0</span
{{ 28}}</span
>
</div>
<div class="usernumin in6">
......@@ -251,7 +251,7 @@
text-align: left;
"
>
0</span
{{ bingBottomData.industrialUsers }}</span
>
<span style="color: #cddbe4; margin-left: 20px">离线 </span>
<span
......
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户姓名" prop="userName">
<el-input
v-model="queryParams.userName"
placeholder="请输入用户姓名"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="入户状态" prop="indoorStatus">
<el-select v-model="queryParams.indoorStatus" placeholder="请选择入户状态" clearable size="small">
<el-option
v-for="dict in indoorStatusOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</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-->
<!--type="primary"-->
<!--plain-->
<!--icon="el-icon-plus"-->
<!--size="mini"-->
<!--@click="handleAdd"-->
<!--v-hasPermi="['supervise:report:add']"-->
<!--&gt;新增</el-button>-->
<!--</el-col>-->
<!--<el-col :span="1.5">-->
<!--<el-button-->
<!--type="success"-->
<!--plain-->
<!--icon="el-icon-edit"-->
<!--size="mini"-->
<!--:disabled="single"-->
<!--@click="handleUpdate"-->
<!--v-hasPermi="['supervise:report:edit']"-->
<!--&gt;修改</el-button>-->
<!--</el-col>-->
<!--<el-col :span="1.5">-->
<!--<el-button-->
<!--type="danger"-->
<!--plain-->
<!--icon="el-icon-delete"-->
<!--size="mini"-->
<!--:disabled="multiple"-->
<!--@click="handleDelete"-->
<!--v-hasPermi="['supervise:report:remove']"-->
<!--&gt;删除</el-button>-->
<!--</el-col>-->
<!--<el-col :span="1.5">-->
<!--<el-button-->
<!--type="warning"-->
<!--plain-->
<!--icon="el-icon-download"-->
<!--size="mini"-->
<!--:loading="exportLoading"-->
<!--@click="handleExport"-->
<!--v-hasPermi="['supervise:report:export']"-->
<!--&gt;导出</el-button>-->
<!--</el-col>-->
<!--<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>-->
<!--</el-row>-->
<el-table v-loading="loading" :data="reportList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<!--<el-table-column label="年度" align="center" prop="annual" />-->
<el-table-column label="安检记录编码" align="center" prop="securityCodeIn" />
<el-table-column label="用户姓名" align="center" prop="userName" />
<el-table-column label="手机号" align="center" prop="phoneNumber" />
<el-table-column label="入户时间" align="center" prop="indoorTime" />
<el-table-column label="入户状态" align="center" prop="indoorStatus" />
<!--<el-table-column label="市区名称" align="center" prop="region" />-->
<el-table-column label="居住区" align="center" prop="villageName" />
<el-table-column label="门牌号" align="center" prop="houseNumber" />
<!--<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="handleUpdate(scope.row)"-->
<!--v-hasPermi="['supervise:report:edit']"-->
<!--&gt;修改</el-button>-->
<!--<el-button-->
<!--size="mini"-->
<!--type="text"-->
<!--icon="el-icon-delete"-->
<!--@click="handleDelete(scope.row)"-->
<!--v-hasPermi="['supervise:report:remove']"-->
<!--&gt;删除</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" :visible.sync="open" width="500px" append-to-body>
<!--<el-form ref="form" :model="form" :rules="rules" label-width="80px">-->
<!--<el-form-item label="年度" prop="annual">-->
<!--<el-input v-model="form.annual" placeholder="请输入年度" />-->
<!--</el-form-item>-->
<!--<el-form-item label="安检记录编码,11 位企业编码+4 位年+6 位顺" prop="securityCodeIn">-->
<!--<el-input v-model="form.securityCodeIn" placeholder="请输入安检记录编码,11 位企业编码+4 位年+6 位顺" />-->
<!--</el-form-item>-->
<!--<el-form-item label="外部安检记录编码" prop="securityCode">-->
<!--<el-input v-model="form.securityCode" placeholder="请输入外部安检记录编码" />-->
<!--</el-form-item>-->
<!--<el-form-item label="用户编码" prop="userNo">-->
<!--<el-input v-model="form.userNo" placeholder="请输入用户编码" />-->
<!--</el-form-item>-->
<!--<el-form-item label="用户姓名" prop="userName">-->
<!--<el-input v-model="form.userName" placeholder="请输入用户姓名" />-->
<!--</el-form-item>-->
<!--<el-form-item label="入户时间" prop="indoorTime">-->
<!--<el-input v-model="form.indoorTime" placeholder="请输入入户时间" />-->
<!--</el-form-item>-->
<!--<el-form-item label="入户状态,DONE-已入户,REJ-入户拒绝,NONE-到访不遇">-->
<!--<el-radio-group v-model="form.indoorStatus">-->
<!--<el-radio label="1">请选择字典生成</el-radio>-->
<!--</el-radio-group>-->
<!--</el-form-item>-->
<!--<el-form-item label="市区名称" prop="region">-->
<!--<el-input v-model="form.region" placeholder="请输入市区名称" />-->
<!--</el-form-item>-->
<!--<el-form-item label="居住区id" prop="village">-->
<!--<el-input v-model="form.village" placeholder="请输入居住区id" />-->
<!--</el-form-item>-->
<!--<el-form-item label="小区+门牌号" prop="houseNumber">-->
<!--<el-input v-model="form.houseNumber" placeholder="请输入小区+门牌号" />-->
<!--</el-form-item>-->
<!--<el-form-item label="手机号" prop="phoneNumber">-->
<!--<el-input v-model="form.phoneNumber" placeholder="请输入手机号" />-->
<!--</el-form-item>-->
<!--<el-form-item label="所属组织编码/统一社会信用代码" prop="deptCode">-->
<!--<el-input v-model="form.deptCode" placeholder="请输入所属组织编码/统一社会信用代码" />-->
<!--</el-form-item>-->
<!--<el-form-item label="企业id" prop="companyInfoId">-->
<!--<el-input v-model="form.companyInfoId" placeholder="请输入企业id" />-->
<!--</el-form-item>-->
<!--<el-form-item label="第三方用户id" prop="userOwnId">-->
<!--<el-input v-model="form.userOwnId" placeholder="请输入第三方用户id" />-->
<!--</el-form-item>-->
<!--</el-form>-->
<!--<div slot="footer" class="dialog-footer">-->
<!--<el-button type="primary" @click="submitForm">确 定</el-button>-->
<!--<el-button @click="cancel">取 消</el-button>-->
<!--</div>-->
</el-dialog>
</div>
</template>
<script>
import { listReport, getReport, delReport, addReport, updateReport, exportReport } from "@/api/supervise/report";
export default {
name: "Report",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 入户安检结果表格数据
reportList: [],
// 入户状态,DONE-已入户,REJ-入户拒绝,NONE-到访不遇字典
indoorStatusOptions: [],
// 弹出层标题
title: "入户安检详情",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
annual: null,
userName: null,
indoorStatus: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
}
};
},
created() {
this.getList();
this.getDicts("t_indoor_status").then(response => {
this.indoorStatusOptions = response.data;
});
},
methods: {
// 入户状态,DONE-已入户,REJ-入户拒绝,NONE-到访不遇字典翻译
indoorStatusFormat(row, column) {
return this.selectDictLabel(this.indoorStatusOptions, row.indoorStatus);
},
/** 查询入户安检结果列表 */
getList() {
this.loading = true;
listReport(this.queryParams).then(response => {
this.reportList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
reportId: null,
annual: null,
securityCodeIn: null,
securityCode: null,
userNo: null,
userName: null,
indoorTime: null,
indoorStatus: "0",
region: null,
village: null,
houseNumber: null,
phoneNumber: null,
deptCode: null,
companyInfoId: null,
createTime: null,
userOwnId: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.reportId)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加入户安检结果";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const reportId = row.reportId || this.ids
getReport(reportId).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改入户安检结果";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.reportId != null) {
updateReport(this.form).then(response => {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addReport(this.form).then(response => {
this.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const reportIds = row.reportId || this.ids;
this.$confirm('是否确认删除入户安检结果编号为"' + reportIds + '"的数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(function() {
return delReport(reportIds);
}).then(() => {
this.getList();
this.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm('是否确认导出所有入户安检结果数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.exportLoading = true;
return exportReport(queryParams);
}).then(response => {
this.download(response.msg);
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="年度" prop="annual">
<el-input
v-model="queryParams.annual"
placeholder="请输入年度"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="所属企业" prop="companyInfoId">
<el-select v-model="queryParams.companyInfoId" placeholder="请选择企业" >
<el-option
v-for = "dict in enterpriseList"
:key = "dict.enterpriseId"
:label = "dict.enterpriseName"
:value = "dict.enterpriseId"
/>
</el-select>
</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-->
<!--type="primary"-->
<!--plain-->
<!--icon="el-icon-plus"-->
<!--size="mini"-->
<!--@click="handleAdd"-->
<!--v-hasPermi="['supervise:report:add']"-->
<!--&gt;新增</el-button>-->
<!--</el-col>-->
<!--<el-col :span="1.5">-->
<!--<el-button-->
<!--type="success"-->
<!--plain-->
<!--icon="el-icon-edit"-->
<!--size="mini"-->
<!--:disabled="single"-->
<!--@click="handleUpdate"-->
<!--v-hasPermi="['supervise:report:edit']"-->
<!--&gt;修改</el-button>-->
<!--</el-col>-->
<!--<el-col :span="1.5">-->
<!--<el-button-->
<!--type="danger"-->
<!--plain-->
<!--icon="el-icon-delete"-->
<!--size="mini"-->
<!--:disabled="multiple"-->
<!--@click="handleDelete"-->
<!--v-hasPermi="['supervise:report:remove']"-->
<!--&gt;删除</el-button>-->
<!--</el-col>-->
<!--<el-col :span="1.5">-->
<!--<el-button-->
<!--type="warning"-->
<!--plain-->
<!--icon="el-icon-download"-->
<!--size="mini"-->
<!--:loading="exportLoading"-->
<!--@click="handleExport"-->
<!--v-hasPermi="['supervise:report:export']"-->
<!--&gt;导出</el-button>-->
<!--</el-col>-->
<!--<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>-->
<!--</el-row>-->
<el-table v-loading="loading" :data="reportList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="企业名称" align="center" prop="enterpriseName" />
<el-table-column label="安检年度" align="center" prop="annual" />
<!--<el-table-column label="外部编码" align="center" prop="securityCode" />-->
<el-table-column label="居住区" align="center" prop="villageName" />
<el-table-column label="安检户数" align="center" prop="doneNum" />
<el-table-column label="到访不遇户数" align="center" prop="noneNum" />
<el-table-column label="拒绝安检户数" align="center" prop="rejNum" />
<el-table-column label="最后上报时间" align="center" prop="lastTime" />
<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="handleUpdate(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" :visible.sync="open" width="1200px" append-to-body>
<reportDetail />
<!--<el-form ref="form" :model="form" :rules="rules" label-width="80px">-->
<!--<el-form-item label="年度" prop="annual">-->
<!--<el-input v-model="form.annual" placeholder="请输入年度" />-->
<!--</el-form-item>-->
<!--<el-form-item label="安检记录编码,11 位企业编码+4 位年+6 位顺" prop="securityCodeIn">-->
<!--<el-input v-model="form.securityCodeIn" placeholder="请输入安检记录编码,11 位企业编码+4 位年+6 位顺" />-->
<!--</el-form-item>-->
<!--<el-form-item label="外部安检记录编码" prop="securityCode">-->
<!--<el-input v-model="form.securityCode" placeholder="请输入外部安检记录编码" />-->
<!--</el-form-item>-->
<!--<el-form-item label="用户编码" prop="userNo">-->
<!--<el-input v-model="form.userNo" placeholder="请输入用户编码" />-->
<!--</el-form-item>-->
<!--<el-form-item label="用户姓名" prop="userName">-->
<!--<el-input v-model="form.userName" placeholder="请输入用户姓名" />-->
<!--</el-form-item>-->
<!--<el-form-item label="入户时间" prop="indoorTime">-->
<!--<el-input v-model="form.indoorTime" placeholder="请输入入户时间" />-->
<!--</el-form-item>-->
<!--<el-form-item label="入户状态,DONE-已入户,REJ-入户拒绝,NONE-到访不遇">-->
<!--<el-radio-group v-model="form.indoorStatus">-->
<!--<el-radio label="1">请选择字典生成</el-radio>-->
<!--</el-radio-group>-->
<!--</el-form-item>-->
<!--<el-form-item label="市区名称" prop="region">-->
<!--<el-input v-model="form.region" placeholder="请输入市区名称" />-->
<!--</el-form-item>-->
<!--<el-form-item label="居住区id" prop="village">-->
<!--<el-input v-model="form.village" placeholder="请输入居住区id" />-->
<!--</el-form-item>-->
<!--<el-form-item label="小区+门牌号" prop="houseNumber">-->
<!--<el-input v-model="form.houseNumber" placeholder="请输入小区+门牌号" />-->
<!--</el-form-item>-->
<!--<el-form-item label="手机号" prop="phoneNumber">-->
<!--<el-input v-model="form.phoneNumber" placeholder="请输入手机号" />-->
<!--</el-form-item>-->
<!--<el-form-item label="所属组织编码/统一社会信用代码" prop="deptCode">-->
<!--<el-input v-model="form.deptCode" placeholder="请输入所属组织编码/统一社会信用代码" />-->
<!--</el-form-item>-->
<!--<el-form-item label="企业id" prop="companyInfoId">-->
<!--<el-input v-model="form.companyInfoId" placeholder="请输入企业id" />-->
<!--</el-form-item>-->
<!--<el-form-item label="第三方用户id" prop="userOwnId">-->
<!--<el-input v-model="form.userOwnId" placeholder="请输入第三方用户id" />-->
<!--</el-form-item>-->
<!--</el-form>-->
<!--<div slot="footer" class="dialog-footer">-->
<!--<el-button type="primary" @click="submitForm">确 定</el-button>-->
<!--<el-button @click="cancel">取 消</el-button>-->
<!--</div>-->
</el-dialog>
</div>
</template>
<script>
import {summarylist, listReport, getReport, delReport, addReport, updateReport, exportReport } from "@/api/supervise/report";
import reportDetail from './detaillist/index.vue';
import {enterpriseList } from "@/api/system/planInfo";
export default {
name: "Report",
components: {
reportDetail
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 入户安检结果表格数据
reportList: [],
enterpriseList:[],
// 弹出层标题
title: "入户安检详情",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
annual: null,
userName: null,
companyInfoId: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
}
};
},
created() {
this.getList();
//公司列表
enterpriseList(this.queryParams).then(response => {
this.enterpriseList = response.data;
});
},
methods: {
/** 查询入户安检结果列表 */
getList() {
this.loading = true;
summarylist(this.queryParams).then(response => {
this.reportList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
reportId: null,
annual: null,
securityCodeIn: null,
securityCode: null,
userNo: null,
userName: null,
indoorTime: null,
indoorStatus: "0",
region: null,
village: null,
houseNumber: null,
phoneNumber: null,
deptCode: null,
companyInfoId: null,
createTime: null,
userOwnId: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.reportId)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加入户安检结果";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.open = true;
// this.reset();
// const reportId = row.reportId || this.ids
// getReport(reportId).then(response => {
// this.form = response.data;
// this.open = true;
// this.title = "修改入户安检结果";
// });
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.reportId != null) {
updateReport(this.form).then(response => {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addReport(this.form).then(response => {
this.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const reportIds = row.reportId || this.ids;
this.$confirm('是否确认删除入户安检结果编号为"' + reportIds + '"的数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(function() {
return delReport(reportIds);
}).then(() => {
this.getList();
this.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm('是否确认导出所有入户安检结果数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.exportLoading = true;
return exportReport(queryParams);
}).then(response => {
this.download(response.msg);
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户" prop="userId">
<el-input
v-model="queryParams.nickName"
placeholder="请输入用户"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户类型" prop="userType">
<el-select v-model="queryParams.userType" placeholder="请选择用户类型" clearable size="small">
<el-option
v-for="dict in userTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
<!--<el-form-item label="开始时间" prop="conStartTime">-->
<!--<el-date-picker clearable size="small"-->
<!--v-model="queryParams.conStartTime"-->
<!--type="date"-->
<!--value-format="yyyy-MM-dd"-->
<!--placeholder="选择开始时间">-->
<!--</el-date-picker>-->
<!--</el-form-item>-->
<!--<el-form-item label="结束时间" prop="conEndTime">-->
<!--<el-date-picker clearable size="small"-->
<!--v-model="queryParams.conEndTime"-->
<!--type="date"-->
<!--value-format="yyyy-MM-dd"-->
<!--placeholder="选择结束时间">-->
<!--</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
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['supervise:specialuser:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['supervise:specialuser:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['supervise:specialuser:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
:loading="exportLoading"
@click="handleExport"
v-hasPermi="['supervise:specialuser:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="specialuserList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="用户名称" align="center" prop="nickName" />
<el-table-column label="联系方式" align="center" prop="phone" />
<el-table-column label="用户类型" align="center" prop="userType" :formatter="userTypeFormat" />
<el-table-column label="地址" align="center" prop="address" />
<el-table-column label="管控方案" align="center" prop="controlPlan" />
<el-table-column label="开始时间" align="center" prop="conStartTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.conStartTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="结束时间" align="center" prop="conEndTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.conEndTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="remark" />
<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="handleUpdate(scope.row)"
v-hasPermi="['supervise:specialuser:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['supervise:specialuser:remove']"
>删除</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" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户" prop="userId">
<!--<el-input v-model="form.userId" placeholder="请输入用户" />-->
<el-select v-model="form.userId"
filterable
remote
reserve-keyword
placeholder="请输名称/手机号搜索"
:remote-method="remoteMethod"
:loading="loading"
clearable
size="small">
<el-option
v-for="item in userList"
:key="item.userId"
:label="item.nickName+(item.phone==null?'':'('+item.phone+')')"
:value="item.userId">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="用户类型" prop="userType">
<el-select v-model="form.userType" placeholder="请选择用户类型">
<el-option
v-for="dict in userTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="管控方案" prop="controlPlan">
<el-input v-model="form.controlPlan" type="textarea" placeholder="请输入内容" />
</el-form-item>
<el-form-item label="开始时间" prop="conStartTime">
<el-date-picker clearable size="small"
v-model="form.conStartTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择开始时间">
</el-date-picker>
</el-form-item>
<el-form-item label="结束时间" prop="conEndTime">
<el-date-picker clearable size="small"
v-model="form.conEndTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择结束时间">
</el-date-picker>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listSpecialuser, getSpecialuser, delSpecialuser, addSpecialuser, updateSpecialuser, exportSpecialuser } from "@/api/supervise/specialuser";
import { listUser} from "@/api/regulation/user";
export default {
name: "Specialuser",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 特殊用户管控表格数据
specialuserList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
userList:[],
// 用户类型字典
userTypeOptions: [],
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
specialId: null,
userId: null,
userType: null,
conStartTime: null,
conEndTime: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
userId: [
{ required: true, message: "用户不能为空", trigger: "blur" }
],
userType: [
{ required: true, message: "用户类型不能为空", trigger: "change" }
],
controlPlan: [
{ required: true, message: "管控方案不能为空", trigger: "blur" }
],
conStartTime: [
{ required: true, message: "开始时间不能为空", trigger: "blur" }
],
conEndTime: [
{ required: true, message: "结束时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
this.getDicts("t_special_user").then(response => {
this.userTypeOptions = response.data;
});
},
methods: {
//用户
remoteMethod(query){
listUser({pageNum: 1,pageSize: 100,nickName:query}).then(response => {
this.userList = response.rows;
});
},
/** 查询特殊用户管控列表 */
getList() {
this.loading = true;
listSpecialuser(this.queryParams).then(response => {
this.specialuserList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 用户类型字典翻译
userTypeFormat(row, column) {
return this.selectDictLabel(this.userTypeOptions, row.userType);
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
specialId: null,
userId: null,
userType: null,
controlPlan: null,
conStartTime: null,
conEndTime: null,
createTime: null,
updateTime: null,
remark: null,
userOwnId: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.specialId)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加特殊用户管控";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.remoteMethod(row.nickName)
this.reset();
const specialId = row.specialId || this.ids
getSpecialuser(specialId).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改特殊用户管控";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.specialId != null) {
updateSpecialuser(this.form).then(response => {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addSpecialuser(this.form).then(response => {
this.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const specialIds = row.specialId || this.ids;
this.$confirm('是否确认删除特殊用户管控编号为"' + specialIds + '"的数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(function() {
return delSpecialuser(specialIds);
}).then(() => {
this.getList();
this.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm('是否确认导出所有特殊用户管控数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.exportLoading = true;
return exportSpecialuser(queryParams);
}).then(response => {
this.download(response.msg);
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>
<style scoped lang="scss">
::v-deep .el-select{
width: 100%;
}
::v-deep .el-date-editor{
width: 100%;
}
</style>
......@@ -34,11 +34,11 @@ module.exports = {
proxy: {
// detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: {
// target: `http://localhost:8905/gassafety`,
target: `http://36.138.180.82:8905/gassafety`,
target: `http://localhost:8905/gassafety`,
//target: `http://36.138.180.82:8905/gassafety`,
// target: `http://36.138.180.82:8905/gassafety`,
// 服务器
// target: `http://36.138.180.82:8079//gassafety`,
//target: `http://36.138.180.82:8079//gassafety`,
changeOrigin: true,
pathRewrite: {
["^" + process.env.VUE_APP_BASE_API]: "",
......
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