Commit ed2fee74 authored by tangwei's avatar tangwei

Merge branch 'developer' of http://172.16.10.76/moa/amos-boot-biz into developer

parents 666ddb63 ea73776a
...@@ -66,4 +66,6 @@ public class ContractDto extends BaseDto { ...@@ -66,4 +66,6 @@ public class ContractDto extends BaseDto {
@ApiModelProperty(value = "服务内容") @ApiModelProperty(value = "服务内容")
private String serviceContent; private String serviceContent;
@ApiModelProperty(value = "合同附件")
private String contractAttachment;
} }
...@@ -25,8 +25,8 @@ public class LinkageUnitDto extends BaseDto { ...@@ -25,8 +25,8 @@ public class LinkageUnitDto extends BaseDto {
@ApiModelProperty(value = "单位名称") @ApiModelProperty(value = "单位名称")
private String unitName; private String unitName;
@ApiModelProperty(value = "单位id") @ApiModelProperty(value = "单位code")
private String unitId; private String unitCode;
@ApiModelProperty(value = "父级单位id") @ApiModelProperty(value = "父级单位id")
private String parentId; private String parentId;
......
package com.yeejoin.amos.boot.module.common.api.dto;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import com.yeejoin.amos.boot.module.common.api.excel.ExplicitConstraint;
import com.yeejoin.amos.boot.module.common.api.excel.RoleNameExplicitConstraint;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
* @author system_generator
* @date 2021-06-29
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "WaterResourceTypeDto", description = "水资源")
public class WaterResourceTypeDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "资源类型(消火栓:hydrant、消防水鹤:crane、天然水源:natural、消防水池:pool)")
private String resourceType;
@ApiModelProperty(value = "资源类型名称(消火栓、消防水鹤、天然水源、消防水池)")
private String resourceTypeName;
@ApiModelProperty(value = "所属消防系统id")
private Long belongFightingSystemId;
@ApiModelProperty(value = "所属消防系统")
private String belongFightingSystem;
}
...@@ -29,10 +29,10 @@ public class LinkageUnit extends BaseEntity { ...@@ -29,10 +29,10 @@ public class LinkageUnit extends BaseEntity {
private String unitName; private String unitName;
/** /**
* 单位id * 单位code
*/ */
@TableField("unit_id") @TableField("unit_code")
private String unitId; private String unitCode;
/** /**
* 父级单位id * 父级单位id
......
package com.yeejoin.amos.boot.module.common.api.mapper; package com.yeejoin.amos.boot.module.common.api.mapper;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto;
import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany; import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* 维保单位 Mapper 接口 * 维保单位 Mapper 接口
...@@ -10,5 +15,19 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -10,5 +15,19 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @date 2021-07-16 * @date 2021-07-16
*/ */
public interface MaintenanceCompanyMapper extends BaseMapper<MaintenanceCompany> { public interface MaintenanceCompanyMapper extends BaseMapper<MaintenanceCompany> {
/**
* 查询机场单位信息 (不带分页)
* @param seq
* @return
*/
public List<OrgUsrDto> selectOrgUsrList (@Param("seq") Long seq);
/**
* 查询机场单位信息 (带分页)
* @param pageNum
* @param pageSize
* @param seq
* @return
*/
public List<OrgUsrDto> selectOrgUsrPageList (@Param("pageNum")int pageNum,@Param("pageSize")int pageSize,@Param("seq") Long seq);
} }
...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.biz.common.utils.MenuFrom; import com.yeejoin.amos.boot.biz.common.utils.MenuFrom;
import com.yeejoin.amos.boot.module.common.api.dto.RequestData; import com.yeejoin.amos.boot.module.common.api.dto.RequestData;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto; import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceTypeDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceZhDto; import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceZhDto;
import com.yeejoin.amos.boot.module.common.api.entity.WaterResource; import com.yeejoin.amos.boot.module.common.api.entity.WaterResource;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -35,5 +36,5 @@ public interface WaterResourceMapper extends BaseMapper<WaterResource> { ...@@ -35,5 +36,5 @@ public interface WaterResourceMapper extends BaseMapper<WaterResource> {
Integer getWaterResourceListCount(@Param("par")RequestData par); Integer getWaterResourceListCount(@Param("par")RequestData par);
List<WaterResourceDto> getWaterResourceTypeList(); List<WaterResourceTypeDto> getWaterResourceTypeList(Boolean isDelete);
} }
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.common.api.mapper.MaintenanceCompanyMapper"> <mapper namespace="com.yeejoin.amos.boot.module.common.api.mapper.MaintenanceCompanyMapper">
<select id="selectOrgUsrList" resultType="com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto">
SELECT DISTINCT
sequence_nbr,
biz_org_name,
biz_org_code,
amos_org_id,
amos_org_code,
biz_org_type,
build_name,
build_id,
parent_id
FROM
cb_org_usr
WHERE
sequence_nbr IN ( SELECT DISTINCT signed_company_id FROM cb_contract WHERE company_id = 1 )
AND biz_org_type = "COMPANY"
AND is_delete = 0
</select>
<select id="selectOrgUsrPageList" resultType="com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto">
SELECT DISTINCT
sequence_nbr,
biz_org_name,
biz_org_code,
amos_org_id,
amos_org_code,
biz_org_type,
build_name,
build_id,
parent_id
FROM
cb_org_usr
WHERE
sequence_nbr IN ( SELECT DISTINCT signed_company_id FROM cb_contract WHERE company_id = 1 )
AND biz_org_type = "COMPANY"
AND is_delete = 0
limit #{pageNum},#{pageSize}
</select>
</mapper> </mapper>
...@@ -101,9 +101,19 @@ ...@@ -101,9 +101,19 @@
#{par.distance} #{par.distance}
</if> </if>
</select> </select>
<select id="getWaterResourceTypeList" resultType="com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto"> <select id="getWaterResourceTypeList" resultType="com.yeejoin.amos.boot.module.common.api.dto.WaterResourceTypeDto">
select distinct belong_fighting_system_id, belong_fighting_system, resource_type, resource_type_name select distinct (case
when ISNULL(belong_fighting_system_id) = 0 and LENGTH(trim(belong_fighting_system_id)) > 0
then belong_fighting_system_id
else -1 end) belong_fighting_system_id,
(case
when ISNULL(belong_fighting_system) = 0 and LENGTH(trim(belong_fighting_system)) > 0
then belong_fighting_system
else '其他' end) belong_fighting_system,
resource_type,
resource_type_name
from cb_water_resource from cb_water_resource
where is_delete = #{isDelete}
</select> </select>
......
package com.yeejoin.amos.boot.module.common.biz.controller; package com.yeejoin.amos.boot.module.common.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.Date;
import java.util.List; import java.util.List;
import com.yeejoin.amos.boot.module.common.biz.service.impl.ContractServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.ContractServiceImpl;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.ContractDto; import com.yeejoin.amos.boot.module.common.api.dto.ContractDto;
...@@ -37,80 +44,84 @@ public class ContractController extends BaseController { ...@@ -37,80 +44,84 @@ public class ContractController extends BaseController {
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save") @PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增维保合同", notes = "新增维保合同") @ApiOperation(httpMethod = "POST", value = "新增维保合同", notes = "新增维保合同")
public ResponseModel<ContractDto> save(@RequestBody ContractDto model) { public ResponseModel<ContractDto> save(@RequestBody ContractDto model) throws Exception {
model = contractServiceImpl.createWithModel(model); model = contractServiceImpl.saveContractDto(RequestContext.getAgencyCode(), model);
return ResponseHelper.buildResponse(model); return ResponseHelper.buildResponse(model);
} }
/** /**
* 根据sequenceNbr更新 * 更新合同信息及附件
* *
* @param sequenceNbr 主键 * @param model
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}") @PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新维保合同", notes = "根据sequenceNbr更新维保合同") @ApiOperation(httpMethod = "PUT", value = "更新合同信息及附件", notes = "更新合同信息及附件")
public ResponseModel<ContractDto> updateBySequenceNbrContract(@RequestBody ContractDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) { public ResponseModel<ContractDto> updateBySequenceNbrContract(@RequestBody ContractDto model,
model.setSequenceNbr(sequenceNbr); @PathVariable(value = "sequenceNbr") Long sequenceNbr) throws Exception {
return ResponseHelper.buildResponse(contractServiceImpl.updateWithModel(model)); model.setSequenceNbr(sequenceNbr);
} return ResponseHelper.buildResponse(contractServiceImpl.updateAircraft(RequestContext.getAgencyCode(), model));
}
/** /**
* 根据sequenceNbr删除 * 删除合同信息 (无约束)
* *
* @param sequenceNbr 主键 * @param
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}") @DeleteMapping(value = "/batch")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除维保合同", notes = "根据sequenceNbr删除维保合同") @ApiOperation(httpMethod = "DELETE", value = "删除合同信息 (无约束)", notes = "删除合同信息 (无约束)")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){ public ResponseModel<List<Long>> deleteBySequenceNbr(@RequestParam(value = "ids") String ids) throws Exception {
return ResponseHelper.buildResponse(contractServiceImpl.removeById(sequenceNbr)); return ResponseHelper.buildResponse(contractServiceImpl.multDeleteAircraft(RequestContext.getAgencyCode(),
ids));
} }
/** /**
* 根据sequenceNbr查询 * 根据sequenceNbr查询
* *
* @param sequenceNbr 主键 * @param sequenceNbr 主键
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}") @GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个维保合同", notes = "根据sequenceNbr查询单个维保合同") @ApiOperation(httpMethod = "GET", value = "查询单个维保合同", notes = "查询单个维保合同")
public ResponseModel<ContractDto> selectOne(@PathVariable Long sequenceNbr) { public ResponseModel<ContractDto> selectOne(String agencyCode, @PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(contractServiceImpl.queryBySeq(sequenceNbr)); return ResponseHelper.buildResponse(contractServiceImpl.queryByAircraftSeq(RequestContext.getAgencyCode(),
} sequenceNbr));
}
/** /**
* 列表分页查询 * 列表分页查询
* *
* @param current 当前页 * @param current 当前页
* @param current 每页大小 * @param current 每页大小
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "维保合同分页查询", notes = "维保合同分页查询") @ApiOperation(httpMethod = "GET", value = "维保合同分页查询", notes = "维保合同分页查询")
public ResponseModel<Page<ContractDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam public ResponseModel<Page<ContractDto>> queryForPage(@RequestParam(value = "current") int current, @RequestParam
(value = "size") int size) { (value = "size") int size, Long companyId, String name, Long typeCode, Date signedDate) {
Page<ContractDto> page = new Page<ContractDto>(); Page<ContractDto> page = new Page<ContractDto>();
page.setCurrent(current); page.setCurrent(current);
page.setSize(size); page.setSize(size);
return ResponseHelper.buildResponse(contractServiceImpl.queryForContractPage(page)); return ResponseHelper.buildResponse(contractServiceImpl.queryForContractPage(page, false, companyId, name,
} typeCode, signedDate));
}
/** /**
* 列表全部数据查询 * 列表全部数据查询
* *
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "维保合同列表全部数据查询", notes = "维保合同列表全部数据查询") @ApiOperation(httpMethod = "GET", value = "维保合同列表全部数据查询", notes = "维保合同列表全部数据查询")
@GetMapping(value = "/list") @GetMapping(value = "/list")
public ResponseModel<List<ContractDto>> selectForList() { public ResponseModel<List<ContractDto>> selectForList() {
return ResponseHelper.buildResponse(contractServiceImpl.queryForContractList()); return ResponseHelper.buildResponse(contractServiceImpl.queryForContractList(false));
} }
} }
...@@ -23,6 +23,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel; ...@@ -23,6 +23,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
...@@ -120,4 +121,40 @@ public class MaintenanceCompanyController extends BaseController { ...@@ -120,4 +121,40 @@ public class MaintenanceCompanyController extends BaseController {
public ResponseModel<List<MaintenanceCompanyDto>> selectForList() { public ResponseModel<List<MaintenanceCompanyDto>> selectForList() {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryForMaintenanceCompanyList()); return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryForMaintenanceCompanyList());
} }
/**
* 根据维保单位查询所有机场单位(不带分页)
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "queryCompany/{sequenceNbr}")
@ApiOperation(httpMethod = "GET", value = "根据维保单位查询所有机场单位(不带分页)", notes = "根据维保单位查询所有机场单位(不带分页)")
public ResponseModel<List<Map<String, Object>>> seleteCompanys(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryOrgUsrMsg(sequenceNbr));
}
/**
* 根据维保单位查询所有机场单位(带分页)
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "queryCompanyPages/{sequenceNbr}")
@ApiOperation(httpMethod = "GET", value = "根据维保单位查询所有机场单位(带分页)", notes = "根据维保单位查询所有机场单位(带分页)")
public ResponseModel<List<Map<String, Object>>> seleteCompanyPages(@RequestParam(value = "pageNum")int pageNum,@RequestParam(value = "pageSize")int pageSize,@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryOrgUsrMsgPage(pageNum,pageSize,sequenceNbr));
}
/**
*
* 查询维保单位、业主单位信息
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "查询维保单位、业主单位信息", notes = "查询维保单位、业主单位信息")
@GetMapping(value = "/companyLlist")
public ResponseModel<List<Map<String,Object>>> selectCompanyList() {
return ResponseHelper.buildResponse(maintenanceCompanyServiceImpl.queryCompanyMsg());
}
} }
...@@ -342,8 +342,19 @@ public class WaterResourceController extends BaseController { ...@@ -342,8 +342,19 @@ public class WaterResourceController extends BaseController {
public ResponseModel<List<WaterResourceDto>> selectList(String name, Long sequenceNbr, public ResponseModel<List<WaterResourceDto>> selectList(String name, Long sequenceNbr,
Long belongFightingSystemId, Long belongBuildingId, Long belongFightingSystemId, Long belongBuildingId,
String belongBuilding, String resourceType) { String belongBuilding, String resourceType) {
return ResponseHelper.buildResponse(waterResourceServiceImpl.queryWaterResourceList(false, name, sequenceNbr, return ResponseHelper.buildResponse(waterResourceServiceImpl.queryWaterResourceList(true, name, sequenceNbr,
belongFightingSystemId, belongBuildingId, belongFightingSystemId, belongBuildingId,
belongBuilding, resourceType)); belongBuilding, resourceType));
} }
/**
* 查询水资源类型列表
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "查询水资源类型列表", notes = "查询水资源类型列表")
@GetMapping(value = "/resource_type_list")
public ResponseModel<List<WaterResourceTypeDto>> selectResourceTypeList() {
return ResponseHelper.buildResponse(waterResourceServiceImpl.getWaterResourceTypeList(true));
}
} }
...@@ -5,10 +5,25 @@ import com.yeejoin.amos.boot.module.common.api.dto.ContractDto; ...@@ -5,10 +5,25 @@ import com.yeejoin.amos.boot.module.common.api.dto.ContractDto;
import com.yeejoin.amos.boot.module.common.api.entity.Contract; import com.yeejoin.amos.boot.module.common.api.entity.Contract;
import com.yeejoin.amos.boot.module.common.api.mapper.ContractMapper; import com.yeejoin.amos.boot.module.common.api.mapper.ContractMapper;
import com.yeejoin.amos.boot.module.common.api.service.IContractService; import com.yeejoin.amos.boot.module.common.api.service.IContractService;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.FileInfoModel;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.exception.BaseException;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.StringUtil;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.annotation.Condition;
import org.typroject.tyboot.core.rdbms.annotation.Operator;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.DataNotFound;
import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
* 维保合同服务实现类 * 维保合同服务实现类
...@@ -21,14 +36,159 @@ public class ContractServiceImpl extends BaseService<ContractDto, Contract, Cont ...@@ -21,14 +36,159 @@ public class ContractServiceImpl extends BaseService<ContractDto, Contract, Cont
/** /**
* 分页查询 * 分页查询
*/ */
public Page<ContractDto> queryForContractPage(Page<ContractDto> page) { public Page<ContractDto> queryForContractPage(Page<ContractDto> page, Boolean isDelete,
return this.queryForPage(page, null, false); @Condition(Operator.eq) Long companyId,
@Condition(Operator.like) String name,
@Condition(Operator.eq) Long typeCode,
@Condition(Operator.likeLeft) Date signedDate) {
return this.queryForPage(page, null, false, isDelete, companyId, name, typeCode, signedDate);
} }
/** /**
* 列表查询 示例 * 列表查询 示例
*/ */
public List<ContractDto> queryForContractList() { public List<ContractDto> queryForContractList(Boolean isDelete) {
return this.queryForList("", false); return this.queryForList("rec_date", false, isDelete);
}
/**
* 保存附件信息
*
* @param agencyCode
* @param attachments
* @param contractDto
* @param fileCategory
* @return
* @throws Exception
*/
private List<FileInfoModel> buildFileInfo(String agencyCode, List<String> attachments,
ContractDto contractDto, String fileCategory) throws Exception {
List<FileInfoModel> fileInfoModelList = new ArrayList<>();
for (String attachment : attachments) {
FileInfoModel fileInfoModel = new FileInfoModel();
fileInfoModel.setEntityId(String.valueOf(contractDto.getSequenceNbr()));
fileInfoModel.setEntityType(Contract.class.getSimpleName());
fileInfoModel.setFileCategory(fileCategory);
fileInfoModel.setFilename(attachment);
fileInfoModel.setAgencyCode(agencyCode);
fileInfoModelList.add(fileInfoModel);
}
return fileInfoModelList;
}
/**
* 保存附件
*
* @param agencyCode
* @param contractDto
* @return
* @throws Exception
*/
private boolean saveAircraftFile(String agencyCode, ContractDto contractDto) throws Exception {
List<FileInfoModel> fileInfoModelList = new ArrayList<FileInfoModel>();
// 获取附件信息
if (!ValidationUtil.isEmpty(contractDto.getContractAttachment())) {
List<String> attachments = StringUtil.String2List(contractDto.getContractAttachment());
for (String attachment : attachments) {
String format = attachment.substring(attachment.lastIndexOf(".") + 1, attachment.length());
fileInfoModelList.addAll(buildFileInfo(agencyCode, attachments, contractDto, format));
}
}
// 保存附件
if (!ValidationUtil.isEmpty(fileInfoModelList)) {
Systemctl.fileInfoClient.batchCreateByEntity(fileInfoModelList);
}
return true;
}
/**
* 保存合同信息
*
* @param agencyCode
* @param contractDto
* @return
* @throws Exception
*/
public ContractDto saveContractDto(String agencyCode, ContractDto contractDto) throws Exception {
contractDto.setIsDelete(false);
// 保存合同基本信息
contractDto = this.createWithModel(contractDto);
// 保存附件信息
saveAircraftFile(agencyCode, contractDto);
return contractDto;
} }
}
\ No newline at end of file /**
* 更新合同信息及附件
*
* @param agencyCode
* @param model
* @return
* @throws Exception
*/
public ContractDto updateAircraft(String agencyCode, ContractDto model) throws Exception {
ContractDto oldModel = this.queryBySeq(model.getSequenceNbr());
if (ValidationUtil.isEmpty(oldModel)) {
throw new DataNotFound("找不到指定的合同信息.");
}
//删除附件信息
Systemctl.fileInfoClient.deleteByAlias(agencyCode, ContractDto.class.getSimpleName(),
String.valueOf(model.getSequenceNbr()), null);
//保存合同信息
saveAircraftFile(agencyCode, model);
return this.updateWithModel(Bean.copyExistPropertis(model, oldModel));
}
/**
* 附件转成逗号分割String
*
* @param fileInfoModels
* @return
*/
private String processToStr(List<FileInfoModel> fileInfoModels) {
return fileInfoModels.stream().map(FileInfoModel::getFilename).collect(Collectors.joining(","));
}
/**
* 根据主键查询合同信息
*
* @param agencyCode
* @param seq
* @return
*/
public ContractDto queryByAircraftSeq(String agencyCode, Long seq) {
ContractDto contractDto = this.queryBySeq(seq);
// 填充合同附件信息
FeignClientResult<List<FileInfoModel>> fileInfoModelResult = Systemctl.fileInfoClient.queryByEntity(
agencyCode, ContractDto.class.getSimpleName(), String.valueOf(seq));
List<FileInfoModel> fileInfoModels = fileInfoModelResult.getResult();
// 填充合同信息
if (!ValidationUtil.isEmpty(fileInfoModels)) {
contractDto.setContractAttachment(processToStr(fileInfoModels));
}
return contractDto;
}
/**
* 删除合同信息 (无约束)
*
* @param agencyCode
* @param ids
* @return
* @throws Exception
*/
@Transactional(rollbackFor = {Exception.class, BaseException.class})
public List<Long> multDeleteAircraft(String agencyCode, String ids) throws Exception {
List<Long> seqs = StringUtil.String2LongList(ids);
for (Long id : seqs) {
//删除附件信息
Systemctl.fileInfoClient.deleteByAlias(agencyCode, ContractDto.class.getSimpleName(),
String.valueOf(id), null);
//删除合同信息
this.deleteBySeq(id);
}
return seqs;
}
}
...@@ -76,7 +76,7 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU ...@@ -76,7 +76,7 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU
Long instanceId = dynamicFormInstanceService.commonSave(groupCode, map); Long instanceId = dynamicFormInstanceService.commonSave(groupCode, map);
linkageUnitDto.setInstanceId(instanceId); linkageUnitDto.setInstanceId(instanceId);
//2.保存基本信息 //2.保存基本信息
linkageUnitDto.setUnitId(getUnitCodeStr()); linkageUnitDto.setUnitCode(getUnitCodeStr());
LinkageUnitDto model = createWithModel(linkageUnitDto); LinkageUnitDto model = createWithModel(linkageUnitDto);
//3.返回保存后的数据 //3.返回保存后的数据
return model; return model;
......
package com.yeejoin.amos.boot.module.common.biz.service.impl; package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDto;
import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany; import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany;
import com.yeejoin.amos.boot.module.common.api.enums.OrgPersonEnum;
import com.yeejoin.amos.boot.module.common.api.mapper.MaintenanceCompanyMapper; import com.yeejoin.amos.boot.module.common.api.mapper.MaintenanceCompanyMapper;
import com.yeejoin.amos.boot.module.common.api.service.IMaintenanceCompanyService; import com.yeejoin.amos.boot.module.common.api.service.IMaintenanceCompanyService;
import com.yeejoin.amos.boot.module.common.api.dto.MaintenanceCompanyDto; import com.yeejoin.amos.boot.module.common.api.dto.MaintenanceCompanyDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 维保单位服务实现类 * 维保单位服务实现类
...@@ -17,6 +28,8 @@ import java.util.List; ...@@ -17,6 +28,8 @@ import java.util.List;
*/ */
@Service @Service
public class MaintenanceCompanyServiceImpl extends BaseService<MaintenanceCompanyDto,MaintenanceCompany,MaintenanceCompanyMapper> implements IMaintenanceCompanyService { public class MaintenanceCompanyServiceImpl extends BaseService<MaintenanceCompanyDto,MaintenanceCompany,MaintenanceCompanyMapper> implements IMaintenanceCompanyService {
@Autowired
DynamicFormInstanceServiceImpl dynamicFormInstanceService;
/** /**
* 分页查询 * 分页查询
*/ */
...@@ -24,10 +37,106 @@ public class MaintenanceCompanyServiceImpl extends BaseService<MaintenanceCompan ...@@ -24,10 +37,106 @@ public class MaintenanceCompanyServiceImpl extends BaseService<MaintenanceCompan
return this.queryForPage(page, null, false); return this.queryForPage(page, null, false);
} }
/** /**en
* 列表查询 示例 * 列表查询 示例
*/ */
public List<MaintenanceCompanyDto> queryForMaintenanceCompanyList() { public List<MaintenanceCompanyDto> queryForMaintenanceCompanyList() {
return this.queryForList("" , false); return this.queryForList("" , false);
} }
/**
* 根据维保单位查询所有机场单位(返回List<Map>类型) 不带分页
* @param seq
* @return
*/
public List< Map<String, Object>> queryOrgUsrMsg(Long seq){
if (ValidationUtil.isEmpty(this.queryBySeq(seq))){
throw new BadRequest("参数校验失败.");
}else {
List<Map<String,Object>> companys = new ArrayList<>();
// 机场单位列表基本信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(seq);
// 机场组装单位动态表单数据
orgUsrDtos.forEach(orgUsrDto -> {
Map<String, Object> map = Bean.BeantoMap(orgUsrDto);
mapCopy(dynamicFormInstanceService.getOneMap(orgUsrDto.getSequenceNbr(), OrgPersonEnum.公司.getKey()),map);
companys.add(map);
});
return companys;
}
}
/**
* 根据维保单位查询所有机场单位(返回List<Map>类型) 带分页
* @param pageNum
* @param pageSize
* @param seq
* @return
*/
public List<Map<String,Object>> queryOrgUsrMsgPage(int pageNum,int pageSize, Long seq){
if (ValidationUtil.isEmpty(this.queryBySeq(seq))){
throw new BadRequest("参数校验失败.");
}else {
List<Map<String,Object>> companys = new ArrayList<>();
// 机场单位列表基本信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrPageList(pageNum,pageSize,seq);
// 机场组装单位动态表单数据
orgUsrDtos.forEach(orgUsrDto -> {
Map<String, Object> map = Bean.BeantoMap(orgUsrDto);
mapCopy(dynamicFormInstanceService.getOneMap(orgUsrDto.getSequenceNbr(), OrgPersonEnum.公司.getKey()),map);
companys.add(map);
});
return companys;
}
}
public List<Map<String,Object>> queryCompanyMsg (){
List<Map<String,Object>> companysMsg = new ArrayList<>();
// 查询所有维保单位信息
List<MaintenanceCompany> lists = this.list();
lists.forEach(list->{
Map<String,Object> maintenanceCompany = new HashMap<>();
maintenanceCompany.put("id",list.getSequenceNbr());
maintenanceCompany.put("code",list.getCode());
maintenanceCompany.put("name",list.getName());
maintenanceCompany.put("type",1);
maintenanceCompany.put("parentId",null);
// 查询该维保单位下的业主信息
List<OrgUsrDto> orgUsrDtos = this.baseMapper.selectOrgUsrList(list.getSequenceNbr());
orgUsrDtos.forEach(orgUsrDto -> {
Map<String,Object> airCompany = new HashMap<>();
airCompany.put("id",orgUsrDto.getSequenceNbr());
airCompany.put("code",orgUsrDto.getBizOrgCode());
airCompany.put("name",orgUsrDto.getBizOrgName());
airCompany.put("type",2);
airCompany.put("parentId",list.getSequenceNbr());
companysMsg.add(airCompany);
});
companysMsg.add(maintenanceCompany);
});
return companysMsg;
}
/**
* 复制map对象
* @explain 将paramsMap中的键值对全部拷贝到resultMap中;
* @param paramsMap
* 被拷贝对象
* @param resultMap
* 拷贝后的对象
*/
private static void mapCopy(Map paramsMap, Map resultMap) {
if (resultMap == null) {
return;
}
if (paramsMap == null) {
return;
}
Iterator it = paramsMap.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
Object key = entry.getKey();
resultMap.put(key, paramsMap.get(key) != null ? paramsMap.get(key) : "");
}
}
} }
\ No newline at end of file
...@@ -225,7 +225,7 @@ public class WaterResourceServiceImpl extends BaseService<WaterResourceDto, Wate ...@@ -225,7 +225,7 @@ public class WaterResourceServiceImpl extends BaseService<WaterResourceDto, Wate
return waterResourceDto; return waterResourceDto;
} }
public List<WaterResourceDto> getWaterResourceTypeList() { public List<WaterResourceTypeDto> getWaterResourceTypeList(Boolean isDelete) {
return waterResourceMapper.getWaterResourceTypeList(); return waterResourceMapper.getWaterResourceTypeList(isDelete);
} }
} }
...@@ -46,7 +46,7 @@ public class ControllerAop { ...@@ -46,7 +46,7 @@ public class ControllerAop {
@Autowired @Autowired
private RedisUtils redisUtils; private RedisUtils redisUtils;
@Pointcut("execution(public * com.yeejoin.amos.boot.module.*jcs.biz.controller..*(..))") @Pointcut("execution(public * com.yeejoin.amos.boot.module.*.biz.controller..*(..))")
public void userCache() { public void userCache() {
} }
......
...@@ -5,6 +5,7 @@ import com.google.common.collect.Lists; ...@@ -5,6 +5,7 @@ import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.utils.MenuFrom; import com.yeejoin.amos.boot.biz.common.utils.MenuFrom;
import com.yeejoin.amos.boot.biz.common.utils.TreeParser; import com.yeejoin.amos.boot.biz.common.utils.TreeParser;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto; import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceTypeDto;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.FireSystemDto; import com.yeejoin.amos.boot.module.jcs.api.dto.FireSystemDto;
import com.yeejoin.amos.boot.module.jcs.api.feign.EquipFeignClient; import com.yeejoin.amos.boot.module.jcs.api.feign.EquipFeignClient;
...@@ -86,7 +87,7 @@ public class EquipmentServiceImpl { ...@@ -86,7 +87,7 @@ public class EquipmentServiceImpl {
MenuFrom fireSystem = new MenuFrom("-1", "其他系统", "0", "0"); MenuFrom fireSystem = new MenuFrom("-1", "其他系统", "0", "0");
fireSystemDtoList.add(fireSystem); fireSystemDtoList.add(fireSystem);
// 获取消防水源类型列表,包含消防系统和消防水源类型,去重 // 获取消防水源类型列表,包含消防系统和消防水源类型,去重
List<WaterResourceDto> waterResourceTypeList = waterResourceServiceImpl.getWaterResourceTypeList(); List<WaterResourceTypeDto> waterResourceTypeList = waterResourceServiceImpl.getWaterResourceTypeList(true);
// 组装消防水资源树 // 组装消防水资源树
fireSystemDtoList.forEach(item -> { fireSystemDtoList.forEach(item -> {
......
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