当前位置: 首页 > 工具软件 > Answer Helper > 使用案例 >

Helper

赵超
2023-12-01
public class HelperUtil {
    
    /**
     * 得到总页数
     * @param totalCount
     * @param pageSize
     * @return
     */
    public static Long getPageCount(Long totalCount, Long pageSize) {

        long pageCount = 0;

        if (totalCount == 0)
            return pageCount;

        if (totalCount % pageSize == 0) {
            pageCount = totalCount / pageSize;
        } else {
            pageCount = totalCount / pageSize + 1;
        }

        return pageCount;
    }

    public static boolean checkTime(TimeVO timeVO) {

        int year;
        int month;
        int day;
        int hour;
        int minute;
        int second;

        Calendar cal = Calendar.getInstance();

        year = cal.get(Calendar.YEAR);

        month = cal.get(Calendar.MONTH) + 1;

        day = cal.get(Calendar.DATE);

        hour = cal.get(Calendar.HOUR_OF_DAY);

        minute = cal.get(Calendar.MINUTE);

        second = cal.get(Calendar.SECOND);
        
        if(null!=timeVO.getYear()&& year!=timeVO.getYear())
        {
            return false;
        }

        if(null!=timeVO.getMonth()&& month!=timeVO.getMonth())
        {
            return false;
        }
        if(null!=timeVO.getDay() && day!=timeVO.getDay())
        {
            return false;
        }
        if(null!=timeVO.getHour() && hour!=timeVO.getHour())
        {
            return false;
        }
        if(null!=timeVO.getMinute() && minute!=timeVO.getMinute())
        {
            return false;
        }
        if(null!=timeVO.getSecond() && second!=timeVO.getSecond())
        {
            return false;
        }
        return true;
    }
    
    /**
     * 得到上一个月
     * @return
     */
    public static String getStatisMonth() {
        
        Calendar calendar = Calendar.getInstance();
        //calendar.add(Calendar.DATE, -1);    //得到前一天
        calendar.add(Calendar.MONTH, -1);    //得到前一个月
        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH)+1;
        
        StringBuffer suff=new StringBuffer();
        suff.append(year);
        
        if(month<10)
        {
            suff.append("-").append("0").append(month);
        }
        else
        {
            suff.append("-").append(month);
        }

        return suff.toString();
    }


    public static String getVisitChannel(List<VisitStatInfoVO> visitChall)
    {
        StringBuffer suff=new StringBuffer();
        if(null!=visitChall && visitChall.size()>0)
        {
            VisitStatInfoVO visitVO=visitChall.get(0);
            if(null!=visitVO)
            {
                List list=new ArrayList<Long>();
                list.add(visitVO.getVisitClient());
                list.add(visitVO.getVisitWeb());
                list.add(visitVO.getVisitWap());
                Long max=getVisitMax(visitVO);
                
                Map map=new LinkedHashMap<String,Long>();
                map.put("0", visitVO.getVisitClient());
                map.put("1", visitVO.getVisitWeb());
                map.put("2", visitVO.getVisitWap());
                List<String> lists=getMaxVisit(max,map);
                for(int i=0;i<lists.size();i++)
                {
                    suff.append(InitLoad.getVisitType(lists.get(i).toString()));
                    if(i!=(lists.size()-1))
                    {
                        suff.append(";");
                    }
                }
            }
            
        }
        return suff.toString();
    }
    
    public static Long  getVisitMax(VisitStatInfoVO visitVO)
    {
        Long a = visitVO.getVisitClient();
        Long b = visitVO.getVisitWeb();
        Long c = visitVO.getVisitWap();
        Long max = a;;
        if(b>max)
        {
            max=b;
        }
        if(c>max)
        {
            max=c;
        }
        return max;
    }
    
    public static List<String> getMaxVisit(Long visitNum,Map<String,Long> map)
    {
        List<String> list=new ArrayList<String>();
          Set<String> key = map.keySet();
               for (Iterator it = key.iterator(); it.hasNext();) {
                   String s = (String) it.next();
                   Long num=map.get(s);
                   if(num.intValue()==visitNum.intValue())
                   {
                       list.add(s);
                   }
               }
               return list;

    }


    public static List<String> getRule(Integer a) {
        List<String> sbf = new ArrayList<String>();
        int j = 4;
        int b = 0;
        int g = 0;
        for (int i = 3; i > 0; i--) {
            int aa = (int) Math.pow(2, i);
            b = a % aa;
            g = a / aa;
            a = b;
            if (g > 0) {
                sbf.add(String.valueOf(j));
            }
            j--;
        }
        if (b > 0) {
            sbf.add("1");
        }
        return sbf;
    }


private List<LoggerSendMailVO> processCurTotalList(
            LoggerSendMailVO sendMailVO, List<String> userDetails) {
        List<LoggerSendMailVO> list = new ArrayList<LoggerSendMailVO>();
        if (null == userDetails) { //超级管理管理员查询当前企业
            list.addAll(sendLoggerService
                    .getSendLoggerList(sendMailVO));
            return list;
        }
        int userDetailSzie = userDetails.size();
        if (userDetailSzie == 1) {//超级管理管理员或管理员指定用户,或者用户平台查询
            sendMailVO.setUserEmail(userDetails.get(0));
            list.addAll(sendLoggerService
                    .getSendLoggerList(sendMailVO));
            return list;
        }
        // 超过100个用户查询时,采取每次100个用户的分批处理
        int totalPage = HelperUtil.getPageSize(userDetailSzie);
        List<String> subUserDetails = new ArrayList<String>();
        for (int i = 0; i < totalPage; i++) {
            if (i == totalPage - 1) {
                subUserDetails = userDetails.subList(i * 100,
                        userDetails.size());
            } else {
                subUserDetails = userDetails.subList(i * 100, (i + 1) * 100);
            }
            sendMailVO.setSearchEmails(subUserDetails);
            list.addAll(sendLoggerService
                    .getSendLoggerList(sendMailVO));
        }
        return list;
    }


private List<String> getModelsNoList(String modelName) {
List<String> list = new ArrayList<String>();
String modelNameAndLeft = modelName + "[";
Map<String, String[]> parasMap = getRequest().getParameterMap();
for (Entry<String, String[]> e : parasMap.entrySet()) {
String paraKey = e.getKey();
if (paraKey.startsWith(modelNameAndLeft)) {
String no = StringUtils.substringBetween(paraKey, modelNameAndLeft, "]");
if (!list.contains(no)) {
list.add(no);
}
}
}
//序号排序
Collections.sort(list,new Comparator<String>() {
@Override
public int compare(String o1,String o2) {
// TODO Auto-generated method stub
int v1 = Integer.parseInt(o1);
int v2 = Integer.parseInt(o2);
if (v1 < v2) {
return -1;
}else if (v1 > v2) {
return 1;
} else {
return 0;
}
}
} );
return list;
}

    
}

 类似资料: