shawenguan 1 an în urmă
părinte
comite
6e88822d85

+ 29 - 3
Scripts/wubian/wubianFirstGrab.js

@@ -89,11 +89,12 @@ async function tryFirstGrab() {
     let userHashId = getUserHashId();
     let artData = await getWillFirstArtData();
     if (artData) {
-        let retData = await doCreateFirstOrder(userHashId, artData.artId, 1, artData.price);
-        if (retData.code == 200) {
+        // let retPreOrderInfo = await doConfirmArtInfo(artData.artId);
+        let retOrderData = await doCreateFirstOrder(userHashId, artData.artId, 1, artData.price);
+        if (retOrderData.code == 200) {
             magicJS.notification.appendNotifyInfo(`🎉抢购首发产品[${artData.title}]成功`);
         } else {
-            magicJS.logger.appendNotifyInfo(`❌抢购首发产品[${artData.title}]失败,原因:${retData.msg}`);
+            magicJS.logger.appendNotifyInfo(`❌抢购首发产品[${artData.title}]失败,原因:${retOrderData.msg}`);
         }
     } else {
         magicJS.logger.error(`不存在匹配的首发产品`);
@@ -202,6 +203,31 @@ async function queryFirstArtList(type, page) {
     return result;
 }
 
+async function doConfirmArtInfo(artId) {
+    const url = `https://api.wubian.pro/vmf/app/market/confirmArtInfo`;
+    const reqData = {
+        artId: artId,
+    };
+    let options = {
+        url: url,
+        headers: gCommonHeaders,
+        body: JSON.stringify(reqData),
+    };
+    let result = await magicJS.http.post(options).then(response => {
+        try {
+            let rspData = response.body;
+            magicJS.logger.info(`rspData=${JSON.stringify(rspData)}`);
+            return rspData;
+        } catch (e) {
+            magicJS.logger.error(e);
+        }
+    }).catch(err => {
+        const msg = `请求首发下单确认信息异常\n${JSON.stringify(err)}`;
+        magicJS.logger.error(msg);
+    });
+    return result;
+}
+
 async function doCreateFirstOrder(userHashId, artHashId, num = 1, price = 0) {
     const url = `https://api.wubian.pro/vmf/app/order/createFirstOrder?token=${userHashId}`;
     const reqData = {

+ 6 - 2
Scripts/wubian/wubianHelper.js

@@ -108,6 +108,9 @@ function checkHandleRequest() {
                 // 首发产品详情,市场产品详情
                 handleFirstArtInfo();
                 break;
+            case '/vmf/app/market/confirmArtInfo':
+                // 首发产品购买信息确认页面
+                break;
             case '/vmf/app/order/createFirstOrder':
                 // 创建发售订单
                 break;
@@ -116,10 +119,11 @@ function checkHandleRequest() {
             case '/vmf/app/article/category':
                 break;
             case '/vmf/app/article/listByCategory':
-                // 公告
+                // 公告列表
                 handleNoticeList();
                 break;
             case '/vmf/app/article/selectArticleByType':
+                // 产品相关的历史公告
                 break;
             case '/vmf/app/index/recommend':
                 // 推荐
@@ -606,7 +610,7 @@ function handleFirstArtInfo() {
     let artInfo = rspData.data.artInfo;
     let authorInfo = rspData.data.authorInfo;
     let payInfo = rspData.data.payInfo;
-
+    // 强制开启购买
     artInfo.status = 1;
     // 批量强开
     if (payInfo.enableConsignment == 0) {

+ 32 - 0
Scripts/wubian/wubianNotice.js

@@ -189,6 +189,38 @@ async function getNoticeDetail(hashId) {
     return result;
 }
 
+/**
+ * 查看产品的历史公告
+ * @param {*} hashId
+ * @returns
+ */
+async function doSelectArticleByType(queryHashId, queryType, page = 1) {
+    const url = `https://api.wubian.pro/vmf/app/article/selectArticleByType`;
+    const reqData = {
+        queryHashId: queryHashId,
+        queryType: queryType,
+        page: page,
+    };
+    let options = {
+        url: url,
+        headers: gCommonHeaders,
+        body: JSON.stringify(reqData),
+    };
+    let result = await magicJS.http.post(options).then(response => {
+        try {
+            let rspData = response.body;
+            magicJS.logger.info(`rspData=${JSON.stringify(rspData)}`);
+            return rspData;
+        } catch (e) {
+            magicJS.logger.error(e);
+        }
+    }).catch(err => {
+        const msg = `请求公告内容异常\n${JSON.stringify(err)}`;
+        magicJS.logger.error(msg);
+    });
+    return result;
+}
+
 Main().catch((e) => magicJS.logger.log(`-\n ${e}`)).finally(() => magicJS.done());