diff --git a/src/com/api/attendance/browser/service/impl/KqxmBrowserService.java b/src/com/api/attendance/browser/service/impl/KqxmBrowserService.java index 5dd889c..f91f6fd 100644 --- a/src/com/api/attendance/browser/service/impl/KqxmBrowserService.java +++ b/src/com/api/attendance/browser/service/impl/KqxmBrowserService.java @@ -45,12 +45,13 @@ public class KqxmBrowserService extends BrowserService { sqlwhere = SqlUtils.replaceFirstAnd(sqlwhere); // 设置好搜索条件 - String backFields = " id ,mc "; + String backFields = " id ,mc as kqxmName"; String fromSql = " uf_jcl_kq_kqxm "; List cols = new ArrayList(); cols.add(new SplitTableColBean("true","id")); - cols.add(new SplitTableColBean("100%", SystemEnv.getHtmlLabelName(546742, user.getLanguage()),"mc","mc").setIsInputCol(BoolAttr.TRUE).setShowType(1)); +// cols.add(new SplitTableColBean("100%", SystemEnv.getHtmlLabelName(546742, user.getLanguage()),"mc","mc").setIsInputCol(BoolAttr.TRUE).setShowType(1)); + cols.add(new SplitTableColBean("100%", SystemEnv.getHtmlLabelName(546742, user.getLanguage()),"kqxmName","kqxmName").setIsInputCol(BoolAttr.TRUE).setShowType(1)); SplitTableBean tableBean = new SplitTableBean(backFields,fromSql,sqlwhere,"id","id","asc",cols); bs.writeLog("KqxmBrowserService params : " + params + ", tableBean : " + tableBean); diff --git a/src/com/engine/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.java b/src/com/engine/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.java index 75a6e10..c916ced 100644 --- a/src/com/engine/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.java +++ b/src/com/engine/attendance/workflow/action/askforleave/AskForLeaveWorkFlowSubmitAction.java @@ -153,6 +153,45 @@ public class AskForLeaveWorkFlowSubmitAction implements Action { } log.info("detailTable2 : [{}]", detailTable2); + /** + * 请假时长是否满足“请假类型”中单次最小休时长,由假期额度表和流程主表获取对比数据 + */ + String jqedSql = "select eddw, dczskxsc from uf_jcl_kq_jqed where jb = ?"; + Map jqedInfo = DbTools.getSqlToMap(jqedSql, jqlx); + //假期额度的额度单位,0-天、1-小时 + String eddw = Util.null2String(jqedInfo.get("eddw")); + String eddwValue = ""; + //单次最小休时长 + String minDuration = Util.null2String(jqedInfo.get("dczskxsc")); + //请假时长qjsc + String qjsc = Util.null2String(mainTableData.get("qjsc")); + //请假时长单位scdw,0-天、1-小时 + String scdw = Util.null2String(mainTableData.get("scdw")); + String scdwValue = ""; + if (!"".equals(eddw) && !"".equals(minDuration)) { + double minDurationValue = Double.parseDouble(minDuration); + if (eddw.equals(AccountingUnitEnum.DAY.getKey())) { + minDurationValue = minDurationValue * 8; + eddwValue = AccountingUnitEnum.DAY.getValue(); + } else { + eddwValue = AccountingUnitEnum.HOUR.getValue(); + } + double qjscValue = "".equals(qjsc) ? 0 : Double.parseDouble(qjsc); + if (scdw.equals(AccountingUnitEnum.DAY.getKey())) { + qjscValue = qjscValue * 8; + scdwValue = AccountingUnitEnum.DAY.getValue(); + } else { + scdwValue = AccountingUnitEnum.HOUR.getValue(); + } + + if (Double.compare(minDurationValue, qjscValue) > 0) { + String message = "请假时长" + qjsc + eddwValue + ",不能小于单次最小休时长" + minDuration + scdwValue; + log.error(message); + requestInfo.getRequestManager().setMessageid("11111" + requestid + "22222"); + requestInfo.getRequestManager().setMessagecontent(message); + return Action.FAILURE_AND_CONTINUE; + } + } //更新流程明细表2 String delteSql = "delete from " + detail2TableName + " where mainid=?"; DbTools.update(delteSql, requestid);