RationAgreeBiz.java 2.93 KB
package com.cjs.cms.biz.ration;

import java.io.File;
import java.net.URI;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;

import com.cjs.cms.action.user.fund.UserBalanceAction;
import com.cjs.cms.dao.ration.TrustApplyExtDao;
import com.cjs.cms.util.file.FileUtil;
import com.cjs.cms.util.lang.DateEnum;
import com.cjs.cms.util.lang.DateUtil;
import com.cjs.cms.util.lang.PageUtils;
import com.cjs.cms.util.lang.StringUtil;
import com.cjs.cms.util.poi.ExcelConfig;
import com.cjs.cms.util.poi.ExcelUtil;

/**
 * 配售用户意见
 * @author tongxiaochuan
 *
 */
@Service
public class RationAgreeBiz {

    @Value("${download.export}")
    private String           exportPath;
    @Autowired
    private TrustApplyExtDao trustApplyExtDao;

    /**查询用户配售同意状况*/
    public List<Map<String, Object>> queryAgreeInfoByConditions(Map<String, Object> params) {
        List<Map<String, Object>> list = trustApplyExtDao.queryAgreeInfoByConditions(params);
        for (int i = 0; i < list.size(); i++) {
            if (StringUtil.isBlank(list.get(i).get("RETURN_STATUS"))) {
                list.get(i).put("RETURN_STATUS", "未确认");
            } else {
                list.get(i).put("RETURN_STATUS", "同意");
            }
        }
        return list;
    }

    /**查询用户配售同意与否数量*/
    public int queryAgreeInfoAmount(Map<String, Object> params) {
        return trustApplyExtDao.queryAgreeInfoAmount(params);
    }

    /**查询通过数量统计*/
    public int querySumApprovalCount(Map<String, Object> params) {
        return trustApplyExtDao.querySumApprovalCount(params);
    }

    /**导出用户意见*/
    public File export(Map<String, Object> params) throws Exception {
        String filename = "配售用户意见_" + DateUtil.getNow(DateEnum.UNSIGNED_DATE_TIME);
        filename = FileUtil.makeMonthDir(exportPath) + filename + ".xlsx";
        File targetFile = new File(filename);
        ExcelConfig config = new ExcelConfig();
        URI template = UserBalanceAction.class.getResource("/excel/ration_agree.xlsx").toURI();
        params.put("rows", 999999);
        PageUtils.processOralcePage(params);
        //查询导出的数据
        List<Map<String, Object>> list = trustApplyExtDao.queryAgreeInfoByConditions(params);
        for (int i = 0; i < list.size(); i++) {
            if (StringUtil.isBlank(list.get(i).get("RETURN_STATUS"))) {
                list.get(i).put("RETURN_STATUS", "未确认");
            } else {
                list.get(i).put("RETURN_STATUS", "同意");
            }
        }
        // 先生成Excel文件
        config.setSourceTemplate(new File(template));
        config.setTargetFile(targetFile);
        config.setData(list);
        new ExcelUtil(config).writeExcel();
        return targetFile;
    }

}