Procházet zdrojové kódy

1.销售数据上传页面可根据时间查询;
2.增加收银端确认提货操作;

lsp před 4 roky
rodič
revize
2b0a63e23e

+ 30 - 0
kmall-admin/src/main/java/com/kmall/admin/controller/PickUpCodeController.java

@@ -5,16 +5,19 @@ import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 import com.kmall.admin.entity.PickUpCodeEntity;
 import com.kmall.admin.service.PickUpCodeService;
 import com.kmall.admin.utils.ParamUtils;
+import com.kmall.admin.utils.SessionUtils;
 import com.kmall.admin.utils.ShiroUtils;
 import com.kmall.common.utils.PageUtils;
 import com.kmall.common.utils.Query;
 import com.kmall.common.utils.R;
+import org.apache.commons.lang.StringUtils;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -161,6 +164,33 @@ public class PickUpCodeController {
         return R.ok().put("pickUpCode",pickUpCodeEntity );
     }
 
+    /**
+     * 确认提货
+     * @param orderSn
+     * @return
+     */
+    @RequestMapping("/confirmDelivery/{orderSn}")
+    public R confirmDelivery(@PathVariable("orderSn") String orderSn){
+        if(StringUtils.isEmpty(orderSn)){
+            return R.error("订单编号为空!");
+        }
+
+        PickUpCodeEntity pickUpCodeEntity = pickUpCodeService.queryObject(orderSn);
+        if(Objects.isNull(pickUpCodeEntity)){
+            return R.error("没有查找到该订单!");
+        }
+
+        if(!"1".equals(pickUpCodeEntity.getPickUpCodeStatus())){
+            return R.error("该订单还不能提货!");
+        }
+
+        pickUpCodeEntity.setPickUpCodeStatus("5");
+        pickUpCodeEntity.setModerSn(String.valueOf(ShiroUtils.getUserId()));
+        pickUpCodeEntity.setModTime(new Date());
+        pickUpCodeService.update(pickUpCodeEntity);
+
+        return R.ok("提货成功!");
+    }
 
     /**
      * 删除

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

@@ -53,7 +53,7 @@ public class PickUpCodeServiceImpl implements PickUpCodeService {
         if(pickUpCodeSn == null){
             pickUpCodeSn = "000001";
         }else{
-            AtomicInteger integer = new AtomicInteger(Integer.valueOf(pickUpCodeSn));
+            AtomicInteger integer = new AtomicInteger(Integer.valueOf(pickUpCodeSn.substring(pickUpCodeSn.indexOf("-")+1)));
             int i = integer.incrementAndGet();
             pickUpCodeSn= String.format("%06d", i);
         }

+ 2 - 1
kmall-admin/src/main/java/com/kmall/admin/websocket/WebSocketServer.java

@@ -79,6 +79,7 @@ public class WebSocketServer {
             // 查询所有的取货码
         Map<String,Object> dataParam = new HashMap<>();
         dataParam.put("pickUpCodeCreatetime",new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
+        dataParam.put("unEqualPickUpCodeStatus", "5");
 //        dataParam.put("pickUpCodeStatus","0");
         pickUpList = pickUpCodeService.queryList(dataParam);
         pickUpCodeMap.put(param,pickUpList);
@@ -135,7 +136,6 @@ public class WebSocketServer {
      * @param session
      * @param message
      */
-
     public static void sendMessage(Session session, String message,String picNo) {
         try {
 //            List<PickUpCodeEntity> pickUpCodeEntities = new ArrayList<>();
@@ -156,6 +156,7 @@ public class WebSocketServer {
                 if("broadcast".equalsIgnoreCase(message)){
                     Map<String,Object> dataParam = new HashMap<>();
                     dataParam.put("pickUpCodeCreatetime",new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
+                    dataParam.put("unEqualPickUpCodeStatus", "5");
                     List<PickUpCodeEntity> pickUpList = pickUpCodeService.queryList(dataParam);
                     data.put("pickUpCodeList", pickUpList);
                     String info = JSONObject.toJSONString(data);

+ 3 - 0
kmall-admin/src/main/resources/mybatis/mapper/PickUpCodeDao.xml

@@ -66,6 +66,9 @@
 		<if test="pickUpCodeStatus != null and pickUpCodeStatus.trim() != ''">
 			AND `pick_up_code_status` = #{pickUpCodeStatus}
 		</if>
+		<if test="unEqualPickUpCodeStatus != null and unEqualPickUpCodeStatus.trim() != ''">
+			AND `pick_up_code_status` != #{unEqualPickUpCodeStatus}
+		</if>
         <choose>
             <when test="sidx != null and sidx.trim() != ''">
                 order by ${sidx} ${order}

+ 1 - 0
kmall-admin/src/main/webapp/WEB-INF/page/sale/pickupcode.html

@@ -50,6 +50,7 @@
                     <i-button data-toggle="modal" data-target="#orderDetail" style="background-color:#83e7b4;width: 110px;font-family: 微软雅黑" @click="queryOrderDetail(item.orderSn,item.pickUpCodeSn)" v-if="item.pickUpCodeStatus == 1" >{{item.pickUpCodeSn}}</i-button>
                     <i-button data-toggle="modal" data-target="#orderDetail" style="background-color:#808080;width: 110px;font-family: 微软雅黑" @click="queryOrderDetail(item.orderSn,item.pickUpCodeSn)" v-if="item.pickUpCodeStatus == 2" >{{item.pickUpCodeSn}}</i-button>
                     <i-button data-toggle="modal" data-target="#orderDetail" style="background-color:#FF0000;width: 110px;font-family: 微软雅黑" @click="queryOrderDetail(item.orderSn,item.pickUpCodeSn)" v-if="item.pickUpCodeStatus == 4" >{{item.pickUpCodeSn}}</i-button>
+                    <i-button data-toggle="modal" data-target="#orderDetail" style="background-color:#ffc800;width: 110px;font-family: 微软雅黑" @click="queryOrderDetail(item.orderSn,item.pickUpCodeSn)" v-if="item.pickUpCodeStatus == 5" >{{item.pickUpCodeSn}}</i-button>
                 </div>
             </div>
         </div>

+ 6 - 0
kmall-admin/src/main/webapp/WEB-INF/page/sale/salesdataupload.html

@@ -12,6 +12,12 @@
                 <i-col span="4">
                     <i-input v-model="q.name" @on-enter="query" placeholder="名称"/>
                 </i-col>
+                <i-col span="3">
+                    <Date-picker v-model="q.startTime" placeholder="上传开始时间"/>
+                </i-col>
+                <i-col span="3">
+                    <Date-picker v-model="q.endTime" placeholder="上传结束时间"/>
+                </i-col>
                 <i-button @click="query">查询</i-button>
                 <i-button @click="reloadSearch">重置</i-button>
             </div>

+ 13 - 4
kmall-admin/src/main/webapp/js/sale/pickupcode.js

@@ -124,11 +124,17 @@ let vm = new Vue({
 		currentOrderNo: null,
 		pickUpCode: null,
 		tax:0,
-		response: ""
+		response: "",
+
+		isQuery: false
 	},
 	methods: {
 		query: function () {
-			vm.reload();
+			if(vm.isQuery){
+				vm.reload();
+			}else {
+				vm.isQuery = true;
+			}
 		},
 		/*add: function () {
 			vm.showList = false;
@@ -203,15 +209,18 @@ let vm = new Vue({
             vm.reload();
 		},
 		reload: function () {
+			if(!vm.q.startTime || !vm.q.endTime){
+				alert("请选择下单时间在进行查询!");
+			}
+
 			let url = "../order/pickUpCodeList";
 			let params = {
 				'orderSn': vm.q.orderSn,
 				'payName': vm.q.payName,
 				'payMobile': vm.q.payMobile,
-				'startTime': vm.timestampToDate(vm.q.startTime)/* ? vm.timestampToDate(vm.q.startTime) : new Date().toLocaleDateString().replace(/\//g, '-')*/,
+				'startTime': vm.timestampToDate(vm.q.startTime),
 				'endTime': vm.timestampToDate(vm.q.endTime)
 			}
-			console.log(JSON.stringify(params));
 			$.ajax({
 				type: "POST",
 				url: url,

+ 8 - 7
kmall-admin/src/main/webapp/js/sale/salesdataupload.js

@@ -45,11 +45,11 @@ let vm = new Vue({
         showList: true,
         title: null,
 		salesDataUpload: {},
-		ruleValidate: {
+		/*ruleValidate: {
 			name: [
 				{required: true, message: '名称不能为空', trigger: 'blur'}
 			]
-		},
+		},*/
 		q: {
 		    name: ''
 		}
@@ -162,12 +162,13 @@ let vm = new Vue({
 			});
 		},
 		download: function (event){
-			debugger;
-			let fileData = getSelectedRowData();
-			if (fileData.length != 1 && fileData.length != undefined){
-				return;
+			let fileIds = getSelectedRows();
+			if(null != fileIds && fileIds.length < 3){
+				for(let i=0; i<fileIds.length; i++){
+					let fileData = $("#jqGrid").jqGrid('getRowData', fileIds[i]);
+					window.location.href = "../salesdataupload/download?filePath="+fileData.uploadAddress+"&fileName="+fileData.fileName+"&fileId="+fileData.fileId;
+				}
 			}
-			window.location.href = "../salesdataupload/download?filePath="+fileData.uploadAddress+"&fileName="+fileData.fileName+"&fileId="+fileData.fileId;
 		}
 	}
 });