Package org.jeecgframework.web.cgform.service.impl.autolist

Source Code of org.jeecgframework.web.cgform.service.impl.autolist.ConfigServiceImpl

package org.jeecgframework.web.cgform.service.impl.autolist;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.jeecgframework.web.cgform.common.CgAutoListConstant;
import org.jeecgframework.web.cgform.entity.button.CgformButtonEntity;
import org.jeecgframework.web.cgform.entity.config.CgFormFieldEntity;
import org.jeecgframework.web.cgform.entity.config.CgFormHeadEntity;
import org.jeecgframework.web.cgform.entity.enhance.CgformEnhanceJsEntity;
import org.jeecgframework.web.cgform.service.autolist.ConfigServiceI;
import org.jeecgframework.web.cgform.service.button.CgformButtonServiceI;
import org.jeecgframework.web.cgform.service.config.CgFormFieldServiceI;
import org.jeecgframework.web.cgform.service.enhance.CgformEnhanceJsServiceI;

import org.jeecgframework.core.annotation.Ehcache;
import org.jeecgframework.core.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
*
* @Title:ConfigServiceImpl
* @description:动态配置服务实现
* @author 赵俊夫
* @date Jul 5, 2013 9:35:22 PM
* @version V1.0
*/
@Service("configService")
@Transactional
public class ConfigServiceImpl implements ConfigServiceI {
  @Autowired
  private CgFormFieldServiceI tablePropertyService;
  @Autowired
  private CgformButtonServiceI cgformButtonService;
  @Autowired
  private CgformEnhanceJsServiceI cgformEnhanceJsService;
 
  /**
   * tableName 表单名
   */
  @Ehcache
  public Map<String, Object> queryConfigs(String tableName,String jversion) {
    //step.1 要返回的配置数据
    Map<String, Object> configs = new HashMap<String,Object>();
    //step.2 获取动态表配置
    CgFormHeadEntity tableEntity = null;
    try{
      tableEntity = tablePropertyService.findByProperty(CgFormHeadEntity.class, "tableName", tableName).get(0);
      loadConfigs(configs,tableEntity);
    }catch (Exception e) {
      e.printStackTrace();
      throw new RuntimeException("没有找到该动态列表");
    }
    return configs;
  }

  private void loadConfigs(Map<String, Object> configs, CgFormHeadEntity tableEntity) {
    //获取动态表明细配置
    List<CgFormFieldEntity> columns = tableEntity.getColumns();
    configs.put(CgAutoListConstant.CONFIG_ID, tableEntity.getTableName());
    configs.put(CgAutoListConstant.CONFIG_NAME, tableEntity.getContent());
    configs.put(CgAutoListConstant.TABLENAME,tableEntity.getTableName());
    configs.put(CgAutoListConstant.CONFIG_ISCHECKBOX,tableEntity.getIsCheckbox());
    configs.put(CgAutoListConstant.CONFIG_ISPAGINATION,tableEntity.getIsPagination());
    configs.put(CgAutoListConstant.CONFIG_ISTREE,tableEntity.getIsTree());
    configs.put(CgAutoListConstant.CONFIG_QUERYMODE,tableEntity.getQuerymode());
    configs.put(CgAutoListConstant.FILEDS,columns);
    configs.put(CgAutoListConstant.CONFIG_VERSION, tableEntity.getJformVersion());
    String formId = tableEntity.getId();
    List<CgformButtonEntity>  buttons = cgformButtonService.getCgformButtonListByFormId(formId);
    configs.put(CgAutoListConstant.CONFIG_BUTTONLIST,buttons.size()>0?buttons:new ArrayList<CgformButtonEntity>(0));
    String jsCode = "";
    CgformEnhanceJsEntity  jsEnhance = cgformEnhanceJsService.getCgformEnhanceJsByTypeFormId("list", formId);
      if(jsEnhance!=null){
      jsCode = jsEnhance.getCgJsStr();
      if(StringUtil.isEmpty(jsCode)){
        jsCode = "";
      }
    }
    configs.put(CgAutoListConstant.CONFIG_JSENHANCE,jsCode);
  }
 
 
}
TOP

Related Classes of org.jeecgframework.web.cgform.service.impl.autolist.ConfigServiceImpl

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.