private static final Logger logger = LoggerFactory.getLogger(DayendSettleTask.class);
-// @Scheduled(cron="0 3/30 2-3 * * ? ")
- @Scheduled(cron="0 0/2 * * * ? ")
+ @Scheduled(cron="0 3/30 2-3 * * ? ")
+// @Scheduled(cron="0 0/2 * * * ? ")
public void doSettleTask() {
if (logger.isDebugEnabled()) logger.debug("进入日结算任务!");
import com.supwisdom.dlpay.framework.data.MerchBean;
import com.supwisdom.dlpay.framework.domain.TSubjectday;
import com.supwisdom.dlpay.framework.domain.TSubjectdayPK;
+import com.supwisdom.dlpay.system.bean.SubjectDayInfo;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
@Query(value = "select sum(sb.begindrbal) as begindrbal,sum(sb.begincrbal) as begincrbal,sum(sb.dramt) as dramt,sum(sb.cramt) as cramt,sum(sb.drbal) as drbal,sum(sb.crbal) as crbal " +
"from TB_SUBJECTDAY sb, TB_SUBJECT s " +
- "where sb.accdate =:accdate and sb.subjno=s.subjno and s.subjlevel=2 and s.fsubjno=:fsubjno ",nativeQuery = true)
+ "where sb.accdate =:accdate and sb.subjno=s.subjno and s.subjlevel=2 and s.fsubjno=:fsubjno ", nativeQuery = true)
FSubjectInfoBean getParentSumInfo(@Param("accdate") String accdate, @Param("fsubjno") String fsubjno);
@Query(value = "select sum(begindrbal) as begindrbal,sum(begincrbal) as begincrbal,sum(dramt) as dramt,sum(cramt) as cramt,sum(drbal) as drbal,sum(crbal) as crbal " +
"from tb_subjectday where accdate=:accdate and subjno in (select subjno from tb_subject where subjlevel=1) ", nativeQuery = true)
FSubjectInfoBean getAllParentSubjectSumInfo(@Param("accdate") String accdate);
+
+ @Query(value = "SELECT t.subjno AS subjno, t.subjname AS subjname,t.fsubjno AS fsubjno,t.subjlevel AS subjlevel,t.displayflag, " +
+ "a.begindrbal AS lastdaydrbal,a.begincrbal AS lastdaycrbal, " +
+ "b.dramt AS dramt,b.cramt AS cramt,c.drbal AS drbal,c.crbal AS crbal " +
+ "FROM tb_subject t " +
+ "left join (SELECT t1.subjno,t1.begindrbal,t1.begincrbal FROM tb_subjectday t1 WHERE t1.accdate = :startdate ) a on t.subjno=a.subjno " +
+ "left join (SELECT t2.subjno,SUM(t2.dramt) dramt,SUM(t2.cramt) cramt FROM tb_subjectday t2 WHERE t2.accdate>=:startdate and t2.accdate<=:enddate GROUP BY t2.subjno) b on t.subjno=b.subjno " +
+ "left join (SELECT t3.subjno, t3.drbal, t3.crbal FROM tb_subjectday t3 WHERE t3.accdate = :enddate) c on t.subjno=c.subjno " +
+ "ORDER BY t.subjno asc ", nativeQuery = true)
+ List<SubjectDayInfo> getAllTSubjectday(@Param("startdate") String startdate, @Param("enddate") String enddate);
}
--- /dev/null
+package com.supwisdom.dlpay.system.bean;
+
+public interface SubjectDayInfo {
+ String getSubjno();
+
+ String getSubjname();
+
+ String getFsubjno();
+
+ Integer getSubjlevel();
+
+ String getDisplayflag();
+
+ Double getLastdaydrbal();
+
+ Double getLastdaycrbal();
+
+ Double getDramt();
+
+ Double getCramt();
+
+ Double getDrbal();
+
+ Double getCrbal();
+}
--- /dev/null
+package com.supwisdom.dlpay.system.bean;
+
+public class SubjectDayShowBean {
+ private String subjno;
+ private String subjname;
+ private String fsubjno;
+ private Integer subjlevel;
+ private String displayflag;
+ private Double lastdaydrbal;
+ private Double lastdaycrbal;
+ private Double dramt;
+ private Double cramt;
+ private Double drbal;
+ private Double crbal;
+
+ public String getSubjno() {
+ return subjno;
+ }
+
+ public void setSubjno(String subjno) {
+ this.subjno = subjno;
+ }
+
+ public String getSubjname() {
+ return subjname;
+ }
+
+ public void setSubjname(String subjname) {
+ this.subjname = subjname;
+ }
+
+ public String getFsubjno() {
+ return fsubjno;
+ }
+
+ public void setFsubjno(String fsubjno) {
+ this.fsubjno = fsubjno;
+ }
+
+ public Integer getSubjlevel() {
+ return subjlevel;
+ }
+
+ public void setSubjlevel(Integer subjlevel) {
+ this.subjlevel = subjlevel;
+ }
+
+ public String getDisplayflag() {
+ return displayflag;
+ }
+
+ public void setDisplayflag(String displayflag) {
+ this.displayflag = displayflag;
+ }
+
+ public Double getLastdaydrbal() {
+ return lastdaydrbal;
+ }
+
+ public void setLastdaydrbal(Double lastdaydrbal) {
+ this.lastdaydrbal = lastdaydrbal;
+ }
+
+ public Double getLastdaycrbal() {
+ return lastdaycrbal;
+ }
+
+ public void setLastdaycrbal(Double lastdaycrbal) {
+ this.lastdaycrbal = lastdaycrbal;
+ }
+
+ public Double getDramt() {
+ return dramt;
+ }
+
+ public void setDramt(Double dramt) {
+ this.dramt = dramt;
+ }
+
+ public Double getCramt() {
+ return cramt;
+ }
+
+ public void setCramt(Double cramt) {
+ this.cramt = cramt;
+ }
+
+ public Double getDrbal() {
+ return drbal;
+ }
+
+ public void setDrbal(Double drbal) {
+ this.drbal = drbal;
+ }
+
+ public Double getCrbal() {
+ return crbal;
+ }
+
+ public void setCrbal(Double crbal) {
+ this.crbal = crbal;
+ }
+}
--- /dev/null
+package com.supwisdom.dlpay.system.controller;
+
+import com.supwisdom.dlpay.api.bean.JsonResult;
+import com.supwisdom.dlpay.framework.domain.TSubject;
+import com.supwisdom.dlpay.framework.util.DateUtil;
+import com.supwisdom.dlpay.framework.util.PageResult;
+import com.supwisdom.dlpay.framework.util.StringUtil;
+import com.supwisdom.dlpay.system.bean.SubjectDayShowBean;
+import com.supwisdom.dlpay.system.service.SettleReportService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+@Controller
+public class SettleReportController {
+ @Autowired
+ private SettleReportService settleReportService;
+
+ /**
+ * ====================================================
+ * 科目日结表
+ * ====================================================
+ */
+ @GetMapping("/report/subjectday")
+ public String subjectdayReport(ModelMap map) {
+ String settledate = settleReportService.getSystemSettledate();
+ map.addAttribute("maxdate", DateUtil.parseToDateFormat(DateUtil.getNewDay(settledate, -1)));
+ return "system/report/subjectday";
+ }
+
+ @GetMapping("/report/subjectdaylist")
+ @PreAuthorize("hasPermission('/report/subjectday','')")
+ @ResponseBody
+ public PageResult<SubjectDayShowBean> getSubjectdayData(@RequestParam(value = "startdate",required = false) String startdate,
+ @RequestParam(value = "enddate",required = false) String enddate,
+ @RequestParam(value = "nodealshow", required = false, defaultValue = "false") Boolean noDealShow) {
+ try {
+ if (StringUtil.isEmpty(startdate) || StringUtil.isEmpty(enddate)) {
+ return new PageResult<>(99, "请选择时间段");
+ } else if (!DateUtil.checkDatetimeValid(DateUtil.unParseToDateFormat(startdate), "yyyyMMdd")) {
+ return new PageResult<>(99, "起始时间非法");
+ } else if (!DateUtil.checkDatetimeValid(DateUtil.unParseToDateFormat(enddate), "yyyyMMdd")) {
+ return new PageResult<>(99, "截止时间非法");
+ }
+ return settleReportService.getSubjectDayInfos(DateUtil.unParseToDateFormat(startdate), DateUtil.unParseToDateFormat(enddate), noDealShow);
+ } catch (Exception e) {
+ e.printStackTrace();
+ return new PageResult<>(99, "系统查询错误");
+ }
+ }
+
+
+}
--- /dev/null
+package com.supwisdom.dlpay.system.service;
+
+import com.supwisdom.dlpay.framework.util.PageResult;
+import com.supwisdom.dlpay.system.bean.SubjectDayShowBean;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
+
+public interface SettleReportService {
+ @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class, readOnly = true)
+ String getSystemSettledate();
+
+ @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class, readOnly = true)
+ PageResult<SubjectDayShowBean> getSubjectDayInfos(String startdate,String enddate, boolean nodealshow);
+}
--- /dev/null
+package com.supwisdom.dlpay.system.service.impl;
+
+import com.supwisdom.dlpay.framework.dao.SettleCtlDao;
+import com.supwisdom.dlpay.framework.dao.SubjectdayDao;
+import com.supwisdom.dlpay.framework.domain.TSettlectl;
+import com.supwisdom.dlpay.framework.util.DateUtil;
+import com.supwisdom.dlpay.framework.util.MoneyUtil;
+import com.supwisdom.dlpay.framework.util.PageResult;
+import com.supwisdom.dlpay.framework.util.StringUtil;
+import com.supwisdom.dlpay.system.bean.SubjectDayInfo;
+import com.supwisdom.dlpay.system.bean.SubjectDayShowBean;
+import com.supwisdom.dlpay.system.service.SettleReportService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Service
+public class SettleReportServiceImpl implements SettleReportService {
+ @Autowired
+ private SubjectdayDao subjectdayDao;
+ @Autowired
+ private SettleCtlDao settleCtlDao;
+
+ @Override
+ public String getSystemSettledate() {
+ TSettlectl settlectl = settleCtlDao.getOne(1);
+ if (null != settlectl && null != settlectl.getSettledate()) {
+ return settlectl.getSettledate().toString();
+ }
+ return DateUtil.getNow("yyyyMMdd");
+ }
+
+ @Override
+ public PageResult<SubjectDayShowBean> getSubjectDayInfos(String startdate, String enddate, boolean nodealshow) {
+ List<SubjectDayInfo> list = subjectdayDao.getAllTSubjectday(startdate, enddate);
+ if (StringUtil.isEmpty(list)) {
+ return new PageResult<>(99, "无数据");
+ }
+
+ List<SubjectDayShowBean> result = new ArrayList<>(0);
+ for (SubjectDayInfo info : list) {
+ SubjectDayShowBean bean = new SubjectDayShowBean();
+ bean.setSubjno(info.getSubjno());
+ bean.setSubjname(info.getSubjname());
+ bean.setFsubjno(info.getFsubjno() == null ? "-1" : info.getFsubjno());
+ bean.setSubjlevel(info.getSubjlevel());
+ bean.setDisplayflag(info.getDisplayflag());
+ bean.setLastdaydrbal(info.getLastdaydrbal() == null ? 0.00 : info.getLastdaydrbal());
+ bean.setLastdaycrbal(info.getLastdaycrbal() == null ? 0.00 : info.getLastdaycrbal());
+ bean.setDramt(info.getDramt() == null ? 0.00 : info.getDramt());
+ bean.setCramt(info.getCramt() == null ? 0.00 : info.getCramt());
+ bean.setDrbal(info.getDrbal() == null ? 0.00 : info.getDrbal());
+ bean.setCrbal(info.getCrbal() == null ? 0.00 : info.getCrbal());
+ if (bean.getLastdaydrbal() == 0 && bean.getLastdaycrbal() == 0 && bean.getDramt() == 0 && bean.getCramt() == 0 && bean.getDrbal() == 0 && bean.getCrbal() == 0) {
+ //无交易记录
+ if (nodealshow && "y".equals(bean.getDisplayflag())) {
+ result.add(bean); //显示
+ } else {
+ continue;
+ }
+ } else {
+ result.add(bean);
+ }
+ }
+ return new PageResult<SubjectDayShowBean>(result);
+ }
+}
.treeTable-icon.open .layui-icon-triangle-d:before {
content: "\e625";
+ background-color: transparent;
}
if (!treetable.checkParam(param)) {
return;
}
- var doneCallback = param.done;
// 获取数据
+ if (param.data) {
+ treetable.init(param, param.data);
+ } else {
+ $.getJSON(param.url, param.where, function (res) {
+ treetable.init(param, res.data);
+ });
+ }
+ },
+ // 渲染表格
+ init: function (param, data) {
var mData = [];
- $.getJSON(param.url, param.where, function (res) {
- var tNodes = res.data;
- // 补上id和pid字段
- for (var i = 0; i < tNodes.length; i++) {
- var tt = tNodes[i];
- if (!tt.id) {
- if (!param.treeIdName) {
- layer.msg('参数treeIdName不能为空', {icon: 5});
- return;
- }
- tt.id = tt[param.treeIdName];
+ var doneCallback = param.done;
+ var tNodes = data;
+ // 补上id和pid字段
+ for (var i = 0; i < tNodes.length; i++) {
+ var tt = tNodes[i];
+ if (!tt.id) {
+ if (!param.treeIdName) {
+ layer.msg('参数treeIdName不能为空', {icon: 5});
+ return;
}
- if (!tt.pid) {
- if (!param.treePidName) {
- layer.msg('参数treePidName不能为空', {icon: 5});
- return;
- }
- tt.pid = tt[param.treePidName];
+ tt.id = tt[param.treeIdName];
+ }
+ if (!tt.pid) {
+ if (!param.treePidName) {
+ layer.msg('参数treePidName不能为空', {icon: 5});
+ return;
}
+ tt.pid = tt[param.treePidName];
}
+ }
- // 对数据进行排序
- var sort = function (s_pid, data) {
- for (var i = 0; i < data.length; i++) {
- if (data[i].pid == s_pid) {
- var len = mData.length;
- if (len > 0 && mData[len - 1].id == s_pid) {
- mData[len - 1].isParent = true;
- }
- mData.push(data[i]);
- sort(data[i].id, data);
+ // 对数据进行排序
+ var sort = function (s_pid, data) {
+ for (var i = 0; i < data.length; i++) {
+ if (data[i].pid == s_pid) {
+ var len = mData.length;
+ if (len > 0 && mData[len - 1].id == s_pid) {
+ mData[len - 1].isParent = true;
}
+ mData.push(data[i]);
+ sort(data[i].id, data);
}
- };
- sort(param.treeSpid, tNodes);
+ }
+ };
+ sort(param.treeSpid, tNodes);
- // 重写参数
- param.url = undefined;
- param.data = mData;
- param.page = {
- count: param.data.length,
- limit: param.data.length
- };
- param.cols[0][param.treeColIndex].templet = function (d) {
- var mId = d.id;
- var mPid = d.pid;
- var isDir = d.isParent;
- var emptyNum = treetable.getEmptyNum(mPid, mData);
- var iconHtml = '';
- for (var i = 0; i < emptyNum; i++) {
- iconHtml += '<span class="treeTable-empty"></span>';
- }
+ // 重写参数
+ param.url = undefined;
+ param.data = mData;
+ param.page = {
+ count: param.data.length,
+ limit: param.data.length
+ };
+ param.cols[0][param.treeColIndex].templet = function (d) {
+ var mId = d.id;
+ var mPid = d.pid;
+ var isDir = d.isParent;
+ var showIcon = true;
+ if (undefined != param.showicon && (param.showicon == true || param.showicon == false)) {
+ showIcon = param.showicon;
+ }
+ var emptyNum = treetable.getEmptyNum(mPid, mData);
+ var iconHtml = '';
+ for (var i = 0; i < emptyNum; i++) {
+ iconHtml += '<span class="treeTable-empty"></span>';
+ }
+ if (showIcon) {
if (isDir) {
iconHtml += '<i class="layui-icon layui-icon-triangle-d"></i> <i class="layui-icon layui-icon-layer"></i>';
} else {
iconHtml += '<i class="layui-icon layui-icon-file"></i>';
}
- iconHtml += ' ';
- var ttype = isDir ? 'dir' : 'file';
- var vg = '<span class="treeTable-icon open" lay-tid="' + mId + '" lay-tpid="' + mPid + '" lay-ttype="' + ttype + '">';
- return vg + iconHtml + d[param.cols[0][param.treeColIndex].field] + '</span>'
- };
+ }
+ iconHtml += ' ';
+ var ttype = isDir ? 'dir' : 'file';
+ var vg = '<span class="treeTable-icon open" lay-tid="' + mId + '" lay-tpid="' + mPid + '" lay-ttype="' + ttype + '">';
+ return vg + iconHtml + d[param.cols[0][param.treeColIndex].field] + '</span>'
+ };
- param.done = function (res, curr, count) {
- $(param.elem).next().addClass('treeTable');
- $('.treeTable .layui-table-page').css('display', 'none');
- $(param.elem).next().attr('treeLinkage', param.treeLinkage);
- // 绑定事件换成对body绑定
- /*$('.treeTable .treeTable-icon').click(function () {
- treetable.toggleRows($(this), param.treeLinkage);
- });*/
- if (param.treeDefaultClose) {
- treetable.foldAll(param.elem);
- }
- if (doneCallback) {
- doneCallback(res, curr, count);
- }
- };
+ param.done = function (res, curr, count) {
+ $(param.elem).next().addClass('treeTable');
+ $('.treeTable .layui-table-page').css('display', 'none');
+ $(param.elem).next().attr('treeLinkage', param.treeLinkage);
+ // 绑定事件换成对body绑定
+ /*$('.treeTable .treeTable-icon').click(function () {
+ treetable.toggleRows($(this), param.treeLinkage);
+ });*/
+ if (param.treeDefaultClose) {
+ treetable.foldAll(param.elem);
+ }
+ if (doneCallback) {
+ doneCallback(res, curr, count);
+ }
+ };
- // 渲染表格
- table.render(param);
- });
+ // 渲染表格
+ table.render(param);
},
// 计算缩进的数量
getEmptyNum: function (pid, data) {
--- /dev/null
+<div class="layui-card">
+ <div class="layui-card-header">
+ <h2 class="header-title">科目汇总表</h2>
+ <span class="layui-breadcrumb pull-right">
+ <a href="#">结算中心</a>
+ <a><cite>科目汇总表</cite></a>
+ </span>
+ </div>
+ <div class="layui-card-body">
+ <div class="layui-form" lay-filter="subjectday-search-form">
+ <input type="hidden" id="subjectday-hidden-maxdate" th:value="${maxdate}" />
+ <div class="layui-form-item" style="margin-bottom: 0;">
+ <div class="layui-inline">
+ <label class="layui-form-label">记账日期</label>
+ <div class="layui-input-inline">
+ <input type="text" name="startdate" id="subjectday-search-startdate" placeholder="起始日期" th:value="${maxdate}"
+ autocomplete="off" class="layui-input"/>
+ </div>
+ <div class="layui-form-mid">-</div>
+ <div class="layui-input-inline">
+ <input type="text" name="enddate" id="subjectday-search-enddate" placeholder="截止日期" th:value="${maxdate}"
+ autocomplete="off" class="layui-input"/>
+ </div>
+ </div>
+
+ <div class="layui-inline">
+ <div class="layui-input-block" style="margin-left: 0;">
+ <input type="checkbox" name="nodealshow" id="subjectday-search-nodealshow" lay-skin="primary" title="显示未交易科目"/>
+ </div>
+ </div>
+
+ <div class="layui-inline">
+ <button id="subjectday-search-btn" class="layui-btn icon-btn" data-type="search"><i
+ class="layui-icon"></i>搜索
+ </button>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="layui-card-body">
+ <!--<div class="layui-btn-group">-->
+ <!--<button class="layui-btn" id="btn-fold-subjectday">仅看一级</button>-->
+ <!--<button class="layui-btn" id="btn-expand-subjectday">查看二级</button>-->
+ <!--</div>-->
+ <table class="layui-table" id="subjectDayTable" lay-filter="subjectDayTable-filter"></table>
+ </div>
+</div>
+
+<script type="text/html" id="subjectday-toolbar">
+ <div class="layui-btn-container">
+ <button class="layui-btn layui-btn-sm" id="btn-fold-subjectday" lay-event="subjectdayShowFold">仅看一级</button>
+ <button class="layui-btn layui-btn-sm" id="btn-expand-subjectday" lay-event="subjectdayExpandAll">查看二级</button>
+ </div>
+</script>
+
+<script>
+ layui.use(['form', 'table', 'layer', 'admin', 'element', 'laydate', 'treetable'], function () {
+ var form = layui.form;
+ var table = layui.table;
+ var admin = layui.admin;
+ var laydate = layui.laydate;
+ var treetable = layui.treetable;
+
+ form.render("checkbox");
+ laydate.render({
+ elem: '#subjectday-search-startdate',
+ max: $("#subjectday-hidden-maxdate").val()
+ });
+ laydate.render({
+ elem: '#subjectday-search-enddate',
+ max: $("#subjectday-hidden-maxdate").val()
+ });
+
+ var renderTable = function (obj) {
+ layer.load(2);
+ treetable.render({
+ id: 'subjectDayReport',
+ title: '科目汇总表',
+ treeColIndex: 0,
+ treeSpid: '-1',
+ treeIdName: 'subjno',
+ treePidName: 'fsubjno',
+ treeDefaultClose: false,
+ treeLinkage: false,
+ elem: '#subjectDayTable',
+ url: '/report/subjectdaylist',
+ page: false,
+ where: obj,
+ showicon: false,
+ toolbar:'#subjectday-toolbar',
+ cols: [
+ [
+ {field: 'subjno', title: '科目号', align: 'left', rowspan: 2},
+ {
+ field: 'subjname', title: '科目名称', align: 'left', rowspan: 2, templet: function (d) {
+ if (d.subjlevel == 1) {
+ return '<span>' + d.subjname + '</span>';
+ } else {
+ return '<span> ' + d.subjname + '</span>';
+ }
+
+ }
+ },
+ {align: 'center', title: '期初余额', colspan: 2},
+ {align: 'center', title: '本期发生额', colspan: 2},
+ {align: 'center', title: '期末余额', colspan: 2}
+ ], [
+ {field: 'lastdaydrbal', title: '借方', align: 'center'},
+ {field: 'lastdaycrbal', title: '贷方', align: 'center'},
+ {field: 'dramt', title: '借方', align: 'center'},
+ {field: 'cramt', title: '贷方', align: 'center'},
+ {field: 'drbal', title: '借方', align: 'center'},
+ {field: 'crbal', title: '贷方', align: 'center'}
+ ]
+ ],
+ done: function (res, curr, count) {
+ layer.closeAll('loading');
+ }
+ });
+ }
+ renderTable({
+ startdate: $("#subjectday-search-startdate").val(),
+ enddate: $("#subjectday-search-enddate").val(),
+ nodealshow: false
+ });
+
+ $('#btn-expand-subjectday').click(function () {
+ treetable.expandAll('#subjectDayTable');
+ });
+
+ $('#btn-fold-subjectday').click(function () {
+ treetable.foldAll('#subjectDayTable');
+ });
+
+ $('#subjectday-search-btn').click(function () {
+ var startdate = $("#subjectday-search-startdate").val();
+ var enddate = $("#subjectday-search-enddate").val();
+ var nodealshow = $("#subjectday-search-nodealshow").is(':checked');
+ if (null == startdate || "" == $.trim(startdate)) {
+ layer.msg('请选择起始日期', {icon: 2, time: 1500});
+ return;
+ }
+ if (null == enddate || "" == $.trim(enddate)) {
+ layer.msg('请选择截止日期', {icon: 2, time: 1500});
+ return;
+ }
+ renderTable({
+ startdate: startdate,
+ enddate: enddate,
+ nodealshow: nodealshow
+ });
+ });
+
+ table.on('toolbar(subjectDayTable-filter)', function(obj){
+ switch(obj.event){
+ case 'subjectdayShowFold':
+ treetable.foldAll('#subjectDayTable');
+ break;
+ case 'subjectdayExpandAll':
+ treetable.expandAll('#subjectDayTable');
+ break;
+ }
+ });
+ });
+</script>
\ No newline at end of file