80 行
2.7 KiB
TypeScript
80 行
2.7 KiB
TypeScript
import {IJsonCourse} from "./types"
|
|
import {getTimeNow, sduAxios, sleep} from "./includes"
|
|
import {appConfig} from "./config"
|
|
import * as qs from "qs"
|
|
|
|
let reqData = [
|
|
{"name": "sEcho", "value": "1"},
|
|
{"name": "iColumns", "value": "2000"},// 1
|
|
{"name": "sColumns", "value": ""},
|
|
{"name": "iDisplayStart", "value": "0"},
|
|
{"name": "iDisplayLength", "value": "2000"},// 1
|
|
{"name": "mDataProp_0", "value": "kch"},
|
|
{"name": "mDataProp_1", "value": "kcmc"},
|
|
{"name": "mDataProp_2", "value": "kxhnew"},
|
|
{"name": "mDataProp_3", "value": "jkfs"},
|
|
{"name": "mDataProp_4", "value": "xmmc"},
|
|
{"name": "mDataProp_5", "value": "xf"},
|
|
{"name": "mDataProp_6", "value": "skls"},
|
|
{"name": "mDataProp_7", "value": "sksj"},
|
|
{"name": "mDataProp_8", "value": "skdd"},
|
|
{"name": "mDataProp_9", "value": "xqmc"},
|
|
{"name": "mDataProp_10", "value": "xkrs"},
|
|
{"name": "mDataProp_11", "value": "syrs"},
|
|
{"name": "mDataProp_12", "value": "ctsm"},
|
|
{"name": "mDataProp_13", "value": "szkcflmc"},
|
|
{"name": "mDataProp_14", "value": "czOper"}
|
|
]
|
|
export const JsonCourseList = <{ bx: IJsonCourse[], xx: IJsonCourse[], rx: IJsonCourse[] }>{
|
|
bx: [],
|
|
xx: [],
|
|
rx: []
|
|
}
|
|
|
|
async function updateBx() {
|
|
try {
|
|
let resp = await sduAxios.post('/jsxsd/xsxkkc/xsxkBxxk?1=1&kcxx=&skls=&skfs=', qs.stringify(reqData))
|
|
JsonCourseList.bx.length = 0
|
|
JsonCourseList.bx.push(...resp.data.aaData)
|
|
console.log('更新必修JsonList成功')
|
|
} catch (e) {
|
|
console.log('获取必修JsonList失败 at ' + getTimeNow())
|
|
}
|
|
}
|
|
|
|
async function updateXx() {
|
|
try {
|
|
let resp = await sduAxios.post('/jsxsd/xsxkkc/xsxkXxxk?1=1&kcxx=&skls=&skfs=', qs.stringify(reqData))
|
|
JsonCourseList.xx.length = 0
|
|
JsonCourseList.xx.push(...resp.data.aaData)
|
|
} catch (e) {
|
|
console.log('获取限选JsonList失败 at ' + getTimeNow())
|
|
}
|
|
}
|
|
|
|
async function updateRx() {
|
|
try {
|
|
let resp = await sduAxios.post('/jsxsd/xsxkkc/xsxkGgxxkxk?kcxx=&skls=&skxq=&skjc=&sfym=false&sfct=false&szjylb=&sfxx=false&skfs=', qs.stringify(reqData))
|
|
JsonCourseList.rx.length = 0
|
|
JsonCourseList.rx.push(...resp.data.aaData)
|
|
} catch (e) {
|
|
console.log('获取任选JsonList失败 at ' + getTimeNow())
|
|
}
|
|
}
|
|
|
|
export async function poll() {
|
|
if (appConfig.channels.includes('bx')) {
|
|
await updateBx()
|
|
await sleep(appConfig.interval)
|
|
}
|
|
if (appConfig.channels.includes('xx')) {
|
|
await updateXx()
|
|
await sleep(appConfig.interval)
|
|
}
|
|
if (appConfig.channels.includes('rx')) {
|
|
await updateRx()
|
|
await sleep(appConfig.interval)
|
|
}
|
|
setImmediate(poll)
|
|
}
|