daShangDao_miniProgram/unpackage/dist/dev/mp-weixin/pkgManage/common/vendor.js
2026-06-15 16:37:57 +08:00

1046 lines
36 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["pkgManage/common/vendor"],{
/***/ 298:
/*!*********************************************!*\
!*** D:/project/zhizhu/utils/clone-tool.js ***!
\*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.adjustPrice = adjustPrice;
exports.clearNewItemIds = clearNewItemIds;
exports.dateToTimestamp = dateToTimestamp;
exports.formatLogMessage = formatLogMessage;
exports.generateDeviceId = generateDeviceId;
exports.getNewItemIds = getNewItemIds;
exports.loadFromStorage = loadFromStorage;
exports.saveToStorage = saveToStorage;
exports.validateDate = validateDate;
var _cryptoJs = _interopRequireDefault(__webpack_require__(/*! crypto-js */ 167));
/**
* 商品克隆工具辅助函数
*/
/**
* 生成设备ID
* 基于设备信息生成唯一标识符
*/
function generateDeviceId() {
try {
// 获取系统信息
var systemInfo = uni.getSystemInfoSync();
// 组合设备信息
var deviceInfo = [systemInfo.deviceId || '', systemInfo.deviceBrand || '', systemInfo.deviceModel || '', systemInfo.system || '', systemInfo.platform || '', systemInfo.SDKVersion || ''].filter(function (item) {
return item;
}).join('|');
// 使用MD5生成设备ID
if (deviceInfo) {
return _cryptoJs.default.MD5(deviceInfo).toString().toUpperCase();
} else {
return 'UNKNOWN_DEVICE_' + Math.random().toString(36).substring(2, 10);
}
} catch (e) {
console.error('生成设备ID失败:', e);
return 'ERROR_DEVICE_' + Math.random().toString(36).substring(2, 10);
}
}
/**
* 验证日期格式 (YYYYMMDD)
* @param {string} dateStr - 日期字符串
* @returns {boolean} - 是否有效
*/
function validateDate(dateStr) {
if (!dateStr || dateStr.length !== 8) {
return false;
}
try {
var year = parseInt(dateStr.substring(0, 4));
var month = parseInt(dateStr.substring(4, 6));
var day = parseInt(dateStr.substring(6, 8));
if (year < 1900 || year > 2100 || month < 1 || month > 12 || day < 1 || day > 31) {
return false;
}
// 检查特定月份的天数
if (month === 2) {
// 闰年检查
var isLeapYear = year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
if (day > (isLeapYear ? 29 : 28)) {
return false;
}
} else if ([4, 6, 9, 11].includes(month) && day > 30) {
return false;
}
return true;
} catch (e) {
return false;
}
}
/**
* 日期字符串转时间戳
* @param {string} dateStr - 日期字符串 (YYYYMMDD)
* @param {boolean} endOfDay - 是否为当天结束时间
* @returns {number} - 时间戳(秒)
*/
function dateToTimestamp(dateStr) {
var endOfDay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
if (!dateStr || dateStr.length !== 8) {
throw new Error('日期格式错误必须是8位数字(YYYYMMDD)');
}
var year = parseInt(dateStr.substring(0, 4));
var month = parseInt(dateStr.substring(4, 6)) - 1; // 月份从0开始
var day = parseInt(dateStr.substring(6, 8));
var date;
if (endOfDay) {
date = new Date(year, month, day, 23, 59, 59);
} else {
date = new Date(year, month, day, 0, 0, 0);
}
return Math.floor(date.getTime() / 1000);
}
/**
* 调整价格
* @param {number|string} originalPrice - 原始价格
* @param {number} configType - 调整类型 (1:折扣, 2:加减值, 3:指定金额)
* @param {number} value - 调整值
* @returns {string} - 调整后的价格字符串(保留2位小数)
*/
function adjustPrice(originalPrice, configType, value) {
try {
var price = parseFloat(originalPrice);
if (isNaN(price)) {
return originalPrice.toString();
}
switch (configType) {
case 1:
// 折扣
price *= value / 100;
break;
case 2:
// 加减值
price += value;
break;
case 3:
// 指定金额
price = value;
break;
}
// 确保价格为正数
price = Math.max(0.01, price);
return price.toFixed(2);
} catch (e) {
console.error('价格调整失败:', e);
return originalPrice.toString();
}
}
/**
* 格式化日志消息
* @param {string} message - 日志消息
* @returns {string} - 格式化后的日志消息
*/
function formatLogMessage(message) {
var timestamp = new Date().toLocaleString('zh-CN', {
year: 'numeric',
month: '2-digit',
day: '2-digit',
hour: '2-digit',
minute: '2-digit',
second: '2-digit'
});
return "[".concat(timestamp, "] ").concat(message);
}
/**
* 保存数据到本地存储
* @param {string} key - 存储键名
* @param {any} data - 要存储的数据
* @returns {boolean} - 是否成功
*/
function saveToStorage(key, data) {
try {
uni.setStorageSync(key, JSON.stringify(data));
return true;
} catch (e) {
console.error("\u4FDD\u5B58\u6570\u636E\u5931\u8D25 (".concat(key, "):"), e);
return false;
}
}
/**
* 从本地存储加载数据
* @param {string} key - 存储键名
* @param {any} defaultValue - 默认值
* @returns {any} - 加载的数据或默认值
*/
function loadFromStorage(key) {
var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
try {
var value = uni.getStorageSync(key);
if (value) {
return JSON.parse(value);
}
return defaultValue;
} catch (e) {
console.error("\u52A0\u8F7D\u6570\u636E\u5931\u8D25 (".concat(key, "):"), e);
return defaultValue;
}
}
/**
* 获取新商品ID列表
* @returns {Array} - 新商品ID列表
*/
function getNewItemIds() {
try {
var newIds = uni.getStorageSync('kongfz_new_ids') || [];
return Array.isArray(newIds) ? newIds : [];
} catch (e) {
console.error('获取新商品ID列表失败:', e);
return [];
}
}
/**
* 清空新商品ID列表
* @returns {boolean} - 是否成功
*/
function clearNewItemIds() {
try {
uni.removeStorageSync('kongfz_new_ids');
return true;
} catch (e) {
console.error('清空新商品ID列表失败:', e);
return false;
}
}
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
/***/ }),
/***/ 299:
/*!***************************************!*\
!*** D:/project/zhizhu/api/kongfz.js ***!
\***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.batchUpdatePddPlatformId = batchUpdatePddPlatformId;
exports.deleteItem = deleteItem;
exports.fetchItems = fetchItems;
exports.getItemTplFields = getItemTplFields;
exports.login = login;
exports.submitItemForm = submitItemForm;
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
/**
* 孔夫子旧书网API服务
*/
/**
* 登录孔夫子旧书网
* @param {string} username - 用户名
* @param {string} password - 密码
* @returns {Promise<{success: boolean, token: string, message: string}>} - 登录结果
*/
function login(username, password) {
return new Promise(function (resolve, reject) {
if (!username || !password) {
resolve({
success: false,
message: '请输入用户名和密码'
});
return;
}
// 构建请求参数
var url = 'https://login.kongfz.com/Pc/Login/account';
var data = {
loginName: username,
loginPass: password,
autoLogin: '0',
returnUrl: 'http://user.kongfz.com/'
};
// 发送请求
uni.request({
url: url,
method: 'POST',
data: data,
header: {
'Content-Type': 'application/x-www-form-urlencoded'
// 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
},
success: function success(res) {
console.log("登录...", res);
// 检查登录是否成功
if (res.data && res.data.indexOf("window.location.href='https://login.kongfz.cn/Pc/Session/rsync") !== -1) {
// 提取PHPSESSID
var cookies = res.cookies;
var phpsessid = '';
if (cookies && cookies.length > 0) {
var _iterator = _createForOfIteratorHelper(cookies),
_step;
try {
for (_iterator.s(); !(_step = _iterator.n()).done;) {
var cookie = _step.value;
if (cookie.indexOf('PHPSESSID=') !== -1) {
phpsessid = cookie.split('PHPSESSID=')[1].split(';')[0];
break;
}
}
} catch (err) {
_iterator.e(err);
} finally {
_iterator.f();
}
}
if (phpsessid) {
resolve({
success: true,
token: phpsessid,
message: '登录成功'
});
} else {
resolve({
success: false,
message: '登录失败: 未找到PHPSESSID'
});
}
} else {
// 尝试解析错误信息
try {
var _data = JSON.parse(res.data);
if (_data.errCode === 1001) {
resolve({
success: false,
message: '登录失败: 账号或密码错误'
});
} else if (_data.errInfo) {
resolve({
success: false,
message: "\u767B\u5F55\u5931\u8D25: ".concat(_data.errInfo)
});
} else {
resolve({
success: false,
message: '登录失败: 未知错误'
});
}
} catch (e) {
resolve({
success: false,
message: '登录失败: 响应不包含成功跳转信息'
});
}
}
},
fail: function fail(err) {
reject(new Error("\u767B\u5F55\u8BF7\u6C42\u5931\u8D25: ".concat(err.errMsg)));
}
});
});
}
/**
* 获取商品列表
* @param {string} token - 登录令牌
* @param {Object} params - 查询参数
* @param {function} onProgress - 进度回调
* @returns {Promise<Array>} - 商品列表
*/
function fetchItems(token) {
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var onProgress = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
return new Promise(function (resolve, reject) {
if (!token) {
reject(new Error('请先登录获取Token'));
return;
}
// const token = 'ebb26189289d0dc068f9aac748881bccf890e694';
var url = 'https://seller.kongfz.com/pc-gw/book-manage-service/client/pc/goods/unSold/list';
var headers = {
'Cookie': "PHPSESSID=".concat(token)
// 'Cookie': 'PHPSESSID=ebb26189289d0dc068f9aac748881bccf890e694'
// 'User-Agent' 头在浏览器环境中无法设置,会被拒绝
// 'Content-Type': 'application/json'
};
var page = 1;
var size = 50;
var allItemIds = [];
var fetchPage = function fetchPage() {
// 准备请求体
var requestBody = {
"requestType": "onSale",
// 标识 出售中
"isItemSnEqual": "0",
"page": page,
"size": size
};
// 添加可选参数
if (params.itemSn) requestBody.itemSn = params.itemSn;
if (params.priceMin) requestBody.priceMin = params.priceMin;
if (params.priceMax) requestBody.priceMax = params.priceMax;
if (params.startCreateTime) requestBody.startCreateTime = params.startCreateTime;
if (params.endCreateTime) requestBody.endCreateTime = params.endCreateTime;
// 调用进度回调
if (onProgress) {
onProgress("\u6B63\u5728\u83B7\u53D6\u7B2C ".concat(page, " \u9875\u6570\u636E..."));
// 添加请求参数日志
if (page === 1) {
onProgress("\u8BF7\u6C42\u53C2\u6570: ".concat(JSON.stringify(requestBody)));
}
}
console.log("请求参数", requestBody);
// 发送请求
uni.request({
url: url,
method: 'POST',
data: requestBody,
header: headers,
success: function success(res) {
if (res.statusCode !== 200) {
console.error('API 失败响应:', res);
reject(new Error("API\u8FD4\u56DE\u9519\u8BEF: HTTP ".concat(res.statusCode)));
return;
}
var data = res.data;
if (!data.status) {
console.error('API 失败响应:', data);
reject(new Error("API\u8FD4\u56DE\u9519\u8BEF: ".concat(data.errMessage || '未知错误')));
return;
}
// 获取商品列表
var result = data.result || {};
var productInfo = result.productInfoPageResult || {};
var items = productInfo.list || [];
var pager = productInfo.pager || {};
// 提取商品ID
var _iterator2 = _createForOfIteratorHelper(items),
_step2;
try {
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
var item = _step2.value;
var itemId = item.itemId;
if (itemId) {
allItemIds.push({
id: itemId,
status: 'wait'
});
}
}
// 更新状态
} catch (err) {
_iterator2.e(err);
} finally {
_iterator2.f();
}
var totalPages = pager.pages || 0;
var totalCount = pager.count || 0;
if (onProgress) {
onProgress("\u83B7\u53D6\u5230 ".concat(items.length, " \u4E2A\u5546\u54C1 (\u7B2C ").concat(page, "/").concat(totalPages, " \u9875)"));
// 添加更详细的商品信息
if (items.length > 0) {
var firstItem = items[0];
onProgress("\u5546\u54C1\u793A\u4F8B: ID=".concat(firstItem.itemId, ", \u6807\u9898=").concat(firstItem.title || '无标题', ", \u4EF7\u683C=").concat(firstItem.price || '未知'));
}
// 添加总数信息
onProgress("\u5F53\u524D\u5DF2\u83B7\u53D6: ".concat(allItemIds.length, "/").concat(totalCount, " \u4E2A\u5546\u54C1"));
}
// 检查是否还有下一页
if (page >= totalPages) {
if (onProgress) {
onProgress("\u62C9\u53D6\u5B8C\u6210\uFF0C\u5171\u83B7\u53D6 ".concat(allItemIds.length, " \u4E2A\u5546\u54C1"));
if (allItemIds.length === 0) {
onProgress('未找到符合条件的商品,请检查筛选条件');
} else {
onProgress("\u5546\u54C1ID\u793A\u4F8B: ".concat(allItemIds.slice(0, 3).map(function (item) {
return item.id;
}).join(', ')).concat(allItemIds.length > 3 ? '...' : ''));
}
}
resolve(allItemIds);
} else {
page++;
// 延迟1秒后获取下一页
if (onProgress) {
onProgress("\u7B49\u5F851\u79D2\u540E\u83B7\u53D6\u4E0B\u4E00\u9875...");
}
setTimeout(fetchPage, 1000);
}
},
fail: function fail(err) {
var errorMsg = "\u62C9\u53D6\u5546\u54C1\u5931\u8D25: ".concat(err.errMsg);
if (onProgress) {
onProgress(errorMsg);
onProgress('请检查网络连接是否正常');
onProgress('请确认登录状态是否有效');
}
reject(new Error(errorMsg));
}
});
};
// 开始获取第一页
fetchPage();
});
}
/**
* 获取商品模板字段
* @param {string} token - 登录令牌
* @param {string} itemId - 商品ID
* @returns {Promise<Object>} - 商品模板字段
*/
function getItemTplFields(token, itemId) {
return new Promise(function (resolve, reject) {
if (!token) {
reject(new Error('请先登录获取Token'));
return;
}
var url = "https://seller.kongfz.com/pc/itemInfo/getTplFields?itemId=".concat(itemId, "&isClone=1&v=").concat(Math.floor(Date.now() / 1000));
uni.request({
url: url,
method: 'GET',
header: {
'Cookie': "PHPSESSID=".concat(token),
// 'User-Agent' 头在浏览器环境中无法设置,会被拒绝
'Referer': 'https://seller.kongfz.com/',
'Origin': 'https://seller.kongfz.com'
},
success: function success(res) {
if (res.statusCode !== 200) {
reject(new Error("HTTP\u9519\u8BEF: ".concat(res.statusCode)));
return;
}
var data = res.data;
if (data.status === 1) {
resolve(data);
} else {
reject(new Error("API\u8FD4\u56DE\u9519\u8BEF: ".concat(data.message || '未知错误')));
}
},
fail: function fail(err) {
reject(new Error("\u8BF7\u6C42\u5931\u8D25: ".concat(err.errMsg)));
}
});
});
}
/**
* 提交商品表单
* @param {string} token - 登录令牌
* @param {Object} itemData - 商品数据
* @param {Object} priceConfig - 价格配置
* @returns {Promise<boolean>} - 是否成功
*/
function submitItemForm(token, itemData, priceConfig) {
return new Promise(function (resolve, reject) {
if (!token) {
reject(new Error('请先登录获取Token'));
return;
}
// 准备表单数据
var formData = {
"pageType": "clone"
};
// 添加图书基本信息bookSection
var bookSection = itemData.data && itemData.data.bookSection || [];
var _iterator3 = _createForOfIteratorHelper(bookSection),
_step3;
try {
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
var field = _step3.value;
var key = field.key;
var value = field.value;
// 处理嵌套字段(如出版时间)
if (field.group) {
var _iterator7 = _createForOfIteratorHelper(field.group),
_step7;
try {
for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
var subField = _step7.value;
var subKey = subField.key;
var subValue = subField.value;
if (subKey && subValue !== null && subValue !== undefined) {
formData[subKey] = String(subValue);
}
// 处理options中的嵌套
if (subField.options) {
var selectedValue = subField.value; // 获取当前选中的值
var _iterator8 = _createForOfIteratorHelper(subField.options),
_step8;
try {
for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {
var option = _step8.value;
var optionValue = option.value;
// 如果选项是当前选中的或者选项中有group字段则处理其中的字段
if (String(optionValue) === String(selectedValue) || option.group) {
if (option.group) {
var _iterator9 = _createForOfIteratorHelper(option.group),
_step9;
try {
for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {
var optionField = _step9.value;
var optionKey = optionField.key;
var _optionValue = optionField.value;
if (optionKey && _optionValue !== null && _optionValue !== undefined) {
formData[optionKey] = String(_optionValue);
}
// 处理更深层的嵌套
if (optionField.group) {
var _iterator10 = _createForOfIteratorHelper(optionField.group),
_step10;
try {
for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) {
var deepField = _step10.value;
var deepKey = deepField.key;
var deepValue = deepField.value;
if (deepKey && deepValue !== null && deepValue !== undefined) {
formData[deepKey] = String(deepValue);
}
}
} catch (err) {
_iterator10.e(err);
} finally {
_iterator10.f();
}
}
}
} catch (err) {
_iterator9.e(err);
} finally {
_iterator9.f();
}
}
}
}
} catch (err) {
_iterator8.e(err);
} finally {
_iterator8.f();
}
}
// 处理更深层的嵌套(如年月)
if (subField.group) {
var _iterator11 = _createForOfIteratorHelper(subField.group),
_step11;
try {
for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) {
var _deepField = _step11.value;
var _deepKey = _deepField.key;
var _deepValue = _deepField.value;
if (_deepKey && _deepValue !== null && _deepValue !== undefined) {
formData[_deepKey] = String(_deepValue);
}
}
} catch (err) {
_iterator11.e(err);
} finally {
_iterator11.f();
}
}
}
} catch (err) {
_iterator7.e(err);
} finally {
_iterator7.f();
}
}
// 添加顶层字段
if (key && value !== null && value !== undefined) {
formData[key] = String(value);
}
// 特殊处理 yearsGroup 字段,确保处理其 options 中的字段
if (key === 'yearsGroup' && field.options) {
var _selectedValue = value; // 获取当前选中的值
var _iterator12 = _createForOfIteratorHelper(field.options),
_step12;
try {
for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) {
var _option = _step12.value;
var _optionValue2 = _option.value;
// 如果选项是当前选中的,处理其中的字段
if (String(_optionValue2) === String(_selectedValue) && _option.group) {
var _iterator13 = _createForOfIteratorHelper(_option.group),
_step13;
try {
for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) {
var _optionField = _step13.value;
var _optionKey = _optionField.key;
var _optionValue3 = _optionField.value;
if (_optionKey && _optionValue3 !== null && _optionValue3 !== undefined) {
formData[_optionKey] = String(_optionValue3);
}
// 处理出版时间的年月字段
if (_optionKey === 'pubDate' && _optionField.group) {
var _iterator14 = _createForOfIteratorHelper(_optionField.group),
_step14;
try {
for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) {
var dateField = _step14.value;
var dateKey = dateField.key;
var dateValue = dateField.value;
if (dateKey && dateValue !== null && dateValue !== undefined) {
formData[dateKey] = String(dateValue);
}
}
} catch (err) {
_iterator14.e(err);
} finally {
_iterator14.f();
}
}
}
} catch (err) {
_iterator13.e(err);
} finally {
_iterator13.f();
}
}
}
} catch (err) {
_iterator12.e(err);
} finally {
_iterator12.f();
}
}
}
// 添加商品基本信息
} catch (err) {
_iterator3.e(err);
} finally {
_iterator3.f();
}
var goodsSection = itemData.data && itemData.data.goodsSection || [];
var _iterator4 = _createForOfIteratorHelper(goodsSection),
_step4;
try {
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
var _field = _step4.value;
var _key = _field.key;
var _value = _field.value;
// 跳过 images 字段,因为我们会单独处理图片
if (_key === 'images') {
var images = _field.images || [];
for (var i = 0; i < images.length; i++) {
formData["images[".concat(i, "][imgId]")] = String(images[i].imgId || '');
formData["images[".concat(i, "][imgType]")] = String(images[i].imgType || '');
formData["images[".concat(i, "][imgDesc]")] = '';
formData["images[".concat(i, "][isMain]")] = String(images[i].isMain || '');
formData["images[".concat(i, "][imgUrl]")] = images[i].imgUrl || '';
}
continue;
}
// 处理带有 group 的字段(例如尺寸 sizeLength/sizeWidth/sizeHeight
if (_field.group && Array.isArray(_field.group)) {
var _iterator15 = _createForOfIteratorHelper(_field.group),
_step15;
try {
for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) {
var _subField = _step15.value;
var _subKey = _subField.key;
var _subValue = _subField.value;
if (_subKey && _subValue !== null && _subValue !== undefined) {
formData[_subKey] = String(_subValue);
}
}
} catch (err) {
_iterator15.e(err);
} finally {
_iterator15.f();
}
}
if (_key && _value !== null && _value !== undefined) {
// 特殊处理价格字段
if (_key === 'price') {
try {
var price = parseFloat(_value);
// 应用价格调整
if (priceConfig.configType === 1) {
// 折扣
price *= priceConfig.value / 100;
} else if (priceConfig.configType === 2) {
// 加减值
price += priceConfig.value; // priceConfig.value已经包含了正负号
} else if (priceConfig.configType === 3) {
// 直接赋值
price = priceConfig.value;
}
formData[_key] = price.toFixed(2);
} catch (e) {
formData[_key] = String(_value);
}
} else {
// 添加到表单数据
formData[_key] = String(_value);
}
}
}
// 添加物流信息
} catch (err) {
_iterator4.e(err);
} finally {
_iterator4.f();
}
var shippingSection = itemData.data && itemData.data.shippingSection || [];
var _iterator5 = _createForOfIteratorHelper(shippingSection),
_step5;
try {
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
var _field2 = _step5.value;
var _key2 = _field2.key;
var _value2 = _field2.value;
if (_key2 && _value2 !== null && _value2 !== undefined) {
formData[_key2] = String(_value2);
}
}
// 添加交付信息
} catch (err) {
_iterator5.e(err);
} finally {
_iterator5.f();
}
var deliverSection = itemData.data && itemData.data.deliverSection || [];
var _iterator6 = _createForOfIteratorHelper(deliverSection),
_step6;
try {
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
var _field3 = _step6.value;
var _key3 = _field3.key;
var _value3 = _field3.value;
if (_key3 && _value3 !== null && _value3 !== undefined) {
formData[_key3] = String(_value3);
}
}
// 添加分类ID
} catch (err) {
_iterator6.e(err);
} finally {
_iterator6.f();
}
var categorySection = itemData.data && itemData.data.categorySection || {};
if (categorySection.value !== null && categorySection.value !== undefined) {
formData.catId = String(categorySection.value);
}
var symbols = ['.', ',', '', '~'];
var randomSymbol = symbols[Math.floor(Math.random() * symbols.length)];
var originalName = formData['itemName']; // 或 form_data.itemName
var newName = originalName + randomSymbol;
if (newName.length > 60) {
var maxOriginalLength = 60 - randomSymbol.length;
newName = originalName.slice(0, maxOriginalLength) + randomSymbol;
}
formData['itemName'] = newName;
var url = 'https://seller.kongfz.com/pc/itemInfo/add';
console.log("formData1111111111", formData);
// 发送请求
uni.request({
url: url,
method: 'POST',
data: formData,
header: {
'Cookie': "PHPSESSID=".concat(token),
// 'User-Agent' 头在浏览器环境中无法设置,会被拒绝
'Content-Type': 'application/x-www-form-urlencoded',
'Referer': 'https://seller.kongfz.com/',
'Origin': 'https://seller.kongfz.com'
},
success: function success(res) {
console.log("处理后的res", res);
if (res.statusCode !== 200) {
reject(new Error("HTTP\u9519\u8BEF: ".concat(res.statusCode)));
return;
}
var data = res.data;
if (res.statusCode === 200 && data.status === 1) {
// 保存新商品ID到本地存储同时保存对应的旧商品ID
if (data.data) {
try {
var newId = String(data.data); // 确保newId为字符串
var oldId = String(formData.itemId); // 确保oldId为字符串
// 严格校验oldId和newId都不为空
var existingNewIds = uni.getStorageSync('kongfz_new_ids') || [];
var newIds = Array.isArray(existingNewIds) ? existingNewIds : [];
if (oldId && newId && oldId.trim() !== '' && newId.trim() !== '') {
newIds.push({
oldId: oldId,
newId: newId,
createTime: new Date().toISOString()
});
uni.setStorageSync('kongfz_new_ids', newIds);
console.log('新商品ID已保存:', newId, '对应旧ID:', oldId);
console.log('存储的ids', newIds);
} else {
console.warn('跳过保存无效的商品ID:', {
oldId: oldId,
newId: newId
});
}
} catch (e) {
console.error('保存新商品ID失败:', e);
}
}
resolve(true);
} else {
resolve(false);
}
},
fail: function fail(err) {
reject(new Error("\u63D0\u4EA4\u8868\u5355\u5931\u8D25: ".concat(err.errMsg)));
}
});
});
}
/**
* 批量更新孔网平台商品ID
* @param {Array} items - 商品ID对应关系数组格式[{oldPlatformId: "旧ID", newPlatformId: "新ID"}]
* @returns {Promise<{success: boolean, message: string}>} - 处理结果
*/
function batchUpdatePddPlatformId(items) {
return new Promise(function (resolve, reject) {
if (!items || !Array.isArray(items) || items.length === 0) {
resolve({
success: false,
message: '请提供有效的商品ID对应关系'
});
return;
}
var url = 'https://api.buzhiyushu.cn/zhishu/shopGoodsPublished/batchUpdateKfzPlatformId';
uni.request({
url: url,
method: 'POST',
data: items,
header: {
'Content-Type': 'application/json'
},
success: function success(res) {
if (res.statusCode === 200) {
var data = res.data;
if (data.code === 200) {
resolve({
success: true,
message: data.msg || '操作成功'
});
} else {
resolve({
success: false,
message: data.msg || '操作失败'
});
}
} else {
resolve({
success: false,
message: "HTTP\u9519\u8BEF: ".concat(res.statusCode)
});
}
},
fail: function fail(err) {
reject(new Error("\u8BF7\u6C42\u5931\u8D25: ".concat(err.errMsg)));
}
});
});
}
/**
* 删除商品
* @param {string} token - 登录令牌
* @param {string} itemId - 商品ID
* @returns {Promise<boolean>} - 是否成功
*/
function deleteItem(token, itemId) {
return new Promise(function (resolve, reject) {
if (!token) {
reject(new Error('请先登录获取Token'));
return;
}
var url = 'https://seller.kongfz.com/pc-gw/book-manage-service/client/pc/goods/quickUpdate';
// 准备JSON数据
var payload = {
"itemId": String(itemId),
"updateType": "delete",
"value": "1"
};
uni.request({
url: url,
method: 'POST',
data: payload,
header: {
'Cookie': "PHPSESSID=".concat(token),
// 'User-Agent' 头在浏览器环境中无法设置,会被拒绝
'Content-Type': 'application/json; charset=UTF-8',
'Referer': 'https://seller.kongfz.com/',
'Origin': 'https://seller.kongfz.com'
},
success: function success(res) {
console.log("delect", res);
if (res.statusCode !== 200) {
reject(new Error("HTTP\u9519\u8BEF: ".concat(res.statusCode)));
return;
}
var result = res.data;
if (result.status === true || result.status === 1) {
resolve(true);
} else {
resolve(false);
}
},
fail: function fail(err) {
reject(new Error("\u5220\u9664\u5546\u54C1\u65F6\u51FA\u9519: ".concat(err.errMsg)));
}
});
});
}
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
/***/ })
}]);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pkgManage/common/vendor.js.map