Commit b7ffd2d5 authored by chenzhao's avatar chenzhao

修改 巡检bug

parent 1b534637
package com.yeejoin.amos.boot.module.common.api.excel;
import com.alibaba.excel.write.handler.SheetWriteHandler;
import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
import lombok.AllArgsConstructor;
import lombok.Data;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddressList;
import org.apache.poi.xssf.usermodel.XSSFDataValidation;
import java.util.Date;
import java.util.Map;
import java.util.Random;
/**
* @program: mypro
* @description: todo
* @create: 2022-07-22 13:36
**/
@Data
@AllArgsConstructor
public class SelectedSheetWriteHandler implements SheetWriteHandler {
private final Map<Integer, ExcelSelectedResolve> selectedMap;
@Override
public void beforeSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
}
@Override
public void afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
// 这里可以对cell进行任何操作
Sheet sheet = writeSheetHolder.getSheet();
DataValidationHelper helper = sheet.getDataValidationHelper();
String hiddenName = "hidden"+System.currentTimeMillis();
//1.创建一个隐藏的sheet 名称为 hidden
Workbook workbook = writeWorkbookHolder.getWorkbook();
Random random = new Random();
Sheet hidden = workbook.createSheet(hiddenName);
// workbook.setSheetOrder(hiddenName,7);
Name category1Name = workbook.createName();
category1Name.setNameName(hiddenName);
selectedMap.forEach((k, v) -> {
//下拉框的起始行,结束行,起始列,结束列
CellRangeAddressList rangeList = new CellRangeAddressList(1, 65536, k, k);
//获取excel列名
String excelLine = getExcelLine(k);
//2.循环赋值
String[] values = v.getSource();
for (int i = 0, length = values.length; i < length; i++) {
// 3:表示你开始的行数 3表示 你开始的列数
Row row = hidden.getRow(i);
if (row == null) {
row = hidden.createRow(i);
}
row.createCell(k).setCellValue(values[i]);
}
//4. =hidden!$H:$1:$H$50 sheet为hidden的 H1列开始H50行数据获取下拉数组
String refers = "=" + hiddenName + "!$" + excelLine +
"$1:$" + excelLine + "$" + (values.length);
//5 将刚才设置的sheet引用到你的下拉列表中
DataValidationConstraint constraint = helper.createFormulaListConstraint(refers);
DataValidation dataValidation = helper.createValidation(constraint, rangeList);
hidden.addValidationData(dataValidation);
});
int hiddenIndex = workbook.getSheetIndex(hidden);
if (!workbook.isSheetHidden(hiddenIndex)) {
workbook.setSheetHidden(hiddenIndex, true);
}
}
/* // 设置下拉列表的行: 首行,末行,首列,末列
CellRangeAddressList rangeList = new CellRangeAddressList(1, 65536, k, k);
if (v.getSource().length > 0){
// 设置下拉列表的值
DataValidationConstraint constraint = helper.createExplicitListConstraint(v.getSource());
// 设置约束
DataValidation validation = helper.createValidation(constraint, rangeList);
// 阻止输入非下拉选项的值
validation.setErrorStyle(DataValidation.ErrorStyle.STOP);
validation.setShowErrorBox(true);
validation.setSuppressDropDownArrow(true);
validation.createErrorBox("提示", "请输入下拉选项中的内容");
sheet.addValidationData(validation);*/
/* //定义sheet的名称
//1.创建一个隐藏的sheet 名称为 hidden + k+随机数防止数据过多造成的名字重复
Random random = new Random();
String sheetName = "hidden"+k+random.nextInt(1000);
Workbook workbook = writeWorkbookHolder.getWorkbook();
Sheet hiddenSheet = workbook.createSheet(sheetName);
for (int i = 0, length = v.getSource().length; i < length; i++) {
// 开始的行数i,列数k
hiddenSheet.createRow(i).createCell(k).setCellValue(v.getSource()[i]);
}
Name category1Name = workbook.createName();
category1Name.setNameName(sheetName);
String excelLine = getExcelLine(k);
// =hidden!$H:$1:$H$50 sheet为hidden的 H1列开始H50行数据获取下拉数组
String refers = "=" + sheetName + "!$" + excelLine + "$1:$" + excelLine + "$" + (v.getSource().length + 1);
// 将刚才设置的sheet引用到你的下拉列表中
DataValidationConstraint constraint = helper.createFormulaListConstraint(refers);
DataValidation dataValidation = helper.createValidation(constraint, rangeList);
if(dataValidation instanceof XSSFDataValidation){
dataValidation.setSuppressDropDownArrow(true);
dataValidation.setShowErrorBox(true);
}else{
dataValidation.setSuppressDropDownArrow(false);
}
sheet.addValidationData(dataValidation);
// 设置存储下拉列值得sheet为隐藏
int hiddenIndex = workbook.getSheetIndex(sheetName);
if (!workbook.isSheetHidden(hiddenIndex)) {
workbook.setSheetHidden(hiddenIndex, true);
}
}
});
}*/
/**
* 返回excel列标A-Z-AA-ZZ
*
* @param num 列数
* @return java.lang.String
*/
private String getExcelLine(int num) {
String line = "";
int first = num / 26;
int second = num % 26;
if (first > 0) {
line = (char) ('A' + first - 1) + "";
}
line += (char) ('A' + second) + "";
return line;
}
}
...@@ -497,6 +497,22 @@ public class OrgPersonController extends BaseController { ...@@ -497,6 +497,22 @@ public class OrgPersonController extends BaseController {
return ResponseHelper.buildResponse(iOrgUsrService.personListByBizOrgCode( requestBody.containsKey("bizOrgCode") ? requestBody.get("bizOrgCode").toString() : null)); return ResponseHelper.buildResponse(iOrgUsrService.personListByBizOrgCode( requestBody.containsKey("bizOrgCode") ? requestBody.get("bizOrgCode").toString() : null));
} }
/**
* 根据bizOrgCode查询
* @param
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PersonIdentify
@RequestMapping(value = "/getByCurrent/list", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "查询当前单位或部门自己的人员列表 非父子级", notes = "根据bizOrgCode查询")
public ResponseModel<List<OrgUsr>> personListByCurrent() {
ReginParams reginParams = getSelectedOrgInfo();
return ResponseHelper.buildResponse(iOrgUsrService.personListByBizOrgCode( reginParams.getPersonIdentity().getCompanyBizOrgCode()));
}
/** /**
* 根据bizOrgCode查询 * 根据bizOrgCode查询
* @param bizOrgCode * @param bizOrgCode
......
...@@ -3374,7 +3374,7 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp ...@@ -3374,7 +3374,7 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
public List<OrgUsr> personListByBizOrgCode(String bizOrgCode){ public List<OrgUsr> personListByBizOrgCode(String bizOrgCode){
QueryWrapper<OrgUsr> wrapper = new QueryWrapper<>(); QueryWrapper<OrgUsr> wrapper = new QueryWrapper<>();
wrapper.eq("is_delete",false); wrapper.eq("is_delete",false);
wrapper.eq("biz_org_code",bizOrgCode); wrapper.like("biz_org_code",bizOrgCode);
wrapper.eq("biz_org_type","PERSON"); wrapper.eq("biz_org_type","PERSON");
return baseMapper.selectList(wrapper); return baseMapper.selectList(wrapper);
} }
......
package com.yeejoin.equipmanage.dto; package com.yeejoin.equipmanage.dto;
import cn.afterturn.easypoi.excel.annotation.Excel; import cn.afterturn.easypoi.excel.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date; import java.util.Date;
...@@ -59,9 +61,16 @@ public class EquipDataDto { ...@@ -59,9 +61,16 @@ public class EquipDataDto {
// //@Excel(name = "品牌", width = 30, orderNum = "4") // //@Excel(name = "品牌", width = 30, orderNum = "4")
// private BigDecimal maintenanceCycle ; // private BigDecimal maintenanceCycle ;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
@com.alibaba.excel.annotation.format.DateTimeFormat("yyyy-MM-dd")
@Excel(name = "生产日期", width = 30, orderNum = "12") @Excel(name = "生产日期", width = 30, orderNum = "12")
private Date productionDate; private Date productionDate;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
@com.alibaba.excel.annotation.format.DateTimeFormat("yyyy-MM-dd")
@Excel(name = "投运日期", width = 30, orderNum = "13") @Excel(name = "投运日期", width = 30, orderNum = "13")
//@Excel(name = "品牌", width = 30, orderNum = "4") //@Excel(name = "品牌", width = 30, orderNum = "4")
private Date deliveryDate; private Date deliveryDate;
......
...@@ -392,7 +392,7 @@ public class DataSourcesImpl implements DataSources { ...@@ -392,7 +392,7 @@ public class DataSourcesImpl implements DataSources {
ReginParams reginParams = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class); ReginParams reginParams = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
// 权限处理 // 权限处理
PermissionInterceptorContext.setDataAuthRule(FIRE_WATER_INFO); PermissionInterceptorContext.setDataAuthRule(FIRE_WATER_INFO);
List<OrgMenuDto> orgUsrTree = iOrgUsrService.companyTreeByUserAndType(reginParams, OrgPersonEnum.公司.getKey(), null); List<OrgMenuDto> orgUsrTree = iOrgUsrService.companyTreeByUserAndType(reginParams, null, null);
List<String> stringList = new ArrayList<String>(); List<String> stringList = new ArrayList<String>();
initCompanyList(orgUsrTree, stringList); initCompanyList(orgUsrTree, stringList);
String[] str = stringList.toArray(new String[stringList.size()]); String[] str = stringList.toArray(new String[stringList.size()]);
......
...@@ -199,7 +199,7 @@ public class PlanController extends AbstractBaseController { ...@@ -199,7 +199,7 @@ public class PlanController extends AbstractBaseController {
@ApiOperation(value = "删除巡检计划", notes = "删除巡检计划") @ApiOperation(value = "删除巡检计划", notes = "删除巡检计划")
@RequestMapping(value = "/deletePlanById", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) @RequestMapping(value = "/deletePlanById", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse deletePlanById( public CommonResponse deletePlanById(
@ApiParam(value = "巡检计划ID", required = true) @RequestParam Integer[] param) { @ApiParam(value = "巡检计划ID", required = true) @RequestParam Long[] param) {
try { try {
planService.delPlanById(param); planService.delPlanById(param);
return CommonResponseUtil.success(); return CommonResponseUtil.success();
...@@ -219,7 +219,7 @@ public class PlanController extends AbstractBaseController { ...@@ -219,7 +219,7 @@ public class PlanController extends AbstractBaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "另存巡检计划", notes = "另存巡检计划") @ApiOperation(value = "另存巡检计划", notes = "另存巡检计划")
@RequestMapping(value = "/saveAs", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) @RequestMapping(value = "/saveAs", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse planSaveAs(@ApiParam(value = "参数", required = true) @RequestParam Integer[] param) { public CommonResponse planSaveAs(@ApiParam(value = "参数", required = true) @RequestParam Long[] param) {
try { try {
planService.planSaveAs(param); planService.planSaveAs(param);
return CommonResponseUtil.success(); return CommonResponseUtil.success();
......
...@@ -820,7 +820,7 @@ public class PointController extends AbstractBaseController { ...@@ -820,7 +820,7 @@ public class PointController extends AbstractBaseController {
return CommonResponseUtil.success(); return CommonResponseUtil.success();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return CommonResponseUtil.failure("导入失败"); return CommonResponseUtil.failure(e.getLocalizedMessage());
} }
} }
...@@ -1471,7 +1471,9 @@ public class PointController extends AbstractBaseController { ...@@ -1471,7 +1471,9 @@ public class PointController extends AbstractBaseController {
@ApiParam(value = "巡检点ID") @RequestParam(value = "pointId") Long pointId, @ApiParam(value = "巡检点ID") @RequestParam(value = "pointId") Long pointId,
@ApiParam(value = "设备ID") @RequestParam(value = "classifyId") Long classifyId, @ApiParam(value = "设备ID") @RequestParam(value = "classifyId") Long classifyId,
@ApiParam(value = "路线ID") @RequestParam(value = "routeId") Long routeId) { @ApiParam(value = "路线ID") @RequestParam(value = "routeId") Long routeId) {
return CommonResponseUtil.success(iPointService.queryItemList4RoutePointNew(routeId,pointId, classifyId)); List list = iPointService.queryItemList4RoutePointNew(routeId, pointId, classifyId);
Object ob=list!=null?ToJson.tojson(list):null;
return CommonResponseUtil.success(ob);
} }
/** /**
......
...@@ -10,6 +10,7 @@ import com.yeejoin.amos.patrol.business.service.intfc.IPlanService; ...@@ -10,6 +10,7 @@ import com.yeejoin.amos.patrol.business.service.intfc.IPlanService;
import com.yeejoin.amos.patrol.core.util.DateUtil; import com.yeejoin.amos.patrol.core.util.DateUtil;
import com.yeejoin.amos.patrol.core.util.StringUtil; import com.yeejoin.amos.patrol.core.util.StringUtil;
import com.yeejoin.amos.patrol.dao.entity.Plan; import com.yeejoin.amos.patrol.dao.entity.Plan;
import liquibase.pro.packaged.L;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -88,7 +89,7 @@ public class PlanServiceImpl implements IPlanService { ...@@ -88,7 +89,7 @@ public class PlanServiceImpl implements IPlanService {
@Override @Override
@Transactional @Transactional
public void delPlanById(Integer[] param) { public void delPlanById(Long[] param) {
List<Long> ids = new ArrayList<Long>(); List<Long> ids = new ArrayList<Long>();
for(int i=0;i<param.length;i++){ for(int i=0;i<param.length;i++){
ids.add(Long.parseLong(param[i].toString())); ids.add(Long.parseLong(param[i].toString()));
...@@ -112,7 +113,7 @@ public class PlanServiceImpl implements IPlanService { ...@@ -112,7 +113,7 @@ public class PlanServiceImpl implements IPlanService {
} }
@Override @Override
public void planSaveAs(Integer[] param) { public void planSaveAs(Long[] param) {
for(int i=0;i<param.length;i++){ for(int i=0;i<param.length;i++){
planMapper.saveAs(param[i].toString()); planMapper.saveAs(param[i].toString());
} }
......
...@@ -25,12 +25,12 @@ public interface IPlanService { ...@@ -25,12 +25,12 @@ public interface IPlanService {
/** /**
* 巡检计划删除 * 巡检计划删除
*/ */
void delPlanById(Integer[] param); void delPlanById(Long[] param);
/** /**
* 巡检计划另存 * 巡检计划另存
*/ */
void planSaveAs(Integer[] param); void planSaveAs(Long[] param);
/** /**
* 巡检路线查询 * 巡检路线查询
*/ */
......
...@@ -13,6 +13,7 @@ public class CheckInfoVo { ...@@ -13,6 +13,7 @@ public class CheckInfoVo {
private String pointNo; private String pointNo;
private String userId; private String userId;
private String depId; private String depId;
private String address;
@Excel(name = "执行人员", orderNum = "2") @Excel(name = "执行人员", orderNum = "2")
private String userName; private String userName;
@Excel(name = "执行部门", orderNum = "3") @Excel(name = "执行部门", orderNum = "3")
...@@ -140,6 +141,15 @@ public class CheckInfoVo { ...@@ -140,6 +141,15 @@ public class CheckInfoVo {
public String getCheckMode() { public String getCheckMode() {
return checkMode; return checkMode;
} }
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public void setCheckMode(String checkMode) { public void setCheckMode(String checkMode) {
this.checkMode = checkMode; this.checkMode = checkMode;
} }
......
...@@ -1193,9 +1193,9 @@ ...@@ -1193,9 +1193,9 @@
LEFT JOIN p_plan_task_detail pptd ON pptd.task_no = ppk.id LEFT JOIN p_plan_task_detail pptd ON pptd.task_no = ppk.id
LEFT JOIN p_route pr ON pr.id = ppk.route_id LEFT JOIN p_route pr ON pr.id = ppk.route_id
<where> <where>
<if test="param.beginTime != null and param.beginTime != '' "> ppk.begin_time <![CDATA[>=]]> #{param.beginTime} </if> <if test="param.beginDate != null and param.beginDate != '' "> ppk.begin_time <![CDATA[>=]]> #{param.beginDate} </if>
<if test="param.endTime != null and param.endTime != ''"> and ppk.end_time <![CDATA[<=]]> #{param.endTime} </if> <if test="param.endDate != null and param.endDate != ''"> and ppk.end_time <![CDATA[<=]]> #{param.endDate} </if>
<if test="param.taskName != null and param.taskName != ''"> and pp.name like concat(concat("%", #{param.taskName}), "%") </if> <if test="param.taskName != null and param.taskName != ''"> and pp.name like concat('%',#{param.taskName},'%') </if>
<if test="param.status != null"> and pptd.STATUS = #{param.status} </if> <if test="param.status != null"> and pptd.STATUS = #{param.status} </if>
<if test="param.routeId != null"> and ppk.route_id = #{param.routeId} </if> <if test="param.routeId != null"> and ppk.route_id = #{param.routeId} </if>
</where> </where>
......
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