业务场景:列表界面选择一行数据之后,判断数据状态,打开新页面。
打开新页面时,传递当前选择行记录的ID到新页面,在新页面进行下一步操作,页面链接中注意uipk参数。
option.url = waf.getContextPath() + "/dynamicForm.do?event=initialize&uipk=com.kingdee.eas.custom.DetectionResultRedtcPage&waf2skin=easbase&method=doEvent&debug=true&billId=" + billId;
// 重检
redtc:function(event,value){
var selectedId = waf("#queryGrid").dataGrid("getSelectedRow");
if (selectedId == undefined || selectedId == null) {
_self.showMessage("请在检测结果表格选择记录行!");
return;
}
// 派工单ID、派工单分录ID、检测状态
var dtcStatus = waf("#queryGrid").wafGrid("getCell", selectedId, "dtcStatus");
var billId = selectedId;
if(dtcStatus == null || dtcStatus != 30){
_self.showMessage("只允许在检测结果表格中选择检毕状态的记录进行重检!");
return;
}
var option = {
OpenType:"iframe",
//bgiframe:false,
method:'POST',
modal:true,
openFromParent:false,
position:'center',
showTitleBar:true,
autoMax:false,
width:900,
height:650,
minHeight:400,
minWidth:350,
iconCls:"ui-icon-winIcon",
draggable:true,
resizable:false,
hideEffect:"slide"
};
// 传参时直接在链接地址中拼接参数
// 在跳转的页面上,可以直接接收参数
option.url = waf.getContextPath() + "/dynamicForm.do?event=initialize&uipk=com.kingdee.eas.custom.DetectionResultRedtcPage&waf2skin=easbase&method=doEvent&debug=true&billId=" + billId;
option.title = "重检通知";
option.onOpenCompleted = function(event, ui){
waf(window).unbind("resize", waf.window);
waf(window).bind("resize", waf.window);
}
waf.window.open(option);
}
/**************************提示:只允许修改开发区域,其他区域会被覆盖!********************************/
mod.definePage("extend/custom/js/DetectionResultRedtcPage",function(waf){
//@beginUseModule
//@endUseModule
var _public = {},_private = {},me=_self;
//@beginPublic
waf.extend(_public,{
//控件事件描述:
confirm:function(event,value){
return _private.confirm(event,value);
}
,
//控件事件描述:
close:function(event,value){
return _private.close(event,value);
}
});
//@endPublic
/**************************开发区域开始**********************************************/
//@beginPrivate
waf.extend(_private,{
// 确定,重检操作,发送邮件通知
confirm:function(event,value){
// 页面传参
var billId = _self.getUrlParam("billId"); //检测结果ID
var message = waf("#txtMessage").wafTextarea("getValue"); //通知内容
var users = waf("#prmtUser").wafPromptBox("getValue"); //消息接收人
var userIds = "";
for(var i = 0; i < users.length; i++){
var user = users[i];
if(userIds == ""){
userIds = user.id;
} else {
userIds += "," + user.id;
}
}
if(message == null || message == ""){
_self.showMessage("消息内容不能为空!");
return;
}
if(userIds == null || userIds == ""){
_self.showMessage("接收人不能为空!");
return;
}
waf.ajax({
// 该辅助页面的请求也发至检测结果序时簿界面功能控制层
url:waf.getContextPath() + "/lims/detectionResultList.do?method=redtc",
data:{billId:billId, userIds:userIds, message:message},
type:'post',
dataType:'',
async:false,
success:function(data){
// alert(waf.toJSON(data));
_self.showMessage(data.data);
// 刷新父页面数据
window.parent.document.getElementById("btnRefresh").click();
}
});
},
// 关闭当前页面
close:function(event,value){
waf.window.close(parent._self.editWin);
}
});//@endPrivate
/**************************开发区域结束**********************************************/
return _public;
});