feat: 上传图片

This commit is contained in:
yangzhe 2025-04-11 13:22:15 +08:00
parent d414e56d9c
commit a569565bfb
3 changed files with 29 additions and 36 deletions

View File

@ -33,8 +33,7 @@ export const GetPlanInfoAre = (data) =>
request.post("/api/App/GetPlanInfoAre", data); request.post("/api/App/GetPlanInfoAre", data);
// 获取计划列表 // 获取计划列表
export const GetPlanList = (data) => export const GetPlanList = (data) => request.get("/api/App/GetPlanList", data);
request.get("/api/App/GetPlanList", data);
// 获取单位信息 // 获取单位信息
export const GetCompanyInformation = (data) => export const GetCompanyInformation = (data) =>
@ -48,6 +47,6 @@ export const ReportingNFCDanger = (data) =>
export const UploadFiles = (formData) => export const UploadFiles = (formData) =>
request.upload("/api/App/UploadFiles", formData); request.upload("/api/App/UploadFiles", formData);
// 上传 // 修改上传接口定义
export const UploadArea = (data) => export const UploadArea = (fileList, formData) =>
request.post("/api/App/UploadArea", data); request.upload("/api/App/UploadArea", fileList, formData);

View File

@ -180,22 +180,13 @@ export default {
return; return;
} }
const params = { const res = await UploadArea(
id: this.params.areaId, this.imageList, //
note: this.remark, {
}; id: this.params.areaId,
note: this.remark,
const formData = new FormData(); }
formData.append("id", this.params.areaId); );
formData.append("note", this.remark);
for (const file of this.imageList) {
formData.append("files", file);
}
console.log("提交表单", params);
console.log("提交表单", picturesDto, this.remark);
const res = await UploadArea(formData);
if (res.succeed) { if (res.succeed) {
// //

View File

@ -45,16 +45,17 @@ const baseRequest = async (url, method, data = {}, loading = true) => {
reslove(res); reslove(res);
} }
} else { } else {
if(successData.statusCode === 401){ if (successData.statusCode === 401) {
console.log(successData,'successData--') console.log(successData, "successData--");
console.log('%c%s', 'color:red', '登录过期') console.log("%c%s", "color:red", "登录过期");
uni.showModal({ uni.showModal({
title: "提示", title: "提示",
content: "登陆过期,请重新登陆", content: "登陆过期,请重新登陆",
showCancel: false, showCancel: false,
success: function (res) { success: function (res) {
let u = navigator.userAgent; let u = navigator.userAgent;
let isAndroid = u.indexOf("Android") > -1 || u.indexOf("Adr") > -1; //android let isAndroid =
u.indexOf("Android") > -1 || u.indexOf("Adr") > -1; //android
// let isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios // let isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios
try { try {
if (isAndroid && AndroidJs) { if (isAndroid && AndroidJs) {
@ -70,7 +71,9 @@ const baseRequest = async (url, method, data = {}, loading = true) => {
name: "back-iphone", name: "back-iphone",
data: "", data: "",
}; };
window.webkit.messageHandlers.func.postMessage(JSON.stringify(reqRow)); // 给ios 传参 window.webkit.messageHandlers.func.postMessage(
JSON.stringify(reqRow)
); // 给ios 传参
} }
} catch (e) { } catch (e) {
console.log(e, "e-----判断安卓苹果类型出错"); console.log(e, "e-----判断安卓苹果类型出错");
@ -78,7 +81,7 @@ const baseRequest = async (url, method, data = {}, loading = true) => {
}, },
}); });
reject(res); reject(res);
return return;
} }
console.log("网络连接失败,请稍后重试", url); console.log("网络连接失败,请稍后重试", url);
toast("网络连接失败,请稍后重试"); toast("网络连接失败,请稍后重试");
@ -94,8 +97,8 @@ const baseRequest = async (url, method, data = {}, loading = true) => {
}); });
}; };
// 添加文件上传的基础方法 // 修改基础上传方法以支持多文件
const baseUpload = async (api, filePath, formData = {}, loading = true) => { const baseUpload = async (api, fileList, formData = {}, loading = true) => {
if (loading) { if (loading) {
uni.showLoading({ uni.showLoading({
title: "上传中...", title: "上传中...",
@ -109,14 +112,14 @@ const baseUpload = async (api, filePath, formData = {}, loading = true) => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
uni.uploadFile({ uni.uploadFile({
url: BASE_URL + api, url: BASE_URL + api,
filePath: filePath, files: fileList.map((filePath) => ({
name: "Files", // 文件对应的 key name: "Files",
formData: formData, uri: filePath,
})),
formData: formData, // 额外的表单数据
header: header, header: header,
success: (res) => { success: (res) => {
if (loading) uni.hideLoading(); if (loading) uni.hideLoading();
// 处理响应数据
if (res.statusCode === 200) { if (res.statusCode === 200) {
const data = JSON.parse(res.data); const data = JSON.parse(res.data);
if (data.succeed) { if (data.succeed) {
@ -147,8 +150,8 @@ const baseUpload = async (api, filePath, formData = {}, loading = true) => {
const request = {}; const request = {};
// 将 upload 方法添加到 request 对象中 // 将 upload 方法添加到 request 对象中
request.upload = (api, filePath, formData, loading) => request.upload = (api, fileList, formData, loading) =>
baseUpload(api, filePath, formData, loading); baseUpload(api, fileList, formData, loading);
["options", "get", "post", "put", "head", "delete", "trace", "connect"].forEach( ["options", "get", "post", "put", "head", "delete", "trace", "connect"].forEach(
(method) => { (method) => {