Pārlūkot izejas kodu

重新发起上线

wufeng 2 gadi atpakaļ
vecāks
revīzija
83d1597a16

+ 13 - 0
app/youzan/controller/Index.php

@@ -45,6 +45,19 @@ class Index extends Base
         else return error_show(1005, $val->getError());
     }
 
+    //有赞商品重新上线(上线失败的、下线后又重新上线的)
+    public function goodupOnlineAgain(){
+        $param = $this->request->only(['token','platform_youzan_id'],'post','trim');
+        $val = Validate::rule([
+            'platform_youzan_id|商品上线记录ID' => 'require|number|gt:0',
+            'token' => 'require',
+        ]);
+
+        if ($val->check($param)) return Goodup::goodupOnlineAgain($param['platform_youzan_id'], $param['token']);
+        else return error_show(1005, $val->getError());
+
+    }
+
     //商品上线详情
     public function getYzGoodupInfo()
     {

+ 31 - 1
app/youzan/logic/Goodup.php

@@ -223,6 +223,36 @@ class Goodup
     }
 
 
+    //有赞商品重新上线(上线失败的、下线后又重新上线的)
+    public static function goodupOnlineAgain(int $platform_youzan_id = 0, string $token = '')
+    {
+
+        $db = new PlatformYouzan();
+
+        $rs = $db
+            ->field('id')
+            ->where(['id' => $platform_youzan_id, 'is_del' => $db::$del_normal])
+            ->whereIn('exam_status', [$db::$exam_status_7, $db::$exam_status_8])
+            ->findOrEmpty();
+
+        if ($rs->isEmpty()) return error_show(1005, '该商品上线记录不存在或不允许重新上线');
+
+        $userinfo = GetUserInfo($token);
+
+        //更新
+        $res = $db->where('id', $platform_youzan_id)
+            ->save([
+                'exam_status' => $db::$exam_status_0,
+                'updaterid' => isset($userinfo['data']['id']) ? $userinfo['data']['id'] : 0,
+                'updater' => isset($userinfo['data']['nickname']) ? $userinfo['data']['nickname'] : '',
+                'updatetime' => date('Y-m-d H:i:s'),
+            ]);
+
+        return $res ? app_show(0, '操作成功') : error_show(1005, '重新发起上线失败');
+
+    }
+
+
     //商品上线详情
     public static function getYzGoodupInfo(int $platform_youzan_id = 0)
     {
@@ -235,7 +265,7 @@ class Goodup
 
         $good_data = Db::name("good")
             ->withoutField('createrid,creater,is_del,addtime,updatetime')
-            ->where(["is_del" => 0,"spuCode" => $data['spuCode']])
+            ->where(["is_del" => 0, "spuCode" => $data['spuCode']])
             ->find();
         if ($good_data == false) return error_show(1004, "未找到商品数据");
 

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

@@ -6,4 +6,5 @@ route::rule('push', 'youzan/Push/GetPush');
 route::rule('yz_cat_list', 'youzan/Index/getYzCatList');//有赞类目列表
 route::rule('yz_check_exam_status', 'youzan/Index/checkExamstatus');//审核并将商品推送到有赞平台
 route::rule('yz_goodup_info', 'youzan/Index/getYzGoodupInfo');//商品上线详情
+route::rule('yz_goodup_again', 'youzan/Index/goodupOnlineAgain');//商品再次上线
 route::rule('yz_goodoff', 'youzan/Index/youzanOffline');//将商品从有赞平台下线