Sfoglia il codice sorgente

Merge branch 'master' of http://49.4.53.36:3000/hotel/hotel-saas-backend

gqx 2 anni fa
parent
commit
d8b2544e49
54 ha cambiato i file con 2705 aggiunte e 21 eliminazioni
  1. 4 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusCommonController.java
  2. 342 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusDoorLockController.java
  3. 261 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusMarketObjectiveController.java
  4. 254 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusMealCouponController.java
  5. 206 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusOrderSoundController.java
  6. 0 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusRoomPayTypeController.java
  7. 2 2
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusSalesPersonController.java
  8. 225 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusServiceRepairCategoryController.java
  9. 226 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusServiceRepairController.java
  10. 11 2
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusWaiterController.java
  11. 8 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/dto/DoorLockDto.java
  12. 95 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusDoorLock.java
  13. 100 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusMarketObjective.java
  14. 92 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusMealCoupon.java
  15. 85 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusOrderSound.java
  16. 1 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusPayInterfaceConfig.java
  17. 94 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusServiceRepair.java
  18. 76 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusServiceRepairCategory.java
  19. 8 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusWaiter.java
  20. 17 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusDoorLockMapper.java
  21. 1 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusMarketMealCouponsUsedMapper.java
  22. 17 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusMarketObjectiveMapper.java
  23. 17 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusMealCouponMapper.java
  24. 17 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusOrderSoundMapper.java
  25. 17 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusServiceRepairCategoryMapper.java
  26. 17 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusServiceRepairMapper.java
  27. 5 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/BusDoorLockMapper.xml
  28. 2 2
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/BusMarketMealCouponsMapper.xml
  29. 5 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/BusMarketObjectiveMapper.xml
  30. 5 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/BusMealCouponMapper.xml
  31. 5 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/BusOrderSoundMapper.xml
  32. 5 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/BusServiceRepairCategoryMapper.xml
  33. 5 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/BusServiceRepairMapper.xml
  34. 19 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/IBusDoorLockService.java
  35. 14 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/IBusMarketObjectiveService.java
  36. 14 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/IBusMealCouponService.java
  37. 14 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/IBusOrderSoundService.java
  38. 14 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/IBusServiceRepairCategoryService.java
  39. 14 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/IBusServiceRepairService.java
  40. 51 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/impl/BusDoorLockServiceImpl.java
  41. 19 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/impl/BusMarketObjectiveServiceImpl.java
  42. 19 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/impl/BusMealCouponServiceImpl.java
  43. 19 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/impl/BusOrderSoundServiceImpl.java
  44. 19 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/impl/BusServiceRepairCategoryServiceImpl.java
  45. 19 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/impl/BusServiceRepairServiceImpl.java
  46. 9 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/DTO/CesMealCouponDto.java
  47. 8 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/DTO/CesMealCouponSearchDto.java
  48. 63 4
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesMealCouponController.java
  49. 12 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesRoomBuildingFloorController.java
  50. 25 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesRoomsController.java
  51. 10 8
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesAllDayPriceRuleServiceImpl.java
  52. 79 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesMealCouponServiceImpl.java
  53. 11 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesRoomBuildingFloorServiceImpl.java
  54. 28 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesRoomsServiceImpl.java

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

@@ -0,0 +1,4 @@
+package org.jeecg.modules.business.controller;
+
+public class BusCommonController {
+}

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

@@ -0,0 +1,342 @@
+package org.jeecg.modules.business.controller;
+
+import java.util.ArrayList;
+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.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import org.apache.commons.lang.StringUtils;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.TokenUtils;
+import org.jeecg.common.util.oConvertUtils;
+
+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.jeecg.modules.business.dto.DoorLockDto;
+import org.jeecg.modules.business.entity.BusDictItem;
+import org.jeecg.modules.business.entity.BusDoorLock;
+import org.jeecg.modules.business.entity.BusOrderSound;
+import org.jeecg.modules.business.service.IBusDoorLockService;
+import org.jeecg.modules.rooms.entity.CesRoomBuildingFloor;
+import org.jeecg.modules.rooms.entity.CesRooms;
+import org.jeecg.modules.rooms.service.CesRoomBuildingFloorServiceImpl;
+import org.jeecg.modules.rooms.service.CesRoomsServiceImpl;
+import org.jeecg.modules.system.entity.SysTenant;
+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: 门锁管理
+ * @Author: jeecg-boot
+ * @Date:   2023-03-20
+ * @Version: V1.0
+ */
+@Api(tags="门锁管理")
+@RestController
+@RequestMapping("/business/busDoorLock")
+@Slf4j
+public class BusDoorLockController extends JeecgController<BusDoorLock, IBusDoorLockService> {
+	@Autowired
+	private IBusDoorLockService busDoorLockService;
+
+	 @Resource
+	 private CesRoomBuildingFloorServiceImpl buildingFloorService;
+
+	 @Resource
+	 private CesRoomsServiceImpl roomsService;
+
+	/**
+	 * 分页列表查询
+	 *
+	 * @param busDoorLock
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "门锁管理-分页列表查询")
+	@ApiOperation(value="门锁管理-分页列表查询", notes="门锁管理-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<BusDoorLock>> queryPageList(BusDoorLock busDoorLock,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<BusDoorLock> queryWrapper = QueryGenerator.initQueryWrapper(busDoorLock, req.getParameterMap());
+		Page<BusDoorLock> page = new Page<BusDoorLock>(pageNo, pageSize);
+		IPage<BusDoorLock> pageList = busDoorLockService.page(page, queryWrapper);
+		pageList.getRecords().forEach(item->{
+			CesRoomBuildingFloor buildInfo = buildingFloorService.getById(item.getBuildId());
+			if (buildInfo != null) {
+				item.setBuildName(buildInfo.getName());
+			}
+			CesRoomBuildingFloor floorInfo = buildingFloorService.getById(item.getFloorId());
+			if (floorInfo != null) {
+				item.setFloorName(floorInfo.getName());
+			}
+			CesRooms roomInfo = roomsService.getById(item.getRoomId());
+			if (roomInfo != null) {
+				item.setRoomNumber(roomInfo.getPrefix()+roomInfo.getName());
+			}
+		});
+		return Result.OK(pageList);
+	}
+
+	/**
+	 *   添加
+	 *
+	 * @param busDoorLock
+	 * @return
+	 */
+	@AutoLog(value = "门锁管理-添加")
+	@ApiOperation(value="门锁管理-添加", notes="门锁管理-添加")
+	//@RequiresPermissions("business:bus_door_lock_info:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody BusDoorLock busDoorLock) {
+		busDoorLock.setStatus(1);
+		busDoorLock.setDelFlag(CommonConstant.DEL_FLAG_0);
+		if(busDoorLock.getTenantId() == null || busDoorLock.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busDoorLock.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		//房间号不能重复
+		LambdaQueryWrapper<BusDoorLock> queryWrapper = new LambdaQueryWrapper<BusDoorLock>();
+		queryWrapper.eq(BusDoorLock::getHotelId,busDoorLock.getHotelId());
+		queryWrapper.eq(BusDoorLock::getBuildId,busDoorLock.getBuildId());
+		queryWrapper.eq(BusDoorLock::getFloorId,busDoorLock.getFloorId());
+		queryWrapper.eq(BusDoorLock::getRoomId,busDoorLock.getRoomId());
+		Long num = Long.valueOf(0);
+		num = busDoorLockService.count(queryWrapper);
+		if (num > 0){
+			return Result.error("此房号已存在!");
+		}
+		busDoorLockService.save(busDoorLock);
+		return Result.OK("添加成功!");
+	}
+
+	 /**
+	  *   批量添加
+	  *
+	  * @param doorLockDto
+	  * @return
+	  */
+	 int associationIndex;
+	 @AutoLog(value = "门锁管理-批量添加")
+	 @ApiOperation(value="门锁管理-批量添加", notes="门锁管理-批量添加")
+	 //@RequiresPermissions("business:bus_door_lock_info:add")
+	 @PostMapping(value = "/batchAdd")
+	 public Result<String> batchAdd(@RequestBody DoorLockDto doorLockDto) {
+		 LoginUser user = TokenUtils.getAuthUser();
+		 if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+		 } else {
+			 throw new JeecgBootException("当前登录人租户信息错误");
+		 }
+		 if(!oConvertUtils.isNotEmpty(doorLockDto.radioType)) {
+			 throw new JeecgBootException("规则选择错误");
+		 }
+
+//		 //获取到该酒店下已有门锁信息,删除
+//		 busDoorLockService.deleteByHotelId(doorLockDto.hotelId);
+
+		 //获取酒店所有房间信息
+		 List<CesRooms> rooms = roomsService.getByHotelId(doorLockDto.hotelId);
+
+		 List<BusDoorLock> doorLocks = new ArrayList<>();
+		 if (doorLockDto.radioType.equals("4")){
+			 associationIndex = Integer.parseInt(doorLockDto.front);
+		 }
+
+		 //获取到已添加的门锁信息
+		 List<BusDoorLock> oldList= busDoorLockService.getByHotelId(doorLockDto.hotelId);
+		 List<String> oldListIds = new ArrayList<>();
+		 oldList.forEach(t->{
+			 oldListIds.add(t.getRoomId());
+		 });
+
+		 rooms.forEach((item) ->{
+		 	if (!oldListIds.contains(item.getId())){
+				BusDoorLock doorLock = new BusDoorLock();
+				doorLock.setStatus(1);
+				doorLock.setDelFlag(CommonConstant.DEL_FLAG_0);
+				doorLock.setTenantId(user.getRelTenantIds());
+				doorLock.setHotelId(doorLockDto.hotelId);
+				doorLock.setBuildId(item.getBuildId());
+				doorLock.setFloorId(item.getFloorId());
+				doorLock.setRoomId(item.getId());
+				String association = "";
+				String roomNumber = item.getPrefix()+item.getName();
+
+				switch (doorLockDto.radioType) {
+					case "1":
+						association = roomNumber;
+						break;
+					case "2":
+						association = doorLockDto.front + roomNumber + doorLockDto.after;
+						break;
+					case "3":
+						association = doorLockDto.front + roomNumber.substring(1) + doorLockDto.after;
+						break;
+					case "4":
+						association = associationIndex + "";
+						associationIndex = associationIndex + 1;
+						break;
+				}
+				doorLock.setAssociationNumber(association);
+				doorLocks.add(doorLock);
+			}
+		 });
+		 busDoorLockService.saveBatch(doorLocks);
+		 return Result.OK("添加成功!");
+	 }
+
+
+
+	/**
+	 *  编辑
+	 *
+	 * @param busDoorLock
+	 * @return
+	 */
+	@AutoLog(value = "门锁管理-编辑")
+	@ApiOperation(value="门锁管理-编辑", notes="门锁管理-编辑")
+	//@RequiresPermissions("business:bus_door_lock_info:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody BusDoorLock busDoorLock) {
+		if(busDoorLock.getTenantId() == null || busDoorLock.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busDoorLock.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		//房间号不能重复
+		LambdaQueryWrapper<BusDoorLock> queryWrapper = new LambdaQueryWrapper<BusDoorLock>();
+		queryWrapper.eq(BusDoorLock::getHotelId,busDoorLock.getHotelId());
+		queryWrapper.eq(BusDoorLock::getBuildId,busDoorLock.getBuildId());
+		queryWrapper.eq(BusDoorLock::getFloorId,busDoorLock.getFloorId());
+		queryWrapper.eq(BusDoorLock::getRoomId,busDoorLock.getRoomId());
+
+		if (StringUtils.isNotBlank(busDoorLock.getId())) {
+			// 编辑页面校验
+			queryWrapper.ne(BusDoorLock::getId,busDoorLock.getId());
+		}
+		Long num = Long.valueOf(0);
+		num = busDoorLockService.count(queryWrapper);
+		if (num > 0){
+			return Result.error("此房号已存在!");
+		}
+		BusDoorLock editModel = busDoorLockService.getById(busDoorLock.getId());
+		editModel.setBuildId(busDoorLock.getBuildId());
+		editModel.setFloorId(busDoorLock.getFloorId());
+		editModel.setRoomId(busDoorLock.getRoomId());
+		editModel.setAssociationNumber(busDoorLock.getAssociationNumber());
+		busDoorLockService.updateById(editModel);
+		return Result.OK("编辑成功!");
+	}
+
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "门锁管理-通过id删除")
+	@ApiOperation(value="门锁管理-通过id删除", notes="门锁管理-通过id删除")
+	//@RequiresPermissions("business:bus_door_lock_info:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		busDoorLockService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "门锁管理-批量删除")
+	@ApiOperation(value="门锁管理-批量删除", notes="门锁管理-批量删除")
+	//@RequiresPermissions("business:bus_door_lock_info:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.busDoorLockService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "门锁管理-通过id查询")
+	@ApiOperation(value="门锁管理-通过id查询", notes="门锁管理-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<BusDoorLock> queryById(@RequestParam(name="id",required=true) String id) {
+		BusDoorLock busDoorLock = busDoorLockService.getById(id);
+		if(busDoorLock==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(busDoorLock);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param busDoorLock
+    */
+    //@RequiresPermissions("business:bus_door_lock_info:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, BusDoorLock busDoorLock) {
+        return super.exportXls(request, busDoorLock, BusDoorLock.class, "门锁管理");
+    }
+
+    /**
+      * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    //@RequiresPermissions("business:bus_door_lock_info:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, BusDoorLock.class);
+    }
+
+}

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

@@ -0,0 +1,261 @@
+package org.jeecg.modules.business.controller;
+
+import java.text.SimpleDateFormat;
+import java.util.*;
+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 io.netty.util.internal.StringUtil;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.DateUtils;
+import org.jeecg.common.util.TokenUtils;
+import org.jeecg.common.util.oConvertUtils;
+
+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.jeecg.modules.business.entity.BusMarketObjective;
+import org.jeecg.modules.business.entity.BusServiceRepairCategory;
+import org.jeecg.modules.business.service.IBusMarketObjectiveService;
+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: 销售目标
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Api(tags="销售目标")
+@RestController
+@RequestMapping("/business/busMarketObjective")
+@Slf4j
+public class BusMarketObjectiveController extends JeecgController<BusMarketObjective, IBusMarketObjectiveService> {
+	@Autowired
+	private IBusMarketObjectiveService busMarketObjectiveService;
+
+	/**
+	 * 分页列表查询
+	 *
+	 * @param busMarketObjective
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "销售目标-分页列表查询")
+	@ApiOperation(value="销售目标-分页列表查询", notes="销售目标-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<BusMarketObjective>> queryPageList(BusMarketObjective busMarketObjective,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="12") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<BusMarketObjective> queryWrapper = QueryGenerator.initQueryWrapper(busMarketObjective, req.getParameterMap());
+		Page<BusMarketObjective> page = new Page<BusMarketObjective>(pageNo, pageSize);
+		IPage<BusMarketObjective> pageList = busMarketObjectiveService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+
+	/**
+	 *   添加
+	 *
+	 * @param busMarketObjective
+	 * @return
+	 */
+	@AutoLog(value = "销售目标-添加")
+	@ApiOperation(value="销售目标-添加", notes="销售目标-添加")
+	//@RequiresPermissions("business:bus_market_objective_info:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody BusMarketObjective busMarketObjective) {
+		busMarketObjectiveService.save(busMarketObjective);
+		return Result.OK("添加成功!");
+	}
+
+	/**
+	 *  编辑
+	 *
+	 * @param busMarketObjective
+	 * @return
+	 */
+	@AutoLog(value = "销售目标-编辑")
+	@ApiOperation(value="销售目标-编辑", notes="销售目标-编辑")
+	//@RequiresPermissions("business:bus_market_objective_info:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody BusMarketObjective busMarketObjective) {
+		busMarketObjectiveService.updateById(busMarketObjective);
+		return Result.OK("编辑成功!");
+	}
+
+	 /**
+	  *   批量添加或修改
+	  *
+	  * @param busMarketObjectives
+	  * @return
+	  */
+	 @AutoLog(value = "销售目标-批量添加或修改")
+	 @ApiOperation(value="销售目标-批量添加或修改", notes="销售目标-批量添加或修改")
+	 //@RequiresPermissions("business:bus_market_objective_info:add")
+	 @PostMapping(value = "/batchAddOrUpdate")
+	 public Result<String> batchAddOrUpdate(@RequestBody List<BusMarketObjective> busMarketObjectives) {
+		 BusMarketObjective firstModel = busMarketObjectives.get(0);
+		 LoginUser user = TokenUtils.getAuthUser();
+		 if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+		 } else {
+			 throw new JeecgBootException("当前登录人租户信息错误");
+		 }
+		 List<BusMarketObjective> newData = new ArrayList<>();
+	 	if (firstModel.getId() != null && !firstModel.getId().equals("")){
+			//修改
+			busMarketObjectiveService.updateBatchById(busMarketObjectives);
+		}else{
+			//添加
+			busMarketObjectives.forEach(item->{
+				item.setTenantId(user.getRelTenantIds());
+				item.setDelFlag(CommonConstant.DEL_FLAG_0);
+				newData.add(item);
+			});
+			busMarketObjectiveService.saveBatch(newData);
+		}
+		 return Result.OK("添加成功!");
+	 }
+
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "销售目标-通过id删除")
+	@ApiOperation(value="销售目标-通过id删除", notes="销售目标-通过id删除")
+	//@RequiresPermissions("business:bus_market_objective_info:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		busMarketObjectiveService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "销售目标-批量删除")
+	@ApiOperation(value="销售目标-批量删除", notes="销售目标-批量删除")
+	//@RequiresPermissions("business:bus_market_objective_info:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.busMarketObjectiveService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "销售目标-通过id查询")
+	@ApiOperation(value="销售目标-通过id查询", notes="销售目标-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<BusMarketObjective> queryById(@RequestParam(name="id",required=true) String id) {
+		BusMarketObjective busMarketObjective = busMarketObjectiveService.getById(id);
+		if(busMarketObjective==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(busMarketObjective);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param busMarketObjective
+    */
+    //@RequiresPermissions("business:bus_market_objective_info:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, BusMarketObjective busMarketObjective) {
+        return super.exportXls(request, busMarketObjective, BusMarketObjective.class, "销售目标");
+    }
+
+    /**
+      * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    //@RequiresPermissions("business:bus_market_objective_info:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, BusMarketObjective.class);
+    }
+
+	 /**
+	  * 列表查询
+	  *
+	  * @param busMarketObjective
+	  * @param req
+	  * @return
+	  */
+	 //@AutoLog(value = "销售目标-列表查询")
+	 @ApiOperation(value="销售目标-列表查询", notes="销售目标-列表查询")
+	 @GetMapping(value = "/queryList")
+	 public Result<List<BusMarketObjective>> queryList(BusMarketObjective busMarketObjective, HttpServletRequest req) {
+		 QueryWrapper<BusMarketObjective> queryWrapper = QueryGenerator.initQueryWrapper(busMarketObjective, req.getParameterMap());
+		 LoginUser user = TokenUtils.getAuthUser();
+		 if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+			 queryWrapper.eq("tenant_id",user.getRelTenantIds());
+		 }
+		 queryWrapper.eq("del_flag",0);
+		 String _yearStr = req.getParameter("year");
+		 int _year = 0;
+		 if (StringUtil.isNullOrEmpty(_yearStr)){
+			 _year = DateUtils.getYear();
+		 }else{
+			 _year = Integer.parseInt(_yearStr);
+		 }
+
+		 List<BusMarketObjective> list = busMarketObjectiveService.list(queryWrapper);
+		 if (list.size() <= 0){
+			 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
+			 Calendar cal = Calendar.getInstance();
+			 cal.set(Calendar.YEAR,_year);
+			 cal.set(Calendar.MONTH, 0);
+			 for(int i=1; i<=12; i++){
+				 BusMarketObjective model = new BusMarketObjective();
+				 model.setYear(_year);
+				 String _month = sdf.format(cal.getTime());
+				 cal.add(Calendar.MONTH, 1);
+				 model.setMonth(_month.split("-")[1]);
+				 list.add(model);
+			 }
+		 }
+		 return Result.OK(list);
+	 }
+
+}

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

@@ -0,0 +1,254 @@
+package org.jeecg.modules.business.controller;
+
+import java.util.ArrayList;
+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.apache.commons.lang3.StringUtils;
+import org.jeecg.common.Enum.ResultCode;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.TokenUtils;
+import org.jeecg.common.util.oConvertUtils;
+
+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.jeecg.modules.business.entity.BusMealCoupon;
+import org.jeecg.modules.business.entity.BusOtherCheckout;
+import org.jeecg.modules.business.entity.BusRoomPayType;
+import org.jeecg.modules.business.entity.BusWaiter;
+import org.jeecg.modules.business.service.IBusMealCouponService;
+import org.jeecg.modules.rooms.Vo.SelectVo;
+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: 餐券
+ * @Author: jeecg-boot
+ * @Date:   2023-03-21
+ * @Version: V1.0
+ */
+@Api(tags="餐券")
+@RestController
+@RequestMapping("/business/busMealCoupon")
+@Slf4j
+public class BusMealCouponController extends JeecgController<BusMealCoupon, IBusMealCouponService> {
+	@Autowired
+	private IBusMealCouponService busMealCouponService;
+
+	/**
+	 * 分页列表查询
+	 *
+	 * @param busMealCoupon
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "餐券-分页列表查询")
+	@ApiOperation(value="餐券-分页列表查询", notes="餐券-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<BusMealCoupon>> queryPageList(BusMealCoupon busMealCoupon,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<BusMealCoupon> queryWrapper = QueryGenerator.initQueryWrapper(busMealCoupon, req.getParameterMap());
+		Page<BusMealCoupon> page = new Page<BusMealCoupon>(pageNo, pageSize);
+		IPage<BusMealCoupon> pageList = busMealCouponService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+
+	/**
+	 *   添加
+	 *
+	 * @param busMealCoupon
+	 * @return
+	 */
+	@AutoLog(value = "餐券-添加")
+	@ApiOperation(value="餐券-添加", notes="餐券-添加")
+	//@RequiresPermissions("business:bus_meal_coupon_info:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody BusMealCoupon busMealCoupon) {
+		busMealCoupon.setDelFlag(CommonConstant.DEL_FLAG_0);
+		if(busMealCoupon.getTenantId() == null || busMealCoupon.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busMealCoupon.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		busMealCouponService.save(busMealCoupon);
+		return Result.OK("添加成功!");
+	}
+
+	/**
+	 *  编辑
+	 *
+	 * @param busMealCoupon
+	 * @return
+	 */
+	@AutoLog(value = "餐券-编辑")
+	@ApiOperation(value="餐券-编辑", notes="餐券-编辑")
+	//@RequiresPermissions("business:bus_meal_coupon_info:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody BusMealCoupon busMealCoupon) {
+		if(busMealCoupon.getTenantId() == null || busMealCoupon.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busMealCoupon.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		BusMealCoupon editModel = busMealCouponService.getById(busMealCoupon.getId());
+		editModel.setName(busMealCoupon.getName());
+		editModel.setStatus(busMealCoupon.getStatus());
+		editModel.setAutomaticGrant(busMealCoupon.getAutomaticGrant());
+		editModel.setStartTime(busMealCoupon.getStartTime());
+		editModel.setEndTime(busMealCoupon.getEndTime());
+		busMealCouponService.updateById(editModel);
+//		busMealCouponService.updateById(busMealCoupon);
+		return Result.OK("编辑成功!");
+	}
+
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "餐券-通过id删除")
+	@ApiOperation(value="餐券-通过id删除", notes="餐券-通过id删除")
+	//@RequiresPermissions("business:bus_meal_coupon_info:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		busMealCouponService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "餐券-批量删除")
+	@ApiOperation(value="餐券-批量删除", notes="餐券-批量删除")
+	//@RequiresPermissions("business:bus_meal_coupon_info:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.busMealCouponService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "餐券-通过id查询")
+	@ApiOperation(value="餐券-通过id查询", notes="餐券-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<BusMealCoupon> queryById(@RequestParam(name="id",required=true) String id) {
+		BusMealCoupon busMealCoupon = busMealCouponService.getById(id);
+		if(busMealCoupon==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(busMealCoupon);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param busMealCoupon
+    */
+    //@RequiresPermissions("business:bus_meal_coupon_info:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, BusMealCoupon busMealCoupon) {
+        return super.exportXls(request, busMealCoupon, BusMealCoupon.class, "餐券");
+    }
+
+    /**
+      * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    //@RequiresPermissions("business:bus_meal_coupon_info:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, BusMealCoupon.class);
+    }
+
+	 /**
+	  * 列表查询
+	  *
+	  * @param busMealCoupon
+	  * @param req
+	  * @return
+	  */
+	 //@AutoLog(value = "餐券-列表查询")
+	 @ApiOperation(value="餐券-列表查询", notes="餐券-列表查询")
+	 @GetMapping(value = "/queryList")
+	 public Result<List<BusMealCoupon>> queryList(BusMealCoupon busMealCoupon, HttpServletRequest req) {
+		 QueryWrapper<BusMealCoupon> queryWrapper = QueryGenerator.initQueryWrapper(busMealCoupon, req.getParameterMap());
+		 LoginUser user = TokenUtils.getAuthUser();
+		 if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+			 queryWrapper.eq("tenant_id",user.getRelTenantIds());
+		 }
+		 queryWrapper.eq("del_flag",0);
+		 List<BusMealCoupon> list = busMealCouponService.list(queryWrapper);
+		 return Result.OK(list);
+	 }
+
+	 /**
+	  * 通过hotelId查询
+	  *
+	  * @param hotelId
+	  * @return
+	  */
+	 //@AutoLog(value = "餐券-通过hotelId查询")
+	 @ApiOperation(value="餐券-通过hotelId查询", notes="餐券-通过hotelId查询")
+	 @GetMapping(value = "/queryByHotelId")
+	 public Result<List<BusMealCoupon>> queryByHotelId(@RequestParam(name="hotelId",required=true) String hotelId) {
+		 QueryWrapper<BusMealCoupon> queryWrapper = new QueryWrapper<BusMealCoupon>();
+		 queryWrapper.eq("hotel_id", hotelId);
+		 queryWrapper.eq("del_flag",0);
+		 List<BusMealCoupon> resultModel = busMealCouponService.list(queryWrapper);
+		 if(resultModel==null) {
+			 return Result.error("");
+		 }
+		 return Result.OK(resultModel);
+	 }
+}

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

@@ -0,0 +1,206 @@
+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.constant.CommonConstant;
+import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.TokenUtils;
+import org.jeecg.common.util.oConvertUtils;
+
+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.jeecg.modules.business.entity.BusAdvert;
+import org.jeecg.modules.business.entity.BusOrderSound;
+import org.jeecg.modules.business.service.IBusOrderSoundService;
+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: 订单铃声
+ * @Author: jeecg-boot
+ * @Date:   2023-03-17
+ * @Version: V1.0
+ */
+@Api(tags="订单铃声")
+@RestController
+@RequestMapping("/business/busOrderSound")
+@Slf4j
+public class BusOrderSoundController extends JeecgController<BusOrderSound, IBusOrderSoundService> {
+	@Autowired
+	private IBusOrderSoundService busOrderSoundService;
+
+	/**
+	 * 分页列表查询
+	 *
+	 * @param busOrderSound
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "订单铃声-分页列表查询")
+	@ApiOperation(value="订单铃声-分页列表查询", notes="订单铃声-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<BusOrderSound>> queryPageList(BusOrderSound busOrderSound,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<BusOrderSound> queryWrapper = QueryGenerator.initQueryWrapper(busOrderSound, req.getParameterMap());
+		Page<BusOrderSound> page = new Page<BusOrderSound>(pageNo, pageSize);
+		IPage<BusOrderSound> pageList = busOrderSoundService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+
+	/**
+	 *   添加
+	 *
+	 * @param busOrderSound
+	 * @return
+	 */
+	@AutoLog(value = "订单铃声-添加")
+	@ApiOperation(value="订单铃声-添加", notes="订单铃声-添加")
+	//@RequiresPermissions("business:bus_order_sound_info:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody BusOrderSound busOrderSound) {
+		busOrderSound.setStatus(1);
+		busOrderSound.setDelFlag(CommonConstant.DEL_FLAG_0);
+		if(busOrderSound.getTenantId() == null || busOrderSound.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busOrderSound.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		busOrderSoundService.save(busOrderSound);
+		return Result.OK("添加成功!");
+	}
+
+	/**
+	 *  编辑
+	 *
+	 * @param busOrderSound
+	 * @return
+	 */
+	@AutoLog(value = "订单铃声-编辑")
+	@ApiOperation(value="订单铃声-编辑", notes="订单铃声-编辑")
+	//@RequiresPermissions("business:bus_order_sound_info:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody BusOrderSound busOrderSound) {
+		if(busOrderSound.getTenantId() == null || busOrderSound.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busOrderSound.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		BusOrderSound editModel = busOrderSoundService.getById(busOrderSound.getId());
+		editModel.setName(busOrderSound.getName());
+		editModel.setType(busOrderSound.getType());
+		editModel.setPath(busOrderSound.getPath());
+//		editModel.setStatus(busOrderSound.getStatus());
+		busOrderSoundService.updateById(editModel);
+		return Result.OK("编辑成功!");
+	}
+
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "订单铃声-通过id删除")
+	@ApiOperation(value="订单铃声-通过id删除", notes="订单铃声-通过id删除")
+	//@RequiresPermissions("business:bus_order_sound_info:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		busOrderSoundService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "订单铃声-批量删除")
+	@ApiOperation(value="订单铃声-批量删除", notes="订单铃声-批量删除")
+	//@RequiresPermissions("business:bus_order_sound_info:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.busOrderSoundService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "订单铃声-通过id查询")
+	@ApiOperation(value="订单铃声-通过id查询", notes="订单铃声-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<BusOrderSound> queryById(@RequestParam(name="id",required=true) String id) {
+		BusOrderSound busOrderSound = busOrderSoundService.getById(id);
+		if(busOrderSound==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(busOrderSound);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param busOrderSound
+    */
+    //@RequiresPermissions("business:bus_order_sound_info:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, BusOrderSound busOrderSound) {
+        return super.exportXls(request, busOrderSound, BusOrderSound.class, "订单铃声");
+    }
+
+    /**
+      * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    //@RequiresPermissions("business:bus_order_sound_info:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, BusOrderSound.class);
+    }
+
+}

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

@@ -105,7 +105,6 @@ public class BusRoomPayTypeController extends JeecgController<BusRoomPayType, IB
 		 if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
 			 queryWrapper.eq("tenant_id",user.getRelTenantIds());
 		 }
-		 queryWrapper.eq("status",1);
 		 queryWrapper.eq("del_flag",0);
 		 List<BusRoomPayType> list = busRoomPayTypeService.list(queryWrapper);
 		 return Result.OK(list);

+ 2 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusSalesPersonController.java

@@ -91,8 +91,8 @@ public class BusSalesPersonController extends JeecgController<BusSalesPerson, IB
 		}
 		String keyWord = req.getParameter("keyWord");
 		if(oConvertUtils.isNotEmpty(keyWord)){
-			queryWrapper.or().like("name",keyWord);
-			queryWrapper.or().like("work_no",keyWord);
+			queryWrapper.and(i -> i.like("name",keyWord)
+					.or().like("work_no",keyWord));
 		}
 		String hotelIds = req.getParameter("hotelId");
 //		String hotelId = req.getParameter("hotelId");

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

@@ -0,0 +1,225 @@
+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.constant.CommonConstant;
+import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.TokenUtils;
+import org.jeecg.common.util.oConvertUtils;
+
+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.jeecg.modules.business.entity.BusRoomPayType;
+import org.jeecg.modules.business.entity.BusServiceRepairCategory;
+import org.jeecg.modules.business.entity.BusWaiter;
+import org.jeecg.modules.business.service.IBusServiceRepairCategoryService;
+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: 服务维修-物品分类
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Api(tags="服务维修-物品分类")
+@RestController
+@RequestMapping("/business/busServiceRepairCategory")
+@Slf4j
+public class BusServiceRepairCategoryController extends JeecgController<BusServiceRepairCategory, IBusServiceRepairCategoryService> {
+	@Autowired
+	private IBusServiceRepairCategoryService busServiceRepairCategoryService;
+
+	/**
+	 * 分页列表查询
+	 *
+	 * @param busServiceRepairCategory
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "服务维修-物品分类-分页列表查询")
+	@ApiOperation(value="服务维修-物品分类-分页列表查询", notes="服务维修-物品分类-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<BusServiceRepairCategory>> queryPageList(BusServiceRepairCategory busServiceRepairCategory,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<BusServiceRepairCategory> queryWrapper = QueryGenerator.initQueryWrapper(busServiceRepairCategory, req.getParameterMap());
+		Page<BusServiceRepairCategory> page = new Page<BusServiceRepairCategory>(pageNo, pageSize);
+		IPage<BusServiceRepairCategory> pageList = busServiceRepairCategoryService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+
+	/**
+	 *   添加
+	 *
+	 * @param busServiceRepairCategory
+	 * @return
+	 */
+	@AutoLog(value = "服务维修-物品分类-添加")
+	@ApiOperation(value="服务维修-物品分类-添加", notes="服务维修-物品分类-添加")
+	//@RequiresPermissions("business:bus_service_repair_category_info:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody BusServiceRepairCategory busServiceRepairCategory) {
+		busServiceRepairCategory.setStatus(1);
+		busServiceRepairCategory.setDelFlag(CommonConstant.DEL_FLAG_0);
+		if(busServiceRepairCategory.getTenantId() == null || busServiceRepairCategory.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busServiceRepairCategory.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		busServiceRepairCategoryService.save(busServiceRepairCategory);
+		return Result.OK("添加成功!");
+	}
+
+	/**
+	 *  编辑
+	 *
+	 * @param busServiceRepairCategory
+	 * @return
+	 */
+	@AutoLog(value = "服务维修-物品分类-编辑")
+	@ApiOperation(value="服务维修-物品分类-编辑", notes="服务维修-物品分类-编辑")
+	//@RequiresPermissions("business:bus_service_repair_category_info:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody BusServiceRepairCategory busServiceRepairCategory) {
+		if(busServiceRepairCategory.getTenantId() == null || busServiceRepairCategory.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busServiceRepairCategory.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		BusServiceRepairCategory editModel = busServiceRepairCategoryService.getById(busServiceRepairCategory.getId());
+		editModel.setName(busServiceRepairCategory.getName());
+		busServiceRepairCategoryService.updateById(editModel);
+//		busServiceRepairCategoryService.updateById(busServiceRepairCategory);
+		return Result.OK("编辑成功!");
+	}
+
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "服务维修-物品分类-通过id删除")
+	@ApiOperation(value="服务维修-物品分类-通过id删除", notes="服务维修-物品分类-通过id删除")
+	//@RequiresPermissions("business:bus_service_repair_category_info:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		busServiceRepairCategoryService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "服务维修-物品分类-批量删除")
+	@ApiOperation(value="服务维修-物品分类-批量删除", notes="服务维修-物品分类-批量删除")
+	//@RequiresPermissions("business:bus_service_repair_category_info:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.busServiceRepairCategoryService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "服务维修-物品分类-通过id查询")
+	@ApiOperation(value="服务维修-物品分类-通过id查询", notes="服务维修-物品分类-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<BusServiceRepairCategory> queryById(@RequestParam(name="id",required=true) String id) {
+		BusServiceRepairCategory busServiceRepairCategory = busServiceRepairCategoryService.getById(id);
+		if(busServiceRepairCategory==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(busServiceRepairCategory);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param busServiceRepairCategory
+    */
+    //@RequiresPermissions("business:bus_service_repair_category_info:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, BusServiceRepairCategory busServiceRepairCategory) {
+        return super.exportXls(request, busServiceRepairCategory, BusServiceRepairCategory.class, "服务维修-物品分类");
+    }
+
+    /**
+      * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    //@RequiresPermissions("business:bus_service_repair_category_info:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, BusServiceRepairCategory.class);
+    }
+
+	 /**
+	  * 列表查询
+	  *
+	  * @param busServiceRepairCategory
+	  * @param req
+	  * @return
+	  */
+	 //@AutoLog(value = "服务维修-物品分类-列表查询")
+	 @ApiOperation(value="服务维修-物品分类-列表查询", notes="服务维修-物品分类-列表查询")
+	 @GetMapping(value = "/queryList")
+	 public Result<List<BusServiceRepairCategory>> queryList(BusServiceRepairCategory busServiceRepairCategory, HttpServletRequest req) {
+		 QueryWrapper<BusServiceRepairCategory> queryWrapper = QueryGenerator.initQueryWrapper(busServiceRepairCategory, req.getParameterMap());
+		 LoginUser user = TokenUtils.getAuthUser();
+		 if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+			 queryWrapper.eq("tenant_id",user.getRelTenantIds());
+		 }
+		 queryWrapper.eq("del_flag",0);
+		 List<BusServiceRepairCategory> list = busServiceRepairCategoryService.list(queryWrapper);
+		 return Result.OK(list);
+	 }
+}

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

@@ -0,0 +1,226 @@
+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.constant.CommonConstant;
+import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.TokenUtils;
+import org.jeecg.common.util.oConvertUtils;
+
+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.jeecg.modules.business.entity.BusHotel;
+import org.jeecg.modules.business.entity.BusServiceRepair;
+import org.jeecg.modules.business.entity.BusServiceRepairCategory;
+import org.jeecg.modules.business.entity.BusWaiter;
+import org.jeecg.modules.business.service.IBusHotelService;
+import org.jeecg.modules.business.service.IBusServiceRepairCategoryService;
+import org.jeecg.modules.business.service.IBusServiceRepairService;
+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: 服务维修
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Api(tags="服务维修")
+@RestController
+@RequestMapping("/business/busServiceRepair")
+@Slf4j
+public class BusServiceRepairController extends JeecgController<BusServiceRepair, IBusServiceRepairService> {
+	@Autowired
+	private IBusServiceRepairService busServiceRepairService;
+
+	 @Autowired
+	 private IBusHotelService busHotelService;
+
+	 @Autowired
+	 private IBusServiceRepairCategoryService busServiceRepairCategoryService;
+	/**
+	 * 分页列表查询
+	 *
+	 * @param busServiceRepair
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "服务维修-分页列表查询")
+	@ApiOperation(value="服务维修-分页列表查询", notes="服务维修-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<BusServiceRepair>> queryPageList(BusServiceRepair busServiceRepair,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<BusServiceRepair> queryWrapper = QueryGenerator.initQueryWrapper(busServiceRepair, req.getParameterMap());
+		Page<BusServiceRepair> page = new Page<BusServiceRepair>(pageNo, pageSize);
+		IPage<BusServiceRepair> pageList = busServiceRepairService.page(page, queryWrapper);
+		pageList.getRecords().forEach(item->{
+			BusHotel busHotel = busHotelService.getById(item.getHotelId());
+			if (busHotel != null) {
+				item.setHotelName(busHotel.getName());
+			}
+
+			BusServiceRepairCategory category = busServiceRepairCategoryService.getById(item.getCategoryId());
+			if (category != null) {
+				item.setCategoryName(category.getName());
+			}
+		});
+		return Result.OK(pageList);
+	}
+
+	/**
+	 *   添加
+	 *
+	 * @param busServiceRepair
+	 * @return
+	 */
+	@AutoLog(value = "服务维修-添加")
+	@ApiOperation(value="服务维修-添加", notes="服务维修-添加")
+	//@RequiresPermissions("business:bus_service_repair_info:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody BusServiceRepair busServiceRepair) {
+		busServiceRepair.setDelFlag(CommonConstant.DEL_FLAG_0);
+		if(busServiceRepair.getTenantId() == null || busServiceRepair.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busServiceRepair.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		busServiceRepairService.save(busServiceRepair);
+		return Result.OK("添加成功!");
+	}
+
+	/**
+	 *  编辑
+	 *
+	 * @param busServiceRepair
+	 * @return
+	 */
+	@AutoLog(value = "服务维修-编辑")
+	@ApiOperation(value="服务维修-编辑", notes="服务维修-编辑")
+	//@RequiresPermissions("business:bus_service_repair_info:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody BusServiceRepair busServiceRepair) {
+		if(busServiceRepair.getTenantId() == null || busServiceRepair.getTenantId().equals("")){
+			LoginUser user = TokenUtils.getAuthUser();
+			if(user.getRelTenantIds() != null && !user.getRelTenantIds().equals("")){
+				busServiceRepair.setTenantId(user.getRelTenantIds());
+			} else {
+				throw new JeecgBootException("当前登录人租户信息错误");
+			}
+		}
+		BusServiceRepair editModel = busServiceRepairService.getById(busServiceRepair.getId());
+		editModel.setName(busServiceRepair.getName());
+		editModel.setType(busServiceRepair.getType());
+		editModel.setServiceType(busServiceRepair.getServiceType());
+		editModel.setCategoryId(busServiceRepair.getCategoryId());
+		busServiceRepairService.updateById(editModel);
+//		busServiceRepairService.updateById(busServiceRepair);
+		return Result.OK("编辑成功!");
+	}
+
+	/**
+	 *   通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "服务维修-通过id删除")
+	@ApiOperation(value="服务维修-通过id删除", notes="服务维修-通过id删除")
+	//@RequiresPermissions("business:bus_service_repair_info:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		busServiceRepairService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+
+	/**
+	 *  批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "服务维修-批量删除")
+	@ApiOperation(value="服务维修-批量删除", notes="服务维修-批量删除")
+	//@RequiresPermissions("business:bus_service_repair_info:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.busServiceRepairService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "服务维修-通过id查询")
+	@ApiOperation(value="服务维修-通过id查询", notes="服务维修-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<BusServiceRepair> queryById(@RequestParam(name="id",required=true) String id) {
+		BusServiceRepair busServiceRepair = busServiceRepairService.getById(id);
+		if(busServiceRepair==null) {
+			return Result.error("未找到对应数据");
+		}
+		return Result.OK(busServiceRepair);
+	}
+
+    /**
+    * 导出excel
+    *
+    * @param request
+    * @param busServiceRepair
+    */
+    //@RequiresPermissions("business:bus_service_repair_info:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, BusServiceRepair busServiceRepair) {
+        return super.exportXls(request, busServiceRepair, BusServiceRepair.class, "服务维修");
+    }
+
+    /**
+      * 通过excel导入数据
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    //@RequiresPermissions("business:bus_service_repair_info:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, BusServiceRepair.class);
+    }
+
+}

+ 11 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/controller/BusWaiterController.java

@@ -80,8 +80,15 @@ public class BusWaiterController extends JeecgController<BusWaiter, IBusWaiterSe
 		}
 		String keyWord = req.getParameter("keyWord");
 		if(oConvertUtils.isNotEmpty(keyWord)){
-			queryWrapper.or().like("name",keyWord);
-			queryWrapper.or().like("work_no",keyWord);
+//			queryWrapper.or().like("name",keyWord);
+//			queryWrapper.or().like("work_no",keyWord);
+//			queryWrapper.or().like("id_card",keyWord);
+//			queryWrapper.or().like("phone",keyWord);
+
+			queryWrapper.and(i -> i.like("name",keyWord)
+					.or().like("work_no",keyWord)
+					.or().like("id_card",keyWord)
+					.or().like("phone",keyWord));
 		}
 		String hotelIds = req.getParameter("hotelId");
 //		String hotelId = req.getParameter("hotelId");
@@ -147,6 +154,8 @@ public class BusWaiterController extends JeecgController<BusWaiter, IBusWaiterSe
 		BusWaiter editModel = busWaiterService.getById(busWaiter.getId());
 		editModel.setWorkNo(busWaiter.getWorkNo());
 		editModel.setName(busWaiter.getName());
+		editModel.setIdCard(busWaiter.getIdCard());
+		editModel.setPhone(busWaiter.getPhone());
 		editModel.setSex(busWaiter.getSex());
 		editModel.setStatus(busWaiter.getStatus());
 		editModel.setRemarks(busWaiter.getRemarks());

+ 8 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/dto/DoorLockDto.java

@@ -0,0 +1,8 @@
+package org.jeecg.modules.business.dto;
+
+public class DoorLockDto {
+    public String hotelId;
+    public String radioType;
+    public String front;
+    public String after;
+}

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

@@ -0,0 +1,95 @@
+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.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+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: 门锁管理
+ * @Author: jeecg-boot
+ * @Date:   2023-03-20
+ * @Version: V1.0
+ */
+@Data
+@TableName("bus_door_lock_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="bus_door_lock_info对象", description="门锁管理")
+public class BusDoorLock 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;
+
+	/**楼栋ID*/
+	@Excel(name = "楼栋ID", width = 15)
+    @ApiModelProperty(value = "楼栋ID")
+    private String buildId;
+    private transient String buildName;
+
+	/**楼层ID*/
+	@Excel(name = "楼层ID", width = 15)
+    @ApiModelProperty(value = "楼层ID")
+    private String floorId;
+    private transient String floorName;
+
+    /**房间号Id*/
+    @Excel(name = "房间号Id", width = 15)
+    @ApiModelProperty(value = "房间号Id")
+    private String roomId;
+    private transient String roomNumber;
+
+	/**关联号*/
+	@Excel(name = "关联号", width = 15)
+    @ApiModelProperty(value = "关联号")
+    private String associationNumber;
+	/**状态(0-禁用;1-启用)*/
+	@Excel(name = "状态(0-禁用;1-启用)", width = 15)
+    @ApiModelProperty(value = "状态(0-禁用;1-启用)")
+    private Integer status;
+	/**删除状态(0-正常,1-已删除)*/
+	@Excel(name = "删除状态(0-正常,1-已删除)", width = 15)
+    @ApiModelProperty(value = "删除状态(0-正常,1-已删除)")
+    @TableLogic
+    private Integer delFlag;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "更新时间")
+    private Date updateTime;
+}

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

@@ -0,0 +1,100 @@
+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.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+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: 销售目标
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Data
+@TableName("bus_market_objective_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="bus_market_objective_info对象", description="销售目标")
+public class BusMarketObjective 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 Integer year;
+	/**月份*/
+	@Excel(name = "月份", width = 15)
+    @ApiModelProperty(value = "月份")
+    private String month;
+	/**营业额销售目标*/
+	@Excel(name = "营业额销售目标", width = 15)
+    @ApiModelProperty(value = "营业额销售目标")
+    private BigDecimal turnover;
+	/**出租率销售目标*/
+	@Excel(name = "出租率销售目标", width = 15)
+    @ApiModelProperty(value = "出租率销售目标")
+    private BigDecimal rentalRate;
+	/**平均房价销售目标*/
+	@Excel(name = "平均房价销售目标", width = 15)
+    @ApiModelProperty(value = "平均房价销售目标")
+    private BigDecimal roomPrice;
+	/**RevPer销售目标*/
+	@Excel(name = "RevPer销售目标", width = 15)
+    @ApiModelProperty(value = "RevPer销售目标")
+    private BigDecimal revper;
+	/**夜间数销售目标*/
+	@Excel(name = "夜间数销售目标", width = 15)
+    @ApiModelProperty(value = "夜间数销售目标")
+    private BigDecimal night;
+	/**json*/
+	@Excel(name = "json", width = 15)
+    @ApiModelProperty(value = "json")
+    private String json;
+	/**删除状态(0-正常,1-已删除)*/
+	@Excel(name = "删除状态(0-正常,1-已删除)", width = 15)
+    @ApiModelProperty(value = "删除状态(0-正常,1-已删除)")
+    @TableLogic
+    private Integer delFlag;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "更新时间")
+    private Date updateTime;
+}

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

@@ -0,0 +1,92 @@
+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.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+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: 餐券
+ * @Author: jeecg-boot
+ * @Date:   2023-03-21
+ * @Version: V1.0
+ */
+@Data
+@TableName("bus_meal_coupon_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="bus_meal_coupon_info对象", description="餐券")
+public class BusMealCoupon 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;
+	/**自动发放(0-开启;1-关闭)*/
+	@Excel(name = "自动发放(0-开启;1-关闭)", width = 15)
+    @ApiModelProperty(value = "自动发放(0-开启;1-关闭)")
+    private Integer automaticGrant;
+	/**开始时间*/
+	@Excel(name = "开始时间", width = 15, format = "HH:mm:ss")
+	@JsonFormat(timezone = "GMT+8",pattern = "HH:mm:ss")
+    @DateTimeFormat(pattern="HH:mm:ss")
+    @ApiModelProperty(value = "开始时间")
+    private Date startTime;
+	/**结束时间*/
+	@Excel(name = "结束时间", width = 15, format = "HH:mm:ss")
+	@JsonFormat(timezone = "GMT+8",pattern = "HH:mm:ss")
+    @DateTimeFormat(pattern="HH:mm:ss")
+    @ApiModelProperty(value = "结束时间")
+    private Date endTime;
+	/**状态(0-开启;1-关闭)*/
+	@Excel(name = "状态(0-开启;1-关闭)", width = 15)
+    @ApiModelProperty(value = "状态(0-开启;1-关闭)")
+    private Integer status;
+	/**删除状态(0-正常,1-已删除)*/
+	@Excel(name = "删除状态(0-正常,1-已删除)", width = 15)
+    @ApiModelProperty(value = "删除状态(0-正常,1-已删除)")
+    @TableLogic
+    private Integer delFlag;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "更新时间")
+    private Date updateTime;
+}

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

@@ -0,0 +1,85 @@
+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.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+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: 订单铃声
+ * @Author: jeecg-boot
+ * @Date:   2023-03-17
+ * @Version: V1.0
+ */
+@Data
+@TableName("bus_order_sound_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="bus_order_sound_info对象", description="订单铃声")
+public class BusOrderSound 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,dicCode="order_sound_type")
+    @Dict(dicCode = "order_sound_type")
+    @ApiModelProperty(value = "铃声类型")
+    private Integer type;
+	/**铃声地址*/
+	@Excel(name = "铃声地址", width = 15)
+    @ApiModelProperty(value = "铃声地址")
+    private String path;
+	/**状态(0-禁用;1-启用)*/
+	@Excel(name = "状态(0-禁用;1-启用)", width = 15)
+    @ApiModelProperty(value = "状态(0-禁用;1-启用)")
+    private Integer status;
+	/**删除状态(0-正常,1-已删除)*/
+	@Excel(name = "删除状态(0-正常,1-已删除)", width = 15)
+    @ApiModelProperty(value = "删除状态(0-正常,1-已删除)")
+    @TableLogic
+    private Integer delFlag;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "更新时间")
+    private Date updateTime;
+}

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

@@ -47,6 +47,7 @@ public class BusPayInterfaceConfig implements Serializable {
 	/**关联支付方式*/
 	@Excel(name = "关联支付方式", width = 15)
     @ApiModelProperty(value = "关联支付方式")
+    @Dict(dictTable = "bus_room_pay_type_info", dicCode = "id", dicText = "name")
     private String payTypeId;
 	/**商户号*/
 	@Excel(name = "商户号", width = 15)

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

@@ -0,0 +1,94 @@
+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.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+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: 服务维修
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Data
+@TableName("bus_service_repair_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="bus_service_repair_info对象", description="服务维修")
+public class BusServiceRepair 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;
+
+    /**酒店名称*/
+    private transient String hotelName;
+
+	/**名称*/
+	@Excel(name = "名称", width = 15)
+    @ApiModelProperty(value = "名称")
+    private String name;
+	/**类型(1-服务;2-维修)*/
+	@Excel(name = "类型(1-服务;2-维修)", width = 15,dicCode="service_repair_type")
+    @Dict(dicCode = "service_repair_type")
+    @ApiModelProperty(value = "类型(1-服务;2-维修)")
+    private Integer type;
+	/**服务模块(1-物品;2-服务内容)*/
+	@Excel(name = "服务模块(1-物品;2-服务内容)", width = 15,dicCode="service_module")
+    @Dict(dicCode = "service_module")
+    @ApiModelProperty(value = "服务模块(1-物品;2-服务内容)")
+    private Integer serviceType;
+	/**关联物品分类*/
+	@Excel(name = "关联物品分类", width = 15)
+    @ApiModelProperty(value = "关联物品分类")
+    private String categoryId;
+
+    /**物品分类名称*/
+    private transient String categoryName;
+
+	/**删除状态(0-正常,1-已删除)*/
+	@Excel(name = "删除状态(0-正常,1-已删除)", width = 15)
+    @ApiModelProperty(value = "删除状态(0-正常,1-已删除)")
+    @TableLogic
+    private Integer delFlag;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "更新时间")
+    private Date updateTime;
+}

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

@@ -0,0 +1,76 @@
+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.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+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: 服务维修-物品分类
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Data
+@TableName("bus_service_repair_category_info")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="bus_service_repair_category_info对象", description="服务维修-物品分类")
+public class BusServiceRepairCategory 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;
+	/**状态(0-禁用;1-启用)*/
+	@Excel(name = "状态(0-禁用;1-启用)", width = 15)
+    @ApiModelProperty(value = "状态(0-禁用;1-启用)")
+    private Integer status;
+	/**删除状态(0-正常,1-已删除)*/
+	@Excel(name = "删除状态(0-正常,1-已删除)", width = 15)
+    @ApiModelProperty(value = "删除状态(0-正常,1-已删除)")
+    @TableLogic
+    private Integer delFlag;
+	/**创建人*/
+    @ApiModelProperty(value = "创建人")
+    private String createBy;
+	/**创建时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+	/**更新人*/
+    @ApiModelProperty(value = "更新人")
+    private String updateBy;
+	/**更新时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "更新时间")
+    private Date updateTime;
+}

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

@@ -57,6 +57,14 @@ public class BusWaiter implements Serializable {
     @ApiModelProperty(value = "性别(0-默认未知,1-男,2-女)")
     @Dict(dicCode = "sex")
     private Integer sex;
+    /**身份证号*/
+    @Excel(name = "身份证号", width = 15)
+    @ApiModelProperty(value = "身份证号")
+    private String idCard;
+    /**手机号*/
+    @Excel(name = "手机号", width = 15)
+    @ApiModelProperty(value = "手机号")
+    private String phone;
 	/**状态(0-禁用;1-启用)*/
 	@Excel(name = "状态(0-禁用;1-启用)", width = 15)
     @ApiModelProperty(value = "状态(0-禁用;1-启用)")

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

@@ -0,0 +1,17 @@
+package org.jeecg.modules.business.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.business.entity.BusDoorLock;
+
+/**
+ * @Description: 门锁管理
+ * @Author: jeecg-boot
+ * @Date:   2023-03-20
+ * @Version: V1.0
+ */
+public interface BusDoorLockMapper extends BaseMapper<BusDoorLock> {
+
+}

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/BusMarketMealCouponsUsedMapper.java

@@ -28,7 +28,7 @@ public interface BusMarketMealCouponsUsedMapper extends BaseMapper<BusMarketMeal
      */
     @Select("<script>select u.*,c.name as coupons_name,cmc.name as type_name from bus_market_meal_coupons_used u\n" +
             "left join bus_market_meal_coupons_info c on c.id=u.coupons_id\n" +
-            "left join ces_meal_coupon cmc on cmc.id=c.type where 1=1\n" +
+            "left join bus_meal_coupon_info cmc on cmc.id=c.type where 1=1\n" +
             "<if test='hotelId != null and hotelId !=\"\"'> and u.hotel_id = #{hotelId} </if>"+
             "<if test='status >-1'> and u.status = #{status} </if>"+
             "<if test='type != null and type !=\"\"'> and c.type = #{type} </if>"+

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

@@ -0,0 +1,17 @@
+package org.jeecg.modules.business.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.business.entity.BusMarketObjective;
+
+/**
+ * @Description: 销售目标
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+public interface BusMarketObjectiveMapper extends BaseMapper<BusMarketObjective> {
+
+}

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

@@ -0,0 +1,17 @@
+package org.jeecg.modules.business.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.business.entity.BusMealCoupon;
+
+/**
+ * @Description: 餐券
+ * @Author: jeecg-boot
+ * @Date:   2023-03-21
+ * @Version: V1.0
+ */
+public interface BusMealCouponMapper extends BaseMapper<BusMealCoupon> {
+
+}

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

@@ -0,0 +1,17 @@
+package org.jeecg.modules.business.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.business.entity.BusOrderSound;
+
+/**
+ * @Description: 订单铃声
+ * @Author: jeecg-boot
+ * @Date:   2023-03-17
+ * @Version: V1.0
+ */
+public interface BusOrderSoundMapper extends BaseMapper<BusOrderSound> {
+
+}

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

@@ -0,0 +1,17 @@
+package org.jeecg.modules.business.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.business.entity.BusServiceRepairCategory;
+
+/**
+ * @Description: 服务维修-物品分类
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+public interface BusServiceRepairCategoryMapper extends BaseMapper<BusServiceRepairCategory> {
+
+}

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

@@ -0,0 +1,17 @@
+package org.jeecg.modules.business.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.business.entity.BusServiceRepair;
+
+/**
+ * @Description: 服务维修
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+public interface BusServiceRepairMapper extends BaseMapper<BusServiceRepair> {
+
+}

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

@@ -0,0 +1,5 @@
+<?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.demo.business.mapper.BusDoorLockMapper">
+
+</mapper>

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

@@ -10,7 +10,7 @@
         ,SUM(CASE WHEN `status`  = 3 then 1 else 0 end) as voided
         from bus_market_meal_coupons_used  group by coupons_id) u
         on u.coupons_id=c.id
-        left join ces_meal_coupon cmc on cmc.id=c.type
+        left join bus_meal_coupon_info 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 != ''">
@@ -19,4 +19,4 @@
         </if>
         ORDER BY c.id desc
     </select>
-</mapper>
+</mapper>

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

@@ -0,0 +1,5 @@
+<?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.demo.business.mapper.BusMarketObjectiveMapper">
+
+</mapper>

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

@@ -0,0 +1,5 @@
+<?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.demo.business.mapper.BusMealCouponMapper">
+
+</mapper>

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

@@ -0,0 +1,5 @@
+<?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.demo.business.mapper.BusOrderSoundMapper">
+
+</mapper>

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

@@ -0,0 +1,5 @@
+<?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.demo.business.mapper.BusServiceRepairCategoryMapper">
+
+</mapper>

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

@@ -0,0 +1,5 @@
+<?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.demo.business.mapper.BusServiceRepairMapper">
+
+</mapper>

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

@@ -0,0 +1,19 @@
+package org.jeecg.modules.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.business.entity.BusDoorLock;
+import org.jeecg.modules.business.model.BusDictTreeModel;
+
+import java.util.List;
+
+/**
+ * @Description: 门锁管理
+ * @Author: jeecg-boot
+ * @Date:   2023-03-20
+ * @Version: V1.0
+ */
+public interface IBusDoorLockService extends IService<BusDoorLock> {
+    boolean deleteByHotelId(String hotelId);
+
+    List<BusDoorLock> getByHotelId(String hotelId);
+}

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

@@ -0,0 +1,14 @@
+package org.jeecg.modules.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.business.entity.BusMarketObjective;
+
+/**
+ * @Description: 销售目标
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+public interface IBusMarketObjectiveService extends IService<BusMarketObjective> {
+
+}

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

@@ -0,0 +1,14 @@
+package org.jeecg.modules.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.business.entity.BusMealCoupon;
+
+/**
+ * @Description: 餐券
+ * @Author: jeecg-boot
+ * @Date:   2023-03-21
+ * @Version: V1.0
+ */
+public interface IBusMealCouponService extends IService<BusMealCoupon> {
+
+}

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

@@ -0,0 +1,14 @@
+package org.jeecg.modules.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.business.entity.BusOrderSound;
+
+/**
+ * @Description: 订单铃声
+ * @Author: jeecg-boot
+ * @Date:   2023-03-17
+ * @Version: V1.0
+ */
+public interface IBusOrderSoundService extends IService<BusOrderSound> {
+
+}

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

@@ -0,0 +1,14 @@
+package org.jeecg.modules.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.business.entity.BusServiceRepairCategory;
+
+/**
+ * @Description: 服务维修-物品分类
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+public interface IBusServiceRepairCategoryService extends IService<BusServiceRepairCategory> {
+
+}

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

@@ -0,0 +1,14 @@
+package org.jeecg.modules.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.business.entity.BusServiceRepair;
+
+/**
+ * @Description: 服务维修
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+public interface IBusServiceRepairService extends IService<BusServiceRepair> {
+
+}

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

@@ -0,0 +1,51 @@
+package org.jeecg.modules.business.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.business.entity.BusDict;
+import org.jeecg.modules.business.entity.BusDoorLock;
+import org.jeecg.modules.business.mapper.BusDoorLockMapper;
+import org.jeecg.modules.business.model.BusDictTreeModel;
+import org.jeecg.modules.business.service.IBusDoorLockService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description: 门锁管理
+ * @Author: jeecg-boot
+ * @Date:   2023-03-20
+ * @Version: V1.0
+ */
+@Service
+public class BusDoorLockServiceImpl extends ServiceImpl<BusDoorLockMapper, BusDoorLock> implements IBusDoorLockService {
+
+    @Override
+    public boolean deleteByHotelId(String hotelId) {
+        LambdaQueryWrapper<BusDoorLock> query = new LambdaQueryWrapper<BusDoorLock>();
+        query.eq(BusDoorLock::getHotelId, hotelId);
+        query.eq(BusDoorLock::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
+//        List<BusDoorLock> list= this.list(query);
+//        list.forEach(v -> {
+//            v.setDelFlag(CommonConstant.DEL_FLAG_1);
+//        });
+//        boolean res = saveOrUpdateBatch(list);
+        boolean res = remove(query);
+        return res;
+    }
+
+    @Override
+    public List<BusDoorLock> getByHotelId(String hotelId) {
+        LambdaQueryWrapper<BusDoorLock> query = new LambdaQueryWrapper<BusDoorLock>();
+        query.eq(BusDoorLock::getHotelId, hotelId);
+        query.eq(BusDoorLock::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
+        List<BusDoorLock> list= this.list(query);
+        return list;
+    }
+}

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

@@ -0,0 +1,19 @@
+package org.jeecg.modules.business.service.impl;
+
+import org.jeecg.modules.business.entity.BusMarketObjective;
+import org.jeecg.modules.business.mapper.BusMarketObjectiveMapper;
+import org.jeecg.modules.business.service.IBusMarketObjectiveService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 销售目标
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Service
+public class BusMarketObjectiveServiceImpl extends ServiceImpl<BusMarketObjectiveMapper, BusMarketObjective> implements IBusMarketObjectiveService {
+
+}

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

@@ -0,0 +1,19 @@
+package org.jeecg.modules.business.service.impl;
+
+import org.jeecg.modules.business.entity.BusMealCoupon;
+import org.jeecg.modules.business.mapper.BusMealCouponMapper;
+import org.jeecg.modules.business.service.IBusMealCouponService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 餐券
+ * @Author: jeecg-boot
+ * @Date:   2023-03-21
+ * @Version: V1.0
+ */
+@Service
+public class BusMealCouponServiceImpl extends ServiceImpl<BusMealCouponMapper, BusMealCoupon> implements IBusMealCouponService {
+
+}

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

@@ -0,0 +1,19 @@
+package org.jeecg.modules.business.service.impl;
+
+import org.jeecg.modules.business.entity.BusOrderSound;
+import org.jeecg.modules.business.mapper.BusOrderSoundMapper;
+import org.jeecg.modules.business.service.IBusOrderSoundService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 订单铃声
+ * @Author: jeecg-boot
+ * @Date:   2023-03-17
+ * @Version: V1.0
+ */
+@Service
+public class BusOrderSoundServiceImpl extends ServiceImpl<BusOrderSoundMapper, BusOrderSound> implements IBusOrderSoundService {
+
+}

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

@@ -0,0 +1,19 @@
+package org.jeecg.modules.business.service.impl;
+
+import org.jeecg.modules.business.entity.BusServiceRepairCategory;
+import org.jeecg.modules.business.mapper.BusServiceRepairCategoryMapper;
+import org.jeecg.modules.business.service.IBusServiceRepairCategoryService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 服务维修-物品分类
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Service
+public class BusServiceRepairCategoryServiceImpl extends ServiceImpl<BusServiceRepairCategoryMapper, BusServiceRepairCategory> implements IBusServiceRepairCategoryService {
+
+}

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

@@ -0,0 +1,19 @@
+package org.jeecg.modules.business.service.impl;
+
+import org.jeecg.modules.business.entity.BusServiceRepair;
+import org.jeecg.modules.business.mapper.BusServiceRepairMapper;
+import org.jeecg.modules.business.service.IBusServiceRepairService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 服务维修
+ * @Author: jeecg-boot
+ * @Date:   2023-03-22
+ * @Version: V1.0
+ */
+@Service
+public class BusServiceRepairServiceImpl extends ServiceImpl<BusServiceRepairMapper, BusServiceRepair> implements IBusServiceRepairService {
+
+}

+ 9 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/DTO/CesMealCouponDto.java

@@ -0,0 +1,9 @@
+package org.jeecg.modules.rooms.DTO;
+
+import lombok.Data;
+import org.jeecg.modules.rooms.entity.CesMealCoupon;
+
+@Data
+public class CesMealCouponDto extends CesMealCoupon {
+
+}

+ 8 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/DTO/CesMealCouponSearchDto.java

@@ -0,0 +1,8 @@
+package org.jeecg.modules.rooms.DTO;
+
+import lombok.Data;
+import org.jeecg.common.api.dto.BasePage;
+@Data
+public class CesMealCouponSearchDto  extends BasePage {
+    private String hotelId;
+}

+ 63 - 4
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesMealCouponController.java

@@ -7,14 +7,15 @@ import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.jeecg.common.Enum.ResultCode;
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.modules.rooms.DTO.CesMealCouponSearchDto;
+import org.jeecg.modules.rooms.DTO.CesRoomSearchDto;
+import org.jeecg.modules.rooms.DTO.CesRoomsDto;
 import org.jeecg.modules.rooms.entity.CesMealCoupon;
 import org.jeecg.modules.rooms.service.CesMealCouponServiceImpl;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.*;
 
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 
@@ -47,5 +48,63 @@ public class CesMealCouponController {
             return Result.error(e.getMessage());
         }
     }
+
+    @ApiOperation(value="房间分页列表查询", notes="房间分页列表查询")
+    @GetMapping(value = "/list")
+    public Result list(CesMealCouponSearchDto dto){
+        if(dto.getPageNo().intValue() <= 0){
+            return Result.error("页数不能小于等于0");
+        }
+        if(dto.getPageSize().intValue() < 10){
+            return Result.error("分页条数不能小于10");
+        }
+        try{
+            return  mealCouponService.list(dto);
+        }catch (Exception e){
+            return Result.error(e.getMessage());
+        }
+    }
+
+//    /**
+//     * 保存房间
+//     * @param dto
+//     * @return
+//     */
+//    @AutoLog(value = "保存房间")
+//    @ApiOperation(value="save房间", notes="save")
+//    @PostMapping(value = "/save")
+//    public Result save(@RequestBody CesRoomsDto dto){
+//        if(StringUtils.isBlank(dto.getHotelId())){
+//            return Result.error(ResultCode.PARAM_MISS);
+//        }
+//        if(StringUtils.isBlank(dto.getBuildId())){
+//            return Result.error(ResultCode.PARAM_MISS);
+//        }
+//        if(StringUtils.isBlank(dto.getFloorId())){
+//            return Result.error(ResultCode.PARAM_MISS);
+//        }
+//        if(StringUtils.isBlank(dto.getName())){
+//            return Result.error(ResultCode.PARAM_MISS);
+//        }
+//        try{
+//            return  mealCouponService.create(dto);
+//        }catch (Exception e){
+//            return Result.error(e.getMessage());
+//        }
+//    }
+//
+//    @AutoLog(value = "修改房间")
+//    @ApiOperation(value="修改房间", notes="修改房间")
+//    @PutMapping(value = "/modify")
+//    public Result modify(@RequestBody CesRoomsDto dto){
+//        if(StringUtils.isBlank(dto.getId())){
+//            return Result.error(ResultCode.PARAM_MISS,"数据ID必传!");
+//        }
+//        try{
+//            return  mealCouponService.modify(dto);
+//        }catch (Exception e){
+//            return Result.error(e.getMessage());
+//        }
+//    }
 }
 

+ 12 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesRoomBuildingFloorController.java

@@ -124,7 +124,18 @@ public class CesRoomBuildingFloorController {
         }
     }
 
-
+    @ApiOperation(value="楼栋查询", notes="楼栋查询")
+    @GetMapping(value = "/queryByParentId")
+    public Result queryByParentId(@RequestParam String parentId){
+        if(StringUtils.isBlank(parentId)){
+            return Result.error(ResultCode.PARAM_MISS);
+        }
+        try{
+            return buildingFloorService.queryByParentId(parentId);
+        }catch (Exception e){
+            return Result.error(e.getMessage());
+        }
+    }
 
 
 }

+ 25 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesRoomsController.java

@@ -177,5 +177,30 @@ public class CesRoomsController {
         }
     }
 
+    @ApiOperation(value="通过楼层获取房间列表", notes="通过楼层获取房间列表")
+    @GetMapping(value = "/queryByFloorId")
+    public Result queryByFloorId(@RequestParam String floorId){
+        if(StringUtils.isBlank(floorId)){
+            return Result.error(ResultCode.PARAM_MISS);
+        }
+        try{
+            return  roomsService.queryByFloorId(floorId);
+        }catch (Exception e){
+            return Result.error(e.getMessage());
+        }
+    }
+
+    @ApiOperation(value="通过酒店Id获取房间列表", notes="通过酒店Id获取房间列表")
+    @GetMapping(value = "/queryByHotelId")
+    public Result queryByHotelId(@RequestParam String hotelId){
+        if(StringUtils.isBlank(hotelId)){
+            return Result.error(ResultCode.PARAM_MISS);
+        }
+        try{
+            return  roomsService.queryByFloorId(hotelId);
+        }catch (Exception e){
+            return Result.error(e.getMessage());
+        }
+    }
 }
 

+ 10 - 8
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesAllDayPriceRuleServiceImpl.java

@@ -79,16 +79,18 @@ public class CesAllDayPriceRuleServiceImpl extends ServiceImpl<CesAllDayPriceRul
     public Result fetch(String hotelId){
         Map<String,Object> map =new HashedMap();
         CesAllDayPriceRule cesAllDayPriceRule =  cesAllDayPriceRuleMapper.selectOne(Wrappers.<CesAllDayPriceRule>lambdaQuery().eq(CesAllDayPriceRule::getHotelId,hotelId).eq(CesAllDayPriceRule::getInvalid,false));
-        if(ObjectUtils.isEmpty(cesAllDayPriceRule)) return Result.ok("欧克");
+        if(ObjectUtils.isEmpty(cesAllDayPriceRule)) return Result.ok(null);
 
         //分钟加收
-        if (CouponEnums.ALLDAYROOMRULETIMEOUT.MINUTE.code() == cesAllDayPriceRule.getTimeOutRule().intValue()){
-            //按房型设置下
-            if(CouponEnums.ALLDAYROOMRULETYPEDETAILS.LAYOUT.code() == cesAllDayPriceRule.getRuleType().intValue()){
-                List<CesAllDayRuleMinute> cesAllDayRuleMinutes =  cesAllDayRuleMinuteService.getRuleMinutesByHotelId(hotelId);
-                map.put("cesAllMinutes",cesAllDayRuleMinutes);
-            }
-        }
+//        if (CouponEnums.ALLDAYROOMRULETIMEOUT.MINUTE.code() == cesAllDayPriceRule.getTimeOutRule().intValue()){
+//            //按房型设置下
+////            if(CouponEnums.ALLDAYROOMRULETYPEDETAILS.LAYOUT.code() == cesAllDayPriceRule.getRuleType().intValue()){
+////
+////            }
+//
+//        }
+        List<CesAllDayRuleMinute> cesAllDayRuleMinutes =  cesAllDayRuleMinuteService.getRuleMinutesByHotelId(hotelId);
+        map.put("cesAllMinutes",cesAllDayRuleMinutes);
         map.put("cesAllDayPriceRule",cesAllDayPriceRule);
         return Result.ok(map);
     }

+ 79 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesMealCouponServiceImpl.java

@@ -1,18 +1,40 @@
 package org.jeecg.modules.rooms.service;
 
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.bean.copier.CopyOptions;
+import cn.hutool.core.collection.CollectionUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.collections.map.HashedMap;
+import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.modules.business.entity.BusHotel;
+import org.jeecg.modules.rooms.DTO.CesMealCouponDto;
+import org.jeecg.modules.rooms.DTO.CesMealCouponSearchDto;
+import org.jeecg.modules.rooms.DTO.CesRoomSearchDto;
+import org.jeecg.modules.rooms.DTO.CesRoomsDto;
+import org.jeecg.modules.rooms.Vo.CesHousePriceSchemeVo;
+import org.jeecg.modules.rooms.Vo.CesRoomsVo;
 import org.jeecg.modules.rooms.Vo.SelectVo;
+import org.jeecg.modules.rooms.entity.CesHousePriceScheme;
 import org.jeecg.modules.rooms.entity.CesMealCoupon;
+import org.jeecg.modules.rooms.entity.CesRoomBuildingFloor;
+import org.jeecg.modules.rooms.entity.CesRooms;
 import org.jeecg.modules.rooms.mapper.CesMealCouponMapper;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -43,4 +65,61 @@ public class CesMealCouponServiceImpl extends ServiceImpl<CesMealCouponMapper, C
         });
         return Result.ok(vos);
     }
+
+    /**
+     * 查询餐券
+     * @param dto
+     * @return
+     */
+    public Result list(CesMealCouponSearchDto dto){
+
+        QueryWrapper<CesMealCoupon> queryWrapper = new QueryWrapper<>();
+        if(!StringUtils.isBlank(dto.getHotelId())){
+            queryWrapper.eq(CesRooms.HOTEL_ID, dto.getHotelId());
+        }
+        queryWrapper.eq(CesRooms.INVALID,false);
+        queryWrapper.orderByDesc(CesRooms.SORT, CesRooms.CREATEAT);
+
+        IPage<CesMealCoupon> dataPage = cesMealCouponMapper.selectPage(new Page<>(dto.getPageNo().intValue(),dto.getPageSize().intValue()),queryWrapper);
+        List<CesMealCoupon> records = dataPage.getRecords();
+        List<CesMealCoupon> vos = new ArrayList<>();
+        records.forEach(v->{
+            CesMealCoupon vo = new CesMealCoupon();
+            BeanUtil.copyProperties(v, vo);
+            vos.add(vo);
+        });
+
+        Map<String,Object> map = new HashedMap();
+        map.put("records",vos);
+        map.put("total",dataPage.getTotal());
+        return Result.OK(map);
+    }
+
+    /**
+     * 创建餐券
+     * @param cesMealCouponDto
+     * @return
+     */
+    public Result create(CesMealCouponDto cesMealCouponDto){
+        cesMealCouponDto.setCreateAt(LocalDateTime.now());
+//        cesMealCouponDto.setSort(99);
+//        cesMealCouponDto.setInvalid(false);
+        cesMealCouponDto.setUpdateAt(LocalDateTime.now());
+        cesMealCouponMapper.insert(cesMealCouponDto);
+        return Result.ok("创建成功!");
+    }
+
+    /**
+     * 编辑餐券
+     * @param roomsDto
+     * @return
+     */
+    public Result modify(CesRoomsDto roomsDto){
+//        CesRooms room = baseMapper.selectOne(Wrappers.<CesRooms>lambdaQuery().eq(CesRooms::getId, roomsDto.getId()).eq(CesRooms::getInvalid,false));
+//        if(ObjectUtils.isEmpty(room)) return Result.ok("数据未找到!");
+//        BeanUtil.copyProperties(roomsDto,room, CopyOptions.create().setIgnoreNullValue(true).setIgnoreError(true));
+//        room.setUpdateAt(LocalDateTime.now());
+//        roomsMapper.updateById(room);
+        return Result.ok("修改成功!");
+    }
 }

+ 11 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesRoomBuildingFloorServiceImpl.java

@@ -161,4 +161,15 @@ public class CesRoomBuildingFloorServiceImpl extends ServiceImpl<CesRoomBuilding
         return buildingFloor;
     }
 
+    /**
+     * 根据上级Id获取下级数据
+     * @param parentId
+     * @return
+     */
+    public Result queryByParentId(String parentId){
+        //查询数据
+        List<CesRoomBuildingFloor> list = buildingFloorMapper.selectList(Wrappers.<CesRoomBuildingFloor>lambdaQuery().eq(CesRoomBuildingFloor::getParentId,parentId).eq(CesRoomBuildingFloor::getInvalid,false));
+        return Result.OK(list);
+    }
+
 }

+ 28 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesRoomsServiceImpl.java

@@ -2,7 +2,11 @@ package org.jeecg.modules.rooms.service;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.bean.copier.CopyOptions;
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.lang.tree.Tree;
+import cn.hutool.core.lang.tree.TreeNode;
+import cn.hutool.core.lang.tree.TreeUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -210,4 +214,28 @@ public class CesRoomsServiceImpl extends ServiceImpl<CesRoomsMapper, CesRooms> i
     }
 
 
+    /**
+     * 根据楼层获取房间数据
+     * @param floorId
+     * @return
+     */
+    public Result queryByFloorId(String floorId){
+        List<CesRooms> rooms = roomsMapper.selectList(Wrappers.<CesRooms>lambdaQuery().eq(CesRooms::getFloorId, floorId).eq(CesRooms::getInvalid,false));
+        return Result.OK(rooms);
+    }
+
+    /**
+     * 根据楼层获取房间数据
+     * @param hotelId
+     * @return
+     */
+    public Result queryByHotelId(String hotelId){
+        List<CesRooms> rooms = roomsMapper.selectList(Wrappers.<CesRooms>lambdaQuery().eq(CesRooms::getHotelId, hotelId).eq(CesRooms::getInvalid,false));
+        return Result.OK(rooms);
+    }
+
+    public List<CesRooms> getByHotelId(String hotelId){
+        List<CesRooms> rooms = roomsMapper.selectList(Wrappers.<CesRooms>lambdaQuery().eq(CesRooms::getHotelId, hotelId).eq(CesRooms::getInvalid,false));
+        return rooms;
+    }
 }