gqx 2 lat temu
rodzic
commit
12a622099d

+ 187 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusMarketMealCouponsController.java

@@ -0,0 +1,187 @@
+package org.jeecg.modules.business.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+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.BusMarketMealCoupons;
+import org.jeecg.modules.business.service.IBusHotelService;
+import org.jeecg.modules.business.service.IBusMarketMealCouponsService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.extern.slf4j.Slf4j;
+
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+import com.alibaba.fastjson.JSON;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+
+ /**
+ * @Description: bus_market_meal_coupons_info
+ * @Author: jeecg-boot
+ * @Date:   2023-03-14
+ * @Version: V1.0
+ */
+@Api(tags="bus_market_meal_coupons_info")
+@RestController
+@RequestMapping("/business/busMarketMealCoupons")
+@Slf4j
+public class BusMarketMealCouponsController extends JeecgController<BusMarketMealCoupons, IBusMarketMealCouponsService> {
+	@Autowired
+	private IBusMarketMealCouponsService busMarketMealCouponsService;
+	 @Autowired
+	 private IBusHotelService busHotelService;
+	/**
+	 * 分页列表查询
+	 *
+	 * @param busMarketMealCoupons
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "bus_market_meal_coupons_info-分页列表查询")
+	@ApiOperation(value="bus_market_meal_coupons_info-分页列表查询", notes="bus_market_meal_coupons_info-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<BusMarketMealCoupons>> queryPageList(BusMarketMealCoupons busMarketMealCoupons,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+//		QueryWrapper<BusMarketMealCoupons> queryWrapper = QueryGenerator.initQueryWrapper(busMarketMealCoupons, req.getParameterMap());
+		Page<BusMarketMealCoupons> page = new Page<BusMarketMealCoupons>(pageNo, pageSize);
+		IPage<BusMarketMealCoupons> pageList = busMarketMealCouponsService.pageList(page, busMarketMealCoupons);
+		pageList.getRecords().forEach(item -> {
+			BusHotel hotle = busHotelService.getById(item.getHotelId());
+			if (hotle != null) {
+				item.setHotelName(hotle.getName());
+			}
+		});
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 *   添加
+	 *
+	 * @param busMarketMealCoupons
+	 * @return
+	 */
+	@AutoLog(value = "bus_market_meal_coupons_info-添加")
+	@ApiOperation(value="bus_market_meal_coupons_info-添加", notes="bus_market_meal_coupons_info-添加")
+	//@RequiresPermissions("business:bus_market_meal_coupons_info:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody BusMarketMealCoupons busMarketMealCoupons) {
+		busMarketMealCouponsService.save(busMarketMealCoupons);
+		return Result.OK("添加成功!");
+	}
+	
+	/**
+	 *  编辑
+	 *
+	 * @param busMarketMealCoupons
+	 * @return
+	 */
+	@AutoLog(value = "bus_market_meal_coupons_info-编辑")
+	@ApiOperation(value="bus_market_meal_coupons_info-编辑", notes="bus_market_meal_coupons_info-编辑")
+	//@RequiresPermissions("business:bus_market_meal_coupons_info:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody BusMarketMealCoupons busMarketMealCoupons) {
+		busMarketMealCouponsService.updateById(busMarketMealCoupons);
+		return Result.OK("编辑成功!");
+	}
+	
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "bus_market_meal_coupons_info-通过id删除")
+	@ApiOperation(value="bus_market_meal_coupons_info-通过id删除", notes="bus_market_meal_coupons_info-通过id删除")
+	//@RequiresPermissions("business:bus_market_meal_coupons_info:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		busMarketMealCouponsService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+	
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "bus_market_meal_coupons_info-批量删除")
+	@ApiOperation(value="bus_market_meal_coupons_info-批量删除", notes="bus_market_meal_coupons_info-批量删除")
+	//@RequiresPermissions("business:bus_market_meal_coupons_info:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.busMarketMealCouponsService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+	
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "bus_market_meal_coupons_info-通过id查询")
+	@ApiOperation(value="bus_market_meal_coupons_info-通过id查询", notes="bus_market_meal_coupons_info-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<BusMarketMealCoupons> queryById(@RequestParam(name="id",required=true) String id) {
+		BusMarketMealCoupons busMarketMealCoupons = busMarketMealCouponsService.getById(id);
+		if(busMarketMealCoupons==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(busMarketMealCoupons);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param busMarketMealCoupons
+    */
+    //@RequiresPermissions("business:bus_market_meal_coupons_info:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, BusMarketMealCoupons busMarketMealCoupons) {
+        return super.exportXls(request, busMarketMealCoupons, BusMarketMealCoupons.class, "bus_market_meal_coupons_info");
+    }
+
+    /**
+      * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    //@RequiresPermissions("business:bus_market_meal_coupons_info:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, BusMarketMealCoupons.class);
+    }
+
+}

+ 83 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusMarketMealCoupons.java

@@ -0,0 +1,83 @@
+package org.jeecg.modules.business.entity;
+
+import java.io.Serializable;
+import java.io.UnsupportedEncodingException;
+import java.util.Date;
+import java.math.BigDecimal;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.jeecg.common.aspect.annotation.Dict;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * @Description: bus_market_meal_coupons_info
+ * @Author: jeecg-boot
+ * @Date:   2023-03-14
+ * @Version: V1.0
+ */
+@Data
+@TableName("bus_market_meal_coupons_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="bus_market_meal_coupons_info对象", description="bus_market_meal_coupons_info")
+public class BusMarketMealCoupons implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**主键*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+	/**关联租户*/
+	@Excel(name = "关联租户", width = 15)
+    @ApiModelProperty(value = "关联租户")
+    private String tenantId;
+	/**关联酒店*/
+	@Excel(name = "关联酒店", width = 15)
+    @ApiModelProperty(value = "关联酒店")
+    private String hotelId;
+	/**名称*/
+	@Excel(name = "名称", width = 15)
+    @ApiModelProperty(value = "名称")
+    private String name;
+	/**餐券类型*/
+	@Excel(name = "餐券类型", width = 15)
+    @ApiModelProperty(value = "餐券类型")
+    private String type;
+	/**金额*/
+	@Excel(name = "金额", width = 15)
+    @ApiModelProperty(value = "金额")
+    private BigDecimal cost;
+	/**说明*/
+	@Excel(name = "说明", width = 15)
+    @ApiModelProperty(value = "说明")
+    private String introduce;
+	/**消费项目id*/
+	@Excel(name = "消费项目id", width = 15)
+    @ApiModelProperty(value = "消费项目id")
+    private String consumeProjectId;
+
+    @TableField(exist = false)
+    private String hotelName;
+    @TableField(exist = false)
+    private String typeName;
+    @TableField(exist = false)
+    private Integer count;
+
+    @TableField(exist = false)
+    private Integer notClaimed;
+
+    @TableField(exist = false)
+    private Integer received;
+
+    @TableField(exist = false)
+    private Integer used;
+    @TableField(exist = false)
+    private Integer voided;
+}

+ 21 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusMarketMealCouponsMapper.java

@@ -0,0 +1,21 @@
+package org.jeecg.modules.business.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.business.entity.BusMarketCoupons;
+import org.jeecg.modules.business.entity.BusMarketCouponsCash;
+import org.jeecg.modules.business.entity.BusMarketMealCoupons;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: bus_market_meal_coupons_info
+ * @Author: jeecg-boot
+ * @Date:   2023-03-14
+ * @Version: V1.0
+ */
+public interface BusMarketMealCouponsMapper extends BaseMapper<BusMarketMealCoupons> {
+
+    public List<BusMarketMealCoupons> getMealCouponsList(Page<BusMarketMealCoupons> page, @Param("busMarketMealCoupons") BusMarketMealCoupons model);
+}

+ 22 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/BusMarketMealCouponsMapper.xml

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.business.mapper.BusMarketMealCouponsMapper">
+    <select id="getMealCouponsList" parameterType="Object" resultType="org.jeecg.modules.business.entity.BusMarketMealCoupons">
+        select c.*,ifnull(u.count,0) as count,ifnull(u.not_claimed,0) as not_claimed,ifnull(u.received,0) as received,ifnull(u.used,0) as used,ifnull(u.voided,0) as voided,cmc.name as type_name from bus_market_coupons_cash_info c
+        left join (select coupons_id,count(0) as count
+        ,SUM(CASE WHEN `status`  = 0 then 1 else 0 end) as not_claimed
+        ,SUM(CASE WHEN `status`  = 1 then 1 else 0 end) as received
+        ,SUM(CASE WHEN `status`  = 2 then 1 else 0 end) as used
+        ,SUM(CASE WHEN `status`  = 3 then 1 else 0 end) as voided
+        from bus_market_coupons_cash_used  group by coupons_id) u
+        on u.coupons_id=c.id
+        left join ces_meal_coupon cmc on cmc.id=c.type
+        where c.hotel_id = #{busMarketMealCoupons.hotelId}
+        <if test="busMarketMealCoupons.hotelId!= null">
+            <if test="busMarketMealCoupons.name !=null and busMarketMealCoupons.name != ''">
+                and c.name like CONCAT(CONCAT('%', #{busMarketMealCoupons.name}), '%')
+            </if>
+        </if>
+        ORDER BY c.id desc
+    </select>
+</mapper>

+ 15 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/IBusMarketMealCouponsService.java

@@ -0,0 +1,15 @@
+package org.jeecg.modules.business.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.modules.business.entity.BusMarketMealCoupons;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: bus_market_meal_coupons_info
+ * @Author: jeecg-boot
+ * @Date:   2023-03-14
+ * @Version: V1.0
+ */
+public interface IBusMarketMealCouponsService extends IService<BusMarketMealCoupons> {
+    public Page<BusMarketMealCoupons> pageList(Page<BusMarketMealCoupons> page, BusMarketMealCoupons model);
+}

+ 28 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/impl/BusMarketMealCouponsServiceImpl.java

@@ -0,0 +1,28 @@
+package org.jeecg.modules.business.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.modules.business.entity.BusMarketCoupons;
+import org.jeecg.modules.business.entity.BusMarketMealCoupons;
+import org.jeecg.modules.business.mapper.BusMarketCouponsMapper;
+import org.jeecg.modules.business.mapper.BusMarketMealCouponsMapper;
+import org.jeecg.modules.business.service.IBusMarketMealCouponsService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import javax.annotation.Resource;
+
+/**
+ * @Description: bus_market_meal_coupons_info
+ * @Author: jeecg-boot
+ * @Date:   2023-03-14
+ * @Version: V1.0
+ */
+@Service
+public class BusMarketMealCouponsServiceImpl extends ServiceImpl<BusMarketMealCouponsMapper, BusMarketMealCoupons> implements IBusMarketMealCouponsService {
+    @Resource
+    private BusMarketMealCouponsMapper busMarketMealCouponsMapper;
+    public Page<BusMarketMealCoupons> pageList(Page<BusMarketMealCoupons> page, BusMarketMealCoupons model) {
+        return page.setRecords(busMarketMealCouponsMapper.getMealCouponsList(page, model));
+    }
+}