panlumeng před 3 roky
rodič
revize
031147edd5

+ 102 - 8
app/admin/controller/After.php

@@ -189,6 +189,8 @@ class After extends \app\BaseController
         if(empty($info)){
             return error_show(1005,"未找到售后数据");
         }
+        $info["addr_cn"]=GetAddr($info['addr_code']);
+        $info["addr_code"]=json_decode($info['addr_code'],true);
         $out =Db::name("order_out")->where(["outCode"=>$info['outCode']])->find();
         $info['out_num'] = isset($out['send_num'])?$out['send_num']:'';
         $customer = Db::name("customer_info")->where(["companyNo"=>$info['customer_code']])->find();
@@ -244,18 +246,22 @@ class After extends \app\BaseController
         }
         $wsm_code = isset($this->post['wsm_code']) && $this->post['wsm_code']!="" ? trim($this->post['wsm_code']):"";
         if($wsm_code==""){
-            return error_show(1005,"参数 wsm_code不能为空");
+                return error_show(1005,"参数 wsm_code不能为空");
         }
-        $wsm = Db::name("warehouse_info")->where(["wsm_code"=>$wsm_code])->find();
-        if(empty($wsm)){
-            return error_show(1005,"未找到仓库数据");
+        if($info['is_th']==0&&$info['order_type']==1) {
+            $wsm = Db::name("warehouse_info")->where(["wsm_code" => $wsm_code])->find();
+            if (empty($wsm)) {
+                return error_show(1005, "未找到仓库数据");
+            }
         }
         $contactor = isset($this->post['contactor']) && $this->post['contactor']!="" ? trim($this->post['contactor'])
             :"";
         $mobile = isset($this->post['mobile']) && $this->post['mobile']!="" ? trim($this->post['mobile']):"";
         $addr = isset($this->post['addr']) && $this->post['addr']!="" ? trim($this->post['addr']):"";
-        $addr_code = isset($this->post['addr_code']) && $this->post['addr_code']!="" ? trim($this->post['addr_code']):"";
-        if($info['is_th']==0 && $info['order_type']==2){
+        $addr_code = isset($this->post['addr_code']) && $this->post['addr_code']!=""&&!empty($this->post['addr_code']) ?
+            $this->post['addr_code']:"";
+        $remark = isset($this->post['remark']) && $this->post['remark']!="" ? trim($this->post['remark']):"";
+        if($info['is_th']==1 && $info['order_type']==2){
             if($contactor==''){
                 return error_show(1005,"参数 contactor 不能为空");
             }
@@ -268,11 +274,20 @@ class After extends \app\BaseController
             if($addr_code==''){
                 return error_show(1005,"参数 addr_code 不能为空");
             }
+
+        }
+        if($addr_code!==''&&is_array($addr_code)){
+            $addrs=[];
+            $addrs['provice_code'] = $addr_code[0];
+            $addrs['city_code'] = $addr_code[1];
+            $addrs['area_code'] = $addr_code[2];
+            $addr_code = json_encode($addrs);
         }
         Db::startTrans();
         try{
             $var=$info['status'];
             $info['status']=$info['order_type']==1?3:4;
+            $info['remark']=$remark;
             $info['updatetime']=date("Y-m-d H:i:s");
             $up =Db::name("order_return")->save($info);
             if($up){
@@ -303,7 +318,7 @@ class After extends \app\BaseController
                 }
             }
             Db::rollback();
-                return error_show(1004,"更新失败");
+           return error_show(1004,"更新失败");
         }catch (\Exception $e){
             Db::rollback();
             return error_show(1004,$e->getMessage());
@@ -432,7 +447,7 @@ class After extends \app\BaseController
             :"";
         $mobile = isset($this->post['mobile']) && $this->post['mobile']!="" ? trim($this->post['mobile']):"";
         $addr = isset($this->post['addr']) && $this->post['addr']!="" ? trim($this->post['addr']):"";
-        $addr_code = isset($this->post['addr_code']) && $this->post['addr_code']!="" ? trim($this->post['addr_code']):"";
+        $addr_code = isset($this->post['addr_code']) && $this->post['addr_code']!=""&&!empty($this->post['addr_code']) ? $this->post['addr_code']:"";
         $remark = isset($this->post['remark']) && $this->post['remark']!="" ? trim($this->post['remark']):"";
         if($isth==1){
             if($contactor==''){
@@ -444,9 +459,17 @@ class After extends \app\BaseController
             if($addr==''){
                 return error_show(1005,"参数 addr 不能为空");
             }
+          //  var_dump(isset($this->post['addr_code']) , $this->post['addr_code']!="",!empty($addr_code));
             if($addr_code==''){
                 return error_show(1005,"参数 addr_code 不能为空");
             }
+            if(is_array($addr_code)){
+                $addrs=[];
+                $addrs['provice_code'] = $addr_code[0];
+                $addrs['city_code'] = $addr_code[1];
+                $addrs['area_code'] = $addr_code[2];
+                $addr_code = json_encode($addrs);
+            }
         }
         Db::startTrans();
         try{
@@ -491,4 +514,75 @@ class After extends \app\BaseController
             return error_show(1004,$e->getMessage());
         }
     }
+
+    public function GetWsm(){
+        $bkcode = isset($this->post['returnCode']) && $this->post['returnCode']!="" ? trim($this->post['returnCode']):"";
+        if($bkcode==""){
+            return error_show(1005,"参数returnCode 不能为空");
+        }
+        $info = Db::name("order_return")->where(['returnCode'=>$bkcode])->find();
+        if(empty($info)){
+            return error_show(1005,"未找到售后数据");
+        }
+        $list=[];
+        if($info['is_th']==1){
+            if($info["order_type"]==1){
+                $out =Db::name("order_out")->where(["outCode"=>$info['outCode']])->find();
+                if(empty($out)){
+                    return error_show(1005,"未找到出库单数据");
+                }
+                $ware = Db::name("warehouse_info")->alias("a")->leftJoin("warehouse_addr b","a.wsm_code=b.wsm_code and b.status=1 and b.is_del=0")
+                    ->where(["a.status"=>1,"a.is_del"=>0,"a.supplierNo"=>$out['wsm_code']])->field("a.wsm_code,a.name,b.wsm_name,b.wsm_mobile,b.wsm_addr,b.addr_code")->find();
+                if(empty($ware)){
+                    return error_show(1005,"未找到仓库数据");
+                }
+                $temp['wsm_code']=isset($ware['wsm_code'])?$ware['wsm_code']:"";
+                $temp['wsm_name']=isset($ware['name'])?$ware['name']:"";
+                $temp['contactor'] = isset($ware['wsm_name'])?$ware['wsm_name']:"";
+                $temp['mobile'] =isset($ware['wsm_mobile'])?$ware['wsm_mobile']:"";
+                $temp['addr'] =isset($ware['wsm_addr'])?$ware['wsm_addr']:"";
+                $temp['addr_cn'] =GetAddr( $ware['addr_code']);
+                $temp['addr_code'] = isset($ware['addr_code'])?$ware['addr_code']:"";
+                $list[]=$temp;
+            }else {
+                $returninfo = Db::name("order_returninfo")->where(["returnCode" => $bkcode])->find();
+                if (empty($returninfo)) {
+                    return error_show(1005, "未找到供应商仓库数据");
+                }
+                $data = [];
+                $data['wsm_code'] = isset($returninfo['return_wsm']) && $returninfo['return_wsm'] != "-" ? $returninfo['return_wsm'] : "-";
+                $data['wsm_name'] = '供应商仓';
+                $data['supplier_name'] = '供应商';
+                $data['contactor'] = $returninfo['contactor'];
+                $data['mobile'] = $returninfo['mobile'];
+                $data['addr'] =  $returninfo['addr'];
+                $data['addr_cn'] =GetAddr( $returninfo['addr_code']);
+                $data['addr_code'] = $returninfo['addr_code'];
+                $list[] = $data;
+            }
+        }else{
+            $supplier = Db::name("supplier")->where(["is_platform"=>1,"status"=>1,"is_del"=>0])->column("code,name");
+            if(empty($supplier)){
+                return error_show(1005,"未找到供应商仓库数据");
+            }
+            foreach ($supplier as $value){
+                $temp=[];
+                $ware = Db::name("warehouse_info")->alias("a")->leftJoin("warehouse_addr b","a.wsm_code=b.wsm_code and b.status=1 and b.is_del=0")
+                    ->where(["a.wsm_type"=>1,"a.status"=>1,"a.is_del"=>0,"a.supplierNo"=>$value['code']])->field("a.wsm_code,a.name,b.wsm_name,b.wsm_mobile,b.wsm_addr,b.addr_code")->find();
+                if(empty($ware)){
+                    continue;
+                }
+                $temp['wsm_code']=isset($ware['wsm_code'])?$ware['wsm_code']:"";
+                $temp['wsm_name']=isset($ware['name'])?$ware['name']:"";
+                $temp['supplier_name']=$value['name'];
+                $temp['contactor'] = isset($ware['wsm_name'])?$ware['wsm_name']:"";
+                $temp['mobile'] =isset($ware['wsm_mobile'])?$ware['wsm_mobile']:"";
+                $temp['addr'] =isset($ware['wsm_addr'])?$ware['wsm_addr']:"";
+                $temp['addr_cn'] =GetAddr($ware['addr_code']);
+                $temp['addr_code'] = isset($ware['addr_code'])?$ware['addr_code']:"";
+                $list[]=$temp;
+            }
+        }
+        return app_show(0,"获取成功",$list);
+    }
 }

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 803 - 739
app/admin/controller/Sale.php


+ 21 - 11
app/admin/controller/Salezx.php

@@ -415,17 +415,17 @@ class Salezx extends \app\BaseController
             $der['updatetime'] = date("Y-m-d H:i:s");
             $datainfo = Db::name('order_out')->save($der);
             if($datainfo) {
-                    $send =Db::name("order_out")->where(["wsm_code"=>$der['wsm_code'],'orderCode'=>$der['orderCode']])->sum("send_num");
-                    $order['send_num']+= $send;
-                    $order['wsend_num']-=$send ;//($der['send_num'])?$der['wsend_num'] =="" ? $der['send']
-                    $order['send_status']=$order['send_num']==0 ? 1 :($order['wsend_num']==0?3:2);
-                    $order['status']=$order['send_num']==0 ? 2 :($order['wsend_num']==0?4:3);
-                    $order['updatetime'] = date("Y-m-d H:i:s");
-                    $si = Db::name('sale')->save($order);
-                    if($si==false){
-                        Db::rollback();
-                        return error_show(1003,"更新失败");
-                    }
+//                    $send =Db::name("order_out")->where(["wsm_code"=>$der['wsm_code'],'orderCode'=>$der['orderCode']])->sum("send_num");
+//                    $order['send_num']+= $der['send_num'];
+//                    $order['wsend_num']-=$der['send_num'] ;//($der['send_num'])?$der['wsend_num'] =="" ? $der['send']
+//                    $order['send_status']=$order['send_num']==0 ? 1 :($order['wsend_num']==0?3:2);
+//                    $order['status']=$order['send_num']==0 ? 2 :($order['wsend_num']==0?4:3);
+//                    $order['updatetime'] = date("Y-m-d H:i:s");
+//                    $si = Db::name('sale')->save($order);
+//                    if($si==false){
+//                        Db::rollback();
+//                        return error_show(1003,"更新失败");
+//                    }
                     $str = Db::name('good_stock')->where(['wsm_code' => $der['wsm_code'],'good_type_code'=>$order['good_code']])->find();
                     if ($str == false) {
                         Db::rollback();
@@ -576,6 +576,16 @@ class Salezx extends \app\BaseController
                     Db::rollback();
                     return error_show(1003,"创建失败");
                 }
+                $der['send_num']+= $receipt_quantity;
+                $der['wsend_num']-=$receipt_quantity;//($der['send_num'])?$der['wsend_num'] =="" ? $der['send']
+                $der['send_status']=$der['send_num']==0 ? 1 :($der['wsend_num']==0?3:2);
+                $der['status']=$der['send_num']==0 ? 2 :($der['wsend_num']==0?4:3);
+                $der['updatetime'] = date("Y-m-d H:i:s");
+                $si = Db::name('sale')->save($der);
+                if($si==false){
+                    Db::rollback();
+                    return error_show(1003,"创建失败");
+                }
                 Db::commit();
                 return error_show(0,"创建成功");
         }catch (\Exception $e) {

+ 1 - 0
app/admin/route/app.php

@@ -231,6 +231,7 @@ Route::rule('afterstatus','admin/After/status');
 Route::rule('afterfeed','admin/After/postfeed');
 Route::rule('afterpost','admin/After/addpost');
 Route::rule('aftergys','admin/After/GysFeed');
+Route::rule('afterwsm','admin/After/GetWsm');
 
 Route::rule('processolist','admin/Proorder/list');
 Route::rule('processowaitlist','admin/Proorder/waitlist');

Některé soubory nejsou zobrazeny, neboť je v těchto rozdílových datech změněno mnoho souborů