yuanzhi_kuang 11 miesięcy temu
rodzic
commit
c31463322e

+ 591 - 0
GDYSL/addon/customer/web/js/fillSignCardEditEx_UAT.js

@@ -0,0 +1,591 @@
+shr.defineClass("shr.customer.gtiit.FillSignCardEditEx",shr.ats.FillSignCardEdit,{
+//
+    initalizeDOM:function(){
+        shr.customer.gtiit.FillSignCardEditEx.superClass.initalizeDOM.call(this);
+    },
+    setFSCEntry: function (rst) {
+        var _self = this;
+        if (
+            rst.records != null &&
+            rst.records > 0 &&
+            rst.rows != null &&
+            rst.rows.length > 0
+        ) {
+            var id,
+                attendDate,
+                type,
+                fillCardTimeStr,
+                remark,
+                reason_id,
+                reason_name;
+
+            var billId = $("#id").val();
+            var ramarkMap;
+            _self.remoteCall({
+                method: "getToremarks",
+                param: {billId: billId}, 
+                async: false,
+                success: function(data) {
+                    ramarkMap = data;
+                },
+                error : function(){
+                }
+            });
+
+            for (var i = 0; i < rst.rows.length; i++) {
+                var row = rst.rows[i];
+                (id = shr.xssFilter(row["id"])),
+                    (attendDate = shr.xssFilter(row["attendDate"])),
+                    (type_key = shr.xssFilter(row["type.key"])),
+                    (type_value = shr.xssFilter(row["type.value"])),
+                    (fillCardTimeStr = shr.xssFilter(row["fillCardTimeStr"])),
+                    (reason_id = shr.xssFilter(row["reason.id"])),
+                    (reason_name = shr.xssFilter(row["reason.name"])),
+                    (remark = ramarkMap[row["id"]]);
+                var row_fields_work = "";
+                if (
+                    _self.getOperateState() == "ADDNEW" ||
+                    _self.getOperateState() == "EDIT"
+                ) {
+                    row_fields_work =
+                        '<div  class="row-fluid row-block row_field">' +
+                        '<div class="spanSelf">' +
+                        '<input type="hidden" name="id' +
+                        i +
+                        '" value="' +
+                        correctValue(id) +
+                        '" />' +
+                        '<input type="text" id="attendDate' +
+                        i +
+                        '" name="attendDate' +
+                        i +
+                        '" value="' +
+                        correctValue(attendDate) +
+                        '"class="input-height cell-input" validate="{required:true}" />' +
+                        "</div>" +
+                        '<div class="spanSelf"><input type="text"  name="type' +
+                        i +
+                        '" value="" class="input-height cell-input"    validate="{required:true}"/></div>' +
+                        '<div class="spanSelf"><input  type="text" name="reason' +
+                        i +
+                        '" value="" class="input-height cell-input"   validate="{required:true}"/></div>' +
+                        '<div class="spanSelf"><input style="background-color:#daeef8"  length="5" type="text" id="fillCardTimeStr' +
+                        i +
+                        '" name="fillCardTimeStr' +
+                        i +
+                        '" value="' +
+                        correctValue(fillCardTimeStr) +
+                        '" class="input-height cell-input fillCardTime"  placeholder="' +
+                        jsBizMultLan.atsManager_fillSignCardEdit_i18n_17 +
+                        '"  /></div>' +
+                        //                      + '<script type="text/javascript">$(function() {var text_json = {id:"fillCardTimeStr0",name: "fillCardTimeStr0",readonly: "",value: "0",validate: "{required:true,myTmVldt:true}",onChange: null};$("#fillCardTimeStr0").shrTextField(text_json);});</script>'
+                        '<div class="spanSelf"><input  maxlength="255" type="text" name="toremarks' +
+                        i +
+                        '" value="' +
+                        correctValue(remark) +
+                        '" class="input-height cell-input"/></div>';
+                    if (i == 0) {
+                        row_fields_work +=
+                            '<div><a class="rowAdd cursor-pointer" style="font-size: 20px;">+</a></div>';
+                    } else {
+                        row_fields_work +=
+                            '<div><a class="rowAdd cursor-pointer" style="font-size: 20px;">+</a><a class="rowDel cursor-pointer" style="font-size: 17px;">x</a></div>';
+                    }
+                    row_fields_work += "</div>";
+                    $("#fillSignCardEntryInfo").append(row_fields_work);
+                    $(".fillCardTime").on("input", function (e) {
+                        var target = e.target;
+                        var val = $(target).val() || "";
+                        var hasSignal =
+                            val.indexOf(":") !== -1 || val.indexOf(":") !== -1;
+                        if (
+                            val.length === 4 &&
+                            /^\d+$/.test(val) &&
+                            !hasSignal
+                        ) {
+                            var hour = val.slice(0, 2);
+                            val = hour + ":" + val.slice(2);
+                            if (hour < 24) {
+                                $(target).val(val);
+                            }
+                            return;
+                        }
+                        if (
+                            val.length >= 5 &&
+                            /^(\d{2}[:|:]\d{2,})+$/.test(val)
+                        ) {
+                            var hour = val.slice(0, 2);
+                            val = val.slice(0, 5);
+                            if (hour < 24) {
+                                $(target).val(val);
+                            }
+                            return;
+                        }
+                    });
+                    var remarkObj = { l1: "", l2: "", l3: "" };
+                    remarkObj.l1 = correctValue(shr.xssFilter(row["remark_l1"]));
+                    remarkObj.l2 = correctValue(shr.xssFilter(row["remark_l2"]));
+                    remarkObj.l3 = correctValue(shr.xssFilter(row["remark_l3"]));
+                    _self.addRowFieldString(
+                        false,
+                        i,
+                        reason_id,
+                        reason_name,
+                        type_key,
+                        type_value,
+                        remarkObj
+                    );
+                } else if (_self.getOperateState() == "VIEW") {
+                    row_fields_work =
+                        '<div class="row-fluid row-block row_field">' +
+                        '<div class="spanSelf">' +
+                        '<input type="hidden" name="id' +
+                        i +
+                        '" value="' +
+                        correctValue(id) +
+                        '" />' +
+                        '<input type="hidden" id="type' +
+                        i +
+                        '_el" value="' +
+                        correctValue(type_value) +
+                        '" />' +
+                        '<input type="hidden" id="reason' +
+                        i +
+                        '_el" value="' +
+                        correctValue(reason_id) +
+                        '" /> ' +
+                        '<span id="attendDate' +
+                        i +
+                        '" name="attendDate' +
+                        i +
+                        '" class="cell-input">' +
+                        correctValue(attendDate) +
+                        "</span>" +
+                        "</div>" +
+                        '<div class="spanSelf"><span name="type' +
+                        i +
+                        '" class="cell-input">' +
+                        correctValue(type_key) +
+                        "</span></div>" +
+                        '<div class="spanSelf"><span name="reason' +
+                        i +
+                        '" class="cell-input">' +
+                        correctValue(reason_name) +
+                        "</span></div>" +
+                        '<div class="spanSelf"><span name="fillCardTimeStr' +
+                        i +
+                        '"  class="cell-input">' +
+                        correctValue(fillCardTimeStr) +
+                        "</span></div>" +
+                        '<div class="spanSelf"><span name="toremarks' +
+                        i +
+                        '" style = "word-break: break-word;" class="cell-input">' +
+                        correctValue(remark) +
+                        "</span></div>" +
+                        "</div>";
+                    $("#fillSignCardEntryInfo").append(row_fields_work);
+                }
+                atsMlUtile.setTransDateValue("attendDate" + i, attendDate);
+                _self.initAtsBillExplain();
+            }
+        }
+        //添加事件处理
+        //新增
+        $("#fillSignCardEntryInfo a.rowAdd").die("click");
+        $("#fillSignCardEntryInfo a.rowAdd").live("click", function () {
+            var vali = $(
+                "#fillSignCardEntryInfo .row_field:last input[name^=attendDate]"
+            ).attr("name");
+            if (vali != null && vali != "") {
+                var idx = new String(vali).substr(10);
+                var idxA = new Number(idx) + 1;
+                _self.addRowFieldString(
+                    true,
+                    idxA,
+                    null,
+                    null,
+                    null,
+                    null,
+                    null
+                );
+            }
+        });
+
+        //删除
+        $("#fillSignCardEntryInfo a.rowDel").die("click");
+        $("#fillSignCardEntryInfo a.rowDel").live("click", function () {
+            var entryId = $(
+                $(this).closest("div.row_field").children()[0]
+            ).children()[0].value;
+            if (entryId != "" && entryId != null && entryId != undefined) {
+                deletedList += entryId + ",";
+            }
+            $(this).closest("div.row_field").remove();
+        });
+    },
+    addRowFieldString: function (
+        flag,
+        i,
+        reason_id,
+        reason_name,
+        type_key,
+        type_value,
+        remark
+    ) {
+        if (flag) {
+            var row_fields_work =
+                '<div  class="row-fluid row-block row_field">' +
+                '<div class="spanSelf"><input type="hidden" name="id' +
+                i +
+                '" value="" /><input type="text" id="attendDate' +
+                i +
+                '"  name="attendDate' +
+                i +
+                '" value=""class="input-height cell-input" validate="{required:true}" /></div>' +
+                '<div class="spanSelf"><input name="type' +
+                i +
+                '_el" type="hidden"/><input type="text"  name="type' +
+                i +
+                '" value="" class="input-height cell-input"    validate="{required:true}"/></div>' +
+                '<div class="spanSelf"><input type="text" name="reason' +
+                i +
+                '" value="" class="input-height cell-input"   validate="{required:true}"/></div>' +
+                '<div class="spanSelf"><input style="background-color:#daeef8"  length="5" type="text" name="fillCardTimeStr' +
+                i +
+                '" value="" class="input-height cell-input fillCardTime"  placeholder="' +
+                jsBizMultLan.atsManager_fillSignCardEdit_i18n_17 +
+                '" /></div>' +
+                '<div class="spanSelf"><input maxlength="255" type="text" name="toremarks' +
+                i +
+                '" value="" class="input-height cell-input"/></div>' +
+                '<div><a class="rowAdd cursor-pointer" style="font-size: 20px;">+</a><a class="rowDel cursor-pointer" style="font-size: 17px;">x</a></div>' +
+                "</div>";
+
+            $("#fillSignCardEntryInfo").append(row_fields_work);
+            $(".fillCardTime").on("input", function (e) {
+                var v = $(e.target).val() || "";
+                if (/[0-5][0-9][0-5][0-9]/.test(v) && v.length == 4) {
+                    v =
+                        $(e.target).val().substring(0, 2) +
+                        ":" +
+                        $(e.target).val().substring(2, 4);
+                }
+                if (
+                    (/[0-2][0-9]:[0-5][0-9]/.test(v) && v.length == 5) ||
+                    (/[0-2][0-9]:[0-5][0-9]/.test(v) && v.length == 5)
+                ) {
+                    var h = new Number(v.substr(0, 2));
+                    if (h < 24) {
+                        v =
+                            $(e.target).val().substring(0, 2) +
+                            ":" +
+                            $(e.target).val().substring(3, 5);
+                        $(e.target).val(v);
+                    }
+                }
+            });
+        }
+        $('input[name="fillCardTimeStr' + i + '"]').attr(
+            "validate",
+            "{required:true,myTmVldt:true}"
+        );
+        $('input[name="attendDate' + i + '"]').attr(
+            "validate",
+            "{required:true,myTmVldt1:true}"
+        );
+
+        //将【考勤日期】 【补签卡类型】【补签卡原因】封装成F7
+        //备注改成多语言
+        /*$('input[name="remark' + i + '"]')
+            .attr("id", "remark" + i)
+            .shrMultiLangBox({
+                readonly: "",
+                value: remark,
+                validate: "{maxlength:128}",
+                trimAll: false,
+                onChange: null
+            });*/
+
+        //针对从【考勤看板--我要补卡】中进入
+        if (
+            this.strdate != null &&
+            this.strdate != undefined &&
+            this.strdate != ""
+        ) {
+            $('input[name="attendDate' + i + '"]').shrDateTimePicker(
+                "setValue",
+                this.strdate
+            );
+        }
+        //【补签卡类型】
+        var that = this;
+        var select_json = {
+            id: "type" + i,
+            readonly: "",
+            value: "0",
+            onChange: null,
+            validate: "{required:true}",
+            filter: ""
+        };
+        select_json.data = [
+            {
+                value: 1,
+                alias: jsBizMultLan.atsManager_fillSignCardEdit_i18n_1
+            }
+        ];
+        $('input[name="type' + i + '"]').shrSelect(select_json);
+        if (!flag) {
+            $('input[name="type' + i + '"]').val(type_key);
+            $('input[name="type' + i + '_el"]').val(type_value);
+        } else {
+            //如果是新增,默认的就是补卡
+            $('input[name="type' + i + '"]').val(
+                jsBizMultLan.atsManager_fillSignCardEdit_i18n_1
+            );
+            $('input[name="type' + i + '_el"]').val(1);
+        }
+
+        //【考勤日期】
+        var attendDate = atsMlUtile.getFieldOriginalValue("attendDate" + i);
+        $('input[id="attendDate' + i + '"]').shrDateTimePicker({
+            id: "attendDate" + i,
+            tagClass: "block-father input-height",
+            readonly: "",
+            yearRange: "",
+            ctrlType: "Date",
+            value: attendDate,
+            isAutoTimeZoneTrans: false,
+            validate: "{dateISO:true,required:true}",
+            onChange: function () {
+                if (0 == i) {
+                    that.initAtsBillExplain();
+                }
+            },
+            isNewDateCtrl: true
+        });
+
+        //【补签卡原因】
+        var grid_f7_json = { id: "reason" + i, name: "reason" + i };
+        grid_f7_json.subWidgetName = "shrPromptGrid";
+        var object = $('input[name="reason' + i + '"]');
+        grid_f7_json.subWidgetOptions = {
+            title: jsBizMultLan.atsManager_fillSignCardEdit_i18n_4,
+            uipk: "com.kingdee.eas.hr.ats.app.FillSignReason.AvailableList.F7",
+            query: ""
+        };
+        grid_f7_json.subWidgetOptions.isHRBaseItem = true;
+        grid_f7_json.subWidgetOptions.filterConfig = [
+            {
+                name: "isComUse",
+                value: true,
+                alias: jsBizMultLan.atsManager_fillSignCardEdit_i18n_20,
+                widgetType: "checkbox"
+            }
+        ];
+        grid_f7_json.subWidgetOptions.bizFilterFields = "hrOrgUnit";
+        grid_f7_json.subWidgetOptions.f7ReKeyValue =
+            "BaseInfo.id:BaseInfo.name";
+        grid_f7_json.subWidgetName = "specialPromptGrid";
+        grid_f7_json.validate = "{required:true}";
+        object.shrPromptBox(grid_f7_json);
+
+        if (!flag) {
+            object.val(correctValue(reason_name));
+            //利用F7de特性来设置值
+            $("#reason" + i + "_el").val(correctValue(reason_id));
+        } else {
+            //新增行时,补签卡原因取自上一行
+            var preRow = i - 1;
+            $("#reason" + i + "_el").val(
+                correctValue($("#reason" + preRow + "_el").val())
+            );
+            $("#reason" + i).val(correctValue($("#reason" + preRow).val()));
+        }
+    },
+    assembleEntriesData: function () {
+        var entries = [];
+        var lengthArray = [];
+
+        var personDateStr = "";
+
+        if (_self.getOperateState().toUpperCase() != "VIEW") {
+            $("#fillSignCardEntryInfo input[name^=attendDate]").each(function (
+                i,
+                domEle
+            ) {
+                var length = $(domEle)
+                    .attr("name")
+                    .substring("attendDate".length);
+                lengthArray.push(parseInt(length));
+            });
+
+            //将数组由小到大排列
+            if (lengthArray.length > 0) {
+                lengthArray.sort(sortNumber);
+            }
+
+            for (var i = 0; i < lengthArray.length; i++) {
+                var entrie = {
+                    id: correctValue(
+                        $(
+                            '#fillSignCardEntryInfo input[name="id' +
+                                lengthArray[i] +
+                                '"]'
+                        ).val()
+                    ),
+                    attendDate: atsMlUtile.getFieldOriginalValue(
+                        'fillSignCardEntryInfo input[name="attendDate' +
+                            lengthArray[i] +
+                            '"]'
+                    ),
+                    type: new Number(
+                        $(
+                            '#fillSignCardEntryInfo input[type=hidden][id="type' +
+                                lengthArray[i] +
+                                '_el"]'
+                        ).val()
+                    ),
+                    reason: {
+                        id: correctValue(
+                            $(
+                                '#fillSignCardEntryInfo input[type=hidden][id="reason' +
+                                    lengthArray[i] +
+                                    '_el"]'
+                            ).val()
+                        ),
+                        name: correctValue(
+                            $(
+                                '#fillSignCardEntryInfo input[name="reason' +
+                                    lengthArray[i] +
+                                    '"]'
+                            ).val()
+                        )
+                    },
+
+                    fillCardTimeStr: correctValue(
+                        $(
+                            '#fillSignCardEntryInfo input[name="fillCardTimeStr' +
+                                lengthArray[i] +
+                                '"]'
+                        ).val()
+                    ),
+                    toremarks: document.querySelector('#fillSignCardEntryInfo input[name="toremarks'+lengthArray[i]+'"]').value,
+                    person: {
+                        id: $("#entries_person").shrPromptBox("getValue").id
+                    }
+                };
+                var date = entrie.attendDate;
+                var personId = entrie.person.id;
+                if (date && personId) {
+                    if (i > 0) {
+                        personDateStr += ",";
+                    }
+                    personDateStr += personId + "_" + date.substring(0, 10);
+                }
+                entries.push(entrie);
+            }
+        } else {
+            $("#fillSignCardEntryInfo span[name^=attendDate]").each(function (
+                i,
+                domEle
+            ) {
+                var length = $(domEle)
+                    .attr("name")
+                    .substring("attendDate".length);
+                lengthArray.push(parseInt(length));
+            });
+
+            //将数组由小到大排列
+            if (lengthArray.length > 0) {
+                lengthArray.sort(sortNumber);
+            }
+
+            for (var i = 0; i < lengthArray.length; i++) {
+                var entrie = {
+                    id: correctValue(
+                        $(
+                            '#fillSignCardEntryInfo input[name="id' +
+                                lengthArray[i] +
+                                '"]'
+                        ).val()
+                    ),
+                    attendDate: atsMlUtile.getFieldOriginalValue(
+                        '#fillSignCardEntryInfo span[name="attendDate' +
+                            lengthArray[i] +
+                            '"]'
+                    ),
+                    type: new Number(
+                        $(
+                            '#fillSignCardEntryInfo input[type=hidden][id="type' +
+                                lengthArray[i] +
+                                '_el"]'
+                        ).val()
+                    ),
+                    reason: {
+                        id: correctValue(
+                            $(
+                                '#fillSignCardEntryInfo input[type=hidden][id="reason' +
+                                    lengthArray[i] +
+                                    '_el"]'
+                            ).val()
+                        ),
+                        name: correctValue(
+                            $(
+                                '#fillSignCardEntryInfo span[name="reason' +
+                                    lengthArray[i] +
+                                    '"]'
+                            ).text()
+                        )
+                    },
+
+                    fillCardTimeStr: correctValue(
+                        $(
+                            '#fillSignCardEntryInfo span[name="fillCardTimeStr' +
+                                lengthArray[i] +
+                                '"]'
+                        ).text()
+                    ),
+                    toremarks: document.querySelector('#fillSignCardEntryInfo input[name="toremarks'+lengthArray[i]+'"]').value,
+                    person: { id: $("#entries_person").val() }
+                };
+                var date = entrie.attendDate;
+                var personId = entrie.person.id;
+                if (date && personId) {
+                    if (i > 0) {
+                        personDateStr += ",";
+                    }
+                    personDateStr += personId + "_" + date.substring(0, 10);
+                }
+                entries.push(entrie);
+            }
+        }
+
+        if (personDateStr) {
+            _self.remoteCall({
+                type: "post",
+                method: "getPersonAdminOrgUnit",
+                param: { personDateStr: personDateStr },
+                async: false,
+                success: function (res) {
+                    var info = res;
+                    var personAtsInfo = {};
+                    for (var i = 0; i < entries.length; i++) {
+                        var date = entries[i].attendDate;
+                        var personId = entries[i].person.id;
+                        if (date && personId) {
+                            var person_date =
+                                personId + "_" + date.substring(0, 10);
+                            personAtsInfo = info[person_date];
+                            if (personAtsInfo && personAtsInfo.adminOrgUnit) {
+                                entries[i]["adminOrgUnit"] =
+                                    personAtsInfo.adminOrgUnit;
+                                entries[i]["position"] = personAtsInfo.position;
+                            }
+                        }
+                    }
+                }
+            });
+        }
+        return entries;
+    }
+});

+ 461 - 0
GDYSL/addon/customer/web/js/shr/rpt/contractListReportALLList_UAT.js

@@ -0,0 +1,461 @@
+var sidValue = [];
+var orgLongNum="";
+var sumType = "1";
+var colNames;
+var colModel;
+shr.defineClass("shr.customer.gtiit.rpt.contractListReportALLList", shr.framework.List, {
+    gridId: '#reportGrid',
+    reportUipk :   "com.kingdee.eas.contractListReportALL.list" ,
+    rowNumPerPage : 30, // 设置默认分页30  
+    colModelData: null,
+    isFirstTimeLoad: 0,
+	initalizeDOM : function () {
+		var that = this;
+		that.setColModelData();
+		shr.customer.gtiit.rpt.contractListReportALLList.superClass.initalizeDOM.call(this);
+		
+		// 快速查询添加事件
+		$('#searcher').shrSearchBar('option', {
+			afterSearchClick: this.queryGridByEvent
+		});
+		
+		$("#proposer").attr("maxlength","").attr("validate","");
+		$("#queryTime").shrDateTimePicker("setValue", new Date()); 
+		$("#queryTime").trigger("change")
+		//快速过滤展开
+		if($(".filter-containers").is(":hidden")){
+			$("#filter-slideToggle").click();
+		}
+	} 
+
+  	 /**
+	 * 选择导航节点
+	 */
+	,queryGridByEvent: function(e) {
+		var viewPage;
+		var self=this;
+		if (e.target) {
+			viewPage = shr.getCurrentViewPage(e.target);
+		} else {
+			viewPage = shr.getCurrentViewPage(e);
+		}
+		// 将页码恢复为第1页
+		$(viewPage.gridId).jqGrid('option', 'page', 1);
+		viewPage.queryAction();
+	},
+	/**
+	 * 获得search查询条件
+	 */
+	getSearchFilterItems: function() {
+		var filter = $('#searcher').shrSearchBar('option', 'filterView');
+		if (filter && filter.filterItems) {
+			return filter.filterItems;
+		}
+	}
+	,queryAction : function () {
+		var self = this;
+		//search搜索
+		var searchFilterItems = self.getSearchFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		//快速过滤
+		var fastFilterItems = self.getFastFilterItems();
+		if(fastFilterItems == undefined){
+			fastFilterItems = "";
+		}
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		
+		$("#reportGrid").jqGrid('setGridParam', {
+			datatype : 'json',
+			postData : {
+				'NewRearch'   : 'newRearch',
+				'fastFilterItems' : $.toJSON(fastFilterItems),
+				'searchFilterItems' : searchFilterItems,
+				'sumType' : sumType,
+				'page' : 1
+			},
+			page : 0
+		});
+		self.doRenderDataGrid();
+	},
+	setColModelData: function () {
+		var self = this;
+		self.remoteCall({
+			method : "getGridColModel",
+			success : function (data) {
+				colNames = data.colNames;
+				colModel = data.colModel;
+			}
+		})
+	},
+	  
+	/**
+	 * 表格数据请求URL
+	 */
+	getGridDataRequestURL : function () {
+		var serviceId = shr.getUrlRequestParam("serviceId");
+		return this.dynamicPage_url + "?method=getGridData" + "&uipk=" + this.reportUipk + '&serviceId='+encodeURIComponent(serviceId); 
+	},
+
+   doRenderDataGrid : function () {
+		var self = this, table = $("#reportGrid");
+		var searchFilterItems = self.getSearchFilterItems();
+		var fastFilterItems = self.getFastFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		
+		postData = {
+			'searchFilterItems' : searchFilterItems,
+			'fastFilterItems' : $.toJSON(fastFilterItems),
+			'page1' : 1
+		};
+
+		var url = self.getGridDataRequestURL();        
+		var	options = {
+			url : url ,
+			datatype : "json",
+			multiselect : true,
+			rownumbers : false,
+			colNames : colNames,
+			colModel : colModel,
+			rowNum : self.rowNumPerPage,
+			// pager : '#gridPager1',
+			mtype: 'POST',
+			postData: postData ,
+//			height : 'auto',
+			height : '600px',
+//			height : self.rowNumPerPage > 21 ? '600px' : 'auto',
+			rowList : [30,45,60],
+			recordpos : 'left',
+			recordtext : '({0}-{1})/{2}',
+			gridview : true,
+			// pginput : true,
+			shrinkToFit :colModel.length>10?false:true,
+			viewrecords : true,
+			//cellEdit:true,
+            // cellsubmit:"clientArray" ,	
+			// sortname : "sumsql.fproposerid",
+			//caption: "Frozen Header",
+			customPager : '#gridPager1',  
+			pagerpos:"center",
+			pginputpos:"right",
+			pginput:true,     
+			synchTotal:"true",
+			onSelectRow: function(id){ 
+				jQuery('#reportGrid').jqGrid('editRow', id, false, function(){});
+				sidValue.push(id);
+				lastsel2 = id;
+				$("#reportGrid").attr("sid", sidValue.join(","));
+			}
+		};
+
+		options.loadComplete = function (data) {
+			if($("#gridPager1").html() == "" && "true" == "true"){
+				$("#reportGrid").setCustomPager("#gridPager1");
+			}
+			
+			shr.setIframeHeight();
+			$('#gridPager1_left').click(function(){
+				$('.ui-pg-selbox').show();
+				$('.ui-pg-selbox').css({"left":"-60px"})
+				$(this).children('.ui-paging-info').hide();
+			});
+			$("#microToolbar").parent().hide()
+			$("#gridPager1").parent().css({"position":"relative"})  
+			$("#gridPager1").addClass("shrPage").css({
+				"position":"absolute",
+				"top":"-25px",
+				"right":"0px",
+				"background":"#FFF"
+			})
+            shr.customer.gtiit.rpt.contractListReportALLList.superClass.gridLoadComplete.call(this,data);
+		};
+		table.html();
+		table.jqGrid(options);
+		jQuery("#reportGrid").jqGrid(options).jqGrid("reloadGrid");
+		jQuery('#reportGrid').jqGrid('setFrozenColumns');
+		self.firstTime = 1;
+		
+	},
+	handleMicroToolbarInfo : function () {
+
+		var self = this;
+		var html = "";
+		html += "<div class='shrPage page-Title' >";
+		html += "<span id='gripage' class='ui-paging-info' style='cursor: default;display: inline-block;font-size: 13px;padding: 2px 5px 0 0;'></span>";
+		html += "<span id='prevId'  style='vertical-align: text-top;cursor: pointer;' class='ui-icon ui-icon-seek-prev'></span>";
+		html += "<span id='nextId'  style='vertical-align: text-top;cursor: pointer;' class='ui-icon ui-icon-seek-next'></span></div>";
+		
+		$('#microToolbar').html("");
+		$('#microToolbar').append(html);
+
+		$("#gripage").on("click", self.selectRowNumPerPage);
+		$("#prevId").on("click", self.prePage);
+		$("#nextId").on("click", self.nextPage);
+
+		//页码 (1-4)/4
+		self.updatePageEnable();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+		$("#gridPager1").hide();
+		 var ids=jQuery("#reportGrid").jqGrid('getDataIDs');
+         var rowdata=jQuery("#reportGrid").jqGrid('getRowData',ids[0]);  
+		
+		shr.setIframeHeight();
+		$("#reportGrid_frozen").parent().height('583px');
+	},
+	updatePageEnable:function () {
+		var temp = $("#gridPager1_left >div[dir='ltr']").text();
+		if (temp.substring(1, temp.indexOf('-')) == '1') {
+			$("#prevId").addClass("ui-state-disabled");
+		} else {
+			$("#prevId").removeClass("ui-state-disabled");
+		}
+
+		if (parseInt(temp.substring(temp.indexOf('-') + 1, temp.indexOf(')'))) >= parseInt(temp.substring(temp.indexOf('/') + 1).replace(new RegExp(",","gm"),""))) {
+			$("#nextId").addClass("ui-state-disabled");
+		} else {
+			$("#nextId").removeClass("ui-state-disabled");
+		}
+	},
+    
+	getCurPage:function(){
+		//(1-4)/4
+		var self = this,
+		rowNum = self.rowNumPerPage;
+		var temp = $("#gridPager1_left >div[dir='ltr']").text();
+		var curPageNum = (parseInt(temp.substring(1, temp.indexOf('-')))-1)/rowNum+1;
+		return curPageNum;
+	},
+
+	prePage : function () {
+		$("#prev_gridPager1").trigger("click");
+		shr.setIframeHeight();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+	},
+
+	nextPage : function () {
+		$("#next_gridPager1").trigger("click");
+		shr.setIframeHeight();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+	},
+		
+	selectRowNumPerPage:function(){
+			
+	}
+	
+	,
+	exportToExcelAction : function () {
+		openLoader
+  		var _self = this ;
+  		var url = _self.exportCommonParam();
+  		var fastFilterItems = _self.getFastFilterItems();
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+				
+  		 var serviceId = shr.getUrlRequestParam("serviceId");
+  		url += '&serviceId='+encodeURIComponent(serviceId) + "&isAll=true";
+		//document.location.href = url;
+		var callback=function(psw){
+            var params = _self.getExportAllParams();
+            params.exportPrivteProtected = $.allEncrypt(psw);
+			openLoader(1,jsBizMultLan.atsManager_attendanceResultSumList_i18n_28);
+			shr.ajax({
+				type:"post",
+				url:url,
+				data: $.extend(_self.assemExportData(),{exportPrivteProtected: psw} ),
+				success:function(res){
+					closeLoader();
+					if(null != res && null != res.url){   //这里有可能返回空,所以这里要做飞空判断的,但是不知道这里的业务逻辑,所以这里要问常青和飞羽
+                        shr.redirect(res.url,"");
+                    }
+					//document.location.href = url;
+				},
+				error : function(res){
+					shr.showError({message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_6});
+					closeLoader();
+				}
+			});
+		}
+        if(_self.isNeedExportFilePassword('#exportToExcel')) {
+			fieldSensitiveService.setExportPsw(callback);
+		}else{
+			callback();
+		}
+	},
+		assemExportData:function(exportData){
+		var _self = this ;
+		var fastFilterItems = _self.getFastFilterItems();
+		var advancedFilterItems = _self.getAdvancedFilterItems();
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		
+		var postData = {fastFilterItems : $.toJSON(fastFilterItems)};
+		
+		exportData && (postData = $.extend(postData, exportData));
+		return postData;
+	},
+	
+	exportCommonParam : function(){
+		var self = this;
+		var url = shr.getContextPath() + shr.dynamicURL + "?method=exportToExcel";
+		var uipk = "com.kingdee.eas.hr.ats.app.AttendanceResultSumList";
+		var filterItems = self.getQuickFilterItems();
+		var sorder =   $('#reportGrid').jqGrid('getGridParam', 'sortorder') || "";
+		var sordName = $('#reportGrid').jqGrid('getGridParam', 'sortname') || "";
+
+		//标题
+		   url += "&title="+jsBizMultLan.atsManager_attendanceResultSumList_i18n_8;
+		   url = url + '&uipk=' + uipk + "&sidx=" + sordName+"&page=0"+"&sumType="+sumType + "&sord=" + sorder + "&transverse=1";
+		//如果存在高级搜索的条件,则拼上条件。
+		if(filterItems){
+			url += "&searchFilterItems=" + encodeURIComponent(filterItems);
+		}
+		return url;
+	},
+	exportCurrentAction : function(){
+		var Exchange_json=[];
+		var _self = this;
+		var exportData = {
+			exportSelect:"yes",
+			serviceId:shr.getUrlRequestParam("serviceId")
+		};
+		var selectedIds = $("#reportGrid").jqGrid("getSelectedRows");
+		if (selectedIds.length > 0) {
+			for (var i = 0, length = selectedIds.length; i < length; i++) {
+//				personIds.push($("#reportGrid").jqGrid("getCell", selectedIds[i], "id"));
+				var item = selectedIds[i];
+				var data = $("#reportGrid").jqGrid("getRowData", item);
+				
+				var personId=data["personId"] ;
+				var adminOrgUnit=data["adminOrgUnitId"] ;
+				Exchange_json.push({'personId':personId,'adminOrgUnit':adminOrgUnit});
+			}
+		}
+		if(Exchange_json.length > 0){
+			exportData.PersonJson =  $.toJSON(Exchange_json);
+		}else{
+			shr.showWarning({
+				message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_13
+			});
+			return false;
+		}
+		var callback=function(psw){
+            var params = _self.getExportCurrentParams();
+            params.exportPrivteProtected = $.allEncrypt(psw);
+			openLoader(1,jsBizMultLan.atsManager_attendanceResultSumList_i18n_28);
+			shr.ajax({
+				type:"post",
+				url:_self.exportCommonParam(),
+				data: $.extend( _self.assemExportData(exportData),params ),
+				success:function(res){
+					closeLoader();
+					//document.location.href = url;
+					shr.redirect(res.url,"");
+				},
+				error : function(res){
+					shr.showError({message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_6});
+					closeLoader();
+				}
+			});
+		}
+        if(_self.isNeedExportFilePassword('#exportCurrent'))  {
+			fieldSensitiveService.setExportPsw(callback);
+		}else{
+			callback();
+		}
+
+	},
+    //导出选中参数,供领域获取
+    getExportCurrentParams: function() {
+        var _self = this;
+        var isenableexcelpwd = $('#exportCurrent').attr('data-isenableexcelpwd');
+        var fieldName = this.getExportFieldName();
+        if(isenableexcelpwd == 'false') {
+            if(window.isShrSensitiveRuleOpen) isenableexcelpwd = _self.isSensitiveGrid();
+        }
+
+        var ids = $("#reportGrid").jqGrid("getSelectedRows");
+        var params = {
+            supportQueryUuid: false,
+            selectedData: ids,
+            fieldName_key: fieldName,
+            encryptKeys: 'exportPrivteProtected',
+            isEnableExcelPwd: typeof(isenableexcelpwd) === 'undefined' ? 'false' : JSON.parse(isenableexcelpwd)
+        }
+        return params;
+    },
+	
+
+
+	exportAllExcelAction:function(){
+        var _self = this;
+		var self = this, table = $("#reportGrid");
+		var searchFilterItems = self.getSearchFilterItems();
+		var fastFilterItems = self.getFastFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		var urlinner = shr.getContextPath() + shr.dynamicURL + "?fastFilterItems="+$.toJSON(fastFilterItems)+"&method=toExcel&handler=com.kingdee.shr.customer.gtiit.rpt.ContractListReportALLListHandler"+"&uipk="+shr.getUrlRequestParam('uipk');
+		//var urlinner = shr.getContextPath()  + shr.dynamicURL + "?method=toExcel&handler=com.kingdee.shr.customer.gtiit.rpt.PersonRosterListHandler";
+		//alert(urlinner);
+		openLoader(1,"正在导出,请稍等...");
+		var param2 = "";
+		var test = shr.reloadUrlByPost(urlinner, param2, 'toExcel');
+		
+		closeLoader();
+		/*
+		_self.remoteCall({
+			type: "post",
+			async: false,
+			method: "toExcel",
+			param: {
+				'fastFilterItems' : $.toJSON(fastFilterItems)
+			},
+		});
+		*/
+    }
+	
+});	

+ 478 - 0
GDYSL/addon/customer/web/js/shr/rpt/facultyAbsenceReportList_UAT.js

@@ -0,0 +1,478 @@
+var sidValue = [];
+var orgLongNum="";
+var sumType = "1";
+var colNames;
+var colModel;
+shr.defineClass("shr.customer.gtiit.rpt.facultyAbsenceReportList", shr.framework.List, {
+    gridId: '#reportGrid',
+    reportUipk :   "com.kingdee.eas.facultyAbsenceReport.list" ,
+    rowNumPerPage : 30, // 设置默认分页30
+    colModelData: null,
+    isFirstTimeLoad: 0,
+	initalizeDOM : function () {
+		var that = this;
+		that.setColModelData();
+		shr.customer.gtiit.rpt.facultyAbsenceReportList.superClass.initalizeDOM.call(this);
+		that.initalSearch();
+		// 快速查询添加事件
+		$('#searcher').shrSearchBar('option', {
+			afterSearchClick: this.queryGridByEvent
+		});
+		
+		$("#proposer").attr("maxlength","").attr("validate","");
+		
+		//快速过滤展开
+		if($(".filter-containers").is(":hidden")){
+			$("#filter-slideToggle").click();
+		}
+	} 
+  	 /**
+	 * 选择导航节点
+	 */
+	,queryGridByEvent: function(e) {
+		var viewPage;
+		var self=this;
+		if (e.target) {
+			viewPage = shr.getCurrentViewPage(e.target);
+		} else {
+			viewPage = shr.getCurrentViewPage(e);
+		}
+		// 将页码恢复为第1页
+		$(viewPage.gridId).jqGrid('option', 'page', 1);
+		viewPage.queryAction();
+	},
+	//设置高级查询 
+	initalSearch : function(){
+		$('#grid-toolbar').children().eq(1).append('<div id="searcher" class="pull-right"/>');
+		var searcherFields = [];
+		searcherFields[0] = {columnName:"number",label:'Staff ID'};
+		searcherFields[1] = {columnName:"name",label:'Name'};
+		var options = {
+			gridId: "reportGrid",
+			uipk: "com.kingdee.eas.passports.list",
+			fields :searcherFields
+		};
+		$("#searcher").shrSearchBar(options);
+	},
+	/**
+	 * 获得search查询条件
+	 */
+	getSearchFilterItems: function() {
+		var filter = $('#searcher').shrSearchBar('option', 'filterView');
+		if (filter && filter.filterItems) {
+			return filter.filterItems;
+		}
+	}
+	,queryAction : function () {
+		var self = this;
+		//search搜索
+		var searchFilterItems = self.getSearchFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		//快速过滤
+		var fastFilterItems = self.getFastFilterItems();
+		if(fastFilterItems == undefined){
+			fastFilterItems = "";
+		}
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+
+		var dateRequiredValidate = shr.fastFilterValidateUtil.requiredValidate(this,{"name":"queryTime","errorMessage":"Please select the query period!"});
+		if(!dateRequiredValidate){
+			return;
+		}
+
+		
+		$("#reportGrid").jqGrid('setGridParam', {
+			datatype : 'json',
+			postData : {
+				'NewRearch'   : 'newRearch',
+				'fastFilterItems' : $.toJSON(fastFilterItems),
+				'searchFilterItems' : searchFilterItems,
+				'sumType' : sumType,
+				'page' : 1
+			},
+			page : 0
+		});
+		self.doRenderDataGrid();
+	},
+	setColModelData: function () {
+		var self = this;
+		self.remoteCall({
+			method : "getGridColModel",
+			success : function (data) {
+				colNames = data.colNames;
+				colModel = data.colModel;
+			}
+		})
+	},
+	  
+	/**
+	 * 表格数据请求URL
+	 */
+	getGridDataRequestURL : function () {
+		var serviceId = shr.getUrlRequestParam("serviceId");
+		return this.dynamicPage_url + "?method=getGridData" + "&uipk=" + this.reportUipk + '&serviceId='+encodeURIComponent(serviceId); 
+	},
+
+   doRenderDataGrid : function () {
+		var self = this, table = $("#reportGrid");
+		var searchFilterItems = self.getSearchFilterItems();
+		var fastFilterItems = self.getFastFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		
+		postData = {
+			'searchFilterItems' : searchFilterItems,
+			'fastFilterItems' : $.toJSON(fastFilterItems),
+			'page1' : 1
+		};
+
+		var url = self.getGridDataRequestURL();        
+		var	options = {
+			url : url ,
+			datatype : "json",
+			multiselect : true,
+			rownumbers : false,
+			colNames : colNames,
+			colModel : colModel,
+			rowNum : self.rowNumPerPage,
+			// pager : '#gridPager1',
+			mtype: 'POST',
+			postData: postData ,
+//			height : 'auto',
+			height : '600px',
+//			height : self.rowNumPerPage > 21 ? '600px' : 'auto',
+			rowList : [30,45,60],
+			recordpos : 'left',
+			recordtext : '({0}-{1})/{2}',
+			gridview : true,
+			// pginput : true,
+			shrinkToFit :colModel.length>10?false:true,
+			viewrecords : true,
+			//cellEdit:true,
+            // cellsubmit:"clientArray" ,	
+			// sortname : "sumsql.fproposerid",
+			//caption: "Frozen Header",
+			customPager : '#gridPager1',  
+			pagerpos:"center",
+			pginputpos:"right",
+			pginput:true,     
+			synchTotal:"true",
+			onSelectRow: function(id){ 
+				jQuery('#reportGrid').jqGrid('editRow', id, false, function(){});
+				sidValue.push(id);
+				lastsel2 = id;
+				$("#reportGrid").attr("sid", sidValue.join(","));
+			}
+		};
+
+		options.loadComplete = function (data) {
+			if($("#gridPager1").html() == "" && "true" == "true"){
+				$("#reportGrid").setCustomPager("#gridPager1");
+			}
+			
+			shr.setIframeHeight();
+			$('#gridPager1_left').click(function(){
+				$('.ui-pg-selbox').show();
+				$('.ui-pg-selbox').css({"left":"-60px"})
+				$(this).children('.ui-paging-info').hide();
+			});
+			$("#microToolbar").parent().hide()
+			$("#gridPager1").parent().css({"position":"relative"})  
+			$("#gridPager1").addClass("shrPage").css({
+				"position":"absolute",
+				"top":"-25px",
+				"right":"0px",
+				"background":"#FFF"
+			})
+            shr.customer.gtiit.rpt.facultyAbsenceReportList.superClass.gridLoadComplete.call(this,data);
+		};
+		table.html();
+		table.jqGrid(options);
+		jQuery("#reportGrid").jqGrid(options).jqGrid("reloadGrid");
+		jQuery('#reportGrid').jqGrid('setFrozenColumns');
+		self.firstTime = 1;
+		
+	},
+	handleMicroToolbarInfo : function () {
+
+		var self = this;
+		var html = "";
+		html += "<div class='shrPage page-Title' >";
+		html += "<span id='gripage' class='ui-paging-info' style='cursor: default;display: inline-block;font-size: 13px;padding: 2px 5px 0 0;'></span>";
+		html += "<span id='prevId'  style='vertical-align: text-top;cursor: pointer;' class='ui-icon ui-icon-seek-prev'></span>";
+		html += "<span id='nextId'  style='vertical-align: text-top;cursor: pointer;' class='ui-icon ui-icon-seek-next'></span></div>";
+		
+		$('#microToolbar').html("");
+		$('#microToolbar').append(html);
+
+		$("#gripage").on("click", self.selectRowNumPerPage);
+		$("#prevId").on("click", self.prePage);
+		$("#nextId").on("click", self.nextPage);
+
+		//页码 (1-4)/4
+		self.updatePageEnable();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+		$("#gridPager1").hide();
+		 var ids=jQuery("#reportGrid").jqGrid('getDataIDs');
+         var rowdata=jQuery("#reportGrid").jqGrid('getRowData',ids[0]);  
+		
+		shr.setIframeHeight();
+		$("#reportGrid_frozen").parent().height('583px');
+	},
+	updatePageEnable:function () {
+		var temp = $("#gridPager1_left >div[dir='ltr']").text();
+		if (temp.substring(1, temp.indexOf('-')) == '1') {
+			$("#prevId").addClass("ui-state-disabled");
+		} else {
+			$("#prevId").removeClass("ui-state-disabled");
+		}
+
+		if (parseInt(temp.substring(temp.indexOf('-') + 1, temp.indexOf(')'))) >= parseInt(temp.substring(temp.indexOf('/') + 1).replace(new RegExp(",","gm"),""))) {
+			$("#nextId").addClass("ui-state-disabled");
+		} else {
+			$("#nextId").removeClass("ui-state-disabled");
+		}
+	},
+    
+	getCurPage:function(){
+		//(1-4)/4
+		var self = this,
+		rowNum = self.rowNumPerPage;
+		var temp = $("#gridPager1_left >div[dir='ltr']").text();
+		var curPageNum = (parseInt(temp.substring(1, temp.indexOf('-')))-1)/rowNum+1;
+		return curPageNum;
+	},
+
+	prePage : function () {
+		$("#prev_gridPager1").trigger("click");
+		shr.setIframeHeight();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+	},
+
+	nextPage : function () {
+		$("#next_gridPager1").trigger("click");
+		shr.setIframeHeight();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+	},
+		
+	selectRowNumPerPage:function(){
+			
+	}
+	
+	,
+	exportToExcelAction : function () {
+		openLoader
+  		var _self = this ;
+  		var url = _self.exportCommonParam();
+  		var fastFilterItems = _self.getFastFilterItems();
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+				
+  		 var serviceId = shr.getUrlRequestParam("serviceId");
+  		url += '&serviceId='+encodeURIComponent(serviceId) + "&isAll=true";
+		//document.location.href = url;
+		var callback=function(psw){
+            var params = _self.getExportAllParams();
+            params.exportPrivteProtected = $.allEncrypt(psw);
+			openLoader(1,jsBizMultLan.atsManager_attendanceResultSumList_i18n_28);
+			shr.ajax({
+				type:"post",
+				url:url,
+				data: $.extend(_self.assemExportData(),{exportPrivteProtected: psw} ),
+				success:function(res){
+					closeLoader();
+					if(null != res && null != res.url){   //这里有可能返回空,所以这里要做飞空判断的,但是不知道这里的业务逻辑,所以这里要问常青和飞羽
+                        shr.redirect(res.url,"");
+                    }
+					//document.location.href = url;
+				},
+				error : function(res){
+					shr.showError({message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_6});
+					closeLoader();
+				}
+			});
+		}
+        if(_self.isNeedExportFilePassword('#exportToExcel')) {
+			fieldSensitiveService.setExportPsw(callback);
+		}else{
+			callback();
+		}
+	},
+		assemExportData:function(exportData){
+		var _self = this ;
+		var fastFilterItems = _self.getFastFilterItems();
+		var advancedFilterItems = _self.getAdvancedFilterItems();
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		
+		var postData = {fastFilterItems : $.toJSON(fastFilterItems)};
+		
+		exportData && (postData = $.extend(postData, exportData));
+		return postData;
+	},
+	
+	exportCommonParam : function(){
+		var self = this;
+		var url = shr.getContextPath() + shr.dynamicURL + "?method=exportToExcel";
+		var uipk = "com.kingdee.eas.hr.ats.app.AttendanceResultSumList";
+		var filterItems = self.getQuickFilterItems();
+		var sorder =   $('#reportGrid').jqGrid('getGridParam', 'sortorder') || "";
+		var sordName = $('#reportGrid').jqGrid('getGridParam', 'sortname') || "";
+
+		//标题
+		   url += "&title="+jsBizMultLan.atsManager_attendanceResultSumList_i18n_8;
+		   url = url + '&uipk=' + uipk + "&sidx=" + sordName+"&page=0"+"&sumType="+sumType + "&sord=" + sorder + "&transverse=1";
+		//如果存在高级搜索的条件,则拼上条件。
+		if(filterItems){
+			url += "&searchFilterItems=" + encodeURIComponent(filterItems);
+		}
+		return url;
+	},
+	exportCurrentAction : function(){
+		var Exchange_json=[];
+		var _self = this;
+		var exportData = {
+			exportSelect:"yes",
+			serviceId:shr.getUrlRequestParam("serviceId")
+		};
+		var selectedIds = $("#reportGrid").jqGrid("getSelectedRows");
+		if (selectedIds.length > 0) {
+			for (var i = 0, length = selectedIds.length; i < length; i++) {
+//				personIds.push($("#reportGrid").jqGrid("getCell", selectedIds[i], "id"));
+				var item = selectedIds[i];
+				var data = $("#reportGrid").jqGrid("getRowData", item);
+				
+				var personId=data["personId"] ;
+				var adminOrgUnit=data["adminOrgUnitId"] ;
+				Exchange_json.push({'personId':personId,'adminOrgUnit':adminOrgUnit});
+			}
+		}
+		if(Exchange_json.length > 0){
+			exportData.PersonJson =  $.toJSON(Exchange_json);
+		}else{
+			shr.showWarning({
+				message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_13
+			});
+			return false;
+		}
+		var callback=function(psw){
+            var params = _self.getExportCurrentParams();
+            params.exportPrivteProtected = $.allEncrypt(psw);
+			openLoader(1,jsBizMultLan.atsManager_attendanceResultSumList_i18n_28);
+			shr.ajax({
+				type:"post",
+				url:_self.exportCommonParam(),
+				data: $.extend( _self.assemExportData(exportData),params ),
+				success:function(res){
+					closeLoader();
+					//document.location.href = url;
+					shr.redirect(res.url,"");
+				},
+				error : function(res){
+					shr.showError({message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_6});
+					closeLoader();
+				}
+			});
+		}
+        if(_self.isNeedExportFilePassword('#exportCurrent'))  {
+			fieldSensitiveService.setExportPsw(callback);
+		}else{
+			callback();
+		}
+
+	},
+    //导出选中参数,供领域获取
+    getExportCurrentParams: function() {
+        var _self = this;
+        var isenableexcelpwd = $('#exportCurrent').attr('data-isenableexcelpwd');
+        var fieldName = this.getExportFieldName();
+        if(isenableexcelpwd == 'false') {
+            if(window.isShrSensitiveRuleOpen) isenableexcelpwd = _self.isSensitiveGrid();
+        }
+
+        var ids = $("#reportGrid").jqGrid("getSelectedRows");
+        var params = {
+            supportQueryUuid: false,
+            selectedData: ids,
+            fieldName_key: fieldName,
+            encryptKeys: 'exportPrivteProtected',
+            isEnableExcelPwd: typeof(isenableexcelpwd) === 'undefined' ? 'false' : JSON.parse(isenableexcelpwd)
+        }
+        return params;
+    },
+	
+
+
+	exportAllExcelAction:function(){
+        var _self = this;
+		var self = this, table = $("#reportGrid");
+		var searchFilterItems = self.getSearchFilterItems();
+		var fastFilterItems = self.getFastFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		var urlinner = shr.getContextPath() + shr.dynamicURL + "?fastFilterItems="+$.toJSON(fastFilterItems)+"&method=toExcel&handler=com.kingdee.shr.customer.gtiit.rpt.FacultyAbsenceReportListHandler"+"&uipk="+shr.getUrlRequestParam('uipk');
+		//var urlinner = shr.getContextPath()  + shr.dynamicURL + "?method=toExcel&handler=com.kingdee.shr.customer.gtiit.rpt.PersonRosterListHandler";
+		//alert(urlinner);
+		openLoader(1,"正在导出,请稍等...");
+		var param2 = "";
+		var test = shr.reloadUrlByPost(urlinner, param2, 'toExcel');
+		
+		closeLoader();
+		/*
+		_self.remoteCall({
+			type: "post",
+			async: false,
+			method: "toExcel",
+			param: {
+				'fastFilterItems' : $.toJSON(fastFilterItems)
+			},
+		});
+		*/
+    }
+	
+});	

+ 567 - 0
GDYSL/addon/customer/web/js/shr/rpt/personRosterList_UAT.js

@@ -0,0 +1,567 @@
+var sidValue = [];
+var orgLongNum="";
+var sumType = "1";
+var colNames;
+var colModel;
+shr.defineClass("shr.customer.gtiit.rpt.personRosterList", shr.framework.List, {
+    gridId: '#reportGrid',
+    reportUipk :   "com.kingdee.eas.personroster.list" ,
+    rowNumPerPage : 30, // 设置默认分页30
+    colModelData: null,
+    isFirstTimeLoad: 0,
+	initalizeDOM : function () {
+		var that = this;
+		that.setColModelData();
+		shr.customer.gtiit.rpt.personRosterList.superClass.initalizeDOM.call(this);
+		
+		// 快速查询添加事件
+		$('#searcher').shrSearchBar('option', {
+			afterSearchClick: this.queryGridByEvent
+
+		});
+		/*
+		// 获取当前日期  
+		var currentDate = new Date();  
+		  
+		// 设置过滤条件  
+		var filterItems  = {  
+		  field: 'deadline', // 过滤条件的字段名  
+		  operator: '=', // 运算符,这里使用等于  
+		  value: currentDate.toISOString() // 将当前日期转换为 ISO 格式的字符串  
+		};  
+		  
+		// 将过滤条件添加到过滤条件列表中  
+		var filterItem  = [filterItems];  
+           */
+		$("#deadline").shrDateTimePicker("setValue", new Date());
+		$("#deadline").trigger("change")
+		//快速过滤展开
+		if($(".filter-containers").is(":hidden")){
+			$("#filter-slideToggle").click();
+	
+		}
+		/*
+		setTimeout(function(){
+			var currentDate = new Date();data-id
+			var year = currentDate.getFullYear();
+			var month = (currentDate.getMonth() + 1).toString().padStart(2, '0');
+			var day = currentDate.getDate().toString().padStart(2, '0');
+
+			var formattedDate = year + "-" + month + "-" + day;
+
+			// 在这里编写需要延迟加载的代码
+			$("#deadline").attr("original-value", formattedDate);
+			$("#deadline").attr("title", formattedDate);
+		}, 3000); // 延迟 1 秒执行
+		*/
+		
+	} 
+	,processF7ChangeEvent : function(){
+		var that = this;
+		$('#personType').shrPromptBox("option", {
+			onchange : function(e, value) {
+			   var info = value.current;
+			   	if(info!=null){
+			   	
+				   if (info.length != undefined) {
+				   		orgLongNum = "";
+				   		for (var index = 0; index < info.length; index++) {
+				   			orgLongNum = orgLongNum + info[index].longNumber + "@" ;
+				   		}
+				   		if (orgLongNum.length > 0) {
+				   			orgLongNum = orgLongNum.substring(0,orgLongNum.length -1);
+				   		}
+				   }else{
+					   	if(info.longNumber !=null && info.longNumber!=''){ 
+					   		orgLongNum = info.longNumber;
+					   	}
+				   }
+				}
+			}
+		});
+  	 }
+  	 /**
+	 * 选择导航节点
+	 */
+	,queryGridByEvent: function(e) {
+		var viewPage;
+		var self=this;
+		if (e.target) {
+			viewPage = shr.getCurrentViewPage(e.target);
+		} else {
+			viewPage = shr.getCurrentViewPage(e);
+		}
+		// 将页码恢复为第1页
+		$(viewPage.gridId).jqGrid('option', 'page', 1);
+		viewPage.queryAction();
+	},
+	
+	/**
+	 * 获得search查询条件
+	 */
+	getSearchFilterItems: function() {
+		var filter = $('#searcher').shrSearchBar('option', 'filterView');
+		if (filter && filter.filterItems) {
+			return filter.filterItems;
+		}
+	}
+	,queryAction : function () {
+		var self = this;
+		//search搜索
+		var searchFilterItems = self.getSearchFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		//快速过滤
+		var fastFilterItems = self.getFastFilterItems();
+		if(fastFilterItems == undefined){
+			fastFilterItems = "";
+		}
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		
+		$("#reportGrid").jqGrid('setGridParam', {
+			datatype : 'json',
+			postData : {
+				'NewRearch'   : 'newRearch',
+				'fastFilterItems' : $.toJSON(fastFilterItems),
+				'searchFilterItems' : searchFilterItems,
+				'sumType' : sumType,
+				'page' : 1
+			},
+			page : 0
+		});
+		self.doRenderDataGrid();
+	},
+	setColModelData: function () {
+		var self = this;
+		self.remoteCall({
+			method : "getGridColModel",
+			success : function (data) {
+				colNames = data.colNames;
+				colModel = data.colModel;
+			}
+		})
+	},
+	  
+	/**
+	 * 表格数据请求URL
+	 */
+	getGridDataRequestURL : function () {
+		var serviceId = shr.getUrlRequestParam("serviceId");
+		return this.dynamicPage_url + "?method=getGridData" + "&uipk=" + this.reportUipk + '&serviceId='+encodeURIComponent(serviceId); 
+	},
+
+   doRenderDataGrid : function () {
+		var self = this, table = $("#reportGrid");
+		var searchFilterItems = self.getSearchFilterItems();
+		var fastFilterItems = self.getFastFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		
+		postData = {
+			'searchFilterItems' : searchFilterItems,
+			'fastFilterItems' : $.toJSON(fastFilterItems),
+			'page1' : 1
+		};
+
+		var url = self.getGridDataRequestURL();        
+		var	options = {
+			url : url ,
+			datatype : "json",
+			multiselect : true,
+			rownumbers : false,
+			colNames : colNames,
+			colModel : colModel,
+			rowNum : self.rowNumPerPage,
+			// pager : '#gridPager1',
+			mtype: 'POST',
+			postData: postData ,
+//			height : 'auto',
+			height : '600px',
+//			height : self.rowNumPerPage > 21 ? '600px' : 'auto',
+			rowList : [30,45,60],
+			recordpos : 'left',
+			recordtext : '({0}-{1})/{2}',
+			gridview : true,
+			// pginput : true,
+			shrinkToFit :colModel.length>10?false:true,
+			viewrecords : true,
+			//cellEdit:true,
+            // cellsubmit:"clientArray" ,	
+			// sortname : "sumsql.fproposerid",
+			//caption: "Frozen Header",
+			customPager : '#gridPager1',  
+			pagerpos:"center",
+			pginputpos:"right",
+			pginput:true,     
+			synchTotal:"true",
+			onSelectRow: function(id){ 
+				jQuery('#reportGrid').jqGrid('editRow', id, false, function(){});
+				sidValue.push(id);
+				lastsel2 = id;
+				$("#reportGrid").attr("sid", sidValue.join(","));
+			}
+		};
+
+		options.loadComplete = function (data) {
+			if($("#gridPager1").html() == "" && "true" == "true"){
+				$("#reportGrid").setCustomPager("#gridPager1");
+			}
+			
+			shr.setIframeHeight();
+			$('#gridPager1_left').click(function(){
+				$('.ui-pg-selbox').show();
+				$('.ui-pg-selbox').css({"left":"-60px"})
+				$(this).children('.ui-paging-info').hide();
+			});
+			$("#microToolbar").parent().hide()
+			$("#gridPager1").parent().css({"position":"relative"})  
+			$("#gridPager1").addClass("shrPage").css({
+				"position":"absolute",
+				"top":"-25px",
+				"right":"0px",
+				"background":"#FFF"
+			})
+            shr.customer.gtiit.rpt.personRosterList.superClass.gridLoadComplete.call(this,data);
+		};
+		table.html();
+		table.jqGrid(options);
+		jQuery("#reportGrid").jqGrid(options).jqGrid("reloadGrid");
+		jQuery('#reportGrid').jqGrid('setFrozenColumns');
+		self.firstTime = 1;
+		
+	},
+	handleMicroToolbarInfo : function () {
+
+		var self = this;
+		var html = "";
+		html += "<div class='shrPage page-Title' >";
+		html += "<span id='gripage' class='ui-paging-info' style='cursor: default;display: inline-block;font-size: 13px;padding: 2px 5px 0 0;'></span>";
+		html += "<span id='prevId'  style='vertical-align: text-top;cursor: pointer;' class='ui-icon ui-icon-seek-prev'></span>";
+		html += "<span id='nextId'  style='vertical-align: text-top;cursor: pointer;' class='ui-icon ui-icon-seek-next'></span></div>";
+		
+		$('#microToolbar').html("");
+		$('#microToolbar').append(html);
+
+		$("#gripage").on("click", self.selectRowNumPerPage);
+		$("#prevId").on("click", self.prePage);
+		$("#nextId").on("click", self.nextPage);
+
+		//页码 (1-4)/4
+		self.updatePageEnable();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+		$("#gridPager1").hide();
+		 var ids=jQuery("#reportGrid").jqGrid('getDataIDs');
+         var rowdata=jQuery("#reportGrid").jqGrid('getRowData',ids[0]);  
+		
+		shr.setIframeHeight();
+		$("#reportGrid_frozen").parent().height('583px');
+	},
+	updatePageEnable:function () {
+		var temp = $("#gridPager1_left >div[dir='ltr']").text();
+		if (temp.substring(1, temp.indexOf('-')) == '1') {
+			$("#prevId").addClass("ui-state-disabled");
+		} else {
+			$("#prevId").removeClass("ui-state-disabled");
+		}
+
+		if (parseInt(temp.substring(temp.indexOf('-') + 1, temp.indexOf(')'))) >= parseInt(temp.substring(temp.indexOf('/') + 1).replace(new RegExp(",","gm"),""))) {
+			$("#nextId").addClass("ui-state-disabled");
+		} else {
+			$("#nextId").removeClass("ui-state-disabled");
+		}
+	},
+    
+	getCurPage:function(){
+		//(1-4)/4
+		var self = this,
+		rowNum = self.rowNumPerPage;
+		var temp = $("#gridPager1_left >div[dir='ltr']").text();
+		var curPageNum = (parseInt(temp.substring(1, temp.indexOf('-')))-1)/rowNum+1;
+		return curPageNum;
+	},
+
+	prePage : function () {
+		$("#prev_gridPager1").trigger("click");
+		shr.setIframeHeight();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+	},
+
+	nextPage : function () {
+		$("#next_gridPager1").trigger("click");
+		shr.setIframeHeight();
+		$("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
+	},
+		
+	selectRowNumPerPage:function(){
+			
+	}
+	
+	,
+	exportToExcelAction : function () {
+		openLoader
+  		var _self = this ;
+  		var url = _self.exportCommonParam();
+  		var fastFilterItems = _self.getFastFilterItems();
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+				
+  		 var serviceId = shr.getUrlRequestParam("serviceId");
+  		url += '&serviceId='+encodeURIComponent(serviceId) + "&isAll=true";
+		//document.location.href = url;
+		var callback=function(psw){
+            var params = _self.getExportAllParams();
+            params.exportPrivteProtected = $.allEncrypt(psw);
+			openLoader(1,jsBizMultLan.atsManager_attendanceResultSumList_i18n_28);
+			shr.ajax({
+				type:"post",
+				url:url,
+				data: $.extend(_self.assemExportData(),{exportPrivteProtected: psw} ),
+				success:function(res){
+					closeLoader();
+					if(null != res && null != res.url){   //这里有可能返回空,所以这里要做飞空判断的,但是不知道这里的业务逻辑,所以这里要问常青和飞羽
+                        shr.redirect(res.url,"");
+                    }
+					//document.location.href = url;
+				},
+				error : function(res){
+					shr.showError({message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_6});
+					closeLoader();
+				}
+			});
+		}
+        if(_self.isNeedExportFilePassword('#exportToExcel')) {
+			fieldSensitiveService.setExportPsw(callback);
+		}else{
+			callback();
+		}
+	},
+		assemExportData:function(exportData){
+		var _self = this ;
+		var fastFilterItems = _self.getFastFilterItems();
+		var advancedFilterItems = _self.getAdvancedFilterItems();
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		
+		var postData = {fastFilterItems : $.toJSON(fastFilterItems)};
+		
+		exportData && (postData = $.extend(postData, exportData));
+		return postData;
+	},
+	
+	exportCommonParam : function(){
+		var self = this;
+		var url = shr.getContextPath() + shr.dynamicURL + "?method=exportToExcel";
+		var uipk = "com.kingdee.eas.hr.ats.app.AttendanceResultSumList";
+		var filterItems = self.getQuickFilterItems();
+		var sorder =   $('#reportGrid').jqGrid('getGridParam', 'sortorder') || "";
+		var sordName = $('#reportGrid').jqGrid('getGridParam', 'sortname') || "";
+
+		//标题
+		   url += "&title="+jsBizMultLan.atsManager_attendanceResultSumList_i18n_8;
+		   url = url + '&uipk=' + uipk + "&sidx=" + sordName+"&page=0"+"&sumType="+sumType + "&sord=" + sorder + "&transverse=1";
+		//如果存在高级搜索的条件,则拼上条件。
+		if(filterItems){
+			url += "&searchFilterItems=" + encodeURIComponent(filterItems);
+		}
+		return url;
+	},
+	exportCurrentAction : function(){
+		var Exchange_json=[];
+		var _self = this;
+		var exportData = {
+			exportSelect:"yes",
+			serviceId:shr.getUrlRequestParam("serviceId")
+		};
+		var selectedIds = $("#reportGrid").jqGrid("getSelectedRows");
+		if (selectedIds == undefined || selectedIds.length <= 0 || (selectedIds && selectedIds.length ==
+				1 && selectedIds[0] == "")) {
+			shr.showError({
+				message: "请先选中表格中的数据!",
+				hideAfter: 5
+			});
+			return false;
+		}
+		/*
+		_self.remoteCall({
+			type: "post",
+			async: false,
+			method: "exportCurrent",
+			param: {
+				billIds: selectedIds.toString()
+			},
+		});
+		*/
+		if (selectedIds.length > 0) {
+			for (var i = 0, length = selectedIds.length; i < length; i++) {
+//				personIds.push($("#reportGrid").jqGrid("getCell", selectedIds[i], "id"));
+				var item = selectedIds[i];
+				var data = $("#reportGrid").jqGrid("getRowData", item);
+				
+				var personId=data["personId"] ;
+				var adminOrgUnit=data["adminOrgUnitId"] ;
+				Exchange_json.push({'personId':personId,'adminOrgUnit':adminOrgUnit});
+			}
+		}
+		if(Exchange_json.length > 0){
+			exportData.PersonJson =  $.toJSON(Exchange_json);
+		}else{
+			shr.showWarning({
+				message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_13
+			});
+			return false;
+		}
+		var callback=function(psw){
+            var params = _self.getExportCurrentParams();
+            params.exportPrivteProtected = $.allEncrypt(psw);
+			openLoader(1,jsBizMultLan.atsManager_attendanceResultSumList_i18n_28);
+			shr.ajax({
+				type:"post",
+				url:_self.exportCommonParam(),
+				//method : "toexportCurrent",
+				data: $.extend( _self.assemExportData(exportData),params ),
+				success:function(res){
+					closeLoader();
+					//document.location.href = url;
+					shr.redirect(res.url,"");
+				},
+				error : function(res){
+					shr.showError({message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_6});
+					closeLoader();
+				}
+			});
+		}
+        if(_self.isNeedExportFilePassword('#exportCurrent'))  {
+			fieldSensitiveService.setExportPsw(callback);
+		}else{
+			callback();
+		}
+
+	},
+    //导出选中参数,供领域获取
+    getExportCurrentParams: function() {
+        var _self = this;
+        var isenableexcelpwd = $('#exportCurrent').attr('data-isenableexcelpwd');
+        var fieldName = this.getExportFieldName();
+        if(isenableexcelpwd == 'false') {
+            if(window.isShrSensitiveRuleOpen) isenableexcelpwd = _self.isSensitiveGrid();
+        }
+
+        var ids = $("#reportGrid").jqGrid("getSelectedRows");
+        var params = {
+            supportQueryUuid: false,
+            selectedData: ids,
+            fieldName_key: fieldName,
+            encryptKeys: 'exportPrivteProtected',
+            isEnableExcelPwd: typeof(isenableexcelpwd) === 'undefined' ? 'false' : JSON.parse(isenableexcelpwd)
+        }
+        return params;
+    },
+	
+	exportAllExcelAction:function(){
+        var _self = this;
+		var self = this, table = $("#reportGrid");
+		var searchFilterItems = self.getSearchFilterItems();
+		var fastFilterItems = self.getFastFilterItems();
+		if( searchFilterItems == undefined)
+			searchFilterItems = "" ;
+		if( fastFilterItems == undefined)
+			fastFilterItems = "" ;
+		if(fastFilterItems["add"] == ""){
+			fastFilterItems["add"] = null;
+		}
+		
+		//R20190625-2369保存方案后,其它条件设置的条件被清空
+		//需把视图的filterItem其他条件name="add"改成name="advancedFilter" 
+		var advancedFilterItems = self.getAdvancedFilterItems();
+		
+		if(advancedFilterItems != undefined){
+			fastFilterItems["add"] = advancedFilterItems;
+		}
+		/*
+		var urlinner = shr.getContextPath() + shr.dynamicURL + "?fastFilterItems="+$.toJSON(fastFilterItems)+"&method=toExcel&handler=com.kingdee.shr.customer.gtiit.rpt.PersonRosterListHandler"+"&uipk="+shr.getUrlRequestParam('uipk');
+		//var urlinner = shr.getContextPath()  + shr.dynamicURL + "?method=toExcel&handler=com.kingdee.shr.customer.gtiit.rpt.PersonRosterListHandler";
+		//alert(urlinner);
+		openLoader(1,"正在导出,请稍等...");
+		var param2 = "";
+		var test = shr.reloadUrlByPost(urlinner, param2, 'toExcel');
+		
+		closeLoader();
+		*/
+		/*
+		_self.remoteCall({
+			type: "post",
+			async: false,
+			method: "toExcel",
+			param: {
+				'fastFilterItems' : $.toJSON(fastFilterItems)
+			},
+		});
+		*/
+		openLoader(1,"正在导出,请稍等...");
+		var urlinner = shr.getContextPath() + shr.dynamicURL;  
+
+			var data = {  
+
+				fastFilterItems: $.toJSON(fastFilterItems),  
+
+				method: 'toExcel',  
+
+				handler: 'com.kingdee.shr.customer.gtiit.rpt.PersonRosterListHandler',  
+
+				uipk: shr.getUrlRequestParam('uipk')  
+
+			};  
+
+			  
+
+			//$.post(urlinner, data)  
+					var test = shr.reloadUrlByPost(urlinner, data, 'toExcel');
+					closeLoader();
+             /*
+			.done(function(data) {  
+
+				// 处理返回的数据  
+
+			})  
+
+			.fail(function(jqXHR, textStatus, errorThrown) {  
+
+				console.error('Error:', textStatus, errorThrown);  
+
+			});
+			*/
+					
+				}
+				
+			});	

+ 212 - 0
GDYSL/addon/customer/web/js/shr/salary/salaryBagChangeEdit_UAT.js

@@ -0,0 +1,212 @@
+shr.defineClass('shr.salary.salaryBagChangeEdit',shr.framework.Edit , {
+	
+	
+	
+	initalizeDOM: function () {
+		var _self = this;
+		shr.salary.salaryBagChangeEdit.superClass.initalizeDOM.call(this);
+		$("#addRow_entrys").hide();
+		$("#deleteRow_entrys").hide();
+		if(this.operateState.toUpperCase() != 'VIEW'){
+			this.wageSplitting();
+			//页面初始化
+			this.initBillData();
+			_self.getField("applyDate").shrDateTimePicker('setValue',new Date());
+		}
+		
+		if(this.operateState.toUpperCase() == 'ADDNEW'){
+			$("#sourceBillId").parents(".field-basis1").hide();
+		}
+	},
+	
+	initBillData:function(){
+		var self = this;
+		var billId = $.getUrlParam("sourceBillId");
+		if(billId != null && billId != "" ){
+			self.remoteCall({
+				method : 'getSoureBillData',
+				async : false,
+				param : {
+						"billId" : billId
+						},
+				success:function(data){
+					
+					$("#hrOrgUnit").shrPromptBox("setValue",{id:'00000000-0000-0000-0000-000000000000CCE7AED4',name:'Guangdong Technion Israel Institute of Technology'});
+					//员工
+					$("#person").shrPromptBox("setValue", {id:data.personId,name:data.personName});
+					//币种
+					$('#paycurrency').shrSelect('setValue',data.paycurrency);
+					//薪酬项目
+					$("#cmpItem").shrPromptBox("setValue", {id:data.cmpItemId,name:data.cmpItemName});
+					//生效时间
+					$("#startDate").shrDateTimePicker("setValue", data.startDate);
+					//失效时间
+					$("#endDate").shrDateTimePicker("setValue", data.endDate);
+					//金额
+					$("#money").shrTextField("setValue", data.money);
+					//原始单据ID
+					$("#sourceBillId").shrTextField("setValue", billId);
+					var monthList = data.entry;
+					for(var i = 1; i <= monthList.length ; i++){
+						var initialRow = i - 1;
+						var rowdata = monthList[initialRow];
+						rowdata.cmpItem = {"id" : rowdata.cmpItemId , "name" : rowdata.cmpItemName};
+						//生成分录数据
+						var row = self.getField("entrys").jqGrid("addRowData", initialRow, rowdata, "last");
+					}
+				}
+			});
+		}
+	},
+	
+	wageSplitting:function(){
+		var self = this;
+		self.getField('endDate').on("change", function(){
+			if(self.checkDate()){
+				self.defaultGriData();
+			}
+			
+		});
+		self.getField('reissueDate').on("change", function(){
+			if(self.checkDate()){
+				self.defaultGriData();
+			}
+			
+		});
+	},
+	
+	defaultGriData : function(){
+		var self = this;
+		var money =  $("#money").val();
+		var startDate =  $("#startDate").val();
+		var endDate =  $("#endDate").val();
+		var reissueDate =  $("#reissueDate").val();
+		var billId =  $("#sourceBillId").val();
+		if(money && startDate && endDate && reissueDate && billId){
+			//清空表格数据
+			self.getField("entrys").jqGrid("clearGridData");
+			self.remoteCall({
+				method : 'createEntryDetail',
+				async : false,
+				param : {
+						"startDate" : startDate+"-01",
+						"endDate" : endDate+"-01",
+						"reissueDate" : reissueDate+"-01",
+						"money" : money,
+						"billId" : billId
+						},
+				success:function(data){
+					for(var i = 1; i <= data.length ; i++){
+						var initialRow = i - 1;
+						var rowdata = data[initialRow];
+						rowdata.cmpItem = {"id" : rowdata.cmpItemId , "name" : rowdata.cmpItemName};
+						//生成分录数据
+						var row = self.getField("entrys").jqGrid("addRowData", initialRow, rowdata, "last");
+					}
+				}
+			});
+			
+			
+		}
+	},
+	
+
+	checkDate :function(){
+		var startDate =  $("#startDate").val();
+		var endDate =  $("#endDate").val();
+		var reissueDate =  $("#reissueDate").val();
+		if(startDate && endDate && endDate < startDate){
+			shr.showInfo({message: "The expiration date cannot be later than the effective date !"});
+			return false;
+		}
+		if(reissueDate && endDate && endDate < reissueDate){
+			shr.showInfo({message: "The replacement date cannot be longer than the expiration date !"});
+		}
+		return true;
+	},
+	
+	/**
+	 * 对保存、提交的数据进行确认
+	 */
+	verify: function() {
+		var self = this;
+		// shr.showInfo({message: message});
+		var startDate =  $("#startDate").val();
+		var endDate =  $("#endDate").val();
+		var sourceBillId =  $("#sourceBillId").val();
+		var fid = $("#id").val();
+		
+		var cmpItemId;
+		var personId;
+		if (_self.getOperateState().toUpperCase() == 'VIEW') {
+            cmpItemId = $("#cmpItem").val();
+			personId = $("#person").val();
+        }else {
+            cmpItemId = $("#cmpItem_el").val();
+			personId = $("#person_el").val();
+        }
+
+		if(startDate && endDate && endDate < startDate){
+			shr.showInfo({message: "The expiration date cannot be later than the effective date"});
+			return false;
+		}
+		var obj = $("#entrys").jqGrid("getRowData");
+		var money =  $("#money").val();
+		var entriesMonty = 0;
+		for(var i = 0 ; i < obj.length ; i++){
+			entriesMonty = entriesMonty + obj[i].moneys;
+		}
+		var resultFlag = true;
+		self.remoteCall({
+			method : 'checkDate',
+			async : false,
+			param : {
+					"startDate" : startDate+"-01",
+					"endDate" : endDate+"-01",
+					"fid" : fid,
+					"sourceBillId" : sourceBillId,
+					"cmpitemId" : cmpItemId,
+					"personId" : personId
+					},
+			success:function(data){
+				resultFlag = data;
+			}
+		});
+		if( !resultFlag){
+			shr.showInfo({message: "Employee salary package period overlaps"});
+			return false;
+		}
+		return true;
+	},
+		
+
+	
+	submitEffectAction : function (event) {
+		var _self = this,
+		workArea = _self.getWorkarea(),
+		$form = $('form', workArea);
+		if ($form.valid() && _self.verify()) {
+			shr.showConfirm('您确认要提交生效吗?', function() {
+				_self.prepareSubmitEffect(event, 'submitEffect');
+			});
+		}	
+	},
+	
+	prepareSubmitEffect : function (event, action){
+		var _self = this;
+		var data = _self.assembleSaveData(action);
+		var target;
+		if (event && event.currentTarget) {
+			target = event.currentTarget;
+		}
+		shr.doAction({
+			target: target,
+			url: _self.dynamicPage_url,
+			type: 'post', 
+			data: data,
+			success : function(response) {
+				_self.goNextPage(target);
+			}
+		});	
+	},
+});

+ 189 - 0
GDYSL/addon/customer/web/js/shr/salary/salaryBagEdit_UAT.js

@@ -0,0 +1,189 @@
+shr.defineClass('shr.salary.salaryBagEdit',shr.framework.Edit , {
+	
+	
+	
+	initalizeDOM: function () {
+		var _self = this;
+		shr.salary.salaryBagEdit.superClass.initalizeDOM.call(this);
+		$("#addRow_entrys").hide();
+		$("#deleteRow_entrys").hide();
+		if(this.operateState.toUpperCase() != 'VIEW'){
+			this.wageSplitting();
+		}
+		
+		if(this.operateState.toUpperCase() == 'ADDNEW'){
+			_self.getField("applyDate").shrDateTimePicker('setValue',new Date());
+			$("#reissueDate").parents(".field-basis1").hide();
+			$("#sourceBillId").parents(".field-basis1").hide();
+			$("#entrys").setGridParam().hideCol("beforeAmount");
+			$("#entrys").setGridParam().hideCol("reissueAmount");
+			$("#entrys").setGridParam().hideCol("amountPayable");
+		}
+		
+	},
+	
+	
+	
+	wageSplitting:function(){
+		var self = this;
+		self.getField('paycurrency').on("change", function(){
+			self.defaultGriData();
+		});
+		self.getField('cmpItem').on("change", function(){
+			self.defaultGriData();
+		});
+		self.getField('money').on("change", function(){
+			self.defaultGriData();
+		});
+		self.getField('startDate').on("change", function(){
+			if(self.checkDate()){
+				self.defaultGriData();
+			}
+		});
+		self.getField('endDate').on("change", function(){
+			if(self.checkDate()){
+				self.defaultGriData();
+			}
+			
+		});
+	},
+	
+	defaultGriData : function(){
+		var self = this;
+		var paycurrency =  $("#paycurrency").val();
+		var cmpItemId = this.getFieldValue("cmpItem");
+		var cmpItemName =  $("#cmpItem").val();
+		var money =  $("#money").val();
+		var startDate =  $("#startDate").val();
+		var endDate =  $("#endDate").val();
+		if(paycurrency && cmpItemId && money && startDate && endDate){
+			//清空表格数据
+			self.getField("entrys").jqGrid("clearGridData");
+			//1、获取月份明细
+			var monthList = self.getMonthsBetween(startDate,endDate);
+			money = Number(money);
+			var avgMonty = Math.round( money / monthList.length).toFixed(2);
+			//var remainder = money % monthList.length;
+			var rowdata = {};
+			//jdGrid列表初始化
+			for(var i = 1; i <= monthList.length ; i++){
+				var initialRow = i - 1;
+				rowdata.months = monthList[initialRow];
+				if( i == monthList.length ){
+						//rowdata.moneys = avgMonty + remainder;
+						// 总金额减去前面几个月的金额
+					rowdata.moneys=(money-avgMonty*(monthList.length-1)).toFixed(2);
+				}else{
+					rowdata.moneys = avgMonty;
+				}
+				rowdata.paycurrency = paycurrency;
+				rowdata.cmpItem = {"id" : cmpItemId , "name" : cmpItemName};
+				//生成分录数据
+				var row = self.getField("entrys").jqGrid("addRowData", initialRow, rowdata, "last");
+			}
+			
+			
+		}
+	},
+	
+	getMonthsBetween : function(date1, date2) {  
+		var start = new Date(date1);  
+		var end = new Date(date2);  
+		var months = [];  
+		var currentDate = start;  
+		while (currentDate <= end) {  
+			months.push(new Date(currentDate));  
+			currentDate.setMonth(currentDate.getMonth() + 1);  
+		}  
+		return months;
+	},
+
+	checkDate :function(){
+		var startDate =  $("#startDate").val();
+		var endDate =  $("#endDate").val();
+		if(startDate && endDate && endDate < startDate){
+			shr.showInfo({message: "The expiration date cannot be later than the effective date"});
+			return false;
+		}
+		return true;
+	},
+	
+	/**
+	 * 对保存、提交的数据进行确认
+	 */
+	verify: function() {
+		var self = this;
+		// shr.showInfo({message: message});
+		var startDate =  $("#startDate").val();
+		var endDate =  $("#endDate").val();	
+		var sourceBillId =  $("#sourceBillId").val();
+		var fid = $("#id").val();
+
+		var cmpItemId;
+		var personId;
+		if (_self.getOperateState().toUpperCase() == 'VIEW') {
+            cmpItemId = $("#cmpItem").val();
+			personId = $("#person").val();
+        }else {
+            cmpItemId = $("#cmpItem_el").val();
+			personId = $("#person_el").val();
+        }
+		
+		if(startDate && endDate && endDate < startDate){
+			shr.showInfo({message: "The expiration date cannot be later than the effective date"});
+			return false;
+		}
+		var resultFlag = true;
+		self.remoteCall({
+			method : 'checkDate',
+			async : false,
+			param : {
+					"startDate" : startDate+"-01",
+					"endDate" : endDate+"-01",
+					"fid" : fid,
+					"sourceBillId" : sourceBillId,
+					"cmpitemId" : cmpItemId,
+					"personId" : personId
+					},
+			success:function(data){
+				resultFlag = data;
+			}
+		});
+		if( !resultFlag){
+			shr.showInfo({message: "Employee salary package period overlaps"});
+			return false;
+		}
+		return true;
+	},
+		
+
+	
+	submitEffectAction : function (event) {
+		var _self = this,
+		workArea = _self.getWorkarea(),
+		$form = $('form', workArea);
+		if ($form.valid() && _self.verify()) {
+			shr.showConfirm('您确认要提交生效吗?', function() {
+				_self.prepareSubmitEffect(event, 'submitEffect');
+			});
+		}	
+	},
+	
+	prepareSubmitEffect : function (event, action){
+		var _self = this;
+		var data = _self.assembleSaveData(action);
+		var target;
+		if (event && event.currentTarget) {
+			target = event.currentTarget;
+		}
+		shr.doAction({
+			target: target,
+			url: _self.dynamicPage_url,
+			type: 'post', 
+			data: data,
+			success : function(response) {
+				_self.goNextPage(target);
+			}
+		});	
+	},
+});