package com.ibeetl.admin.console.api; import com.ibeetl.admin.console.model.PromoterModel; import com.ibeetl.admin.console.model.StorageModel; import com.ibeetl.admin.console.model.UserModel; import com.ibeetl.admin.console.service.CuserConsoleService; import com.ibeetl.admin.console.service.RedisService; import com.ibeetl.admin.console.service.StatisConsoleService; import com.ibeetl.admin.core.web.JsonResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 用户管理 */ //@Controller @RestController @Api(value = "数据统计接口类") public class DataStatisticsApi { private static final String MODEL = "/admin/front/data"; private final Logger log = LoggerFactory.getLogger(this.getClass()); @Autowired RedisService redisService; @Autowired CuserConsoleService service; @Autowired StatisConsoleService statisConsoleService; /** * 查询推广员页面 * @param promoterModel * @return */ @PostMapping(MODEL + "/queryQromoterList.do") @ResponseBody @ApiOperation(value="数据统计-推广员数据", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "结束时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "paramName", value = "姓名/电话", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "userId", value = "推广员userId", required = true, dataType = "String") }) public JsonResult> queryQromoterList(@RequestBody PromoterModel promoterModel){ Map resultMap = service.queryQromoterList(promoterModel); return JsonResult.success(resultMap); } /** * * @param model * @return */ @PostMapping(MODEL + "/queryQromoterOrder.json") @ResponseBody @ApiOperation(value="数据统计-推广人员列表", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间(时间为上层页面选择的时间段)", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "结束时间(时间为上层页面选择的时间段)", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "orderWeightCount", value = "订单重量", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "sortType", value = "第几单", required = true, dataType = "String") }) public JsonResult> queryQromoterOrder(@RequestBody PromoterModel model){ Map resultMap = statisConsoleService.queryQromoterOrder(model); return JsonResult.success(resultMap); } /** * 查询回收员数据 * @param promoterModel * @return */ @PostMapping(MODEL + "/queryCollectorList.do") @ResponseBody @ApiOperation(value="数据统计-回收员数据", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "结束时间", required = true, dataType = "String"), }) public JsonResult> queryCollectorList(@RequestBody PromoterModel promoterModel){ Map resultMap = service.queryCollectorList(promoterModel); return JsonResult.success(resultMap); } /** * 查询回收人员列表 * @param storageModel * @return */ @PostMapping(MODEL + "/queryStorageDetailList.json") @ResponseBody @ApiOperation(value="数据统计-回收人员列表", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "结束时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "recycleWeight", value = "订单重量", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "weightError", value = "重量误差", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "receiver", value = "回收人Id(前一个页面的userId)", required = true, dataType = "String") }) public JsonResult> queryStorageDetailList(@RequestBody StorageModel storageModel){ Map result = service.queryStorageByUserId(storageModel); return JsonResult.success(result); } /** * 查询入库员数据 * @param userModel * @return */ @PostMapping(MODEL + "/queryStorageList.do") @ResponseBody @ApiOperation(value="数据统计-入库员数据", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "结束时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "name", value = "电话姓名昵称", required = true, dataType = "String"), }) public JsonResult> queryStorageList(@RequestBody UserModel userModel){ Map resultMap = service.queryStorageList(userModel); return JsonResult.success(resultMap); } /** * 查询入库员数据 * @param userModel * @return */ @PostMapping(MODEL + "/queryPackageStorageList.do") @ResponseBody @ApiOperation(value="数据统计-打包员数据", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "结束时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "name", value = "电话姓名昵称", required = true, dataType = "String"), }) public JsonResult> queryPackageStorageList(@RequestBody UserModel userModel){ Map resultMap = service.queryPackageStorageList(userModel); return JsonResult.success(resultMap); } /** * 查询入库员列表详情 * @param storageModel * @return */ @PostMapping(MODEL + "/queryStorageObjectList.json") @ResponseBody @ApiOperation(value="数据统计-入库员列表", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "结束时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "recycleWeight", value = "订单重量", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "storageWeight", value = "入库重量", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "storageUserId", value = "入库人Id", required = true, dataType = "String") }) public JsonResult> queryStorageObjectList(@RequestBody StorageModel storageModel){ Map result = service.queryStorageObjectList(storageModel); return JsonResult.success(result); } /** * 查询仓库数据 * @param storageModel * @return */ @PostMapping(MODEL + "/querySysStorageList.do") @ResponseBody @ApiOperation(value="数据统计-仓库数据", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "结束时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "area", value = "区域", required = true, dataType = "String"), }) public JsonResult> querySysStorageList(@RequestBody StorageModel storageModel){ Map resultMap = service.querySysStorageList(storageModel); return JsonResult.success(resultMap); } /** * 查询仓库列表 * @param storageModel * @return */ @PostMapping(MODEL + "/querySysStorageDetail.json") @ResponseBody @ApiOperation(value="数据统计-仓库列表", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "timeType", value = "时间类型(week(周),month(月))", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "sysStorageId", value = "仓库Id(上一个页面的id)", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "imageType", value = "统计图的时间类型(具体类别的图,week(周),month(月))", required = true, dataType = "String") }) public JsonResult> querySysStorageDetail(@RequestBody StorageModel storageModel){ Map resultMap = service.querySysStorageDetail(storageModel); return JsonResult.success(resultMap); } /** * 查询仓库列表 * @param * @return */ @PostMapping(MODEL + "/queryApiArea.json") @ResponseBody @ApiOperation(value="数据统计-仓库数据(地区接口)", notes="test: 仅0有正确返回") public JsonResult>> queryApiArea(){ //返回长沙市的区域(后期根据需求修改) List> resultMap = service.queryApiArea(); return JsonResult.success(resultMap); } /** * 查询分类数据 * @param storageModel * @return */ @PostMapping(MODEL + "/queryTypeData.do") @ResponseBody @ApiOperation(value="数据统计-分类数据(示意图)", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "typeName", value = "分类名称", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "imageType", value = "统计图的时间类型(week(周),month(月))", required = true, dataType = "String") }) public JsonResult> queryTypeData(@RequestBody StorageModel storageModel){ Map resultMap = service.queryTypeData(storageModel); return JsonResult.success(resultMap); } /** * 查询 * @param userModel * @return */ @PostMapping(MODEL + "/queryCuserDataList.do") @ResponseBody @ApiOperation(value="数据统计-普通用户数据", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "页码", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "每页条数", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "startTime", value = "开始时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "endTime", value = "技术时间", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "mobilePhone", value = "手机号", required = true, dataType = "String") }) public JsonResult> queryCuserDataList(@RequestBody UserModel userModel){ userModel.setUserType("1"); Map result = service.queryCuserForTimeList(userModel); return JsonResult.success(result); } /** * 用户详情数据 * @param userModel * @return */ @PostMapping(MODEL + "/queryCuserDataDetail.json") @ResponseBody @ApiOperation(value="数据统计-普通用户详情", notes="test: 仅0有正确返回") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "page", value = "用户Id", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "limit", value = "用户Id", required = true, dataType = "int"), @ApiImplicitParam(paramType="query", name = "userId", value = "用户Id", required = true, dataType = "String"), @ApiImplicitParam(paramType="query", name = "mobilePhone", value = "用户手机号码", required = true, dataType = "String") }) public JsonResult> queryCuserDataDetail(@RequestBody UserModel userModel){ String userId = userModel.getUserId(); String phone = userModel.getMobilePhone(); Map map = service.queryApiCuserDetail(userId, phone, "1",userModel.getPage(),userModel.getLimit()); return JsonResult.success(map); } }