Browse Source

20230509 21:08

wangzhuo 2 years ago
parent
commit
a0b7b7d3f8
16 changed files with 477 additions and 214 deletions
  1. 18 0
      blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/entity/PjOrder.java
  2. 32 59
      blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/entity/PjProductLaunch.java
  3. 14 4
      blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/entity/PjShoppingCart.java
  4. 10 0
      blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/enums/OrderTypeEnum.java
  5. 0 67
      blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/excel/ProductLaunchImportExcel.java
  6. 1 4
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/goods/service/impl/GoodsDescServiceImpl.java
  7. 89 7
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/controller/ProductLaunchController.java
  8. 0 4
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/mapper/ProductLaunchMapper.xml
  9. 26 0
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/service/IProductLaunchService.java
  10. 166 13
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/service/impl/ProductLaunchServiceImpl.java
  11. 10 0
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/controller/ShipController.java
  12. 8 0
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/service/IShipService.java
  13. 75 3
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/service/impl/ShipServiceImpl.java
  14. 3 12
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/shoppingCart/controller/ShoppingCartController.java
  15. 1 8
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/shoppingCart/service/IShoppingCartService.java
  16. 24 33
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/shoppingCart/service/impl/ShoppingCartServiceImpl.java

+ 18 - 0
blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/entity/PjOrder.java

@@ -271,6 +271,24 @@ public class PjOrder implements Serializable {
 	private BigDecimal freight;
 
 	/**
+	 * 成本
+	 */
+	@ApiModelProperty(value = "成本")
+	private BigDecimal cost;
+
+	/**
+	 * 毛利
+	 */
+	@ApiModelProperty(value = "毛利")
+	private BigDecimal grossProfit;
+
+	/**
+	 *  销售金额
+	 */
+	@ApiModelProperty(value = "销售金额")
+	private BigDecimal salesAmount;
+
+	/**
 	 * 销售明细list
 	 */
 	@TableField(exist = false)

+ 32 - 59
blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/entity/PjProductLaunch.java

@@ -171,98 +171,71 @@ public class PjProductLaunch implements Serializable {
 	 */
 	@ApiModelProperty(value = "售价4")
 	private BigDecimal priceFour;
-	/**
-	 * 售价5
-	 */
-	@ApiModelProperty(value = "售价5")
-	private BigDecimal priceFive;
-	/**
-	 * 售价6
-	 */
-	@ApiModelProperty(value = "售价6")
-	private BigDecimal priceSix;
-	/**
-	 * 售价7
-	 */
-	@ApiModelProperty(value = "售价7")
-	private BigDecimal priceSeven;
-	/**
-	 * 售价8
-	 */
-	@ApiModelProperty(value = "售价8")
-	private BigDecimal priceEight;
 
 	/**
-	 * 次日达售价1
-	 */
-	@ApiModelProperty(value = "次日达售价1")
-	private BigDecimal nextDayDeliveryPriceOne;
-
-	/**
-	 * 次日达售价2
+	 * 来源id
 	 */
-	@ApiModelProperty(value = "次日达售价2")
-	private BigDecimal nextDayDeliveryPriceTwo;
+	@ApiModelProperty(value = "来源id")
+	private Long sourceId;
 
 	/**
-	 * 次日达售价3
+	 * 来源公司id
 	 */
-	@ApiModelProperty(value = "次日达售价3")
-	private BigDecimal nextDayDeliveryPriceThree;
+	@ApiModelProperty(value = "来源公司id")
+	private Long sourceCompanyId;
 
 	/**
-	 * 次日达售价4
+	 * 共享公司
 	 */
-	@ApiModelProperty(value = "次日达售价4")
-	private BigDecimal nextDayDeliveryPriceFour;
+	@ApiModelProperty(value = "共享公司")
+	private String sharedCompany;
 
 	/**
-	 * 次日达售价5
+	 * 附件明细集合
 	 */
-	@ApiModelProperty(value = "次日达售价5")
-	private BigDecimal nextDayDeliveryPriceFive;
+	@TableField(exist = false)
+	private List<PjProductLaunchFiles> filesList;
 
 	/**
-	 * 次日达售价6
+	 * app用于显示价格字段
 	 */
-	@ApiModelProperty(value = "次日达售价6")
-	private BigDecimal nextDayDeliveryPriceSix;
+	@TableField(exist = false)
+	private BigDecimal mallPrice;
 
 	/**
-	 * 次日达售价7
+	 * 详情页共享公司
 	 */
-	@ApiModelProperty(value = "次日达售价7")
-	private BigDecimal nextDayDeliveryPriceSeven;
+	@TableField(exist = false)
+	private List<PjProductLaunch> shareList;
 
 	/**
-	 * 次日达售价8
+	 * 品牌id
 	 */
-	@ApiModelProperty(value = "次日达售价8")
-	private BigDecimal nextDayDeliveryPriceEight;
+	@ApiModelProperty(value = "品牌id")
+	private Long brandId;
 
 	/**
-	 * 来源id
+	 * 品牌名称
 	 */
-	@ApiModelProperty(value = "来源id")
-	private Long sourceId;
+	@ApiModelProperty(value = "品牌名称")
+	private String brandName;
 
 	/**
-	 * 来源公司id
+	 * 是否共享(0 共享,1 取消共享)
 	 */
-	@ApiModelProperty(value = "来源公司id")
-	private Long sourceCompanyId;
+	@ApiModelProperty(value = "是否共享(0 共享,1 取消共享)")
+	private Integer whetherShare;
 
 	/**
-	 * 共享公司
+	 * 详情文本
 	 */
-	@ApiModelProperty(value = "共享公司")
-	private String sharedCompany;
+	@ApiModelProperty(value = "详情文本")
+	private String detailsText;
 
 	/**
-	 * 附件明细集合
+	 * 数量
 	 */
 	@TableField(exist = false)
-	private List<PjProductLaunchFiles> filesList;
-
+	private BigDecimal goodsNum;
 
 }

+ 14 - 4
blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/entity/PjShoppingCart.java

@@ -138,10 +138,16 @@ public class PjShoppingCart implements Serializable {
 		private Long goodsId;
 
 	/**
-	* 品牌
+	* 品牌id
 	*/
-		@ApiModelProperty(value = "品牌")
-		private String brand;
+		@ApiModelProperty(value = "品牌id")
+		private Long brandId;
+
+	/**
+	 * 品牌名称
+	 */
+	@ApiModelProperty(value = "品牌名称")
+	private String brandName;
 
 	/**
 	* 规格型号
@@ -239,5 +245,9 @@ public class PjShoppingCart implements Serializable {
 		@ApiModelProperty(value = "图片")
 		private String picture;
 
-
+	/**
+	 * 上架管理id
+	 */
+	@ApiModelProperty(value = "上架管理id")
+	private Long productLaunchId;
 }

+ 10 - 0
blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/enums/OrderTypeEnum.java

@@ -98,6 +98,16 @@ public enum OrderTypeEnum {
 	 */
 	WEB("WEB"),
 
+	/**
+	 * 出库工单状态已出库
+	 */
+	OURTBOUND("已出库"),
+
+	/**
+	 * 销售订单状态已发货
+	 */
+	SHIPED("已发货"),
+
 	;
 
 	private final String type;

+ 0 - 67
blade-service-api/blade-sales-part-api/src/main/java/org/springblade/salesPart/excel/ProductLaunchImportExcel.java

@@ -65,73 +65,6 @@ public class ProductLaunchImportExcel implements Serializable {
 	 */
 	@ExcelProperty(value = "售价4")
 	private BigDecimal priceFour;
-	/**
-	 * 售价5
-	 */
-	@ExcelProperty(value = "售价5")
-	private BigDecimal priceFive;
-	/**
-	 * 售价6
-	 */
-	@ExcelProperty(value = "售价6")
-	private BigDecimal priceSix;
-	/**
-	 * 售价7
-	 */
-	@ExcelProperty(value = "售价7")
-	private BigDecimal priceSeven;
-	/**
-	 * 售价8
-	 */
-	@ExcelProperty(value = "售价8")
-	private BigDecimal priceEight;
 
-	/**
-	 * 次日达售价1
-	 */
-	@ExcelProperty(value = "次日达售价1")
-	private BigDecimal nextDayDeliveryPriceOne;
-
-	/**
-	 * 次日达售价2
-	 */
-	@ExcelProperty(value = "次日达售价2")
-	private BigDecimal nextDayDeliveryPriceTwo;
-
-	/**
-	 * 次日达售价3
-	 */
-	@ExcelProperty(value = "次日达售价3")
-	private BigDecimal nextDayDeliveryPriceThree;
-
-	/**
-	 * 次日达售价4
-	 */
-	@ExcelProperty(value = "次日达售价4")
-	private BigDecimal nextDayDeliveryPriceFour;
-
-	/**
-	 * 次日达售价5
-	 */
-	@ExcelProperty(value = "次日达售价5")
-	private BigDecimal nextDayDeliveryPriceFive;
-
-	/**
-	 * 次日达售价6
-	 */
-	@ExcelProperty(value = "次日达售价6")
-	private BigDecimal nextDayDeliveryPriceSix;
-
-	/**
-	 * 次日达售价7
-	 */
-	@ExcelProperty(value = "次日达售价7")
-	private BigDecimal nextDayDeliveryPriceSeven;
-
-	/**
-	 * 次日达售价8
-	 */
-	@ExcelProperty(value = "次日达售价8")
-	private BigDecimal nextDayDeliveryPriceEight;
 
 }

+ 1 - 4
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/goods/service/impl/GoodsDescServiceImpl.java

@@ -264,10 +264,7 @@ public class GoodsDescServiceImpl extends ServiceImpl<GoodsDescMapper, PjGoodsDe
 					goodsTypeDes.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
 					goodsTypeDescMapper.insert(goodsTypeDes);
 				} else {
-					goodsDesc.setId(one.getId());
-					goodsDesc.setUpdateTime(new Date());
-					goodsDesc.setUpdateUser(AuthUtil.getUserId());
-					baseMapper.updateById(goodsDesc);
+					throw new RuntimeException("商品"+ goodsDesc.getCname() +"已存在");
 				}
 			}
 		});

+ 89 - 7
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/controller/ProductLaunchController.java

@@ -17,6 +17,7 @@
 package org.springblade.salesPart.productLaunch.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
@@ -29,17 +30,22 @@ import lombok.AllArgsConstructor;
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 
+import oracle.jdbc.proxy.annotation.Post;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
-import org.springblade.salesPart.entity.PjBrandDesc;
-import org.springblade.salesPart.entity.PjProductLaunch;
+import org.springblade.core.tool.utils.ObjectUtil;
+import org.springblade.salesPart.corps.service.ICorpsAttnService;
+import org.springblade.salesPart.corps.service.ICorpsDescService;
+import org.springblade.salesPart.entity.*;
 import org.springblade.salesPart.excel.GoodsExcel;
 import org.springblade.salesPart.excel.ProductLaunchImportExcel;
+import org.springblade.salesPart.productLaunch.service.IProductLaunchFilesService;
 import org.springblade.salesPart.vo.ProductLaunchVO;
+import org.springblade.system.user.entity.User;
 import org.springframework.web.bind.annotation.*;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.salesPart.productLaunch.service.IProductLaunchService;
@@ -63,6 +69,9 @@ import java.util.stream.Collectors;
 public class ProductLaunchController extends BladeController {
 
 	private final IProductLaunchService productLaunchService;
+	private final IProductLaunchFilesService productLaunchFilesService;
+	private final ICorpsAttnService corpsAttnService;//客户联系人
+	private final ICorpsDescService corpsDescService;//客户
 
 	/**
 	 * 详情
@@ -91,6 +100,9 @@ public class ProductLaunchController extends BladeController {
 			.like(ObjectUtils.isNotEmpty(productLaunch.getSpecificationAndModel()), PjProductLaunch::getSpecificationAndModel, productLaunch.getSpecificationAndModel())//规格型号
 			.eq(ObjectUtils.isNotEmpty(productLaunch.getSalesCompanyId()), PjProductLaunch::getSalesCompanyId, productLaunch.getSalesCompanyId())//公司
 			.like(ObjectUtils.isNotEmpty(productLaunch.getSalesCompanyName()), PjProductLaunch::getSalesCompanyName, productLaunch.getSalesCompanyName());
+		if (productLaunch.getBillType() == 1){
+			lambdaQueryWrapper.eq(PjProductLaunch::getWhetherShare, 0);
+		}
 		IPage<PjProductLaunch> pages = productLaunchService.page(Condition.getPage(query), lambdaQueryWrapper);
 		return R.data(pages);
 	}
@@ -214,18 +226,88 @@ public class ProductLaunchController extends BladeController {
 	 * 分页 小程序配件批发产品上架
 	 */
 	@GetMapping("/appList")
-	@ApiOperationSupport(order = 2)
+	@ApiOperationSupport(order = 12)
 	@ApiOperation(value = "小程序配件批发产品上架", notes = "传入productLaunch")
 	public R<IPage<PjProductLaunch>> appList(PjProductLaunch productLaunch, Query query) {
 		LambdaQueryWrapper<PjProductLaunch> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(PjProductLaunch::getTenantId, AuthUtil.getTenantId())
 			.eq(PjProductLaunch::getIsDeleted, 0)
-			.like(ObjectUtils.isNotEmpty(productLaunch.getCname()), PjProductLaunch::getCname, productLaunch.getCname())//名称
-			.like(ObjectUtils.isNotEmpty(productLaunch.getSpecificationAndModel()), PjProductLaunch::getSpecificationAndModel, productLaunch.getSpecificationAndModel())//规格型号
-			.eq(ObjectUtils.isNotEmpty(productLaunch.getSalesCompanyId()), PjProductLaunch::getSalesCompanyId, productLaunch.getSalesCompanyId())//公司
-			.like(ObjectUtils.isNotEmpty(productLaunch.getSalesCompanyName()), PjProductLaunch::getSalesCompanyName, productLaunch.getSalesCompanyName());
+			.eq(PjProductLaunch::getUpAndDownShelves,1)
+			.eq(ObjectUtils.isNotEmpty(productLaunch.getBrandId()), PjProductLaunch::getBrandId, productLaunch.getBrandId())//品牌
+			.like(ObjectUtils.isNotEmpty(productLaunch.getBrandName()), PjProductLaunch::getBrandName, productLaunch.getBrandName())
+			.ne(PjProductLaunch::getWhetherShare, 1)
+			.orderByAsc(PjProductLaunch::getBillType);
 		IPage<PjProductLaunch> pages = productLaunchService.page(Condition.getPage(query), lambdaQueryWrapper);
+
+		if (CollectionUtils.isNotEmpty(pages.getRecords())){
+
+			PjCorpsDesc corpsDesc = null;
+			//根据当前登录人获得客户
+			PjCorpsAttn corpsAttn = corpsAttnService.getAttn(AuthUtil.getUserId());
+			if (ObjectUtil.isNotEmpty(corpsAttn)){
+				corpsDesc = corpsDescService.getCorpsDesc(corpsAttn.getPid());
+				if (ObjectUtil.isEmpty(corpsDesc)){
+					throw new RuntimeException("当前用户客户不存在");
+				}
+			}else {
+				throw new RuntimeException("当前用户不属于任何客户");
+			}
+
+			PjCorpsDesc finalCorpsDesc = corpsDesc;
+			pages.getRecords().stream().forEach(item ->{
+				item.setFilesList(productLaunchFilesService.list(new QueryWrapper<PjProductLaunchFiles>()
+					.eq("pid", item.getId()).eq("is_deleted", 0)));
+
+				if (StringUtils.isNotBlank(finalCorpsDesc.getPriceSystem())){
+					if ("售价1".equals(finalCorpsDesc.getPriceSystem())){
+						item.setMallPrice(item.getPriceOne());
+					}else if ("售价2".equals(finalCorpsDesc.getPriceSystem())){
+						item.setMallPrice(item.getPriceTwo());
+					}else if ("售价3".equals(finalCorpsDesc.getPriceSystem())){
+						item.setMallPrice(item.getPriceThree());
+					}else if ("售价4".equals(finalCorpsDesc.getPriceSystem())){
+						item.setMallPrice(item.getPriceFour());
+					}
+				}else {
+					item.setMallPrice(item.getPriceOne());
+				}
+			});
+		}
+
 		return R.data(pages);
 	}
 
+	/**
+	 * 小程序详情
+	 */
+	@GetMapping("/appDetail")
+	@ApiOperationSupport(order = 13)
+	@ApiOperation(value = "小程序详情", notes = "传入productLaunch")
+	public R<PjProductLaunch> appDetail(PjProductLaunch productLaunch) {
+		productLaunch.setTenantId(AuthUtil.getTenantId());
+		PjProductLaunch detail = productLaunchService.getAppMessageById(productLaunch);
+		return R.data(detail);
+	}
+
+	/**
+	 * 详情选择所属公司修改价格
+	 */
+	@GetMapping("/appModifyPrice")
+	@ApiOperationSupport(order = 14)
+	@ApiOperation(value = "小程序详情", notes = "传入productLaunch")
+	public R<PjProductLaunch> appModifyPrice(PjProductLaunch productLaunch) {
+		productLaunch.setTenantId(AuthUtil.getTenantId());
+		PjProductLaunch detail = productLaunchService.appModifyPrice(productLaunch);
+		return R.data(detail);
+	}
+
+	/**
+	 * 加入购物车
+	 */
+	@PostMapping("/addToCart")
+	@ApiOperationSupport(order = 15)
+	@ApiOperation(value = "加入购物车", notes = "传入productLaunch")
+	public R addToCart(@Valid @RequestBody PjProductLaunch shoppingCart){
+		return productLaunchService.addToCart(shoppingCart);
+	}
 }

+ 0 - 4
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/mapper/ProductLaunchMapper.xml

@@ -23,10 +23,6 @@
         <result column="price_two" property="priceTwo"/>
         <result column="price_three" property="priceThree"/>
         <result column="price_four" property="priceFour"/>
-        <result column="price_five" property="priceFive"/>
-        <result column="price_six" property="priceSix"/>
-        <result column="price_seven" property="priceSeven"/>
-        <result column="price_eight" property="priceEight"/>
     </resultMap>
 
 

+ 26 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/service/IProductLaunchService.java

@@ -19,6 +19,7 @@ package org.springblade.salesPart.productLaunch.service;
 import org.springblade.core.tool.api.R;
 import org.springblade.salesPart.entity.PjBrandDesc;
 import org.springblade.salesPart.entity.PjProductLaunch;
+import org.springblade.salesPart.entity.PjShoppingCart;
 import org.springblade.salesPart.excel.GoodsExcel;
 import org.springblade.salesPart.excel.ProductLaunchImportExcel;
 import org.springblade.salesPart.vo.ProductLaunchVO;
@@ -74,4 +75,29 @@ public interface IProductLaunchService extends IService<PjProductLaunch> {
 	 * */
 	void batchOperationProductLaunch(List<Long> ids,int flag);
 
+	/**
+	 * 获取app商品详情
+	 *
+	 * @param productLaunch
+	 * @return
+	 */
+	PjProductLaunch getAppMessageById(PjProductLaunch productLaunch);
+
+	/**
+	 * 详情选择所属公司修改价格
+	 *
+	 * @param productLaunch
+	 * @return
+	 */
+	PjProductLaunch appModifyPrice(PjProductLaunch productLaunch);
+
+	/**
+	 * 加入购物车
+	 *
+	 * @param productLaunch
+	 * @return
+	 */
+	R addToCart(PjProductLaunch productLaunch);
+
+
 }

+ 166 - 13
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/service/impl/ProductLaunchServiceImpl.java

@@ -21,13 +21,17 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import lombok.AllArgsConstructor;
+import org.springblade.client.feign.ISerialClient;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.ObjectUtil;
+import org.springblade.salesPart.corps.service.ICorpsAttnService;
+import org.springblade.salesPart.corps.service.ICorpsDescService;
 import org.springblade.salesPart.entity.*;
 import org.springblade.salesPart.excel.ProductLaunchImportExcel;
 import org.springblade.salesPart.goods.mapper.GoodsDescMapper;
 import org.springblade.salesPart.productLaunch.service.IProductLaunchFilesService;
+import org.springblade.salesPart.shoppingCart.mapper.ShoppingCartMapper;
 import org.springblade.salesPart.vo.ProductLaunchVO;
 import org.springblade.salesPart.productLaunch.mapper.ProductLaunchMapper;
 import org.springblade.salesPart.productLaunch.service.IProductLaunchService;
@@ -38,6 +42,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -56,6 +61,10 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 	private final GoodsDescMapper goodsDescMapper;
 	private final ISysClient iSysClient;
 	private final IProductLaunchFilesService productLaunchFilesService;
+	private final ICorpsAttnService corpsAttnService;//客户联系人
+	private final ICorpsDescService corpsDescService;//客户
+	private final ISerialClient serialClient;//生成系统编号
+	private final ShoppingCartMapper shoppingCartMapper;
 
 	@Override
 	public PjProductLaunch getMessageById(PjProductLaunch productLaunch) {
@@ -77,6 +86,7 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 	 * @return
 	 */
 	@Override
+	@Transactional
 	public PjProductLaunch saveMessage(PjProductLaunch productLaunch) {
 
 		if (productLaunch.getId() != null) {
@@ -110,6 +120,22 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 
 		//如果有共享公司 生成共享数据
 		if (ObjectUtil.isNotEmpty(productLaunch.getSharedCompany())){
+
+			LambdaQueryWrapper<PjProductLaunch> queryWrapper = new LambdaQueryWrapper<>();
+			queryWrapper.eq(PjProductLaunch::getTenantId, AuthUtil.getTenantId())
+				.eq(PjProductLaunch::getBillType, 1)
+				.eq(PjProductLaunch::getIsDeleted, 0)
+				.eq(PjProductLaunch::getGoodsId, productLaunch.getGoodsId())
+				.eq(PjProductLaunch::getSourceCompanyId, productLaunch.getSalesCompanyId());
+
+			List<PjProductLaunch> list = baseMapper.selectList(queryWrapper);
+			if (ObjectUtil.isNotEmpty(list)){
+				list.forEach(e -> {
+					e.setWhetherShare(1);
+					baseMapper.updateById(e);
+				});
+			}
+
 			String[] companyIds = productLaunch.getSharedCompany().split(",");
 			for (String id : companyIds) {
 				PjProductLaunch launch = new PjProductLaunch();
@@ -117,6 +143,7 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 
 				LambdaQueryWrapper<PjProductLaunch> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 				lambdaQueryWrapper.eq(PjProductLaunch::getTenantId, AuthUtil.getTenantId())
+					.eq(PjProductLaunch::getIsDeleted, 0)
 					.eq(PjProductLaunch::getBillType, 1)
 					.eq(PjProductLaunch::getGoodsId, productLaunch.getGoodsId())
 					.eq(PjProductLaunch::getSalesCompanyId, id)
@@ -127,11 +154,13 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 
 					launch.setId(null);
 					launch.setBillType(1);
+					launch.setWhetherShare(0);
 					launch.setCreateUser(AuthUtil.getUserId());
 					launch.setCreateTime(new Date());
 					launch.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
 					launch.setSourceId(productLaunch.getId());
 					launch.setSourceCompanyId(productLaunch.getSalesCompanyId());
+					launch.setTenantId(AuthUtil.getTenantId());
 					R<Dept> dept = iSysClient.getDept(Long.valueOf(id));
 					if (ObjectUtil.isNotEmpty(dept)) {
 						launch.setSalesCompanyId(Long.valueOf(id));
@@ -144,6 +173,7 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 				}else {
 					launch.setUpdateTime(new Date());
 					launch.setUpdateUser(AuthUtil.getUserId());
+					launch.setWhetherShare(0);
 					baseMapper.updateById(launch);
 				}
 			}
@@ -158,7 +188,7 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 
 			if (ObjectUtil.isNotEmpty(selectList)){
 				selectList.forEach(e -> {
-					e.setIsDeleted(1);
+					e.setWhetherShare(1);
 					baseMapper.updateById(e);
 				});
 			}
@@ -174,6 +204,7 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 	 * @return
 	 */
 	@Override
+	@Transactional
 	public R importProductLaunch(List<ProductLaunchImportExcel> data, Boolean isCovered) {
 		if (CollectionUtils.isEmpty(data)) {
 			throw new SecurityException("导入数据不能为空");
@@ -192,6 +223,8 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 			if (ObjectUtil.isNotEmpty(pjGoodsDesc)){
 				//商品id
 				productLaunch.setGoodsId(pjGoodsDesc.getId());
+				productLaunch.setBrandId(pjGoodsDesc.getBrandId());
+				productLaunch.setBrandName(pjGoodsDesc.getBrandName());
 			}else {
 				throw new RuntimeException("商品名称错误或商品不存在");
 			}
@@ -212,18 +245,6 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 			productLaunch.setPriceTwo(e.getPriceTwo());
 			productLaunch.setPriceThree(e.getPriceThree());
 			productLaunch.setPriceFour(e.getPriceFour());
-			productLaunch.setPriceFive(e.getPriceFive());
-			productLaunch.setPriceSix(e.getPriceSix());
-			productLaunch.setPriceSeven(e.getPriceSeven());
-			productLaunch.setPriceEight(e.getPriceEight());
-			productLaunch.setNextDayDeliveryPriceOne(e.getNextDayDeliveryPriceOne());
-			productLaunch.setNextDayDeliveryPriceTwo(e.getNextDayDeliveryPriceTwo());
-			productLaunch.setNextDayDeliveryPriceThree(e.getNextDayDeliveryPriceThree());
-			productLaunch.setNextDayDeliveryPriceFour(e.getNextDayDeliveryPriceFour());
-			productLaunch.setNextDayDeliveryPriceFive(e.getNextDayDeliveryPriceFive());
-			productLaunch.setNextDayDeliveryPriceSix(e.getNextDayDeliveryPriceSix());
-			productLaunch.setNextDayDeliveryPriceSeven(e.getNextDayDeliveryPriceSeven());
-			productLaunch.setNextDayDeliveryPriceEight(e.getNextDayDeliveryPriceEight());
 
 			// 如果名称相等 就认为重复
 			LambdaQueryWrapper<PjProductLaunch> queryWrapper = new LambdaQueryWrapper<>();
@@ -237,6 +258,7 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 				productLaunch.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
 				productLaunch.setCreateTime(new Date());
 				productLaunch.setCreateUser(AuthUtil.getUserId());
+				productLaunch.setTenantId(AuthUtil.getTenantId());
 				baseMapper.insert(productLaunch);
 			}else {
 				productLaunch.setId(one.getId());
@@ -269,4 +291,135 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 
 	}
 
+	/**
+	 * 小程序详情
+	 */
+	@Override
+	public PjProductLaunch getAppMessageById(PjProductLaunch productLaunch) {
+		PjProductLaunch detail = baseMapper.selectById(productLaunch.getId());
+
+		//获得附件
+		detail.setFilesList(productLaunchFilesService.list(new QueryWrapper<PjProductLaunchFiles>()
+			.eq("pid", productLaunch.getId())
+			.eq("is_deleted", 0)));
+
+		PjCorpsDesc corpsDesc = null;
+		//根据当前登录人获得客户
+		PjCorpsAttn corpsAttn = corpsAttnService.getAttn(AuthUtil.getUserId());
+		if (ObjectUtil.isNotEmpty(corpsAttn)){
+			corpsDesc = corpsDescService.getCorpsDesc(corpsAttn.getPid());
+			if (ObjectUtil.isEmpty(corpsDesc)){
+				throw new RuntimeException("当前用户客户不存在");
+			}else {
+				if (ObjectUtil.isNotEmpty(corpsDesc.getPriceSystem())){
+					if ("售价1".equals(corpsDesc.getPriceSystem())){
+						detail.setMallPrice(detail.getPriceOne());
+					}else if ("售价2".equals(corpsDesc.getPriceSystem())){
+						detail.setMallPrice(detail.getPriceTwo());
+					}else if ("售价3".equals(corpsDesc.getPriceSystem())){
+						detail.setMallPrice(detail.getPriceThree());
+					}else if ("售价4".equals(corpsDesc.getPriceSystem())){
+						detail.setMallPrice(detail.getPriceFour());
+					}
+				}else {
+					detail.setMallPrice(detail.getPriceOne());
+				}
+			}
+		}
+
+		if (detail.getBillType() != 1){
+			LambdaQueryWrapper<PjProductLaunch> queryWrapper = new LambdaQueryWrapper<>();
+			queryWrapper.eq(PjProductLaunch::getTenantId, AuthUtil.getTenantId())
+				.eq(PjProductLaunch::getBillType, 1)
+				.eq(PjProductLaunch::getIsDeleted, 0)
+				.eq(PjProductLaunch::getGoodsId, detail.getGoodsId())
+				.eq(PjProductLaunch::getSalesCompanyId, detail.getSalesCompanyId());
+
+			List<PjProductLaunch> list = baseMapper.selectList(queryWrapper);
+			detail.setShareList(list);
+		}
+
+		return detail;
+	}
+
+	/**
+	 * 详情选择所属公司修改价格
+	 *
+	 * @param productLaunch
+	 * @return
+	 */
+	@Override
+	public PjProductLaunch appModifyPrice(PjProductLaunch productLaunch) {
+		PjProductLaunch detail = baseMapper.selectById(productLaunch.getId());
+
+		PjCorpsDesc corpsDesc = null;
+		//根据当前登录人获得客户
+		PjCorpsAttn corpsAttn = corpsAttnService.getAttn(AuthUtil.getUserId());
+		if (ObjectUtil.isNotEmpty(corpsAttn)){
+			corpsDesc = corpsDescService.getCorpsDesc(corpsAttn.getPid());
+			if (ObjectUtil.isEmpty(corpsDesc)){
+				throw new RuntimeException("当前用户客户不存在");
+			}else {
+				if (ObjectUtil.isNotEmpty(corpsDesc.getPriceSystem())){
+					if ("售价1".equals(corpsDesc.getPriceSystem())){
+						detail.setMallPrice(detail.getPriceOne());
+					}else if ("售价2".equals(corpsDesc.getPriceSystem())){
+						detail.setMallPrice(detail.getPriceTwo());
+					}else if ("售价3".equals(corpsDesc.getPriceSystem())){
+						detail.setMallPrice(detail.getPriceThree());
+					}else if ("售价4".equals(corpsDesc.getPriceSystem())){
+						detail.setMallPrice(detail.getPriceFour());
+					}
+				}else {
+					detail.setMallPrice(detail.getPriceOne());
+				}
+			}
+		}
+
+		return detail;
+	}
+
+	/**
+	 * 加入购物车
+	 *
+	 * @param productLaunch
+	 * @return
+	 */
+	@Override
+	@Transactional
+	public R addToCart(PjProductLaunch productLaunch) {
+		// 获取系统编号
+		R billNo = serialClient.getBillNo("GWC", "GWC", "GWC");
+		if (billNo.getCode() != 200) {
+			TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+			return R.fail(500, "生成系统编号失败");
+		}
+		PjShoppingCart shoppingCart = new PjShoppingCart();
+		shoppingCart.setBillNo((String) billNo.getData());
+		shoppingCart.setCreateUser(AuthUtil.getUserId());
+		shoppingCart.setCreateTime(new Date());
+		shoppingCart.setTenantId(AuthUtil.getTenantId());
+
+		//商品名称
+		PjGoodsDesc goodsDesc = goodsDescMapper.selectById(productLaunch.getGoodsId());
+		shoppingCart.setGoodsName(goodsDesc.getCname());
+		shoppingCart.setGoodsNo(goodsDesc.getCode());
+		shoppingCart.setPropertyName(goodsDesc.getSpecificationAndModel());
+		shoppingCart.setPattern(goodsDesc.getBrandItem());
+		shoppingCart.setGoodsDescription(goodsDesc.getGoodsDescription());
+		shoppingCart.setUnits(goodsDesc.getUnit());
+		shoppingCart.setBrandId(goodsDesc.getBrandId());
+		shoppingCart.setBrandName(goodsDesc.getBrandName());
+		shoppingCart.setGoodsNum(productLaunch.getGoodsNum());
+		shoppingCart.setSalesCompanyId(productLaunch.getSalesCompanyId());
+		shoppingCart.setSalesCompanyName(productLaunch.getSalesCompanyName());
+		shoppingCart.setPrice(productLaunch.getMallPrice());
+		shoppingCart.setProductLaunchId(productLaunch.getId());
+		shoppingCart.setSalesCompanyId(productLaunch.getSalesCompanyId());
+		shoppingCart.setSalesCompanyName(productLaunch.getSalesCompanyName());
+
+		shoppingCartMapper.insert(shoppingCart);
+		return R.success("操作成功");
+	}
+
 }

+ 10 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/controller/ShipController.java

@@ -179,4 +179,14 @@ public class ShipController extends BladeController {
 		return shipService.outboundWorkOrder(ids);
 	}
 
+	/**
+	 * 出库完成
+	 */
+	@GetMapping("/outboundCompleted")
+	@ApiOperationSupport(order = 10)
+	@ApiOperation(value = "出库完成", notes = "传入ship")
+	public R outboundCompleted(PjShip ship){
+		return shipService.outboundCompleted(ship);
+	}
+
 }

+ 8 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/service/IShipService.java

@@ -64,4 +64,12 @@ public interface IShipService extends IService<PjShip> {
 	 */
 	R outboundWorkOrder(String ids);
 
+	/**
+	 * 出库完成
+	 *
+	 * @param ship
+	 * @return
+	 */
+	R outboundCompleted(PjShip ship);
+
 }

+ 75 - 3
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/service/impl/ShipServiceImpl.java

@@ -26,11 +26,13 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.ObjectUtil;
+import org.springblade.salesPart.entity.PjOrder;
 import org.springblade.salesPart.entity.PjOrderItems;
 import org.springblade.salesPart.entity.PjShip;
 import org.springblade.salesPart.entity.PjShipItems;
 import org.springblade.salesPart.enums.OrderTypeEnum;
 import org.springblade.salesPart.order.mapper.OrderItemsMapper;
+import org.springblade.salesPart.order.mapper.OrderMapper;
 import org.springblade.salesPart.ship.mapper.ShipItemsMapper;
 import org.springblade.salesPart.vo.ShipVO;
 import org.springblade.salesPart.ship.mapper.ShipMapper;
@@ -57,9 +59,10 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 	/**
 	 * 生成系统编号
 	 */
-	private ISerialClient serialClient;
-	private OrderItemsMapper orderItemsMapper;
-	private ShipItemsMapper shipItemsMapper;
+	private final ISerialClient serialClient;
+	private final OrderItemsMapper orderItemsMapper;
+	private final ShipItemsMapper shipItemsMapper;
+	private final OrderMapper orderMapper;
 
 	/**
 	 * 获取收发货订单详情
@@ -201,4 +204,73 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 		return R.success("操作成功");
 	}
 
+	/**
+	 * 出库完成
+	 *
+	 * @param ship
+	 * @return
+	 */
+	@Override
+	@Transactional
+	public R outboundCompleted(PjShip ship) {
+		ship.setStatusName(OrderTypeEnum.OURTBOUND.getType());
+		if (ship.getId() == null){
+			// 获取系统编号
+			R billNo = serialClient.getBillNo(ship.getBizTypeName(), ship.getBizTypeName(), ship.getBizTypeName());
+			if (billNo.getCode() != 200) {
+				TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+				return R.fail(500, "生成系统编号失败");
+			}
+			ship.setBillno((String) billNo.getData());
+			ship.setCreateTime(new Date());
+			ship.setCreateUser(AuthUtil.getUserId());
+			ship.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
+			ship.setTenantId(AuthUtil.getTenantId());
+			baseMapper.insert(ship);
+		}else {
+			ship.setUpdateUser(AuthUtil.getUserId());
+			ship.setUpdateTime(new Date());
+			baseMapper.updateById(ship);
+		}
+
+		// 保存订单明细
+		if (CollectionUtils.isNotEmpty(ship.getShipItemsList())) {
+			ship.getShipItemsList().forEach(item -> {
+				if (item.getId() == null){
+					item.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
+					item.setCreateTime(new Date());
+					item.setCreateUser(AuthUtil.getUserId());
+					item.setPid(ship.getId());
+					item.setTenantId(AuthUtil.getTenantId());
+					shipItemsMapper.insert(item);
+				}else {
+					item.setUpdateTime(new Date());
+					item.setUpdateUser(AuthUtil.getUserId());
+					item.setPid(ship.getId());
+					shipItemsMapper.updateById(item);
+				}
+
+				PjOrderItems orderItems = orderItemsMapper.selectById(item.getSrcItemId());
+				if (ObjectUtil.isNotEmpty(orderItems)){
+					orderItems.setSendNum(item.getSendNum());
+					orderItemsMapper.updateById(orderItems);
+				}else {
+					throw new RuntimeException("数据异常请联系管理员");
+				}
+			});
+			ship.setShipItemsList(ship.getShipItemsList());
+			ship.setNumberRows(ship.getShipItemsList().size());
+		}
+
+		PjOrder order = orderMapper.selectById(ship.getOrdId());
+		if (ObjectUtil.isNotEmpty(order)){
+			order.setStatus(OrderTypeEnum.SHIPED.getType());
+			orderMapper.updateById(order);
+		}else {
+			throw new RuntimeException("数据异常请联系管理员");
+		}
+
+		return R.data(ship);
+	}
+
 }

+ 3 - 12
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/shoppingCart/controller/ShoppingCartController.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.salesPart.shoppingCart.controller;
 
+import com.alibaba.cloud.commons.lang.StringUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -80,8 +81,8 @@ public class ShoppingCartController extends BladeController {
 			.eq(PjShoppingCart::getCreateUser, AuthUtil.getUserId());
 		List<PjShoppingCart> list = shoppingCartService.list(lambdaQueryWrapper);
 
-		//按照仓库分组
-		Map<String, List<PjShoppingCart>> map = list.stream().collect(Collectors.groupingBy(PjShoppingCart::getStorageName));
+		//按照所属公司分组
+		Map<String, List<PjShoppingCart>> map = list.stream().filter(item-> StringUtils.isNotBlank(item.getSalesCompanyName())).collect(Collectors.groupingBy(PjShoppingCart::getSalesCompanyName));
 		return R.data(map);
 	}
 
@@ -140,16 +141,6 @@ public class ShoppingCartController extends BladeController {
 	}
 
 	/**
-	 * 加入购物车
-	 */
-	@GetMapping("/addToCart")
-	@ApiOperationSupport(order = 9)
-	@ApiOperation(value = "加入购物车", notes = "传入shoppingCart")
-	public R addToCart(PjShoppingCart shoppingCart){
-		return shoppingCartService.addToCart(shoppingCart);
-	}
-
-	/**
 	 * 购物车生成销售单
 	 */
 	@GetMapping("/generateOrder")

+ 1 - 8
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/shoppingCart/service/IShoppingCartService.java

@@ -52,19 +52,12 @@ public interface IShoppingCartService extends IService<PjShoppingCart> {
 	 */
 	IPage<ShoppingCartVO> selectShoppingCartPage(IPage<ShoppingCartVO> page, ShoppingCartVO shoppingCart);
 
-	/**
-	 * 加入购物车
-	 *
-	 * @param shoppingCart
-	 * @return
-	 */
-	R addToCart(PjShoppingCart shoppingCart);
 
 	/**
 	 * 购物车生成销售单
 	 *
 	 * @param address 	地址
-	 * @param map		按仓库分类的商品集合
+	 * @param map		按所属公司分类的商品集合
 	 */
 	R generateOrder(String address, Map<String, List<PjShoppingCart>> map);
 

+ 24 - 33
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/shoppingCart/service/impl/ShoppingCartServiceImpl.java

@@ -29,6 +29,7 @@ import org.springblade.salesPart.enums.OrderTypeEnum;
 import org.springblade.salesPart.goods.mapper.GoodsDescMapper;
 import org.springblade.salesPart.order.mapper.OrderItemsMapper;
 import org.springblade.salesPart.order.mapper.OrderMapper;
+import org.springblade.salesPart.productLaunch.mapper.ProductLaunchMapper;
 import org.springblade.salesPart.shoppingCart.mapper.ShoppingCartMapper;
 import org.springblade.salesPart.shoppingCart.service.IShoppingCartService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -63,6 +64,7 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 	private final ICorpsDescService corpsDescService;//客户
 	private final OrderMapper orderMapper;
 	private final OrderItemsMapper orderItemsMapper;
+	private final ProductLaunchMapper productLaunchMapper;
 
 	/**
 	 * 保存修改购物车信息
@@ -103,41 +105,13 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 	}
 
 	/**
-	 * 加入购物车
-	 *
-	 * @param shoppingCart
-	 * @return
-	 */
-	@Override
-	@Transactional
-	public R addToCart(PjShoppingCart shoppingCart) {
-		// 获取系统编号
-		R billNo = serialClient.getBillNo("GWC", "GWC", "GWC");
-		if (billNo.getCode() != 200) {
-			TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-			return R.fail(500, "生成系统编号失败");
-		}
-		shoppingCart.setBillNo((String) billNo.getData());
-		shoppingCart.setCreateUser(AuthUtil.getUserId());
-		shoppingCart.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
-		shoppingCart.setCreateTime(new Date());
-
-		//仓库名称
-		shoppingCart.setStorageName(storageDescMapper.selectById(shoppingCart.getStorageId()).getCname());
-		//商品名称
-		shoppingCart.setGoodsName(goodsDescMapper.selectById(shoppingCart.getGoodsId()).getCname());
-
-		baseMapper.insert(shoppingCart);
-		return R.success("操作成功");
-	}
-
-	/**
 	 * 购物车生成销售单
 	 *
 	 * @param address 	地址
-	 * @param map		按仓库分类的商品集合
+	 * @param map		按所属公司分类的商品集合
 	 */
 	@Override
+	@Transactional
 	public R generateOrder(String address, Map<String, List<PjShoppingCart>> map) {
 
 		//从集合中取出商品生成销售单
@@ -151,6 +125,8 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 				if (ObjectUtil.isEmpty(corpsDesc)){
 					throw new RuntimeException("当前用户客户不存在");
 				}
+			}else {
+				throw new RuntimeException("当前用户不属于任何客户");
 			}
 
 			PjCorpsDesc finalCorpsDesc = corpsDesc;
@@ -176,8 +152,8 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 					order.setXcxStatus(OrderTypeEnum.XSDFH.getType());
 					order.setCustomerId(finalCorpsDesc.getId());
 					order.setCustomerName(finalCorpsDesc.getCname());
-					order.setStorageId(list.get(0).getStorageId());
-					order.setStorageName(k);
+					order.setSalesCompanyId(list.get(0).getSalesCompanyId());
+					order.setSalesCompanyName(k);
 					order.setRecAddress(address);
 					order.setContacts(corpsAttn.getCname());
 					order.setPhone(corpsAttn.getTel());
@@ -201,6 +177,17 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 							orderItems.setBizType(order.getBsType());
 							orderItemsMapper.insert(orderItems);
 
+							//生成完毕删除购物车
+							e.setIsDeleted(1);
+							baseMapper.updateById(e);
+
+							//修改上架管理库存
+							PjProductLaunch productLaunch = productLaunchMapper.selectById(e.getProductLaunchId());
+							if (ObjectUtil.isNotEmpty(productLaunch)){
+								productLaunch.setInventory(productLaunch.getInventory().subtract(e.getGoodsNum()));
+								productLaunchMapper.updateById(productLaunch);
+							}
+
 						});
 						BigDecimal totalMoney = BigDecimal.ZERO;
 						order.setNumberRows(list.size());//行数
@@ -212,10 +199,14 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 							return x.add(y.getGoodsNum().multiply(y.getPrice()));
 						},BigDecimal::add).setScale(2,BigDecimal.ROUND_HALF_UP);
 
-						if (list.size() == 1){
+						order.setSalesAmount(totalMoney);
+
+						if (list.size() == 1){//只有一条明细加5元运费
 							totalMoney.add(new BigDecimal(5));
+							order.setFreight(new BigDecimal(5));
 						}
 						order.setTotalMoney(totalMoney);
+
 					}
 
 					orderMapper.updateById(order);