gqx 2 gadi atpakaļ
vecāks
revīzija
f1a8eea476

+ 60 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/mall/controller/MallOrderGoodsController.java

@@ -7,12 +7,22 @@ import java.util.stream.Collectors;
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
 import java.net.URLDecoder;
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+
+import cn.hutool.core.date.DateUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import org.apache.commons.lang3.ObjectUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.business.entity.BusHotel;
+import org.jeecg.modules.business.entity.BusMemberCard;
+import org.jeecg.modules.business.service.IBusHotelService;
 import org.jeecg.modules.mall.entity.MallOrderGoods;
+import org.jeecg.modules.mall.entity.MallOrderGoodsDetail;
+import org.jeecg.modules.mall.service.IMallOrderGoodsDetailService;
 import org.jeecg.modules.mall.service.IMallOrderGoodsService;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -20,6 +30,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.extern.slf4j.Slf4j;
 
+import org.jeecg.modules.rooms.service.CesGoodsServiceImpl;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
 import org.jeecgframework.poi.excel.entity.ExportParams;
@@ -50,6 +61,12 @@ import org.apache.shiro.authz.annotation.RequiresPermissions;
 public class MallOrderGoodsController extends JeecgController<MallOrderGoods, IMallOrderGoodsService> {
 	@Autowired
 	private IMallOrderGoodsService mallOrderGoodsService;
+	 @Autowired
+	 private IBusHotelService busHotelService;
+	 @Resource
+	 private IMallOrderGoodsDetailService mallOrderGoodsDetailService;
+	 @Resource
+	 private CesGoodsServiceImpl cesGoodsService;
 
 	/**
 	 * 分页列表查询
@@ -66,10 +83,52 @@ public class MallOrderGoodsController extends JeecgController<MallOrderGoods, IM
 	public Result<IPage<MallOrderGoods>> queryPageList(MallOrderGoods mallOrderGoods,
 								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
 								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+													   @RequestParam(name="startTime",required = false) String startTime,
+													   @RequestParam(name="endTime",required = false) String endTime,
+													   @RequestParam(name="hotelIds[]",required = false) List<String> hotelIds,
 								   HttpServletRequest req) {
-		QueryWrapper<MallOrderGoods> queryWrapper = QueryGenerator.initQueryWrapper(mallOrderGoods, req.getParameterMap());
+		LambdaQueryWrapper<MallOrderGoods> queryWrapper = QueryGenerator.initQueryWrapper(mallOrderGoods, req.getParameterMap()).lambda();
+		if (ObjectUtils.isNotEmpty(startTime)) {
+			queryWrapper.ge(MallOrderGoods::getCreateTime, DateUtil.parseDate(startTime));
+		}
+		if (ObjectUtils.isNotEmpty(endTime)) {
+			queryWrapper.le(MallOrderGoods::getCreateTime, DateUtil.parseDate(endTime));
+		}
+		if (ObjectUtils.isNotEmpty(hotelIds)) {
+			queryWrapper.and(j -> {
+				for (int k = 0; k < hotelIds.size(); k++) {
+					j = j.or().eq(MallOrderGoods::getHotelId, hotelIds.get(k));
+				}
+			});
+		}
 		Page<MallOrderGoods> page = new Page<MallOrderGoods>(pageNo, pageSize);
 		IPage<MallOrderGoods> pageList = mallOrderGoodsService.page(page, queryWrapper);
+		pageList.getRecords().forEach(t -> {
+			if (t.getStatus().equals(1)) {
+				t.setStatusName("待发货");
+			} else if (t.getStatus().equals(2)) {
+				t.setStatusName("待收货");
+			} else if (t.getStatus().equals(3)) {
+				t.setStatusName("已完成");
+			} else if (t.getStatus().equals(4)) {
+				t.setStatusName("已拒绝");
+			} else if (t.getStatus().equals(5)) {
+				t.setStatusName("已取消");
+			}
+			BusHotel hotel = busHotelService.getById(t.getHotelId());
+			if (hotel != null) {
+				t.setHotelName(hotel.getName());
+			}
+			LambdaQueryWrapper<MallOrderGoodsDetail> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+			lambdaQueryWrapper.eq(MallOrderGoodsDetail::getOrderCode, t.getCode());
+			List<MallOrderGoodsDetail> list=mallOrderGoodsDetailService.list(lambdaQueryWrapper);
+			if(ObjectUtils.isNotEmpty(list)){
+				list.forEach(i->{
+					i.setGoodsInfo(cesGoodsService.getById(i.getGoodsId()));
+				});
+			}
+			t.setDetailList(list);
+		});
 		return Result.OK(pageList);
 	}