|
@@ -0,0 +1,587 @@
|
|
|
+(function () {
|
|
|
+ let attendanceIndex = ''
|
|
|
+ let isTimes = []
|
|
|
+ var addDataThat = null;
|
|
|
+ let viewState = z.ui.comm.getUrlParam("_o");
|
|
|
+ let read = z.ui.comm.getUrlParam("read");
|
|
|
+ window.onload = function (ex) {
|
|
|
+ let timeObject = document.querySelector('#timeObject')
|
|
|
+ let arrays = JSON.parse(timeObject.value)
|
|
|
+ let attendanceType = document.querySelector('.attendance-type-show')
|
|
|
+ let tbodyBoss = document.querySelector('.tbody')
|
|
|
+ var lists = []
|
|
|
+ var trFragment = document.createDocumentFragment();
|
|
|
+ z.ui.select("[name='createReqVO$leaveType']").bindEvents({
|
|
|
+ onAfterSelect: function (value, data) {
|
|
|
+ lists = []
|
|
|
+ attendanceIndex = value
|
|
|
+ if (value == '81') {
|
|
|
+ attendanceType.style = 'display:flex !important'
|
|
|
+ tbodyBoss.innerHTML = ''
|
|
|
+ } else {
|
|
|
+ attendanceType.style = 'display:none'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ // z.ui.date("[name='createReqVO$createTime']").setValue(getDate());
|
|
|
+ addDataThat = $("#addData")
|
|
|
+ $("#addData").click(function () {
|
|
|
+ addDataThat.attr('disabled', "true");
|
|
|
+ var dataObj = {}
|
|
|
+ let listsLength = lists.length
|
|
|
+ if (arrays.length > 0) {
|
|
|
+ listsLength = arrays.length + lists.length
|
|
|
+ }
|
|
|
+ if (attendanceIndex == '81') {
|
|
|
+ if (listsLength > 0) {
|
|
|
+ z.ui.alertWarning("哺乳假只能申请一条")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ trFragment.appendChild(generateTableTrHtml(listsLength))
|
|
|
+ $(".tbody").append(trFragment)
|
|
|
+ let timeObj = {
|
|
|
+ index: listsLength,
|
|
|
+ startTime: "",
|
|
|
+ endTime: '',
|
|
|
+ }
|
|
|
+ timeSelector({
|
|
|
+ ele: ".startTimeRange" + listsLength,
|
|
|
+ name: "LeaveTimeDO[" + listsLength + "]$startTimeRange",
|
|
|
+ callback: function (val) {
|
|
|
+ let startDate = z.ui.laydate("[name='LeaveTimeDO[" + listsLength + "]$startTime']").getValue();
|
|
|
+ if (!startDate) {
|
|
|
+ $("[name='LeaveTimeDO[" + listsLength + "]$startTimeRange']").find("input").val("");
|
|
|
+ z.ui.alertWarning("请先选择起始日期!")
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ timeObj.startTime = Date.parse(startDate + " " + val);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ timeSelector({
|
|
|
+ ele: ".endTimeRange" + listsLength,
|
|
|
+ name: "LeaveTimeDO[" + listsLength + "]$endTimeRange",
|
|
|
+ callback: function (val) {
|
|
|
+ let endDate = z.ui.laydate("[name='LeaveTimeDO[" + listsLength + "]$endTime']").getValue();
|
|
|
+ if (!endDate) {
|
|
|
+ $("[name='LeaveTimeDO[" + listsLength + "]$endTimeRange']").find("input").val("");
|
|
|
+ z.ui.alertWarning("请先选择截止日期!")
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ let endTime = Date.parse(endDate + " " + val);
|
|
|
+ if (endTime <= timeObj.startTime) {
|
|
|
+ z.ui.alertWarning("截止时间必须大于起始时间!")
|
|
|
+ $("[name='LeaveTimeDO[" + listsLength + "]$endTimeRange']").find("input").val("");
|
|
|
+ z.ui.laydate("[name='LeaveTimeDO[" + listsLength + "]$endTime']").setValue('');
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ timeObj.endTime = endTime
|
|
|
+ if (isTimes[listsLength]) {
|
|
|
+ isTimes[listsLength].startTime = timeObj.startTime;
|
|
|
+ isTimes[listsLength].endTime = timeObj.endTime;
|
|
|
+ } else {
|
|
|
+ isTimes.push(timeObj);
|
|
|
+ }
|
|
|
+ whereIsTimes()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ $("#editBtn_" + listsLength).click(function () {
|
|
|
+ const span = $(this).find("span");
|
|
|
+ const html = span.html();
|
|
|
+ if (html === '编辑') {
|
|
|
+ span.html('保存')
|
|
|
+ detailWrite(listsLength);
|
|
|
+ addDataThat.attr('disabled', "true");
|
|
|
+ $("#qjsj_" + listsLength).removeClass("form-table-disable")
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (html === '保存') {
|
|
|
+ span.html('编辑')
|
|
|
+ detailReadonly(listsLength, false)
|
|
|
+ addDataThat.removeAttr('disabled')
|
|
|
+ $("#qjsj_" + listsLength).addClass("form-table-disable")
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ $("#delBtn_" + listsLength).click(function () {
|
|
|
+ var index = this.id.substring(this.id.indexOf("_") + 1)
|
|
|
+ z.ui.confirm("compid").init({
|
|
|
+ content: "确定删除吗?",
|
|
|
+ onConfirm: function () {
|
|
|
+ var element = document.getElementById("qjsj_" + index);
|
|
|
+ element.remove();
|
|
|
+ buildQjsjSeq();
|
|
|
+ addDataThat.removeAttr('disabled')
|
|
|
+ },
|
|
|
+ onCancel: function () {
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ })
|
|
|
+ z.ui.date("[name='LeaveTimeDO[" + listsLength + "]$startTime']").init({
|
|
|
+ type: 'date',
|
|
|
+ format: 'yyyy-MM-dd',
|
|
|
+ done: function (value, date, endDate) {
|
|
|
+ debugger
|
|
|
+ //改变日期后触发
|
|
|
+ z.ui.laydate("[name='LeaveTimeDO[" + listsLength + "]$startTime']").setValue('');
|
|
|
+ $("[name='LeaveTimeDO[" + listsLength + "]$endTimeRange']").find("input").val("");
|
|
|
+ z.ui.laydate("[name='LeaveTimeDO[" + listsLength + "]$endTime']").setValue('');
|
|
|
+ }
|
|
|
+ })
|
|
|
+ z.ui.date("[name='LeaveTimeDO[" + listsLength + "]$endTime']").init({
|
|
|
+ type: 'date',
|
|
|
+ format: 'yyyy-MM-dd',
|
|
|
+ done: function (value, date, endDate) {
|
|
|
+ debugger
|
|
|
+ //改变日期后触发
|
|
|
+ z.ui.laydate("[name='LeaveTimeDO[" + listsLength + "]$endTime']").setValue('');
|
|
|
+ }
|
|
|
+ })
|
|
|
+ buildQjsjSeq();
|
|
|
+ lists.push(dataObj)
|
|
|
+ // qjsjChange()
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+ bindEvents();
|
|
|
+ //根据返回的json对象渲染
|
|
|
+
|
|
|
+ let tbodyQjsq = document.querySelector('.tbodyQjsq')
|
|
|
+ let html = ""
|
|
|
+ if (arrays.length > 0) {
|
|
|
+ for (let i = 0; i < arrays.length; i++) {
|
|
|
+ let startDate = moment(arrays[i].startTime).format('YYYY-MM-DD')
|
|
|
+ let endDate = moment(arrays[i].endTime).format('YYYY-MM-DD')
|
|
|
+ html += '<tr class="qjsjClass" id="qjsj_' + i + '" style="background:#fff; height: 63px;"> <td name="qjsj_seq">' + (i + 1) + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-flex">'
|
|
|
+ + '<div class="form-item" style="width: 50%;margin-right: 5px;">'
|
|
|
+ + '<div class="z-comp-date" name="LeaveTimeDO[' + i + ']$startTime">'
|
|
|
+ + '<input type="text" value="' + startDate + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '<div style="width: 50%;margin-left: 5px;" class="dateTimeRange startTimeRange' + (i) + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '<span class="nbsp"> - </span>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-flex">'
|
|
|
+ + '<div class="form-item" style="width: 50%;margin-right: 5px;">'
|
|
|
+ + '<div class="z-comp-date" name="LeaveTimeDO[' + i + ']$endTime">'
|
|
|
+ + '<input type="text" value="' + endDate + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '<div style="width: 50%;margin-left: 5px;" class="dateTimeRange endTimeRange' + (i) + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-item">'
|
|
|
+ + '<div class="z-comp-input" name="LeaveTimeDO[0]$bz1">'
|
|
|
+ + '<input type="text" value="">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div id="editBtn_' + (i) + '" class="table-btn editBtn_' + (i) + '" data-index="' + (i) + '">'
|
|
|
+ + '<span>编辑</span>'
|
|
|
+ + '</div>'
|
|
|
+ + '<div id="delBtn_' + (i) + '" class="table-btn delBtn_' + (i) + '" data-index="' + (i) + '">'
|
|
|
+ + '<span>删除</span>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td></tr>';
|
|
|
+ }
|
|
|
+ tbodyQjsq.innerHTML = html
|
|
|
+ for (let i = 0; i < arrays.length; i++) {
|
|
|
+ timeSelector({
|
|
|
+ ele: ".startTimeRange" + (i),
|
|
|
+ name: "LeaveTimeDO[" + (i) + "]$startTimeRange",
|
|
|
+ callback: function (val) {
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ timeSelector({
|
|
|
+ ele: ".endTimeRange" + (i),
|
|
|
+ name: "LeaveTimeDO[" + (i) + "]$endTimeRange",
|
|
|
+ callback: function (val) {
|
|
|
+ }
|
|
|
+ })
|
|
|
+ z.ui.date("[name='LeaveTimeDO[" + i + "]$startTime']").init()
|
|
|
+ z.ui.date("[name='LeaveTimeDO[" + i + "]$endTime']").init()
|
|
|
+ $("#editBtn_" + i).click(function () {
|
|
|
+ const span = $(this).find("span");
|
|
|
+ const html = span.html();
|
|
|
+ if (html === '编辑') {
|
|
|
+ span.html('保存')
|
|
|
+ detailWrite(i);
|
|
|
+ addDataThat.attr('disabled', "true");
|
|
|
+ $("#qjsj_" + i).removeClass("form-table-disable")
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (html === '保存') {
|
|
|
+ span.html('编辑')
|
|
|
+ detailReadonly(i, false)
|
|
|
+ addDataThat.removeAttr('disabled')
|
|
|
+ $("#qjsj_" + i).addClass("form-table-disable")
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ $("#delBtn_" + i).click(function () {
|
|
|
+ z.ui.confirm("compid").init({
|
|
|
+ content: "确定删除吗?",
|
|
|
+ onConfirm: function () {
|
|
|
+ var element = document.getElementById("qjsj_" + i);
|
|
|
+ element.remove();
|
|
|
+ buildQjsjSeq();
|
|
|
+ isTimes.splice(i, 1)
|
|
|
+ whereIsTimes()
|
|
|
+ addDataThat.removeAttr('disabled')
|
|
|
+ },
|
|
|
+ onCancel: function () {
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ })
|
|
|
+ let timeObj = {
|
|
|
+ index: i + 1,
|
|
|
+ startTime: Date.parse(arrays[i].startTime),
|
|
|
+ endTime: Date.parse(arrays[i].endTime),
|
|
|
+ }
|
|
|
+ isTimes.push(timeObj)
|
|
|
+ $("#qjsj_" + i).addClass("form-table-disable")
|
|
|
+ if (viewState === 'v' || read === '1') {
|
|
|
+ detailReadonly(i)
|
|
|
+ }else {
|
|
|
+ detailReadonly(i,false)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ let sTbody = document.querySelectorAll('.qjsjClass')
|
|
|
+ for (let i = 0; i < arrays.length; i++) {
|
|
|
+ let startHHmm = moment(arrays[i].startTime).format('HH:mm')
|
|
|
+ let endHHmm = moment(arrays[i].endTime).format('HH:mm')
|
|
|
+ sTbody[i].children[1].children[0].children[1].children[0].children[0].value = startHHmm
|
|
|
+ sTbody[i].children[2].children[0].children[1].children[0].children[0].value = endHHmm
|
|
|
+ sTbody[i].children[3].children[0].children[0].children[0].value = arrays[i].bz1 || ''
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ function updateView() {
|
|
|
+ let tbodyQjsq = document.querySelector('.tbodyQjsq')
|
|
|
+ let html = ''
|
|
|
+ for (let i = 0; i < isTimes.length; i++) {
|
|
|
+ let startDate = moment(isTimes[i].startTime).format('YYYY-MM-DD')
|
|
|
+ let endDate = moment(isTimes[i].endTime).format('YYYY-MM-DD')
|
|
|
+ html += '<tr class="qjsjClass" id="qjsj_' + i + '" style="background:#fff"> <td name="qjsj_seq">' + (i + 1) + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-flex">'
|
|
|
+ + '<div class="form-item" style="width: 50%;margin-right: 5px;">'
|
|
|
+ + '<div class="z-comp-date" name="LeaveTimeDO[' + i + ']$startTime">'
|
|
|
+ + '<input type="text" value="' + startDate + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '<div style="width: 50%;margin-left: 5px;" class="dateTimeRange startTimeRange' + (i) + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '<span class="nbsp"> - </span>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-flex">'
|
|
|
+ + '<div class="form-item" style="width: 50%;margin-right: 5px;">'
|
|
|
+ + '<div class="z-comp-date" name="LeaveTimeDO[' + i + ']$endTime">'
|
|
|
+ + '<input type="text" value="' + endDate + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '<div style="width: 50%;margin-left: 5px;" class="dateTimeRange endTimeRange' + (i) + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-item">'
|
|
|
+ + '<div class="z-comp-input" name="LeaveTimeDO[0]$bz1">'
|
|
|
+ + '<input type="text" value="">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div id="delBtn_' + (i) + '" class="table-btn delBtn_' + (i) + '" data-index="' + (i) + '">'
|
|
|
+ + '<span>删除</span>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td></tr>';
|
|
|
+ }
|
|
|
+ for (let i = 0; i < isTimes.length; i++) {
|
|
|
+ timeSelector({
|
|
|
+ ele: ".startTimeRange" + (i),
|
|
|
+ name: "LeaveTimeDO[" + (i) + "]$startTimeRange",
|
|
|
+ callback: function (val) {
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ timeSelector({
|
|
|
+ ele: ".endTimeRange" + (i),
|
|
|
+ name: "LeaveTimeDO[" + (i) + "]$endTimeRange",
|
|
|
+ callback: function (val) {
|
|
|
+ }
|
|
|
+ })
|
|
|
+ z.ui.date("[name='LeaveTimeDO[" + i + "]$startTime']").init()
|
|
|
+ z.ui.date("[name='LeaveTimeDO[" + i + "]$endTime']").init()
|
|
|
+ $("#delBtn_" + i).click(function () {
|
|
|
+ z.ui.confirm("compid").init({
|
|
|
+ content: "确定删除吗?",
|
|
|
+ onConfirm: function () {
|
|
|
+ var element = document.getElementById("qjsj_" + i);
|
|
|
+ element.remove();
|
|
|
+ buildQjsjSeq();
|
|
|
+ isTimes.splice(i, 1)
|
|
|
+ whereIsTimes()
|
|
|
+ },
|
|
|
+ onCancel: function () {
|
|
|
+
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ })
|
|
|
+ let startDate = moment(isTimes[i].startTime).format('YYYY-MM-DD')
|
|
|
+ let endDate = moment(isTimes[i].endTime).format('YYYY-MM-DD')
|
|
|
+ let obj = {
|
|
|
+ index: i + 1,
|
|
|
+ startTime: startDate,
|
|
|
+ endTime: endDate,
|
|
|
+ startHM: moment(isTimes[i].startTime).format('HH:mm'),
|
|
|
+ endHM: moment(isTimes[i].endTime).format('HH:mm'),
|
|
|
+ }
|
|
|
+ isTimes.push(obj)
|
|
|
+ }
|
|
|
+ tbodyQjsq.innerHTML = html
|
|
|
+ }
|
|
|
+
|
|
|
+ function lactationLeave(times) {
|
|
|
+ //哺乳假时选择起始时间自动赋值截止时间
|
|
|
+ let setEndTime = moment(times).add(1, 'years').format('YYYY-MM-DD');
|
|
|
+ z.ui.laydate("[name='LeaveTimeDO[0]$endTime']").setValue(setEndTime);
|
|
|
+ }
|
|
|
+
|
|
|
+ function qjsjChange(infoList, arraysList) {
|
|
|
+ let lengthNum = 0
|
|
|
+ if (arraysList.length > 0) {
|
|
|
+ lengthNum = infoList.length + arraysList.length
|
|
|
+ } else {
|
|
|
+ lengthNum = infoList.length
|
|
|
+ }
|
|
|
+ let timeObj = {
|
|
|
+ index: "",
|
|
|
+ startTime: "",
|
|
|
+ endTime: '',
|
|
|
+ startHM: "",
|
|
|
+ endHM: "",
|
|
|
+ }
|
|
|
+ timeSelector({
|
|
|
+ ele: ".startTimeRange" + (lengthNum - 1),
|
|
|
+ name: "LeaveTimeDO[" + (lengthNum - 1) + "]$startTimeRange",
|
|
|
+ callback: function (val) {
|
|
|
+ timeObj.startHM = val
|
|
|
+ whereIsTimes()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ timeSelector({
|
|
|
+ ele: ".endTimeRange" + (lengthNum - 1),
|
|
|
+ name: "LeaveTimeDO[" + (lengthNum - 1) + "]$endTimeRange",
|
|
|
+ callback: function (val) {
|
|
|
+ timeObj.endHM = val
|
|
|
+ whereIsTimes()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ for (let i = arraysList.length; i < lengthNum; i++) {
|
|
|
+ timeObj.index = i + 1
|
|
|
+ z.ui.laydate("[name='LeaveTimeDO[" + i + "]$startTime']").init({
|
|
|
+ type: 'date',
|
|
|
+ format: 'yyyy-MM-dd',
|
|
|
+ done: function (value, date, endDate) {
|
|
|
+ //改变日期后触发
|
|
|
+ if (attendanceIndex == '81') {
|
|
|
+ lactationLeave(value)
|
|
|
+ } else {
|
|
|
+ timeObj.startTime = value
|
|
|
+ whereIsTimes()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ z.ui.laydate("[name='LeaveTimeDO[" + i + "]$endTime']").init({
|
|
|
+ type: 'date',
|
|
|
+ done: function (value, date, endDate) {
|
|
|
+ //改变日期后触发
|
|
|
+ timeObj.endTime = value
|
|
|
+ whereIsTimes()
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ isTimes.push(timeObj)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ function whereIsTimes() {
|
|
|
+ let leaveTimeList = new Array()
|
|
|
+ let timesCopy = JSON.parse(JSON.stringify(isTimes))
|
|
|
+ timesCopy.forEach(timeObj => {
|
|
|
+ let mealName = new Object();
|
|
|
+ mealName.startTime = timeObj.startTime
|
|
|
+ mealName.endTime = timeObj.endTime
|
|
|
+ z.ui.form.childStringify(mealName)
|
|
|
+ leaveTimeList.push(mealName);
|
|
|
+ })
|
|
|
+ z.ui.ajax({
|
|
|
+ type: "post",
|
|
|
+ url: "/Leave/getLeaveDays",
|
|
|
+ data: JSON.stringify(leaveTimeList),
|
|
|
+ contentType: "application/json",
|
|
|
+ success: function (res) {
|
|
|
+ console.log(res)
|
|
|
+ let totalMin = res.data;
|
|
|
+ let totalHours = totalMin / 60;
|
|
|
+ let totalDays = Math.floor(totalHours/7.5);
|
|
|
+ let subHours = totalHours%7.5;
|
|
|
+ let leaveDaysText = '';
|
|
|
+ if(totalDays>0){
|
|
|
+ leaveDaysText += totalDays + '天'
|
|
|
+ }
|
|
|
+ if(subHours>0){
|
|
|
+ leaveDaysText += subHours + '小时'
|
|
|
+ }
|
|
|
+ $("[name='createReqVO$leaveHours']").val(totalHours);
|
|
|
+ z.ui.input("[name='createReqVO$leaveDays']").setValue(leaveDaysText);
|
|
|
+ },
|
|
|
+ error: function () {
|
|
|
+ z.ui.alertWarning("计算请假天数,请联系管理员!")
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ function buildQjsjSeq() {
|
|
|
+ let elementsByName = document.getElementsByName("qjsj_seq");
|
|
|
+ for (let i = 0; i < elementsByName.length; i++) {
|
|
|
+ const seqElement = elementsByName[i];
|
|
|
+ seqElement.innerHTML = i + 1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //注册业务保存事件
|
|
|
+ function bindEvents() {
|
|
|
+ z.workflow.saveBtn.addListener("onSaveClick", saveForm);
|
|
|
+ }
|
|
|
+
|
|
|
+ /*
|
|
|
+ * all 工作流js传递到业务的参数 success执行的方法
|
|
|
+ * istransfer 工作流js传递到业务的参数 是否转件
|
|
|
+ * */
|
|
|
+ function saveForm(all, istransfer) {
|
|
|
+ var postData = z.ui.form.getFormFields($("[name=createReqVO]"));
|
|
|
+ if (postData === false) {
|
|
|
+ all({ success: false });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ var leaveTimeCreateList = new Array()
|
|
|
+ for (let key of Object.keys(postData)) {
|
|
|
+ let mealName = postData[key];
|
|
|
+ if (key.startsWith("LeaveTimeDO")) {
|
|
|
+ mealName.startTime = Date.parse(mealName.startTime + " " + mealName.startTimeRange);
|
|
|
+ mealName.endTime = Date.parse(mealName.endTime + " " + mealName.endTimeRange);
|
|
|
+ leaveTimeCreateList.push(z.ui.form.childStringify(mealName));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ postData.createReqVO.leaveTimeCreateList = leaveTimeCreateList;
|
|
|
+ z.ui.ajax({
|
|
|
+ type: "post",
|
|
|
+ url: "/Leave/update",
|
|
|
+ data: JSON.stringify(postData.createReqVO),
|
|
|
+ contentType: "application/json",
|
|
|
+ success: function () {
|
|
|
+ all({success: true});
|
|
|
+ },
|
|
|
+ error: function () {
|
|
|
+ all({success: false});
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ function generateTableTrHtml(index) {
|
|
|
+ var trDom = document.createElement("tr");
|
|
|
+ trDom.style.backgroundColor = "#fff";
|
|
|
+ trDom.style.height = "63px";
|
|
|
+ trDom.id = "qjsj_" + index;
|
|
|
+ trDom.className = 'qjsjClass'
|
|
|
+ trDom.innerHTML = '<td name="qjsj_seq">' + (index + 1) + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-flex">'
|
|
|
+ + '<div class="form-item" style="width: 50%;margin-right: 5px;">'
|
|
|
+ + '<div class="z-comp-laydate" name="LeaveTimeDO[' + index + ']$startTime">'
|
|
|
+ + '<input type="text" value="">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '<div style="width: 50%;margin-left: 5px;" class="dateTimeRange startTimeRange' + (index) + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '<span class="nbsp"> - </span>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-flex">'
|
|
|
+ + '<div class="form-item" style="width: 50%;margin-right: 5px;">'
|
|
|
+ + '<div class="z-comp-laydate" name="LeaveTimeDO[' + index + ']$endTime">'
|
|
|
+ + '<input type="text" value="">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '<div style="width: 50%;margin-left: 5px;" class="dateTimeRange endTimeRange' + (index) + '">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div class="form-item">'
|
|
|
+ + '<div class="z-comp-input" name="LeaveTimeDO[0]$bz1">'
|
|
|
+ + '<input type="text" value="">'
|
|
|
+ + '</div>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>'
|
|
|
+ + '<td>'
|
|
|
+ + '<div id="editBtn_' + (index) + '" class="table-btn editBtn_' + (index) + '" data-index="' + (index) + '">'
|
|
|
+ + '<span>保存</span>'
|
|
|
+ + '</div>'
|
|
|
+ + '<div id="delBtn_' + (index) + '" class="table-btn delBtn_' + (index) + '" data-index="' + (index) + '">'
|
|
|
+ + '<span>删除</span>'
|
|
|
+ + '</div>'
|
|
|
+ + '</td>';
|
|
|
+ return trDom;
|
|
|
+ }
|
|
|
+
|
|
|
+ function detailReadonly(i, isBool = true) {
|
|
|
+ if (isBool) {
|
|
|
+ $("#delBtn_" + i).css("display", "none");
|
|
|
+ $("#editBtn_" + i).css("display", "none");
|
|
|
+ }
|
|
|
+ let detailElement = document.getElementById("qjsj_" + i);
|
|
|
+ let detailInput = detailElement.getElementsByTagName("input");
|
|
|
+ for (let j = 0; j < detailInput.length; j++) {
|
|
|
+ detailInput[j].disabled = true;
|
|
|
+ detailInput[j].className += "z-readonly"
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ function detailWrite(i) {
|
|
|
+ let detailElement = document.getElementById("qjsj_" + i);
|
|
|
+ let detailInput = detailElement.getElementsByTagName("input");
|
|
|
+ for (let j = 0; j < detailInput.length; j++) {
|
|
|
+ detailInput[j].disabled = false;
|
|
|
+ $(detailInput[j]).removeClass("z-readonly")
|
|
|
+ }
|
|
|
+ }
|
|
|
+}());
|
|
|
+
|