'use strict'; // const { simpleExcelDown } = require('../../../../utils/xlsxDownload'); async function dataExport(ctx) { try { // const models = ctx.fs.dc.models; // const { userId } = ctx.fs.api // const { ids } = ctx.query; // const fileList = [ // { // n: '道路', // tableName: 'road', // defaultKey: ['level'], // defaultValue: ['村'], // }, // { // n: '道路', // tableName: 'road', // defaultKey: ['level'], // defaultValue: ['县'], // }, // { // n: '道路', // tableName: 'road', // defaultKey: ['level'], // defaultValue: ['乡'], // }, // { // n: '桥梁', // tableName: 'bridge' // }, // { // n: '运政车辆', // tableName: 'municipal_vehicle', // defaultKey: ['type'], // defaultValue: ['出租车'], // }, // { // n: '运政车辆', // tableName: 'municipal_vehicle', // defaultKey: ['type'], // defaultValue: ['危货'], // }, // { // n: '运政业户', // tableName: 'municipal_business', // defaultKey: ['type'], // defaultValue: ['出租车'], // }, // { // n: '运政业户', // tableName: 'municipal_business', // defaultKey: ['type'], // defaultValue: ['危货'], // }, // { // n: '工程一览', // tableName: 'project', // defaultKey: ['done', 'type'], // defaultValue: [false, 'road'], // }, // { // n: '工程一览', // tableName: 'project', // defaultKey: ['done', 'type'], // defaultValue: [false, 'bridge'], // }, // { // n: '治超', // tableName: 'overspeed', // }, // { // n: '公交线路', // tableName: 'bus_line', // }, // { // n: '公交车辆', // tableName: 'bus_car', // }, // ] <<<<<<< HEAD // const exportData = await models.BusCar.destroy({ // where: { // id: { $in: ids.split(',') } // } // }) ======= const modalList = [ { n: '道路', k: 'road', tableName: 'Road', }, { n: '桥梁', k: 'bridge', tableName: 'Bridge' }, { n: '运政车辆', k: 'vehicle', tableName: 'MunicipalVehicle', }, { n: '运政业户', k: 'business', tableName: 'MunicipalBusiness', }, { n: '工程一览', k: 'project', tableName: 'Project', }, { n: '治超', k: 'overspeed', tableName: 'Overspeed', }, { n: '公交线路', k: 'busLine', tableName: 'BusLine', }, { n: '公交车辆', k: 'busCar', tableName: 'BusCar', }, { n: '巡更记录', k: 'patrol', tableName: 'Report', }, { n: '养护记录', k: 'maintenance', tableName: 'Report', }, ] >>>>>>> d8f96cea72338cf7a61dea293bd6d0cd5da48bb0 // const fileName = `摄像头信息列表_${moment().format('YYYYMMDDHHmmss')}` + '.csv' // const filePath = await simpleExcelDown({ data: exportData, header, fileName: fileName }) // const fileData = fs.readFileSync(filePath); <<<<<<< HEAD // ctx.status = 200; // ctx.set('Content-Type', 'application/x-xls'); // ctx.set('Content-disposition', 'attachment; filename=' + encodeURI(fileName)); // ctx.body = fileData; } catch (error) { // ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); // ctx.status = 400; // ctx.body = { // message: typeof error == 'string' ? error : undefined // } } ======= let findOption = { where: {} } if (ids) { findOption.where.id = { $in: ids.split(',') } } if (roadLevel) { findOption.where.level = roadLevel } if (municipalType) { findOption.where.type = municipalType } const exportData = await models[modalOption.tableName].findAll(findOption) const tableAttributes = models[modalOption.tableName].tableAttributes let header = [] for (let k in tableAttributes) { const comment = tableAttributes[k].comment if (k != 'id' && comment) { if (comment == '品名' && municipalType == '出租车') { continue } header.push({ title: comment || '-', key: k, index: tableAttributes[k].index, }) } } header.sort((a, b) => { return a.index - b.index }) const fileName = `${modalOption.n}_${moment().format('YYYYMMDDHHmmss')}` + '.csv' const filePath = await xlsxDownload.simpleExcelDown({ data: exportData, header, fileName: fileName, exp }) const fileData = fs.readFileSync(filePath); ctx.status = 200; ctx.set('Content-Type', 'application/x-xls'); ctx.set('Content-disposition', 'attachment; filename=' + encodeURI(fileName)); ctx.body = fileData; } catch (error) { ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); ctx.status = 400; ctx.body = { message: typeof error == 'string' ? error : undefined } } >>>>>>> d8f96cea72338cf7a61dea293bd6d0cd5da48bb0 } async function godTrans(ctx) { try { const models = ctx.fs.dc.models; const { userId } = ctx.fs.api const res = await request.get('https://report.amap.com/ajax/districtRank.do?linksType=1&cityCode=360100') const data = JSON.parse(res.text) const nanchang = data.find(item => item.name == '南昌县') || {} ctx.status = 200 ctx.body = nanchang } catch (error) { ctx.fs.logger.error(`path: ${ctx.path}, error: ${error}`); ctx.status = 400; ctx.body = { message: typeof error == 'string' ? error : undefined } } } module.exports = { dataExport };