@RequestMapping("listgoodscart")
public ResultEntity listGoodsCart(@RequestParam(name = "data", required = true) String data,
@RequestParam(name = "userid", required = true) String userId) {
GoodsCartDTO goodsCartDTO;
try {
goodsCartDTO = decodeByBase64(data, GoodsCartDTO.class);
} catch (Exception e) {
e.printStackTrace();
return error(ResultCode.PARAM_DECODE_ERROR);
}
if(StringUtils.isBlank(goodsCartDTO.getArea())) {
return error(ResultCode.PARAM_CHECK_ERROR);
}
List<GoodsCart> goodsCartList = this.iGoodsCartService
.selectList(new EntityWrapper<GoodsCart>()
.eq("is_deleted", 0)
.eq("is_enable", 1)
.eq("user_id", userId)
.eq("is_balance", 0)
.groupBy("shop_id")
.setSqlSelect("shop_id as shopId"));
Map<Integer, List<Map<String, Object>>> map = Maps.newHashMap();
if (goodsCartList != null && !goodsCartList.isEmpty()) {
for (GoodsCart goodsCart : goodsCartList) {
Integer shopId = goodsCart.getShopId();
List<Map<String, Object>> list = this.iGoodsCartService.listGoodCartInfo(shopId,
Integer.valueOf(userId),goodsCartDTO.getArea());
if (list != null && !list.isEmpty()) {
for (Map<String, Object> data1 : list) {
List<Map<String, Object>> mapList = map.get(shopId);
if (mapList != null && !mapList.isEmpty()) {
mapList.add(data1);
} else {
mapList = Lists.newArrayList();
mapList.add(data1);
map.put(shopId, mapList);
}
}
}
}
}
List<GoodsCartVO> goodsCartVOList = Lists.newArrayList();
if (!map.isEmpty()) {
Set<Map.Entry<Integer, List<Map<String, Object>>>> set = map.entrySet();
for (Map.Entry<Integer, List<Map<String, Object>>> entry : set) {
GoodsCartVO goodsCartVO = new GoodsCartVO();
ShopInfo shopInfo = this.iShopInfoService.selectOne(new EntityWrapper<ShopInfo>().eq("is_deleted", 0)
.eq("is_enable", 1).eq("id", entry.getKey()).eq("status", 1).eq("business_status", 1));
goodsCartVO.setShopInfo(shopInfo);
goodsCartVO.setGoodsBaseInfoList(entry.getValue());
goodsCartVOList.add(goodsCartVO);
}
}
return success(goodsCartVOList); }

自用java购物的更多相关文章

  1. java 购物商城小项目训练

    java web 模拟购物车练习(项目一) 首页(index.jsp) <div align="center" class="index"> < ...

  2. 自用java字符串工具类

    不断封装一些常用的字符串操作加到这个工具类里,不断积累: package com.netease.lede.qa.util; import java.text.ParseException; impo ...

  3. trackr: An AngularJS app with a Java 8 backend – Part I

    该系列文章来自techdev 我想分享在techdev公司开发的项目-trackr-的一些最新的见解.trackr是一个用来跟踪我们的工作时间,创建报告和管理请假的web应用程序.做这个程序的目的有两 ...

  4. 再说Java EE

    说到JavaEE(曾经叫J2EE)是什么,你可能回答:JavaEE是一组规范,这么说是没错,可是自己不认为这个答案非常大.非常空么?什么又是规范?规范能组成应用么?能在JVM中跑起来么?要理解这些,先 ...

  5. Java学习资源整理(超级全面)

    这里整理一些自己平常搜集的比较好的关于Java的学习资源,主要包括博客站点.书籍.课程等. 了解Java最新资讯 这部分主要是了解与Java相关的动态以及信息,能够拓展我们的视野以及寻找一些好的ide ...

  6. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  7. Java Web之网上购物系统(提交订单、查看我的订单)

    作业终于做完了,好开心......虽然这一周经历不是那么顺利,但是觉得还是收获了不少,有过想哭的冲动,代码不会写,事情办不好,各种发愁.空间里发小发了带父母出去游玩的照片,瞬间能量值不知道是被击退的多 ...

  8. Java Web之网上购物系统(注册、登录、浏览商品、添加购物车)

    眼看就要期末了,我的专业课也迎来了第二次的期末作业---------<网上购物系统>.虽然老师的意图是在锻炼我们后台的能力,但是想着还是不利用网上的模板,准备自己写,以来别人写的静态页看不 ...

  9. 一个简单的购物金额结算(JAVA)

    我编写的代码: import java.util.Scanner; public class ZuoYe01 { public static void main(String[] args) { // ...

随机推荐

  1. SQL server 常见错误--登录连接失败和附加数据库失败

    问题1:数据库软件登录连接不了,因为SQL server有部分服务没有开启,需要手动开启.       解决:计算机管理-->服务-->开启SQL server服务(具体那个自己慢慢试,就 ...

  2. Linux 打包和压缩

    常用的打包压缩方式 windows常用rar mac常用zip linux常用tar.gz 打包/解包 tar是linux中最常用的备份工具,此命令可以把一系列的文件打包到一个大文件中,也可以把一个打 ...

  3. lucene中Field简析

    http://blog.csdn.net/zhaoxiao2008/article/details/14180019 先看一段lucene3代码 Document doc = new Document ...

  4. z7z8记录

    http://www.ypppt.com/ ppt模板地址

  5. Mongodb 学习笔记(三) .net core SDK

    首先添加 Nuget包  MongoDB.Driver 创建一个Model. public class Student { public ObjectId _id { get; set; } publ ...

  6. java通过poi读取excel中的日期类型数据或自定义类型日期

    Java 读取Excel表格日期类型数据的时候,读出来的是这样的  12-十月-2019,而Excel中输入的是 2019/10/12 或 2019-10-12 poi处理excel时,当excel没 ...

  7. springboot学习入门简易版九---springboot2.0整合多数据源mybatis mysql8+(22)

    一个项目中配置多个数据源(链接不同库jdbc),无限大,具体多少根据内存大小 项目中多数据源如何划分:分包名(业务)或注解方式.分包名方式类似多个不同的jar,同业务需求放一个包中. 分包方式配置多数 ...

  8. 【大数据技术能力提升_1】python基础

    .caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...

  9. Json序列化 总结

    案例总结:https://www.cnblogs.com/jsll/p/11855349.html public string Json_GetDepartment_Position(...)//st ...

  10. Linux磁盘管理——directory tree与mount point

    参考:/sys 和 /dev 区别 Linux磁盘管理——虚拟文件系统 Directory tree Linux内的所有数据都是以文件的形态来呈现的,所以整个Linux系统最重要的地方就是direct ...