package com.steerinfo.dil.controller; import com.alibaba.fastjson.JSON; import com.steerinfo.dil.feign.ESFeign; import com.steerinfo.dil.model.TmsshipBargeOperation; import com.steerinfo.dil.model.TmsshipShipLocation; import com.steerinfo.dil.service.ITmsshipBargeOperationService; import com.steerinfo.dil.util.BaseRESTfulController; import com.steerinfo.dil.util.ColumnDataUtil; import com.steerinfo.dil.util.PageListAdd; import com.steerinfo.framework.controller.RESTfulResult; import com.steerinfo.framework.service.pagehelper.PageHelper; import com.steerinfo.framework.service.pagehelper.PageList; import com.steerinfo.framework.utils.collection.ListUtils; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.*; import java.math.BigDecimal; /** * TmsshipBargeOperation RESTful接口: * @author generator * @version 1.0-SNAPSHORT 2021-08-18 04:04 * 类描述 * 修订历史: * 日期:2021-08-18 * 作者:generator * 参考: * 描述:TmsshipBargeOperation RESTful接口 * @see null * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved. */ @RestController @RequestMapping("/${api.version}/tmsshipbargeoperations") public class TmsshipBargeOperationController extends BaseRESTfulController { @Autowired ITmsshipBargeOperationService tmsshipBargeOperationService; @Autowired ColumnDataUtil columnDataUtil; @Autowired ESFeign esFeign; /** * 新增驳船作业 * @param map * @return */ @ApiOperation(value="新增驳船作业", notes="根据TmsshipBargeOperation对象创建") @ApiImplicitParams({ @ApiImplicitParam(name = "map",value = "驳船作业字段",required = true,paramType = "java.util.Map") }) @PostMapping("/addBargeOperation") public RESTfulResult addBargeOperation(@RequestBody Map map) { int code = tmsshipBargeOperationService.insertBargeOperation(map); return success(code); } /** * 修改驳船作业信息 * @param tmsshipBargeOperation * @return */ @ApiOperation(value="修改驳船作业信息", notes="根据TmsshipBargeOperation对象修改") @ApiImplicitParams({ @ApiImplicitParam(name = "tmsshipBargeOperation",value = "驳船作业字段",required = true,paramType = "TmsshipBargeOperation") }) @PostMapping("/updateBargeOperation") public RESTfulResult updateBargeOperation(@RequestBody TmsshipBargeOperation tmsshipBargeOperation) { int code = tmsshipBargeOperationService.updateBargeOperation(tmsshipBargeOperation); return success(code); } /** * 逻辑删除驳船作业信息 * @param bargeOperationId * @return */ @ApiOperation(value="删除驳船作业信息") @ApiImplicitParams({ @ApiImplicitParam(name = "bargeOperationId",value = "驳船作业字段",required = true,paramType = "BigDecimal") }) @PostMapping("/deleteBargeOperation/{bargeOperationId}") public RESTfulResult deleteBargeOperation(@PathVariable("bargeOperationId") BigDecimal bargeOperationId) { int code = tmsshipBargeOperationService.deleteBargeOperation(bargeOperationId); return success(code); } /** * 查询驳船作业信息 * @param bargeOperationId * @return */ @ApiOperation(value="查询驳船作业信息") @ApiImplicitParams({ @ApiImplicitParam(name = "bargeOperationId",value = "主键",required = true,paramType = "BigDecimal") }) @PostMapping("/selectBargeOperation/{bargeOperationId}") public RESTfulResult selectBargeOperation(@PathVariable("bargeOperationId") BigDecimal bargeOperationId) { TmsshipBargeOperation tmsshipBargeOperation = tmsshipBargeOperationService.selectBargeOperation(bargeOperationId); return success(tmsshipBargeOperation); } /** * 查询驳船作业信息 * @param bargeOperationId * @return */ @ApiOperation(value="查询位置作业信息") @ApiImplicitParams({ @ApiImplicitParam(name = "bargeOperationId",value = "主键",required = true,paramType = "BigDecimal") }) @PostMapping("/getBargeOperation/{bargeOperationId}") public RESTfulResult getBargeOperation(@PathVariable("bargeOperationId") BigDecimal bargeOperationId) { List> map = tmsshipBargeOperationService.getBargeOperation(bargeOperationId); return success(map); } /** * 展示驳船作业信息列表 * @param mapVal * @param pageNum * @param pageSize * @param apiId * @return */ @ApiOperation(value="展示驳船作业信息列表", notes="分页查询") @ApiImplicitParams({ @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"), @ApiImplicitParam(name = "apiId", value = "61", required = false, dataType = "BigDecimal"), }) @PostMapping(value = "/getBargeOperationList") public RESTfulResult getBargeOperationList(@RequestBody(required = false) Map mapVal, Integer pageNum, Integer pageSize, Integer apiId, String con){ //框计算 if(con != null){ if(!"undefined".equals(con)){ //设置要查询的索引名称 String index="get_barge_operation_list"; //获取查询结果 return success(esFeign.getConResult(mapVal,index,apiId,pageNum,pageSize,con)); } } //初始化过滤 List> detailListTotal = null; //如果有条件查询则跳过初始化,和创建索引 if (mapVal == null) { //将查询结果存入索引中 detailListTotal = tmsshipBargeOperationService.selectBargeOperationList(null); Map map = new HashMap<>(); //添加索引 map.put("index", "get_barge_operation_list"); //添加id map.put("indexId", "bargeOperationId"); detailListTotal.add(map); //新建索引 String s = JSON.toJSONString(detailListTotal); esFeign.insertIndex(detailListTotal); //删除 detailListTotal.remove(detailListTotal.size() - 1); } if (detailListTotal == null) { detailListTotal = tmsshipBargeOperationService.selectBargeOperationList(mapVal); } PageHelper.startPage(pageNum, pageSize); //分页查询数据 List> columnList = tmsshipBargeOperationService.selectBargeOperationList(mapVal); PageListAdd data = columnDataUtil.tableColumnData(apiId, detailListTotal, columnList); return success(data); } }