BUG修改
This commit is contained in:
parent
a52b672e9b
commit
f14efa2612
@ -212,10 +212,10 @@ lili:
|
|||||||
sk: zhNKVrJK6UPOhqIjn8AQvG37b9sz6
|
sk: zhNKVrJK6UPOhqIjn8AQvG37b9sz6
|
||||||
#域名
|
#域名
|
||||||
domain:
|
domain:
|
||||||
pc: http://zbuyer.sx1788.cn/buyer
|
pc: https://zbuyer.sx1788.cn
|
||||||
wap: http://zshop.sx1788.cn/
|
wap: https://zshop.sx1788.cn
|
||||||
store: http://zseller.sx1788.cn/login
|
store: https://zseller.sx1788.cn
|
||||||
admin: http://zmanager.sx1788.cn/login
|
admin: https://zmanager.sx1788.cn
|
||||||
#api地址
|
#api地址
|
||||||
api:
|
api:
|
||||||
buyer: https://zshop-api.sx1788.cn/buyer-api
|
buyer: https://zshop-api.sx1788.cn/buyer-api
|
||||||
|
@ -209,10 +209,10 @@ lili:
|
|||||||
sk: zhNKVrJK6UPOhqIjn8AQvG37b9sz6
|
sk: zhNKVrJK6UPOhqIjn8AQvG37b9sz6
|
||||||
#域名
|
#域名
|
||||||
domain:
|
domain:
|
||||||
pc: http://zbuyer.sx1788.cn/buyer
|
pc: https://zbuyer.sx1788.cn
|
||||||
wap: http://zshop.sx1788.cn/
|
wap: https://zshop.sx1788.cn
|
||||||
store: http://zseller.sx1788.cn/login
|
store: https://zseller.sx1788.cn
|
||||||
admin: http://zmanager.sx1788.cn/login
|
admin: https://zmanager.sx1788.cn
|
||||||
#api地址
|
#api地址
|
||||||
api:
|
api:
|
||||||
buyer: https://zshop-api.sx1788.cn/buyer-api
|
buyer: https://zshop-api.sx1788.cn/buyer-api
|
||||||
|
@ -0,0 +1,137 @@
|
|||||||
|
package cn.lili.modules.goods.entity.dto;
|
||||||
|
|
||||||
|
import cn.lili.common.validation.EnumValue;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.ToString;
|
||||||
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 商品编辑DTO
|
||||||
|
*
|
||||||
|
* @author pikachu
|
||||||
|
* @since 2020-02-24 19:27:20
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@ToString
|
||||||
|
public class GoodsOperationFuLuDTO implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -509667581371776913L;
|
||||||
|
|
||||||
|
@ApiModelProperty(hidden = true)
|
||||||
|
private String goodsId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "商品价格", required = true)
|
||||||
|
@NotNull(message = "商品价格不能为空")
|
||||||
|
@Min(value = 0, message = "商品价格不能为负数")
|
||||||
|
@Max(value = 99999999, message = "商品价格不能超过99999999")
|
||||||
|
private Double price;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "分类path")
|
||||||
|
private String categoryPath;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "店铺分类id", required = true)
|
||||||
|
@Size(max = 200, message = "选择了太多店铺分类")
|
||||||
|
private String storeCategoryPath;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "品牌id")
|
||||||
|
@Min(value = 0, message = "品牌值不正确")
|
||||||
|
private String brandId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "商品名称", required = true)
|
||||||
|
@NotEmpty(message = "商品名称不能为空")
|
||||||
|
@Length(max = 50, message = "商品名称不能超过50个字符")
|
||||||
|
private String goodsName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "详情")
|
||||||
|
private String intro;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "商品移动端详情")
|
||||||
|
private String mobileIntro;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "库存")
|
||||||
|
@Min(value = 0, message = "库存不能为负数")
|
||||||
|
@Max(value = 99999999, message = "库存不能超过99999999")
|
||||||
|
private Integer quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "是否立即发布")
|
||||||
|
private Boolean release;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "是否是推荐商品")
|
||||||
|
private Boolean recommend;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "商品参数")
|
||||||
|
private List<GoodsParamsDTO> goodsParamsDTOList;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "商品图片")
|
||||||
|
private List<String> goodsGalleryList;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "运费模板id,不需要运费模板时值是0", required = true)
|
||||||
|
@NotNull(message = "运费模板不能为空,没有运费模板时,传值0")
|
||||||
|
@Min(value = 0, message = "运费模板值不正确")
|
||||||
|
private String templateId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "sku列表")
|
||||||
|
@Valid
|
||||||
|
private List<Map<String, Object>> skuList;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "卖点")
|
||||||
|
private String sellingPoint;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "销售模式", required = true)
|
||||||
|
private String salesModel;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "是否有规格", hidden = true)
|
||||||
|
private String haveSpec;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "销售模式", required = true)
|
||||||
|
private String goodsUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "商品描述")
|
||||||
|
private String info;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "是否重新生成sku数据")
|
||||||
|
private Boolean regeneratorSkuFlag = true;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @see cn.lili.modules.goods.entity.enums.GoodsTypeEnum
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "商品类型")
|
||||||
|
@EnumValue(strValues = {"PHYSICAL_GOODS", "VIRTUAL_GOODS", "E_COUPON"}, message = "商品类型参数值错误")
|
||||||
|
private String goodsType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 商品视频
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "商品视频")
|
||||||
|
private String goodsVideo;
|
||||||
|
|
||||||
|
public String getGoodsName() {
|
||||||
|
//对商品对名称做一个极限处理。这里没有用xss过滤是因为xss过滤为全局过滤,影响很大。
|
||||||
|
// 业务中,全局代码中只有商品名称不能拥有英文逗号,是由于商品名称存在一个数据库联合查询,结果要根据逗号分组
|
||||||
|
return goodsName.replace(",", "");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//福禄所需参数
|
||||||
|
@ApiModelProperty(value = "商品编号", required = true)
|
||||||
|
@Length(max = 30, message = "商品编号太长,不能超过30个字符")
|
||||||
|
private String sn;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "市场价格", required = true)
|
||||||
|
@NotNull(message = "市场价格不能为空")
|
||||||
|
private Double cost;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "重量", required = true)
|
||||||
|
@NotNull(message = "商品重量不能为空")
|
||||||
|
@Min(value = 0, message = "重量不能为负数")
|
||||||
|
@Max(value = 99999999, message = "重量不能超过99999999")
|
||||||
|
private Double weight;
|
||||||
|
}
|
@ -75,6 +75,14 @@ public interface GoodsService extends IService<Goods> {
|
|||||||
*/
|
*/
|
||||||
void editGoods(GoodsOperationDTO goodsOperationDTO, String goodsId);
|
void editGoods(GoodsOperationDTO goodsOperationDTO, String goodsId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改商品
|
||||||
|
*
|
||||||
|
* @param goodsOperationDTO 商品查询条件
|
||||||
|
* @param goodsId 商品ID
|
||||||
|
*/
|
||||||
|
void fuLuEditGoods(GoodsOperationFuLuDTO goodsOperationFuLuDTO, String goodsId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询商品VO
|
* 查询商品VO
|
||||||
*
|
*
|
||||||
|
@ -231,6 +231,33 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
|
|||||||
cache.remove(CachePrefix.GOODS.getPrefix() + goodsId);
|
cache.remove(CachePrefix.GOODS.getPrefix() + goodsId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void fuLuEditGoods(GoodsOperationFuLuDTO goodsOperationFuLuDTO, String goodsId) {
|
||||||
|
Goods goods = new Goods(goodsOperationFuLuDTO);
|
||||||
|
goods.setId(goodsId);
|
||||||
|
//检查商品信息
|
||||||
|
this.checkGoods(goods);
|
||||||
|
//向goods加入图片
|
||||||
|
this.setGoodsGalleryParam(goodsOperationFuLuDTO.getGoodsGalleryList().get(0), goods);
|
||||||
|
//添加商品参数
|
||||||
|
if (goodsOperationFuLuDTO.getGoodsParamsDTOList() != null && !goodsOperationFuLuDTO.getGoodsParamsDTOList().isEmpty()) {
|
||||||
|
goods.setParams(JSONUtil.toJsonStr(goodsOperationFuLuDTO.getGoodsParamsDTOList()));
|
||||||
|
}
|
||||||
|
//修改商品
|
||||||
|
this.updateById(goods);
|
||||||
|
//修改商品sku信息
|
||||||
|
this.goodsSkuService.update(goodsOperationFuLuDTO.getSkuList(), goods, goodsOperationFuLuDTO.getRegeneratorSkuFlag());
|
||||||
|
//添加相册
|
||||||
|
if (goodsOperationFuLuDTO.getGoodsGalleryList() != null && !goodsOperationFuLuDTO.getGoodsGalleryList().isEmpty()) {
|
||||||
|
this.goodsGalleryService.add(goodsOperationFuLuDTO.getGoodsGalleryList(), goods.getId());
|
||||||
|
}
|
||||||
|
if (GoodsAuthEnum.TOBEAUDITED.name().equals(goods.getAuthFlag())) {
|
||||||
|
this.deleteEsGoods(Collections.singletonList(goodsId));
|
||||||
|
}
|
||||||
|
cache.remove(CachePrefix.GOODS.getPrefix() + goodsId);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public GoodsVO getGoodsVO(String goodsId) {
|
public GoodsVO getGoodsVO(String goodsId) {
|
||||||
//缓存获取,如果没有则读取缓存
|
//缓存获取,如果没有则读取缓存
|
||||||
|
@ -70,6 +70,7 @@ public class PageDataServiceImpl extends ServiceImpl<PageDataMapper, PageData> i
|
|||||||
} else {
|
} else {
|
||||||
pageData.setPageShow(SwitchEnum.CLOSE.name());
|
pageData.setPageShow(SwitchEnum.CLOSE.name());
|
||||||
}
|
}
|
||||||
|
pageData.setPageData(pageData.getPageData().replace("?x-oss-process=style/200X200", "").replace("?x-oss-process=style/400X400", ""));
|
||||||
this.save(pageData);
|
this.save(pageData);
|
||||||
return pageData;
|
return pageData;
|
||||||
}
|
}
|
||||||
@ -88,8 +89,10 @@ public class PageDataServiceImpl extends ServiceImpl<PageDataMapper, PageData> i
|
|||||||
pageData.setPageShow(SwitchEnum.CLOSE.name());
|
pageData.setPageShow(SwitchEnum.CLOSE.name());
|
||||||
}
|
}
|
||||||
LambdaUpdateWrapper<PageData> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
|
LambdaUpdateWrapper<PageData> lambdaUpdateWrapper = Wrappers.lambdaUpdate();
|
||||||
lambdaUpdateWrapper.set(PageData::getPageData, pageData.getPageData());
|
String dataPage = pageData.getPageData().replace("?x-oss-process=style/200X200", "").replace("?x-oss-process=style/400X400", "");
|
||||||
|
lambdaUpdateWrapper.set(PageData::getPageData,dataPage);
|
||||||
lambdaUpdateWrapper.eq(PageData::getId, pageData.getId());
|
lambdaUpdateWrapper.eq(PageData::getId, pageData.getId());
|
||||||
|
pageData.setPageData(dataPage);
|
||||||
this.updateById(pageData);
|
this.updateById(pageData);
|
||||||
return pageData;
|
return pageData;
|
||||||
}
|
}
|
||||||
|
@ -198,10 +198,10 @@ lili:
|
|||||||
sk: zhNKVrJK6UPOhqIjn8AQvG37b9sz6
|
sk: zhNKVrJK6UPOhqIjn8AQvG37b9sz6
|
||||||
#域名
|
#域名
|
||||||
domain:
|
domain:
|
||||||
pc: http://zbuyer.sx1788.cn/buyer
|
pc: https://zbuyer.sx1788.cn
|
||||||
wap: http://zshop.sx1788.cn/
|
wap: https://zshop.sx1788.cn
|
||||||
store: http://zseller.sx1788.cn/login
|
store: https://zseller.sx1788.cn
|
||||||
admin: http://zmanager.sx1788.cn/login
|
admin: https://zmanager.sx1788.cn
|
||||||
#api地址
|
#api地址
|
||||||
api:
|
api:
|
||||||
buyer: https://zshop-api.sx1788.cn/buyer-api
|
buyer: https://zshop-api.sx1788.cn/buyer-api
|
||||||
|
@ -257,27 +257,22 @@ public class GoodsStoreController {
|
|||||||
map2.put("url", map1.get("four_category_icon").toString());
|
map2.put("url", map1.get("four_category_icon").toString());
|
||||||
images.add(map2);
|
images.add(map2);
|
||||||
map.put("images", images);
|
map.put("images", images);
|
||||||
i += 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
mapArrayList.add(map);
|
mapArrayList.add(map);
|
||||||
goodsOperationDTO.setSkuList(mapArrayList);//sku列表
|
goodsOperationDTO.setSkuList(mapArrayList);//sku列表
|
||||||
|
|
||||||
if (goodsList.size() > 0) {
|
if (goodsList.size() > 0) {
|
||||||
GoodsOperationDTO goodsOperationDTO1 = new GoodsOperationDTO();
|
goodsService.fuLuEditGoods(goodsOperationDTO, goodsList.get(0).getId());
|
||||||
goodsOperationDTO1.setPrice(Double.valueOf(map1.get("purchase_price").toString()));
|
|
||||||
goodsService.editGoods(goodsOperationDTO1, goodsList.get(0).getId());
|
|
||||||
} else {
|
} else {
|
||||||
goodsService.fuLuAddGoods(goodsOperationDTO);
|
goodsService.fuLuAddGoods(goodsOperationDTO);
|
||||||
}
|
}
|
||||||
|
i += 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (i == 1) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// if (i == 1) {
|
|
||||||
// break;
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return ResultUtil.success();
|
return ResultUtil.success();
|
||||||
|
@ -191,10 +191,10 @@ lili:
|
|||||||
sk: zhNKVrJK6UPOhqIjn8AQvG37b9sz6
|
sk: zhNKVrJK6UPOhqIjn8AQvG37b9sz6
|
||||||
#域名
|
#域名
|
||||||
domain:
|
domain:
|
||||||
pc: http://zbuyer.sx1788.cn/buyer
|
pc: https://zbuyer.sx1788.cn
|
||||||
wap: http://zshop.sx1788.cn/
|
wap: https://zshop.sx1788.cn
|
||||||
store: http://zseller.sx1788.cn/login
|
store: https://zseller.sx1788.cn
|
||||||
admin: http://zmanager.sx1788.cn/login
|
admin: https://zmanager.sx1788.cn
|
||||||
#api地址
|
#api地址
|
||||||
api:
|
api:
|
||||||
buyer: https://zshop-api.sx1788.cn/buyer-api
|
buyer: https://zshop-api.sx1788.cn/buyer-api
|
||||||
|
Loading…
x
Reference in New Issue
Block a user