mitao
2024-07-27 d5a62c975afbaff26d17b61fa7b9fde7e2cb035d
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java
@@ -3,19 +3,33 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.auction.controller.forepart.DTO.ForepartAuctionBidRecordDTO;
import com.ruoyi.auction.controller.forepart.VO.ForepartAuctionSalesroomVO;
import com.ruoyi.auction.domain.pojo.AuctionSalesroom;
import com.ruoyi.auction.domain.pojo.AuctionVideo;
import com.ruoyi.auction.mapper.AuctionGoodsMapper;
import com.ruoyi.auction.service.IAuctionGoodsService;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.system.api.domain.AuctionGoods;
import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO;
import com.ruoyi.system.api.domain.dto.ForepartAuctionBidRecordDTO;
import com.ruoyi.auction.service.IAuctionSalesroomGoodsService;
import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO;
import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomDTO;
import com.ruoyi.system.api.domain.vo.ForepartAuctionSalesroomVO;
import com.ruoyi.system.api.domain.vo.MemberAuctionSalesroomInfoVO;
import com.ruoyi.system.api.domain.vo.MemberAuctionSalesroomVO;
import com.ruoyi.system.api.domain.AuctionSalesroom;
import com.ruoyi.auction.service.IAuctionSalesroomService;
import com.ruoyi.auction.service.IAuctionVideoService;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.system.api.domain.SysUser;
import com.ruoyi.system.api.feignClient.SysUserClient;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.system.api.domain.AppMiniLoginVO;
import com.ruoyi.system.api.domain.dto.AppMiniLoginDTO;
import com.ruoyi.system.api.domain.vo.PayInfoVO;
import com.ruoyi.system.api.domain.vo.WdMemberAuctionSalesroomVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import javax.annotation.Resource;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
/**
@@ -28,21 +42,27 @@
 */
@RestController
@RequestMapping("/forepart/auction-salesroom")
@Api(value = "拍卖场相关接口", tags = "拍卖场相关接口", description = "拍卖场相关接口")
public class ForepartAuctionSalesroomController {
    @Resource
    private IAuctionSalesroomService iAuctionSalesroomService;
    @Resource
    private IAuctionSalesroomGoodsService iAuctionSalesroomGoodsService;
    @Resource
    private AuctionGoodsMapper AuctionGoodsMapper;
    /**
     * 拍卖大屏获取拍卖信息
     *
     */
    @RequestMapping("getAuctionBidRecordList")
    @ResponseBody
    @ApiOperation(value = "拍卖大屏获取拍卖信息")
    public R<List<AuctionSalesroom>> getAuctionBidRecordList(@PathVariable("salesroomName") String salesroomName) {
        return R.ok(iAuctionSalesroomService.getAuctionBidRecordList(salesroomName));
   @PostMapping("/getAuctionBidRecordList")
    @ApiOperation(value = "拍卖大屏-获取拍卖信息")
    public R<List<AuctionSalesroom>> getAuctionBidRecordList(@RequestBody AuctionSalesroomDTO ctionSalesroomGoodsDTO) {
        return R.ok(iAuctionSalesroomService.getAuctionBidRecordList(ctionSalesroomGoodsDTO));
    }
@@ -50,22 +70,107 @@
     * 暖场视频or封面海报
     *
     */
    @RequestMapping("/getBaaner")
    @ResponseBody
    @ApiOperation(value = " 暖场视频or封面海报")
    public R<ForepartAuctionSalesroomVO> getBaaner(@PathVariable("salesroomId") Integer SalesroomId) {
        return R.ok(iAuctionSalesroomService.getBaaner(SalesroomId));
   @PostMapping("/getBaaner")
    @ApiOperation(value = "拍卖大屏-暖场视频or封面海报")
    public R<ForepartAuctionSalesroomVO> getBaaner(@RequestBody AuctionSalesroomDTO ctionSalesroomGoodsDTO) {
        return R.ok(iAuctionSalesroomService.getBaaner(ctionSalesroomGoodsDTO));
    }
    @RequestMapping("/getAuctionBidRecordOne")
    @ResponseBody
    @ApiOperation(value = "扫码二维码获取拍卖场信息")
   @PostMapping("/getAuctionBidRecordOne")
    @ApiOperation(value = "拍卖师端-扫码二维码获取拍卖场信息")
    public R<AuctionSalesroom> getAuctionBidRecordOne(@RequestBody ForepartAuctionBidRecordDTO arepartAuctionBidRecordDTO) {
        return R.ok(iAuctionSalesroomService.getAuctionBidRecordOne(arepartAuctionBidRecordDTO));
    }
    @PostMapping("/actionMiniLogin")
    @ApiOperation(value = "拍卖师端-第三方登陸")
    public R<AppMiniLoginVO> actionMiniLogin(@RequestBody AppMiniLoginDTO appMiniLoginDto) {
        return R.ok(iAuctionSalesroomService.actionMiniLogin(appMiniLoginDto));
    }
    @PostMapping("/isMiniLogin")
    @ApiOperation(value = "拍卖师端-判断是否是拍卖师")
    public R<AppMiniLoginVO> isMiniLogin(@RequestBody AppMiniLoginDTO appMiniLoginDto) {
        return R.ok(iAuctionSalesroomService.isMiniLogin(appMiniLoginDto));
    }
   @PostMapping("/getMemberAuctionSalesroomList")
    @ApiOperation(value = "用户端-拍卖场信息列表")
    public R<PageDTO<MemberAuctionSalesroomVO>> getMemberAuctionSalesroomList(@RequestBody MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO) {
        return R.ok(iAuctionSalesroomService.getMemberAuctionSalesroomList(MemberAuctionSalesroomDTO));
    }
   @PostMapping("/getMemberAuctionSalesroomInfo")
    @ApiOperation(value = "用户端-拍卖场信息详情")
    public R<MemberAuctionSalesroomInfoVO> getMemberAuctionSalesroomInfo(@RequestBody MemberAuctionSalesroomDTO memberAuctionSalesroomDTO) {
        return R.ok(iAuctionSalesroomService.getMemberAuctionSalesroomInfo(memberAuctionSalesroomDTO));
    }
   @PostMapping("/getMemberAuctionSalesroomSweep")
    @ApiOperation(value = "用户端-扫一扫拍卖场信息")
    public R<MemberAuctionSalesroomVO> getMemberAuctionSalesroomSweep(@RequestBody MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO) {
        return R.ok(iAuctionSalesroomService.getMemberAuctionSalesroomSweep(MemberAuctionSalesroomDTO));
    }
   @PostMapping("/SaveSignUpNow")
    @ApiOperation(value = "用户端-拍卖立即报名")
    public R<PayInfoVO> SaveSignUpNow(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) {
      if (memberAuctionSalesroomBondDTO.getBondType()==1){
          AuctionGoods auctionGoods = AuctionGoodsMapper.selectById(memberAuctionSalesroomBondDTO.getAuctionGoodsId());
          if (auctionGoods.getListingStatus().getCode()==1){
              throw new ServiceException("商品拍卖下线");
          }
      }else{
          AuctionSalesroom byId = iAuctionSalesroomService.getById(memberAuctionSalesroomBondDTO.getAuctionSalesroomId());
          if(byId==null){
              LambdaQueryWrapper<AuctionSalesroom> wrapper= Wrappers.lambdaQuery();
              wrapper.eq(AuctionSalesroom::getAuctionSalesroomNo,memberAuctionSalesroomBondDTO.getAuctionSalesroomId());
              wrapper.eq(AuctionSalesroom::getDelFlag,0);
              byId =iAuctionSalesroomService.getOne(wrapper);
              memberAuctionSalesroomBondDTO.setAuctionSalesroomId(byId.getId());
          }
      }
       PayInfoVO payInfoVO = iAuctionSalesroomService.SaveSignUpNow(memberAuctionSalesroomBondDTO);
       return R.ok(payInfoVO);
    }
   @PostMapping("/CancelSignUpNow")
    @ApiOperation(value = "用户端-拍卖取消报名")
    public R CancelSignUpNow(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) {
        iAuctionSalesroomService.CancelSignUpNow(memberAuctionSalesroomBondDTO);
        return R.ok( );
    }
    /**
     * 拍卖师端拍卖场立即开始
     *
     */
    @PostMapping("/auctionSalesroomStart")
    @ApiOperation(value = "拍卖师端-拍卖场立即开始")
    public R auctionSalesroomStart(@RequestBody AuctionSalesroomDTO ationSalesroomGoodsDTO) {
        iAuctionSalesroomGoodsService.auctionSalesroomStart(ationSalesroomGoodsDTO);
        return R.ok();
    }
    /**
     * 拍卖师端拍卖场立即开始
     *
     */
   @PostMapping("/auctionSalesroomEnd")
    @ApiOperation(value = "拍卖师端-拍卖场立即结束")
    public R auctionSalesroomEnd(@RequestBody AuctionSalesroomDTO ationSalesroomGoodsDTO) {
        iAuctionSalesroomGoodsService.auctionSalesroomEnd(ationSalesroomGoodsDTO);
        return R.ok();
    }
   @PostMapping("/getWdAuctionSalesroomList")
    @ApiOperation(value = "用户端-我的拍卖-我的加入了的拍卖场")
    public R<PageDTO<WdMemberAuctionSalesroomVO>> getWdAuctionSalesroomList(@RequestBody MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO) {
        return R.ok(iAuctionSalesroomService.getWdAuctionSalesroomList(MemberAuctionSalesroomDTO));
    }
}