浏览代码

Merge branch 'master' of lhm/kmall-haikong into master

lhm 3 年之前
父节点
当前提交
07aff20d9e

+ 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

+ 25 - 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) {

+ 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" />

+ 17 - 5
kmall-admin/src/main/webapp/js/sale/sale.js

@@ -697,6 +697,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 +750,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;
@@ -929,6 +931,9 @@ let vm = new Vue({
             var newIndex = ++vm.pendingIndex;
             vm.pendingIndex = newIndex > 3?1: newIndex;
             vm.goodsList = [];
+            vm.levelName = '';
+            vm.deductionScore = '';
+            vm.memberCurrentAvailableScore = '';
             vm.customClearData();
         },
         toResumePending:function(){
@@ -936,7 +941,10 @@ let vm = new Vue({
                 alert("当前没有挂起的订单");
                 return ;
             }
-            $('#pendignOrderModal').modal('show')
+            vm.levelName = '';
+            vm.deductionScore = '';
+            vm.memberCurrentAvailableScore = '';
+            $('#pendignOrderModal').modal('show');
         },
         resumePending:function(key){
             if(vm.pendingOrderMap.size == 0){
@@ -1661,8 +1669,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 +2073,9 @@ function toPayOrder(payCode){
                     vm.goodsList = [];
                     vm.customname = '' ;
                     vm.customidcard = '';
+                    vm.levelName = '';
+                    vm.deductionScore = '';
+                    vm.memberCurrentAvailableScore = '';
                     vm.customClearData();
 
                 }else{
@@ -2106,9 +2117,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;
@@ -2201,6 +2212,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>

二进制
kmall-admin/src/main/webapp/statics/img/login.jpg


二进制
kmall-admin/src/main/webapp/statics/img/login1.jpg


二进制
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>