Commit 92688bbd by chenshu

feat:初始化

parent 92a4c2c1
......@@ -19,6 +19,7 @@ import {
Switch,
TimePicker,
InputNumber,
Tooltip,
} from 'antd';
import $ from 'jquery';
......@@ -86,7 +87,7 @@ class AddOfflineCourse extends React.Component {
nickName:null
},
calendarTime: [],
offlineCourseType: 'ANY_DAY_POFFLINE',
offlineCourseType: 'ALL_DAY_OFFLINE',
signInType: 'START_AGO',
signOutType: 'START_LATER',
oldQuta: null,
......@@ -993,10 +994,10 @@ class AddOfflineCourse extends React.Component {
className="mt5"
disabled={isEditDisablie}
>
<Radio value="ANY_DAY_POFFLINE" className="mr-16">
<Radio value="ALL_DAY_OFFLINE" className="mr-16">
<span style={{ color: "#333" }}>所选日期都要上课</span>
</Radio>
<Radio value="ALL_DAY_OFFLINE" className="mr-16">
<Radio value="ANY_DAY_POFFLINE" className="mr-16">
<span style={{ color: "#333" }}>选择任意1天上课</span>
</Radio>
</Radio.Group>
......@@ -1025,7 +1026,13 @@ class AddOfflineCourse extends React.Component {
/>
</div>}
{whetherSetApply === 'YES' && <div className="switch-item" key="3">
<span className="switch-label">报名人数:最多</span>
<span className="switch-label">
报名人数
<Tooltip title="报名一旦开始,报名人数不支持减少">
<span style={{ margin: '0 4px', color: '#999' }} className="icon iconfont">&#xe7c4;</span>
</Tooltip>
:最多
</span>
<InputNumber
value={quota}
min={oldQuta || 1}
......
......@@ -9,6 +9,8 @@
import React from 'react';
import { Table, Modal, message , Tooltip,Switch,Dropdown} from 'antd';
import { Route, withRouter } from 'react-router-dom';
import moment from 'moment';
import $ from 'jquery';
import { PageControl } from "@/components";
import { appId, shareUrl, LIVE_SHARE } from '@/domains/course-domain/constants';
import OfflineCourseData from '@/modules/course-manage/offline-course/OfflineCourseData';
......@@ -21,7 +23,6 @@ import ENUM from "../../../knowledge-base/ENUM.js";
import User from '@/common/js/user'
import QRCodeModal from '../modal/QRCodeModal';
import './OfflineCourseList.less';
import moment from 'moment';
const ENV = process.env.DEPLOY_ENV || 'dev';
const defaultCoverUrl = 'https://image.xiaomaiketang.com/xm/YNfi45JwFA.png';
......@@ -122,7 +123,10 @@ class OfflineCourseList extends React.Component {
dataIndex: "courseware",
render: (val, item, index) => {
return (
<Switch defaultChecked={item.shelfState === "YES"} onChange={() => this.changeShelfState(item)}/>
<Switch
defaultChecked={item.shelfState === "YES"}
onChange={() => this.changeShelfState(item)}
/>
)
},
},
......@@ -140,8 +144,8 @@ class OfflineCourseList extends React.Component {
{
title: '报名时间',
width: 181,
key: 'updated',
dataIndex: 'updated',
key: 'apply',
dataIndex: 'apply',
sorter: true,
render: (val, item) => {
return item.startTimeApply ? `${formatDate('MM-DD H:i', item.startTimeApply)} ~ ${formatDate('MM-DD H:i', item.endTimeApply)}` : '-'
......@@ -192,14 +196,29 @@ class OfflineCourseList extends React.Component {
// 显示预览弹窗
handleShowPreviewModal = (query) => {
const {
coverUrl,
courseName,
startTime,
endTime,
introduce,
categoryName,
offlinePlace,
courseMediaVOS,
} = query;
let coverUrl = '';
courseMediaVOS.map((item) => {
switch (item.contentType){
case "COVER":
coverUrl = item.mediaUrl;
break;
case "INTRO":
this.getTextDetail('introduce', item.mediaUrl);
break;
default:
break;
}
return item;
})
setTimeout(() => {
const { introduce } = this.state;
const data = {
coverUrl,
......@@ -220,8 +239,20 @@ class OfflineCourseList extends React.Component {
}}
/>
);
this.setState({ previewOfflineModal });
}, 500)
}
getTextDetail = (key, url) => {
$.ajax({
data: {},
type: 'GET',
url,
contentType:'application/x-www-form-urlencoded; charset=UTF-8',
success: (res) => {
this.setState({ [key]: res, [`load${key}`]: true });
}
})
}
renderMoreOperate = (item) => {
......@@ -367,8 +398,10 @@ class OfflineCourseList extends React.Component {
let _columnKey;
let _order;
// 按创建时间升序排序
if (columnKey === 'apply' && order === 'ascend') {_columnKey="START_APPLY_DESC"; _order = 'SORT_ASC'; }
if (columnKey === 'created' && order === 'ascend') {_columnKey="CREATED"; _order = 'SORT_ASC'; }
// 按创建时间降序排序
if (columnKey === 'apply' && order === 'descend') { _columnKey="START_APPLY_DESC"; _order = 'SORT_DESC';}
if (columnKey === 'created' && order === 'descend') { _columnKey="CREATED"; _order = 'SORT_DESC';}
const _query = {
...query,
......
......@@ -100,20 +100,20 @@ export default class QRCodeModal extends React.Component {
render() {
const { visible, onCancel } = this.props;
const { selectedDate, data = {} } = this.state;
const { startTime, endTime, courseName, whetherSetSignIn, whetherSetSignOut, signInType, signOutType } = data;
const { courseName, whetherSetSignIn, whetherSetSignOut } = data;
const date = moment(selectedDate).format('YYYY-MM-DD');
const unit = (data.signInTimeUnit || '').toLocaleLowerCase() + 's';
const time = moment(data.signInType == 'START_AGO' ? data.startTime : data.endTime).subtract(data.signInTimeNum, unit);
const signInTime = data.signInType == 'START_AGO' ? `${date} ${moment(time).format('HH:mm')} ~ ${date} ${moment(data.startTime).format('HH:mm')}` : `${date} ${moment(data.startTime).format('HH:mm')} ~ ${date} ${moment(time).format('HH:mm')}`;
const time = moment(`${date} ${moment(data.signInType == 'START_AGO' ? data.startTime : data.endTime).format('HH:mm')}`).subtract(data.signInTimeNum, unit);
const signInTime = `${moment(time).format('YYYY-MM-DD HH:mm')} ~ ${moment(data.signInType == 'START_AGO' ? data.startTime : data.endTime).format('YYYY-MM-DD HH:mm')}`;
const endUnit = (data.signOutEndTimeUnit || '').toLocaleLowerCase() + 's';
const end = moment(data.endTime).add(data.signOutEndTimeNum, endUnit);
const end = moment(`${date} ${moment(data.endTime).format('HH:mm')}`).add(data.signOutEndTimeNum, endUnit);
let startUnit = '';
let start = '';
if (data.signOutType === 'START_LATER') {
startUnit = (data.signOutStartTimeUnit || '').toLocaleLowerCase() + 's';
start = moment(data.startTime).add(data.signOutStartTimeNum, startUnit);
start = moment(`${date} ${moment(data.startTime).format('HH:mm')}`).add(data.signOutStartTimeNum, startUnit);
}
const signOutTime = data.signOutType === 'START_LATER' ? `${date} ${moment(start).format('HH:mm')} ~ ${date} ${moment(end).format('HH:mm')}` : `${date} ${moment(data.endTime).format('HH:mm')} ~ ${date} ${moment(end).format('HH:mm')}`;
const signOutTime = data.signOutType === 'START_LATER' ? `${moment(start).format('YYYY-MM-DD HH:mm')} ~ ${moment(end).format('YYYY-MM-DD HH:mm')}` : `${moment(data.endTime).format('YYYY-MM-DD HH:mm')} ~ ${moment(end).format('YYYY-MM-DD HH:mm')}`;
return (
<Modal
title="考勤二维码"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment