package com.ruoyi.order.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.TAppUser; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.order.api.model.*; import com.ruoyi.order.api.query.TOrderAppealQuery; import com.ruoyi.order.api.vo.TOrderAppealVO; import com.ruoyi.order.dto.ManageFeedbackDto; import com.ruoyi.order.dto.ManageOrderAppealQuery; import com.ruoyi.order.service.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.Arrays; /** *

* 前端控制器 *

* * @author xiaochen * @since 2024-08-07 */ @RestController @RequestMapping("/t-order-appeal") public class TOrderAppealController { private final TOrderAppealService orderAppealService; private final TokenService tokenService; @Resource private AppUserClient appUserClient; @Resource private TChargingOrderService chargingOrderService; @Resource private TShoppingOrderService shoppingOrderService; @Resource private TExchangeOrderService exchangeOrderService; @Resource private TVipOrderService vipOrderService; @Autowired public TOrderAppealController(TOrderAppealService orderAppealService, TokenService tokenService) { this.orderAppealService = orderAppealService; this.tokenService = tokenService; } @ApiOperation(tags = {"后台-订单管理-订单申诉"},value = "列表") @PostMapping(value = "/manage/pageList") public R> managePageList(@RequestBody ManageOrderAppealQuery manageOrderAppealQuery) { Page page = orderAppealService.lambdaQuery().eq(manageOrderAppealQuery.getStatus() != null, TOrderAppeal::getStatus, manageOrderAppealQuery.getStatus()) .like(manageOrderAppealQuery.getCode() != null, TOrderAppeal::getCode, manageOrderAppealQuery.getCode()) .like(manageOrderAppealQuery.getPhone() != null, TOrderAppeal::getPhone, manageOrderAppealQuery.getPhone()) .eq(manageOrderAppealQuery.getOrderType() != null, TOrderAppeal::getOrderType, manageOrderAppealQuery.getOrderType()) .in(TOrderAppeal::getOrderType, 1, 2).page(Page.of(manageOrderAppealQuery.getPageCurr(), manageOrderAppealQuery.getPageSize())); for (TOrderAppeal record : page.getRecords()) { record.setUid(record.getId().toString()); } return R.ok(page); } @ApiOperation(tags = {"后台-订单管理-订单申诉"},value = "删除") @DeleteMapping (value = "/manage/delete") public R> delete(String ids) { orderAppealService.removeBatchByIds(Arrays.asList(ids.split(","))); return R.ok(); } @ApiOperation(tags = {"后台-订单管理-订单申诉"},value = "后台-订单管理-订单申诉") @PostMapping(value = "/manage/feedback") public R manageFeedback(@RequestBody ManageFeedbackDto manageFeedbackDto) { TOrderAppeal byId = orderAppealService.getById(manageFeedbackDto.getId()); byId.setFeedback(manageFeedbackDto.getFeedback()); byId.setStatus(2); orderAppealService.updateById(byId); return R.ok(); } /** * 查询订单申诉列表 */ @ApiOperation(tags = {"小程序-订单申诉"},value = "查询订单申诉分页列表") @PostMapping(value = "/pageList") public AjaxResult> pageList(@RequestBody TOrderAppealQuery query) { Long userId = tokenService.getLoginUserApplet().getUserId(); query.setAppUserId(userId); return AjaxResult.ok(orderAppealService.pageList(query)); } /** * 查询订单申诉详情 */ @GetMapping(value = "/getDetailById") @ApiOperation(tags = {"小程序-订单申诉"},value = "查询订单申诉详情") public AjaxResult getDetailById(String id) { return AjaxResult.ok(orderAppealService.getDetailById(id)); } @ResponseBody @PostMapping(value = "/addOrderAppeal") @ApiOperation(value = "申诉订单", tags = {"小程序-充电记录(个人中心)"}) public AjaxResult addOrderAppeal(@RequestBody TOrderAppeal orderAppeal){ Long appUserId = tokenService.getLoginUserApplet().getUserId(); TAppUser data = appUserClient.getUserById(appUserId).getData(); orderAppeal.setAppUserId(appUserId); orderAppeal.setStatus(1); orderAppeal.setPhone(data.getPhone()); if (orderAppeal.getOrderType()==1){ TChargingOrder byId = chargingOrderService.getById(orderAppeal.getOrderId()); orderAppeal.setCode(byId.getCode()); }else if(orderAppeal.getOrderType()==2){ TShoppingOrder byId = shoppingOrderService.getById(orderAppeal.getOrderId()); orderAppeal.setCode(byId.getCode()); }else if(orderAppeal.getOrderType()==3){ TExchangeOrder byId = exchangeOrderService.getById(orderAppeal.getOrderId()); orderAppeal.setCode(byId.getCode()); }else if(orderAppeal.getOrderType()==4){ TVipOrder byId = vipOrderService.getById(orderAppeal.getOrderId()); orderAppeal.setCode(byId.getCode()); } orderAppealService.save(orderAppeal); return AjaxResult.success(); } }