Browse Source

refac[litemall-db]: 采用乐观锁更新操作

Junling Bu 7 years ago
parent
commit
f52dcd3f33
20 changed files with 35 additions and 113 deletions
  1. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallAdService.java
  2. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallAdminService.java
  3. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallBrandService.java
  4. 2 8
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallCartService.java
  5. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallCategoryService.java
  6. 3 20
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallCommentService.java
  7. 0 8
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGoodsAttributeService.java
  8. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGoodsService.java
  9. 0 8
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGoodsSpecificationService.java
  10. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGrouponRulesService.java
  11. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGrouponService.java
  12. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallIssueService.java
  13. 2 8
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallKeywordService.java
  14. 3 15
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallOrderService.java
  15. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallProductService.java
  16. 2 9
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallStorageService.java
  17. 0 14
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallSystemConfigService.java
  18. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallTopicService.java
  19. 1 1
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallUserFormIdService.java
  20. 2 2
      litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallUserService.java

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallAdService.java

@@ -56,8 +56,8 @@ public class LitemallAdService {
         return (int) adMapper.countByExample(example);
     }
 
-    public void updateById(LitemallAd ad) {
-        adMapper.updateByPrimaryKeySelective(ad);
+    public int updateById(LitemallAd ad) {
+        return adMapper.updateWithVersionByPrimaryKeySelective(ad.getVersion(), ad);
     }
 
     public void deleteById(Integer id) {

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallAdminService.java

@@ -52,8 +52,8 @@ public class LitemallAdminService {
         return (int)adminMapper.countByExample(example);
     }
 
-    public void updateById(LitemallAdmin admin) {
-        adminMapper.updateByPrimaryKeySelective(admin);
+    public int updateById(LitemallAdmin admin) {
+        return adminMapper.updateWithVersionByPrimaryKeySelective(admin.getVersion(), admin);
     }
 
     public void deleteById(Integer id) {

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallBrandService.java

@@ -76,8 +76,8 @@ public class LitemallBrandService {
         return (int) brandMapper.countByExample(example);
     }
 
-    public void updateById(LitemallBrand brand) {
-        brandMapper.updateByPrimaryKeySelective(brand);
+    public int updateById(LitemallBrand brand) {
+        return brandMapper.updateWithVersionByPrimaryKeySelective(brand.getVersion(), brand);
     }
 
     public void deleteById(Integer id) {

+ 2 - 8
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallCartService.java

@@ -25,8 +25,8 @@ public class LitemallCartService {
         cartMapper.insertSelective(cart);
     }
 
-    public void update(LitemallCart cart) {
-        cartMapper.updateByPrimaryKey(cart);
+    public int update(LitemallCart cart) {
+        return cartMapper.updateWithVersionByPrimaryKeySelective(cart.getVersion(), cart);
     }
 
     public List<LitemallCart> queryByUid(int userId) {
@@ -42,12 +42,6 @@ public class LitemallCartService {
         return cartMapper.selectByExample(example);
     }
 
-    public List<LitemallCart> queryByUidAndSid(int userId, String sessionId) {
-        LitemallCartExample example = new LitemallCartExample();
-        example.or().andUserIdEqualTo(userId).andDeletedEqualTo(false);
-        return cartMapper.selectByExample(example);
-    }
-
     public int delete(List<Integer> productIdList, int userId) {
         LitemallCartExample example = new LitemallCartExample();
         example.or().andUserIdEqualTo(userId).andProductIdIn(productIdList);

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallCategoryService.java

@@ -86,8 +86,8 @@ public class LitemallCategoryService {
         return (int)categoryMapper.countByExample(example);
     }
 
-    public void updateById(LitemallCategory category) {
-        categoryMapper.updateByPrimaryKeySelective(category);
+    public int updateById(LitemallCategory category) {
+        return categoryMapper.updateWithVersionByPrimaryKeySelective(category.getVersion(), category);
     }
 
     public void deleteById(Integer id) {

+ 3 - 20
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallCommentService.java

@@ -40,7 +40,7 @@ public class LitemallCommentService {
             example.or().andValueIdEqualTo(valueId).andTypeEqualTo(type).andHasPictureEqualTo(true).andDeletedEqualTo(false);
         }
         else{
-            Assert.state(false, "showType不支持");
+            throw new RuntimeException("showType不支持");
         }
         PageHelper.startPage(offset, limit);
         return commentMapper.selectByExample(example);
@@ -55,21 +55,15 @@ public class LitemallCommentService {
             example.or().andValueIdEqualTo(valueId).andTypeEqualTo(type).andHasPictureEqualTo(true).andDeletedEqualTo(false);
         }
         else{
-            Assert.state(false, "");
+            throw new RuntimeException("showType不支持");
         }
         return (int)commentMapper.countByExample(example);
     }
 
-    public Integer save(LitemallComment comment) {
+    public int save(LitemallComment comment) {
         return commentMapper.insertSelective(comment);
     }
 
-
-    public void update(LitemallComment comment) {
-        commentMapper.updateByPrimaryKeySelective(comment);
-    }
-
-
     public List<LitemallComment> querySelective(String userId, String valueId, Integer page, Integer size, String sort, String order) {
         LitemallCommentExample example = new LitemallCommentExample();
         example.setOrderByClause(LitemallComment.Column.addTime.desc());
@@ -106,19 +100,8 @@ public class LitemallCommentService {
         return (int)commentMapper.countByExample(example);
     }
 
-    public void updateById(LitemallComment comment) {
-        commentMapper.updateByPrimaryKeySelective(comment);
-    }
-
     public void deleteById(Integer id) {
         commentMapper.logicalDeleteByPrimaryKey(id);
     }
 
-    public void add(LitemallComment comment) {
-        commentMapper.insertSelective(comment);
-    }
-
-    public LitemallComment findById(Integer id) {
-        return commentMapper.selectByPrimaryKey(id);
-    }
 }

+ 0 - 8
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGoodsAttributeService.java

@@ -20,14 +20,6 @@ public class LitemallGoodsAttributeService {
         return goodsAttributeMapper.selectByExample(example);
     }
 
-    public void updateById(LitemallGoodsAttribute goodsAttribute) {
-        goodsAttributeMapper.updateByPrimaryKeySelective(goodsAttribute);
-    }
-
-    public void deleteById(Integer id) {
-        goodsAttributeMapper.logicalDeleteByPrimaryKey(id);
-    }
-
     public void add(LitemallGoodsAttribute goodsAttribute) {
         goodsAttributeMapper.insertSelective(goodsAttribute);
     }

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGoodsService.java

@@ -222,8 +222,8 @@ public class LitemallGoodsService {
         return (int) goodsMapper.countByExample(example);
     }
 
-    public void updateById(LitemallGoods goods) {
-        goodsMapper.updateByPrimaryKeySelective(goods);
+    public int updateById(LitemallGoods goods) {
+        return goodsMapper.updateWithVersionByPrimaryKeySelective(goods.getVersion(), goods);
     }
 
     public void deleteById(Integer id) {

+ 0 - 8
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGoodsSpecificationService.java

@@ -27,14 +27,6 @@ public class LitemallGoodsSpecificationService {
         return goodsSpecificationMapper.selectByPrimaryKey(id);
     }
 
-    public void updateById(LitemallGoodsSpecification goodsSpecification) {
-        goodsSpecificationMapper.updateByPrimaryKeySelective(goodsSpecification);
-    }
-
-    public void deleteById(Integer id) {
-        goodsSpecificationMapper.logicalDeleteByPrimaryKey(id);
-    }
-
     public void deleteByGid(Integer gid) {
         LitemallGoodsSpecificationExample example = new LitemallGoodsSpecificationExample();
         example.or().andGoodsIdEqualTo(gid);

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGrouponRulesService.java

@@ -109,7 +109,7 @@ public class LitemallGrouponRulesService {
         mapper.logicalDeleteByPrimaryKey(id);
     }
 
-    public void update(LitemallGrouponRules grouponRules) {
-        mapper.updateByPrimaryKeySelective(grouponRules);
+    public int update(LitemallGrouponRules grouponRules) {
+        return mapper.updateWithVersionByPrimaryKeySelective(grouponRules.getVersion(), grouponRules);
     }
 }

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallGrouponService.java

@@ -90,8 +90,8 @@ public class LitemallGrouponService {
         return (int) mapper.countByExample(example);
     }
 
-    public void update(LitemallGroupon groupon) {
-        mapper.updateByPrimaryKey(groupon);
+    public int update(LitemallGroupon groupon) {
+        return mapper.updateWithVersionByPrimaryKeySelective(groupon.getVersion(), groupon);
     }
 
     /**

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallIssueService.java

@@ -58,8 +58,8 @@ public class LitemallIssueService {
         return (int)issueMapper.countByExample(example);
     }
 
-    public void updateById(LitemallIssue issue) {
-        issueMapper.updateByPrimaryKeySelective(issue);
+    public int updateById(LitemallIssue issue) {
+        return issueMapper.updateWithVersionByPrimaryKeySelective(issue.getVersion(), issue);
     }
 
     public LitemallIssue findById(Integer id) {

+ 2 - 8
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallKeywordService.java

@@ -15,12 +15,6 @@ public class LitemallKeywordService {
     @Resource
     private LitemallKeywordMapper keywordsMapper;
 
-    public List<LitemallKeyword> queryDefaults() {
-        LitemallKeywordExample example = new LitemallKeywordExample();
-        example.or().andIsDefaultEqualTo(true).andDeletedEqualTo(false);
-        return keywordsMapper.selectByExample(example);
-    }
-
     public LitemallKeyword queryDefault() {
         LitemallKeywordExample example = new LitemallKeywordExample();
         example.or().andIsDefaultEqualTo(true).andDeletedEqualTo(false);
@@ -85,8 +79,8 @@ public class LitemallKeywordService {
         return keywordsMapper.selectByPrimaryKey(id);
     }
 
-    public void updateById(LitemallKeyword keywords) {
-        keywordsMapper.updateByPrimaryKeySelective(keywords);
+    public int updateById(LitemallKeyword keywords) {
+        return keywordsMapper.updateWithVersionByPrimaryKeySelective(keywords.getVersion(), keywords);
     }
 
     public void deleteById(Integer id) {

+ 3 - 15
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallOrderService.java

@@ -23,12 +23,6 @@ public class LitemallOrderService {
         return orderMapper.insertSelective(order);
     }
 
-    public List<LitemallOrder> query(Integer userId) {
-        LitemallOrderExample example = new LitemallOrderExample();
-        example.or().andUserIdEqualTo(userId).andDeletedEqualTo(false);
-        return orderMapper.selectByExample(example);
-    }
-
     public int count(Integer userId) {
         LitemallOrderExample example = new LitemallOrderExample();
         example.or().andUserIdEqualTo(userId).andDeletedEqualTo(false);
@@ -42,7 +36,7 @@ public class LitemallOrderService {
     private String getRandomNum(Integer num) {
         String base = "0123456789";
         Random random = new Random();
-        StringBuffer sb = new StringBuffer();
+        StringBuilder sb = new StringBuilder();
         for (int i = 0; i < num; i++) {
             int number = random.nextInt(base.length());
             sb.append(base.charAt(number));
@@ -50,13 +44,7 @@ public class LitemallOrderService {
         return sb.toString();
     }
 
-    public LitemallOrder queryByOrderSn(Integer userId, String orderSn){
-        LitemallOrderExample example = new LitemallOrderExample();
-        example.or().andUserIdEqualTo(userId).andOrderSnEqualTo(orderSn).andDeletedEqualTo(false);
-        return orderMapper.selectOneByExample(example);
-    }
-
-    public int countByOrderSn(Integer userId, String orderSn){
+    private int countByOrderSn(Integer userId, String orderSn){
         LitemallOrderExample example = new LitemallOrderExample();
         example.or().andUserIdEqualTo(userId).andOrderSnEqualTo(orderSn).andDeletedEqualTo(false);
         return (int)orderMapper.countByExample(example);
@@ -97,7 +85,7 @@ public class LitemallOrderService {
     }
 
     public int update(LitemallOrder order) {
-        return orderMapper.updateByPrimaryKeySelective(order);
+        return orderMapper.updateWithVersionByPrimaryKeySelective(order.getVersion(), order);
     }
 
     public List<LitemallOrder> querySelective(Integer userId, String orderSn, List<Short> orderStatusArray, Integer page, Integer size, String sort, String order) {

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallProductService.java

@@ -24,8 +24,8 @@ public class LitemallProductService {
         return productMapper.selectByPrimaryKey(id);
     }
 
-    public void updateById(LitemallProduct product) {
-        productMapper.updateByPrimaryKeySelective(product);
+    public int updateById(LitemallProduct product) {
+        return productMapper.updateWithVersionByPrimaryKeySelective(product.getVersion(), product);
     }
 
     public void deleteById(Integer id) {

+ 2 - 9
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallStorageService.java

@@ -25,23 +25,16 @@ public class LitemallStorageService {
         storageMapper.insertSelective(storageInfo);
     }
 
-    public LitemallStorage findByName(String filename) {
-        LitemallStorageExample example = new LitemallStorageExample();
-        example.or().andNameEqualTo(filename).andDeletedEqualTo(false);
-        return storageMapper.selectOneByExample(example);
-    }
-
     public LitemallStorage findByKey(String key) {
         LitemallStorageExample example = new LitemallStorageExample();
         example.or().andKeyEqualTo(key).andDeletedEqualTo(false);
         return storageMapper.selectOneByExample(example);
     }
 
-    public void update(LitemallStorage storageInfo) {
-        storageMapper.updateByPrimaryKeySelective(storageInfo);
+    public int update(LitemallStorage storageInfo) {
+       return storageMapper.updateWithVersionByPrimaryKeySelective(storageInfo.getVersion(), storageInfo);
     }
 
-
     public LitemallStorage findById(Integer id) {
         return storageMapper.selectByPrimaryKey(id);
     }

+ 0 - 14
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallSystemConfigService.java

@@ -13,23 +13,9 @@ public class LitemallSystemConfigService {
     @Resource
     private LitemallSystemMapper systemMapper;
 
-    public void add(LitemallSystem litemallSystem) {
-        systemMapper.insert(litemallSystem);
-    }
-
     public List<LitemallSystem> queryAll() {
         LitemallSystemExample example = new LitemallSystemExample();
         example.or();
         return systemMapper.selectByExample(example);
     }
-
-    public LitemallSystem queryByKeyName(String keyName, String groupName) {
-        LitemallSystemExample example = new LitemallSystemExample();
-        example.or().andKeyNameEqualTo(keyName);
-        return systemMapper.selectOneByExample(example);
-    }
-
-    public void deleteById(Integer id) {
-        systemMapper.deleteByPrimaryKey(id);
-    }
 }

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallTopicService.java

@@ -91,10 +91,10 @@ public class LitemallTopicService {
         return (int) topicMapper.countByExample(example);
     }
 
-    public void updateById(LitemallTopic topic) {
+    public int updateById(LitemallTopic topic) {
         LitemallTopicExample example = new LitemallTopicExample();
         example.or().andIdEqualTo(topic.getId());
-        topicMapper.updateByExampleWithBLOBs(topic, example);
+        return topicMapper.updateWithVersionByExampleWithBLOBs(topic.getVersion(), topic, example);
     }
 
     public void deleteById(Integer id) {

+ 1 - 1
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallUserFormIdService.java

@@ -35,7 +35,7 @@ public class LitemallUserFormIdService {
         //更新或者删除缓存
         if (userFormid.getIsprepay() && userFormid.getUseamount() > 1) {
             userFormid.setUseamount(userFormid.getUseamount() - 1);
-            formidMapper.updateByPrimaryKey(userFormid);
+            formidMapper.updateWithVersionByPrimaryKey(userFormid.getVersion(), userFormid);
         } else {
             formidMapper.deleteByPrimaryKey(userFormid.getId());
         }

+ 2 - 2
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallUserService.java

@@ -39,8 +39,8 @@ public class LitemallUserService {
         userMapper.insertSelective(user);
     }
 
-    public void update(LitemallUser user) {
-        userMapper.updateByPrimaryKeySelective(user);
+    public int update(LitemallUser user) {
+        return userMapper.updateWithVersionByPrimaryKeySelective(user.getVersion(), user);
     }
 
     public List<LitemallUser> querySelective(String username, String mobile, Integer page, Integer size, String sort, String order) {