package com.doumee.cloud.board; 
 | 
  
 | 
import  com.doumee.api.BaseController; 
 | 
import com.doumee.config.annotation.LoginNoRequired; 
 | 
import com.doumee.service.business.third.model.ApiResponse; 
 | 
import com.doumee.service.business.third.model.request.TmsOrderInfoRequest; 
 | 
import com.doumee.service.business.third.model.request.TmsOrderNoFinishListRequest; 
 | 
import com.doumee.service.business.third.model.response.TmsBasePageResponse; 
 | 
import com.doumee.service.business.third.model.response.TmsOrderInfoResponse; 
 | 
import com.doumee.service.business.third.model.response.TmsOrderNoFinishListResponse; 
 | 
import com.doumee.core.utils.Constants; 
 | 
import com.doumee.dao.business.model.TmsFactoryParam; 
 | 
import com.doumee.dao.web.response.platformReport.*; 
 | 
import com.doumee.service.business.third.BoardService; 
 | 
import com.doumee.service.business.third.TmsService; 
 | 
import io.swagger.annotations.*; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.web.bind.annotation.*; 
 | 
  
 | 
import java.util.List; 
 | 
  
 | 
/** 
 | 
 * Created by IntelliJ IDEA. 
 | 
 * 
 | 
 * @Author : Rk 
 | 
 * @create 2024/10/28 13:42 
 | 
 */ 
 | 
  
 | 
@Api(tags = "【看板大屏】全省一库制管理看板") 
 | 
@RestController 
 | 
@Slf4j 
 | 
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/wholeProvince") 
 | 
public class WholeProvinceController extends BaseController { 
 | 
  
 | 
    @Autowired 
 | 
    private TmsService tmsService; 
 | 
    @Autowired 
 | 
    private BoardService boardService; 
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("中心数据(废弃)") 
 | 
    @GetMapping("/centerData") 
 | 
    @ApiImplicitParams({ 
 | 
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "查询类型厂区编码", required = false) 
 | 
    }) 
 | 
    public ApiResponse<WholeProvinceBoardVO> centerData(@RequestParam(required = false) String factoryCode) { 
 | 
        WholeProvinceBoardVO data = boardService.centerProvinceData(  factoryCode); 
 | 
        return ApiResponse.success(data); 
 | 
    } 
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("中心数据(更新版本)") 
 | 
    @GetMapping("/centerDataNew") 
 | 
    @ApiImplicitParams({ 
 | 
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "查询类型厂区编码", required = false) 
 | 
    }) 
 | 
    public ApiResponse<WholeProvinceBoardVO> centerDataNew(@RequestParam(required = false) String factoryCode) { 
 | 
        WholeProvinceBoardVO data = boardService.centerProvinceDataNew(  factoryCode); 
 | 
        return ApiResponse.success(data); 
 | 
    } 
 | 
  
 | 
  
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("近七日到货情况") 
 | 
    @GetMapping("/arriveGoodsList") 
 | 
    @ApiImplicitParams({ 
 | 
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "查询类型厂区编码", required = false) 
 | 
    }) 
 | 
    public ApiResponse<List<LastSevenDaysOrderVo>>  arriveGoodsList(@RequestParam(required = false) String factoryCode) { 
 | 
        List<LastSevenDaysOrderVo> list = boardService.arriveGoodsList(factoryCode); 
 | 
        return ApiResponse.success(list); 
 | 
    } 
 | 
  
 | 
  
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("订单在途跟踪-累计出库量") 
 | 
    @GetMapping("/totalOutQtyNum") 
 | 
    @ApiImplicitParams({ 
 | 
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "查询类型 0本月 1本周 2本年", required = false), 
 | 
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "查询类型厂区编码", required = false) 
 | 
    }) 
 | 
    public ApiResponse<TotalOutQtyNumVO> totalOutQtyNum(@RequestParam Integer type,@RequestParam(required = false) String factoryCode) { 
 | 
        TotalOutQtyNumVO result = boardService.totalOutQtyNum(type,factoryCode); 
 | 
  
 | 
        return ApiResponse.success(result); 
 | 
    } 
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("所有烟厂集合") 
 | 
    @GetMapping("/factoryList") 
 | 
    public ApiResponse<List<TmsFactoryParam>> factoryList() { 
 | 
        List<TmsFactoryParam> list = boardService.factoryList(); 
 | 
        return ApiResponse.success(list); 
 | 
    } 
 | 
  
 | 
  
 | 
  
 | 
  
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("仓库资源利用率") 
 | 
    @GetMapping("/inventoryUseRate") 
 | 
    public ApiResponse<WholeProvinceZXTVO> inventoryUseRate( ) { 
 | 
        WholeProvinceZXTVO  list = boardService.inventoryUseRate(); 
 | 
        return ApiResponse.success(list); 
 | 
    } 
 | 
  
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("运力资源利用率") 
 | 
    @GetMapping("/tranportAbilityUseRate") 
 | 
    public ApiResponse<WholeProvinceZXTVO> tranportAbilityUseRate( ) { 
 | 
        WholeProvinceZXTVO  list = boardService.tranportAbilityUseRate(); 
 | 
        return ApiResponse.success(list); 
 | 
    } 
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("出库能力利用率") 
 | 
    @GetMapping("/outAbilityUseRate") 
 | 
    public ApiResponse<WholeProvinceZXTVO> outAbilityUseRate( ) { 
 | 
        WholeProvinceZXTVO  list = boardService.outAbilityUseRate(); 
 | 
        return ApiResponse.success(list); 
 | 
    } 
 | 
    @LoginNoRequired 
 | 
    @ApiOperation("地图本月本年总出库量统计集合(按省份)") 
 | 
    @GetMapping("/mapYearAndMonthOutList") 
 | 
    @ApiImplicitParams({ 
 | 
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "查询类型厂区编码", required = false) 
 | 
    }) 
 | 
    public ApiResponse<List<WholeProvinceMapVO>> mapYearAndMonthOutList( @RequestParam(required = false) String factoryCode) { 
 | 
        List<WholeProvinceMapVO>  list = boardService.mapYearAndMonthOutList(factoryCode); 
 | 
        return ApiResponse.success(list); 
 | 
    } 
 | 
  
 | 
  
 | 
    @ApiOperation("订单任务合同列表接口") 
 | 
    @LoginNoRequired 
 | 
    @PostMapping("/orderList") 
 | 
    @ApiImplicitParams({ 
 | 
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "查询类型厂区编码", required = false) 
 | 
    }) 
 | 
    public ApiResponse<TmsBasePageResponse<TmsOrderNoFinishListResponse>> orderNoFinishList(@RequestBody TmsOrderNoFinishListRequest param )   { 
 | 
        TmsBasePageResponse<TmsOrderNoFinishListResponse> list = boardService.orderNoFinishList(param); 
 | 
        return  ApiResponse.success(list); 
 | 
    } 
 | 
    @ApiOperation("合同详情接口") 
 | 
    @LoginNoRequired 
 | 
    @PostMapping("/orderInfo") 
 | 
    public ApiResponse<TmsOrderInfoResponse> ordreInfo(@RequestBody TmsOrderInfoRequest request )   { 
 | 
        return ApiResponse.success(tmsService.orderInfo(request)); 
 | 
    } 
 | 
  
 | 
} 
 |