dev798
parent
01bd3dd68f
commit
77a48f401c
|
@ -0,0 +1,18 @@
|
||||||
|
package com.nuyu.product.req;
|
||||||
|
|
||||||
|
import com.nuyu.product.domain.MallProductInfo;
|
||||||
|
import com.nuyu.product.domain.MallProductSkuInfo;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author: wangxinyuan
|
||||||
|
* @Date: 2024/5/12 下午4:13
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class MallProductInfoForm extends MallProductInfo implements Serializable {
|
||||||
|
|
||||||
|
private List<MallProductSkuInfo> skuInfoList;
|
||||||
|
}
|
|
@ -9,6 +9,7 @@ import com.muyu.common.core.web.domain.AjaxResult;
|
||||||
import com.muyu.product.service.MallProductInfoService;
|
import com.muyu.product.service.MallProductInfoService;
|
||||||
import com.nuyu.product.domain.MallProductInfo;
|
import com.nuyu.product.domain.MallProductInfo;
|
||||||
import com.nuyu.product.domain.MallProductRuleAttrInfo;
|
import com.nuyu.product.domain.MallProductRuleAttrInfo;
|
||||||
|
import com.nuyu.product.req.MallProductInfoForm;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
@ -79,7 +80,7 @@ public class MallProductInfoController extends BaseController
|
||||||
@RequiresPermissions("product:info:add")
|
@RequiresPermissions("product:info:add")
|
||||||
@Log(title = "商品信息", businessType = BusinessType.INSERT)
|
@Log(title = "商品信息", businessType = BusinessType.INSERT)
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public Result add(@RequestBody MallProductInfo mallProductInfo)
|
public Result add(@RequestBody MallProductInfoForm mallProductInfo)
|
||||||
{
|
{
|
||||||
return toAjax(mallProductInfoService.insertMallProductInfo(mallProductInfo));
|
return toAjax(mallProductInfoService.insertMallProductInfo(mallProductInfo));
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@ package com.muyu.product.mapper;
|
||||||
|
|
||||||
import com.nuyu.product.domain.MallProductSkuInfo;
|
import com.nuyu.product.domain.MallProductSkuInfo;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -64,4 +65,8 @@ public interface MallProductSkuInfoMapper
|
||||||
public int deleteMallProductSkuInfoByIds(Long[] ids);
|
public int deleteMallProductSkuInfoByIds(Long[] ids);
|
||||||
|
|
||||||
List<MallProductSkuInfo> list(MallProductSkuInfo mallProductSkuInfo);
|
List<MallProductSkuInfo> list(MallProductSkuInfo mallProductSkuInfo);
|
||||||
|
|
||||||
|
void deleteMallProductSkuInfoId(@Param("productId") Long productInfoId);
|
||||||
|
|
||||||
|
void insertMallProductSkuInfoList(List<MallProductSkuInfo> mallProductSkuInfoList);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,17 +1,22 @@
|
||||||
package com.muyu.product.service.Impl;
|
package com.muyu.product.service.Impl;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageHelper;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import com.muyu.common.core.utils.DateUtils;
|
import com.muyu.common.core.utils.DateUtils;
|
||||||
|
import com.muyu.common.security.utils.SecurityUtils;
|
||||||
import com.muyu.product.service.MallProductInfoService;
|
import com.muyu.product.service.MallProductInfoService;
|
||||||
|
import com.muyu.product.service.MallProductSkuInfoService;
|
||||||
import com.nuyu.product.domain.MallProductInfo;
|
import com.nuyu.product.domain.MallProductInfo;
|
||||||
|
import com.nuyu.product.domain.MallProductSkuInfo;
|
||||||
import com.nuyu.product.domain.MallProductTypeInfo;
|
import com.nuyu.product.domain.MallProductTypeInfo;
|
||||||
|
import lombok.val;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.muyu.product.mapper.MallProductInfoMapper;
|
import com.muyu.product.mapper.MallProductInfoMapper;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -26,6 +31,9 @@ public class MallProductInfoServiceImpl implements MallProductInfoService
|
||||||
@Autowired
|
@Autowired
|
||||||
private MallProductInfoMapper mallProductInfoMapper;
|
private MallProductInfoMapper mallProductInfoMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private MallProductSkuInfoService mallProductSkuInfoService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询商品信息
|
* 查询商品信息
|
||||||
*
|
*
|
||||||
|
@ -56,11 +64,25 @@ public class MallProductInfoServiceImpl implements MallProductInfoService
|
||||||
* @param mallProductInfo 商品信息
|
* @param mallProductInfo 商品信息
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
|
@Transactional
|
||||||
@Override
|
@Override
|
||||||
public int insertMallProductInfo(MallProductInfo mallProductInfo)
|
public int insertMallProductInfo(MallProductInfo mallProductInfo)
|
||||||
{
|
{
|
||||||
|
Long userId = SecurityUtils.getLoginUser().getUserid();
|
||||||
|
mallProductInfo.setCreateBy(String.valueOf(userId));
|
||||||
|
Long loginUserId = SecurityUtils.getLoginUser().getUserid();
|
||||||
|
mallProductInfo.setUpdateBy(String.valueOf(loginUserId));
|
||||||
mallProductInfo.setCreateTime(DateUtils.getNowDate());
|
mallProductInfo.setCreateTime(DateUtils.getNowDate());
|
||||||
return mallProductInfoMapper.insertMallProductInfo(mallProductInfo);
|
mallProductInfo.setUpdateTime(DateUtils.getNowDate());
|
||||||
|
|
||||||
|
int num = mallProductInfoMapper.insertMallProductInfo(mallProductInfo);
|
||||||
|
if(num > 0){
|
||||||
|
Long productInfoId = mallProductInfo.getId();
|
||||||
|
mallProductSkuInfoService.deleteMallProductSkuInfoId(productInfoId);
|
||||||
|
List<MallProductSkuInfo>mallProductSkuInfoList=new ArrayList<>();
|
||||||
|
mallProductSkuInfoService.insertMallProductSkuInfoList(mallProductSkuInfoList);
|
||||||
|
}
|
||||||
|
return num;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -106,4 +106,14 @@ public class MallProductSkuInfoServiceImpl implements MallProductSkuInfoService
|
||||||
PageInfo<MallProductSkuInfo> pageInfo = new PageInfo<>(products);
|
PageInfo<MallProductSkuInfo> pageInfo = new PageInfo<>(products);
|
||||||
return pageInfo;
|
return pageInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteMallProductSkuInfoId(Long productInfoId) {
|
||||||
|
mallProductSkuInfoMapper.deleteMallProductSkuInfoId(productInfoId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void insertMallProductSkuInfoList(List<MallProductSkuInfo> mallProductSkuInfoList) {
|
||||||
|
mallProductSkuInfoMapper.insertMallProductSkuInfoList(mallProductSkuInfoList);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@ package com.muyu.product.service;
|
||||||
|
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import com.nuyu.product.domain.MallProductSkuInfo;
|
import com.nuyu.product.domain.MallProductSkuInfo;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -63,4 +64,8 @@ public interface MallProductSkuInfoService
|
||||||
public int deleteMallProductSkuInfoById(Long id);
|
public int deleteMallProductSkuInfoById(Long id);
|
||||||
|
|
||||||
PageInfo<MallProductSkuInfo> list(MallProductSkuInfo mallProductSkuInfo);
|
PageInfo<MallProductSkuInfo> list(MallProductSkuInfo mallProductSkuInfo);
|
||||||
|
|
||||||
|
void deleteMallProductSkuInfoId(Long productInfoId);
|
||||||
|
|
||||||
|
void insertMallProductSkuInfoList(List<MallProductSkuInfo> mallProductSkuInfoList);
|
||||||
}
|
}
|
||||||
|
|
|
@ -90,6 +90,48 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
<insert id="insertMallProductSkuInfoList" parameterType="java.util.List">
|
||||||
|
<if test="null !=list and list.size>0">
|
||||||
|
<foreach collection="list" item="item" separator=";">
|
||||||
|
insert into `mall-product`.mall_product_sku_info
|
||||||
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="item.productId != null">product_id,</if>
|
||||||
|
<if test="item.sku != null and item.sku != ''">sku,</if>
|
||||||
|
<if test="item.stock != null">stock,</if>
|
||||||
|
<if test="item.price != null">price,</if>
|
||||||
|
<if test="item.purchasePrice != null">purchase_price,</if>
|
||||||
|
<if test="item.sellingPrice != null">selling_price,</if>
|
||||||
|
<if test="item.image != null and item.image != ''">image,</if>
|
||||||
|
<if test="item.number != null and item.number != ''">number,</if>
|
||||||
|
<if test="item.weight != null">weight,</if>
|
||||||
|
<if test="item.volume != null">volume,</if>
|
||||||
|
<if test="item.revision != null">revision,</if>
|
||||||
|
<if test="item.createBy != null">create_by,</if>
|
||||||
|
<if test="item.createTime != null">create_time,</if>
|
||||||
|
<if test="item.updateBy != null">update_by,</if>
|
||||||
|
<if test="item.updateTime != null">update_time,</if>
|
||||||
|
</trim>
|
||||||
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="item.productId != null">#{item.productId},</if>
|
||||||
|
<if test="item.sku != null and item.sku != ''">#{item.sku},</if>
|
||||||
|
<if test="item.stock != null">#{item.stock},</if>
|
||||||
|
<if test="item.price != null">#{item.price},</if>
|
||||||
|
<if test="item.purchasePrice != null">#{item.purchasePrice},</if>
|
||||||
|
<if test="item.sellingPrice != null">#{item.sellingPrice},</if>
|
||||||
|
<if test="item.image != null and item.image != ''">#{item.image},</if>
|
||||||
|
<if test="item.number != null and item.number != ''">#{item.number},</if>
|
||||||
|
<if test="item.weight != null">#{item.weight},</if>
|
||||||
|
<if test="item.volume != null">#{item.volume},</if>
|
||||||
|
<if test="item.revision != null">#{item.revision},</if>
|
||||||
|
<if test="item.createBy != null">#{item.createBy},</if>
|
||||||
|
<if test="item.createTime != null">#{item.createTime},</if>
|
||||||
|
<if test="item.updateBy != null">#{item.updateBy},</if>
|
||||||
|
<if test="item.updateTime != null">#{item.updateTime},</if>
|
||||||
|
</trim>
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
</insert>
|
||||||
|
|
||||||
<update id="updateMallProductSkuInfo" parameterType="com.nuyu.product.domain.MallProductSkuInfo">
|
<update id="updateMallProductSkuInfo" parameterType="com.nuyu.product.domain.MallProductSkuInfo">
|
||||||
update mall_product_sku_info
|
update mall_product_sku_info
|
||||||
<trim prefix="SET" suffixOverrides=",">
|
<trim prefix="SET" suffixOverrides=",">
|
||||||
|
@ -122,4 +164,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
|
<delete id="deleteMallProductSkuInfoId" parameterType="java.lang.Long">
|
||||||
|
delete from mall_product_sku_info where product_id = #{productId}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
Loading…
Reference in New Issue