`
shonghuanc
  • 浏览: 81438 次
文章分类
社区版块
存档分类
最新评论

json 高级使用

阅读更多
结构

/**
* 获取商位x,y以及相关信息坐标
*
* @param booth
* @return
* @throws JSONException
*/
private JSONObject getTbBoothJSON(TbBizBooth booth) throws JSONException {
JSONObject jsonObject = new JSONObject();
jsonObject.put("zoneName", booth.getTbBooth().getTbAdmZone()
.getAdmzoneName());
jsonObject.put("floorNo", booth.getTbBooth().getTbBlock().getTbFloor()
.getFloorNo());
jsonObject.put("boothNo", booth.getTbBooth().getBoothNo());
jsonObject.put("x", booth.getTbBooth().getPosX());
jsonObject.put("y", booth.getTbBooth().getPosY());
jsonObject.put("status", booth.getStatus());
jsonObject.put("tbBizBooth", booth.getTbBizBoothId());
jsonObject.put("location", booth.getTbBooth().getTbBlock().getTbFloor()
.getLocation());
return jsonObject;
}

/**
* 获取商位x,y以及相关信息坐标
*
* @param booth
* @return
* @throws JSONException
*/
private JSONObject getTbStairJSON(TbStair stair) throws JSONException {
JSONObject jsonObject = new JSONObject();
jsonObject.put("floorNo", stair.getTbFloor().getFloorNo());
jsonObject.put("memo", stair.getMemo());
jsonObject.put("x", stair.getX());
jsonObject.put("y", stair.getY());
return jsonObject;
}

/**
* 将全部商位位置列出。
*
* @param mapping
* @param argForm
* @param request
* @param response
* @return
* @throws Exception
*/
public ActionForward getBoothList(ActionMapping mapping,
ActionForm argForm, HttpServletRequest request,
HttpServletResponse response) throws Exception {
JSONObject jsonObject = new JSONObject();
try {
// 传入楼层号
String floorNo = request.getParameter("floorNo");
CustomDetachedCriteria dc = CustomDetachedCriteria
.forClass(TbBizBooth.class);
// 依次连接TbBisuness,TbBooth,TbFloor,TbBuilding,TbMarket,tbBizBooths
dc.createAlias("tbBooth", "tBooth",
CriteriaSpecification.INNER_JOIN);
dc.createAlias("tBooth.tbAdmZone", "tAdmZone",
CriteriaSpecification.INNER_JOIN);
dc.createAlias("tBooth.tbBlock", "tBlock",
CriteriaSpecification.INNER_JOIN);
dc.createAlias("tBlock.tbFloor", "tFloor",
CriteriaSpecification.INNER_JOIN);
// 增加查询条件,经营点ID
if (floorNo != null) {
dc.add(Restrictions.eq("tFloor.floorNo", new Long(floorNo)));
}

List tbBoothList = commonService.findAllByCriteria(dc);
JSONObject jsonObject1 = new JSONObject();
JSONArray resultArray = new JSONArray();

for (int i = 0; i < tbBoothList.size(); i++) {
TbBizBooth f = (TbBizBooth) tbBoothList.get(i);
jsonObject1 = this.getTbBoothJSON(f);
resultArray.put(jsonObject1);
}
jsonObject.put("tbBooth", resultArray);

// 搜索楼梯信息
CustomDetachedCriteria dc1 = CustomDetachedCriteria
.forClass(TbStair.class);
dc1.createAlias("tbFloor", "tFloor",
CriteriaSpecification.INNER_JOIN);
// 增加查询条件,楼层ID
if (floorNo != null) {
dc1.add(Restrictions.eq("tFloor.floorNo", new Long(floorNo)));
}
List tbStairList = commonService.findAllByCriteria(dc1);
JSONObject jsonObject2 = new JSONObject();
JSONArray resultArray2 = new JSONArray();
for (int i = 0; i < tbStairList.size(); i++) {
TbStair f = (TbStair) tbStairList.get(i);
jsonObject2 = this.getTbStairJSON(f);
resultArray2.put(jsonObject2);
}
jsonObject.put("tbStair", resultArray2);
Tools.printMsgToClient(jsonObject.toString(), response);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics