package cn.jeesoft.core; import cn.jeesoft.mvc.bean.ManageSetting; /** * 系统管理类. * 1、负责管理system.properties的东东 * 2、负责缓存管理 * @author huangf */ public class SystemManager { // private static Properties p = new Properties(); // private static SystemManager instance = new SystemManager(); public static ManageSetting manageSetting; /** * 商品目录,树形结构 */ // public static List<Catalog> catalogs = new LinkedList<Catalog>();//产品目录列表 // public static List<Catalog> catalogsArticle = new LinkedList<Catalog>();//文章目录列表 // public static List<Attribute> attrs;//属性集合 // public static Map<String,Attribute> attrsMap = new HashMap<String, Attribute>();//属性集合map // public static OrdersReport ordersReport = new OrdersReport();//后台首页,统计数据 // public static Map<String,AccountRank> accountRankMap = new TreeMap<String, AccountRank>();//会员等级表 // public static Map<String,NotifyTemplate> notifyTemplateMap;//邮件模板 // public static List<Product> hotSearchProductList;//热门搜索的商品列表 public static String alipayConfig;//支付宝卖家账号 public static String commentTypeCode;//启用的评论插件的代号 // public static List<Hotquery> hotqueryList;//热门查询列表 // public static Map<Integer, Integer> catalogMap = new HashMap<Integer, Integer>();//目录表,key:目录ID,value:目录顶级PID /** * 目录的MAP形式,具有层级关系。key:主类别ID,value:主类别对象,可以通过该对象的getChildren()方法获取该主类别的所有的子类别集合 */ // public static Map<String,Catalog> catalogsMap = new HashMap<String,Catalog>(); /** * 目录的MAP形式,具有层级关系。key:主类别code,value:主类别对象,可以通过该对象的getChildren()方法获取该主类别的所有的子类别集合 */ // public static Map<String,Catalog> catalogsCodeMap = new HashMap<String,Catalog>(); // // //商品库存应该使用JAVA类库中的读写锁,key:商品ID,value:商品对象 // public static ConcurrentMap<String, ProductStockInfo> productStockMap;// = new ConcurrentHashMap<String, ProductStockInfo>();//商品库存表 // public static Object product_stock_lock = new Object();//商品库存锁,操作商品库存的时候需要进行加锁 // /** // * 促销的商品 top=10 // */ // public static List<List<Product>> goodsTopList; //// public static List<IndexMenu> indexMenuList; // public static List<Navigation> navigations; // public static List<Product> hotProducts;//热门商品 // public static List<Product> historyProducts;//浏览过的商品历史列表,仅限于当前session中存储 // public static List<Product> newProducts;//新品商品 // public static List<Product> saleProducts;//特价商品 // @Deprecated // public static List<Product> suijiProducts;//随机推荐的商品 // public static List<IndexImg> indexImages;//门户滚动图片 // @Deprecated // public static List<News> news;//文章列表 // @Deprecated // public static Map<String,News> newsMap = new HashMap<String, News>();//文章map;key:code // // public static List<Catalog> newCatalogs;//文章目录。文章目前只有一级目录 // public static List<News> noticeList;//系统通知 // public static Map<String, Area> areaMap = new HashMap<String, Area>();//省市区集合 // public static Map<String,Express> expressMap;//前台订单支付页面--物流列表 // public static Map<String,Advert> advertMap;//广告列表 // // public static Map<String,String> manageExpressMap = new HashMap<String, String>();//后台发货页面物流公司列表 // public static AliyunOSS aliyunOSS;//阿里云存储的配置信息 //// public static Task task;//系统定时任务 // public static List<Product> indexLeftProduct;//加载首页左侧的商品列表,此位置的商品从全局加载 // public static Map<String,Activity> activityMap = new HashMap<String, Activity>();//所有活动列表 // // /** // * 促销活动的商品列表activity_discountType_c=c // * key:【r:减免;d:折扣;s:双倍积分】 // * value:【商品列表ArrayList】 // */ // public static Map<String,List<Product>> activityProductMap = new HashMap<String, List<Product>>(); // public static List<Product> activityScoreProductList;//积分商城商品列表 // public static List<Product> activityTuanProductList;//团购活动商品列表 /////////////////后台缓存/////////////////// /** * 后台类目查询的JSON字符串缓存 */ public static String productCatalogJsonStr;//商品类目JSON字符串缓存 public static String articleCatalogJsonStr;//缓存类目JSON字符串缓存 static { // init(); // manageExpressMap.put("shunfeng", "顺风快递"); // manageExpressMap.put("ems", "EMS"); // manageExpressMap.put("shentong", "申通E物流"); // manageExpressMap.put("yuantong", "圆通速递"); // manageExpressMap.put("zhongtong", "中通速递"); // manageExpressMap.put("zhaijisong", "宅急送"); // manageExpressMap.put("yunda", "韵达快运"); // manageExpressMap.put("tiantian", "天天快递"); // manageExpressMap.put("lianbangkuaidi", "联邦快递"); // manageExpressMap.put("huitongkuaidi", "汇通快运"); } // public static SystemManager getInstance(){ // return instance; // } // private static void init(){ // try { // p.load(SystemListener.class // .getResourceAsStream("/system.properties")); //// code.load(new BufferedReader(new InputStreamReader(SystemListener.class //// .getResourceAsStream("/code.properties"), "utf-8"))); // logger.info(p.toString()); //// log.info(code.toString()); // } catch (IOException e) { // e.printStackTrace(); // } // } // public String get(String key){ // return p.getProperty(key); // } // private Random random = new Random(); // // /** // * 随机从图集里面选取一张图片 // * @return // */ // public String getImageRandom(){ // if(systemSetting==null || systemSetting.getImagesList()==null || systemSetting.getImagesList().size()==0){ // logger.error("系统未设置图集,但广告位却设置了图集优先显示。请管理员立刻设置图集。"); // return null; // } // // int n = random.nextInt(systemSetting.getImagesList().size()); // // return systemSetting.getImageRootPath()+systemSetting.getImagesList().get(n); // } /** * 获取网站上下文路径/house * 正式环境和测试环境获取上下文不一样 * @param request * @return */ // public static String getContextPath(HttpServletRequest request){ // if(Boolean.valueOf(getInstance().get("is_www"))){ // return SystemManager.getInstance().get("contextPath"); // } // return request.getContextPath(); // } // /** // * 根据类别ID获取该类别下的所有ID集合 // * @param catalogID // * @return // */ // public List<String> getCatalogsById(String catalogID) { // if(org.apache.commons.lang.StringUtils.isBlank(catalogID)){ // return null; // } // // if(this.catalogs==null || this.catalogs.size()==0){ // return null; // } // // List<String> list = new LinkedList<String>(); // Catalog cataInfo = catalogsMap.get(catalogID); // if(cataInfo.getPid().equals("0")){ // //主类 // for(int i=0;i<cataInfo.getChildren().size();i++){ // list.add(cataInfo.getChildren().get(i).getId()); // } // }else{ // //子类 // list.add(catalogID); // } // return list; // } // // /** // * 根据商品类目code加载与类目有关联的热门商品列表 // * @param catalogCode // */ // public List<Product> getProductsByCatalogCode(String catalogCode){ // logger.error("getProductsByCatalogCode.catalogCode = " + catalogCode); // if(StringUtils.isNotBlank(catalogCode)){ // Catalog catalog = SystemManager.catalogsCodeMap.get(catalogCode); // if(catalog!=null){ // if(catalog.getHotProducts()==null || catalog.getHotProducts().size()==0){ // logger.error("catalog.getHotProducts()=0"); // }else{ // logger.error("catalog.getHotProducts()="+catalog.getHotProducts().size()); // } // return catalog.getHotProducts(); // } // } // return SystemManager.indexLeftProduct; // } // // public OrdersReport getOrdersReport() { // return ordersReport; // } // // public List<Hotquery> getHotqueryList(){ // return hotqueryList; // } // // public List<Catalog> getCatalogs() { // return catalogs; // } // // public List<Catalog> getNewCatalogs() { // return newCatalogs; // } // // public List<Navigation> getNavigations() { // return navigations; // } // // public List<IndexImg> getIndexImages() { // return indexImages; // } // // public List<News> getNoticeList() { // return noticeList; // } // // public List<Product> getHotProducts() { // return hotProducts; // } // // public List<Product> getNewProducts() { // return newProducts; // } // // public List<Product> getSaleProducts() { // return saleProducts; // } }