| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177 |
- package cn.com.goldenwater.dcproj.controller.fsc;
- import cn.com.goldenwater.dcproj.dto.BisInspFscPblmDto;
- import cn.com.goldenwater.dcproj.model.BisInspAllRlationPers;
- import cn.com.goldenwater.dcproj.model.BisInspFscPblm;
- import cn.com.goldenwater.dcproj.model.GwComFile;
- import cn.com.goldenwater.dcproj.param.BisInspFscPblmParam;
- import cn.com.goldenwater.dcproj.param.FileParam;
- import cn.com.goldenwater.dcproj.service.BisInspAllRlationPersService;
- import cn.com.goldenwater.dcproj.service.BisInspFscPblmService;
- import cn.com.goldenwater.core.web.BaseController;
- import cn.com.goldenwater.core.web.BaseResponse;
- import cn.com.goldenwater.dcproj.service.GwComFileService;
- import cn.com.goldenwater.dcproj.utils.impexcel.ExpAndImpUtil;
- import cn.com.goldenwater.id.util.UuidUtil;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import io.swagger.annotations.ApiParam;
- import org.apache.commons.lang3.StringUtils;
- import com.github.pagehelper.PageInfo;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.data.redis.core.RedisTemplate;
- 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.RequestMethod;
- import org.springframework.web.bind.annotation.RestController;
- import org.springframework.web.multipart.MultipartFile;
- import javax.servlet.http.HttpServletResponse;
- import java.io.File;
- import java.io.IOException;
- import java.util.LinkedHashMap;
- import java.util.List;
- import java.util.Map;
- import static cn.com.goldenwater.dcproj.utils.impexcel.ImpUtil.getDateFormatPath;
- /**
- * @author lune
- * @date 2019-7-19
- */
- @Api(value = "BIS 特定飞检问题信息表管理", tags = "BIS 特定飞检问题信息表管理")
- @RestController
- @RequestMapping("/bis/insp/fsc/pblm")
- public class BisInspFscPblmController extends BaseController {
- private Logger logger = LoggerFactory.getLogger(getClass());
- @Value("${export.templatePath}")
- private String templatePath;
- @Value("${impExcel.basePath}")
- private String impExcelPath;
- @Autowired
- private BisInspFscPblmService bisInspFscPblmService;
- @Autowired
- private BisInspAllRlationPersService persService;
- @Autowired
- private RedisTemplate redisTemplate;
- @Autowired
- private GwComFileService gwComFileService;
- @ApiOperation(value = "添加/修改特定飞检问题信息表")
- @RequestMapping(value = "", method = RequestMethod.POST)
- public BaseResponse<BisInspFscPblm> insert(@ApiParam(name = "bisInspFscPblm", value = "BisInspFscPblm", required = true) @RequestBody BisInspFscPblm bisInspFscPblm) {
- if (StringUtils.isBlank(bisInspFscPblm.getId())) {
- String uuid = UuidUtil.uuid(); // 生成uuid
- bisInspFscPblm.setId(uuid);
- bisInspFscPblmService.insert(bisInspFscPblm);
- } else {
- bisInspFscPblmService.updatePblm(bisInspFscPblm);
- }
- return buildSuccessResponse(bisInspFscPblm);
- }
- @ApiOperation(value = "根据ID删除特定飞检问题信息表")
- @RequestMapping(value = "/del/{id}", method = RequestMethod.GET)
- public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
- int ret = bisInspFscPblmService.delete(id);
- return buildSuccessResponse();
- }
- @ApiOperation(value = "根据ID获取特定飞检问题信息表(单表)")
- @RequestMapping(value = "/{id}", method = RequestMethod.GET)
- public BaseResponse<BisInspFscPblm> get(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
- BisInspFscPblm bisInspFscPblm = bisInspFscPblmService.get(id);
- if (StringUtils.isNotBlank(bisInspFscPblm.getPersId())) {
- BisInspAllRlationPers pers = persService.get(bisInspFscPblm.getPersId());
- if (pers != null) {
- bisInspFscPblm.setPersName(pers.getPersName());
- }
- }
- List<GwComFile> gwComFiles = gwComFileService.findFileByBiz(bisInspFscPblm.getId());
- bisInspFscPblm.setGwComFiles(gwComFiles);
- return buildSuccessResponse(bisInspFscPblm);
- }
- @ApiOperation(value = "获取特定飞检问题信息表(列表所有)")
- @RequestMapping(value = "/list", method = RequestMethod.POST)
- public BaseResponse<List<BisInspFscPblm>> list(@ApiParam(name = "bisInspFscPblmParam", value = "bisInspFscPblmParam", required = true) @RequestBody BisInspFscPblmParam bisInspFscPblmParam) {
- List<BisInspFscPblm> bisInspFscPblmList = bisInspFscPblmService.findList(bisInspFscPblmParam);
- return buildSuccessResponse(bisInspFscPblmList);
- }
- @ApiOperation(value = "获取特定飞检问题信息表(列表--分页)")
- @RequestMapping(value = "/page", method = RequestMethod.POST)
- public BaseResponse<PageInfo<BisInspFscPblm>> page(@ApiParam(name = "bisInspFscPblmParam", value = "bisInspFscPblmParam", required = true) @RequestBody BisInspFscPblmParam bisInspFscPblmParam) {
- PageInfo<BisInspFscPblm> bisInspFscPblmList = bisInspFscPblmService.findPageInfo(bisInspFscPblmParam);
- return buildSuccessResponse(bisInspFscPblmList);
- }
- @ApiOperation(value = "下载飞检模板")
- @RequestMapping(value = "/downTemplate", method = {RequestMethod.GET, RequestMethod.POST})
- public BaseResponse downTemplate(HttpServletResponse response, FileParam param) {
- try {
- List<Map<String, Object>> pblmList = bisInspFscPblmService.findPblmList(param);
- ExpAndImpUtil.download(response, pblmList, templatePath + File.separator + param.getFileName(), param.getStartRow(), param.getSheetName());
- } catch (Exception e) {
- return buildFailResponse(e);
- }
- return buildSuccessResponse();
- }
- @ApiOperation(value = "上传飞检模板")
- @RequestMapping(value = "/uploadTemplate", method = RequestMethod.POST)
- public BaseResponse uploadTemplate(MultipartFile file, FileParam param) {
- String filaPath = "";
- try {
- filaPath = ExpAndImpUtil.upload(file, getDateFormatPath(impExcelPath));
- } catch (Exception e) {
- return buildFailResponse(e);
- }
- return buildSuccessResponse(filaPath);
- }
- @ApiOperation(value = "解析文件上传数据")
- @RequestMapping(value = "/parseUpload", method = RequestMethod.POST)
- public BaseResponse<Map<String, Object>> parseUpload(FileParam param) {
- Map<String, Object> map = new LinkedHashMap<>();
- try {
- List<LinkedHashMap<String, Object>> list = ExpAndImpUtil.parseData(param.getPath(), param.getStartRow(), BisInspFscPblmDto.class);
- if (list.size() > 0) {
- String uuid = UuidUtil.uuid();
- redisTemplate.opsForList().rightPushAll(uuid, list);
- map.put("dataId", uuid);
- }
- map.put("list", list);
- } catch (IOException e) {
- buildFailResponse(e.getMessage());
- }
- return buildSuccessResponse(map);
- }
- @ApiOperation(value = "文件数据入库")
- @RequestMapping(value = "/insertIntoData", method = RequestMethod.POST)
- public BaseResponse insertIntoData(FileParam param) {
- if (StringUtils.isBlank(param.getDataId())) {
- return buildFailResponse();
- }
- List<LinkedHashMap<String, Object>> list = redisTemplate.opsForList().range(param.getDataId(), 0, -1);
- redisTemplate.delete(param.getDataId());
- if (bisInspFscPblmService.insertIntoData(list) == 0) {
- return buildFailResponse();
- }
- return buildSuccessResponse();
- }
- }
|