| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189 |
- package com.zhongzheng.controller.goods;
- import cn.hutool.core.bean.BeanUtil;
- import cn.hutool.core.lang.Validator;
- import com.zhongzheng.common.annotation.Log;
- import com.zhongzheng.common.core.controller.BaseController;
- import com.zhongzheng.common.core.domain.AjaxResult;
- import com.zhongzheng.common.core.page.TableDataInfo;
- import com.zhongzheng.common.enums.BusinessType;
- import com.zhongzheng.common.utils.poi.ExcelUtil;
- import com.zhongzheng.modules.bank.service.IQuestionService;
- import com.zhongzheng.modules.exam.bo.ExamNumberGoodsQueryBo;
- import com.zhongzheng.modules.exam.vo.ExamNumberGoodsVo;
- import com.zhongzheng.modules.goods.bo.*;
- import com.zhongzheng.modules.goods.service.IGoodsAttachedService;
- import com.zhongzheng.modules.goods.service.IGoodsCourseService;
- import com.zhongzheng.modules.goods.service.IGoodsService;
- import com.zhongzheng.modules.goods.vo.*;
- import com.zhongzheng.modules.order.service.IOrderBusinessConfigGoodsService;
- import com.zhongzheng.modules.order.vo.CompanyOrderBusinessConfigGoodsVo;
- import com.zhongzheng.modules.order.vo.OrderBusinessConfigGoodsVo;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import lombok.RequiredArgsConstructor;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.security.access.prepost.PreAuthorize;
- import org.springframework.web.bind.annotation.*;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.List;
- import java.util.stream.Collectors;
- /**
- * 商品Controller
- *
- * @author hjl
- * @date 2021-10-12
- */
- @Api(value = "商品控制器", tags = {"商品管理"})
- @RequiredArgsConstructor(onConstructor_ = @Autowired)
- @RestController
- @RequestMapping("bs/BsGoods")
- public class GoodsController extends BaseController {
- private final IGoodsService iGoodsService;
- private final IGoodsAttachedService iGoodsAttachedService;
- private final IQuestionService iQuestionService;
- private final IOrderBusinessConfigGoodsService iOrderBusinessConfigGoodsService;
- private final IGoodsCourseService iGoodsCourseService;
- /**
- * 查询商品列表
- */
- @ApiOperation("查询商品列表")
- @PreAuthorize("@ss.hasPermi('system:goods:list')")
- @GetMapping("/goodsList")
- public TableDataInfo<CompanyGoodsVo> list( GoodsQueryBo bo) {
- startPage();
- List<CompanyGoodsVo> list = iGoodsService.selectBsGoodList(bo);
- return getDataTable(list);
- }
- /**
- * 查询商品宝列表
- */
- @ApiOperation("查询商品列表")
- @PreAuthorize("@ss.hasPermi('system:goods:list')")
- @GetMapping("/getBsGoodlist")
- public TableDataInfo<CompanyOrderBusinessConfigGoodsVo> getBsGoodList(GoodsQueryBo bo) {
- startPage();
- List<CompanyOrderBusinessConfigGoodsVo> bsGoodsList = iGoodsService.getBsGoodsPackageList(bo);
- return getDataTable(bsGoodsList);
- }
- @ApiOperation("查询商品列表To录单")
- @PreAuthorize("@ss.hasPermi('system:goods:list')")
- @GetMapping("/listToInput")
- public TableDataInfo<GoodsVo> listToInput(GoodsQueryBo bo) {
- startPage();
- List<GoodsVo> list = iGoodsService.selectListToInput(bo);
- return getDataTable(list);
- }
- @ApiOperation("获取商品规格模板列表")
- @GetMapping("/spec/list/{goodsId}")
- public AjaxResult<List<GoodsSpecTemplateVo>> getSpecTemplateList(@PathVariable("goodsId") Long goodsId) {
- List<GoodsSpecTemplateVo> list = iGoodsService.getSpecTemplateList(goodsId);
- return AjaxResult.success(list);
- }
- @ApiOperation("取消商品默认规格模板")
- @PostMapping("/cancel/spec")
- public AjaxResult<Void> cancelSpecTemplate(@RequestBody GoodsSpecTempEditBo bo) {
- return toAjax(iGoodsService.cancelSpecTemplate(bo) ? 1 : 0);
- }
- /**
- * 获取商品详细信息
- */
- @ApiOperation("获取商品详细信息")
- @PreAuthorize("@ss.hasPermi('system:goods:query')")
- @GetMapping("/{goodsId}")
- public AjaxResult<GoodsVo> getInfo(@PathVariable("goodsId") Long goodsId) {
- return AjaxResult.success(iGoodsService.selectDetail(goodsId));
- }
- @ApiOperation("新增讲义商品")
- @PreAuthorize("@ss.hasPermi('system:goods:add')")
- @Log(title = "商品", businessType = BusinessType.INSERT)
- @PostMapping("/handouts")
- public AjaxResult<Void> addHandouts(@RequestBody GoodsAddBo bo) {
- return toAjax(iGoodsService.insertHandoutsByAddBo(bo)>0 ? 1 : 0);
- }
- /**
- * 查询题目业务层次关系列表
- */
- @ApiOperation("查询题库商品试卷列表")
- @PreAuthorize("@ss.hasPermi('system:business:list')")
- @GetMapping("/bank/list")
- public AjaxResult<List<GoodsAttachedVo>> bankList(GoodsAttachedQueryBo bo) {
- List<GoodsAttachedVo> list = iGoodsAttachedService.getList(bo);
- return AjaxResult.success(list);
- }
- /**
- * 查询考试配置绑定商品列表
- */
- @ApiOperation("查询前培或补考商品列表")
- @PreAuthorize("@ss.hasPermi('system:goods:list')")
- @GetMapping("/listGoods")
- public TableDataInfo<ExamNumberGoodsVo> listGoods(ExamNumberGoodsQueryBo bo) {
- startPage();
- List<ExamNumberGoodsVo> list = iGoodsService.listGoods(bo);
- return getDataTable(list);
- }
- /**
- * 查询免费题库商品列表
- */
- @ApiOperation("查询免费题库商品列表")
- @GetMapping("/listFreeGoodsList")
- public TableDataInfo<GoodsUserQuestionVo> listFreeGoodsList(GoodsQueryBo bo) {
- startPage();
- List<GoodsUserQuestionVo> list = iQuestionService.listFreeGoodsList(bo);
- return getDataTable(list);
- }
- /**
- * 查询免费题库商品列表
- */
- @ApiOperation("查询用户题库商品列表")
- @GetMapping("/listBankGoodsList")
- public TableDataInfo<GoodsUserQuestionVo> listBankGoodsList(GoodsQueryBo bo) {
- startPage();
- List<GoodsUserQuestionVo> list = iQuestionService.listBankGoodsList(bo);
- return getDataTable(list);
- }
- /**
- * 获取题库商品每日一练试卷列表
- */
- @ApiOperation("获取题库商品每日一练试卷列表")
- @GetMapping("/getBankGoodsExamList/{goodsId}")
- public AjaxResult<List<BankGoodsExamVo>> getBankGoodsExamList(@PathVariable("goodsId") Long goodsId) {
- List<BankGoodsExamVo> list = iQuestionService.getBankGoodsExamList(goodsId);
- return AjaxResult.success(list);
- }
- @ApiOperation("查询商品普通列表")
- @PreAuthorize("@ss.hasPermi('system:goods:list')")
- @GetMapping("/queryList")
- public AjaxResult<List<GoodsVo>> queryList(GoodsQueryBo bo) {
- bo.setStatus(new ArrayList<Integer>(){{
- add(1);
- }});
- List<GoodsVo> list = iGoodsService.queryList(bo);
- return AjaxResult.success(list);
- }
- }
|