首页>代码>springboot2+mybatis+thymeleaf+layui整合开发物流仓库后台管理系统>/src/main/java/com/dev/warehouse/bus/controller/GoodsController.java
001package com.dev.warehouse.bus.controller;
002 
003 
004import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
005import com.baomidou.mybatisplus.core.metadata.IPage;
006import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
007import com.dev.warehouse.bus.entity.Goods;
008import com.dev.warehouse.bus.entity.Provider;
009import com.dev.warehouse.bus.service.IGoodsService;
010import com.dev.warehouse.bus.service.IProviderService;
011import com.dev.warehouse.bus.vo.GoodsVo;
012import com.dev.warehouse.sys.common.AppFileUtils;
013import com.dev.warehouse.sys.common.Constast;
014import com.dev.warehouse.sys.common.DataGridView;
015import com.dev.warehouse.sys.common.ResultObj;
016import org.apache.commons.lang3.StringUtils;
017import org.springframework.beans.factory.annotation.Autowired;
018import org.springframework.web.bind.annotation.RequestMapping;
019import org.springframework.web.bind.annotation.RestController;
020 
021import java.util.List;
022 
023@RestController
024@RequestMapping("/goods")
025public class GoodsController {
026 
027    @Autowired
028    private IGoodsService goodsService;
029 
030    @Autowired
031    private IProviderService providerService;
032 
033    /**
034     * 查询商品
035     * @param goodsVo
036     * @return
037     */
038    @RequestMapping("loadAllGoods")
039    public DataGridView loadAllGoods(GoodsVo goodsVo){
040        IPage<Goods> page = new Page<>(goodsVo.getPage(),goodsVo.getLimit());
041        QueryWrapper<Goods> queryWrapper = new QueryWrapper();
042        queryWrapper.eq(goodsVo.getProviderid()!=null&&goodsVo.getProviderid()!=0,"providerid",goodsVo.getProviderid());
043        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getGoodsname()),"goodsname",goodsVo.getGoodsname());
044        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getProductcode()),"productcode",goodsVo.getProductcode());
045        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getPromitcode()),"promitcode",goodsVo.getPromitcode());
046        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getDescription()),"description",goodsVo.getDescription());
047        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getSize()),"size",goodsVo.getSize());
048        queryWrapper.orderByDesc("id");
049        goodsService.page(page,queryWrapper);
050        List<Goods> records = page.getRecords();
051        for (Goods goods : records) {
052            Provider provider = providerService.getById(goods.getProviderid());
053            if (null!=provider){
054                goods.setProvidername(provider.getProvidername());
055            }
056        }
057        return new DataGridView(page.getTotal(),page.getRecords());
058    }
059 
060    /**
061     * 添加商品
062     * @param goodsVo
063     * @return
064     */
065    @RequestMapping("addGoods")
066    public ResultObj addGoods(GoodsVo goodsVo){
067        try {
068            if (goodsVo.getGoodsimg()!=null&&goodsVo.getGoodsimg().endsWith("_temp")){
069                String newName = AppFileUtils.renameFile(goodsVo.getGoodsimg());
070                goodsVo.setGoodsimg(newName);
071            }
072            goodsService.save(goodsVo);
073            return ResultObj.ADD_SUCCESS;
074        } catch (Exception e) {
075            e.printStackTrace();
076            return ResultObj.ADD_ERROR;
077        }
078    }
079 
080    /**
081     * 修改商品
082     * @param goodsVo
083     * @return
084     */
085    @RequestMapping("updateGoods")
086    public ResultObj updateGoods(GoodsVo goodsVo){
087        try {
088            //商品图片不是默认图片
089            if (!(goodsVo.getGoodsimg()!=null&&goodsVo.getGoodsimg().equals(Constast.DEFAULT_IMG))){
090                if (goodsVo.getGoodsimg().endsWith("_temp")){
091                    String newName = AppFileUtils.renameFile(goodsVo.getGoodsimg());
092                    goodsVo.setGoodsimg(newName);
093                    //删除原先的图片
094                    String oldPath = goodsService.getById(goodsVo.getId()).getGoodsimg();
095                    AppFileUtils.removeFileByPath(oldPath);
096                }
097            }
098            goodsService.updateById(goodsVo);
099            return ResultObj.UPDATE_SUCCESS;
100        } catch (Exception e) {
101            e.printStackTrace();
102            return ResultObj.UPDATE_ERROR;
103        }
104    }
105 
106    /**
107     * 删除商品
108     * @param id
109     * @return
110     */
111    @RequestMapping("deleteGoods")
112    public ResultObj deleteGoods(Integer id,String goodsimg){
113        try {
114            //删除商品的图片
115            AppFileUtils.removeFileByPath(goodsimg);
116            goodsService.removeById(id);
117            return ResultObj.DELETE_SUCCESS;
118        } catch (Exception e) {
119            e.printStackTrace();
120            return ResultObj.DELETE_ERROR;
121        }
122    }
123 
124    /**
125     * 加载所有可用的商品
126     * @return
127     */
128    @RequestMapping("loadAllGoodsForSelect")
129    public DataGridView loadAllGoodsForSelect(){
130        QueryWrapper<Goods> queryWrapper = new QueryWrapper<Goods>();
131        queryWrapper.eq("available",Constast.AVAILABLE_TRUE);
132        List<Goods> list = goodsService.list(queryWrapper);
133        for (Goods goods : list) {
134            Provider provider = providerService.getById(goods.getProviderid());
135            if (null!=provider){
136                goods.setProvidername(provider.getProvidername());
137            }
138        }
139        return new DataGridView(list);
140    }
141 
142    /**
143     * 根据供应商ID查询商品信息
144     * @param providerid    供应商ID
145     * @return
146     */
147    @RequestMapping("loadGoodsByProviderId")
148    public DataGridView loadGoodsByProviderId(Integer providerid){
149        QueryWrapper<Goods> queryWrapper = new QueryWrapper<Goods>();
150        queryWrapper.eq("available",Constast.AVAILABLE_TRUE);
151        queryWrapper.eq(providerid!=null,"providerid",providerid);
152        List<Goods> list = goodsService.list(queryWrapper);
153        for (Goods goods : list) {
154            Provider provider = providerService.getById(goods.getProviderid());
155            if (null!=provider){
156                goods.setProvidername(provider.getProvidername());
157            }
158        }
159        return new DataGridView(list);
160    }
161 
162 
163 
164}
最近下载更多
hubugai1  LV11 4月24日
sshiqi  LV2 2024年12月12日
haomc052829  LV4 2024年12月3日
微信网友_6377331253415936  LV3 2024年11月15日
微信网友_7134912998903808  LV15 2024年9月2日
gnnhka  LV10 2024年7月8日
tt867309  LV1 2024年7月7日
TY0165  LV20 2024年6月23日
胡闹的番茄精  LV2 2024年6月17日
heweimin  LV13 2024年5月20日
最近浏览更多
myl227 7月21日
暂无贡献等级
andywahaha1  LV1 7月14日
limufu  LV1 6月17日
暂无贡献等级
2225906816 5月26日
暂无贡献等级
lkke23047  LV1 5月26日
sk123456 4月11日
暂无贡献等级
DanBMZ 3月27日
暂无贡献等级
aaappp  LV1 3月25日
xiao小果  LV13 3月2日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友