Untitled
unknown
plain_text
a year ago
5.7 kB
9
Indexable
import T from 'view/js/common';
import { getSvSdhAdmin } from '../fwSinhVienSdh/redux';
const sdhDeTaiAll = 'SdhDeTai:GetAll';
const SdhDeTaiDetail = 'SdhDeTai:Detail';
export default function SdhDeTaiReducer(state = null, data) {
switch (data.type) {
case sdhDeTaiAll:
return Object.assign({}, state, { page: data.payload });
case SdhDeTaiDetail:
return Object.assign({}, state, { item: data.payload });
default:
return state;
}
}
export function createSdhDeTai(data, done) {
const cookie = T.updatePage('SdhDetai', null, null, null, null);
const { pageNumber, pageSize, pageCondition, filter } = cookie;
return async dispatch => {
try {
const url = '/api/sdh/de-tai';
let res = await T.async.post(url, { data });
T.notify('Tạo đề tài thành công!', 'success');
dispatch(getDeTaiPage(pageNumber, pageSize, pageCondition, filter));
done && done(res.items);
return res.items;
} catch (error) {
T.notify(`Lỗi tạo mới ${error.message && (':<br>' + error.message)}`, 'danger');
console.error(error);
}
};
}
export function updateSdhDeTai(id, data, done) {
const cookie = T.updatePage('SdhDetai', null, null, null, null);
const { pageNumber, pageSize, pageCondition, filter } = cookie;
return async dispatch => {
try {
const url = '/api/sdh/de-tai';
let res = await T.async.put(url, { id, data });
T.notify('Cập nhật đề tài thành công!', 'success');
dispatch(getDeTaiPage(pageNumber, pageSize, pageCondition, filter));
done && done(res.items);
return res.items;
} catch (error) {
T.notify(`Lỗi tạo mới ${error.message && (':<br>' + error.message)}`, 'danger');
console.error(error);
}
};
}
T.initPage('SdhDetai');
export function getDeTaiPage(pageNumber, pageSize, pageCondition, filter, done) {
const page = T.updatePage('SdhDetai', pageNumber, pageSize, pageCondition, filter);
return async dispatch => {
try {
const url = `/api/sdh/de-tai/page/${page.pageNumber}/${page.pageSize}`;
let res = await T.async.get(url, { condition: pageCondition, filter });
dispatch({ type: sdhDeTaiAll, payload: res.page });
done && done(res.items);
}
catch (error) {
T.notify(`Lỗi lấy dữ liệu ${error.message && (':<br>' + error.message)}`, 'danger');
console.error(error);
}
};
}
export const SelectAdapter_FwSinhVienSDH = {
url: '/api/sdh/sinh-vien/page/1/20',
data: params => ({ condition: params.term }),
processResults: response => ({
results: response?.page?.list ? response.page.list.map(item => ({
id: item.mssv,
text: `${item.mssv}: ${(item.ho + ' ' + item.ten).normalizedName()}`
})) : []
}),
fetchOne: (mssv, done) => (getSvSdhAdmin(mssv, item => done && done({
id: item.mssv,
text: `${item.msvv}: ${(item.ho + ' ' + item.ten).normalizedName()}`
})))()
};
export const SelectAdapter_FwCbhd = {
url: '/api/sdh/cbhd/page/1/20',
data: params => ({ condition: params.term }),
processResults: response => ({
results: response?.page?.list ? response.page.list.map(item => ({
id: `${item.shcc} - ${item.belongTo}`,
text: `${item.shcc}: ${item.trinhDo ?? ''} ${(item.hoTen).normalizedName()} - (${item.belongTo})`,
belongTo: `${item.belongTo}`,
shcc: `${item.shcc}`,
})) : []
}),
fetchOne: (id, done) => (getCbhd(id, item => done && done({
id: `${item.shcc - item.belongTo}`,
text: `${item.shcc}: ${(item.ho + ' ' + item.ten).normalizedName()}`,
belongTo: `${item.belongTo}`,
shcc: `${item.shcc}`,
})))()
};
export function getSqdByMssv(mssv) {
return async dispatch => {
try {
const url = `/api/sdh/so-quyet-dinh/${mssv}`;
let res = await T.async.get(url);
dispatch({ type: SdhDeTaiDetail, payload: res.items });
}
catch (error) {
T.notify(`Lỗi tạo mới ${error.message && (':<br>' + error.message)}`, 'danger');
console.error(error);
}
};
}
export function getCbhd(shcc, done) {
const [mscb, belongTo] = shcc.split(' - ');
console.log(mscb, belongTo);
return () => {
const url = `/api/sdh/cbhd/item/${mscb}?belongTo=${belongTo}`;
T.get(url, data => {
if (data.error) {
T.notify('Lấy thông tin cán bộ sau đại học không thành công!', 'danger');
console.error(`GET: ${url}.`, data.error);
} else {
done && done(data.item);
}
}, () => T.notify('Lấy cán bộ sau đại học bị lỗi!', 'danger'));
};
}
// export const SelectAdapter_FwSinhVienSDH = {
// ajax: true,
// url: '/api/sdh/sinh-vien/page/1/20',
// data: params => ({ condition: params.term }),
// processResults: response => ({
// results: response?.page?.list ? response.page.list.map(item => ({
// id: item.mssv,
// text: `${item.mssv}: ${(item.ho + ' ' + item.ten).normalizedName()}`
// })) : []
// }),
// fetchOne: (mssv, done) => (getSvSdhAdmin(mssv, item => done && done({
// id: item.mssv,
// text: `${item.msvv}: ${(item.ho + ' ' + item.ten).normalizedName()}`
// })))()
// };
Editor is loading...
Leave a Comment