<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
    <th:block th:include="include :: header('新增请假申请')" />
    <th:block th:include="include :: datetimepicker-css" />
</head>
<body class="white-bg">
    <div class="wrapper wrapper-content animated fadeInRight ibox-content">
        <form class="form-horizontal m" id="form-leave-add">
            <!--<div class="form-group">
                <label class="col-sm-3 control-label">请假类型：</label>
                <div class="col-sm-8">
                    <select name="type" class="form-control m-b" th:with="type=${@dict.getType('biz_leave_type')}">
                        <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
                    </select>
                </div>
            </div>-->
            <div class="form-group">
                <label class="col-sm-3 control-label"><span style="color: red; ">*</span>标题：</label>
                <div class="col-sm-8">
                    <input name="title" class="form-control" type="text" required>
                </div>
            </div>
            <div class="form-group">
                <label class="col-sm-3 control-label"><span style="color: red; ">*</span>原因：</label>
                <div class="col-sm-8">
                    <textarea name="reason" class="form-control" required></textarea>
                </div>
            </div>
            <div class="form-group">
                <label class="col-sm-3 control-label"><span style="color: red; ">*</span>开始时间：</label>
                <div class="col-sm-8">
                    <div class="input-group date">
                        <span class="input-group-addon"><i class="fa fa-calendar"></i></span>
                        <input name="startTime" class="form-control calcTotalSecondInput" placeholder="yyyy-MM-dd HH:mm" type="text" required>
                    </div>
                </div>
            </div>
            <div class="form-group">
                <label class="col-sm-3 control-label"><span style="color: red; ">*</span>结束时间：</label>
                <div class="col-sm-8">
                    <div class="input-group date">
                        <span class="input-group-addon"><i class="fa fa-calendar"></i></span>
                        <input name="endTime" class="form-control calcTotalSecondInput" placeholder="yyyy-MM-dd HH:mm" type="text" required>
                    </div>
                </div>
            </div>
            <div class="form-group">
                <label class="col-sm-3 control-label">请假时长：</label>
                <div class="col-sm-8">
                    <input name="totalTime" class="form-control" type="text" style="display: none;">
                    <input name="totalTimeText" class="form-control" type="text" readonly>
                </div>
            </div>
        </form>
    </div>
    <th:block th:include="include :: footer" />
    <th:block th:include="include :: datetimepicker-js" />
    <script th:src="@{/js/activiti.js}"></script>
    <script th:inline="javascript">
        var prefix = ctx + "leave"
        $("#form-leave-add").validate({
            focusCleanup: true
        });

        function submitHandler() {
            if ($.validate.form() && validateStartTimeAndEndTime()) {
                $.operate.save(prefix + "/add", $('#form-leave-add').serialize());
            }
        }

        $("input[name='startTime']").datetimepicker({
            autoclose: true,
            startDate: new Date()
        });

        $("input[name='endTime']").datetimepicker({
            autoclose: true,
            startDate: new Date()
        });

        // 监听开始和结束日期填写，动态生成请假时长
        $('.calcTotalSecondInput').change(function () {
            if (!$('input[name="startTime"]').val() || !$('input[name="endTime"]').val()) {
               return;
            }
            if (validateStartTimeAndEndTime()) {
                var totalSecond = calcTotalSecond($('input[name="startTime"]').val(), $('input[name="endTime"]').val());
                $('input[name="totalTime"]').val(totalSecond);
                var dateSub = formatTotalDateSub(totalSecond);
                $('input[name="totalTimeText"]').val(dateSub);
            }
        });

        function validateStartTimeAndEndTime() {
            if ($('input[name="startTime"]').val() >= $('input[name="endTime"]').val()) {
                $.modal.alertWarning("结束时间必须大于开始时间");
                return false;
            }
            return true;
        }
    </script>
</body>
</html>
