package com.panzhihua.service_community.service.impl; import com.panzhihua.common.model.vos.common.ComBatteryCommoditySpecsVo; import com.panzhihua.common.model.vos.common.ComBatteryCommodityVo; import com.panzhihua.common.utlis.Snowflake; import com.panzhihua.service_community.dao.ComBatteryCommoditySpecsMapper; import com.panzhihua.service_community.entity.ComBatteryCommodity; import com.panzhihua.service_community.dao.ComBatteryCommodityMapper; import com.panzhihua.service_community.service.ComBatteryCommodityService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.BeanUtils; import com.panzhihua.common.model.dtos.common.*; import com.panzhihua.common.model.vos.R; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import javax.annotation.Resource; import java.util.List; /** * title: 电动车商城-商品表表服务实现类 *

* projectName 成都呐喊信息技术有限公司-智慧社区项目 *

* description: 电动车商城-商品表表服务实现类 * * @author lyq * @date 2022-03-28 14:59:59 */ @Service("comBatteryCommodityService") public class ComBatteryCommodityServiceImpl extends ServiceImpl implements ComBatteryCommodityService { @Resource private ComBatteryCommoditySpecsMapper commoditySpecsMapper; /** * description queryByPage 分页查询 * * @param comBatteryCommodity 请求参数 * @return 分页查询列表数据 * @author lyq * @date 2022-03-28 14:59:59 */ @Override public R queryByPage(PageComBatteryCommodityDto comBatteryCommodity) { return R.ok(this.baseMapper.queryAllByLimit(comBatteryCommodity, new Page(comBatteryCommodity.getPageNum(), comBatteryCommodity.getPageSize()))); } /** * description insert 新增数据 * * @param comBatteryCommodity 请求参数 * @return 新增结果 * @author lyq * @date 2022-03-28 14:59:59 */ @Override public R insert(AddComBatteryCommodityDto comBatteryCommodity) { ComBatteryCommodity entity = new ComBatteryCommodity(); BeanUtils.copyProperties(comBatteryCommodity, entity); entity.setCode("GD" + Snowflake.getId()); if (this.baseMapper.insert(entity) > 0) { return R.ok(); } return R.fail("添加失败"); } /** * description update 修改数据 * * @param editDto 请求参数 * @return 修改结果 * @author lyq * @date 2022-03-28 14:59:59 */ @Override public R update(EditComBatteryCommodityDto editDto) { ComBatteryCommodity entity = this.baseMapper.selectById(editDto.getId()); if (entity == null) { return R.fail("未查询到该记录"); } BeanUtils.copyProperties(editDto, entity); if (this.baseMapper.updateById(entity) > 0) { return R.ok(); } return R.fail("修改失败"); } /** * description deleteById 通过主键删除数据 * * @param id 主键id * @return 删除结果 * @author lyq * @date 2022-03-28 14:59:59 */ @Override public R deleteById(Long id) { ComBatteryCommodity entity = new ComBatteryCommodity(); entity.setId(id); entity.setIsDel(ComBatteryCommodity.IsDel.YES); if (this.baseMapper.updateById(entity) > 0) { return R.ok(); } return R.fail("删除失败"); } /** * description detailById 查询详情 * * @param id 主键id * @return 详情数据 * @author lyq * @date 2022-03-28 14:59:59 */ @Override public R detailById(Long id) { ComBatteryCommodityVo commodityVo = this.baseMapper.queryById(id); if(commodityVo != null){ //查询商品规格列表 List commoditySpecsVoList = commoditySpecsMapper.queryAllByCommodityId(commodityVo.getId()); commodityVo.setCommoditySpecsVoList(commoditySpecsVoList); } return R.ok(commodityVo); } /** * description queryByPage 查询列表 * * @param comBatteryCommodity 请求参数 * @return 列表数据 * @author lyq * @date 2022-03-28 14:59:59 */ @Override public R queryByList(PageComBatteryCommodityDto comBatteryCommodity) { return R.ok(this.baseMapper.queryAllByList(comBatteryCommodity)); } /** * 修改商品状态 * @param id 商品id * @param status 商品状态 * @return 修改结果 */ @Override public R updateStatus(Long id, Integer status) { ComBatteryCommodity entity = new ComBatteryCommodity(); entity.setId(id); entity.setStatus(status); if (this.baseMapper.updateById(entity) > 0) { return R.ok(); } return R.fail("修改失败"); } /** * 小程序查询商品列表 * @param comBatteryCommodity 请求参数 * @return 商品列表 */ @Override public R queryByAppletsPage(PageComBatteryCommodityDto comBatteryCommodity) { return R.ok(this.baseMapper.queryByAppletsPage(comBatteryCommodity, new Page(comBatteryCommodity.getPageNum(), comBatteryCommodity.getPageSize()))); } }