Search in sources :

Example 1 with Library

use of com.cas.sim.tis.entity.Library in project TeachingInSimulation by ScOrPiOzzy.

the class LibraryList method modify.

private void modify(int id) {
    Library library = SpringUtil.getBean(LibraryAction.class).findLibraryByID(id);
    Dialog<Library> dialog = new Dialog<>();
    dialog.setDialogPane(new LibraryModifyDialog(library));
    dialog.setTitle(MsgUtil.getMessage("library.name"));
    dialog.setPrefSize(635, 320);
    dialog.showAndWait().ifPresent(lib -> {
        if (lib == null) {
            return;
        }
        try {
            SpringUtil.getBean(LibraryAction.class).modifyLibrary(lib);
            AlertUtil.showAlert(AlertType.INFORMATION, MsgUtil.getMessage("alert.information.data.update.success"));
            pagination.reload();
        } catch (Exception e) {
            e.printStackTrace();
            AlertUtil.showAlert(AlertType.ERROR, e.getMessage());
        }
    });
}
Also used : Dialog(com.cas.sim.tis.view.control.imp.dialog.Dialog) Library(com.cas.sim.tis.entity.Library) IOException(java.io.IOException) LibraryAction(com.cas.sim.tis.action.LibraryAction)

Example 2 with Library

use of com.cas.sim.tis.entity.Library in project TeachingInSimulation by ScOrPiOzzy.

the class LibraryList method reload.

private void reload(Integer pageIndex) {
    int pageSize = 10;
    PageInfo<Library> pageInfo = SpringUtil.getBean(LibraryAction.class).findLibraryByType(pageIndex + 1, pageSize, menuType.getLibraryType().getType());
    if (pageInfo == null) {
        pagination.setPageCount(0);
        table.setItems(null);
        table.build();
    } else {
        pagination.setPageCount((int) pageInfo.getPages());
        JSONArray array = new JSONArray();
        array.addAll(pageInfo.getList());
        table.setItems(array);
        table.build();
    }
}
Also used : JSONArray(com.alibaba.fastjson.JSONArray) Library(com.cas.sim.tis.entity.Library) LibraryAction(com.cas.sim.tis.action.LibraryAction)

Example 3 with Library

use of com.cas.sim.tis.entity.Library in project TeachingInSimulation by ScOrPiOzzy.

the class LibraryServiceImpl method findLibraryByType.

@Override
public List<Library> findLibraryByType(int type, String key) {
    Condition condition = new Condition(Library.class);
    Criteria criteria = condition.createCriteria();
    criteria.andEqualTo("type", type);
    criteria.andEqualTo("del", 0);
    if (!StringUtils.isEmpty(key)) {
        criteria.andLike("name", "%" + key + "%");
    }
    List<Library> result = findByCondition(condition);
    if (result == null) {
        return new ArrayList<>();
    } else {
        return result;
    }
}
Also used : Condition(tk.mybatis.mapper.entity.Condition) ArrayList(java.util.ArrayList) Criteria(tk.mybatis.mapper.entity.Example.Criteria) Library(com.cas.sim.tis.entity.Library)

Example 4 with Library

use of com.cas.sim.tis.entity.Library in project TeachingInSimulation by ScOrPiOzzy.

the class LibraryServiceImpl method findLibraryByType.

@Override
public PageInfo<Library> findLibraryByType(int pageIndex, int pageSize, int type) {
    Condition condition = new Condition(Library.class);
    Criteria criteria = condition.createCriteria();
    criteria.andEqualTo("type", type);
    criteria.andEqualTo("del", 0);
    PageHelper.startPage(pageIndex, pageSize);
    List<Library> result = findByCondition(condition);
    PageInfo<Library> page = new PageInfo<Library>(result);
    LOG.info("成功查找到{}条资源,当前页码{},每页{}条资源,共{}页", result.size(), pageIndex, pageSize, page.getPages());
    return page;
}
Also used : Condition(tk.mybatis.mapper.entity.Condition) PageInfo(com.github.pagehelper.PageInfo) Criteria(tk.mybatis.mapper.entity.Example.Criteria) Library(com.cas.sim.tis.entity.Library)

Example 5 with Library

use of com.cas.sim.tis.entity.Library in project TeachingInSimulation by ScOrPiOzzy.

the class QuestionServiceImpl method addQuestions.

@Override
public void addQuestions(int rid, List<Question> questions) {
    // 1.获取事务控制管理器
    DataSourceTransactionManager transactionManager = SpringUtil.getBean(DataSourceTransactionManager.class);
    // 2.获取事务定义
    DefaultTransactionDefinition def = new DefaultTransactionDefinition();
    // 3.设置事务隔离级别,开启新事务
    def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
    // 4.获得事务状态
    TransactionStatus status = transactionManager.getTransaction(def);
    try {
        int count = save(questions);
        Library library = libraryService.findById(rid);
        library.setNum(count);
        libraryService.update(library);
        transactionManager.commit(status);
    } catch (Exception e) {
        e.printStackTrace();
        transactionManager.rollback(status);
    }
}
Also used : DefaultTransactionDefinition(org.springframework.transaction.support.DefaultTransactionDefinition) TransactionStatus(org.springframework.transaction.TransactionStatus) Library(com.cas.sim.tis.entity.Library) DataSourceTransactionManager(org.springframework.jdbc.datasource.DataSourceTransactionManager)

Aggregations

Library (com.cas.sim.tis.entity.Library)9 LibraryAction (com.cas.sim.tis.action.LibraryAction)4 JSONArray (com.alibaba.fastjson.JSONArray)2 LibraryService (com.cas.sim.tis.services.LibraryService)2 ArrayList (java.util.ArrayList)2 Condition (tk.mybatis.mapper.entity.Condition)2 Criteria (tk.mybatis.mapper.entity.Example.Criteria)2 QuestionAction (com.cas.sim.tis.action.QuestionAction)1 Question (com.cas.sim.tis.entity.Question)1 Dialog (com.cas.sim.tis.view.control.imp.dialog.Dialog)1 PageInfo (com.github.pagehelper.PageInfo)1 IOException (java.io.IOException)1 DataSourceTransactionManager (org.springframework.jdbc.datasource.DataSourceTransactionManager)1 TransactionStatus (org.springframework.transaction.TransactionStatus)1 DefaultTransactionDefinition (org.springframework.transaction.support.DefaultTransactionDefinition)1