⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 magiclogaction.java

📁 论坛软件系统亦称电子公告板(BBS)系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		String memberCredits = "";
		Map<Integer,String> extcreditsMap = new HashMap<Integer, String>();
		if(memberInfoMapList!=null&&memberInfoMapList.size()>0){
			Map<String,String> memberInfoMap = memberInfoMapList.get(0);
			memberCredits = memberInfoMap.get("credits");
			for(int i = 1;i<9;i++){
				extcreditsMap.put(i, memberInfoMap.get("extcredits"+i));
			}
		}

		setMagicLogVOWithNavbar(magicLogVO, memberCredits, memberId, usergroupMap, settingsMap, extcreditsMap);
	
		request.setAttribute("valueObject", magicLogVO);
		return mapping.findForward("goMagic_log");
	}
	public ActionForward marketLog(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		HttpSession session = request.getSession();
		Integer memberId = (Integer)session.getAttribute("jsprun_uid");
		float timeoffset=(Float)session.getAttribute("timeoffset");

		Map<String,String> settingsMap = (Map<String,String>)request.getAttribute("settings");

		Map<String,String> usergroupMap = (Map<String,String>)request.getAttribute("usergroups");

		String accessInfo = getAccessInfo(memberId, settingsMap, usergroupMap, (byte)1);
		if(accessInfo!=null){
			request.setAttribute("errorInfo", accessInfo);
			return mapping.findForward("showMessage");
		}

		String operation = "marketlog";

		String sql = "select count(*) as count from "+tablePrefix+"magiclog where uid="+memberId+" and action in (4,5,6)";
		String url = "magic.jsp?action=magicLog&operation=marketLog";
		
		MagicLogVO magicLogVO = new MagicLogVO();
		Map<String,Integer> multiMap = multi(magicLogVO,request, memberId, sql, url);
		List<Magiclog> magicLogList = magiclogService.getMagiclogByActionAndUid(memberId,new Byte[]{4,5,6},multiMap.get("beginsize"), multiMap.get("pagesize"));

		Map<Short,String> maigcId_MagicNameMap = getMaigcId_MagicNameMap(magicLogList);

		String util = getUtil(request);

		magicLogVO.setOperation(operation);
		magicLogVO.setMagicMarketLogVOList(magicLogList, maigcId_MagicNameMap, util,timeoffset);
		
		List<Map<String,String>> memberInfoMapList = dataBaseService.executeQuery("SELECT credits,extcredits1,extcredits2,extcredits3,extcredits4,extcredits5,extcredits6,extcredits7,extcredits8 FROM "+tablePrefix+"members WHERE uid="+memberId);
		String memberCredits = "";
		Map<Integer,String> extcreditsMap = new HashMap<Integer, String>();
		if(memberInfoMapList!=null&&memberInfoMapList.size()>0){
			Map<String,String> memberInfoMap = memberInfoMapList.get(0);
			memberCredits = memberInfoMap.get("credits");
			for(int i = 1;i<9;i++){
				extcreditsMap.put(i, memberInfoMap.get("extcredits"+i));
			}
		}

		setMagicLogVOWithNavbar(magicLogVO, memberCredits, memberId, usergroupMap, settingsMap, extcreditsMap);

		request.setAttribute("valueObject", magicLogVO);
		
		return mapping.findForward("goMagic_log");
	}
	private Map<Short,String> getMaigcId_MagicNameMap(List<Magiclog> magicLogList){
		List<Short> magicIdList = new ArrayList<Short>();
		for(int i = 0;i<magicLogList.size();i++){
			magicIdList.add(magicLogList.get(i).getId().getMagicid());
		}
		List<Magics> magicsList = otherSetService.getMagicListByIdList(magicIdList);
		Map<Short,String> map = new HashMap<Short, String>();
		for(int i = 0;i<magicsList.size();i++){
			map.put(magicsList.get(i).getMagicid(), magicsList.get(i).getName());
		}
		return map;
	}
	private void setMagicLogVOWithNavbar(Magic_navbarVO magic_navbarVO,String memberCredits,Integer memberId,Map<String,String> usergroupMap,Map<String,String> settingsMap,Map<Integer,String> extcreditsMap){
		Integer magicWeightNow = 0;
		String sql = "SELECT SUM(mm.num*m.weight) AS s FROM "+tablePrefix+"membermagics AS mm LEFT JOIN "+tablePrefix+"magics AS m ON mm.magicid=m.magicid WHERE mm.uid="+memberId;
		List<Map<String,String>> resultTemp = dataBaseService.executeQuery(sql, new String[]{"s"});
		if(resultTemp!=null&&resultTemp.size()>0){
			Map<String,String> resultMap = resultTemp.get(0);
			if(resultMap!=null){
				String reuslt = resultMap.get("s");
				if(reuslt!=null){
					magicWeightNow = Integer.valueOf(reuslt);
				}
			}
		}
		String magicmarket = settingsMap.get("magicmarket"); 
		magic_navbarVO.setOpenmarket(magicmarket!=null&&magicmarket.equals("1"));
		magic_navbarVO.setAllowMagicWeigth(usergroupMap.get("maxmagicsweight"));
		magic_navbarVO.setMagicWeigthNow(magicWeightNow.toString());
		magic_navbarVO.setScoring(memberCredits);
		magic_navbarVO.setAgio(usergroupMap.get("magicsdiscount"));
		List<OtherScoring> otherScoringList = magic_navbarVO.getOtherScoringList();
		
		String extcreditsFromMap = null;
		String creditstrans = null;
		if(settingsMap!=null){
			extcreditsFromMap = settingsMap.get("extcredits");
			creditstrans = settingsMap.get("creditstrans");
		}else{
			extcreditsFromMap = ((Settings)creSetSer.getSetting("extcredits")).getValue();
			creditstrans = ((Settings)creSetSer.getSetting("creditstrans")).getValue();
		}
		Map tempMap1 = ((DataParse) BeanFactory.getBean("dataParse")).characterParse(extcreditsFromMap, false);
		for(int i = 0;i<tempMap1.size();i++){
			Map tempMap2 = (Map)tempMap1.get(Integer.valueOf(i+1));
			String extcreditString = extcreditsMap.get(i+1);
			otherScoringList.add(magic_navbarVO.getOtherScoring((String)tempMap2.get("title"), extcreditString,(String)tempMap2.get("unit"),(Integer.valueOf(creditstrans)==i+1)));
		}
	}
	private String getUtil(HttpServletRequest request){
		
		Map<String,String> settingsMap = (Map<String,String>)request.getAttribute("settings");
		String extcreditsFromMap = null;
		String creditstransFromMap = null;
		if(settingsMap!=null){
			creditstransFromMap = settingsMap.get("creditstrans");
			extcreditsFromMap = settingsMap.get("extcredits");
		}else{
			extcreditsFromMap = ((Settings)creSetSer.getSetting("extcredits")).getValue();
			creditstransFromMap = ((Settings)creSetSer.getSetting("creditstrans")).getValue();
		}
		
		Map mapTemp1 = ((DataParse) BeanFactory.getBean("dataParse")).characterParse(extcreditsFromMap, true);
		Map mapTemp2 = (Map)mapTemp1.get(Integer.valueOf(creditstransFromMap));
		return (String)mapTemp2.get("title");
	}
	private Map<Integer,String> getTargetUid_UsernameMap(List<Magiclog> magicLogList){
		List<Integer> memberIdList = new ArrayList<Integer>();
		for(int i = 0;i<magicLogList.size();i++){
			Magiclog magiclog = magicLogList.get(i);
			MagiclogId magiclogId = magiclog.getId();
			memberIdList.add(magiclogId.getTargetuid());
		}
		List<Members> memberList = memberService.getMemberListWithMemberIdList(memberIdList);
		Map<Integer,String> map = new HashMap<Integer, String>();
		if(memberList!=null){
			for(int i = 0;i<memberList.size();i++){
				Members members = memberList.get(i);
				map.put(members.getUid(), members.getUsername());
			}
		}
		return map;
	}
	private Map<Integer,String> getUid_UsernameMap(List<Magiclog> magicLogList){
		List<Integer> memberIdList = new ArrayList<Integer>();
		for(int i = 0;i<magicLogList.size();i++){
			Magiclog magiclog = magicLogList.get(i);
			MagiclogId magiclogId = magiclog.getId();
			memberIdList.add(magiclogId.getUid());
		}
		List<Members> memberList = memberService.getMemberListWithMemberIdList(memberIdList);
		Map<Integer,String> map = new HashMap<Integer, String>();
		if(memberList!=null){
			for(int i = 0;i<memberList.size();i++){
				Members members = memberList.get(i);
				map.put(members.getUid(), members.getUsername());
			}
		}
		return map;
	}

	private Map<String, Integer> multi(MagicLogVO magicLogVO,HttpServletRequest request,int uid, String sql, String url) {
		HttpSession session=request.getSession();
		Map<String, String> settings = (Map<String, String>) request.getAttribute("settings");
		Members member = uid > 0 ? (Members)session.getAttribute("user") : null;
		List<Map<String, String>> count = dataBaseService.executeQuery(sql);
		int num = Integer.valueOf(count.get(0).get("count"));
		int tpp = member != null && member.getTpp() > 0 ? member.getTpp(): Integer.valueOf(settings.get("topicperpage"));
		int page = Common.toDigit(request.getParameter("page"),2147483647l, 1L).intValue();
		Map<String,Integer> multiInfo=Common.getMultiInfo(num, tpp, page);
		page=multiInfo.get("curpage");
		Map<String,Object> multi=Common.multi(num, tpp, page, url, 0, 10, true, false, null, false);
		magicLogVO.setMultipage((String)multi.get("multipage"));
		Map<String, Integer> map = new HashMap<String, Integer>();
		map.put("beginsize",  multiInfo.get("start_limit"));
		map.put("pagesize", tpp);
		return map;
	}
	private String getAccessInfo(Integer memberId,Map<String,String> settingsMap,Map<String,String> usergroupMap,Byte action){
		String accessInfo = null;
		if(memberId==null){
			return accessInfo = "您还没有登陆";
		}
		if(settingsMap==null){
			return accessInfo = "获取信息失败,请与管理员联系。";
		}
		String magicstatus = settingsMap.get("magicstatus");
		if(magicstatus==null||!magicstatus.equals("1")){
			return accessInfo = "对不起,道具功能没有开启.请返回。";
		}
		String creditstrans = settingsMap.get("creditstrans");
		if (creditstrans==null||creditstrans.equals("0")) {
			return accessInfo = "对不起,交易积分没有被启用,无法使用此功能,请返回或与管理员联系。";
		}
		if(usergroupMap==null){
			return accessInfo = "获取用户组信息失败,请与管理员联系。";
		}
		String allowMagics = usergroupMap.get("allowmagics");
		if(allowMagics==null){
			return accessInfo = "没有获得您是否能够使用道具的信息.请联系管理员";
		}
		if(Byte.parseByte(allowMagics)<action){
			if(action==1){
				return accessInfo = "您所在的用户组不允许使用道具系统,请返回。";
			}else{
				return accessInfo = "您所在的用户组不允转让道具,请返回。";
			}
		}
		return accessInfo;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -