From a3b63c7a55474618a27e31ea994f0fcf408440c5 Mon Sep 17 00:00:00 2001 From: maskxman <523204707@qq.com> Date: Sun, 2 May 2021 16:08:54 +0800 Subject: [PATCH 1/2] quzhi --- .../dialog/SeparateCourseDialog.java | 12 ++++++ .../hit/education/view/CourseExploreView.java | 15 +++++++- .../education/view/CourseScheduleView.java | 38 ++++++++++++++++++- 3 files changed, 62 insertions(+), 3 deletions(-) diff --git a/src/cn/edu/hit/education/dialog/SeparateCourseDialog.java b/src/cn/edu/hit/education/dialog/SeparateCourseDialog.java index d9a8e5b..7593c52 100644 --- a/src/cn/edu/hit/education/dialog/SeparateCourseDialog.java +++ b/src/cn/edu/hit/education/dialog/SeparateCourseDialog.java @@ -87,4 +87,16 @@ public class SeparateCourseDialog extends TitleAreaDialog { // TODO 自动生成的方法存根 return new Point(300,300); } + public double getCredit() { + return Double.parseDouble(text.getText()); + } + public double getPeriod() { + return Double.parseDouble(text_1.getText()); + } + public double getTheoretical() { + return Double.parseDouble(text_2.getText()); + } + public double getExperiment() { + return Double.parseDouble(text_3.getText()); + } } diff --git a/src/cn/edu/hit/education/view/CourseExploreView.java b/src/cn/edu/hit/education/view/CourseExploreView.java index f49ecf2..cc01106 100644 --- a/src/cn/edu/hit/education/view/CourseExploreView.java +++ b/src/cn/edu/hit/education/view/CourseExploreView.java @@ -70,6 +70,9 @@ public class CourseExploreView extends ViewPart { private TreeViewer treeViewer; private Semester semester; private Specialty specialty; + CourseNode courseNode ; + + public CourseExploreView() { @@ -94,7 +97,7 @@ public class CourseExploreView extends ViewPart { CourseNode courseNode = (CourseNode)selections.getData(); - System.out.println("所选课程ID:"+courseNode.getId()+ "结果打印"+scheduleService.qurySchedule(courseNode.getId()).toString()); + System.out.println("所选课程ID:"+courseNode.getId()); } }); @@ -118,7 +121,15 @@ public class CourseExploreView extends ViewPart { Shell parentShell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); SeparateCourseDialog dlg = new SeparateCourseDialog(parentShell); if(IDialogConstants.OK_ID == dlg.open()){ - + Schedule schedule = new Schedule(); + schedule.setCourseId(courseNode.getId()); + schedule.setSpecialtyId(specialty.getId()); + schedule.setSemesterId(semester.getId()); + schedule.setPeriod(dlg.getPeriod()); + schedule.setCredits(dlg.getCredit()); + schedule.setTheoretical(dlg.getTheoretical()); + schedule.setExperiment(dlg.getExperiment()); + scheduleService.insert(schedule); } } diff --git a/src/cn/edu/hit/education/view/CourseScheduleView.java b/src/cn/edu/hit/education/view/CourseScheduleView.java index 54a1fec..108e781 100644 --- a/src/cn/edu/hit/education/view/CourseScheduleView.java +++ b/src/cn/edu/hit/education/view/CourseScheduleView.java @@ -7,6 +7,9 @@ import java.util.Set; import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.jface.util.LocalSelectionTransfer; +import org.eclipse.jface.viewers.ISelection; +import org.eclipse.jface.viewers.ISelectionChangedListener; +import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.jface.viewers.TableViewer; import org.eclipse.jface.viewers.TableViewerColumn; import org.eclipse.swt.SWT; @@ -28,6 +31,7 @@ import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Table; import org.eclipse.swt.widgets.TableColumn; import org.eclipse.swt.widgets.TableItem; +import org.eclipse.ui.ISelectionService; import org.eclipse.ui.PlatformUI; import org.eclipse.ui.part.ViewPart; import org.springframework.beans.factory.annotation.Autowired; @@ -48,7 +52,7 @@ import cn.edu.hit.education.service.ISpecialtyService; import cn.edu.hit.education.utils.StatisticsUtil; @Component -public class CourseScheduleView extends ViewPart { +public class CourseScheduleView extends ViewPart implements ISelectionProvider{ public static final String ID = "cn.edu.hit.education.view.CourseScheduleView"; final Transfer[] transfer = new Transfer[] { LocalSelectionTransfer .getTransfer() }; @@ -72,6 +76,7 @@ public class CourseScheduleView extends ViewPart { List courses = new ArrayList(); public CourseScheduleView() { + } public void createPartControl(Composite parent) { @@ -280,5 +285,36 @@ public class CourseScheduleView extends ViewPart { } tableViewer.setInput(courses); } + public Semester getSemester() { + return semester; + } + public Specialty getSpecialty() { + return specialty; + } + + @Override + public void addSelectionChangedListener(ISelectionChangedListener listener) { + // TODO Auto-generated method stub + + } + + @Override + public ISelection getSelection() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void removeSelectionChangedListener(ISelectionChangedListener listener) { + // TODO Auto-generated method stub + + } + + @Override + public void setSelection(ISelection selection) { + // TODO Auto-generated method stub + + } + } \ No newline at end of file -- Gitee From 3c17982b6bca381e1219d298b97053866ef6e833 Mon Sep 17 00:00:00 2001 From: maskxman <523204707@qq.com> Date: Wed, 5 May 2021 14:59:17 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E9=A2=84=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .classpath | 106 +++++++++--------- .../dialog/SeparateCourseDialog.java | 50 ++++++++- .../hit/education/view/CourseExploreView.java | 18 +-- .../education/view/CourseScheduleView.java | 9 ++ src/config/applicationContext.xml | 2 +- 5 files changed, 115 insertions(+), 70 deletions(-) diff --git a/.classpath b/.classpath index 9e70d8d..2f69697 100644 --- a/.classpath +++ b/.classpath @@ -1,53 +1,53 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/cn/edu/hit/education/dialog/SeparateCourseDialog.java b/src/cn/edu/hit/education/dialog/SeparateCourseDialog.java index 7593c52..6dae7bb 100644 --- a/src/cn/edu/hit/education/dialog/SeparateCourseDialog.java +++ b/src/cn/edu/hit/education/dialog/SeparateCourseDialog.java @@ -1,5 +1,6 @@ package cn.edu.hit.education.dialog; +import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.jface.dialogs.IMessageProvider; import org.eclipse.jface.dialogs.TitleAreaDialog; import org.eclipse.swt.SWT; @@ -11,29 +12,49 @@ import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.ApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; +import org.springframework.stereotype.Component; + +import cn.edu.hit.education.pojo.Schedule; +import cn.edu.hit.education.service.ICourseService; +import cn.edu.hit.education.service.IScheduleService; +import cn.edu.hit.education.service.ISemesterService; +import cn.edu.hit.education.service.ISpecialtyService; +import cn.edu.hit.education.service.ScheduleServiceImpl; +import cn.edu.hit.education.view.CourseScheduleView; +import educationschedule.Application; /** *@Title: separateCourse *@Description:分散授课设置 *@author:李朝辉 -*@data:2021年4月29日午夜12:00 +*@data:2021年5月5日下午2:00 * */ public class SeparateCourseDialog extends TitleAreaDialog { + + CourseScheduleView courseScheduleview = Application.applicationContext.getBean(CourseScheduleView.class); private Text text; private Text text_1; private Text text_2; private Text text_3; + private int courseId; + private IScheduleService scheduleService= Application.applicationContext.getBean(IScheduleService.class); + private int semesterId = courseScheduleview.getSemester().getId(); + private int specialityId = courseScheduleview.getSpecialty().getId(); - - public SeparateCourseDialog(Shell parentShell) { + public SeparateCourseDialog(Shell parentShell,int courseId) { super(parentShell); + this.courseId = courseId; // TODO Auto-generated constructor stub } protected Control createDialogArea(Composite parent) { Composite composite = (Composite)super.createDialogArea(parent); createContentPane(composite); + return composite; } @@ -83,10 +104,32 @@ public class SeparateCourseDialog extends TitleAreaDialog { super.configureShell(newShell); newShell.setText("分散课程设置"); } + + protected void createButtonsForButtonBar(Composite parent) { + createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true); + createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false); + } protected Point getInitialSize() { // TODO 自动生成的方法存根 return new Point(300,300); } + protected void okPressed() { + // implement your own function here + Schedule schedule = new Schedule(); + schedule.setCourseId(courseId); + schedule.setSpecialtyId(semesterId); + schedule.setSemesterId(specialityId); + schedule.setPeriod(getPeriod()); + schedule.setCredits(getCredit()); + schedule.setTheoretical(getTheoretical()); + schedule.setExperiment(getExperiment()); + scheduleService.insert(schedule); + System.out.println("注入成功!"); + + super.okPressed(); + } + + public double getCredit() { return Double.parseDouble(text.getText()); } @@ -99,4 +142,5 @@ public class SeparateCourseDialog extends TitleAreaDialog { public double getExperiment() { return Double.parseDouble(text_3.getText()); } + } diff --git a/src/cn/edu/hit/education/view/CourseExploreView.java b/src/cn/edu/hit/education/view/CourseExploreView.java index cc01106..ffa13c2 100644 --- a/src/cn/edu/hit/education/view/CourseExploreView.java +++ b/src/cn/edu/hit/education/view/CourseExploreView.java @@ -70,7 +70,7 @@ public class CourseExploreView extends ViewPart { private TreeViewer treeViewer; private Semester semester; private Specialty specialty; - CourseNode courseNode ; + private CourseNode courseNode ; @@ -94,9 +94,9 @@ public class CourseExploreView extends ViewPart { @Override public void widgetSelected(SelectionEvent e) { TreeItem selections = (TreeItem)e.item; - CourseNode courseNode = (CourseNode)selections.getData(); + courseNode = (CourseNode)selections.getData(); - + System.out.println("所选课程ID:"+courseNode.getId()); } @@ -119,17 +119,9 @@ public class CourseExploreView extends ViewPart { // TODO :弹出窗口实现 Shell parentShell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); - SeparateCourseDialog dlg = new SeparateCourseDialog(parentShell); + SeparateCourseDialog dlg = new SeparateCourseDialog(parentShell, courseNode.getId()); + if(IDialogConstants.OK_ID == dlg.open()){ - Schedule schedule = new Schedule(); - schedule.setCourseId(courseNode.getId()); - schedule.setSpecialtyId(specialty.getId()); - schedule.setSemesterId(semester.getId()); - schedule.setPeriod(dlg.getPeriod()); - schedule.setCredits(dlg.getCredit()); - schedule.setTheoretical(dlg.getTheoretical()); - schedule.setExperiment(dlg.getExperiment()); - scheduleService.insert(schedule); } } diff --git a/src/cn/edu/hit/education/view/CourseScheduleView.java b/src/cn/edu/hit/education/view/CourseScheduleView.java index 108e781..9bbd5ac 100644 --- a/src/cn/edu/hit/education/view/CourseScheduleView.java +++ b/src/cn/edu/hit/education/view/CourseScheduleView.java @@ -73,6 +73,7 @@ public class CourseScheduleView extends ViewPart implements ISelectionProvider{ private Semester semester; private Specialty specialty; + List courses = new ArrayList(); public CourseScheduleView() { @@ -172,6 +173,7 @@ public class CourseScheduleView extends ViewPart implements ISelectionProvider{ @Override public void handleEvent(Event event) { + System.out.println(semester.getId()); TableItem[] selections = table.getSelection(); if (selections.length > 0) { modifyItem.setEnabled(true); @@ -187,6 +189,9 @@ public class CourseScheduleView extends ViewPart implements ISelectionProvider{ initSemesterCombo(); // /////////////// refreshData(); + + + } @Override @@ -217,6 +222,7 @@ public class CourseScheduleView extends ViewPart implements ISelectionProvider{ schedule.setSpecialtyId(specialty.getId()); schedule.setSemesterId(semester.getId()); scheduleService.insert(schedule); + refreshData(); } else { MessageDialog.openConfirm(PlatformUI.getWorkbench().getDisplay() @@ -295,6 +301,7 @@ public class CourseScheduleView extends ViewPart implements ISelectionProvider{ @Override public void addSelectionChangedListener(ISelectionChangedListener listener) { // TODO Auto-generated method stub + } @@ -308,6 +315,8 @@ public class CourseScheduleView extends ViewPart implements ISelectionProvider{ public void removeSelectionChangedListener(ISelectionChangedListener listener) { // TODO Auto-generated method stub + + } @Override diff --git a/src/config/applicationContext.xml b/src/config/applicationContext.xml index 9144598..e5f07d1 100644 --- a/src/config/applicationContext.xml +++ b/src/config/applicationContext.xml @@ -14,7 +14,7 @@ http://www.springframework.org/schema/cache/spring-cache.xsd"> - + -- Gitee