Explorar el Código

dpd出库被限制 然后boss允许出库

lvhao hace 3 días
padre
commit
d00b58d21b

+ 15 - 2
core/CoreApp/controllers/Boss.php

@@ -89,6 +89,8 @@ class Boss extends Start_Controller
 			$this->_qt();
 		}else if($arg == 'dycs'){
 			$this->_dycs();
+		}else if($arg =='yxdpdck'){
+			$this->_yxDPDchuku();
 		} else {
 			$this->_index();
 		}
@@ -213,10 +215,10 @@ class Boss extends Start_Controller
 
 
 			// 78 dpd英国 和 79dpd欧盟
-			if(in_array($y['express'],[78,79])){
+			if(in_array($y['express'],[78,79,84])){
 				$r = $this->check->checkOverdue($y['name'],$y['number'],$y['address']);
 				if(!$r){
-					echo json_encode(array('msg'=>'同一个客户3天内发货超过2包,不可出库!请联系店员做申报信息修改!','success'=>false));exit;
+					echo json_encode(array('msg'=>'同一个客户3天内发货超过2包,不可出库!是否取消此单的出库限制!','success'=>false,'is_able'=>1));exit;
 				}
 			}
 
@@ -1890,4 +1892,15 @@ class Boss extends Start_Controller
 		echo json_encode(array('msg' => '修改成功', 'success' => true));
 		exit;
 	}
+
+	public function _yxDPDchuku(){
+		$params = $this->input->get(NULL, TRUE);
+		$y = $this->logic_order->getInfo("waybill = '".$params['order']."'","*");
+		if(empty($y)){
+			echo json_encode(array('msg' => '请核对运单号是否正确', 'success' => false));
+		}
+		$this->check->allowOverdue($y['name'],$y['number'],$y['address']);
+		echo json_encode(array('msg' => '已成功提交', 'success' => true));
+		exit;
+	}
 }

+ 20 - 2
core/CoreApp/models/Model_check.php

@@ -15,7 +15,7 @@ class Model_check extends Lin_Model
 			return false;
 		}
 		$limit_time = time() - 72*60*60;
-		$info =  $this->find("(addtime >=  ".$limit_time.") and ((check_name = '".$check_name."') or (check_address like '%".$check_address."%'))","*",'addtime DESC');	
+		$info =  $this->find("(status = 1)   and  (addtime >=  ".$limit_time.") and ((check_name = '".$check_name."') or (check_address like '%".$check_address."%'))","*",'addtime DESC');	
 
 		if(empty($info)){
 
@@ -35,6 +35,24 @@ class Model_check extends Lin_Model
 		return true;
 	}
 
+	public function allowOverdue($check_name,$number,$check_address){
+		$check_name = trim($check_name);
+		$check_address = trim($check_address);
+		if(empty($check_name) || empty($check_address)){
+			return false;
+		}
+		$limit_time = time() - 72*60*60;
+		$info =  $this->find("(status = 1)   and  (addtime >=  ".$limit_time.") and ((check_name = '".$check_name."') or (check_address like '%".$check_address."%'))","*",'addtime DESC');	
+		if(empty($info)){
+			return true;
+		}
+		if($info['number'] == $number){
+			return true;
+		}
+		$this->save(['status'=>0],$info['id']);
+		return true;
+	}
+
 	public function checkOverduetest($check_name,$number,$check_address){
 		$check_name = trim($check_name);
 		$check_address = trim($check_address);
@@ -42,7 +60,7 @@ class Model_check extends Lin_Model
 			return false;
 		}
 		$limit_time = time() - 72*60*60;
-		$info =  $this->find("(addtime >=  ".$limit_time.") and ((check_name = '".$check_name."') or (check_address like '%".$check_address."%'))","*",'addtime DESC');	
+		$info =  $this->find("(status = 1)   and  (addtime >=  ".$limit_time.") and ((check_name = '".$check_name."') or (check_address like '%".$check_address."%'))","*",'addtime DESC');	
 
 		if(empty($info)){
 

+ 38 - 3
template/erp/js/index.js

@@ -2635,14 +2635,49 @@ var f = "";
 				$(".express p:eq(1)").html("<font class='boosfh'>确 定</font>");
                 $(".express").show();
             } else {
-               $(".express p:eq(0)").html(a.msg);
-				$(".express p:eq(1)").html("<font class='esc'>确 定</font>");
-                $(".express").show();
+				if(a.hasOwnProperty('is_able') && a.is_able == 1){
+					layx.confirm('提示',a.msg,null,{
+                        buttons:[
+                            {
+                                label:'确定',
+                                callback:function(id, button, event){
+									layx.destroy(id);
+									yxDPDchuku(f);
+                                }
+                            },{
+								label:'取消',
+								callback:function(id, button, event){
+                                    layx.destroy(id);
+                                }
+							}
+                        ],dialogIcon:'error',shadable:0.6
+                    });
+				}else{
+					$(".express p:eq(0)").html(a.msg);
+					$(".express p:eq(1)").html("<font class='esc'>确 定</font>");
+					$(".express").show();
+				}
+              
             }
         }
         });
 	}
 });
+/**
+ * 允许dpd出库
+ */
+function yxDPDchuku(f){
+	layx.load('loadId','处理中,请稍后');
+	$.get("/boss/yxdpdck",f,function(a){
+		layx.destroy('loadId');
+		if(a.success){
+			layx.msg('操作成功!',{dialogIcon:'success'});
+		}else{
+			layx.msg(a.msg,{dialogIcon:'success'});
+		}
+		
+	})
+}
 $(".express").on('click',".boosfh",function() {
 window.location.reload();	
 });