package xin.glue.ui.common; import com.posdata.glue.biz.constants.PosBizControlConstants; import com.posdata.glue.context.PosContext; public class PosGridSave extends PosDBEngine { public String runActivity(PosContext ctx) { /* * rowStatus:网格状态属性 * writeLog :是否需要记录到日志 * dao :所使用的 DAO * sqlkey-u :更新语句 * param-u :参数,以竖线分隔,如 REG_ID|REG_DATE * sqlkey-i :插入语句 * param-i :参数 * sqlkey-d :删除语句 * param-d :参数 */ String[] rowStatus = null; if (getProperty("rowStatus") == null) rowStatus = (String[]) ctx.get("rowStatus"); else rowStatus = (String[]) ctx.get(getProperty("rowStatus")); if (rowStatus == null || rowStatus.length == 0) return PosBizControlConstants.SUCCESS; Initialize(); int rowCount = rowStatus.length; // 2. Get Parameter( 各语句参数名获取 ) setParamMap(ctx, "sqlkey-u", "param-u", rowCount); setParamMap(ctx, "sqlkey-i", "param-i", rowCount); setParamMap(ctx, "sqlkey-d", "param-d", rowCount); setParamIndex(); for (int i = 0; i < rowCount; i++) { if ("u".equals(rowStatus[i])) Execute(ctx, "sqlkey-u", "param-u", 'u'); else if ("i".equals(rowStatus[i])) Execute(ctx, "sqlkey-i", "param-i", 'i'); else if ("d".equals(rowStatus[i])) Execute(ctx, "sqlkey-d", "param-d", 'd'); adjustParamIndex(); } return PosBizControlConstants.SUCCESS; } }