@RequestMapping(value="/getFundsCount",method=RequestMethod.POST)
public Result getFundsCount(HttpServletRequest request,String depcode) {
//获取用户信息
String tokenuser = redisTemplate.opsForValue().get(request.getHeader("usertoken"));
LoginUser user = (LoginUser) JSONUtil.toBean(tokenuser, LoginUser.class);
String usertype = user.getUsertype();
Map<String,Object> map = new HashMap<String,Object>();
//数量默认值是0
String Notmanagecount = "";
String Rejectcount = "";
String Projectcount = "";
String Fundsidcount = ""; //count返回值long
StringBuffer sqlNotmanagecount = new StringBuffer("SELECT count(*) notmanagecount FROM djjf_project_funds where status=");
StringBuffer sqlRejectcount = new StringBuffer("SELECT count(*) rejectcount FROM djjf_project_funds f LEFT JOIN djjf_review r "
+"ON f.fundsid = r.objectid WHERE f.status=05 AND r.status=02 AND r.creusertype=");
//查询总项目个数
String sqlProjectcount = "SELECT count(*) projectcount FROM djjf_project";
String sqlFundsidcount = "SELECT COUNT(*)fundsidcount FROM djjf_project_funds"; if("jdorg.user".equals(usertype)) {
/*String stq=sqlNotmanagecount.append("'01'").toString();*/
sqlNotmanagecount.append("'01'");
sqlRejectcount.append("'jdorg.user'");//可变参数字符串拼接
if(depcode!=null&&!"".equals(depcode)) {
sqlNotmanagecount.append(" and depcode=").append("'"+depcode+"'");
sqlRejectcount.append(" and f.depcode=").append("'"+depcode+"'");
}
List<Map<String,Object>> countNotmanagecount = baseServerImpi.findListObjectBySql(sqlNotmanagecount.toString());
Notmanagecount = String.valueOf(countNotmanagecount.get().get("notmanagecount"));
//被驳回
List<Map<String,Object>> countRejectcount = baseServerImpi.findListObjectBySql(sqlRejectcount.toString());
Rejectcount = String.valueOf(countRejectcount.get().get("rejectcount")); }else if("jdleader.user".equals(usertype)) { sqlNotmanagecount.append("'02'");
sqlRejectcount.append("'jdleader.user'");
if(depcode!=null&&!"".equals(depcode)) {
sqlNotmanagecount.append(" and depcode=").append("'"+depcode+"'");
sqlRejectcount.append(" and f.depcode=").append("'"+depcode+"'");
}
List<Map<String,Object>> countNotmanagecount = baseServerImpi.findListObjectBySql(sqlNotmanagecount.toString());
Notmanagecount = String.valueOf(countNotmanagecount.get().get("notmanagecount"));
//被驳回
List<Map<String,Object>> countRejectcount = baseServerImpi.findListObjectBySql(sqlRejectcount.toString());
Rejectcount = String.valueOf(countRejectcount.get().get("rejectcount"));
}
//项目总数
List<Map<String,Object>> countProjectcount = baseServerImpi.findListObjectBySql(sqlProjectcount);
Projectcount = String.valueOf(countProjectcount.get().get("projectcount"));
//经费总数
List<Map<String,Object>> countFundsidcount = baseServerImpi.findListObjectBySql(sqlFundsidcount);
Fundsidcount = String.valueOf(countFundsidcount.get().get("fundsidcount"));
//将数量放入map
map.put("notmanagecount",Notmanagecount);
map.put("rejectcount",Rejectcount);
map.put("projectcount", Projectcount);
map.put("fundsidcount", Fundsidcount);
return Result.ok().put("result", map);
}

StringBuffer 可变参数拼接的更多相关文章

  1. 字符串化#、拼接字符##和可变参数宏(...和_ _VA_ARGS_ _)

    宏定义的使用与注意事项 ##是一个连接符号,用于把参数连在一起 #是“字符串化”的意思.出现在宏定义中的#是把跟在后面的参数转换成一个字符串#define paster( n ) printf( &q ...

  2. C#与Java对比学习:数据类型、集合类、栈与队列、迭达、可变参数、枚举

    数据类型: C#:String与StringBuilder Java:String与StringBuffer 第一个不习惯是string的第一个字母必须大写了. 第二个不习惯是int得写成Intege ...

  3. Swift开发第十篇——可变参数函数&初始化方法顺序

    本篇分为两部分: 一.Swift中的可变参数函数 二.初始化方法的顺序 一.Swift中的可变参数函数 可变参数函数指的是可以接受任意多个参数的函数,在 OC 中,拼接字符串的函数就属于可变参数函数 ...

  4. PHP基础语法: echo,var_dump, 常用函数:随机数:拆分字符串:explode()、rand()、日期时间:time()、字符串转化为时间戳:strtotime()可变参数的函数:PHP里数组长度表示方法:count($attr[指数组]);字符串长度:strlen($a)

    PHP语言原理:先把代码显示在源代码中,再通过浏览器解析在网页上 a. 1.substr;  //用于输出字符串中,需要的某一部分 <?PHP $a="learn php"; ...

  5. volatile,可变参数,memset,内联函数,宽字符窄字符,国际化,条件编译,预处理命令,define中##和#的区别,文件缓冲,位域

    1.volatile: 要求参数修改每次都从内存中的读取.这种情况要比普通运行的变量需要的时间长. 当设置了成按照C99标准运行之后,使用volatile变量之后的程序运行的时间将比register的 ...

  6. 五分钟学Java:可变参数究竟是怎么一回事?

    在逛 programcreek 的时候,我发现了一些专注基础但不容忽视的主题.比如说:Java 的可变参数究竟是怎么一回事?像这类灵魂拷问的主题,非常值得深入地研究一下. 我以前很不重视基础,觉得不就 ...

  7. 可变参数__VA_ARGS__使用

    1. 调试功能一般会使用到宏+可变参数的方式 1.1 ##__VA_ARGS__      之详细解析 例如: case A. #define my_print1(...)    printf(__V ...

  8. C可变参数的函数

    我们实现一个简单的printf函数(可变参数) #include <stdio.h> #include <stdarg.h> void myprintf(const char ...

  9. c#编程基础之函数可变参数

    可变参数:int sum (params int[] values)int sum (string name,params int[] values) 注意:params参数必须是形参表中的最后一个参 ...

随机推荐

  1. response.setContentType()的String参数及对应类型

    response.addHeader("Content-Disposition", "attachment;filename="+ filename); res ...

  2. Django 2.x 常用命令

    从Pycharm换成VsCode,好多命令都不会,这里记一下. 创建 Django 项目 先进入到你想要创建 project 目录下,执行命令 django-admin startproject pr ...

  3. 8大排序之Python实现 冒泡排序优化

    1.冒泡排序(从大到小):交换发生在内部循环 稳定的排序 冒泡排序的平均时间复杂度是O(n2),最好的时间复杂度是O(n),最坏的时间复杂度是O(n2),空间复杂度为O(1) 冒泡排序的优化在于did ...

  4. JS和Jquery获取和修改label的值的示例代码

    abel标签在JS和Jquery中使用不能像其他标签一样用value获取它的值,下面有个不错的示例,希望大家可以学习下 来源:  <  JS和Jquery获取和修改label的值的示例代码  & ...

  5. vue阿里上传图片报400错误

    首先我用vue上传阿里图片用的是分片上传,分片上传由于一片是以100kb为起始的,所以当图片大小小于100kb的时候不分片,可以正常上传,当大于100kb的时候,会报400错误如下 One or mo ...

  6. Vue.js结合vue-router和webpack编写单页路由项目

    一.前提 1. 安装了node.js. 2. 安装了npm. 3. 检查是否安装成功: 打开cmd,输入node,没有报“node不是内部或外部命令”表示安装成功node.js. 打开cmd,输入np ...

  7. bat如何实现多台android设备同时安装多个apk

    背景:在做预置资源(安装apk)时,有多台android设备需要做相同的资源(如:10台,安装10个apk).一台一台去预置的话(当然也可以每人一台去预置),耗时较长有重复性. 问题:如何去实现多台同 ...

  8. mysql视图的作用

    测试表:user有id,name,age,sex字段 测试表:goods有id,name,price字段 测试表:ug有id,userid,goodsid字段 视图的作用实在是太强大了,以下是我体验过 ...

  9. sql中某条件不为空,可能有的小祖宗会喷了,这还用总结?emmm,我渣,我觉得有一点意思对于第二种(土味)

    需求说明:存在父子关系的单表,父级别的parent_id为空,那么要得到所有的子级别的数据信息,查询的条件就是:父id不为空. 个人做法:where parent_id is not null or ...

  10. DSB

    Linux day01 计算机硬件知识整理 作业要求:整理博客,内容如下 编程语言的作用及与操作系统和硬件的关系 应用程序->操作系统->硬件 cpu->内存->磁盘 cpu与 ...