付智勇

修改预约

var Sequelize = require('sequelize');
//数据配置
var sequelize = new Sequelize('xin3m_saas', 'test_read', "test_read7", {
// var sequelize = new Sequelize('xuedianyun', 'root', "", {
//host:'localhost',
host:'rds9vo3ja79e62m0433jo.mysql.rds.aliyuncs.com',
dialect: 'mysql',
pool: {
max: 5,
max: 10,
min: 0,
idle: 30000
idle: 1000
}
})
... ...
... ... @@ -48,14 +48,56 @@ studentMeetingController.prototype.getStudentMeetingCount = async(ctx, next) =>{
studentMeetingController.prototype.queryStudentMeeting = async(ctx, next)=>{
let teacherName = ctx.params.teacherName;
if(!teacherName){
return status.paramError('teacherName');
try {
let teacherName = ctx.params.teacherName;
if(!teacherName){
return status.paramError('teacherName');
}
let page = ctx.header.page ? Number(ctx.header.page):ctx.header.page;
let pageno = ctx.header.pageno ? Number(ctx.header.pageno):ctx.header.pageno;
let sn = await studentMeetingService.queryStudentMeeting(teacherName,page,pageno);
return sn
} catch (error) {
throw error
}
}
studentMeetingController.prototype.getStudentMeetingBySite = async(ctx, next)=>{
try {
let siteId = ctx.params.siteId;
if(!siteId){
return status.paramError('siteId');
}
let page = ctx.header.page ? Number(ctx.header.page):ctx.header.page;
let pageno = ctx.header.pageno ? Number(ctx.header.pageno):ctx.header.pageno;
let sn = await studentMeetingService.getStudentMeetingBySite(siteId,page,pageno);
return sn
} catch (error) {
throw error
}
}
studentMeetingController.prototype.updateStudentMeetingBySite = async(ctx, next)=>{
try {
let Id = ctx.params.id;
var body = ctx.request.body;
let smdata = await studentMeetingService.updateStudentMeetingBySite(Id,body)
return smdata;
} catch (error) {
throw error;
}
}
studentMeetingController.prototype.getStudentMeetingByStudentId = async(ctx, next)=>{
try {
let Id = ctx.params.id;
let page = ctx.header.page ? Number(ctx.header.page):ctx.header.page;
let pageno = ctx.header.pageno ? Number(ctx.header.pageno):ctx.header.pageno;
let student = await studentMeetingService.updateStudentMeetingBySite(Id,page,pageno);
return student;
} catch (error) {
throw error;
}
let page = ctx.header.page ? Number(ctx.header.page):ctx.header.page;
let pageno = ctx.header.pageno ? Number(ctx.header.pageno):ctx.header.pageno;
let sn = await studentMeetingService.queryStudentMeeting(teacherName,page,pageno);
return sn
}
module.exports = new studentMeetingController();
\ No newline at end of file
... ...
... ... @@ -29,6 +29,10 @@ router.get('/getStudentMeetingCount/:meetingId',async (ctx, next) => {
status.catchError(ctx,400,e.message);
}
})
/**
* 删除预约
*/
router.get('/delStudentMeeting/:studentMeetingId',async (ctx, next) => {
try{
var data = await studentMeetingController.delStudentMeeting(ctx, next);
... ... @@ -39,6 +43,9 @@ router.get('/delStudentMeeting/:studentMeetingId',async (ctx, next) => {
}
})
/**
* 根据查询老师的预约
*/
router.get('/queryStudentMeeting/:teacherName',async (ctx, next) => {
try{
var data = await studentMeetingController.queryStudentMeeting(ctx, next);
... ... @@ -49,5 +56,43 @@ router.get('/queryStudentMeeting/:teacherName',async (ctx, next) => {
}
})
/**
* 查询站点的预约课程
*/
router.get('/getStudentMeetingBySite/:siteId',async (ctx, next) => {
try{
var data = await studentMeetingController.getStudentMeetingBySite(ctx, next);
status.successTemp(ctx,200,data);
}catch(e){
console.log(e)
status.catchError(ctx,400,e.message);
}
})
/**
* 查询学生预约课程
*/
router.get('/getStudentMeetingByStudentId/:id',async (ctx, next) => {
try{
var data = await studentMeetingController.getStudentMeetingByStudentId(ctx, next);
status.successTemp(ctx,200,data);
}catch(e){
console.log(e)
status.catchError(ctx,400,e.message);
}
})
/**
* 修改预约信息根据预约id
*/
router.put('/updateStudentMeetingBySite/:id',async (ctx, next) => {
try{
var data = await studentMeetingController.updateStudentMeetingBySite(ctx, next);
status.successTemp(ctx,200,data);
}catch(e){
console.log(e)
status.catchError(ctx,400,e.message);
}
})
module.exports = router;
\ No newline at end of file
... ...
var sutudentMeeting = require('../model/studentMeetingModel');
var studentMeeting = require('../model/studentMeetingModel');
var userModel = require('../model/userModel');
var status = require('../util/resTemplate');
var saitMd5 = require('../util/saltMD5');
... ... @@ -8,11 +8,11 @@ var meetingModel = require('../model/meetingModel');
var co = require('co');
function sutudentMeetingService(){
function studentMeetingService(){
}
sutudentMeetingService.prototype.addStudentMeeting = async(body)=>{
studentMeetingService.prototype.addStudentMeeting = async(body)=>{
try {
var t = await sequelize.transaction({ autocommit: true })
let user = await userModel.findOne({where:{id:body.studentId}});
... ... @@ -20,7 +20,7 @@ sutudentMeetingService.prototype.addStudentMeeting = async(body)=>{
t.rollback();
return {code:300,msg:'用户不存在'}
}
let oldSutudentMeeting = await sutudentMeeting.findOne({where:{studentId:body.studentId,meetingId:body.meetingId}});
let oldSutudentMeeting = await studentMeeting.findOne({where:{studentId:body.studentId,meetingId:body.meetingId}});
if(oldSutudentMeeting){
t.rollback();
return {code:300,msg:'您已预约这堂课'}
... ... @@ -30,7 +30,7 @@ sutudentMeetingService.prototype.addStudentMeeting = async(body)=>{
t.rollback();
return {code:300,msg:'课堂不存在'}
}
let sm = await sutudentMeeting.create(body,{transaction: t});
let sm = await studentMeeting.create(body,{transaction: t});
// let MeetingBack = await meetingModel.update(
// {reservationNumber:Meeting.reservationNumber+1},
// {where:{id:body.meetingId}},
... ... @@ -43,9 +43,9 @@ sutudentMeetingService.prototype.addStudentMeeting = async(body)=>{
}
}
sutudentMeetingService.prototype.getStudentMeetingCount = async(meetingId) =>{
studentMeetingService.prototype.getStudentMeetingCount = async(meetingId) =>{
try {
let sm = await sutudentMeeting.count({where:{meetingId:meetingId}})
let sm = await studentMeeting.count({where:{meetingId:meetingId}})
return sm;
} catch (error) {
console.log(error)
... ... @@ -54,7 +54,7 @@ sutudentMeetingService.prototype.getStudentMeetingCount = async(meetingId) =>{
}
sutudentMeetingService.prototype.queryStudentMeeting = async(teacherName,page=1,pageno=8)=>{
studentMeetingService.prototype.queryStudentMeeting = async(teacherName,page=1,pageno=8)=>{
try {
let querySql = `SELECT
3u.*, 3meet.meeting_name,
... ... @@ -74,4 +74,41 @@ sutudentMeetingService.prototype.queryStudentMeeting = async(teacherName,page=1,
}
}
module.exports = new sutudentMeetingService();
\ No newline at end of file
studentMeetingService.prototype.getStudentMeetingBySite = async(siteId,page=1,pageno=8)=>{
try {
let StudentMeetingBySite = await studentMeeting.findAll({where:{siteId:siteId}});
return StudentMeetingBySite;
} catch (error) {
throw error;
}
}
studentMeetingService.prototype.updateStudentMeetingBySite = async(id,data) =>{
try {
let studentMeeting = await studentMeeting.update(data,{where:{id:id}});
return studentMeeting;
} catch (error) {
throw error;
}
}
studentMeetingService.prototype.updateStudentMeetingBySite = async(id,page=1,pageno=8) =>{
let querySql = `SELECT
3u.*, 3meet.meeting_name,
3meet.create_user teacherName,
3sm. STATUS studentMeetingStatus,
3u2.user_name checkUserName,
3sm.check_time check_time
FROM
3m_student_meeting 3sm
LEFT JOIN 3m_user 3u ON 3u.id = 3sm.student_id
LEFT JOIN 3m_user 3u2 ON 3u2.id = 3sm.check_user_id
LEFT JOIN 3m_meeting 3meet ON 3meet.id = 3sm.meeting_id
WHERE
3sm.student_id = '` +id+"'";;
querySql += ' ORDER BY 3sm.create_time DESC LIMIT '+(page-1)*pageno+' , ' +pageno
let sm = await sequelize.query(querySql);
return sm[0];
}
module.exports = new studentMeetingService();
\ No newline at end of file
... ...