Parcourir la source

Merge remote-tracking branch 'upsteam/master'

zhh il y a 3 ans
Parent
commit
18ad1237f5
25 fichiers modifiés avec 199 ajouts et 75 suppressions
  1. 11 0
      kmall-admin/src/main/java/com/kmall/admin/controller/OrderController.java
  2. 11 0
      kmall-admin/src/main/java/com/kmall/admin/controller/OrderRefundController.java
  3. 15 0
      kmall-admin/src/main/java/com/kmall/admin/controller/vip/Mall2MemberConsumptionRecordsController.java
  4. 2 0
      kmall-admin/src/main/java/com/kmall/admin/dao/OrderDao.java
  5. 2 0
      kmall-admin/src/main/java/com/kmall/admin/dao/OrderRefundDao.java
  6. 1 0
      kmall-admin/src/main/java/com/kmall/admin/dao/vip/Mall2MemberConsumptionRecordsDao.java
  7. 2 0
      kmall-admin/src/main/java/com/kmall/admin/service/OrderRefundService.java
  8. 2 0
      kmall-admin/src/main/java/com/kmall/admin/service/OrderService.java
  9. 3 1
      kmall-admin/src/main/java/com/kmall/admin/service/impl/GoodsServiceImpl.java
  10. 5 0
      kmall-admin/src/main/java/com/kmall/admin/service/impl/OrderRefundServiceImpl.java
  11. 30 22
      kmall-admin/src/main/java/com/kmall/admin/service/impl/OrderServiceImpl.java
  12. 5 0
      kmall-admin/src/main/java/com/kmall/admin/service/impl/vip/Mall2MemberConsumptionRecordsServiceImpl.java
  13. 3 0
      kmall-admin/src/main/java/com/kmall/admin/service/vip/Mall2MemberConsumptionRecordsService.java
  14. 1 1
      kmall-admin/src/main/resources/logback.xml
  15. 4 0
      kmall-admin/src/main/resources/mybatis/mapper/OrderDao.xml
  16. 6 0
      kmall-admin/src/main/resources/mybatis/mapper/OrderRefundDao.xml
  17. 5 0
      kmall-admin/src/main/resources/mybatis/mapper/vip/Mall2MemberConsumptionRecordsDao.xml
  18. 3 3
      kmall-admin/src/main/webapp/WEB-INF/page/shop/offilineOrderList.html
  19. 34 26
      kmall-admin/src/main/webapp/WEB-INF/page/sys/main.html
  20. 48 16
      kmall-admin/src/main/webapp/js/sale/sale.js
  21. 3 3
      kmall-admin/src/main/webapp/login.html
  22. BIN
      kmall-admin/src/main/webapp/statics/img/login.jpg
  23. BIN
      kmall-admin/src/main/webapp/statics/img/login1.jpg
  24. BIN
      kmall-admin/src/main/webapp/statics/img/logotest2.jpg
  25. 3 3
      kmall-admin/src/main/webapp/userLogin.html

+ 11 - 0
kmall-admin/src/main/java/com/kmall/admin/controller/OrderController.java

@@ -1500,4 +1500,15 @@ public class OrderController {
         return orderService.resendOrderHkMall(orderSn);
     }
 
+    /**
+     * 总计
+     */
+    @RequestMapping("/queryMainTotal")
+    public R queryMainTotal(@RequestParam Map<String, Object> params) {
+        int sum = orderService.queryOrderMainTotal();
+
+        return R.ok().put("sum", sum);
+    }
+
+
 }

+ 11 - 0
kmall-admin/src/main/java/com/kmall/admin/controller/OrderRefundController.java

@@ -128,4 +128,15 @@ public class OrderRefundController {
 
         return R.ok().put("list", list);
     }
+
+    /**
+     * 总计
+     */
+    @RequestMapping("/queryMainTotal")
+    @ResponseBody
+    public R queryMainTotal(@RequestParam Map<String, Object> params) {
+        int total = orderRefundService.queryMainTotal();
+
+        return R.ok().put("sum", total);
+    }
 }

+ 15 - 0
kmall-admin/src/main/java/com/kmall/admin/controller/vip/Mall2MemberConsumptionRecordsController.java

@@ -3,6 +3,7 @@ package com.kmall.admin.controller.vip;
 import java.util.List;
 import java.util.Map;
 
+import com.kmall.admin.utils.ParamUtils;
 import com.kmall.common.utils.PageUtils;
 import com.kmall.common.utils.Query;
 import com.kmall.common.utils.R;
@@ -104,4 +105,18 @@ public class Mall2MemberConsumptionRecordsController {
 
         return R.ok().put("list", list);
     }
+
+    /**
+     * 查看列表
+     */
+    @RequestMapping("/queryTotal")
+    @ResponseBody
+    public R queryTotal() {
+        //查询列表数据
+
+        int sum = mall2MemberConsumptionRecordsService.queryMainTotal();
+        return R.ok().put("userSum", sum);
+    }
+
+
 }

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

@@ -192,4 +192,6 @@ public interface OrderDao extends BaseDao<OrderEntity> {
      * @return      结果
      */
     int updateBuyerPayCheck(Map<String, Object> wxMap);
+
+    int queryOrderMainTotal();
 }

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

@@ -12,4 +12,6 @@ import com.kmall.manager.dao.BaseDao;
  */
 public interface OrderRefundDao extends BaseDao<OrderRefundEntity> {
     OrderRefundEntity queryObjectByOrderId(Long orderId);
+
+    int queryMainTotal();
 }

+ 1 - 0
kmall-admin/src/main/java/com/kmall/admin/dao/vip/Mall2MemberConsumptionRecordsDao.java

@@ -22,4 +22,5 @@ public interface Mall2MemberConsumptionRecordsDao extends BaseDao<Mall2MemberCon
      */
     Mall2MemberConsumptionRecordsEntity queryObjectByOrderSn(@Param("orderSn") String orderSn);
 
+    int queryMainTotal();
 }

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

@@ -71,4 +71,6 @@ public interface OrderRefundService {
     int deleteBatch(Integer[] ids);
 
     OrderRefundEntity queryObjectByOrderId(Long orderId);
+
+    int queryMainTotal();
 }

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

@@ -256,4 +256,6 @@ public interface OrderService {
      * 重推退款积分,最多五次
      */
     void integralTask();
+
+    int queryOrderMainTotal();
 }

+ 3 - 1
kmall-admin/src/main/java/com/kmall/admin/service/impl/GoodsServiceImpl.java

@@ -1664,11 +1664,13 @@ public class GoodsServiceImpl implements GoodsService {
         // 仓库可用库存
         wareQuantity = itemDTO.getQuantity();
         // 保税仓库存 + 展销店库存 - 出区数 >= 购买数
-        if (!((wareQuantity + Integer.parseInt(stockNum) - exitRegionNumber) > sellVolume)) {
+        int stockNumber = Integer.parseInt(stockNum);
+        if (!((wareQuantity + stockNumber - exitRegionNumber) > sellVolume)  || sellVolume > stockNumber) {
             // 库存不足
             log.error("商品条码:【{}】,sku:【{}】,门店库存:【{}】,保税仓库存:【{}】,出区数:【{}】,该商品仓库库存不足!", prodBarcode, sku, stockNum, wareQuantity, exitRegionNumber);
             throw new ServiceException(String.format("商品条码:【%s】,sku:【%s】,门店库存:【%s】,保税仓库存:【%s】,出区数:【%s】,该商品仓库库存不足!", prodBarcode, sku, stockNum, wareQuantity, exitRegionNumber));
         }
+        goods.setSellVolume(goods.getSellVolume() - 1);
     }
 
     @Override

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

@@ -81,4 +81,9 @@ public class OrderRefundServiceImpl implements OrderRefundService {
     public OrderRefundEntity queryObjectByOrderId(Long orderId) {
         return orderRefundDao.queryObjectByOrderId(orderId);
     }
+
+    @Override
+    public int queryMainTotal() {
+        return orderRefundDao.queryMainTotal();
+    }
 }

+ 30 - 22
kmall-admin/src/main/java/com/kmall/admin/service/impl/OrderServiceImpl.java

@@ -2332,11 +2332,12 @@ public class OrderServiceImpl implements OrderService {
                     // 当前出区数
                     Integer exitRegionNumber = goodsDto.getExitRegionNumber();
                     // 保税仓库存 + 门店库存 - 出区数 > 购买数
-                    if (!((warehouseStock + stockNum) - exitRegionNumber > sellVolume)) {
+                    if (!((warehouseStock + stockNum) - exitRegionNumber > sellVolume) || sellVolume > stockNum) {
                         // 库存不足
                         LOGGER.error("sku:【{}】库存不足,门店可用库存:【{}】,仓库可用库存:【{}】,购买数量:【{}】", sku, stockNum, warehouseStock, sellVolume);
                         throw new ServiceException(String.format("sku:【%s】库存不足,门店可用库存:【%s】,仓库可用库存:【%s】,购买数量:【%s】", sku, stockNum, warehouseStock, sellVolume));
                     }
+                    sellVolume -= 1;
                     // TODO 库存变化记录新增字段:订单号、门店编号
                     // 门店库存变化记录
                     StoreMngChangeEntity storeMngChangeEntity = new StoreMngChangeEntity();
@@ -2793,7 +2794,7 @@ public class OrderServiceImpl implements OrderService {
             LOGGER.info("----------------------------------------------------------------------------");
             return resultObj;
         } catch (Exception e) {
-            e.printStackTrace();
+            LOGGER.error("下单出现异常:" + e);
             resultObj.put("errno", 400);
             resultObj.put("errmsg", "订单异常------" + e.getMessage());
             throw new RuntimeException(e);
@@ -3350,26 +3351,28 @@ public class OrderServiceImpl implements OrderService {
             haiKongMemberScoreChangeRecordEntity.setResendStatus(HaiKongMemberOrderResendStatusEnum.NON_RESEND.getStatus());
             haiKongMemberScoreChangeRecordService.save(haiKongMemberScoreChangeRecordEntity);
         }
-        LOGGER.info("保存会员系统积分变动详情记录中......");
-        List<HaiKongMemberScoreChangeDetailRecordEntity> recordEntityList = goodsList.stream().distinct().map(goodsEntity -> {
-            HaiKongMemberScoreChangeDetailRecordEntity entity = new HaiKongMemberScoreChangeDetailRecordEntity();
-            String sku = goodsEntity.getSku();
-            OrderGiftScoreRulesVo orderGiftScoreRulesVo = giftGoodsScoreDetailMap.get(sku);
-            if (Objects.nonNull(orderGiftScoreRulesVo)) {
-                entity.setGenerateRatio(orderGiftScoreRulesVo.getGenerateRatio());
-                entity.setGenerateRules(orderGiftScoreRulesVo.getGenerateType());
-                entity.setGiftScore(orderGiftScoreRulesVo.getGiftScore());
-            }
-            entity.setOrderSn(order.getOrder_sn());
-            entity.setRetailPrice(goodsEntity.getRetailPrice());
-            entity.setActualPrice(goodsEntity.getTotalPrice());
-            entity.setProductBarcode(goodsEntity.getProdBarcode());
-            entity.setSellVolume(goodsEntity.getSellVolume());
-            entity.setSku(sku);
-            entity.setDeductionScore(goodsEntity.getDeductionScore());
-            return entity;
-        }).collect(Collectors.toList());
-        haiKongMemberScoreChangeDetailRecordService.saveBatch(recordEntityList);
+        if (changeEvent.equals(HaiKongMemberScoreChangeEventEnum.ADD.getEvent())) {
+            LOGGER.info("保存会员系统积分变动详情记录中......");
+            List<HaiKongMemberScoreChangeDetailRecordEntity> recordEntityList = goodsList.stream().distinct().map(goodsEntity -> {
+                HaiKongMemberScoreChangeDetailRecordEntity entity = new HaiKongMemberScoreChangeDetailRecordEntity();
+                String sku = goodsEntity.getSku();
+                OrderGiftScoreRulesVo orderGiftScoreRulesVo = giftGoodsScoreDetailMap.get(sku);
+                if (Objects.nonNull(orderGiftScoreRulesVo)) {
+                    entity.setGenerateRatio(orderGiftScoreRulesVo.getGenerateRatio());
+                    entity.setGenerateRules(orderGiftScoreRulesVo.getGenerateType());
+                    entity.setGiftScore(orderGiftScoreRulesVo.getGiftScore());
+                }
+                entity.setOrderSn(order.getOrder_sn());
+                entity.setRetailPrice(goodsEntity.getRetailPrice());
+                entity.setActualPrice(goodsEntity.getTotalPrice());
+                entity.setProductBarcode(goodsEntity.getProdBarcode());
+                entity.setSellVolume(goodsEntity.getSellVolume());
+                entity.setSku(sku);
+                entity.setDeductionScore(goodsEntity.getDeductionScore());
+                return entity;
+            }).collect(Collectors.toList());
+            haiKongMemberScoreChangeDetailRecordService.saveBatch(recordEntityList);
+        }
     }
 
     private boolean orderQuery(OrderVo order, OrderProcessRecordEntity processRecordEntity) {
@@ -5381,4 +5384,9 @@ public class OrderServiceImpl implements OrderService {
         }
 
     }
+
+    @Override
+    public int queryOrderMainTotal() {
+        return orderDao.queryOrderMainTotal();
+    }
 }

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

@@ -56,4 +56,9 @@ public class Mall2MemberConsumptionRecordsServiceImpl implements Mall2MemberCons
     public int deleteBatch(Integer[]mmcrIds) {
         return mall2MemberConsumptionRecordsDao.deleteBatch(mmcrIds);
     }
+
+    @Override
+    public int queryMainTotal() {
+        return mall2MemberConsumptionRecordsDao.queryMainTotal();
+    }
 }

+ 3 - 0
kmall-admin/src/main/java/com/kmall/admin/service/vip/Mall2MemberConsumptionRecordsService.java

@@ -1,6 +1,7 @@
 package com.kmall.admin.service.vip;
 
 import com.kmall.admin.entity.vip.Mall2MemberConsumptionRecordsEntity;
+import com.kmall.common.utils.Query;
 
 import java.util.List;
 import java.util.Map;
@@ -69,4 +70,6 @@ public interface Mall2MemberConsumptionRecordsService {
      * @return 删除条数
      */
     int deleteBatch(Integer[] mmcrIds);
+
+    int queryMainTotal();
 }

+ 1 - 1
kmall-admin/src/main/resources/logback.xml

@@ -7,7 +7,7 @@ debug:当此属性设置为true时,将打印出logback内部日志信息,
 <configuration scan="false" scanPeriod="60 seconds" debug="false">
 
 <!--    <property name="LOG_HOME" value="/data/project/logs/kmall-haikong/kmall-admin/"/>-->
-    <property name="LOG_HOME" value="/data/project/logs/kmall-haikong/kmall-admin/"/>
+    <property name="LOG_HOME" value="/app/project/logs/kmall-haikong/kmall-admin/"/>
     <!-- 定义日志的根目录 -->
     <property name="TRACE_DIR" value="trace" />
     <property name="DEBUG_DIR" value="debug" />

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

@@ -2460,4 +2460,8 @@
         where order_sn = #{orderSn,jdbcType=VARCHAR}
     </update>
 
+    <select id="queryOrderMainTotal" resultType="java.lang.Integer">
+        select count(*) from mall_order
+    </select>
+
 </mapper>

+ 6 - 0
kmall-admin/src/main/resources/mybatis/mapper/OrderRefundDao.xml

@@ -300,4 +300,10 @@
         select * from mall_order_refund
         where order_id = #{orderId}
     </select>
+
+    <select id="queryMainTotal" resultType="java.lang.Integer">
+        select count(*) from mall_order_refund
+    </select>
+
+
 </mapper>

+ 5 - 0
kmall-admin/src/main/resources/mybatis/mapper/vip/Mall2MemberConsumptionRecordsDao.xml

@@ -219,4 +219,9 @@
 		</foreach>
 	</delete>
 
+
+	<select id="queryMainTotal" resultType="int">
+		select count(*) from mall2_member_consumption_records
+	</select>
+
 </mapper>

+ 3 - 3
kmall-admin/src/main/webapp/WEB-INF/page/shop/offilineOrderList.html

@@ -79,9 +79,9 @@
                     <Form-item label="订单号" prop="orderSn">
                         <i-input v-model="order.orderSn" readonly/>
                     </Form-item>
-                    <Form-item label="会员" prop="userName">
-                        <i-input v-model="order.userName" readonly/>
-                    </Form-item>
+<!--                    <Form-item label="会员" prop="userName">-->
+<!--                        <i-input v-model="order.userName" readonly/>-->
+<!--                    </Form-item>-->
                     <Form-item label="订单业务类型" prop="orderBizType" >
                         <i-select v-model="order.orderBizType" filterable placeholder="订单业务类型"
                                   label-in-value disabled>

+ 34 - 26
kmall-admin/src/main/webapp/WEB-INF/page/sys/main.html

@@ -16,8 +16,9 @@
                 <div class="icon">
                     <i class="fa fa-shopping-bag"></i>
                 </div>
-                <a onclick="vm.toOrderByShipStatus()" class="small-box-footer">详情 <i
-                        class="fa fa-arrow-circle-right"></i></a>
+                <a class="small-box-footer"></a>
+<!--                <a onclick="vm.toOrderByShipStatus()" class="small-box-footer">详情 <i-->
+<!--                        class="fa fa-arrow-circle-right"></i></a>-->
             </div>
         </div>
         <div class="col-md-3 col-sm-6 col-xs-12">
@@ -29,8 +30,9 @@
                 <div class="icon">
                     <i class="fa fa-shopping-bag"></i>
                 </div>
-                <a onclick="vm.toOrderByShipStatus(0)" class="small-box-footer">详情 <i
-                        class="fa fa-arrow-circle-right"></i></a>
+                <a class="small-box-footer"></a>
+<!--                <a onclick="vm.toOrderByShipStatus(0)" class="small-box-footer">详情 <i-->
+<!--                        class="fa fa-arrow-circle-right"></i></a>-->
             </div>
         </div>
         <div class="col-md-3 col-sm-6 col-xs-12">
@@ -42,8 +44,9 @@
                 <div class="icon">
                     <i class="fa fa-shopping-bag"></i>
                 </div>
-                <a onclick="vm.toOrderByShipStatus(1)" class="small-box-footer">详情 <i
-                        class="fa fa-arrow-circle-right"></i></a>
+                <a class="small-box-footer"></a>
+<!--                <a onclick="vm.toOrderByShipStatus(1)" class="small-box-footer">详情 <i-->
+<!--                        class="fa fa-arrow-circle-right"></i></a>-->
             </div>
         </div>
         <div class="col-md-3 col-sm-6 col-xs-12">
@@ -55,21 +58,23 @@
                 <div class="icon">
                     <i class="fa fa-shopping-bag"></i>
                 </div>
-                <a onclick="vm.toOrderByPayStatus(0)" class="small-box-footer">详情 <i
-                        class="fa fa-arrow-circle-right"></i></a>
+                <a class="small-box-footer"></a>
+<!--                <a onclick="vm.toOrderByPayStatus(0)" class="small-box-footer">详情 <i-->
+<!--                        class="fa fa-arrow-circle-right"></i></a>-->
             </div>
         </div>
         <div class="col-md-3 col-sm-6 col-xs-12">
             <div class="small-box bg-fuchsia">
                 <div class="inner">
                     <h3>{{thcOrderSum}}</h3>
-                    <p>申请退款订单</p>
+                    <p>退款订单</p>
                 </div>
                 <div class="icon">
                     <i class="fa fa-shopping-bag"></i>
                 </div>
-                <a onclick="vm.toOrderByRefundStatus(1)" class="small-box-footer">详情 <i
-                        class="fa fa-arrow-circle-right"></i></a>
+                <a class="small-box-footer"></a>
+<!--                <a onclick="vm.toOrderByRefundStatus(1)" class="small-box-footer">详情 <i-->
+<!--                        class="fa fa-arrow-circle-right"></i></a>-->
             </div>
         </div>
         <div class="col-md-3 col-sm-6 col-xs-12">
@@ -81,20 +86,22 @@
                 <div class="icon">
                     <i class="fa fa-shopping-bag"></i>
                 </div>
-                <a onclick="vm.toOrderByOrderStatus(402)" class="small-box-footer">详情 <i
-                        class="fa fa-arrow-circle-right"></i></a>
+                <a class="small-box-footer"></a>
+<!--                <a onclick="vm.toOrderByOrderStatus(402)" class="small-box-footer">详情 <i-->
+<!--                        class="fa fa-arrow-circle-right"></i></a>-->
             </div>
         </div>
         <div class="col-md-3 col-sm-6 col-xs-12">
             <div class="small-box bg-red">
                 <div class="inner">
                     <h3>{{userSum}}</h3>
-                    <p>所有会员</p>
+                    <p>消费记录总数</p>
                 </div>
                 <div class="icon">
                     <i class="fa fa-user-md"></i>
                 </div>
-                <a onclick="vm.toUser()" class="small-box-footer">详情 <i class="fa fa-arrow-circle-right"></i></a>
+                <a class="small-box-footer"></a>
+<!--                <a onclick="vm.toUser()" class="small-box-footer">详情 <i class="fa fa-arrow-circle-right"></i></a>-->
             </div>
         </div>
         <div class="col-md-3 col-sm-6 col-xs-12">
@@ -106,7 +113,8 @@
                 <div class="icon">
                     <i class="fa fa-ship"></i>
                 </div>
-                <a onclick="vm.toGoods()" class="small-box-footer">详情 <i class="fa fa-arrow-circle-right"></i></a>
+                <a class="small-box-footer"></a>
+<!--                <a onclick="vm.toGoods()" class="small-box-footer">详情 <i class="fa fa-arrow-circle-right"></i></a>-->
             </div>
         </div>
     </div>
@@ -115,7 +123,7 @@
             <th colspan="5">会员购买率:<span style="color: red;">{{hygml}}%</span>(会员购买率=已付款订单会员数÷会员总数)</th>
         </tr>
         <tr style='text-align: center;'>
-            <th style="text-align: center;">会员总数</th>
+            <th style="text-align: center;">消费记录总数</th>
             <th style="text-align: center;">已付款订单会员数</th>
             <th style="text-align: center;">有订单会员数</th>
             <th style="text-align: center;">今日订单数</th>
@@ -162,7 +170,7 @@
             yfkOrderSum: 0,//待付款
             ywcOrderSum: 0,//已完成
             thcOrderSum: 0,//退款
-            userSum: 0,//所有会员
+            userSum: 0,//消费记录总
             goodsSum: 0,//所有商品数
             yfkOrderUserSum: 0,//已付款订单会员数
             oderUserSum: 0,//有订单会员数
@@ -216,7 +224,7 @@
                 });
             },
             toOrderByRefundStatus: function (refundStatus) {
-                let url = '../shop/orderrefund.html?refundStatus=' + refundStatus;
+                let url = '../shop/offilineOrderList.html?orderType=1';
                 if (vm.thcOrderSum == 0) {
                     iview.Message.error('没有数据!');
                     return;
@@ -272,7 +280,7 @@
         },
         created: function () {
             let vue = this;
-            $.getJSON("../order/queryTotal?isOnfiilineOrder=0", function (r) {
+            $.getJSON("../order/queryMainTotal", function (r) {
                 vue.orderSum = r.sum;
             });
             $.getJSON("../order/queryTotal?orderStatus=201&payStatus=2&isOnfiilineOrder=0", function (r) {
@@ -307,10 +315,10 @@
             $.getJSON("../order/queryTotal?isOnfiilineOrder=0&orderStatus=402", function (r) {
                 vue.ywcOrderSum = r.sum;
             });
-//            $.getJSON("../orderrefund/queryTotal?isOnfflineOrder=0&refundStatus=1", function (r) {
-//                console.log(r.sum)
-//                vue.thcOrderSum = r.sum;
-//            });
+           $.getJSON("../orderrefund/queryMainTotal", function (r) {
+               console.log(r.sum)
+               vue.thcOrderSum = r.sum;
+           });
             $.get("../orderrefund/queryTotal?isOnfflineOrder=0&refundStatus=1", function (r) {
                 vue.thcOrderSum = r.sum;
                 if (r.sum > 0) {
@@ -322,7 +330,7 @@
                     let iN = new iNotify({
                         effect: 'flash',
                         interval: 500,
-                        message: "申请退款订单",
+                        message: "退款订单",
                         audio: {
                             file: ['../statics/audio/dforder.mp3']
                         },
@@ -356,7 +364,7 @@
                 vue.hitCount = r.hitCount;
             });
 
-            $.getJSON("../user/queryTotal", function (r) {
+            $.getJSON("../mall2memberconsumptionrecords/queryTotal", function (r) {
                 vue.userSum = r.userSum;
             });
             $.getJSON("../goods/queryTotal", function (r) {

+ 48 - 16
kmall-admin/src/main/webapp/js/sale/sale.js

@@ -619,9 +619,10 @@ let vm = new Vue({
         afterScore: 0,
         // 会员openid
         openId: '',
-        // 是否点击了加号或减号的标识
+        // 是否点击了加号或减号和操作新扫描商品的标识
         clickFlag: false,
-        deleteFlag: false
+        // 是否点击了计算活动价格
+        calActivityFlag: false
     },
     watch: {
         prodBarcode (){
@@ -672,6 +673,8 @@ let vm = new Vue({
         },
         searchQuery: function (prodBarcode){
             vm.prodBarcode = prodBarcode;
+            vm.clickFlag = true;
+            vm.calActivityFlag = false;
             vm.query();
         },
         queryOrderStatus:function(){
@@ -697,6 +700,7 @@ let vm = new Vue({
             var overflowLi = this.$refs.overflowLi;
             console.log("vm.$refs.saomiao.value===>" + vm.$refs.saomiao.value);
             let scanSellVolume = calScanSellVolume(vm.$refs.saomiao.value);
+            console.log("scanSellVolume===>" + scanSellVolume);
             $.get("../goods/details/"+vm.prodBarcode+"/"+vm.storeId+"/"+vm.prodBarcode+"/"+scanSellVolume, function (r) {
                 if (r.code == 0) {
                     if(r.goodsDetails.length>1) {
@@ -749,6 +753,7 @@ let vm = new Vue({
             var overflowLi = this.$refs.overflowLi;
             console.log("vm.$refs.saomiao.value===>" + vm.$refs.saomiao.value);
             let scanSellVolume = calScanSellVolume(vm.$refs.saomiao.value);
+            console.log("scanSellVolume===>" + scanSellVolume);
                 $.get("../goods/detailsOld/"+vm.prodBarcode+"/"+vm.storeId+"/"+scanSellVolume, function (r) {
                     if (r.code == 0) {
                         r.goodsDetails.sellVolume = 1;
@@ -789,6 +794,7 @@ let vm = new Vue({
                 }
             }
             vm.clickFlag = true;
+            vm.calActivityFlag = false;
         },
         minus:function(value){
             // 减少数量
@@ -828,13 +834,14 @@ let vm = new Vue({
                 }
             }
             vm.clickFlag = true;
+            vm.calActivityFlag = false;
 
         },
         selectItem:function(value) {
             console.log(value);
         },
         deleteItem:function(value){
-            vm.deleteFlag = true;
+            vm.calActivityFlag = false;
             vm.clickFlag = true;
             // 删除这条记录
             for(var i = 0 ; i < this.goodsList.length ; i++){
@@ -846,6 +853,9 @@ let vm = new Vue({
                     if(vm.mz.get(this.goodsList[i].prodBarcode)){
                         vm.mz.get(this.goodsList[i].prodBarcode).useMz = false ;
                     }
+                    // 同时删除
+                    this.calGoodsList.splice(i,1);
+
                     if(vm.brandGetOneFree.get(this.goodsList[i].brand)){
                         var giftBarcode = vm.brandGetOneFree.get(this.goodsList[i].brand).giftBarcode;
                         var muilty = vm.brandGetOneFree.get(this.goodsList[i].brand).buyNum;
@@ -895,6 +905,7 @@ let vm = new Vue({
                 }
             }
             this.index = value;
+            vm.deductionScore = '';
 
         },
         clearGoodsList:function(){
@@ -929,6 +940,11 @@ let vm = new Vue({
             var newIndex = ++vm.pendingIndex;
             vm.pendingIndex = newIndex > 3?1: newIndex;
             vm.goodsList = [];
+            vm.levelName = '';
+            vm.deductionScore = '';
+            vm.memberCurrentAvailableScore = '';
+            vm.clickFlag = true;
+            vm.calActivityFlag = false;
             vm.customClearData();
         },
         toResumePending:function(){
@@ -936,7 +952,12 @@ let vm = new Vue({
                 alert("当前没有挂起的订单");
                 return ;
             }
-            $('#pendignOrderModal').modal('show')
+            vm.levelName = '';
+            vm.deductionScore = '';
+            vm.memberCurrentAvailableScore = '';
+            vm.clickFlag = true;
+            vm.calActivityFlag = false;
+            $('#pendignOrderModal').modal('show');
         },
         resumePending:function(key){
             if(vm.pendingOrderMap.size == 0){
@@ -956,6 +977,9 @@ let vm = new Vue({
             vm.actualPrice = pendingObject.actualPrice;
             // 清除恢复的数据
             vm.pendingOrderMap.delete(key);
+
+            vm.clickFlag = true;
+            vm.calActivityFlag = false;
             removeByValue(vm.pendingOrderKeys,key);
             $('#pendignOrderModal').modal('hide')
         },
@@ -967,12 +991,10 @@ let vm = new Vue({
             }
 
             console.log("vm.clickFlag==>" + vm.clickFlag);
-            if (vm.clickFlag) {
-                let value = vm.$refs.couponBarCode.value;
-                if (value != null || value != "" || value != 'undefined' || vm.deleteFlag) {
-                    alert("请重新计算优惠价再提交订单!");
-                    return;
-                }
+            if (vm.clickFlag && !vm.calActivityFlag) {
+                // 提示点击
+                alert("请先计算活动优惠价!");
+                return;
             }
             $('#myModal').modal('show')
             // 每次点击提交订单的时候清空姓名和身份证信息和手机号
@@ -994,8 +1016,10 @@ let vm = new Vue({
                 alert("请选择商品");
                 return;
             }
-
-            vm.clickFlag = false;
+            if (this.goodsList.length == 0) {
+                alert("请选择商品");
+                return;
+            }
             $("#calculateOrderPriceDialog").modal('show');
 
             this.couponBarCodeChangeFocus();
@@ -1661,8 +1685,8 @@ function getPrintContentOrder(ticket, callback) {
     content += "<span style=\"float: right;width: 50%;text-align: right;\">" + ticket.cashInfo.receipts + "元</span>";
     content += "</div>";
     content += "<div style=\"width: 100%;\">";
-    content += "<span style=\"float: left;width: 50%;text-align: left;\">优惠:</span>";
-    content += "<span style=\"float: right;width: 50%;text-align: right;\">" + ticket.cashInfo.coupon + "元</span>";
+    content += "<span style=\"float: left;width: 50%;text-align: left;\">优惠:</span>";
+    content += "<span style=\"float: right;width: 50%;text-align: right;\">" + (new BigNumber(ticket.cashInfo.coupon).subtract(new BigNumber(ticket.cashInfo.scoreDeductionPrice))) + "元</span>";
     content += "</div>";
     // content += "<div style=\"width: 100%;\">";
     // content += "<span style=\"float: left;width: 50%;text-align: left;\">运费:</span>";
@@ -2065,6 +2089,10 @@ function toPayOrder(payCode){
                     vm.goodsList = [];
                     vm.customname = '' ;
                     vm.customidcard = '';
+                    vm.levelName = '';
+                    vm.deductionScore = '';
+                    vm.memberCurrentAvailableScore = '';
+                    vm.clickFlag = false;
                     vm.customClearData();
 
                 }else{
@@ -2106,9 +2134,9 @@ calScanSellVolume = function (prodBarcode) {
     console.log("prodBarcode typeof===>" + typeof prodBarcode);
     console.log("prodBarcode===>" + prodBarcode);
     if (goodsList === null || goodsList.length === 0) {
-        return 1;
+        return 2;
     }
-    let sellVolume = 0;
+    let sellVolume = 1;
     goodsList.forEach(goods => {
         if (prodBarcode === goods.prodBarcode) {
             sellVolume = sellVolume + goods.sellVolume;
@@ -2156,6 +2184,9 @@ calculateOrderPrice = function() {
                 vm.afterScore = r.data.afterScore;
                 vm.userInfo.customPhone = r.data.memberPhone;
                 vm.$refs.customPhone.value = r.data.memberPhone;
+                vm.calActivityFlag = true;
+
+                vm.clickFlag = false;
                 // console.log("memberPhone===>" + r.data.memberPhone);
                 // console.log("this.userInfo.customPhone===>" + vm.userInfo.customPhone);
                 // console.log("vm.$refs.customPhone.value===>" + vm.$refs.customPhone.value);
@@ -2201,6 +2232,7 @@ handleSellVolume = function (currentGoodsDetail, type) {
     let sku = currentGoodsDetail.sku;
     let prodBarcode = currentGoodsDetail.prodBarcode;
     if ('add' === type) {
+        number = number + 1;
         $.get("../goods/number/add/"+ storeId +"/" + sku + "/" + prodBarcode + "/" + number, function (res) {
             if (res.code === 0) {
                 currentGoodsDetail.sellVolume += 1;

+ 3 - 3
kmall-admin/src/main/webapp/login.html

@@ -52,7 +52,7 @@
             </div>
         </div>-->
         <div class="col-md-7" >
-            <p style="font-size: 35px;font-family: 微软雅黑;color: #3bc8ff;text-shadow: 2px 2px 5px #000;padding-right: 10px;margin: 45px 0 0;" align="center">
+            <p style="font-size: 35px;font-family: 微软雅黑;color: #fff;text-shadow: 2px 2px 5px #000;padding-right: 10px;margin: 45px 0 0;" align="center">
                 <br/>
                 <span style="font-size: 45px">管 理 后 台</span>
                 <br/>
@@ -79,8 +79,8 @@
                     </div>
                 </div>-->
                 <div>
-                    <i-button type="primary" @click="login" style="width: 125px;height: 45px">登录</i-button>
-                    <i-button type="primary" @click="changeUserLogin" style="width: 125px;height: 45px">切换店员端登录</i-button>
+                    <i-button @click="login" style="width: 125px;height: 45px">登录</i-button>
+                    <i-button @click="changeUserLogin" style="width: 125px;height: 45px">切换店员端登录</i-button>
                 </div>
             </div>
         </div>

BIN
kmall-admin/src/main/webapp/statics/img/login.jpg


BIN
kmall-admin/src/main/webapp/statics/img/login1.jpg


BIN
kmall-admin/src/main/webapp/statics/img/logotest2.jpg


+ 3 - 3
kmall-admin/src/main/webapp/userLogin.html

@@ -29,7 +29,7 @@
             <hr/>
         </div>
         <div class="col-md-7" >
-            <p style="font-size: 35px;font-family: 微软雅黑;color: #3bc8ff;text-shadow: 2px 2px 5px #000;padding-right: 10px;margin: 45px 0 0;" align="center">
+            <p style="font-size: 35px;font-family: 微软雅黑;color: #fff;text-shadow: 2px 2px 5px #000;padding-right: 10px;margin: 45px 0 0;" align="center">
                 <br/>
                 <span style="font-size: 45px">收 银 系 统</span>
                 <br/>
@@ -56,8 +56,8 @@
                     </div>
                 </div>-->
                 <div>
-                    <i-button type="warning" @click="login" style="width: 125px;height: 45px">登录</i-button>
-                    <i-button type="warning" @click="change" style="width: 125px;height: 45px">切换管理端</i-button>
+                    <i-button @click="login" style="width: 125px;height: 45px">登录</i-button>
+                    <i-button @click="change" style="width: 125px;height: 45px">切换管理端</i-button>
                 </div>
             </div>
         </div>