|
@@ -56,6 +56,8 @@ public class GoodsServiceImpl implements GoodsService {
|
|
|
private ThirdMerchantBizDao thirdMerchantBizDao;
|
|
|
@Autowired
|
|
|
private MngChangeDao mngChangeDao;
|
|
|
+ @Autowired
|
|
|
+ private MerchUserDao merchUserDao;
|
|
|
|
|
|
@Override
|
|
|
public GoodsEntity queryObject(Integer id) {
|
|
@@ -335,20 +337,6 @@ public class GoodsServiceImpl implements GoodsService {
|
|
|
if (galleryEntityList == null || galleryEntityList.size() <= 0) {
|
|
|
throw new RRException("至少保留一张商品轮播图!");
|
|
|
}
|
|
|
- List<ProductStoreRelaEntity> proStoreList = productStoreRelaDao.queryByGoodsId(goodsEntity.getId());
|
|
|
- Long[] storeIds = new Long[proStoreList.size()];
|
|
|
- if(goodsEntity.getIsStockShare().equalsIgnoreCase(Dict.isStockShare.item_0.getItem())) {
|
|
|
- Integer goodsNumber = goods.getGoodsNumber();//商品总库存
|
|
|
- Integer storeTotalGoodsNumber = 0;//商品分配库存
|
|
|
- for (int i = 0; i < proStoreList.size(); i++) {
|
|
|
- ProductStoreRelaEntity relaEntity = proStoreList.get(i);
|
|
|
- storeTotalGoodsNumber = storeTotalGoodsNumber + relaEntity.getStockNum();
|
|
|
- storeIds[i] = relaEntity.getStoreId();
|
|
|
- }
|
|
|
- if (goodsNumber < storeTotalGoodsNumber) {
|
|
|
- throw new RRException("该商品已在各门店分配库存" + storeTotalGoodsNumber + ",当前商品总库存不能小于分配库存总额!请先修改门店库存!");
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
List<GoodsEntity> prodbarGoodsList = goodsDao.queryObjectByProdBarcode(goods.getProdBarcode(),goods.getMerchSn(),goods.getId());
|
|
|
if(prodbarGoodsList != null && prodbarGoodsList.size() > 0){
|
|
@@ -412,9 +400,12 @@ public class GoodsServiceImpl implements GoodsService {
|
|
|
goodsDao.update(goods);
|
|
|
|
|
|
// 保税商品修改各个门店商品价格
|
|
|
- List<ProductStoreRelaEntity> productStoreRelaEntityList = productStoreRelaDao.queryByGoodsId(goods.getId());
|
|
|
+ List<ProductStoreRelaEntity> productStoreRelaEntityList = productStoreRelaDao.queryByGoodsId(goodsEntity.getId());
|
|
|
+ Long[] storeIds = new Long[productStoreRelaEntityList.size()];
|
|
|
+ Integer goodsNumber = goods.getGoodsNumber();//商品总库存
|
|
|
+ Integer storeTotalGoodsNumber = 0;//商品分配库存
|
|
|
if (productStoreRelaEntityList != null && productStoreRelaEntityList.size() > 0) {
|
|
|
- for (ProductStoreRelaEntity productStoreRela : productStoreRelaEntityList) {
|
|
|
+ for (int i = 0; i < productStoreRelaEntityList.size(); i++) {
|
|
|
//修改该商品的所属商户信息,如在该商户门店中有该上架的商品信息,则提示该商品不能修改
|
|
|
/*if(org.apache.commons.lang3.StringUtils.isNotEmpty(productStoreRela.getMerchSn()) && productStoreRela.getMerchSn().equalsIgnoreCase(goods.getMerchSn())
|
|
|
&& goods.getIsOnSale() == Integer.parseInt(Dict.isOnSale.item_1.getItem())) {
|
|
@@ -439,13 +430,21 @@ public class GoodsServiceImpl implements GoodsService {
|
|
|
throw new RRException("商品编码为【" + goods.getGoodsSn() + "】的商品已上架在商户编号为【" + productStoreRela.getMerchSn() + "】的门店中,可先将该商品下架后再进行修改!");
|
|
|
}
|
|
|
}*/
|
|
|
- if(org.apache.commons.lang3.StringUtils.isNotEmpty(productStoreRela.getMerchSn()) && productStoreRela.getMerchSn().equalsIgnoreCase(goods.getMerchSn())
|
|
|
+ ProductStoreRelaEntity relaEntity = productStoreRelaEntityList.get(i);
|
|
|
+ if(org.apache.commons.lang3.StringUtils.isNotEmpty(relaEntity.getMerchSn()) && relaEntity.getMerchSn().equalsIgnoreCase(goods.getMerchSn())
|
|
|
&& goods.getIsOnSale() == Integer.parseInt(Dict.isOnSale.item_1.getItem())) {
|
|
|
}else {
|
|
|
if (goods.getIsOnSale() != Integer.parseInt(Dict.isOnSale.item_0.getItem())) {
|
|
|
- throw new RRException("商品编码为【" + goods.getGoodsSn() + "】的商品已上架在商户编号为【" + productStoreRela.getMerchSn() + "】的门店中,可先将该商品下架后再进行修改!");
|
|
|
+ throw new RRException("商品编码为【" + goods.getGoodsSn() + "】的商品已上架在商户编号为【" + relaEntity.getMerchSn() + "】的门店中,可先将该商品下架后再进行修改!");
|
|
|
}
|
|
|
}
|
|
|
+ storeTotalGoodsNumber = storeTotalGoodsNumber + relaEntity.getStockNum();
|
|
|
+ storeIds[i] = relaEntity.getStoreId();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(goodsEntity.getIsStockShare().equalsIgnoreCase(Dict.isStockShare.item_0.getItem())) {
|
|
|
+ if (goodsNumber < storeTotalGoodsNumber) {
|
|
|
+ throw new RRException("该商品已在各门店分配库存" + storeTotalGoodsNumber + ",当前商品总库存不能小于分配库存总额!请先修改门店库存!");
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -525,6 +524,12 @@ public class GoodsServiceImpl implements GoodsService {
|
|
|
goodsSpecificationDao.save(goodsSpecification);
|
|
|
}
|
|
|
|
|
|
+ //更新门店商品是否有修改字段
|
|
|
+ if(storeIds.length > 0){
|
|
|
+ for(int i=0;i<storeIds.length;i++){
|
|
|
+ updateLoadGoodsByStoreId(storeIds[i], user);
|
|
|
+ }
|
|
|
+ }
|
|
|
if(product == null){
|
|
|
product = new ProductEntity();
|
|
|
product.setGoodsSn(goods.getGoodsSn());
|
|
@@ -540,12 +545,6 @@ public class GoodsServiceImpl implements GoodsService {
|
|
|
return productDao.update(product);
|
|
|
}
|
|
|
}
|
|
|
- //更新门店商品是否有修改字段
|
|
|
- if(storeIds.length > 0){
|
|
|
- for(int i=0;i<storeIds.length;i++){
|
|
|
- updateLoadGoodsByStoreId(storeIds[i], user);
|
|
|
- }
|
|
|
- }
|
|
|
return 1;
|
|
|
}
|
|
|
|
|
@@ -555,12 +554,13 @@ public class GoodsServiceImpl implements GoodsService {
|
|
|
* @param user
|
|
|
*/
|
|
|
private void updateLoadGoodsByStoreId(Long storeId, SysUserEntity user){
|
|
|
- StoreEntity storeEntity = new StoreEntity();
|
|
|
- storeEntity.setIsLoadGoods("1");
|
|
|
- storeEntity.setModerSn(user.getUsername());
|
|
|
- storeEntity.setModTime(new Date());
|
|
|
- storeEntity.setId(storeId);
|
|
|
- storeDao.update(storeEntity);
|
|
|
+ List<MerchUserEntity> list = merchUserDao.queryMerchUserByLoadGoods(storeId);
|
|
|
+ for(MerchUserEntity entity : list) {
|
|
|
+ entity.setIsLoadGoods("1");
|
|
|
+ entity.setModerSn(user.getUsername());
|
|
|
+ entity.setStoreId(Integer.valueOf(String.valueOf(storeId)));
|
|
|
+ merchUserDao.updateStoreLoadGoodsById(entity);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|