Преглед изворни кода

Merge branch 'master' of http://git.ds-bay.com/project/kmall-pt-general

 Conflicts:
	kmall-admin/src/main/webapp/js/sale/sale.js
xwh пре 4 година
родитељ
комит
ff4e31985f
51 измењених фајлова са 427 додато и 271 уклоњено
  1. 1 1
      kmall-admin/src/main/java/com/kmall/admin/controller/BrandController.java
  2. 2 0
      kmall-admin/src/main/java/com/kmall/admin/dao/MkActivitiesCouponDao.java
  3. 30 0
      kmall-admin/src/main/java/com/kmall/admin/entity/GoodsEntity.java
  4. 21 0
      kmall-admin/src/main/java/com/kmall/admin/entity/OrderGoodsEntity.java
  5. 2 0
      kmall-admin/src/main/java/com/kmall/admin/service/MkActivitiesCouponService.java
  6. 4 4
      kmall-admin/src/main/java/com/kmall/admin/service/impl/CategoryServiceImpl.java
  7. 5 0
      kmall-admin/src/main/java/com/kmall/admin/service/impl/MkActivitiesCouponServiceImpl.java
  8. 32 2
      kmall-admin/src/main/java/com/kmall/admin/service/impl/OrderServiceImpl.java
  9. 5 5
      kmall-admin/src/main/java/com/kmall/admin/service/impl/ProductStoreRelaServiceImpl.java
  10. 5 5
      kmall-admin/src/main/resources/XmlTemplate/StoreGoodsDtoList.xml
  11. 5 8
      kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesCombinationPriceDao.xml
  12. 21 2
      kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesCouponDao.xml
  13. 2 2
      kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesDiscountDao.xml
  14. 2 2
      kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesFullGiftDao.xml
  15. 2 2
      kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesFullReductionDao.xml
  16. 2 2
      kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesGetOneFreeGoodsDao.xml
  17. 2 2
      kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesPromotionDao.xml
  18. 2 2
      kmall-admin/src/main/resources/mybatis/mapper/MkDailyActivitiesDao.xml
  19. 4 0
      kmall-admin/src/main/resources/mybatis/mapper/OrderGoodsDao.xml
  20. 9 12
      kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiescombinationprice.html
  21. 3 9
      kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiescoupon.html
  22. 2 8
      kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiesdiscount.html
  23. 3 9
      kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiesfullgift.html
  24. 3 9
      kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiesfullreduction.html
  25. 2 8
      kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiesgetonefreegoods.html
  26. 3 9
      kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiespromotion.html
  27. 2 8
      kmall-admin/src/main/webapp/WEB-INF/page/mk/mkdailyactivities.html
  28. 37 14
      kmall-admin/src/main/webapp/WEB-INF/page/sale/sale.html
  29. 7 7
      kmall-admin/src/main/webapp/WEB-INF/page/shop/category.html
  30. 5 2
      kmall-admin/src/main/webapp/WEB-INF/page/shop/goods.html
  31. 1 1
      kmall-admin/src/main/webapp/WEB-INF/page/shop/goodsexportpdf.html
  32. 1 0
      kmall-admin/src/main/webapp/WEB-INF/page/shop/goodstransportinfodetail.html
  33. 8 8
      kmall-admin/src/main/webapp/WEB-INF/page/shop/storeProductStock.html
  34. 0 8
      kmall-admin/src/main/webapp/js/mk/mk2memberbirthday.js
  35. 10 9
      kmall-admin/src/main/webapp/js/mk/mkactivitiescombinationprice.js
  36. 11 8
      kmall-admin/src/main/webapp/js/mk/mkactivitiescoupon.js
  37. 13 11
      kmall-admin/src/main/webapp/js/mk/mkactivitiesdiscount.js
  38. 14 12
      kmall-admin/src/main/webapp/js/mk/mkactivitiesfullgift.js
  39. 14 11
      kmall-admin/src/main/webapp/js/mk/mkactivitiesfullreduction.js
  40. 11 11
      kmall-admin/src/main/webapp/js/mk/mkactivitiesgetonefreegoods.js
  41. 13 11
      kmall-admin/src/main/webapp/js/mk/mkactivitiespromotion.js
  42. 1 2
      kmall-admin/src/main/webapp/js/mk/mkactivityform.js
  43. 13 10
      kmall-admin/src/main/webapp/js/mk/mkdailyactivities.js
  44. 65 20
      kmall-admin/src/main/webapp/js/sale/sale.js
  45. 1 1
      kmall-admin/src/main/webapp/js/shop/attribute.js
  46. 1 9
      kmall-admin/src/main/webapp/js/shop/goodstransportinfodetail.js
  47. 3 3
      kmall-admin/src/main/webapp/js/shop/supplier.js
  48. BIN
      kmall-admin/src/main/webapp/statics/file/activities_get_one_free_goods_yyyy_mm_dd_v1.0.0.xlsx
  49. BIN
      kmall-admin/src/main/webapp/statics/file/store_goods_export_yyyy_mm_dd_v1.0.0.xls
  50. 22 0
      kmall-api/src/main/java/com/kmall/api/entity/OrderGoodsVo.java
  51. 0 2
      kmall-common/src/main/java/com/kmall/common/fileserver/util/FileManager.java

+ 1 - 1
kmall-admin/src/main/java/com/kmall/admin/controller/BrandController.java

@@ -34,7 +34,7 @@ public class BrandController {
     @RequiresPermissions("brand:list")
     public R list(@RequestParam Map<String, Object> params) {
         ParamUtils.setQueryPowerByRoleType(params, "storeId", "merchSn", "thirdPartyMerchCode");
-        ParamUtils.setName(params, "name");
+//        ParamUtils.setName(params, "name");
 
         //查询列表数据
         Query query = new Query(params);

+ 2 - 0
kmall-admin/src/main/java/com/kmall/admin/dao/MkActivitiesCouponDao.java

@@ -21,4 +21,6 @@ public interface MkActivitiesCouponDao extends BaseDao<MkActivitiesCouponEntity>
      */
     MkActivitiesCouponEntity queryByBarCode(@Param("mkaId") Long mkaId,
                                             @Param("prodBarcode") String prodBarcode);
+
+    MkActivitiesCouponEntity queryByCouponSn(@Param("couponSn") String couponSn);
 }

+ 30 - 0
kmall-admin/src/main/java/com/kmall/admin/entity/GoodsEntity.java

@@ -225,6 +225,36 @@ public class GoodsEntity implements Serializable {
 
     private String activity;
 
+    // 单价
+    private BigDecimal retailPrice;
+    // 优惠金额
+    private BigDecimal discountedPrice;
+    // 实际支付价
+    private BigDecimal actualPaymentAmount;
+
+    public BigDecimal getRetailPrice() {
+        return retailPrice;
+    }
+
+    public void setRetailPrice(BigDecimal retailPrice) {
+        this.retailPrice = retailPrice;
+    }
+
+    public BigDecimal getDiscountedPrice() {
+        return discountedPrice;
+    }
+
+    public void setDiscountedPrice(BigDecimal discountedPrice) {
+        this.discountedPrice = discountedPrice;
+    }
+
+    public BigDecimal getActualPaymentAmount() {
+        return actualPaymentAmount;
+    }
+
+    public void setActualPaymentAmount(BigDecimal actualPaymentAmount) {
+        this.actualPaymentAmount = actualPaymentAmount;
+    }
 
     public Date getLastSaleTime() {
         return lastSaleTime;

+ 21 - 0
kmall-admin/src/main/java/com/kmall/admin/entity/OrderGoodsEntity.java

@@ -67,6 +67,11 @@ public class OrderGoodsEntity implements Serializable {
 
 	private String activity;
 
+	// 优惠金额
+	private BigDecimal discountedPrice;
+	// 实际支付价
+	private BigDecimal actualPaymentAmount;
+
 	public String getPlu() {
 		return plu;
 	}
@@ -335,4 +340,20 @@ public class OrderGoodsEntity implements Serializable {
 	public void setActivity(String activity) {
 		this.activity = activity;
 	}
+
+	public BigDecimal getDiscountedPrice() {
+		return discountedPrice;
+	}
+
+	public void setDiscountedPrice(BigDecimal discountedPrice) {
+		this.discountedPrice = discountedPrice;
+	}
+
+	public BigDecimal getActualPaymentAmount() {
+		return actualPaymentAmount;
+	}
+
+	public void setActualPaymentAmount(BigDecimal actualPaymentAmount) {
+		this.actualPaymentAmount = actualPaymentAmount;
+	}
 }

+ 2 - 0
kmall-admin/src/main/java/com/kmall/admin/service/MkActivitiesCouponService.java

@@ -87,4 +87,6 @@ public interface MkActivitiesCouponService {
      * @return
      */
     MkActivitiesCouponEntity queryByBarCode(Long mkaId, String prodBarcode);
+
+    MkActivitiesCouponEntity queryByCouponSn(String couponSn);
 }

+ 4 - 4
kmall-admin/src/main/java/com/kmall/admin/service/impl/CategoryServiceImpl.java

@@ -69,9 +69,9 @@ public class CategoryServiceImpl implements CategoryService {
         Map<String, Object> valideDate = MapBeanUtil.fromObject(category);
         ImmutableBiMap.Builder builder = new ImmutableBiMap.Builder();
         builder.put("merchSn", "商户");
-        if("2".equals(category.getShare())){
-            builder.put("storeId", "门店");
-        }
+//        if("2".equals(category.getShare())){
+//            builder.put("storeId", "门店");
+//        }
         R r = ValidatorUtil.isEmpty(builder.build(), valideDate);
         if (Integer.valueOf(r.get("code").toString()) != 0) {
             throw new RRException(r.get("msg").toString());
@@ -89,7 +89,7 @@ public class CategoryServiceImpl implements CategoryService {
         Map<String, Object> valideDate = MapBeanUtil.fromObject(category);
         ImmutableBiMap.Builder builder = new ImmutableBiMap.Builder();
         builder.put("merchSn", "商户");
-        builder.put("storeId", "门店");
+//        builder.put("storeId", "门店");
         R r = ValidatorUtil.isEmpty(builder.build(), valideDate);
         if (Integer.valueOf(r.get("code").toString()) != 0) {
             throw new RRException(r.get("msg").toString());

+ 5 - 0
kmall-admin/src/main/java/com/kmall/admin/service/impl/MkActivitiesCouponServiceImpl.java

@@ -133,4 +133,9 @@ public class MkActivitiesCouponServiceImpl implements MkActivitiesCouponService
     public MkActivitiesCouponEntity queryByBarCode(Long mkaId, String prodBarcode) {
         return mkActivitiesCouponDao.queryByBarCode(mkaId,prodBarcode);
     }
+
+    @Override
+    public MkActivitiesCouponEntity queryByCouponSn(String couponSn) {
+        return mkActivitiesCouponDao.queryByCouponSn(couponSn);
+    }
 }

+ 32 - 2
kmall-admin/src/main/java/com/kmall/admin/service/impl/OrderServiceImpl.java

@@ -155,6 +155,10 @@ public class OrderServiceImpl implements OrderService {
     @Autowired
     private Mall2LowPriceWarningDao lowPriceWarningDao;
 
+    @Autowired
+    private MkActivitiesCouponService mkActivitiesCouponService;
+
+
     @Override
     public OrderEntity queryObject(Long id) {
         return orderDao.queryObject(id);
@@ -1667,6 +1671,9 @@ public class OrderServiceImpl implements OrderService {
             e.printStackTrace();
         }
 
+
+
+
         Map resultObj = Maps.newHashMap();
 
 
@@ -1763,14 +1770,27 @@ public class OrderServiceImpl implements OrderService {
                             goodsDao.update(goodsEntity);
                         }
                     }
-                    ;
+
+
                     if(goodsDto.get("actualPaymentAmount") instanceof Double){
                         goodsEntity.setStoreRetailPrice(new BigDecimal((Double)goodsDto.get("actualPaymentAmount")));
+                        goodsEntity.setRetailPrice(new BigDecimal((Double)goodsDto.get("retailPrice"))); // 单价
+                        goodsEntity.setDiscountedPrice(new BigDecimal((Double)goodsDto.get("discountedPrice"))); // 优惠金额
+                        goodsEntity.setActualPaymentAmount(new BigDecimal((Double)goodsDto.get("actualPaymentAmount"))); // 实际支付价格
                     }else if(goodsDto.get("actualPaymentAmount") instanceof Integer){
                         goodsEntity.setStoreRetailPrice(new BigDecimal((Integer)goodsDto.get("actualPaymentAmount")));
+                        goodsEntity.setRetailPrice(new BigDecimal((Integer)goodsDto.get("retailPrice")));
+                        goodsEntity.setDiscountedPrice(new BigDecimal((Integer)goodsDto.get("discountedPrice")));
+                        goodsEntity.setActualPaymentAmount(new BigDecimal((Integer)goodsDto.get("actualPaymentAmount")));
                     }else if(goodsDto.get("actualPaymentAmount") instanceof Float){
                         goodsEntity.setStoreRetailPrice(new BigDecimal((Float)goodsDto.get("actualPaymentAmount")));
+                        goodsEntity.setRetailPrice(new BigDecimal((Float)goodsDto.get("retailPrice")));
+                        goodsEntity.setDiscountedPrice(new BigDecimal((Float)goodsDto.get("discountedPrice")));
+                        goodsEntity.setActualPaymentAmount(new BigDecimal((Float)goodsDto.get("actualPaymentAmount")));
                     }
+
+
+
 //                    goodsEntity.setStoreRetailPrice(productInfo.getRetailPrice());
                     // 借用这个字段来存储购买数
                     goodsEntity.setGoodsNumber(sellVolume);
@@ -1805,9 +1825,15 @@ public class OrderServiceImpl implements OrderService {
                 merchUserDao.save(merchUserEntity);
             }
 
-
+            // TODO 查询使用的优惠券,并减扣金额
+            String couponSn = (String) userInfo.get("couponSn");
+            MkActivitiesCouponEntity couponEntity = mkActivitiesCouponService.queryByCouponSn(couponSn);
 //            // 优惠金额
             BigDecimal disCountAmount = new BigDecimal(0);
+            if(couponEntity != null){
+                disCountAmount= couponEntity.getCouponPrice();
+            }
+
 
 
             // 判断该用户是否是生日
@@ -2416,6 +2442,10 @@ public class OrderServiceImpl implements OrderService {
         orderGoodsVo.setList_pic_url(goodsDto.getListPicUrl());
         orderGoodsVo.setMarket_price(goodsDto.getStoreMarketPrice());
         orderGoodsVo.setRetail_price(goodsDto.getStoreRetailPrice());
+
+        orderGoodsVo.setDiscountedPrice(goodsDto.getDiscountedPrice());
+        orderGoodsVo.setActualPaymentAmount(goodsDto.getActualPaymentAmount());
+
         orderGoodsVo.setNumber(goodsDto.getGoodsNumber());
 //        orderGoodsVo.setGoods_specification_name_value(goodsDto.get);
 //        orderGoodsVo.setGoods_specification_ids(goodsItem.getGoods_specification_ids());

+ 5 - 5
kmall-admin/src/main/java/com/kmall/admin/service/impl/ProductStoreRelaServiceImpl.java

@@ -117,7 +117,7 @@ public class ProductStoreRelaServiceImpl implements ProductStoreRelaService {
         builder.put("attributeCategory", "一级分类");
         builder.put("categoryId", "二级分类");
         builder.put("brandId", "品牌");
-        builder.put("freightId", "运费模版");
+//        builder.put("freightId", "运费模版");
 
         R r = ValidatorUtil.isEmpty(builder.build(), valideDate);
         if (Integer.valueOf(r.get("code").toString()) != 0) {
@@ -281,7 +281,7 @@ public class ProductStoreRelaServiceImpl implements ProductStoreRelaService {
         builder.put("attributeCategory", "一级分类");
         builder.put("categoryId", "二级分类");
         builder.put("brandId", "品牌");
-        builder.put("freightId", "运费模版");
+//        builder.put("freightId", "运费模版");
 
         R r = ValidatorUtil.isEmpty(builder.build(), valideDate);
         if (Integer.valueOf(r.get("code").toString()) != 0) {
@@ -868,12 +868,12 @@ public class ProductStoreRelaServiceImpl implements ProductStoreRelaService {
                 }else{
                     throw new RRException("商品[" + storeGoodsDto.getGoodsSn() + "]的品牌输入有误");
                 }
-                FreightEntity freightEntity = freightDao.queryFreightByFreightNameAndStoreId(storeGoodsDto.getFreightName(), store.getId());
+                /*FreightEntity freightEntity = freightDao.queryFreightByFreightNameAndStoreId(storeGoodsDto.getFreightName(), store.getId());
                 if (freightEntity != null) {
                     storeRelaEntity.setFreightId(freightEntity.getId());
                 }else{
                     throw new RRException("商品[" + storeGoodsDto.getGoodsSn() + "]的运费模板输入有误");
-                }
+                }*/
                 // 如果底线价大于零售价
                 if (new BigDecimal(storeGoodsDto.getBottomLinePrice()).compareTo(new BigDecimal(storeGoodsDto.getRetailPrice())) == 1) {
                     throw new RRException("商品[" + storeGoodsDto.getGoodsSn() + "]的底线价不可以大于零售价");
@@ -886,7 +886,7 @@ public class ProductStoreRelaServiceImpl implements ProductStoreRelaService {
                     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                     storeRelaEntity.setBatchExpireDate(sdf.format(batchExpireDate));
                 }else{
-                    throw new RRException("商品[" + storeGoodsDto.getGoodsSn() + "]的批次号不存在");
+//                    throw new RRException("商品[" + storeGoodsDto.getGoodsSn() + "]的批次号不存在");
                 }
                 storeRelaEntity.setMarketPrice(new BigDecimal(storeGoodsDto.getMarketPrice()));
                 storeRelaEntity.setRetailPrice(new BigDecimal(storeGoodsDto.getRetailPrice()));

+ 5 - 5
kmall-admin/src/main/resources/XmlTemplate/StoreGoodsDtoList.xml

@@ -11,11 +11,11 @@
                 <mapping row="1" col="3">StoreGoodsDto.categoryName</mapping>
                 <mapping row="1" col="4">StoreGoodsDto.attributeCategory</mapping>
                 <mapping row="1" col="5">StoreGoodsDto.brandName</mapping>
-                <mapping row="1" col="6">StoreGoodsDto.freightName</mapping>
-                <mapping row="1" col="7">StoreGoodsDto.retailPrice</mapping>
-                <mapping row="1" col="8">StoreGoodsDto.marketPrice</mapping>
-                <mapping row="1" col="9">StoreGoodsDto.bottomLinePrice</mapping>
-                <mapping row="1" col="10">StoreGoodsDto.batchSn</mapping>
+<!--                <mapping row="1" col="6">StoreGoodsDto.freightName</mapping>-->
+                <mapping row="1" col="6">StoreGoodsDto.retailPrice</mapping>
+                <mapping row="1" col="7">StoreGoodsDto.marketPrice</mapping>
+                <mapping row="1" col="8">StoreGoodsDto.bottomLinePrice</mapping>
+                <mapping row="1" col="9">StoreGoodsDto.batchSn</mapping>
             </section>
             <loopbreakcondition>
                 <rowcheck offset="0">

+ 5 - 8
kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesCombinationPriceDao.xml

@@ -51,17 +51,14 @@
     		`update_time`
 		from mk_activities_combination_price
 		WHERE 1=1
-		<if test="name != null and name.trim() != ''">
-			AND name LIKE concat('%',#{name},'%')
-		</if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
 		</if>
 		<if test="mkaId != null">
 			AND mka_id = #{mkaId}
 		</if>
-		<if test="prodBarcode != null and prodBarcode.trim() != ''">
-			AND combination_type like concat ( '%' , #{prodBarcode}, '%')
+		<if test="name != null and name.trim() != ''">
+			AND combination_type like concat ( '%' , #{name}, '%')
 		</if>
         <choose>
             <when test="sidx != null and sidx.trim() != ''">
@@ -79,15 +76,15 @@
  	<select id="queryTotal" resultType="int">
 		select count(*) from mk_activities_combination_price
 		WHERE 1=1
-        <if test="name != null and name.trim() != ''">
-            AND name LIKE concat('%',#{name},'%')
-        </if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
 		</if>
 		<if test="mkaId != null">
 			AND mka_id = #{mkaId}
 		</if>
+		<if test="name != null and name.trim() != ''">
+			AND combination_type like concat ( '%' , #{name}, '%')
+		</if>
 	</select>
 
 	<insert id="save" parameterType="com.kmall.admin.entity.MkActivitiesCombinationPriceEntity" useGeneratedKeys="true" keyProperty="macpId">

+ 21 - 2
kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesCouponDao.xml

@@ -53,7 +53,7 @@
 		from mk_activities_coupon
 		WHERE 1=1
 		<if test="name != null and name.trim() != ''">
-			AND name LIKE concat('%',#{name},'%')
+			AND barcode LIKE concat('%',#{name},'%')
 		</if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
@@ -78,7 +78,7 @@
 		select count(*) from mk_activities_coupon
 		WHERE 1=1
         <if test="name != null and name.trim() != ''">
-            AND name LIKE concat('%',#{name},'%')
+            AND barcode LIKE concat('%',#{name},'%')
         </if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
@@ -163,4 +163,23 @@
 		and barcode = #{prodBarcode}
 	</select>
 
+
+	<select id="queryByCouponSn" resultType="com.kmall.admin.entity.MkActivitiesCouponEntity">
+		select
+			`mac_id`,
+			`goods_sn`,
+			`barcode`,
+			`shop_sn`,
+			`coupon_sn`,
+			`coupon_price`,
+			`mka_id`,
+			`deadline`,
+			`create_time`,
+			`creater_sn`,
+			`moder_sn`,
+			`update_time`
+		from mk_activities_coupon
+		where coupon_sn = #{couponSn}
+	</select>
+
 </mapper>

+ 2 - 2
kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesDiscountDao.xml

@@ -59,7 +59,7 @@
 		from mk_activities_discount
 		WHERE 1=1
 		<if test="name != null and name.trim() != ''">
-			AND name LIKE concat('%',#{name},'%')
+			AND barcode LIKE concat('%',#{name},'%')
 		</if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
@@ -84,7 +84,7 @@
 		select count(*) from mk_activities_discount
 		WHERE 1=1
         <if test="name != null and name.trim() != ''">
-            AND name LIKE concat('%',#{name},'%')
+            AND barcode LIKE concat('%',#{name},'%')
         </if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}

+ 2 - 2
kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesFullGiftDao.xml

@@ -65,7 +65,7 @@
 		from mk_activities_full_gift
 		WHERE 1=1
 		<if test="name != null and name.trim() != ''">
-			AND name LIKE concat('%',#{name},'%')
+			AND barcode LIKE concat('%',#{name},'%')
 		</if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
@@ -90,7 +90,7 @@
 		select count(*) from mk_activities_full_gift
 		WHERE 1=1
         <if test="name != null and name.trim() != ''">
-            AND name LIKE concat('%',#{name},'%')
+            AND barcode LIKE concat('%',#{name},'%')
         </if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}

+ 2 - 2
kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesFullReductionDao.xml

@@ -62,7 +62,7 @@
 		from mk_activities_full_reduction
 		WHERE 1=1
 		<if test="name != null and name.trim() != ''">
-			AND name LIKE concat('%',#{name},'%')
+			AND barcode LIKE concat('%',#{name},'%')
 		</if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
@@ -87,7 +87,7 @@
 		select count(*) from mk_activities_full_reduction
 		WHERE 1=1
         <if test="name != null and name.trim() != ''">
-            AND name LIKE concat('%',#{name},'%')
+            AND barcode LIKE concat('%',#{name},'%')
         </if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}

+ 2 - 2
kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesGetOneFreeGoodsDao.xml

@@ -65,7 +65,7 @@
 		from mk_activities_get_one_free_goods
 		WHERE 1=1
 		<if test="name != null and name.trim() != ''">
-			AND name LIKE concat('%',#{name},'%')
+			AND barcode LIKE concat('%',#{name},'%')
 		</if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
@@ -90,7 +90,7 @@
 		select count(*) from mk_activities_get_one_free_goods
 		WHERE 1=1
         <if test="name != null and name.trim() != ''">
-            AND name LIKE concat('%',#{name},'%')
+            AND barcode LIKE concat('%',#{name},'%')
         </if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}

+ 2 - 2
kmall-admin/src/main/resources/mybatis/mapper/MkActivitiesPromotionDao.xml

@@ -59,7 +59,7 @@
 		from mk_activities_promotion
 		WHERE 1=1
 		<if test="name != null and name.trim() != ''">
-			AND name LIKE concat('%',#{name},'%')
+			AND barcode LIKE concat('%',#{name},'%')
 		</if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
@@ -84,7 +84,7 @@
 		select count(*) from mk_activities_promotion
 		WHERE 1=1
         <if test="name != null and name.trim() != ''">
-            AND name LIKE concat('%',#{name},'%')
+            AND barcode LIKE concat('%',#{name},'%')
         </if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}

+ 2 - 2
kmall-admin/src/main/resources/mybatis/mapper/MkDailyActivitiesDao.xml

@@ -62,7 +62,7 @@
 		from mk_daily_activities
 		WHERE 1=1
 		<if test="name != null and name.trim() != ''">
-			AND name LIKE concat('%',#{name},'%')
+			AND barcode LIKE concat('%',#{name},'%')
 		</if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}
@@ -87,7 +87,7 @@
 		select count(*) from mk_daily_activities
 		WHERE 1=1
         <if test="name != null and name.trim() != ''">
-            AND name LIKE concat('%',#{name},'%')
+            AND barcode LIKE concat('%',#{name},'%')
         </if>
 		<if test="storeId != null and storeId.trim() != ''">
 			AND shop_sn = #{storeId}

+ 4 - 0
kmall-admin/src/main/resources/mybatis/mapper/OrderGoodsDao.xml

@@ -95,6 +95,8 @@
         `number`,
         `market_price`,
         `retail_price`,
+        `discounted_price`,
+        `actual_payment_amount`,
         `goods_specification_name_value`,
         `is_real`,
         `goods_specification_ids`,
@@ -140,6 +142,8 @@
         #{number},
         #{market_price},
         #{retail_price},
+        #{discountedPrice},
+        #{actualPaymentAmount},
         #{goods_specification_name_value},
         #{is_real},
         #{goods_specification_ids},

+ 9 - 12
kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiescombinationprice.html

@@ -6,17 +6,17 @@
 </head>
 <body>
 <div id="rrapp" v-cloak>
-	<Card v-show="showList">
+    <Card v-show="showList">
         <p slot="title">组合价</p>
         <Row :gutter="16">
             <div class="search-group">
                 <i-col span="4">
-                    <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
+                    <i-input v-model="q.name" @on-enter="query" placeholder="商品编码"/>
                 </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>
-            <div class="buttons-group" style="width: 100%;margin-top: 8px; padding-left: 10px;">
+            <div class="buttons-group" style="width: 100%;margin-top: 8px;">
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
                             :format="['xls','xlsx']"
@@ -33,13 +33,13 @@
                 <i-button type="warning" @click="reloadMkactivities" v-show="!isMkactivitiesShow">返回营销方式页</i-button>
             </div>
         </Row>
-	    <table id="jqGrid"></table>
-	    <div id="jqGridPager"></div>
+        <table id="jqGrid"></table>
+        <div id="jqGridPager"></div>
     </Card>
 
     <Card v-show="!showList">
         <p slot="title">{{title}}</p>
-		<i-form ref="formValidate" :model="mkActivitiesCombinationPrice" :rules="ruleValidate" :label-width="80">
+        <i-form ref="formValidate" :model="mkActivitiesCombinationPrice" :rules="ruleValidate" :label-width="80">
             <Form-item label="商品编码" prop="goodsSn">
                 <i-input v-model="mkActivitiesCombinationPrice.goodsSn" placeholder="商品编码"/>
             </Form-item>
@@ -52,11 +52,8 @@
             <Form-item label="组合价" prop="combinedPrice">
                 <i-input v-model="mkActivitiesCombinationPrice.combinedPrice" placeholder="组合价"/>
             </Form-item>
-            <Form-item label="营销活动编号" prop="mkaId">
-                <i-input v-model="mkActivitiesCombinationPrice.mkaId" placeholder="营销活动编号"/>
-            </Form-item>
             <Form-item label="截止日期" prop="deadline">
-                <i-input v-model="mkActivitiesCombinationPrice.deadline" placeholder="截止日期"/>
+                <i-input v-model="mkActivitiesCombinationPrice.deadline" placeholder="截止日期 yyyy-mm-dd"/>
             </Form-item>
             <Form-item>
                 <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>
@@ -64,9 +61,9 @@
                 <i-button type="ghost" @click="handleReset('formValidate')" style="margin-left: 8px">重置</i-button>
             </Form-item>
         </i-form>
-	</Card>
+    </Card>
 </div>
 
 <script src="${rc.contextPath}/js/mk/mkactivitiescombinationprice.js?_${date.systemTime}"></script>
 </body>
-</html>
+</html>

+ 3 - 9
kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiescoupon.html

@@ -11,12 +11,12 @@
         <Row :gutter="16">
             <div class="search-group">
                 <i-col span="4">
-                    <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
+                    <i-input v-model="q.name" @on-enter="query" placeholder="商品编码"/>
                 </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>
-            <div class="buttons-group" style="width: 100%;margin-top: 8px; padding-left: 10px;">
+            <div class="buttons-group" style="width: 100%;margin-top: 8px;">
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
                             :format="['xls','xlsx']"
@@ -46,20 +46,14 @@
             <Form-item label="适用商品条码" prop="barcode">
                 <i-input v-model="mkActivitiesCoupon.barcode" placeholder="适用商品条码"/>
             </Form-item>
-            <Form-item label="门店编号" prop="shopSn">
-                <i-input v-model="mkActivitiesCoupon.shopSn" placeholder="门店编号"/>
-            </Form-item>
             <Form-item label="优惠券码" prop="couponSn">
                 <i-input v-model="mkActivitiesCoupon.couponSn" placeholder="优惠券码"/>
             </Form-item>
             <Form-item label="优惠金额" prop="couponPrice">
                 <i-input v-model="mkActivitiesCoupon.couponPrice" placeholder="优惠金额"/>
             </Form-item>
-            <Form-item label="营销活动编号" prop="mkaId">
-                <i-input v-model="mkActivitiesCoupon.mkaId" placeholder="营销活动编号"/>
-            </Form-item>
             <Form-item label="截止日期" prop="deadline">
-                <i-input v-model="mkActivitiesCoupon.deadline" placeholder="截止日期"/>
+                <i-input v-model="mkActivitiesCoupon.deadline" placeholder="截止日期 yyyy-mm-dd"/>
             </Form-item>
             <Form-item>
                 <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>

+ 2 - 8
kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiesdiscount.html

@@ -11,12 +11,12 @@
         <Row :gutter="16">
             <div class="search-group">
                 <i-col span="4">
-                    <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
+                    <i-input v-model="q.name" @on-enter="query" placeholder="商品编码"/>
                 </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>
-            <div class="buttons-group" style="width: 100%;margin-top: 8px; padding-left: 10px;">
+            <div class="buttons-group" style="width: 100%;margin-top: 8px;">
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
                             :format="['xls','xlsx']"
@@ -46,9 +46,6 @@
             <Form-item label="活动价格" prop="activityPrice">
                 <i-input v-model="mkActivitiesDiscount.activityPrice" placeholder="活动价格"/>
             </Form-item>
-            <Form-item label="门店编号" prop="shopSn">
-                <i-input v-model="mkActivitiesDiscount.shopSn" placeholder="门店编号"/>
-            </Form-item>
             <Form-item label="商品编码" prop="goodsSn">
                 <i-input v-model="mkActivitiesDiscount.goodsSn" placeholder="商品编码"/>
             </Form-item>
@@ -64,9 +61,6 @@
             <Form-item label="折扣" prop="discount">
                 <i-input v-model="mkActivitiesDiscount.discount" placeholder="折扣"/>
             </Form-item>
-            <Form-item label="营销活动编号" prop="mkaId">
-                <i-input v-model="mkActivitiesDiscount.mkaId" placeholder="营销活动编号"/>
-            </Form-item>
             <Form-item>
                 <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>
                 <i-button type="warning" @click="reload" style="margin-left: 8px"/>返回</i-button>

+ 3 - 9
kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiesfullgift.html

@@ -11,12 +11,12 @@
         <Row :gutter="16">
             <div class="search-group">
                 <i-col span="4">
-                    <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
+                    <i-input v-model="q.name" @on-enter="query" placeholder="商品编码"/>
                 </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>
-            <div class="buttons-group" style="width: 100%;margin-top: 8px; padding-left: 10px;">
+            <div class="buttons-group" style="width: 100%;margin-top: 8px;">
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
                             :format="['xls','xlsx']"
@@ -43,9 +43,6 @@
             <Form-item label="产品中文名" prop="productName">
                 <i-input v-model="mkActivitiesFullGift.productName" placeholder="产品中文名"/>
             </Form-item>
-            <Form-item label="门店编号" prop="shopSn">
-                <i-input v-model="mkActivitiesFullGift.shopSn" placeholder="门店编号"/>
-            </Form-item>
             <Form-item label="商品编码" prop="goodsSn">
                 <i-input v-model="mkActivitiesFullGift.goodsSn" placeholder="商品编码"/>
             </Form-item>
@@ -64,11 +61,8 @@
             <Form-item label="赠品条码" prop="giftBarcode">
                 <i-input v-model="mkActivitiesFullGift.giftBarcode" placeholder="赠品条码"/>
             </Form-item>
-            <Form-item label="营销活动编号" prop="mkaId">
-                <i-input v-model="mkActivitiesFullGift.mkaId" placeholder="营销活动编号"/>
-            </Form-item>
             <Form-item label="截止日期" prop="deadline">
-                <i-input v-model="mkActivitiesFullGift.deadline" placeholder="截止日期"/>
+                <i-input v-model="mkActivitiesFullGift.deadline" placeholder="截止日期 yyyy-mm-dd"/>
             </Form-item>
             <Form-item>
                 <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>

+ 3 - 9
kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiesfullreduction.html

@@ -11,12 +11,12 @@
         <Row :gutter="16">
             <div class="search-group">
                 <i-col span="4">
-                    <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
+                    <i-input v-model="q.name" @on-enter="query" placeholder="商品编码"/>
                 </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>
-            <div class="buttons-group" style="width: 100%;margin-top: 8px; padding-left: 10px;">
+            <div class="buttons-group" style="width: 100%;margin-top: 8px;">
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
                             :format="['xls','xlsx']"
@@ -43,9 +43,6 @@
             <Form-item label="产品中文名" prop="productName">
                 <i-input v-model="mkActivitiesFullReduction.productName" placeholder="产品中文名"/>
             </Form-item>
-            <Form-item label="门店编号" prop="shopSn">
-                <i-input v-model="mkActivitiesFullReduction.shopSn" placeholder="门店编号"/>
-            </Form-item>
             <Form-item label="商品编码" prop="goodsSn">
                 <i-input v-model="mkActivitiesFullReduction.goodsSn" placeholder="商品编码"/>
             </Form-item>
@@ -64,11 +61,8 @@
             <Form-item label="减扣金额" prop="deductionAmount">
                 <i-input v-model="mkActivitiesFullReduction.deductionAmount" placeholder="减扣金额"/>
             </Form-item>
-            <Form-item label="营销活动编号" prop="mkaId">
-                <i-input v-model="mkActivitiesFullReduction.mkaId" placeholder="营销活动编号"/>
-            </Form-item>
             <Form-item label="截止日期" prop="deadline">
-                <i-input v-model="mkActivitiesFullReduction.deadline" placeholder="截止日期"/>
+                <i-input v-model="mkActivitiesFullReduction.deadline" placeholder="截止日期 yyyy-mm-dd"/>
             </Form-item>
             <Form-item>
                 <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>

+ 2 - 8
kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiesgetonefreegoods.html

@@ -12,12 +12,12 @@
         <Row :gutter="16">
             <div class="search-group">
                 <i-col span="4">
-                    <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
+                    <i-input v-model="q.name" @on-enter="query" placeholder="商品编码"/>
                 </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>
-            <div class="buttons-group" style="width: 100%;margin-top: 8px; padding-left: 10px;">
+            <div class="buttons-group" style="width: 100%;margin-top: 8px;">
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
                             :format="['xls','xlsx']"
@@ -44,9 +44,6 @@
             <Form-item label="产品中文名" prop="productName">
                 <i-input v-model="mkActivitiesGetOneFreeGoods.productName" placeholder="产品中文名"/>
             </Form-item>
-            <Form-item label="门店编号" prop="shopSn">
-                <i-input v-model="mkActivitiesGetOneFreeGoods.shopSn" placeholder="门店编号"/>
-            </Form-item>
             <Form-item label="商品编码" prop="goodsSn">
                 <i-input v-model="mkActivitiesGetOneFreeGoods.goodsSn" placeholder="商品编码"/>
             </Form-item>
@@ -59,9 +56,6 @@
             <Form-item label="赠品条码" prop="giftBarcode">
                 <i-input v-model="mkActivitiesGetOneFreeGoods.giftBarcode" placeholder="赠品条码"/>
             </Form-item>
-            <Form-item label="营销活动编号" prop="mkaId">
-                <i-input v-model="mkActivitiesGetOneFreeGoods.mkaId" placeholder="营销活动编号"/>
-            </Form-item>
             <Form-item>
                 <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>
                 <i-button type="warning" @click="reload" style="margin-left: 8px"/>返回</i-button>

+ 3 - 9
kmall-admin/src/main/webapp/WEB-INF/page/mk/mkactivitiespromotion.html

@@ -11,12 +11,12 @@
         <Row :gutter="16">
             <div class="search-group">
                 <i-col span="4">
-                    <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
+                    <i-input v-model="q.name" @on-enter="query" placeholder="商品编码"/>
                 </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>
-            <div class="buttons-group" style="width: 100%;margin-top: 8px; padding-left: 10px;">
+            <div class="buttons-group" style="width: 100%;margin-top: 8px;">
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
                             :format="['xls','xlsx']"
@@ -46,9 +46,6 @@
             <Form-item label="活动价格" prop="activityPrice">
                 <i-input v-model="mkActivitiesPromotion.activityPrice" placeholder="活动价格"/>
             </Form-item>
-            <Form-item label="门店编号" prop="shopSn">
-                <i-input v-model="mkActivitiesPromotion.shopSn" placeholder="门店编号"/>
-            </Form-item>
             <Form-item label="商品编码" prop="goodsSn">
                 <i-input v-model="mkActivitiesPromotion.goodsSn" placeholder="商品编码"/>
             </Form-item>
@@ -61,11 +58,8 @@
             <Form-item label="商品系列" prop="productSeries">
                 <i-input v-model="mkActivitiesPromotion.productSeries" placeholder="商品系列"/>
             </Form-item>
-            <Form-item label="营销活动编号" prop="mkaId">
-                <i-input v-model="mkActivitiesPromotion.mkaId" placeholder="营销活动编号"/>
-            </Form-item>
             <Form-item label="截止日期" prop="deadline">
-                <i-input v-model="mkActivitiesPromotion.deadline" placeholder="截止日期"/>
+                <i-input v-model="mkActivitiesPromotion.deadline" placeholder="截止日期 yyy-mm-dd"/>
             </Form-item>
             <Form-item>
                 <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>

+ 2 - 8
kmall-admin/src/main/webapp/WEB-INF/page/mk/mkdailyactivities.html

@@ -11,12 +11,12 @@
         <Row :gutter="16">
             <div class="search-group">
                 <i-col span="4">
-                    <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
+                    <i-input v-model="q.name" @on-enter="query" placeholder="商品编码"/>
                 </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>
-            <div class="buttons-group" style="width: 100%;margin-top: 8px; padding-left: 10px;">
+            <div class="buttons-group" style="width: 100%;margin-top: 8px;">
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
                             :format="['xls','xlsx']"
@@ -49,9 +49,6 @@
             <Form-item label="活动价格" prop="activityPrice">
                 <i-input v-model="mkDailyActivities.activityPrice" placeholder="活动价格"/>
             </Form-item>
-            <Form-item label="门店编号" prop="shopSn">
-                <i-input v-model="mkDailyActivities.shopSn" placeholder="门店编号"/>
-            </Form-item>
             <Form-item label="商品编码" prop="goodsSn">
                 <i-input v-model="mkDailyActivities.goodsSn" placeholder="商品编码"/>
             </Form-item>
@@ -64,9 +61,6 @@
             <Form-item label="商品系列" prop="productSeries">
                 <i-input v-model="mkDailyActivities.productSeries" placeholder="商品系列"/>
             </Form-item>
-            <Form-item label="营销活动编号" prop="mkaId">
-                <i-input v-model="mkDailyActivities.mkaId" placeholder="营销活动编号"/>
-            </Form-item>
             <Form-item>
                 <i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>
                 <i-button type="warning" @click="reload" style="margin-left: 8px"/>返回</i-button>

+ 37 - 14
kmall-admin/src/main/webapp/WEB-INF/page/sale/sale.html

@@ -16,7 +16,7 @@
         }
         .goods-button{
             border: #e5a032;
-            background-color: #e5a032;
+            /*background-color: #e5a032;*/
             font-size: 1.3em;
             margin-left: 20px;
         }
@@ -79,15 +79,15 @@
                     <li style="height: 600px;overflow:auto">
                         <table id="cbec" class="table .table-striped">
                             <tr style="border: white;background-color: #F5DCB3;font-size: 1.3em" >
-                                <th style="width: 371px">跨境商品名称</th>
-                                <th >规格</th>
-                                <th>单价</th>
-                                <th>优惠金额</th>
-                                <th>实际支付价</th>
+                                <th style="width: 350px;padding: 7px">跨境商品名称</th>
+                                <th style="padding: 7px">规格</th>
+                                <th style="padding: 7px">单价</th>
+                                <th style="padding: 7px">优惠金额</th>
+                                <th style="padding: 7px">实际支付价</th>
                                 <!--<th>税费</th>-->
-                                <th>数量</th>
+                                <th style="padding: 7px">数量</th>
 <!--                                <th>操作</th>-->
-                                <th>参与活动</th>
+                                <th style="padding: 7px">参与活动</th>
                             </tr>
                             <tr v-for="(item,i) in goodsList" v-if="item.name" style="font-size: 1.3em">
                                 <td><h3>{{item.name}}</h3></td>
@@ -118,8 +118,29 @@
                         </ul>
                     </li>
                     <li  style="height: 100px;">
-                        <i-button type="warning" @click="clearGoodsList" class="goods-button"><i class="fa fa-pencil-square-o"></i>&nbsp;清空商品列表</i-button>
-                        <i-button data-toggle="modal" @click="toOrderSubmit" type="warning" class="goods-button" ><i class="fa fa-pencil-square-o"></i>&nbsp;提交订单</i-button>
+                        <i-button type="error" @click="clearGoodsList" class="goods-button"><i class="fa fa-pencil-square-o"></i>&nbsp;清空</i-button>
+                        <i-button data-toggle="modal" @click="pendingOrder" class="goods-button" ><i class="fa fa-pencil-square-o"></i>&nbsp;订单挂起</i-button>
+                        <i-button data-toggle="modal" @click="toResumePending" class="goods-button" ><i class="fa fa-pencil-square-o"></i>&nbsp;恢复挂起</i-button>
+                        <i-button data-toggle="modal" @click="toOrderSubmit" type="primary" class="goods-button" ><i class="fa fa-pencil-square-o"></i>&nbsp;提交订单</i-button>
+
+<!--                        45636914-->
+                        <div class="modal fade" id="pendignOrderModal"  role="dialog" aria-labelledby="pendignOrderLabel" aria-hidden="true">
+                            <div class="modal-dialog">
+                                <div class="modal-content">
+                                    <div class="modal-header">
+                                        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+                                        <h4 class="modal-title" id="pendingOrderLabel">挂起订单列表{{pendingOrderKeys}}</h4>
+                                    </div>
+                                    <div class="modal-body">
+                                        <div class="col-xs-4 col-sm-4" v-for="(value,index) in pendingOrderKeys" style="margin-bottom: 8px;">
+                                            <i-button data-toggle="modal" data-target="#resumePending" style="width: 110px;font-family: 微软雅黑" @click="resumePending(value)"   >&nbsp;{{value}}</i-button>
+                                        </div>
+                                    </div>
+                                    <div class="modal-footer">
+                                    </div>
+                                </div>
+                            </div>
+                        </div>
 
                         <div class="modal fade" id="myModal"  role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
                             <div class="modal-dialog">
@@ -243,6 +264,7 @@
                             </div>
                             <div class="row" style="border:0">
                                 <div class="col-md-3" id="orderTotal">订单总额: {{orderEntity.actualPrice}}</div>
+                                <div class="col-md-3" id="discount">订单优惠券金额: {{orderEntity.couponPrice}}</div>
                                 <div class="col-md-3" id="orderTaxes">订单税费: {{tax}}</div>
                                 <div class="col-md-3" id="invetoryReceipt">清关回执: <!--{{orderProcessRecord.eleOrderStartTime}}--></div>
                             </div>
@@ -250,9 +272,9 @@
                                 <tr style="border: white;background-color: orange">
                                     <th>商品名称</th>
                                     <th>规格</th>
-                                    <th>单价</th>
+                                    <th>市场价</th>
+                                    <th>优惠价</th>
                                     <th>实际支付价</th>
-                                    <!--<th>税费</th>-->
                                     <th>数量</th>
                                     <th>总额</th>
                                     <th>参与活动</th>
@@ -261,9 +283,10 @@
                                     <td><h3>{{item.goodsName}}</h3></td>
                                     <td>{{item.specification}}</td>
                                     <td>{{item.marketPrice}}</td>
-                                    <td>{{item.retailPrice}}</td>
+                                    <td>{{item.discountedPrice}}</td>
+                                    <td>{{item.actualPaymentAmount}}</td>
                                     <td>{{item.number}}</td>
-                                    <td >{{item.number*item.retailPrice}}</td>
+                                    <td >{{item.number*item.actualPaymentAmount}}</td>
                                     <td >{{item.activity}}</td>
                                 </tr>
                             </table>

+ 7 - 7
kmall-admin/src/main/webapp/WEB-INF/page/shop/category.html

@@ -9,13 +9,13 @@
     <div v-show="!showViewList">
         <Row :gutter="16">
             <div class="search-group">
-                <i-col span="4">
-                    <i-select v-model="q.storeId" placeholder="门店" filterable label-in-value>
-                        <i-option v-for="store in stores" :value="store.id"
-                                  :key="store.id">{{store.storeName}}
-                        </i-option>
-                    </i-select>
-                </i-col>
+<!--                <i-col span="4">-->
+<!--                    <i-select v-model="q.storeId" placeholder="门店" filterable label-in-value>-->
+<!--                        <i-option v-for="store in stores" :value="store.id"-->
+<!--                                  :key="store.id">{{store.storeName}}-->
+<!--                        </i-option>-->
+<!--                    </i-select>-->
+<!--                </i-col>-->
                 <i-col span="4">
                     <i-input v-model="q.categoryName" @on-enter="query" placeholder="分类名称"/>
                 </i-col>

+ 5 - 2
kmall-admin/src/main/webapp/WEB-INF/page/shop/goods.html

@@ -151,7 +151,7 @@
                         <i-button type="ghost" icon="ios-cloud-upload-outline">商品导入</i-button>
                     </Upload>
                 </i-col>
-                #end
+                #end 0
                 #if($shiro.hasPermission("goods:generalGoodsUpload"))
                 <i-col style="display: inline-grid;">
                     <Upload :show-upload-list="false" :on-success="uploadExcelSuccess" :on-error="uploadExcelError" :on-format-error="uploadExcelFormatError"
@@ -463,7 +463,10 @@
                     <Modal title="查看图片" v-model="visible">
                         <img :src="imgName" v-if="visible" style="width: 100%"/>
                     </Modal>
-                    <span style="color: red;font-size: 12px;">* 商品详情轮播图,尺寸建议750x750(正方形模式)像素以内,大小100k以内</span>
+                    <div style="display: inline-block;">
+                        <span style="color: red;font-size: 20px;display: block;">(仅用于线上业务商品详情录入)</span>
+                        <span style="color: red;font-size: 12px;">* 商品详情轮播图,尺寸建议750x750(正方形模式)像素以内,大小100k以内</span>
+                    </div>
                 </template>
                 <div id="goodsDesc"></div>
             </Tab-Pane>

+ 1 - 1
kmall-admin/src/main/webapp/WEB-INF/page/shop/goodsexportpdf.html

@@ -39,7 +39,7 @@
         <Row :gutter="16">
         <div class="row" style="border:0;margin-bottom:10px">
 <!--            <i-button  v-bind:disabled="selectButtonDisabled"  @click="selectLabelHead" >选择标签头</i-button>-->
-            <i-button type="primary" @click="exportPdf"><i class="fa fa-cloud-download"></i>&nbsp;导出pdf</i-button>
+            <i-button type="primary" @click="exportPdf"><i class="fa fa-cloud-download"></i>&nbsp;标签pdf制作</i-button>
             <i-col span="3">
                 <i-select v-model="q.storeId" placeholder="门店" filterable label-in-value>
                     <i-option v-for="store in stores" :value="store.id"

+ 1 - 0
kmall-admin/src/main/webapp/WEB-INF/page/shop/goodstransportinfodetail.html

@@ -52,6 +52,7 @@
             <Form-item label="商品sku" prop="sku">
                 <i-input v-model="goodsTransportInfoDetail.sku" placeholder="商品sku"/>
             </Form-item>
+
             <Form-item label="供应商id" prop="supplierId">
                 <i-input v-model="goodsTransportInfoDetail.supplierId" placeholder="供应商id"/>
             </Form-item>

+ 8 - 8
kmall-admin/src/main/webapp/WEB-INF/page/shop/storeProductStock.html

@@ -165,10 +165,10 @@
             </Form-item>
             <Form-item label="商品" prop="goodsId">
                 <i-select v-model="productStoreRela.goodsId" filterable @on-change="changeGoods" label-in-value  v-show="isOperatorShow" disabled>
-                    <i-option v-for="goods in goodsList" :value="goods.id" :key="goods.id">{{goods.name}}({{goods.goodsBizType=='00'?'保税备货':''}}{{goods.goodsBizType=='02'?'保税展示补货':''}}{{goods.goodsBizType=='10'?'门店店提':''}}{{goods.goodsBizType=='11'?'普通货物':''}})</i-option>
+                    <i-option v-for="goods in goodsList" :value="goods.id" :key="goods.id">{{goods.name}}({{goods.goodsBizType=='00'?'保税备货':''}}{{goods.goodsBizType=='02'?'保税展示补货':''}}{{goods.goodsBizType=='10'?'现场速递':''}}{{goods.goodsBizType=='11'?'普通货物':''}})</i-option>
                 </i-select>
                 <i-select v-model="productStoreRela.goodsId" filterable @on-change="changeGoods" label-in-value  v-show="!isOperatorShow">
-                    <i-option v-for="goods in goodsList" :value="goods.id" :key="goods.id">{{goods.name}}({{goods.goodsBizType=='00'?'保税备货':''}}{{goods.goodsBizType=='02'?'保税展示补货':''}}{{goods.goodsBizType=='10'?'门店店提':''}}{{goods.goodsBizType=='11'?'普通货物':''}})</i-option>
+                    <i-option v-for="goods in goodsList" :value="goods.id" :key="goods.id">{{goods.name}}({{goods.goodsBizType=='00'?'保税备货':''}}{{goods.goodsBizType=='02'?'保税展示补货':''}}{{goods.goodsBizType=='10'?'现场速递':''}}{{goods.goodsBizType=='11'?'普通货物':''}})</i-option>
                 </i-select>
             </Form-item>
             <div v-show="isStockShare"><span style="margin-left: 80px;color: red;font-size: 12px;">* 该门店商品所选供应商第三方商户是共享库存,门店库存则为商户商品总库存,不需要编辑</span></div>
@@ -202,13 +202,13 @@
                     </i-option>
                 </i-select>
             </Form-item>
-            <Form-item v-if="showInput" label="运费模版" prop="freightId">
+            <!--<Form-item v-if="showInput" label="运费模版" prop="freightId">
                 <i-select v-model="productStoreRela.freightId" placeholder="运费模版"
                           label-in-value style="width: 268px;">
                     <i-option v-for="freight in freights" :value="freight.id" :key="freight.id">{{freight.name}}
                     </i-option>
                 </i-select>
-            </Form-item>
+            </Form-item>-->
             <Form-item v-if="showInput" label="批次编号" prop="batchSn">
                 <!--<i-input v-model="productStoreRela.batchSn" placeholder="批次编号" style="width: 268px;"/>-->
                 <i-select v-model="productStoreRela.batchSn" placeholder="批次编号" @on-change="changeBatch"
@@ -300,10 +300,10 @@
             </Form-item>
             <Form-item label="商品" prop="goodsId">
                 <i-select v-model="productStoreRela.goodsId" filterable @on-change="changeSupplerGoods" label-in-value  v-show="isSupplierOperatorShow" disabled>
-                    <i-option v-for="goods in goodss" :value="goods.id" :key="goods.id">{{goods.name}}({{goods.goodsBizType=='00'?'保税备货':''}}{{goods.goodsBizType=='02'?'保税展示补货':''}}{{goods.goodsBizType=='10'?'门店店提':''}}{{goods.goodsBizType=='11'?'普通货物':''}})</i-option>
+                    <i-option v-for="goods in goodss" :value="goods.id" :key="goods.id">{{goods.name}}({{goods.goodsBizType=='00'?'保税备货':''}}{{goods.goodsBizType=='02'?'保税展示补货':''}}{{goods.goodsBizType=='10'?'现场速递':''}}{{goods.goodsBizType=='11'?'普通货物':''}})</i-option>
                 </i-select>
                 <i-select v-model="productStoreRela.goodsId" filterable @on-change="changeSupplerGoods" label-in-value  v-show="!isSupplierOperatorShow">
-                    <i-option v-for="goods in goodss" :value="goods.id" :key="goods.id">{{goods.name}}({{goods.goodsBizType=='00'?'保税备货':''}}{{goods.goodsBizType=='02'?'保税展示补货':''}}{{goods.goodsBizType=='10'?'门店店提':''}}{{goods.goodsBizType=='11'?'普通货物':''}})</i-option>
+                    <i-option v-for="goods in goodss" :value="goods.id" :key="goods.id">{{goods.name}}({{goods.goodsBizType=='00'?'保税备货':''}}{{goods.goodsBizType=='02'?'保税展示补货':''}}{{goods.goodsBizType=='10'?'现场速递':''}}{{goods.goodsBizType=='11'?'普通货物':''}})</i-option>
                 </i-select>
             </Form-item>
             <div v-show="isSupplierStockShare"><span style="margin-left: 80px;color: red;font-size: 12px;">* 该门店商品所选供应商第三方商户是共享库存,门店库存则为商户商品总库存,不需要编辑</span></div>
@@ -337,13 +337,13 @@
                     </i-option>
                 </i-select>
             </Form-item>
-            <Form-item v-if="showInput" label="运费模版" prop="freightId">
+            <!--<Form-item v-if="showInput" label="运费模版" prop="freightId">
                 <i-select v-model="productStoreRela.freightId" placeholder="运费模版"
                           label-in-value style="width: 268px;">
                     <i-option v-for="freight in freights" :value="freight.id" :key="freight.id">{{freight.name}}
                     </i-option>
                 </i-select>
-            </Form-item>
+            </Form-item>-->
             <Form-item v-if="showInputSpecification" label="规格" prop="specification">
                 <i-input v-model="productStoreRela.specification" placeholder="规格" style="width: 268px;" v-show="isSupplierOperatorShow" disabled></i-input>
                 <i-input v-model="productStoreRela.specification" placeholder="规格" style="width: 268px;" v-show="!isSupplierOperatorShow"></i-input>

+ 0 - 8
kmall-admin/src/main/webapp/js/mk/mk2memberbirthday.js

@@ -22,14 +22,6 @@ $(function () {
                         return '<span class="label label-success">是</span>';
                     }
                     return '<span class="label label-danger">否</span>';
-                }},
-			{label: '创建人编号', name: 'createrSn', index: 'creater_sn', width: 180},
-			{label: '创建时间', name: 'createTime', index: 'create_time', width: 180,align: 'center',formatter: function (value) {
-                    return transDate(value,'yyyy-MM-dd hh:mm:ss');
-                }},
-			{label: '修改人编号', name: 'moderSn', index: 'moder_sn', width: 180},
-			{label: '修改时间', name: 'modTime', index: 'mod_time', width: 180,align: 'center',formatter: function (value) {
-                    return transDate(value,'yyyy-MM-dd hh:mm:ss');
                 }}],
 		viewrecords: true,
         height: 550,

+ 10 - 9
kmall-admin/src/main/webapp/js/mk/mkactivitiescombinationprice.js

@@ -9,7 +9,6 @@ $(function () {
 	if(mkCode){
 		vm.mkCode = mkCode;
 	}
-	console.log(vm.mkCode);
 	let storeId = getQueryString("storeId");
 	if(storeId){
 		vm.storeId = storeId;
@@ -18,7 +17,6 @@ $(function () {
 	if(mkaId){
 		vm.mkaId = mkaId;
 	}
-	console.log(mkaId);
 
 
     $("#jqGrid").jqGrid({
@@ -26,12 +24,11 @@ $(function () {
         datatype: "json",
         colModel: [
 			{label: 'macpId', name: 'macpId', index: 'macp_id', key: true, hidden: true},
-			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80},
-			{label: '条形码', name: 'barcode', index: 'barcode', width: 80},
-			{label: '组合的产品数量', name: 'combinationNum', index: 'combination_num', width: 80},
-			{label: '组合价', name: 'combinedPrice', index: 'combined_price', width: 80},
-			{label: '营销活动编号', name: 'mkaId', index: 'mka_id', width: 80},
-			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80}],
+			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80, align: 'center'},
+			{label: '条形码', name: 'barcode', index: 'barcode', width: 80, align: 'center'},
+			{label: '组合的产品数量', name: 'combinationNum', index: 'combination_num', width: 80, align: 'center'},
+			{label: '组合价', name: 'combinedPrice', index: 'combined_price', width: 80, align: 'center'},
+			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80, align: 'center'}],
 		viewrecords: true,
         height: 550,
 		postData: {'mkaId': vm.mkaId},
@@ -102,7 +99,11 @@ let vm = new Vue({
 		},
 		saveOrUpdate: function (event) {
             let url = vm.mkActivitiesCombinationPrice.macpId == null ? "../mkactivitiescombinationprice/save" : "../mkactivitiescombinationprice/update";
-			$.ajax({
+
+			//添加上层的营销方式编号
+			vm.mkActivitiesCombinationPrice.mkaId = vm.mkaId;
+
+            $.ajax({
 				type: "POST",
 			    url: url,
 			    contentType: "application/json",

+ 11 - 8
kmall-admin/src/main/webapp/js/mk/mkactivitiescoupon.js

@@ -24,13 +24,11 @@ $(function () {
         datatype: "json",
         colModel: [
 			{label: 'macId', name: 'macId', index: 'mac_id', key: true, hidden: true},
-			{label: '适用商品编号', name: 'goodsSn', index: 'goods_sn', width: 80},
-			{label: '适用商品条码', name: 'barcode', index: 'barcode', width: 80},
-			{label: '门店编号', name: 'shopSn', index: 'shop_sn', width: 80},
-			{label: '优惠券码', name: 'couponSn', index: 'coupon_sn', width: 80},
-			{label: '优惠金额', name: 'couponPrice', index: 'coupon_price', width: 80},
-			{label: '营销活动编号', name: 'mkaId', index: 'mka_id', width: 80},
-			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80}],
+			{label: '适用商品编号', name: 'goodsSn', index: 'goods_sn', width: 80, align: 'center'},
+			{label: '适用商品条码', name: 'barcode', index: 'barcode', width: 80, align: 'center'},
+			{label: '优惠券码', name: 'couponSn', index: 'coupon_sn', width: 80, align: 'center'},
+			{label: '优惠金额', name: 'couponPrice', index: 'coupon_price', width: 80, align: 'center'},
+			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80, align: 'center'}],
 		viewrecords: true,
 		postData: {'mkaId': vm.mkaId},
         height: 550,
@@ -101,7 +99,12 @@ let vm = new Vue({
 		},
 		saveOrUpdate: function (event) {
             let url = vm.mkActivitiesCoupon.macId == null ? "../mkactivitiescoupon/save" : "../mkactivitiescoupon/update";
-			$.ajax({
+
+			//添加上层的门店编号与营销方式编号
+			vm.mkActivitiesCoupon.shopSn = vm.storeId;
+			vm.mkActivitiesCoupon.mkaId = vm.mkaId;
+
+            $.ajax({
 				type: "POST",
 			    url: url,
 			    contentType: "application/json",

+ 13 - 11
kmall-admin/src/main/webapp/js/mk/mkactivitiesdiscount.js

@@ -10,7 +10,6 @@ $(function () {
 	}
 
 	let storeId = getQueryString("storeId");
-	console.log(storeId);
 	if(storeId){
 		vm.storeId = storeId;
 	}
@@ -24,15 +23,13 @@ $(function () {
         datatype: "json",
         colModel: [
 			{label: 'madId', name: 'madId', index: 'mad_id', key: true, hidden: true},
-			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80},
-			{label: '活动价格', name: 'activityPrice', index: 'activity_price', width: 80},
-			{label: '门店编号', name: 'shopSn', index: 'shop_sn', width: 80},
-			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80},
-			{label: '条形码', name: 'barcode', index: 'barcode', width: 80},
-			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80},
-			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80},
-			{label: '折扣', name: 'discount', index: 'discount', width: 80},
-			{label: '营销活动编号', name: 'mkaId', index: 'mka_id', width: 80}],
+			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80, align: 'center'},
+			{label: '活动价格', name: 'activityPrice', index: 'activity_price', width: 80, align: 'center'},
+			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80, align: 'center'},
+			{label: '条形码', name: 'barcode', index: 'barcode', width: 80, align: 'center'},
+			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80, align: 'center'},
+			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80, align: 'center'},
+			{label: '折扣', name: 'discount', index: 'discount', width: 80, align: 'center'}],
 		viewrecords: true,
 		postData: {'mkaId': vm.mkaId},
         height: 550,
@@ -103,7 +100,12 @@ let vm = new Vue({
 		},
 		saveOrUpdate: function (event) {
             let url = vm.mkActivitiesDiscount.madId == null ? "../mkactivitiesdiscount/save" : "../mkactivitiesdiscount/update";
-			$.ajax({
+
+			//添加上层的门店编号与营销方式编号
+			vm.mkActivitiesDiscount.shopSn = vm.storeId;
+			vm.mkActivitiesDiscount.mkaId = vm.mkaId;
+
+            $.ajax({
 				type: "POST",
 			    url: url,
 			    contentType: "application/json",

+ 14 - 12
kmall-admin/src/main/webapp/js/mk/mkactivitiesfullgift.js

@@ -10,7 +10,6 @@ $(function () {
 	}
 
 	let storeId = getQueryString("storeId");
-	console.log(storeId);
 	if(storeId){
 		vm.storeId = storeId;
 	}
@@ -24,16 +23,14 @@ $(function () {
         datatype: "json",
         colModel: [
 			{label: 'mafrId', name: 'mafrId', index: 'mafr_id', key: true, hidden: true},
-			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80},
-			{label: '门店编号', name: 'shopSn', index: 'shop_sn', width: 80},
-			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80},
-			{label: '条形码', name: 'barcode', index: 'barcode', width: 80},
-			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80},
-			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80},
-			{label: '满足条件金额', name: 'qualifiedAmount', index: 'qualified_amount', width: 80},
-			{label: '赠品条码', name: 'giftBarcode', index: 'gift_barcode', width: 80},
-			{label: '营销活动编号', name: 'mkaId', index: 'mka_id', width: 80},
-			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80}],
+			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80, align: 'center'},
+			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80, align: 'center'},
+			{label: '条形码', name: 'barcode', index: 'barcode', width: 80, align: 'center'},
+			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80, align: 'center'},
+			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80, align: 'center'},
+			{label: '满足条件金额', name: 'qualifiedAmount', index: 'qualified_amount', width: 80, align: 'center'},
+			{label: '赠品条码', name: 'giftBarcode', index: 'gift_barcode', width: 80, align: 'center'},
+			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80, align: 'center'}],
 		viewrecords: true,
 		postData: {'mkaId': vm.mkaId},
         height: 550,
@@ -102,7 +99,12 @@ let vm = new Vue({
 		},
 		saveOrUpdate: function (event) {
             let url = vm.mkActivitiesFullGift.mafrId == null ? "../mkactivitiesfullgift/save" : "../mkactivitiesfullgift/update";
-			$.ajax({
+
+			//添加上层的门店编号与营销方式编号
+			vm.mkActivitiesFullGift.shopSn = vm.storeId;
+			vm.mkActivitiesFullGift.mkaId = vm.mkaId;
+
+            $.ajax({
 				type: "POST",
 			    url: url,
 			    contentType: "application/json",

+ 14 - 11
kmall-admin/src/main/webapp/js/mk/mkactivitiesfullreduction.js

@@ -25,16 +25,14 @@ $(function () {
         datatype: "json",
         colModel: [
 			{label: 'mafrId', name: 'mafrId', index: 'mafr_id', key: true, hidden: true},
-			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80},
-			{label: '门店编号', name: 'shopSn', index: 'shop_sn', width: 80},
-			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80},
-			{label: '条形码', name: 'barcode', index: 'barcode', width: 80},
-			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80},
-			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80},
-			{label: '满足条件金额', name: 'qualifiedAmount', index: 'qualified_amount', width: 80},
-			{label: '减扣金额', name: 'deductionAmount', index: 'deduction_amount', width: 80},
-			{label: '营销活动编号', name: 'mkaId', index: 'mka_id', width: 80},
-			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80}],
+			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80, align: 'center'},
+			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80, align: 'center'},
+			{label: '条形码', name: 'barcode', index: 'barcode', width: 80, align: 'center'},
+			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80, align: 'center'},
+			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80, align: 'center'},
+			{label: '满足条件金额', name: 'qualifiedAmount', index: 'qualified_amount', width: 80, align: 'center'},
+			{label: '减扣金额', name: 'deductionAmount', index: 'deduction_amount', width: 80, align: 'center'},
+			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80, align: 'center'}],
 		viewrecords: true,
 		postData: {'mkaId': vm.mkaId},
         height: 550,
@@ -105,7 +103,12 @@ let vm = new Vue({
 		},
 		saveOrUpdate: function (event) {
             let url = vm.mkActivitiesFullReduction.mafrId == null ? "../mkactivitiesfullreduction/save" : "../mkactivitiesfullreduction/update";
-			$.ajax({
+
+			//添加上层的门店编号与营销方式编号
+			vm.mkActivitiesFullReduction.shopSn = vm.storeId;
+			vm.mkActivitiesFullReduction.mkaId = vm.mkaId;
+
+            $.ajax({
 				type: "POST",
 			    url: url,
 			    contentType: "application/json",

+ 11 - 11
kmall-admin/src/main/webapp/js/mk/mkactivitiesgetonefreegoods.js

@@ -10,7 +10,6 @@ $(function () {
 	}
 
 	let storeId = getQueryString("storeId");
-	console.log(storeId);
 	if(storeId){
 		vm.storeId = storeId;
 	}
@@ -24,13 +23,11 @@ $(function () {
         datatype: "json",
         colModel: [
 			{label: 'mkaFreeId', name: 'mkaFreeId', index: 'mka_free_id', key: true, hidden: true},
-			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80},
-			{label: '门店编号', name: 'shopSn', index: 'shop_sn', width: 80},
-			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80},
-			{label: '条形码', name: 'barcode', index: 'barcode', width: 80},
-			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80},
-			{label: '赠品条码', name: 'giftBarcode', index: 'gift_barcode', width: 80},
-			{label: '营销活动编号', name: 'mkaId', index: 'mka_id', width: 80}],
+			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80, align: 'center'},
+			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80, align: 'center'},
+			{label: '条形码', name: 'barcode', index: 'barcode', width: 80, align: 'center'},
+			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80, align: 'center'},
+			{label: '赠品条码', name: 'giftBarcode', index: 'gift_barcode', width: 80, align: 'center'}],
 		viewrecords: true,
 		postData: {'mkaId': vm.mkaId},
         height: 550,
@@ -56,8 +53,6 @@ $(function () {
             $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "hidden"});
         }
     });
-
-
 });
 
 let vm = new Vue({
@@ -101,7 +96,12 @@ let vm = new Vue({
 		},
 		saveOrUpdate: function (event) {
             let url = vm.mkActivitiesGetOneFreeGoods.mkaFreeId == null ? "../mkactivitiesgetonefreegoods/save" : "../mkactivitiesgetonefreegoods/update";
-			$.ajax({
+
+            //添加上层的活动门店ID与营销方式编号
+			vm.mkActivitiesGetOneFreeGoods.shopSn = vm.storeId;
+			vm.mkActivitiesGetOneFreeGoods.mkaId = vm.mkaId;
+
+            $.ajax({
 				type: "POST",
 			    url: url,
 			    contentType: "application/json",

+ 13 - 11
kmall-admin/src/main/webapp/js/mk/mkactivitiespromotion.js

@@ -19,21 +19,18 @@ $(function () {
 	}
 
 
-
     $("#jqGrid").jqGrid({
         url: '../mkactivitiespromotion/list',
         datatype: "json",
         colModel: [
 			{label: 'mapId', name: 'mapId', index: 'map_id', key: true, hidden: true},
-			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80},
-			{label: '活动价格', name: 'activityPrice', index: 'activity_price', width: 80},
-			{label: '门店编号', name: 'shopSn', index: 'shop_sn', width: 80},
-			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80},
-			{label: '条形码', name: 'barcode', index: 'barcode', width: 80},
-			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80},
-			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80},
-			{label: '营销活动编号', name: 'mkaId', index: 'mka_id', width: 80},
-			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80}],
+			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80, align: 'center'},
+			{label: '活动价格', name: 'activityPrice', index: 'activity_price', width: 80, align: 'center'},
+			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80, align: 'center'},
+			{label: '条形码', name: 'barcode', index: 'barcode', width: 80, align: 'center'},
+			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80, align: 'center'},
+			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80, align: 'center'},
+			{label: '截止日期', name: 'deadline', index: 'deadline', width: 80, align: 'center'}],
 		viewrecords: true,
 		postData:{storeId:storeId},
         height: 550,
@@ -104,7 +101,12 @@ let vm = new Vue({
 		},
 		saveOrUpdate: function (event) {
             let url = vm.mkActivitiesPromotion.mapId == null ? "../mkactivitiespromotion/save" : "../mkactivitiespromotion/update";
-			$.ajax({
+
+			//添加上层的门店编号与营销方式编号
+			vm.mkActivitiesPromotion.shopSn = vm.storeId;
+			vm.mkActivitiesPromotion.mkaId = vm.mkaId;
+
+            $.ajax({
 				type: "POST",
 			    url: url,
 			    contentType: "application/json",

+ 1 - 2
kmall-admin/src/main/webapp/js/mk/mkactivityform.js

@@ -322,7 +322,7 @@ let vm = new Vue({
             vm.title = '管理营销方式';
             vm.showMkactivitiesViewList = false;
             vm.showMkactivitiesList = true;
-            console.log(vm.mkCode);
+
             let page = $("#jqGridOrder").jqGrid('getGridParam', 'page');
             $("#jqGridOrder").jqGrid('setGridParam', {
                 postData: {'mkCode': vm.mkCode, 'topic': vm.q.topic},
@@ -423,7 +423,6 @@ let vm = new Vue({
         },
         mkactivitiesSaveOrUpdate: function (event) {
             let url = vm.mkActivities.mkaId == null ? "../mkactivities/save" : "../mkactivities/update";
-            debugger;
 
             vm.mkActivities.mkaStartTime = vm.mkaStartTime;
             vm.mkActivities.mkdEndTime = vm.mkdEndTime;

+ 13 - 10
kmall-admin/src/main/webapp/js/mk/mkdailyactivities.js

@@ -22,15 +22,13 @@ $(function () {
         datatype: "json",
         colModel: [
 			{label: 'mdaId', name: 'mdaId', index: 'mda_id', key: true, hidden: true},
-			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80},
-			{label: '日常价', name: 'dailyPrice', index: 'daily_price', width: 80},
-			{label: '活动价格', name: 'activityPrice', index: 'activity_price', width: 80},
-			{label: '门店编号', name: 'shopSn', index: 'shop_sn', width: 80},
-			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80},
-			{label: '条形码', name: 'barcode', index: 'barcode', width: 80},
-			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80},
-			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80},
-			{label: '营销活动编号', name: 'mkaId', index: 'mka_id', width: 80}],
+			{label: '产品中文名', name: 'productName', index: 'product_name', width: 80, align: 'center'},
+			{label: '日常价', name: 'dailyPrice', index: 'daily_price', width: 80, align: 'center'},
+			{label: '活动价格', name: 'activityPrice', index: 'activity_price', width: 80, align: 'center'},
+			{label: '商品编码', name: 'goodsSn', index: 'goods_sn', width: 80, align: 'center'},
+			{label: '条形码', name: 'barcode', index: 'barcode', width: 80, align: 'center'},
+			{label: '商品品牌', name: 'productBrand', index: 'product_brand', width: 80, align: 'center'},
+			{label: '商品系列', name: 'productSeries', index: 'product_series', width: 80, align: 'center'}],
 		viewrecords: true,
 		postData: {'mkaId': vm.mkaId},
         height: 550,
@@ -102,7 +100,12 @@ let vm = new Vue({
 		},
 		saveOrUpdate: function (event) {
             let url = vm.mkDailyActivities.mdaId == null ? "../mkdailyactivities/save" : "../mkdailyactivities/update";
-			$.ajax({
+
+			//添加上层的门店编号与营销方式编号
+			vm.mkDailyActivities.shopSn = vm.storeId;
+			vm.mkDailyActivities.mkaId = vm.mkaId;
+
+            $.ajax({
 				type: "POST",
 			    url: url,
 			    contentType: "application/json",

+ 65 - 20
kmall-admin/src/main/webapp/js/sale/sale.js

@@ -346,6 +346,11 @@ let vm = new Vue({
         fullGiftCode:[],// 满赠商品条码
         // 优惠券
         coupons: new Map(),
+        // 挂起订单集合
+        pendingOrderMap: new Map(),
+        // 挂起订单的key 在1~3循环
+        pendingIndex:1,
+        pendingOrderKeys:[],
     },
     methods: {
         query: function () {
@@ -353,7 +358,7 @@ let vm = new Vue({
             var thisGoods = {};
             $.get("../goods/details/"+vm.prodBarcode+"/"+vm.storeId, function (r) {
                 if (r.code == 0) {
-
+                    vm.prodBarcode = '';
                     // r.goodsDetails.discountedPrice = 0;
                     // r.goodsDetails.actualPaymentAmount = r.goodsDetails.retailPrice;
 
@@ -443,6 +448,44 @@ let vm = new Vue({
             vm.customClearData();
 
         },
+        pendingOrder:function(){
+            if(this.goodsList.length == 0){
+                alert("购物车中没有商品");
+                return;
+            }
+            console.log(vm.pendingOrderMap.size);
+            if(vm.pendingOrderMap.size >= 3){
+                alert("订单挂起最多支持3单");
+                return;
+            }
+            vm.pendingOrderMap.set(vm.pendingIndex,this.goodsList);
+            vm.pendingOrderKeys.push(vm.pendingIndex);
+            var newIndex = ++vm.pendingIndex;
+            vm.pendingIndex = newIndex > 3?1: newIndex;
+            vm.clearGoodsList();
+        },
+        toResumePending:function(){
+            if(vm.pendingOrderMap.size == 0){
+                alert("当前没有挂起的订单");
+                return ;
+            }
+            $('#pendignOrderModal').modal('show')
+        },
+        resumePending:function(key){
+            if(vm.pendingOrderMap.size == 0){
+                alert("当前没有挂起的订单");
+                return ;
+            }
+            if(vm.goodsList.length > 0){
+                alert("购物车中已有商品,不允许恢复!")
+                return ;
+            }
+            vm.goodsList = vm.pendingOrderMap.get(key);
+            // 清除恢复的数据
+            vm.pendingOrderMap.delete(key);
+            removeByValue(vm.pendingOrderKeys,key);
+            $('#pendignOrderModal').modal('hide')
+        },
         toOrderSubmit:function(){
 
             if(this.goodsList.length == 0){
@@ -476,7 +519,7 @@ let vm = new Vue({
                             })
                             // 打印取货码小票
                             var content = getPrintContent(r.resultObj);
-                            // printArea2(content);
+                            printArea2(content);
                             vm.goodsList = [];
                             vm.customname = '' ;
                             vm.customidcard = '';
@@ -572,19 +615,19 @@ let vm = new Vue({
             if(this.$refs.couponSn)
                 this.userInfo.couponSn = this.$refs.couponSn.value;
             var idcardReg = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/;
-            // if(!this.userInfo.customName){
-            //     alert("姓名不能为空!");
-            //     return ;
-            // }
-            // if(!idcardReg.test(this.userInfo.customIDCard)){
-            //     alert("请输入正确的身份证号");
-            //     return ;
-            // }
-            //
-            // if(!(/^1[3456789]\d{9}$/.test(this.userInfo.customPhone))){
-            //     alert("手机号码有误,请重填");
-            //     return ;
-            // }
+            if(!this.userInfo.customName){
+                alert("姓名不能为空!");
+                return ;
+            }
+            if(!idcardReg.test(this.userInfo.customIDCard)){
+                alert("请输入正确的身份证号");
+                return ;
+            }
+
+            if(!(/^1[3456789]\d{9}$/.test(this.userInfo.customPhone))){
+                alert("手机号码有误,请重填");
+                return ;
+            }
 
             if(this.userInfo.couponSn){
                 var coupon = vm.coupons.get(this.userInfo.couponSn);
@@ -840,7 +883,7 @@ function openWebSocket() {
         //无法使用wss,浏览器打开WebSocket时报错
         //ws对应http、wss对应https。
         // webSocket = new WebSocket("ws://183.62.225.124:8080/ws/server/"+storeId);
-        webSocket = new WebSocket("ws://localhost:8080/ws/server/"+storeId);
+        webSocket = new WebSocket("ws://127.0.0.1:8080//ws/server/"+storeId);
         if (webSocket.readyState === webSocket.CONNECTING) {
             console.log('1.连接正在打开......');
         }
@@ -1053,11 +1096,13 @@ function queryAssistantInfo(){
         }
     });
 
+}
 
-
-
-
-
+function removeByValue(arr, val) {
+    var index = arr.indexOf(val);
+    if (index > -1) {
+        arr.splice(index, 1);
+    }
 }
 
 

+ 1 - 1
kmall-admin/src/main/webapp/js/shop/attribute.js

@@ -5,7 +5,7 @@ $(function () {
         colModel: [
             {label: 'id', name: 'id', index: 'id', key: true, hidden: true},
             {label: '所属商户', name: 'merchName', index: 'merchName', width: 120, align: 'center'},
-            {label: '所属门店', name: 'storeName', index: 'storeName', width: 180, align: 'center'},
+            // {label: '所属门店', name: 'storeName', index: 'storeName', width: 180, align: 'center'},
             {label: '所属分类', name: 'categoryName', index: 'attribute_category_id', width: 180},
             {label: '名称', name: 'name', index: 'name', width: 500},
             // {label: '类型', name: 'inputType', index: 'input_type', width: 80},

+ 1 - 9
kmall-admin/src/main/webapp/js/shop/goodstransportinfodetail.js

@@ -15,15 +15,7 @@ $(function () {
 			{label: '供应商id', name: 'supplierId', index: 'supplier_id', width: 120},
 			{label: '原产地', name: 'originCountry', index: 'origin_country', align: 'center',width: 120},
 			{label: '数量', name: 'num', index: 'num', align: 'right',width: 120},
-			{label: '创建人编号', name: 'createrSn', index: 'creater_sn',align: 'center', width: 180},
-			{label: '创建时间', name: 'createTime', index: 'create_time', width: 180, align: 'center',formatter: function (value) {
-                    return transDate(value,'yyyy-MM-dd hh:mm:ss');
-                }},
-			{label: '修改人编号', name: 'moderSn', index: 'moder_sn', align: 'center',width: 180},
-			{label: '修改时间', name: 'modTime', index: 'mod_time', width: 180, align: 'center',formatter: function (value) {
-                    return transDate(value,'yyyy-MM-dd hh:mm:ss');
-                }
-			}],
+			],
 		viewrecords: true,
         height: 550,
         rowNum: 10,

+ 3 - 3
kmall-admin/src/main/webapp/js/shop/supplier.js

@@ -6,9 +6,9 @@ $(function () {
 			{label: 'id', name: 'id', index: 'id', key: true, hidden: true},
 			{label: '一级商户编号', name: 'levelMerchSn', index: 'level_merch_sn', width: 200, align: 'center'},
 			{label: '一级商户标识', name: 'levelMerchFlag', index: 'level_merch_flag', width: 120, align: 'center'},
-            {label: '所属第三方商户', name: 'thirdPartyMerchCode', index: 'thirdPartyMerchCode', width: 120},
-			{label: '二级供货商名称', name: 'childSupplierName', index: 'child_supplier_sn', width: 220 },
-			{label: '二级供货商标识', name: 'childSupplierFlag', index: 'child_supplier_flag', width: 120 },
+            {label: '所属第三方商户', name: 'thirdPartyMerchCode', index: 'thirdPartyMerchCode', width: 120, align: 'center'},
+			{label: '二级供货商名称', name: 'childSupplierName', index: 'child_supplier_sn', width: 220, align: 'center'},
+			{label: '二级供货商标识', name: 'childSupplierFlag', index: 'child_supplier_flag', width: 120, align: 'center'},
 			{label: '排序', name: 'sortOrder', index: 'sort_order', width: 100, align: 'center'},
 			{label: '是否禁用', name: 'isShow', index: 'is_show', width: 100, align: 'center', formatter: function (value) {
                 return value == 0 ?

BIN
kmall-admin/src/main/webapp/statics/file/activities_get_one_free_goods_yyyy_mm_dd_v1.0.0.xlsx


BIN
kmall-admin/src/main/webapp/statics/file/store_goods_export_yyyy_mm_dd_v1.0.0.xls


+ 22 - 0
kmall-api/src/main/java/com/kmall/api/entity/OrderGoodsVo.java

@@ -67,6 +67,28 @@ public class OrderGoodsVo implements Serializable {
     private Integer campTopicId;
 
     private Integer distcountTopicId;
+    // 优惠金额
+    private BigDecimal discountedPrice;
+    // 实际支付价
+    private BigDecimal actualPaymentAmount;
+
+
+
+    public BigDecimal getDiscountedPrice() {
+        return discountedPrice;
+    }
+
+    public void setDiscountedPrice(BigDecimal discountedPrice) {
+        this.discountedPrice = discountedPrice;
+    }
+
+    public BigDecimal getActualPaymentAmount() {
+        return actualPaymentAmount;
+    }
+
+    public void setActualPaymentAmount(BigDecimal actualPaymentAmount) {
+        this.actualPaymentAmount = actualPaymentAmount;
+    }
 
     public Integer getCampTopicId() {
         return campTopicId;

+ 0 - 2
kmall-common/src/main/java/com/kmall/common/fileserver/util/FileManager.java

@@ -127,8 +127,6 @@ public class FileManager implements Serializable {
      * <strong>方法概要: 文件下载</strong> <br>
      * <strong>创建时间: 2016-9-26 上午10:28:21</strong> <br>
      *
-     * @param String groupName
-     * @param String remoteFileName
      * @return returned value comment here
      * @author Wang Liang
      */