From aba49c58cbb55d8b42aa7c8b960d3b7ca6962bc9 Mon Sep 17 00:00:00 2001 From: zhh Date: Tue, 22 May 2018 10:19:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=95=86=E5=93=81=E5=B1=9E=E6=80=A7=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=88=A0=E9=99=A4=E6=95=B0=E9=87=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 5 ++- .../service/PmsProductAttributeService.java | 3 ++ .../impl/PmsProductAttributeServiceImpl.java | 37 ++++++++++++++++++- 3 files changed, 42 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 0ca6f26..0b50201 100644 --- a/README.md +++ b/README.md @@ -50,8 +50,11 @@ SpringSecurity登录改为Restful形式 | ✔ JWT登录、注册、获取token | ✔ JTA事务处理 | ✔ 集成单元测试 | ✔ -OSS上传功能 | +OSS上传功能 | ✔ +优化po和dto的定义使用 | SpringSecurity权限管理功能 | +Elasticsearch搜索功能 | +MongoDb 日志存储功能 | ### 后台功能 diff --git a/mall-admin/src/main/java/com/macro/mall/service/PmsProductAttributeService.java b/mall-admin/src/main/java/com/macro/mall/service/PmsProductAttributeService.java index 2326eb6..c0c34db 100644 --- a/mall-admin/src/main/java/com/macro/mall/service/PmsProductAttributeService.java +++ b/mall-admin/src/main/java/com/macro/mall/service/PmsProductAttributeService.java @@ -2,6 +2,7 @@ package com.macro.mall.service; import com.macro.mall.dto.PmsProductAttributeParam; import com.macro.mall.model.PmsProductAttribute; +import org.springframework.transaction.annotation.Transactional; import java.util.List; @@ -21,6 +22,7 @@ public interface PmsProductAttributeService { /** * 添加商品属性 */ + @Transactional int create(PmsProductAttributeParam pmsProductAttributeParam); /** @@ -33,5 +35,6 @@ public interface PmsProductAttributeService { */ PmsProductAttribute getItem(Long id); + @Transactional int delete(List ids); } diff --git a/mall-admin/src/main/java/com/macro/mall/service/impl/PmsProductAttributeServiceImpl.java b/mall-admin/src/main/java/com/macro/mall/service/impl/PmsProductAttributeServiceImpl.java index 381ef07..7707039 100644 --- a/mall-admin/src/main/java/com/macro/mall/service/impl/PmsProductAttributeServiceImpl.java +++ b/mall-admin/src/main/java/com/macro/mall/service/impl/PmsProductAttributeServiceImpl.java @@ -2,8 +2,10 @@ package com.macro.mall.service.impl; import com.github.pagehelper.PageHelper; import com.macro.mall.dto.PmsProductAttributeParam; +import com.macro.mall.mapper.PmsProductAttributeCategoryMapper; import com.macro.mall.mapper.PmsProductAttributeMapper; import com.macro.mall.model.PmsProductAttribute; +import com.macro.mall.model.PmsProductAttributeCategory; import com.macro.mall.model.PmsProductAttributeExample; import com.macro.mall.service.PmsProductAttributeService; import org.springframework.beans.BeanUtils; @@ -20,6 +22,8 @@ import java.util.List; public class PmsProductAttributeServiceImpl implements PmsProductAttributeService { @Autowired private PmsProductAttributeMapper productAttributeMapper; + @Autowired + private PmsProductAttributeCategoryMapper productAttributeCategoryMapper; @Override public List getList(Long cid, Integer type, Integer pageSize, Integer pageNum) { @@ -34,7 +38,16 @@ public class PmsProductAttributeServiceImpl implements PmsProductAttributeServic public int create(PmsProductAttributeParam pmsProductAttributeParam) { PmsProductAttribute pmsProductAttribute = new PmsProductAttribute(); BeanUtils.copyProperties(pmsProductAttributeParam, pmsProductAttribute); - return productAttributeMapper.insertSelective(pmsProductAttribute); + int count = productAttributeMapper.insertSelective(pmsProductAttribute); + //新增商品属性以后需要更新商品属性分类数量 + PmsProductAttributeCategory pmsProductAttributeCategory = productAttributeCategoryMapper.selectByPrimaryKey(pmsProductAttribute.getProductAttributeCategoryId()); + if(pmsProductAttribute.getType()==0){ + pmsProductAttributeCategory.setAttributeCount(pmsProductAttributeCategory.getAttributeCount()+1); + }else if(pmsProductAttribute.getType()==1){ + pmsProductAttributeCategory.setParamCount(pmsProductAttributeCategory.getParamCount()+1); + } + productAttributeCategoryMapper.updateByPrimaryKey(pmsProductAttributeCategory); + return count; } @Override @@ -52,8 +65,28 @@ public class PmsProductAttributeServiceImpl implements PmsProductAttributeServic @Override public int delete(List ids) { + //获取分类 + PmsProductAttribute pmsProductAttribute = productAttributeMapper.selectByPrimaryKey(ids.get(0)); + Integer type = pmsProductAttribute.getType(); + PmsProductAttributeCategory pmsProductAttributeCategory = productAttributeCategoryMapper.selectByPrimaryKey(pmsProductAttribute.getProductAttributeCategoryId()); PmsProductAttributeExample example = new PmsProductAttributeExample(); example.createCriteria().andIdIn(ids); - return productAttributeMapper.deleteByExample(example); + int count = productAttributeMapper.deleteByExample(example); + //删除完成后修改数量 + if(type==0){ + if(pmsProductAttributeCategory.getAttributeCount()>=count){ + pmsProductAttributeCategory.setAttributeCount(pmsProductAttributeCategory.getAttributeCount()-count); + }else{ + pmsProductAttributeCategory.setAttributeCount(0); + } + }else if(type==1){ + if(pmsProductAttributeCategory.getParamCount()>=count){ + pmsProductAttributeCategory.setParamCount(pmsProductAttributeCategory.getParamCount()-count); + }else{ + pmsProductAttributeCategory.setParamCount(0); + } + } + productAttributeCategoryMapper.updateByPrimaryKey(pmsProductAttributeCategory); + return count; } }