列表页面点击按钮,弹出对话框,并实现相应逻辑场景。

栏目:s-hr cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

列表页面点击按钮,弹出对话框,并实现相应逻辑场景。

【业务场景】:在单据列表界面,新增按钮【获取销量利润数据】,点击按钮后,弹出调用接口参数界面。选择好参数后,点击“确定”,实现数据校验和接口数据同步。


【效果图】:

image.webp


image.webp


image.webp



【实现方案】:

在按钮方法中,增加弹框方法:

     /**
     * 描述:获取销量利润action 
     */
    getBISalesDataAction: function() {
		var _self=this;
                createSalesParamsDialog(_self, 0, '');	
    },
    
    /**
     * 弹出参数对话框
     * 
     */
function createSalesParamsDialog(that, type, ruleId) { 
        var dialogHtml = '<div id="creatParamsDialog" class="rules_content" style="height:224px!important">'
	    +'<div><span class="span_name">选择省份</span><form id="orgIdForm" action="orgIdForm">                                    <input type="text" id="orgId" name="orgId" class="bg_lightblue" style="float:left" readonly="readonly"><input id="orgIdHiddenText" type="text" style="display:none" /></form></span>'
            +'<span class="span_name">期间</span><span class="msgwrap"><input type="text" disabled="true"  id="yearMonth" class="required" disabled="disabled" /></span></div>'
	    +'</div>'
	
	$(document.body).append(dialogHtml);

        // 省份F7
	var orgId_f7_json = {id: "orgId", name: "orgId"};
        orgId_f7_json.subWidgetName = 'shrPromptGrid';
	var filter = "isSealUp ='0' and unitLayerType.name ='一级公司'";
        orgId_f7_json.subWidgetOptions = {
            title: "选择省份",
            uipk: "com.kingdee.eas.basedata.org.app.AdminOrgUnitEx.F7",
            query: "",
            filter: filter
        };
        $('#orgId').shrPromptBox(orgId_f7_json);
        $('#orgIdForm').shrForm({id: "orgIdForm"});//包裹一个form, 为了提供validate功能
        $('#orgId').shrPromptBox('addRules', {required: true});
        $('.ui-promptBox-icon').addClass('required');
	
	//期间控件处理
	$('#yearMonth').shrDatePicker().val(new Date().format('yyyy-MM'));
	$('#yearMonth').removeAttr("disabled");
	$('#yearMonth').attr('readonly', 'true');
	$('.ui-datepicker-frame .ui-datepicker-layout').addClass('required');
	$('#yearMonth').change('onChange',
		function(e){
			var newDate = $('#yearMonth').shrDatePicker('getValue');
			newDate= newDate.substr(0,7);
			$('#yearMonth').shrDatePicker('setValue',newDate);
	});
	
        var title = '获取员工销量利润';

        $("#creatParamsDialog").show();
        // 将弹出对话框弹出
    $('#creatParamsDialog').dialog({
        title: title,
        autoOpen: true,
        show: "blind",
        width: 870,
        minWidth: 870,
        height: 250,
        minHeight: 250,
        resizable: true,
        position: ['center', 'center'],
        modal: true,
        open: function(){
            $('#creatParamsDialog').find('label.error').hide();
        },
        buttons: {
            "确定": function () {

                var orgName = $("#orgId").val();//组织名称
                var orgId = $("#orgId_el").val();//组织id
		var yearMonth =$("#yearMonth").val();//期间
		//这里调用OSF,实现相应后端逻辑			
		shr.callService({
			serviceName : 'biDataCheckService',
			param : {
				"orgName " : orgName ,
				"yearMonth " : yearMonth
			},
			async:false,//同步
			success: function(result) {
				var showMessage = "数据拉取完成,期间:【"+yearMonth+"】,省份:【"+orgParams+"】,BI总数据条数:"+result.totalCount;

				shr.showInfo({
					message: showMessage,
					hideAfter: 30
				});
			    //列表刷新
			    that.reloadGrid();
			}
		});
            },
            "取消": function () {
                $(this).dialog("destroy").remove();
            }
        },
        close: function () {
            $(this).dialog("destroy").remove();
        }
    });
    // 为了防止基础资料F7弹框基于样式ui-dialog-buttonset定位生成显示常用数据控件而发生冲突,这里修改下样式名称 liuzw
    $(".ui-dialog-buttonset").removeClass("ui-dialog-buttonset").addClass("ui-special-dialog-buttonset");
}


列表页面点击按钮,弹出对话框,并实现相应逻辑场景。

【业务场景】:在单据列表界面,新增按钮【获取销量利润数据】,点击按钮后,弹出调用接口参数界面。选择好参数后,点击“确定”,实现数据...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息