ykzz-web/src/components/crud/_.js

291 lines
7.6 KiB
JavaScript

import {httppost2, download, httpPostFile, httpget, httpget2,httpget6,xyt_httpget2,xyt_httpput,xyt_httpdelete} from "../../utils/request";
import apiurl from "../../service/apiurl";
import {config} from "../../config";
export async function paginate_noCode(url, params = {}) {
const {pageNumber, pageSize, ...ret} = params;
const pam = {
pageSo: {
pageSize,
pageNumber
},
...ret
}
const result = await httppost2(url, pam);
if (result && result.data) {
const {data} = result;
return {
list: data.records.map((m, index) => ({inx: (pageNumber - 1) * pageSize + index + 1, ...m})),
totalRow: data.total
};
}
return {list: [], totalRow: 0};
}
export async function paginate_nopage(url, params = {}) {
const {pageNumber, pageSize, ...ret} = params;
const pam = {
...ret
}
const result = await httpget6(url + `/${pam.dispatchId}`);
if (result && result.data) {
const {data} = result;
return {
list: data,
// totalRow: data.total
};
}
return {list: [], totalRow: 0};
}
export async function paginate_noCode4(url, params = {}) {
const {pageNumber, pageSize, ...ret} = params;
const pam = {
pageSize,
pageNumber,
...ret
}
const result = await httppost2(url, pam);
if (result && result.data) {
const {data} = result;
return {
list: data.records.map((m, index) => ({inx: (pageNumber - 1) * pageSize + index + 1, ...m})),
totalRow: data.total
};
}
return {list: [], totalRow: 0};
}
export async function paginate(url, params = {}) {
const {pageNumber, pageSize, sort, search} = params;
// const reqParams = {
// ...search,
// pageNumber,
// pageSize,
// };
// if (sort && sort.field) {
// const fd = camel2UnderLine(sort.field);
// reqParams.sortField = fd.toLocaleUpperCase();
// reqParams.sortOrder = SORT_ORDER_MAP[sort.order] || 'ASC';
// }
console.log(params);
if (!params.countycode) {
params.countycode = localStorage.getItem('ADCD6') + '000000'
}
// 11/10qzc注释,增加默认adcd后原页面查询出现错误。
// if (!params.adcd) {
// params.adcd = localStorage.getItem('ADCD6') + '000000'
// }
const result = await httppost2(url, params);
if (result && result.data) {
const {data} = result;
return {
list: data.records.map((m, index) => ({inx: (pageNumber - 1) * pageSize + index + 1, ...m})),
totalRow: data.total
};
}
return {list: [], totalRow: 0};
}
export async function paginate2(url, params = {}) {
const {pageNumber, pageSize, sort, search} = params;
if (!params.countycode) {
params.countycode = localStorage.getItem('ADCD6') + '000000'
}
const result = await httppost2(url, params);
if (result && result.data) {
const {data} = result;
return {
list: data.page.records.map((m, index) => ({inx: (pageNumber - 1) * pageSize + index + 1, ...m})),
totalRow: data.page.total,
count: data.administrativeRegionStatistics ? data.administrativeRegionStatistics : {}
};
}
return {list: [], totalRow: 0};
}
export async function paginate3(url, params = {}) {
const {pageNumber, pageSize, sort, search} = params;
if (!params.adcd) {
params.adcd = localStorage.getItem('ADCD6') + '000000'
}
const result = await httppost2(url, params);
if (result && result.data) {
const {data} = result;
return {
list: data.records.map((m, index) => ({inx: (pageNumber - 1) * pageSize + index + 1, ...m})),
totalRow: data.total
};
}
return {list: [], totalRow: 0};
}
export async function xyt_paginate_noCode(url, params = {}) {
const {pageNumber, pageSize, ...ret} = params;
const pam = {
pageNum:pageNumber,
pageSize:pageSize,
...ret
}
const result = await xyt_httpget2(url, pam);
if (result && result.rows) {
return {
list: result.rows.map((m, index) => ({inx: (pageNumber - 1) * pageSize + index + 1, ...m})),
totalRow: result.total
};
}
return {list: [], totalRow: 0};
}
export function createCrudService(urlSet) {
const find = async (params) => {
return paginate(urlSet, params);
}
const find_noCode = async (params) => {
return paginate_noCode(urlSet, params);
}
const xyt_find_noCode = async (params) => {
return xyt_paginate_noCode(urlSet, params);
}
const find_nopage = async (params) => {
return paginate_nopage(urlSet, params);
}
const find_noCode1 = async (params) => {
return paginate_noCode4(urlSet, params);
}
const find2 = async (params) => {
return paginate2(urlSet, params);
}
const find3 = async (params) => {
return paginate3(urlSet, params);
}
const save = async (params) => {
const resData = await httppost2(urlSet, params) || {};
return resData;
}
const edit = async (params) => {
const resData = await httppost2(urlSet, params) || {};
return resData;
}
const userEdit = async (params) => {
const resData = await xyt_httpput(urlSet, params) || {};
return resData;
}
const edit1 = async (params) => {
const resData = await httppost2(urlSet, params) || {};
return resData;
}
const insert = async (params) => {
const resData = await httppost2(urlSet + `/${params}`) || {};
return resData;
}
const del = async (params) => {
const resData = await httppost2(urlSet, params) || {};
return resData;
}
const delGet = async (params) => {
const resData = await httpget2(urlSet, params) || {};
return resData;
}
const userDel = async (params) => {
const resData = await xyt_httpdelete(urlSet, params) || {};
return resData;
}
const treeList = async (params) => {
const {data} = await httppost2(urlSet, params) || {};
return {list: data, totalRow: data?.length};
}
const list = async (params) => {
const {pageNumber, pageSize, sort, search} = params;
const {data} = await httppost2(urlSet, params) || {};
if (data) {
return {
list: data.map((m, index) => ({inx: (pageNumber - 1) * pageSize + index + 1, ...m})),
totalRow: data?.length
};
}
return {list: data, totalRow: data?.length};
}
const todo = async (params) => {
const resData = await httppost2(urlSet, params) || {};
return resData;
}
const getDict = async (params) => {
params.pageSize = 9999
const {data} = await httppost2(urlSet, params) || {};
return data?.records;
}
const downLoad = async (params) => {
fetch(urlSet, {
method: 'POST',
body: JSON.stringify(params),
// responseType : 'blob',
headers: {
'Content-Type': 'application/json',
}
}).then(function (response) {
console.log('response', response)
return response.blob();
}).then(function (blob) {
const link = document.createElement('a')
link.style.display = 'none'
// link.download = '到处文件'
link.href = URL.createObjectURL(blob)
document.body.appendChild(link)
link.click()
// 释放的 URL 对象以及移除 a 标签
URL.revokeObjectURL(link.href)
document.body.removeChild(link)
});
}
const upLoad = async (params) => {
const {data} = await httpPostFile(urlSet, params) || {};
return data;
}
return {
find: find,
find_noCode: find_noCode,
find_nopage: find_nopage,
xyt_find_noCode,
find2: find2,
find3:find3,
list: list,
todo: todo,
save: save,
edit: edit,
userEdit,
edit1: edit1,
del: del,
userDel,
insert:insert,
delGet:delGet,
upLoad: upLoad,
treeList: treeList,
getDict: getDict,
downLoad: downLoad,
find_noCode1:find_noCode1
}
}