获取当前行所有JSON数据:
shr.toJSON($("#grid").jqGrid("getSelectedRowsData"))
获取当前选中行的id
shr.getUrlRequestParam("billId");
$("#grid").jqGrid("getSelectedRows");
/*(2) ['YWUAAAgIB8DEalgO', 'YWUAAAgIC6nEalgO']0: "YWUAAAgIB8DEalgO"1: "YWUAAAgIC6nEalgO"length: 2[[Prototype]]: Array(0)*/
//获取行
var billId = $("#grid").jqGrid("getSelectedRows");
//判断是否选择行
if (billId == undefined || billId.length == 0 || (billId && billId.length == 1 && billId[0] == "")) {
shr.showWarning({message: "请先选中行!"});
return;
var realBillId = [];
var billLength = billId.length;
for (var i = 0; i < billLength; i++) {
//去除重复处理
if ($.inArray(billId[i], realBillId) == -1) {
realBillId.push(billId[i]);
}
}
只能选择一行
if(realBillId.length>1){
shr.showWarning({message: "请选中一行!"});
return ;
}
//调用非同视图下方法
shr.callHandler({
handler: "com.kingdee.eas.custom.shr.person.PeriodConfirmEditHandler",
action: 'savePerson',
param: {currentids:currentid,calSchemeid:calScheme,cmpPeriodid:cmpPeriod,cmpItemid:cmpItem},
async: false,
type:"POST",
success: function(data) {
}
});
//调用同视图下方法
this.remoteCall({
method: "getOperate",
success: function(data) {
$("#person").shrPromptBox("setValue", data.person);
$("#personDep").shrPromptBox("setValue", data.personDep);
$("#billCreateTime").shrDatePicker('setValue',data.billCreateTime);
}
});
//后台标准返回方法
public void getOperateAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap) throws WafException{
try {
UserInfo userInfo = ContextUtil.getCurrentUserInfo(this.ctx);
PersonInfo personInfo = userInfo.getPerson();
String personId = personInfo.getId().toString();
PersonPositionInfo personPositionInfo = PersonPositionFactory.getLocalInstance(this.ctx).getPersonPositionInfo("where person='"+personId+"'");
String personDepID = personPositionInfo.getPersonDep().getId().toString();
AdminOrgUnitInfo adminOrgUnitInfo = AdminOrgUnitFactory.getLocalInstance(this.ctx).getAdminOrgUnitInfo(new ObjectUuidPK(personDepID));
Timestamp billCreateTime = HRTimeWebUtils.dateToTimestamp(new Date());
modelMap.put("person", personInfo);
modelMap.put("personDep", adminOrgUnitInfo);
modelMap.put("billCreateTime", billCreateTime);
writeSuccessData(modelMap);
} catch (Exception e) {
JSONUtils.ERROR("获取制单人信息失败!");
}
}
//后台返回参数两种方法
(1)writeSuccessData(param);
(2)JSONUtils.SUCCESS(ajaxData);
//catch到异常用
JSONUtils.ERROR("获取制单人信息失败!");
提交生效与反审批标准方法、
/**
* 提交生效
*/
,submitEffectAction: function(event) {
var self = this;
if (self.validate() && self.verify()) {
shr.showConfirm("您确认要提交生效吗?", function() {
self.doSubmitEffect(event);
});
}
}
,doSubmitEffect : function(event){
var self = this;
var data = self.assembleSaveData("submitEffect");
var target;
if (event && event.currentTarget) {
target = event.currentTarget;
}
shr.doAction({
target: target,
url: self.dynamicPage_url,
type: 'post',
data: data,
showBlock : true,
success : function(response) {
self.goNextPage(target);
}
});
}
//反审批
,unAuditedAction : function (){
var _self = this;
var billId = $("#grid").jqGrid("getSelectedRows");
if(billId.length != 1) {
shr.showWarning({message : "请选择表格中的一行数据",hideAfter : 5});
return;
}
var billState=$("#grid").jqGrid("getCell", billId[0], "billState")||0;
if(billState != 3){
shr.showWarning({message : '"审批通过"的单据才能反审批!',hideAfter : 5});
return;
}
shr.showConfirm("您确认要反审批吗?", function() {
var data = {
method: 'unAudited',
billId: billId[0]
};
data = $.extend(_self.prepareParam(), data);
shr.doAction({
url: _self.dynamicPage_url,
type: 'post',
data: data,
success : function(response) {
_self.reloadGrid();
}
});
});
}
/**
* 反审批
* @param request
* @param response
* @param modelMap
* @return
* @throws SHRWebException
*/
public void unAuditedAction (HttpServletRequest request,
HttpServletResponse response, ModelMap modelMap)
throws SHRWebException {
String billId = request.getParameter("billId");
try {
MoralityEvaluationFactory.getRemoteInstance().untiCheckBizBill(billId);
JSONUtils.SUCCESS(billId);
} catch (Exception e) {
logger.error(e);
throw new ShrWebBizException(e.getMessage(),e);
}
}
撤回功能标准代码
/**
* 撤回
* @Title: abortBillAction
* @Description:
* @param request
* @param response
* @param modelMap
* @throws SHRWebException
* @return: void
* @throws
*/
public void abortBillAction(HttpServletRequest request,
HttpServletResponse response, ModelMap modelMap)
throws SHRWebException {
logger.info("abortBillAction ===");
String billId = getBillId(request);
if (!(StringUtils.isEmpty(billId))) {
try {
IFirmaFluctuationBizBill remoteInstance = FirmaFluctuationBizBillFactory
.getRemoteInstance();
remoteInstance.abortBizBill(billId);
} catch (EASBizException e) {
logger.info(e.getMessage());
} catch (BOSException e) {
logger.info(e.getMessage());
}
JSONUtils.SUCCESS(billId);
}
}
//将数组放到session缓存中sessionStorage.setItem("selectedData", null); //清空缓存, key - value
sessionStorage.setItem("selectedData", JSON.stringify(selectedData));