当前位置: 首页 > news >正文

dw怎样去除网站做的页面模板针对本地的免费推广平台

dw怎样去除网站做的页面模板,针对本地的免费推广平台,网站建设的实训心得 500字,金华市开发区人才网在Internet高速发展的今天#xff0c;我们生活的各个领域都涉及到计算机的应用#xff0c;其中包括乐校园二手书交易管理系统的网络应用#xff0c;在外国二手书交易管理系统已经是很普遍的方式#xff0c;不过国内的管理系统可能还处于起步阶段。乐校园二手书交易管理系统…在Internet高速发展的今天我们生活的各个领域都涉及到计算机的应用其中包括乐校园二手书交易管理系统的网络应用在外国二手书交易管理系统已经是很普遍的方式不过国内的管理系统可能还处于起步阶段。乐校园二手书交易管理系统具有二手书交易管理功能的选择。乐校园二手书交易管理系统采用java技术基于springboot框架mysql数据库进行开发实现了首页、个人中心、用户管理、卖家用户管理、图书分类管理、二手图书管理、求购图书管理、求购回复管理、留言反馈、系统管理、订单管理等内容进行管理本系统具有良好的兼容性和适应性为用户提供更多的乐校园二手书交易信息也提供了良好的平台从而提高系统的核心竞争力。 本文首先介绍了设计的背景与研究目的其次介绍系统相关技术重点叙述了系统功能分析以及详细设计最后总结了系统的开发心得。 关键词java技术二手书交易mysql 基于springboot校园二手书交易管理系统源码和论文355 基于springboot校园二手书交易管理系统源码和论文 Abstract In the rapid development of the Internet today, all areas of our life are involved in computer applications, including le Campus second-hand book trading management system network application, in foreign second-hand book trading management system is a very common way, but the domestic management system may still be in its infancy. Le campus second-hand book trading management system has the choice of second-hand book trading management function. Le Campus second-hand book trading management system using Java technology, based on springboot framework, mysql database development, Implements the home page, personal center, user management, user management, books classification management seller, second-hand books management, purchasing books management, purchasing management responses, message feedback management, system management, order management, and other content, this system has good compatibility and adaptability, to provide users with more second-hand book trade information, also provide a good platform, Thus improve the core competitiveness of the system. This paper first introduces the design background and research purpose, then introduces the system related technology, focuses on the system function analysis and detailed design, and finally summarizes the development experience of the system. Key words: Java technology; Second-hand book trade; mysql package com.controller;import java.io.File; import java.math.BigDecimal; import java.net.URL; import java.text.SimpleDateFormat; import com.alibaba.fastjson.JSONObject; import java.util.*; import org.springframework.beans.BeanUtils; import javax.servlet.http.HttpServletRequest; import org.springframework.web.context.ContextLoader; import javax.servlet.ServletContext; import com.service.TokenService; import com.utils.*; import java.lang.reflect.InvocationTargetException;import com.service.DictionaryService; import org.apache.commons.lang3.StringUtils; import com.annotation.IgnoreAuth; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.entity.*; import com.entity.view.*; import com.service.*; import com.utils.PageUtils; import com.utils.R; import com.alibaba.fastjson.*;/*** 公告资讯* 后端接口* author* email */ RestController Controller RequestMapping(/news) public class NewsController {private static final Logger logger LoggerFactory.getLogger(NewsController.class);private static final String TABLE_NAME news;Autowiredprivate NewsService newsService;Autowiredprivate TokenService tokenService;Autowiredprivate DictionaryService dictionaryService;//字典Autowiredprivate ForumService forumService;//论坛Autowiredprivate HuodongService huodongService;//活动Autowiredprivate HuodongCollectionService huodongCollectionService;//活动收藏Autowiredprivate HuodongLiuyanService huodongLiuyanService;//活动留言Autowiredprivate HuodongYuyueService huodongYuyueService;//活动报名Autowiredprivate SucaiService sucaiService;//图片素材Autowiredprivate SucaiCollectionService sucaiCollectionService;//图片素材收藏Autowiredprivate SucaiLiuyanService sucaiLiuyanService;//图片素材留言Autowiredprivate SucaishipinService sucaishipinService;//视频素材Autowiredprivate SucaishipinCollectionService sucaishipinCollectionService;//视频素材收藏Autowiredprivate SucaishipinLiuyanService sucaishipinLiuyanService;//视频素材留言Autowiredprivate YonghuService yonghuService;//用户Autowiredprivate UsersService usersService;//管理员/*** 后端列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params, HttpServletRequest request){logger.debug(page方法:,,Controller:{},,params:{},this.getClass().getName(),JSONObject.toJSONString(params));String role String.valueOf(request.getSession().getAttribute(role));if(false)return R.error(511,永不会进入);else if(用户.equals(role))params.put(yonghuId,request.getSession().getAttribute(userId));CommonUtil.checkMap(params);PageUtils page newsService.queryPage(params);//字典表数据转换ListNewsView list (ListNewsView)page.getList();for(NewsView c:list){//修改对应字典表字段dictionaryService.dictionaryConvert(c, request);}return R.ok().put(data, page);}/*** 后端详情*/RequestMapping(/info/{id})public R info(PathVariable(id) Long id, HttpServletRequest request){logger.debug(info方法:,,Controller:{},,id:{},this.getClass().getName(),id);NewsEntity news newsService.selectById(id);if(news !null){//entity转viewNewsView view new NewsView();BeanUtils.copyProperties( news , view );//把实体数据重构到view中//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put(data, view);}else {return R.error(511,查不到数据);}}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody NewsEntity news, HttpServletRequest request){logger.debug(save方法:,,Controller:{},,news:{},this.getClass().getName(),news.toString());String role String.valueOf(request.getSession().getAttribute(role));if(false)return R.error(511,永远不会进入);WrapperNewsEntity queryWrapper new EntityWrapperNewsEntity().eq(news_name, news.getNewsName()).eq(news_types, news.getNewsTypes());logger.info(sql语句:queryWrapper.getSqlSegment());NewsEntity newsEntity newsService.selectOne(queryWrapper);if(newsEntitynull){news.setInsertTime(new Date());news.setCreateTime(new Date());newsService.insert(news);return R.ok();}else {return R.error(511,表中有相同数据);}}/*** 后端修改*/RequestMapping(/update)public R update(RequestBody NewsEntity news, HttpServletRequest request) throws NoSuchFieldException, ClassNotFoundException, IllegalAccessException, InstantiationException {logger.debug(update方法:,,Controller:{},,news:{},this.getClass().getName(),news.toString());NewsEntity oldNewsEntity newsService.selectById(news.getId());//查询原先数据String role String.valueOf(request.getSession().getAttribute(role)); // if(false) // return R.error(511,永远不会进入);if(.equals(news.getNewsPhoto()) || null.equals(news.getNewsPhoto())){news.setNewsPhoto(null);}newsService.updateById(news);//根据id更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Integer[] ids, HttpServletRequest request){logger.debug(delete:,,Controller:{},,ids:{},this.getClass().getName(),ids.toString());ListNewsEntity oldNewsList newsService.selectBatchIds(Arrays.asList(ids));//要删除的数据newsService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 批量上传*/RequestMapping(/batchInsert)public R save( String fileName, HttpServletRequest request){logger.debug(batchInsert方法:,,Controller:{},,fileName:{},this.getClass().getName(),fileName);Integer yonghuId Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId)));SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);try {ListNewsEntity newsList new ArrayList();//上传的东西MapString, ListString seachFields new HashMap();//要查询的字段Date date new Date();int lastIndexOf fileName.lastIndexOf(.);if(lastIndexOf -1){return R.error(511,该文件没有后缀);}else{String suffix fileName.substring(lastIndexOf);if(!.xls.equals(suffix)){return R.error(511,只支持后缀为xls的excel文件);}else{URL resource this.getClass().getClassLoader().getResource(static/upload/ fileName);//获取文件路径File file new File(resource.getFile());if(!file.exists()){return R.error(511,找不到上传文件请联系管理员);}else{ListListString dataList PoiUtil.poiImport(file.getPath());//读取xls文件dataList.remove(0);//删除第一行因为第一行是提示for(ListString data:dataList){//循环NewsEntity newsEntity new NewsEntity(); // newsEntity.setNewsName(data.get(0)); //公告标题 要改的 // newsEntity.setNewsTypes(Integer.valueOf(data.get(0))); //公告类型 要改的 // newsEntity.setNewsPhoto();//详情和图片 // newsEntity.setInsertTime(date);//时间 // newsEntity.setNewsContent();//详情和图片 // newsEntity.setCreateTime(date);//时间newsList.add(newsEntity);//把要查询是否重复的字段放入map中}//查询是否重复newsService.insertBatch(newsList);return R.ok();}}}}catch (Exception e){e.printStackTrace();return R.error(511,批量插入数据异常请联系管理员);}}/*** 前端列表*/IgnoreAuthRequestMapping(/list)public R list(RequestParam MapString, Object params, HttpServletRequest request){logger.debug(list方法:,,Controller:{},,params:{},this.getClass().getName(),JSONObject.toJSONString(params));CommonUtil.checkMap(params);PageUtils page newsService.queryPage(params);//字典表数据转换ListNewsView list (ListNewsView)page.getList();for(NewsView c:list)dictionaryService.dictionaryConvert(c, request); //修改对应字典表字段return R.ok().put(data, page);}/*** 前端详情*/RequestMapping(/detail/{id})public R detail(PathVariable(id) Long id, HttpServletRequest request){logger.debug(detail方法:,,Controller:{},,id:{},this.getClass().getName(),id);NewsEntity news newsService.selectById(id);if(news !null){//entity转viewNewsView view new NewsView();BeanUtils.copyProperties( news , view );//把实体数据重构到view中//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put(data, view);}else {return R.error(511,查不到数据);}}/*** 前端保存*/RequestMapping(/add)public R add(RequestBody NewsEntity news, HttpServletRequest request){logger.debug(add方法:,,Controller:{},,news:{},this.getClass().getName(),news.toString());WrapperNewsEntity queryWrapper new EntityWrapperNewsEntity().eq(news_name, news.getNewsName()).eq(news_types, news.getNewsTypes()) // .notIn(news_types, new Integer[]{102});logger.info(sql语句:queryWrapper.getSqlSegment());NewsEntity newsEntity newsService.selectOne(queryWrapper);if(newsEntitynull){news.setInsertTime(new Date());news.setCreateTime(new Date());newsService.insert(news);return R.ok();}else {return R.error(511,表中有相同数据);}}} package com.controller;import java.io.*; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.*;import javax.servlet.http.HttpServletRequest;import com.alibaba.fastjson.JSON; import com.utils.StringUtil; import org.apache.commons.lang3.StringUtils; import org.json.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.util.ResourceUtils; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController;import com.annotation.IgnoreAuth; import com.baidu.aip.face.AipFace; import com.baidu.aip.face.MatchRequest; import com.baidu.aip.util.Base64Util; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.entity.ConfigEntity; import com.service.CommonService; import com.service.ConfigService; import com.utils.BaiduUtil; import com.utils.FileUtil; import com.utils.R;/*** 通用接口*/ RestController public class CommonController {private static final Logger logger LoggerFactory.getLogger(CommonController.class);Autowiredprivate CommonService commonService;/*** Java代码实现MySQL数据库导出** param mysqlUrl MySQL安装路径* param hostIP MySQL数据库所在服务器地址IP* param userName 进入数据库所需要的用户名* param hostPort 数据库端口* param password 进入数据库所需要的密码* param savePath 数据库文件保存路径* param fileName 数据库导出文件文件名* param databaseName 要导出的数据库名* return 返回true表示导出成功否则返回false。*/IgnoreAuthRequestMapping(/beifen)public R beifen(String mysqlUrl, String hostIP, String userName, String hostPort, String password, String savePath, String fileName, String databaseName) {File saveFile new File(savePath);if (!saveFile.exists()) {// 如果目录不存在 saveFile.mkdirs();// 创建文件夹 }if (!savePath.endsWith(File.separator)) {savePath savePath File.separator;}PrintWriter printWriter null;BufferedReader bufferedReader null;try {Runtime runtime Runtime.getRuntime();String cmd mysqlUrl mysqldump -h hostIP -u userName -P hostPort -p password databaseName;runtime.exec(cmd);Process process runtime.exec(cmd);InputStreamReader inputStreamReader new InputStreamReader(process.getInputStream(), utf8);bufferedReader new BufferedReader(inputStreamReader);printWriter new PrintWriter(new OutputStreamWriter(new FileOutputStream(savePath fileName), utf8));String line;while ((line bufferedReader.readLine()) ! null) {printWriter.println(line);}printWriter.flush();} catch (Exception e) {e.printStackTrace();return R.error(备份数据出错);} finally {try {if (bufferedReader ! null) {bufferedReader.close();}if (printWriter ! null) {printWriter.close();}} catch (Exception e) {e.printStackTrace();}}return R.ok();}/*** Java实现MySQL数据库导入** param mysqlUrl MySQL安装路径* param hostIP MySQL数据库所在服务器地址IP* param userName 进入数据库所需要的用户名* param hostPort 数据库端口* param password 进入数据库所需要的密码* param savePath 数据库文件保存路径* param fileName 数据库导出文件文件名* param databaseName 要导出的数据库名*/IgnoreAuthRequestMapping(/huanyuan)public R huanyuan(String mysqlUrl, String hostIP, String userName, String hostPort, String password, String savePath, String fileName, String databaseName) {try {Runtime rt Runtime.getRuntime();Process child1 rt.exec(mysqlUrlmysql.exe -h hostIP -u userName -P hostPort -p password databaseName);OutputStream out child1.getOutputStream();//控制台的输入信息作为输出流String inStr;StringBuffer sb new StringBuffer();String outStr;BufferedReader br new BufferedReader(new InputStreamReader(new FileInputStream(savePath/fileName), utf-8));while ((inStr br.readLine()) ! null) {sb.append(inStr \r\n);}outStr sb.toString();OutputStreamWriter writer new OutputStreamWriter(out, utf8);writer.write(outStr); // 注这里如果用缓冲方式写入文件的话会导致中文乱码用flush()方法则可以避免writer.flush();out.close();br.close();writer.close();} catch (Exception e) {e.printStackTrace();return R.error(数据导入出错);}return R.ok();}/*** 饼状图求和* return*/RequestMapping(/pieSum)public R pieSum(RequestParam MapString,Object params) {logger.debug(饼状图求和:,,Controller:{},,params:{},this.getClass().getName(),params);ListMapString, Object result commonService.pieSum(params);return R.ok().put(data, result);}/*** 饼状图统计* return*/RequestMapping(/pieCount)public R pieCount(RequestParam MapString,Object params) {logger.debug(饼状图统计:,,Controller:{},,params:{},this.getClass().getName(),params);ListMapString, Object result commonService.pieCount(params);return R.ok().put(data, result);}/*** 柱状图求和单列* return*/RequestMapping(/barSumOne)public R barSumOne(RequestParam MapString,Object params) {logger.debug(柱状图求和单列:,,Controller:{},,params:{},this.getClass().getName(),params);ListMapString, Object result commonService.barSumOne(params);ListString xAxis new ArrayList();//报表x轴ListListString yAxis new ArrayList();//y轴ListString legend new ArrayList();//标题ListString yAxis0 new ArrayList();yAxis.add(yAxis0);legend.add();for(MapString, Object map :result){String oneValue String.valueOf(map.get(name));String value String.valueOf(map.get(value));xAxis.add(oneValue);yAxis0.add(value);}MapString, Object resultMap new HashMap();resultMap.put(xAxis,xAxis);resultMap.put(yAxis,yAxis);resultMap.put(legend,legend);return R.ok().put(data, resultMap);}/*** 柱状图统计单列* return*/RequestMapping(/barCountOne)public R barCountOne(RequestParam MapString,Object params) {logger.debug(柱状图统计单列:,,Controller:{},,params:{},this.getClass().getName(),params);ListMapString, Object result commonService.barCountOne(params);ListString xAxis new ArrayList();//报表x轴ListListString yAxis new ArrayList();//y轴ListString legend new ArrayList();//标题ListString yAxis0 new ArrayList();yAxis.add(yAxis0);legend.add();for(MapString, Object map :result){String oneValue String.valueOf(map.get(name));String value String.valueOf(map.get(value));xAxis.add(oneValue);yAxis0.add(value);}MapString, Object resultMap new HashMap();resultMap.put(xAxis,xAxis);resultMap.put(yAxis,yAxis);resultMap.put(legend,legend);return R.ok().put(data, resultMap);}/*** 柱状图统计双列* return*/RequestMapping(/barSumTwo)public R barSumTwo(RequestParam MapString,Object params) {logger.debug(柱状图统计双列:,,Controller:{},,params:{},this.getClass().getName(),params);ListMapString, Object result commonService.barSumTwo(params);ListString xAxis new ArrayList();//报表x轴ListListString yAxis new ArrayList();//y轴ListString legend new ArrayList();//标题MapString, HashMapString, String dataMap new LinkedHashMap();for(MapString, Object map :result){String name1Value String.valueOf(map.get(name1));String name2Value String.valueOf(map.get(name2));String value String.valueOf(map.get(value));if(!legend.contains(name2Value)){legend.add(name2Value);//添加完成后 就是最全的第二列的类型}if(dataMap.containsKey(name1Value)){dataMap.get(name1Value).put(name2Value,value);}else{HashMapString, String name1Data new HashMap();name1Data.put(name2Value,value);dataMap.put(name1Value,name1Data);}}for(int i 0; ilegend.size(); i){yAxis.add(new ArrayListString());}SetString keys dataMap.keySet();for(String key:keys){xAxis.add(key);HashMapString, String map dataMap.get(key);for(int i 0; ilegend.size(); i){ListString data yAxis.get(i);if(StringUtil.isNotEmpty(map.get(legend.get(i)))){data.add(map.get(legend.get(i)));}else{data.add(0);}}}System.out.println();MapString, Object resultMap new HashMap();resultMap.put(xAxis,xAxis);resultMap.put(yAxis,yAxis);resultMap.put(legend,legend);return R.ok().put(data, resultMap);}/*** 柱状图统计双列* return*/RequestMapping(/barCountTwo)public R barCountTwo(RequestParam MapString,Object params) {logger.debug(柱状图统计双列:,,Controller:{},,params:{},this.getClass().getName(),params);ListMapString, Object result commonService.barCountTwo(params);ListString xAxis new ArrayList();//报表x轴ListListString yAxis new ArrayList();//y轴ListString legend new ArrayList();//标题MapString, HashMapString, String dataMap new LinkedHashMap();for(MapString, Object map :result){String name1Value String.valueOf(map.get(name1));String name2Value String.valueOf(map.get(name2));String value String.valueOf(map.get(value));if(!legend.contains(name2Value)){legend.add(name2Value);//添加完成后 就是最全的第二列的类型}if(dataMap.containsKey(name1Value)){dataMap.get(name1Value).put(name2Value,value);}else{HashMapString, String name1Data new HashMap();name1Data.put(name2Value,value);dataMap.put(name1Value,name1Data);}}for(int i 0; ilegend.size(); i){yAxis.add(new ArrayListString());}SetString keys dataMap.keySet();for(String key:keys){xAxis.add(key);HashMapString, String map dataMap.get(key);for(int i 0; ilegend.size(); i){ListString data yAxis.get(i);if(StringUtil.isNotEmpty(map.get(legend.get(i)))){data.add(map.get(legend.get(i)));}else{data.add(0);}}}System.out.println();MapString, Object resultMap new HashMap();resultMap.put(xAxis,xAxis);resultMap.put(yAxis,yAxis);resultMap.put(legend,legend);return R.ok().put(data, resultMap);}/**tableName 查询表condition1 条件1condition1Value 条件1值average 计算平均评分取值有值 Number(res.data.value.toFixed(1))无值 if(res.data){}* */IgnoreAuthRequestMapping(/queryScore)public R queryScore(RequestParam MapString, Object params) {logger.debug(queryScore:,,Controller:{},,params:{},this.getClass().getName(),params);MapString, Object queryScore commonService.queryScore(params);return R.ok().put(data, queryScore);}/*** 查询字典表的分组统计总条数* tableName 表名* groupColumn 分组字段* return*/RequestMapping(/newSelectGroupCount)public R newSelectGroupCount(RequestParam MapString,Object params) {logger.debug(newSelectGroupCount:,,Controller:{},,params:{},this.getClass().getName(),params);ListMapString, Object result commonService.newSelectGroupCount(params);return R.ok().put(data, result);}/*** 查询字典表的分组求和* tableName 表名* groupColumn 分组字段* sumCloum 统计字段* return*/RequestMapping(/newSelectGroupSum)public R newSelectGroupSum(RequestParam MapString,Object params) {logger.debug(newSelectGroupSum:,,Controller:{},,params:{},this.getClass().getName(),params);ListMapString, Object result commonService.newSelectGroupSum(params);return R.ok().put(data, result);}/*** 柱状图求和 老的*/RequestMapping(/barSum)public R barSum(RequestParam MapString,Object params) {logger.debug(barSum方法:,,Controller:{},,params:{},this.getClass().getName(), com.alibaba.fastjson.JSONObject.toJSONString(params));Boolean isJoinTableFlag false;//是否有级联表相关String one ;//第一优先String two ;//第二优先//处理thisTable和joinTable 处理内容是把json字符串转为Map并把带有,的切割为数组//当前表MapString,Object thisTable JSON.parseObject(String.valueOf(params.get(thisTable)),Map.class);params.put(thisTable,thisTable);//级联表String joinTableString String.valueOf(params.get(joinTable));if(StringUtil.isNotEmpty(joinTableString)) {MapString, Object joinTable JSON.parseObject(joinTableString, Map.class);params.put(joinTable, joinTable);isJoinTableFlag true;}if(StringUtil.isNotEmpty(String.valueOf(thisTable.get(date)))){//当前表日期thisTable.put(date,String.valueOf(thisTable.get(date)).split(,));one thisDate0;}if(isJoinTableFlag){//级联表日期MapString, Object joinTable (MapString, Object) params.get(joinTable);if(StringUtil.isNotEmpty(String.valueOf(joinTable.get(date)))){joinTable.put(date,String.valueOf(joinTable.get(date)).split(,));if(StringUtil.isEmpty(one)){one joinDate0;}else{if(StringUtil.isEmpty(two)){two joinDate0;}}}}if(StringUtil.isNotEmpty(String.valueOf(thisTable.get(string)))){//当前表字符串thisTable.put(string,String.valueOf(thisTable.get(string)).split(,));if(StringUtil.isEmpty(one)){one thisString0;}else{if(StringUtil.isEmpty(two)){two thisString0;}}}if(isJoinTableFlag){//级联表字符串MapString, Object joinTable (MapString, Object) params.get(joinTable);if(StringUtil.isNotEmpty(String.valueOf(joinTable.get(string)))){joinTable.put(string,String.valueOf(joinTable.get(string)).split(,));if(StringUtil.isEmpty(one)){one joinString0;}else{if(StringUtil.isEmpty(two)){two joinString0;}}}}if(StringUtil.isNotEmpty(String.valueOf(thisTable.get(types)))){//当前表类型thisTable.put(types,String.valueOf(thisTable.get(types)).split(,));if(StringUtil.isEmpty(one)){one thisTypes0;}else{if(StringUtil.isEmpty(two)){two thisTypes0;}}}if(isJoinTableFlag){//级联表类型MapString, Object joinTable (MapString, Object) params.get(joinTable);if(StringUtil.isNotEmpty(String.valueOf(joinTable.get(types)))){joinTable.put(types,String.valueOf(joinTable.get(types)).split(,));if(StringUtil.isEmpty(one)){one joinTypes0;}else{if(StringUtil.isEmpty(two)){two joinTypes0;}}}}ListMapString, Object result commonService.barSum(params);ListString xAxis new ArrayList();//报表x轴ListListString yAxis new ArrayList();//y轴ListString legend new ArrayList();//标题if(StringUtil.isEmpty(two)){//不包含第二列ListString yAxis0 new ArrayList();yAxis.add(yAxis0);legend.add();for(MapString, Object map :result){String oneValue String.valueOf(map.get(one));String value String.valueOf(map.get(value));xAxis.add(oneValue);yAxis0.add(value);}}else{//包含第二列MapString, HashMapString, String dataMap new LinkedHashMap();if(StringUtil.isNotEmpty(two)){for(MapString, Object map :result){String oneValue String.valueOf(map.get(one));String twoValue String.valueOf(map.get(two));String value String.valueOf(map.get(value));if(!legend.contains(twoValue)){legend.add(twoValue);//添加完成后 就是最全的第二列的类型}if(dataMap.containsKey(oneValue)){dataMap.get(oneValue).put(twoValue,value);}else{HashMapString, String oneData new HashMap();oneData.put(twoValue,value);dataMap.put(oneValue,oneData);}}}for(int i 0; ilegend.size(); i){yAxis.add(new ArrayListString());}SetString keys dataMap.keySet();for(String key:keys){xAxis.add(key);HashMapString, String map dataMap.get(key);for(int i 0; ilegend.size(); i){ListString data yAxis.get(i);if(StringUtil.isNotEmpty(map.get(legend.get(i)))){data.add(map.get(legend.get(i)));}else{data.add(0);}}}System.out.println();}MapString, Object resultMap new HashMap();resultMap.put(xAxis,xAxis);resultMap.put(yAxis,yAxis);resultMap.put(legend,legend);return R.ok().put(data, resultMap);}/*** 柱状图统计 老的*/RequestMapping(/barCount)public R barCount(RequestParam MapString,Object params) {logger.debug(barCount方法:,,Controller:{},,params:{},this.getClass().getName(), com.alibaba.fastjson.JSONObject.toJSONString(params));Boolean isJoinTableFlag false;//是否有级联表相关String one ;//第一优先String two ;//第二优先//处理thisTable和joinTable 处理内容是把json字符串转为Map并把带有,的切割为数组//当前表MapString,Object thisTable JSON.parseObject(String.valueOf(params.get(thisTable)),Map.class);params.put(thisTable,thisTable);//级联表String joinTableString String.valueOf(params.get(joinTable));if(StringUtil.isNotEmpty(joinTableString)) {MapString, Object joinTable JSON.parseObject(joinTableString, Map.class);params.put(joinTable, joinTable);isJoinTableFlag true;}if(StringUtil.isNotEmpty(String.valueOf(thisTable.get(date)))){//当前表日期thisTable.put(date,String.valueOf(thisTable.get(date)).split(,));one thisDate0;}if(isJoinTableFlag){//级联表日期MapString, Object joinTable (MapString, Object) params.get(joinTable);if(StringUtil.isNotEmpty(String.valueOf(joinTable.get(date)))){joinTable.put(date,String.valueOf(joinTable.get(date)).split(,));if(StringUtil.isEmpty(one)){one joinDate0;}else{if(StringUtil.isEmpty(two)){two joinDate0;}}}}if(StringUtil.isNotEmpty(String.valueOf(thisTable.get(string)))){//当前表字符串thisTable.put(string,String.valueOf(thisTable.get(string)).split(,));if(StringUtil.isEmpty(one)){one thisString0;}else{if(StringUtil.isEmpty(two)){two thisString0;}}}if(isJoinTableFlag){//级联表字符串MapString, Object joinTable (MapString, Object) params.get(joinTable);if(StringUtil.isNotEmpty(String.valueOf(joinTable.get(string)))){joinTable.put(string,String.valueOf(joinTable.get(string)).split(,));if(StringUtil.isEmpty(one)){one joinString0;}else{if(StringUtil.isEmpty(two)){two joinString0;}}}}if(StringUtil.isNotEmpty(String.valueOf(thisTable.get(types)))){//当前表类型thisTable.put(types,String.valueOf(thisTable.get(types)).split(,));if(StringUtil.isEmpty(one)){one thisTypes0;}else{if(StringUtil.isEmpty(two)){two thisTypes0;}}}if(isJoinTableFlag){//级联表类型MapString, Object joinTable (MapString, Object) params.get(joinTable);if(StringUtil.isNotEmpty(String.valueOf(joinTable.get(types)))){joinTable.put(types,String.valueOf(joinTable.get(types)).split(,));if(StringUtil.isEmpty(one)){one joinTypes0;}else{if(StringUtil.isEmpty(two)){two joinTypes0;}}}}ListMapString, Object result commonService.barCount(params);ListString xAxis new ArrayList();//报表x轴ListListString yAxis new ArrayList();//y轴ListString legend new ArrayList();//标题if(StringUtil.isEmpty(two)){//不包含第二列ListString yAxis0 new ArrayList();yAxis.add(yAxis0);legend.add();for(MapString, Object map :result){String oneValue String.valueOf(map.get(one));String value String.valueOf(map.get(value));xAxis.add(oneValue);yAxis0.add(value);}}else{//包含第二列MapString, HashMapString, String dataMap new LinkedHashMap();if(StringUtil.isNotEmpty(two)){for(MapString, Object map :result){String oneValue String.valueOf(map.get(one));String twoValue String.valueOf(map.get(two));String value String.valueOf(map.get(value));if(!legend.contains(twoValue)){legend.add(twoValue);//添加完成后 就是最全的第二列的类型}if(dataMap.containsKey(oneValue)){dataMap.get(oneValue).put(twoValue,value);}else{HashMapString, String oneData new HashMap();oneData.put(twoValue,value);dataMap.put(oneValue,oneData);}}}for(int i 0; ilegend.size(); i){yAxis.add(new ArrayListString());}SetString keys dataMap.keySet();for(String key:keys){xAxis.add(key);HashMapString, String map dataMap.get(key);for(int i 0; ilegend.size(); i){ListString data yAxis.get(i);if(StringUtil.isNotEmpty(map.get(legend.get(i)))){data.add(map.get(legend.get(i)));}else{data.add(0);}}}System.out.println();}MapString, Object resultMap new HashMap();resultMap.put(xAxis,xAxis);resultMap.put(yAxis,yAxis);resultMap.put(legend,legend);return R.ok().put(data, resultMap);} }
http://www.dnsts.com.cn/news/264281.html

相关文章:

  • 网站搭建博客搜索引擎是网站吗
  • 重庆网站建设制作设计类网站策划案
  • 昆明网站建设王道下拉棒大发 wordpress ifanr
  • 有没有做网站的团队discuz论坛手机模板
  • 网站备案被注销的原因杭州电商网站建设
  • 可以上传图片的网站怎么做电商app制作费用一览表
  • 沈阳自助建站模板页面结构和页面设计
  • 南京溧水网站建设安卓系统上怎样做网站前端开发
  • 奇迹网站自己做如何知道一个网站的流量
  • 云图书馆平台网站建设方案网站排名优化公司
  • 网站建设规划书中包含内容wordpress 访问速度
  • 宣城做网站公司wordpress qq挂件
  • 类似美团的网站建设app网站维护
  • 网站免费php模板网站的类型及特点
  • 微网站开发 在线商城专业设计vi公司
  • wap网站要花多少钱网络会议网站
  • 网站建设宣传的目的wordpress vue
  • 网站上传后没有后台无代码应用搭建平台
  • 一般企业网站建设合同网站代理 正规备案
  • 怎么做一个购物网站快速 模板 做网站
  • 做电商网站的感想手机编写html网页的软件
  • 黑客做的网站好用不西宁网站seo外包
  • 网站查询系统怎么做做自媒体需要用的网站
  • 天德建设集团网站莆田人做的网站
  • 网站开发企业排名网站建设实训报告作业
  • 企业建设网站的目的( )ui特效网站
  • 校园网站建设的感受论文网站建设_聊城
  • 织梦可以放两个网站wordpress腾讯课堂
  • 南昌公司做网站禁止 wordpress ajax
  • 广州专业的做网站企业手机网站建设效果