package com.doumee.api.web;
|
|
//import com.doumee.api.Repeat.RepeatSubmit;
|
import com.doumee.biz.system.SystemDictDataBiz;
|
import com.doumee.core.annotation.LoginRequired;
|
import com.doumee.core.annotation.pr.PreventRepeat;
|
import com.doumee.core.annotation.trace.Trace;
|
import com.doumee.core.constants.Constants;
|
import com.doumee.core.model.ApiResponse;
|
import com.doumee.core.model.PageData;
|
import com.doumee.core.model.PageWrap;
|
import com.doumee.dao.business.model.*;
|
import com.doumee.dao.business.web.request.BackElecBikeRequest;
|
import com.doumee.dao.business.web.request.RepairRequest;
|
import com.doumee.dao.business.web.response.HomeResponse;
|
import com.doumee.dao.business.web.response.MemberRidesDetailResponse;
|
import com.doumee.dao.business.web.response.RidesDetailResponse;
|
import com.doumee.dao.system.model.SystemDictData;
|
import com.doumee.jtt808.web.service.Jtt808Service;
|
import com.doumee.service.business.*;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
import org.yzh.commons.model.APIResult;
|
import org.yzh.protocol.t808.T0201_0500;
|
import org.yzh.protocol.t808.T8500;
|
|
import java.util.List;
|
|
/**
|
* Created by IntelliJ IDEA.
|
*
|
* @Author : Rk
|
* @create 2023/10/9 10:15
|
*/
|
|
@Api(tags = "3、业务接口")
|
@Trace(exclude = true)
|
@RestController
|
@RequestMapping("/web/business")
|
@Slf4j
|
public class BusinessApi extends ApiController{
|
|
@Autowired
|
private GoodsorderService goodsorderService;
|
@Autowired
|
private Jtt808Service jtt808Service;
|
|
@Autowired
|
private RentSiteService rentSiteService;
|
|
@Autowired
|
private TransactionsService transactionsService;
|
|
@Autowired
|
private BaseParamService baseParamService;
|
|
@Autowired
|
private BikeRepairService bikeRepairService;
|
|
@Autowired
|
private MemberRidesService memberRidesService;
|
|
@Autowired
|
private SystemDictDataBiz systemDictDataBiz;
|
|
@Autowired
|
private DiscountService discountService;
|
|
@PreventRepeat
|
@LoginRequired
|
@ApiOperation(value = "押金支付", notes = "小程序端")
|
@GetMapping("/createGoodsOrderPay")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true)
|
})
|
public ApiResponse<Object> createGoodsOrderPay() {
|
return ApiResponse.success("操作成功",goodsorderService.createGoodsOrderPay(getMemberId()));
|
}
|
|
@PreventRepeat
|
@LoginRequired
|
@ApiOperation(value = "套餐购买", notes = "小程序端")
|
@GetMapping("/createDiscountOrderPay")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
@ApiImplicitParam(paramType = "query", dataType = "String", name = "discountId", value = "套餐主键", required = true)
|
})
|
public ApiResponse<Object> createDiscountOrderPay(@RequestParam String discountId) {
|
return ApiResponse.success("操作成功",goodsorderService.createDiscountOrderPay(discountId,getMemberId()));
|
}
|
|
|
|
@LoginRequired
|
@ApiOperation(value = "骑行明细", notes = "小程序端")
|
@GetMapping("/ridesDetail")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
@ApiImplicitParam(paramType = "query", dataType = "String", name = "goodsOrderId", value = "订单主键", required = true)
|
})
|
public ApiResponse<RidesDetailResponse> ridesDetail(@RequestParam String goodsOrderId) {
|
return ApiResponse.success("查询成功",goodsorderService.getRidesDetailResponse(goodsOrderId));
|
}
|
|
@LoginRequired
|
@ApiOperation(value = "租车点列表", notes = "小程序端")
|
@GetMapping("/rentSiteList")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true)
|
})
|
public ApiResponse<List<RentSite>> rentSiteList() {
|
RentSite rentSite = new RentSite();
|
rentSite.setIsdeleted(Constants.ZERO);
|
rentSite.setStatus(Constants.ZERO);
|
return ApiResponse.success("查询成功",rentSiteService.findList(rentSite));
|
}
|
|
@LoginRequired
|
@ApiOperation("消费明细")
|
@PostMapping("/transactionsPage")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true)
|
})
|
public ApiResponse<PageData<Transactions>> transactionsPage (@RequestBody PageWrap pageWrap) {
|
return ApiResponse.success(transactionsService.findPageForMini(pageWrap,getMemberId()));
|
}
|
|
|
|
@LoginRequired
|
@ApiOperation(value = "热销套餐", notes = "热销套餐")
|
@GetMapping("/discountPage")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true)
|
})
|
public ApiResponse<PageData<Discount>> discountPage (@RequestBody PageWrap<Discount> pageWrap) {
|
Discount discount = new Discount();
|
discount.setStatus(Constants.ZERO);
|
pageWrap.setModel(discount);
|
return ApiResponse.success(discountService.findPage(pageWrap));
|
}
|
|
|
|
|
@LoginRequired
|
@ApiOperation("基础配置数据")
|
@GetMapping("/baseParamList")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
@ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "类型 0车辆报修原因 1强制还车原因 2时长减免原因 3单车类型", required = true)
|
})
|
public ApiResponse<List<BaseParam>> baseParamList (@RequestParam Integer type) {
|
BaseParam baseParam = new BaseParam();
|
baseParam.setIsdeleted(Constants.ZERO);
|
baseParam.setStatus(Constants.ZERO);
|
baseParam.setType(type);
|
return ApiResponse.success(baseParamService.findList(baseParam));
|
}
|
|
@LoginRequired
|
@ApiOperation(value = "查询骑行中车辆", notes = "小程序端")
|
@GetMapping("/onlineBike")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true)
|
})
|
public ApiResponse<MemberRides> onlineBike() {
|
return ApiResponse.success("查询成功",memberRidesService.getOnlineBike(getMemberId()));
|
}
|
|
@LoginRequired
|
@ApiOperation("车辆问题上报")
|
@PostMapping("/saveRepair")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true)
|
})
|
public ApiResponse transactionsPage (@RequestBody RepairRequest repairRequest) throws Exception{
|
repairRequest.setMemberId(getMemberId());
|
bikeRepairService.saveRepair(repairRequest);
|
return ApiResponse.success("操作成功");
|
}
|
|
@PreventRepeat
|
@LoginRequired
|
@ApiOperation(value = "扫码解锁", notes = "小程序端")
|
@GetMapping("/openLock")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
@ApiImplicitParam(paramType = "query", dataType = "String", name = "code", value = "锁头码", required = true)
|
})
|
public ApiResponse<MemberRidesDetailResponse> openLock(@RequestParam String code) {
|
return ApiResponse.success("操作成功",memberRidesService.openLock(code,getMemberId()));
|
}
|
|
@LoginRequired
|
@ApiOperation(value = "刷新解锁情况", notes = "小程序端")
|
@GetMapping("/refreshLock")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
@ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "骑行记录主键", required = true)
|
})
|
public ApiResponse<MemberRidesDetailResponse> refreshLock(@RequestParam String id) {
|
return ApiResponse.success("操作成功",memberRidesService.refreshLock(id));
|
}
|
|
@LoginRequired
|
@PreventRepeat
|
@ApiOperation(value = "订单结算", notes = "小程序端")
|
@GetMapping("/goodsOrderSettlement")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
})
|
public ApiResponse goodsOrderSettlement() {
|
goodsorderService.goodsOrderSettlement(getMemberId());
|
return ApiResponse.success("操作成功");
|
}
|
|
@LoginRequired
|
@ApiOperation(value = "获取字典值信息", notes = "小程序端")
|
@GetMapping("/getSysDict")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
@ApiImplicitParam(paramType = "query", dataType = "String", name = "dicCode", value = "字典编码", required = true),
|
@ApiImplicitParam(paramType = "query", dataType = "String", name = "label", value = "字典数值编码", required = true)
|
})
|
public ApiResponse<SystemDictData> getSysDict(@RequestParam String dicCode, @RequestParam String label) {
|
return ApiResponse.success("查询成功",systemDictDataBiz.queryByCode(dicCode,label));
|
}
|
|
@ApiOperation(value = "电车站点还车", notes = "电车站点还车")
|
@PostMapping("/backElecBike")
|
public ApiResponse backElecBike(@RequestBody BackElecBikeRequest param) {
|
param.setMemberId(getMemberId());
|
jtt808Service.backElecBike(param);
|
return ApiResponse.success( null);
|
}
|
@ApiOperation(value = "电车临时停车", notes = "电车临时停车")
|
@PostMapping("/pauseElecBike")
|
public ApiResponse pauseElecBike(@RequestBody BackElecBikeRequest param) {
|
param.setMemberId(getMemberId());
|
jtt808Service.pauseElecBike(param);
|
return ApiResponse.success( null);
|
}
|
}
|