Browse Source

促销活动bugfix

zhijiezhao 2 years ago
parent
commit
12c95f0058

+ 4 - 0
src/main/java/com/caimei/modules/product/dao/ProductDao.java

@@ -225,4 +225,8 @@ public interface ProductDao extends CrudDao<Product> {
     String findProductIdBySku(String productId);
 
     Double getTouchPriceBySku(Integer skuId);
+
+    List<CmSku> findSkuByPromotion(String id);
+
+    List<CmSku> getSkuByPromotionId(String id);
 }

+ 25 - 19
src/main/java/com/caimei/modules/product/service/CmPromotionService.java

@@ -34,6 +34,7 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
     private CmPromotionDao cmPromotionDao;
     @Autowired
     private ProductDao productDao;
+
     @Override
     public CmPromotion get(String id) {
         return super.get(id);
@@ -50,8 +51,10 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
         List<Product> giftProducts = new ArrayList<>();
         List<Shop> promotionShops = new ArrayList<>();
         if (CollectionUtils.isNotEmpty(promotionList)) {
-            for (CmPromotion promotion : promotionList
-            ) {
+            for (CmPromotion promotion : promotionList) {
+                if("1".equals(promotion.getType())){
+                    promotion.setSkus(productDao.findSkuByPromotion(promotion.getId()));
+                }
                 if (StringUtils.isNotBlank(cmPromotion.getProductName())) {
                     promotion.setProductName(cmPromotion.getProductName());
                 }
@@ -77,13 +80,13 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
                                 //未开始
                                 promotion.setDelFlag1("1");
                             }
-                        }else {
+                        } else {
                             promotion.setDelFlag1("0");
                         }
                     }
-                }else if("1".equals(promotion.getDelFlag1())){
+                } else if ("1".equals(promotion.getDelFlag1())) {
                     promotion.setDelFlag1("0");
-                }else if("2".equals(promotion.getDelFlag1())){
+                } else if ("2".equals(promotion.getDelFlag1())) {
                     promotion.setDelFlag1("4");
                 }
                 //非店铺促销下设置促销产品
@@ -91,7 +94,8 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
                     //根据促销id和商品名查询
                     promotionProducts = findPromotionProduct(promotion);
                     promotion.setPromotionProducts(promotionProducts);
-                }else {
+
+                } else {
                     promotionShops = findPromotionShops(promotion);
                     promotion.setPromotionShops(promotionShops);
                 }
@@ -134,6 +138,7 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
         String wwwServer = Global.getConfig("wwwServer");
         for (Product product : products) {
             if (product != null) {
+                product.setSkuList(productDao.findSkuList(product.getProductID()));
                 product.setStoreStatus(true);
                 product.setMainImage(AppUtils.getImageURL("product", product.getMainImage(), 0, wwwServer));
             }
@@ -159,7 +164,7 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
     /**
      * 根据促销活动id查询促销赠品(订单)
      */
-    public List<PurchaseProduct> findGiftPurchaseProduct(String id){
+    public List<PurchaseProduct> findGiftPurchaseProduct(String id) {
         List<PurchaseProduct> list = cmPromotionDao.findGiftPurchaseProduct(id);
         for (PurchaseProduct p : list) {
             if (p != null) {
@@ -186,6 +191,7 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
         }
         return list;
     }
+
     /**
      * 查询促销可用商品
      */
@@ -216,7 +222,7 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
                         delList.add(Integer.parseInt(productId));
                     }
                 }
-            }else {
+            } else {
                 delList.add(Integer.parseInt(product.getDelProductIds()));
             }
         }
@@ -225,7 +231,7 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
         //当选择促销商品时,需要排除掉相同促销类型下已参与促销的商品
         productList = cmPromotionDao.findAllProduct(product);
         String wwwServer = Global.getConfig("wwwServer");
-        productList.forEach(item ->{
+        productList.forEach(item -> {
             List<CmSku> skuList = productDao.findSkuList(item.getProductID());
             List<CmSku> collect = skuList.stream().sorted(Comparator.comparing(CmSku::getPrice)).collect(Collectors.toList());
             item.setSkuList(collect);
@@ -242,7 +248,7 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
     public Page findShopPage(Page<Shop> shopPage, Shop shop) {
         shop.setPage(shopPage);
         List<Integer> list = new ArrayList<>();
-        if (StringUtil.isNotBlank(shop.getShopIds()) ) {
+        if (StringUtil.isNotBlank(shop.getShopIds())) {
             if (shop.getShopIds().contains(",")) {
                 String[] split = shop.getShopIds().split(",");
                 for (String shopId : split) {
@@ -283,19 +289,19 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
         }
         cmPromotion.setUpdateTime(new Date());
         if (StringUtils.isNotBlank(cmPromotion.getType()) && StringUtils.isNotBlank(cmPromotion.getMode())) {
-            if ("1".equals(cmPromotion.getType()) && "1".equals(cmPromotion.getMode())){
+            if ("1".equals(cmPromotion.getType()) && "1".equals(cmPromotion.getMode())) {
                 // 优惠价
                 cmPromotion.setName("优惠价");
-            }else{
+            } else {
                 String type = "1".equals(cmPromotion.getType()) ? "单品" : "2".equals(cmPromotion.getType()) ? "凑单" : "3".equals(cmPromotion.getType()) ? "店铺" : "优惠";
                 String mode = "2".equals(cmPromotion.getMode()) ? "满减" : "3".equals(cmPromotion.getMode()) ? "满赠" : "优惠";
                 cmPromotion.setName(type + mode);
             }
         }
-        if (cmPromotion.getIsNewRecord()){
+        if (cmPromotion.getIsNewRecord()) {
             cmPromotion.preInsert();
             cmPromotionDao.insert(cmPromotion);
-        }else{
+        } else {
             cmPromotion.preUpdate();
             cmPromotionDao.update(cmPromotion);
         }
@@ -303,11 +309,11 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
         //删除数据库中该促销活动原来的商品、赠品和商店
         cmPromotionDao.deleteAllPromotionProductsAndShops(promotionId);
         cmPromotionDao.deleteAllPromotionGifts(promotionId);
-        if ("1".equals(cmPromotion.getType()) && "1".equals(cmPromotion.getMode())){
+        if ("1".equals(cmPromotion.getType()) && "1".equals(cmPromotion.getMode())) {
             // 单品优惠价的时候,删除优惠商品之前的优惠价(新增保存不会删除)
             cmPromotionDao.deleteOldTouchPrice(promotionId);
             // 保存新的sku优惠价
-            cmPromotion.getSkus().forEach(s->cmPromotionDao.insertNewTouchPrice(s.getSkuId(),s.getTouchPrice(),promotionId));
+            cmPromotion.getSkus().forEach(s -> cmPromotionDao.insertNewTouchPrice(s.getSkuId(), s.getTouchPrice(), promotionId));
         }
 
         if (StringUtil.isNotBlank(cmPromotion.getProductIds())) {
@@ -345,17 +351,17 @@ public class CmPromotionService extends CrudService<CmPromotionDao, CmPromotion>
      * 查询供应商信息
      */
     public Shop findShop(String shopId) {
-       return cmPromotionDao.findShop(shopId);
+        return cmPromotionDao.findShop(shopId);
     }
 
     /**
      * 查询产品对应的促销活动
      */
     public CmPromotion findProductPromotion(String shopId, Long productId) {
-         return cmPromotionDao.findProductPromotion(shopId, productId);
+        return cmPromotionDao.findProductPromotion(shopId, productId);
     }
 
     public void delPromotion(String id, Integer skuId) {
-        cmPromotionDao.deletePromotion(id,skuId);
+        cmPromotionDao.deletePromotion(id, skuId);
     }
 }

+ 4 - 2
src/main/java/com/caimei/modules/svip/service/CmSvipProductService.java

@@ -63,7 +63,7 @@ public class CmSvipProductService extends CrudService<CmSvipProductDao, CmSvipPr
         list.forEach(product -> {
             CmSku sku = productDao.findSku(product.getProductId());
             CmSku skuPrice = cmSvipProductDao.findSvipSku(product.getProductId());
-            if(null!=skuPrice){
+            if (null != skuPrice) {
                 product.setPriceType(skuPrice.getPriceType());
                 product.setDiscount(BigDecimal.valueOf(skuPrice.getDiscount()));
                 product.setDiscountPrice(BigDecimal.valueOf(skuPrice.getDiscountPrice()));
@@ -116,7 +116,9 @@ public class CmSvipProductService extends CrudService<CmSvipProductDao, CmSvipPr
         String wwwServer = Global.getConfig("wwwServer");
         productList.forEach(item -> {
             CmSku sku = productDao.findSku(item.getProductID());
-            item.setPrice(sku.getPrice());
+            if (null != sku) {
+                item.setPrice(sku.getPrice());
+            }
             if (StringUtil.isNotBlank(item.getMainImage())) {
                 item.setMainImage(AppUtils.getImageURL("product", item.getMainImage(), 0, wwwServer));
             }

+ 1 - 0
src/main/java/com/caimei/modules/svip/web/CmSvipProductController.java

@@ -100,6 +100,7 @@ public class CmSvipProductController extends BaseController {
         if (!beanValidator(model, cmSvipProduct)) {
             return form(cmSvipProduct, model);
         }
+        //校验是否存在
         cmSvipProductService.save(cmSvipProduct);
         addMessage(redirectAttributes, "保存商品成功");
         return "redirect:" + Global.getAdminPath() + "/svip/cmSvipProduct/?repage";

+ 1 - 1
src/main/resources/mappings/modules/product/CmPromotionMapper.xml

@@ -446,7 +446,7 @@
         where shopID in (select supplierId from cm_promotions_product where promotionsId = #{promotionsId})
     </select>
     <select id="getPromotionSkus" resultType="com.caimei.modules.product.entity.CmSku">
-        SELECT cs.unit,cs.costCheckFlag,cs.costPrice,cs.costProportional,cps.touchPrice,cs.skuId
+        SELECT DISTINCT cs.unit,cs.costCheckFlag,cs.costPrice,cs.costProportional,cps.touchPrice,cs.skuId
         FROM cm_promotions cp
         LEFT JOIN cm_promotions_product cpp ON cp.id=cpp.promotionsId
         LEFT JOIN cm_sku cs ON cpp.productId=cs.productId

+ 12 - 0
src/main/resources/mappings/modules/product/ProductMapper.xml

@@ -2097,4 +2097,16 @@
         select touchPrice from cm_promotion_sku
         where skuId=#{skuId}
     </select>
+    <select id="findSkuByPromotion" resultType="com.caimei.modules.product.entity.CmSku">
+        SELECT cs.price,cps.skuId,cps.touchPrice,cs.unit
+        FROM cm_promotion_sku cps
+        LEFT JOIN cm_sku cs ON cps.skuId=cs.skuId
+        WHERE promotionId=#{id}
+    </select>
+    <select id="getSkuByPromotionId" resultType="com.caimei.modules.product.entity.CmSku">
+        SELECT cs.price,cpp.productId,cs.skuId,cs.unit
+        FROM cm_promotions_product cpp
+        LEFT JOIN cm_sku cs ON cpp.productId=cs.productId
+        WHERE promotionsId= #{id}
+    </select>
 </mapper>

+ 5 - 2
src/main/resources/mappings/modules/svip/CmSvipProductMapper.xml

@@ -84,8 +84,11 @@
             <if test="shopName != null and productId != ''">
                 AND s.name like concat('%',#{shopName},'%')
             </if>
-            <if test="status !=null and status !=''">
-                and a.status=#{status}
+            <if test="status !=null and status == 0">
+                and a.status=0
+            </if>
+            <if test="status !=null and status !='' and status == 1">
+                and a.status=1
             </if>
         </where>
         <choose>

+ 81 - 31
src/main/webapp/WEB-INF/views/modules/product-new/multiPromotionList.jsp

@@ -12,6 +12,39 @@
         .table td {
             text-align: center;
         }
+        .goods-item{
+            text-align: initial !important;
+            padding: 16px 24px !important;
+        }
+        .goods-item .cm-label{
+            padding: 16px 0;
+        }
+        .goods-item .cm-wrapper{
+            display: flex;
+            align-items: center;
+            row-gap: 16px;
+            margin-bottom: 24px;
+        }
+        .goods-item .cm-info{
+            display: flex;
+            align-items: center;
+            column-gap: 36px;
+            width: 60%;
+        }
+        .goods-item .cm-info.max-width{
+            width: 100% !important;
+            margin: 16px 0;
+        }
+        .goods-item .cm-price-list{
+            display: flex;
+            align-items: center;
+            column-gap: 16px;
+
+        }
+        .shop-info-wrapper .shop-info .shop-price{
+            display: flex;
+            align-items: center;
+        }
     </style>
     <script type="text/javascript">
         $(document).ready(function () {
@@ -61,7 +94,8 @@
         </form:select>
         &nbsp;&nbsp;<input id="btnSubmit" class="btn btn-primary" type="submit" value="查询"/>
         &nbsp;&nbsp;&nbsp;&nbsp;<input class="btn btn-primary" style="width: 90px"
-                                       onclick="window.location='${ctx}/product/cmPromotions/form?type=2'" value="新增凑单促销"/>
+                                       onclick="window.location='${ctx}/product/cmPromotions/form?type=2'"
+                                       value="新增凑单促销"/>
         <div class="clearfix"></div>
     </div>
 </form:form>
@@ -91,7 +125,7 @@
                     ${cmPromotion.description}
             </td>
             <td style="color: ${cmPromotion.mode eq 1?"green":cmPromotion.mode eq 2?"orange":"purple"}">
-                ${cmPromotion.mode eq 1?"优惠价":cmPromotion.mode eq 2?"满减":"满赠"}
+                    ${cmPromotion.mode eq 1?"优惠价":cmPromotion.mode eq 2?"满减":"满赠"}
             </td>
             <td>
                 <c:if test="${cmPromotion.mode eq 2}">
@@ -100,11 +134,12 @@
                 </c:if>
                 <c:if test="${cmPromotion.mode eq 3}">
                     满<fmt:formatNumber value="${cmPromotion.touchPrice}" pattern="#,##0.00" maxFractionDigits="2"/>
-                    ,赠品:<c:if test="${cmPromotion.giftTypeNumber > 1}">${cmPromotion.giftTypeNumber}类</c:if>${cmPromotion.giftNumber}个,详见下表
+                    ,赠品:<c:if
+                        test="${cmPromotion.giftTypeNumber > 1}">${cmPromotion.giftTypeNumber}类</c:if>${cmPromotion.giftNumber}个,详见下表
                 </c:if>
             </td>
             <td>
-                ${cmPromotion.status eq 1?"永久":"区间有效"}
+                    ${cmPromotion.status eq 1?"永久":"区间有效"}
             </td>
             <td>
                 <c:if test="${cmPromotion.status eq 2}">
@@ -117,7 +152,7 @@
                 </c:if>
             </td>
             <td style="color: ${cmPromotion.delFlag1 eq 1?"purple":cmPromotion.delFlag1 eq 2?"green":cmPromotion.delFlag1 eq 3?"orange":cmPromotion.delFlag1 eq 0?"red":"black"}">
-                ${cmPromotion.delFlag1 eq 1?"未开始":cmPromotion.delFlag1 eq 2?"进行中":cmPromotion.delFlag1 eq 3?"已结束":cmPromotion.delFlag1 eq 0?"已关闭":"未知"}
+                    ${cmPromotion.delFlag1 eq 1?"未开始":cmPromotion.delFlag1 eq 2?"进行中":cmPromotion.delFlag1 eq 3?"已结束":cmPromotion.delFlag1 eq 0?"已关闭":"未知"}
             </td>
             <td>
                 <fmt:formatDate value="${cmPromotion.updateTime}" pattern="yyyy-MM-dd HH:mm:ss"/>
@@ -134,30 +169,45 @@
             </td>
         </tr>
         <tr>
-            <td colspan="9" style="text-align: left">
+            <td colspan="9" class="goods-item">
                 <c:if test="${cmPromotion.promotionProducts.size()>0}">
-                    <p>促销商品:</p >
+                    <div class="cm-label">促销商品:</div>
                     <c:forEach items="${cmPromotion.promotionProducts}" var="promotionProduct">
-                        <p>
-                            <img src="${promotionProduct.mainImage}" alt="图片" width="50px" height="50px">
-                            <span style="position: absolute; left: 120px;width: 550px">商品名称:${promotionProduct.name}</span>
-                            <span style="position: absolute; left: 670px;width: 430px">供应商:${promotionProduct.shopName}</span>
-                            <span style="position: absolute; left: 1100px">机构价:${promotionProduct.price}</span>
-                        </p>
+                        <div class="cm-wrapper">
+                            <div class="cm-info">
+                                <img src="${promotionProduct.mainImage}" alt="图片" width="50px" height="50px">
+                                <div class="cm-name">商品名称:${promotionProduct.name}</div>
+                                <div class="cm-shopname">供应商:${promotionProduct.shopName}</div>
+                            </div>
+                            <div class="cm-price-list">
+                                <div class="cm-label">机构价:</div>
+                                <div class="cm-sku-list">
+                                    <c:if test="${cmPromotion.mode eq 1}">
+                                        <c:forEach items="${cmPromotion.skus}" var="sku">
+                                            <div class="cm-sku-item">&nbsp;&nbsp;&nbsp;&nbsp;${sku.unit}-¥${sku.price}&nbsp;&nbsp;</div>
+                                        </c:forEach>
+                                    </c:if>
+                                    <c:if test="${cmPromotion.mode ne 1}">
+                                        <c:forEach items="${promotionProduct.skuList}" var="sku">
+                                            <div class="cm-sku-item">&nbsp;&nbsp;&nbsp;&nbsp;${sku.unit}-¥${sku.price}&nbsp;&nbsp;</div>
+                                        </c:forEach>
+                                    </c:if>
+                                </div>
+                            </div>
+                        </div>
                     </c:forEach>
                 </c:if>
                 <c:if test="${cmPromotion.giftProducts.size()>0}">
-                    <p>赠送商品:</p>
+                    <div class="cm-label">赠送商品:</div>
                     <c:forEach items="${cmPromotion.giftProducts}" var="giftProduct">
-                        <p>
+                        <div class="cm-info max-width">
                             <img src="${giftProduct.mainImage}" alt="图片" width="50px" height="50px">
-                            <span style="position: absolute; left: 120px;width: 550px">商品名称:${giftProduct.name}</span>
-                            <span style="position: absolute; left: 670px;width: 430px">供应商:${giftProduct.shopName}</span>
-                            <span style="position: absolute; left: 1100px">数量:${giftProduct.giftNumber}</span>
-                        </p>
+                            <div>商品名称:${giftProduct.name}</div>
+                            <div>供应商:${giftProduct.shopName}</div>
+                            <div>数量:${giftProduct.giftNumber}</div>
+                        </div>
                     </c:forEach>
                 </c:if>
-
             </td>
         </tr>
         <c:forEach items="${page.list}" var="cmPromotion"></c:forEach>
@@ -166,28 +216,28 @@
 </table>
 <div class="pagination">${page}</div>
 <script type="text/javascript">
-    function updateStatus(id,flag) {
+    function updateStatus(id, flag) {
         var msg = "提示信息";
-        if(flag == 'close'){
+        if (flag == 'close') {
             msg = "确定关闭该促销活动吗";
-        }else if(flag == 'open'){
+        } else if (flag == 'open') {
             msg = "确定开启该促销活动吗?";
-        }else if(flag == 'delete'){
+        } else if (flag == 'delete') {
             msg = "确定删除该促销活动吗?";
         }
-        top.$.jBox.confirm(msg,'系统提示',function(v,h,f){
-            if(v=='ok'){
-                $.post("${ctx}/product/cmPromotions/updateStatus",{'id': id,'flag': flag}, function(data) {
-                    if(true==data.success){
+        top.$.jBox.confirm(msg, '系统提示', function (v, h, f) {
+            if (v == 'ok') {
+                $.post("${ctx}/product/cmPromotions/updateStatus", {'id': id, 'flag': flag}, function (data) {
+                    if (true == data.success) {
                         $.jBox.tip(data.msg, 'info');
                         $("#searchForm").submit();
                     } else {
-                        $.jBox.tip(data.msg,'error');
+                        $.jBox.tip(data.msg, 'error');
                     }
-                },"JSON");//这里返回的类型有:json,html,xml,text
+                }, "JSON");//这里返回的类型有:json,html,xml,text
             }
             return;
-        },{buttonsFocus:1,persistent: true});
+        }, {buttonsFocus: 1, persistent: true});
     }
 </script>
 </body>

+ 4 - 4
src/main/webapp/WEB-INF/views/modules/product-new/singlePromotionForm.jsp

@@ -393,10 +393,10 @@
                 <c:forEach items="${cmPromotion.skus}" var="sku" varStatus="s">
                     <tr>
                         <td hidden><input name="skus[${s.index}].skuId" value="${sku.skuId}"></td>
-                        <td>规格:${sku.unit}</td>
-                        <td>优惠价:<input class="required" name="skus[${s.index}].touchPrice" value="${sku.touchPrice}" type="number"/></td>
-                        <td>成本类型:${sku.costCheckFlag eq 1?'固定成本':'比例成本'}</td>
-                        <td>
+                        <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;规格:${sku.unit}</td>
+                        <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;优惠价:<input class="required" name="skus[${s.index}].touchPrice" value="${sku.touchPrice}" type="number"/></td>
+                        <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;成本类型:${sku.costCheckFlag eq 1?'固定成本':'比例成本'}</td>
+                        <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                             <c:if test="${sku.costCheckFlag eq 1}">
                                 成本价格:¥${sku.costPrice}
                             </c:if>

+ 39 - 22
src/main/webapp/WEB-INF/views/modules/product-new/singlePromotionList.jsp

@@ -62,7 +62,8 @@
         </form:select>
         &nbsp;&nbsp;<input id="btnSubmit" class="btn btn-primary" type="submit" value="查询"/>
         &nbsp;&nbsp;&nbsp;&nbsp;<input class="btn btn-primary" style="width: 90px"
-                                       onclick="window.location='${ctx}/product/cmPromotions/form?type=1'" value="新增单品促销"/>
+                                       onclick="window.location='${ctx}/product/cmPromotions/form?type=1'"
+                                       value="新增单品促销"/>
         <div class="clearfix"></div>
     </div>
 </form:form>
@@ -88,22 +89,31 @@
                     ${cmPromotion.id}
             </td>
             <td style="color: ${cmPromotion.mode eq 1?"green":cmPromotion.mode eq 2?"orange":"purple"}">
-                ${cmPromotion.mode eq 1?"优惠价":cmPromotion.mode eq 2?"满减":"满赠"}
+                    ${cmPromotion.mode eq 1?"优惠价":cmPromotion.mode eq 2?"满减":"满赠"}
             </td>
             <td>
                 <c:if test="${cmPromotion.mode eq 1}">
-                    优惠价:<fmt:formatNumber value="${cmPromotion.touchPrice}" pattern="#,##0.00" maxFractionDigits="2"/>
+                    <%--                    优惠价:<fmt:formatNumber value="${cmPromotion.touchPrice}" pattern="#,##0.00" maxFractionDigits="2"/>--%>
+                    <div style="float: left">优惠价:</div>
+                    <div style="float: left;text-align: left">
+                        <c:forEach items="${cmPromotion.skus}" var="sku">
+                            ${sku.unit}-¥${sku.touchPrice}
+                            <br>
+                        </c:forEach>
+                    </div>
                 </c:if>
                 <c:if test="${cmPromotion.mode eq 2}">
                     满<fmt:formatNumber value="${cmPromotion.touchPrice}" pattern="#,##0.00" maxFractionDigits="2"/>
                     ,减<fmt:formatNumber value="${cmPromotion.reducedPrice}" pattern="#,##0.00" maxFractionDigits="2"/>
                 </c:if>
                 <c:if test="${cmPromotion.mode eq 3}">
-                    满<fmt:formatNumber value="${cmPromotion.touchPrice}" pattern="#,##0.00" maxFractionDigits="2"/>,赠品:<c:if test="${cmPromotion.giftTypeNumber > 1}">${cmPromotion.giftTypeNumber}类</c:if>${cmPromotion.giftNumber}个,详见下表
+                    满<fmt:formatNumber value="${cmPromotion.touchPrice}" pattern="#,##0.00"
+                                       maxFractionDigits="2"/>,赠品:<c:if
+                        test="${cmPromotion.giftTypeNumber > 1}">${cmPromotion.giftTypeNumber}类</c:if>${cmPromotion.giftNumber}个,详见下表
                 </c:if>
             </td>
             <td>
-                ${cmPromotion.status eq 1?"永久":"区间有效"}
+                    ${cmPromotion.status eq 1?"永久":"区间有效"}
             </td>
             <td>
                 <c:if test="${cmPromotion.status eq 2}">
@@ -116,7 +126,7 @@
                 </c:if>
             </td>
             <td style="color: ${cmPromotion.delFlag1 eq 1?"purple":cmPromotion.delFlag1 eq 2?"green":cmPromotion.delFlag1 eq 3?"orange":cmPromotion.delFlag1 eq 0?"red":"black"}">
-                ${cmPromotion.delFlag1 eq 1?"未开始":cmPromotion.delFlag1 eq 2?"进行中":cmPromotion.delFlag1 eq 3?"已结束":cmPromotion.delFlag1 eq 0?"已关闭":"未知"}
+                    ${cmPromotion.delFlag1 eq 1?"未开始":cmPromotion.delFlag1 eq 2?"进行中":cmPromotion.delFlag1 eq 3?"已结束":cmPromotion.delFlag1 eq 0?"已关闭":"未知"}
             </td>
             <td>
                 <fmt:formatDate value="${cmPromotion.updateTime}" pattern="yyyy-MM-dd HH:mm:ss"/>
@@ -135,14 +145,21 @@
         <tr>
             <td colspan="8" style="text-align: left">
                 <c:if test="${cmPromotion.promotionProducts.size()>0}">
-                    <p>促销商品:</p >
+                    <p>促销商品:</p>
                     <c:forEach items="${cmPromotion.promotionProducts}" var="promotionProduct">
-                        <p>
+                        <div>
                             <img src="${promotionProduct.mainImage}" alt="图片" width="50px" height="50px">
-                            <span style="position: absolute; left: 120px;width: 550px">商品名称:${promotionProduct.name}</span>
+                            <span style="position: absolute; left: 150px;width: 550px">商品名称:${promotionProduct.name}</span>
                             <span style="position: absolute; left: 670px;width: 430px">供应商:${promotionProduct.shopName}</span>
-                            <span style="position: absolute; left: 1100px">机构价:${promotionProduct.price}</span>
-                        </p>
+                            <span style="position: absolute; left: 1100px">
+                                <p style="float: left">机构价:</p>
+                                <div style="float:left">
+                                <c:forEach items="${cmPromotion.skus}" var="sku">
+                                    <div>&nbsp;&nbsp;&nbsp;&nbsp;${sku.unit}-¥${sku.price}</div>
+                                </c:forEach>
+                                    </div>
+                            </span>
+                        </div>
                     </c:forEach>
                 </c:if>
                 <c:if test="${cmPromotion.giftProducts.size()>0}">
@@ -172,28 +189,28 @@
 </table>
 <div class="pagination">${page}</div>
 <script type="text/javascript">
-    function updateStatus(id,flag) {
+    function updateStatus(id, flag) {
         var msg = "提示信息";
-        if(flag == 'close'){
+        if (flag == 'close') {
             msg = "确定关闭该促销活动吗";
-        }else if(flag == 'open'){
+        } else if (flag == 'open') {
             msg = "确定开启该促销活动吗?";
-        }else if(flag == 'delete'){
+        } else if (flag == 'delete') {
             msg = "确定删除该促销活动吗?";
         }
-        top.$.jBox.confirm(msg,'系统提示',function(v,h,f){
-            if(v=='ok'){
-                $.post("${ctx}/product/cmPromotions/updateStatus",{'id': id,'flag': flag}, function(data) {
-                    if(true==data.success){
+        top.$.jBox.confirm(msg, '系统提示', function (v, h, f) {
+            if (v == 'ok') {
+                $.post("${ctx}/product/cmPromotions/updateStatus", {'id': id, 'flag': flag}, function (data) {
+                    if (true == data.success) {
                         $.jBox.tip(data.msg, 'info');
                         $("#searchForm").submit();
                     } else {
-                        $.jBox.tip(data.msg,'error');
+                        $.jBox.tip(data.msg, 'error');
                     }
-                },"JSON");//这里返回的类型有:json,html,xml,text
+                }, "JSON");//这里返回的类型有:json,html,xml,text
             }
             return;
-        },{buttonsFocus:1,persistent: true});
+        }, {buttonsFocus: 1, persistent: true});
     }
 </script>
 </body>

+ 7 - 7
src/main/webapp/WEB-INF/views/modules/svip/cmSvipProductForm.jsp

@@ -67,13 +67,13 @@
     <%--				<label class="showLabel">¥${cmSvipProduct.price}</label>--%>
     <%--			</div>--%>
     <%--		</div>--%>
-    <%--		<div class="control-group">--%>
-    <%--			<label class="control-label">是否含税:</label>--%>
-    <%--			<div class="controls">--%>
-    <%--				<label class="showLabel">${cmSvipProduct.includedTax == '1'?'含税':(cmSvipProduct.includedTax == '0'?'不含税':'未知')}--%>
-    <%--                        ${cmSvipProduct.includedTax == '2'?'':(cmSvipProduct.invoiceType == '1'?'-开增值税专用发票':(cmSvipProduct.invoiceType == '2'?'-开增值税普通发票':'-不能开票'))}</label>--%>
-    <%--			</div>--%>
-    <%--		</div>--%>
+    <div class="control-group">
+        <label class="control-label">是否含税:</label>
+        <div class="controls">
+            <label class="showLabel">${cmSvipProduct.includedTax == '1'?'含税':(cmSvipProduct.includedTax == '0'?'不含税':'未知')}
+                    ${cmSvipProduct.includedTax == '2'?'':(cmSvipProduct.invoiceType == '1'?'-开增值税专用发票':(cmSvipProduct.invoiceType == '2'?'-开增值税普通发票':'-不能开票'))}</label>
+        </div>
+    </div>
     <div class="control-group" style="display: ${cmSvipProduct.includedTax == '2'?'none':''}">
         <label class="control-label">机构税率:</label>
         <div class="controls">