dev798
parent
e479445339
commit
3c21e1dcff
|
@ -71,22 +71,37 @@ public class MallProductRuleInfoServiceImpl implements MallProductRuleInfoServic
|
||||||
*/
|
*/
|
||||||
@Transactional
|
@Transactional
|
||||||
@Override
|
@Override
|
||||||
public int insertMallProductRuleInfo(MallProductRuleInfo mallProductRuleInfo)
|
public int insertMallProductRuleInfo(MallProductRuleInfo mallProductRuleInfo) {
|
||||||
{
|
try {
|
||||||
Long userId = SecurityUtils.getLoginUser().getUserid();
|
Long userId = SecurityUtils.getLoginUser().getUserid();
|
||||||
|
if (userId == null) {
|
||||||
|
throw new RuntimeException("用户未登录");
|
||||||
|
}
|
||||||
mallProductRuleInfo.setCreateBy(userId.toString());
|
mallProductRuleInfo.setCreateBy(userId.toString());
|
||||||
Long loginUserId = SecurityUtils.getLoginUser().getUserid();
|
Long loginUserId = SecurityUtils.getLoginUser().getUserid();
|
||||||
|
if (loginUserId == null) {
|
||||||
|
throw new RuntimeException("用户未登录");
|
||||||
|
}
|
||||||
mallProductRuleInfo.setUpdateBy(loginUserId.toString());
|
mallProductRuleInfo.setUpdateBy(loginUserId.toString());
|
||||||
|
|
||||||
mallProductRuleInfo.setUpdateTime(DateUtils.getNowDate());
|
mallProductRuleInfo.setUpdateTime(DateUtils.getNowDate());
|
||||||
mallProductRuleInfo.setCreateTime(DateUtils.getNowDate());
|
mallProductRuleInfo.setCreateTime(DateUtils.getNowDate());
|
||||||
// 调用mapper插入商城产品规则信息
|
|
||||||
int i = mallProductRuleInfoMapper.insertMallProductRuleInfo(mallProductRuleInfo);
|
int insertResult = mallProductRuleInfoMapper.insertMallProductRuleInfo(mallProductRuleInfo);
|
||||||
if(i > 0){
|
if (insertResult > 0) {
|
||||||
// 如果插入成功,处理规则属性信息
|
processRuleAttrInfo(mallProductRuleInfo);
|
||||||
|
}
|
||||||
|
return insertResult;
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void processRuleAttrInfo(MallProductRuleInfo mallProductRuleInfo) {
|
||||||
Long ruleId = mallProductRuleInfo.getId();
|
Long ruleId = mallProductRuleInfo.getId();
|
||||||
String ruleAttr = mallProductRuleInfo.getRuleAttr();
|
String ruleAttr = mallProductRuleInfo.getRuleAttr();
|
||||||
// 解析规则属性,并转换为规则属性信息列表
|
if (ruleAttr != null && !ruleAttr.isEmpty()) {
|
||||||
List<MallProductRuleAttrInfo> ruleAttrInfoList = new ArrayList<>();
|
List<MallProductRuleAttrInfo> ruleAttrInfoList = new ArrayList<>();
|
||||||
List<MallProductAttrInfoModel> mallProductAttrInfoModels = JSON.parseArray(ruleAttr, MallProductAttrInfoModel.class);
|
List<MallProductAttrInfoModel> mallProductAttrInfoModels = JSON.parseArray(ruleAttr, MallProductAttrInfoModel.class);
|
||||||
if (CollectionUtils.isNotEmpty(mallProductAttrInfoModels)) {
|
if (CollectionUtils.isNotEmpty(mallProductAttrInfoModels)) {
|
||||||
|
@ -94,7 +109,6 @@ public class MallProductRuleInfoServiceImpl implements MallProductRuleInfoServic
|
||||||
String ruleType = mallProductAttrInfoModel.getRuleType();
|
String ruleType = mallProductAttrInfoModel.getRuleType();
|
||||||
List<String> ruleAttrList = mallProductAttrInfoModel.getRuleAttrList();
|
List<String> ruleAttrList = mallProductAttrInfoModel.getRuleAttrList();
|
||||||
for (String ruleAttrString : ruleAttrList) {
|
for (String ruleAttrString : ruleAttrList) {
|
||||||
// 组装规则属性信息
|
|
||||||
MallProductRuleAttrInfo mallProductRuleAttrInfo = new MallProductRuleAttrInfo();
|
MallProductRuleAttrInfo mallProductRuleAttrInfo = new MallProductRuleAttrInfo();
|
||||||
mallProductRuleAttrInfo.setAttrValue(ruleAttrString);
|
mallProductRuleAttrInfo.setAttrValue(ruleAttrString);
|
||||||
mallProductRuleAttrInfo.setName(ruleType);
|
mallProductRuleAttrInfo.setName(ruleType);
|
||||||
|
@ -103,12 +117,13 @@ public class MallProductRuleInfoServiceImpl implements MallProductRuleInfoServic
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mallProductRuleAttrInfoService.deleteMallProductRuleAttrInfByRuleId(ruleId);
|
mallProductRuleAttrInfoService.deleteMallProductRuleAttrInfByRuleId(ruleId);
|
||||||
|
// 考虑使用批量插入来优化性能
|
||||||
mallProductRuleAttrInfoService.insertMallProductRuleAttrInfoList(ruleAttrInfoList);
|
mallProductRuleAttrInfoService.insertMallProductRuleAttrInfoList(ruleAttrInfoList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return i;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改商品规格
|
* 修改商品规格
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue