package com.steerinfo.dil.controller; import com.steerinfo.dil.feign.ColumnDataFeign; import com.steerinfo.dil.feign.ESFeign; import com.steerinfo.dil.model.AmsSalePlan; import com.steerinfo.dil.service.IAmsSalePlanService; import com.steerinfo.dil.util.BaseRESTfulController; import com.steerinfo.dil.util.ColumnDataUtil; import com.steerinfo.dil.util.DataChange; import com.steerinfo.dil.util.PageListAdd; import com.steerinfo.framework.controller.RESTfulResult; import com.steerinfo.framework.service.pagehelper.PageHelper; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.util.HashMap; import java.util.List; import java.util.Map; /** * AmsSalePlan RESTful接口: * @author generator * @version 1.0-SNAPSHORT 2021-09-06 07:10 * 类描述 * 修订历史: * 日期:2021-09-06 * 作者:generator * 参考: * 描述:AmsSalePlan RESTful接口 * @see null * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved. */ @RestController @RequestMapping("/${api.version}/amssaleplans") public class AmsSalePlanController extends BaseRESTfulController { @Autowired IAmsSalePlanService amsSalePlanService; @Autowired ColumnDataFeign columnDataFeign; @Autowired ESFeign esFeign; @Autowired ColumnDataUtil columnDataUtil; @ApiOperation(value="查询销售计划信息") @ApiImplicitParams({ @ApiImplicitParam(name = "apiId(92)", value = "表头", required = false, dataType = "Interger") }) @PostMapping("/getSalePlanInfo") public RESTfulResult getSalePlanInfo(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize){ List> amsSalePlan = amsSalePlanService.getSalePlanInfo(mapValue); PageHelper.startPage(pageNum,pageSize); List> amsSalePlan1 = amsSalePlanService.getSalePlanInfo(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, amsSalePlan,amsSalePlan1); return success(pageList); } /** * 新增销售计划 * @param map * @return */ @ApiOperation(value="新增销售计划") @ApiImplicitParams({ @ApiImplicitParam(name = "amsSalePlan", value = "销售计划", required = false, dataType = "AmsSalePlan") }) @PostMapping(value = "/addAmsSalePlan") public RESTfulResult addAmsSalePlan(@RequestBody(required = false) Map map) throws Exception { System.out.println(map); int i = amsSalePlanService.addAmsSalePlan(map); return success(i); } /** * 通过主键查询销售计划信息 * @param planId * @return */ @ApiOperation(value="通过主键查询销售计划信息") @ApiImplicitParams({ @ApiImplicitParam(name = "planId", value = "销售计划主键", required = false, dataType = "BigDecimal") }) @PostMapping(value = "/getAmsSalePlanByPlanId") public RESTfulResult getAmsSalePlanByPlanId(BigDecimal planId){ List> amsSalePlan = amsSalePlanService.selectByPlanId(planId); return success(amsSalePlan); } /** * 通过主键修改销售计划 * @param amsSalePlan * @return */ @ApiOperation(value="通过主键修改销售计划") @ApiImplicitParams({ @ApiImplicitParam(name = "amsSalePlan", value = "修改销售计划", required = false, dataType = "AmsSalePlan") }) @PostMapping(value = "/upadteAmsSalePlanByPlanId") public RESTfulResult upadteAmsSalePlanByPlanId(@RequestBody(required = false) AmsSalePlan amsSalePlan){ int i = amsSalePlanService.updateAmsSalePlan(amsSalePlan); return success(i); } /** * 通过主键删除销售计划 * @param planId * @return */ @ApiOperation(value="通过主键删除销售计划") @ApiImplicitParams({ @ApiImplicitParam(name = "planId", value = "主键ID", required = false, dataType = "BigDecimal") }) @PostMapping(value = "/deleteAmsSalePlanByPlanId") public RESTfulResult deleteAmsSalePlanByPlanId(@RequestParam BigDecimal planId){ int i = amsSalePlanService.deleteAmsSalePlan(planId); return success(i); } /** * 获取物资编码 * @param * @return */ @ApiOperation(value="获取物资编码") @ApiImplicitParams({ }) @GetMapping(value = "/getMaterialName") public RESTfulResult getMaterialName(){ return success(amsSalePlanService.getMaterialName()); } /** * 获取销售片区名称 * @param * @return */ @ApiOperation(value="获取销售片区名称") @ApiImplicitParams({ }) @GetMapping(value = "/getAreaName") public RESTfulResult getAreaName(){ return success(amsSalePlanService.getAreaName()); } @ApiModelProperty(value = "查询所有的钢材物资") @ApiImplicitParams({ @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"), @ApiImplicitParam(name = "apiId", value = "232", required = false, dataType = "BigDecimal") }) @PostMapping("/getAllSteelMaterialMes") public RESTfulResult getAllSteelMaterialMes(@RequestBody(required = false) Map mapValue, Integer pageNum, Integer pageSize, Integer apiId, String con) { //框计算 if(con != null){ if(!"undefined".equals(con)){ //设置要查询的索引名称 String index="get_materialsteelid_list"; //获取查询结果 return success(esFeign.getConResult(mapValue,index,apiId,pageNum,pageSize,con)); } } List> list = null; //如果有条件查询则跳过初始化,和创建索引 if(mapValue.size() == 0){ //将查询结果存入索引中 list = amsSalePlanService.getAllSteelMaterialMes(mapValue); Map map = new HashMap<>(); //添加索引 map.put("index","get_materialsteelid_list"); //添加id map.put("indexId","steelMaterialId"); list.add(map); //新建索引 esFeign.insertIndex(list); //删除 list.remove(list.size()-1); } if(list == null) list = amsSalePlanService.getAllSteelMaterialMes(mapValue); PageHelper.startPage(pageNum,pageSize); //分页查询数据 List> columnList = amsSalePlanService.getAllSteelMaterialMes(mapValue); PageListAdd data = columnDataUtil.tableColumnData(apiId, list, columnList); return success(data); } }