diff --git a/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppRoomController.java b/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppRoomController.java index e041508..58a9913 100644 --- a/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppRoomController.java +++ b/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppRoomController.java @@ -5,23 +5,24 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.ValidGroup; +import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.ss.equipment.domain.EquipmentVO; import com.ruoyi.ss.equipment.service.IEquipmentService; import com.ruoyi.ss.feeRule.service.IFeeRuleValidator; -import com.ruoyi.ss.room.domain.BandRuleDTO; -import com.ruoyi.ss.room.domain.Room; -import com.ruoyi.ss.room.domain.RoomDTO; -import com.ruoyi.ss.room.domain.RoomVO; +import com.ruoyi.ss.room.domain.*; import com.ruoyi.ss.room.service.IRoomAssembler; import com.ruoyi.ss.room.service.IRoomService; import com.ruoyi.ss.room.service.IRoomValidator; import com.ruoyi.ss.room.service.RoomConverter; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import java.util.List; + /** * 房间Controller * @author qzz @@ -197,4 +198,24 @@ public class AppRoomController extends BaseController { return toAjax(roomService.unBandRule(ruleId,roomId)); } + /** + * 配置房间wifi + */ + @PutMapping("/setWifi") + public AjaxResult setWifi(@RequestBody SetWifiDTO dto) { + logger.info("配置房间wifi:【{}】", JSON.toJSONString(dto)); + return toAjax(roomService.setWifi(dto)); + } + + /** + * 查商户下所有房间和设施列表 + */ + @GetMapping("/getWifiList") + public AjaxResult getWifiList() + { + logger.info("查询商户下所有房间和设施列表"); + List list = roomService.selectWifiObjList(); + return success(list); + } + } diff --git a/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppUserController.java b/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppUserController.java index 02af191..90fb835 100644 --- a/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppUserController.java +++ b/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppUserController.java @@ -26,6 +26,7 @@ import javax.annotation.Resource; import java.util.List; import static com.ruoyi.common.constant.ServiceConstants.USER_TYPE_CLEANER; +import static com.ruoyi.common.constant.ServiceConstants.USER_TYPE_PARTNER; /** * 用户Controller @@ -49,7 +50,7 @@ public class AppUserController extends BaseController { @GetMapping("/list") public AjaxResult list(UserQuery eUser) { - eUser.setUserType(USER_TYPE_CLEANER); +// eUser.setUserType(USER_TYPE_CLEANER); List list = userService.selectUserList(eUser); assembleStoreName(list); return success(list); @@ -72,7 +73,7 @@ public class AppUserController extends BaseController { */ @Log(title = "用户管理", businessType = BusinessType.INSERT) @PostMapping("/addCleaner") - public AjaxResult add(@Validated @RequestBody User user) + public AjaxResult add(@Validated(ValidGroup.CreateCleaner.class) @RequestBody User user) { user.setUserName(user.getPhonenumber()); if (!userService.checkUserNameUnique(user)) @@ -91,11 +92,36 @@ public class AppUserController extends BaseController { return toAjax(userService.insertUser(user)); } + /** + * 新增合伙人 + */ + @Log(title = "用户管理", businessType = BusinessType.INSERT) + @PostMapping("/addPartner") + public AjaxResult addPartner(@Validated(ValidGroup.CreatePartner.class) @RequestBody User user) + { + user.setUserName(user.getPhonenumber()); + if (!userService.checkUserNameUnique(user)) + { + return error("新增用户'" + user.getUserName() + "'失败,登录账号已存在"); + } + else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) + { + return error("新增用户'" + user.getUserName() + "'失败,手机号码已存在"); + } + StoreVO storeVO = storeService.selectEStoreByStoreId(user.getStoreId()); + ServiceUtil.assertion(storeVO == null, "店铺不存在"); + user.setCreateBy(getUsername()); + user.setUserType(USER_TYPE_PARTNER); + user.setMerchantId(storeVO.getMerchantId()); + return toAjax(userService.insertUser(user)); + } + + /** * 修改保洁员 */ @Log(title = "修改保洁员", businessType = BusinessType.UPDATE) - @PutMapping("/editCleaner") + @PutMapping("/editUser") public AjaxResult edit(@RequestBody @Validated(ValidGroup.Update.class) User user) { logger.info("修改用户:【{}】", JSON.toJSONString(user)); @@ -132,9 +158,9 @@ public class AppUserController extends BaseController { if(userVO == null){ return error(StrUtil.format("用户【{}】不存在",userId)); } - if(!USER_TYPE_CLEANER.equals(userVO.getUserType())){ - return error(StrUtil.format("用户【{}】非保洁员,不能删除",userId)); - } +// if(!USER_TYPE_CLEANER.equals(userVO.getUserType())){ +// return error(StrUtil.format("用户【{}】非保洁员,不能删除",userId)); +// } } return toAjax(userService.deleteUserByIds(userIds)); } diff --git a/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppWifiController.java b/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppWifiController.java new file mode 100644 index 0000000..a790b64 --- /dev/null +++ b/share-space-admin/src/main/java/com/ruoyi/web/controller/app/AppWifiController.java @@ -0,0 +1,83 @@ +package com.ruoyi.web.controller.app; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.ValidGroup; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.ss.wifi.domain.Wifi; +import com.ruoyi.ss.wifi.domain.WifiQuery; +import com.ruoyi.ss.wifi.domain.WifiVO; +import com.ruoyi.ss.wifi.service.IWifiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * wifiController + * + * @author qzz + * @date 2025-01-06 + */ +@RestController +@RequestMapping("/app/wifi") +public class AppWifiController extends BaseController +{ + @Autowired + private IWifiService wifiService; + + /** + * 查询wifi列表 + */ + @GetMapping("/list") + public TableDataInfo list(WifiQuery query) + { + startPage(); + startOrderBy(); + query.setMerchantId(getUserId()); + List list = wifiService.selectWifiList(query); + return getDataTable(list); + } + + /** + * 获取wifi详细信息 + */ + @GetMapping(value = "/{wifiId}") + public AjaxResult getInfo(@PathVariable("wifiId") Long wifiId) + { + return success(wifiService.selectWifiByWifiId(wifiId)); + } + + /** + * 新增wifi + */ + @Log(title = "wifi", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody @Validated(ValidGroup.Create.class)Wifi wifi) + { + return toAjax(wifiService.insertWifi(wifi)); + } + + /** + * 修改wifi + */ + @Log(title = "wifi", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Wifi wifi) + { + return toAjax(wifiService.updateWifi(wifi)); + } + + /** + * 删除wifi + */ + @Log(title = "wifi", businessType = BusinessType.DELETE) + @DeleteMapping("/{wifiIds}") + public AjaxResult remove(@PathVariable Long[] wifiIds) + { + return toAjax(wifiService.deleteWifiByWifiIds(wifiIds)); + } +} diff --git a/share-space-admin/src/main/java/com/ruoyi/web/controller/system/DeviceController.java b/share-space-admin/src/main/java/com/ruoyi/web/controller/system/DeviceController.java index 1c83dbe..0154b64 100644 --- a/share-space-admin/src/main/java/com/ruoyi/web/controller/system/DeviceController.java +++ b/share-space-admin/src/main/java/com/ruoyi/web/controller/system/DeviceController.java @@ -58,6 +58,8 @@ public class DeviceController extends BaseController startPage(); List list = deviceService.selectSmDeviceList(smDevice); // deviceAssembler.assembleRealServiceRate(list); + deviceAssembler.assemblePlacementStatus(list, smDevice.getPlacementStatus()); + deviceAssembler.assembleEquipment(list); return getDataTable(list); } diff --git a/share-space-admin/src/main/java/com/ruoyi/web/controller/system/HallEquController.java b/share-space-admin/src/main/java/com/ruoyi/web/controller/system/HallEquController.java new file mode 100644 index 0000000..e9e0973 --- /dev/null +++ b/share-space-admin/src/main/java/com/ruoyi/web/controller/system/HallEquController.java @@ -0,0 +1,119 @@ +package com.ruoyi.web.controller.system; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.ss.equipment.domain.Equipment; +import com.ruoyi.ss.equipment.domain.EquipmentQuery; +import com.ruoyi.ss.equipment.domain.EquipmentVO; +import com.ruoyi.ss.equipment.service.IEquipmentAssembler; +import com.ruoyi.ss.equipment.service.IEquipmentService; +import com.ruoyi.ss.room.domain.RoomQuery; +import com.ruoyi.ss.room.domain.RoomVO; +import com.ruoyi.ss.room.service.IRoomService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +import static com.ruoyi.common.constant.ServiceConstants.ROOM_TYPE2_HALL; + +/** + * 大厅设施Controller + * + * @author qzz + * @date 2024-12-21 + */ +@RestController +@RequestMapping("/system/hallEqu") +public class HallEquController extends BaseController +{ + @Autowired + private IEquipmentService equipmentService; + + @Autowired + private IRoomService roomService; + + @Autowired + private IEquipmentAssembler equipmentAssembler; + + /** + * 查询设施列表 + */ + @PreAuthorize("@ss.hasPermi('system:equipment:list')") + @GetMapping("/list") + public TableDataInfo list(EquipmentQuery query) + { + startPage(); + startOrderBy(); + RoomQuery query1 = new RoomQuery(); + query1.setType2(ROOM_TYPE2_HALL); + List roomIds = roomService.selectRoomIdsList(query1); + query.setRoomIds(roomIds); + List list = equipmentService.selectEquipmentList(query); + equipmentAssembler.assembleDeviceInfo(list); + equipmentAssembler.assembleRuleInfo(list); + return getDataTable(list); + } + + /** + * 导出设施列表 + */ + @PreAuthorize("@ss.hasPermi('system:equipment:export')") + @Log(title = "设施", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EquipmentQuery query) + { + List list = equipmentService.selectEquipmentList(query); + ExcelUtil util = new ExcelUtil(EquipmentVO.class); + util.exportExcel(response, list, "设施数据"); + } + + /** + * 获取设施详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:equipment:query')") + @GetMapping(value = "/{equipmentId}") + public AjaxResult getInfo(@PathVariable("equipmentId") Long equipmentId) + { + return success(equipmentService.selectEquipmentByEquipmentId(equipmentId)); + } + + /** + * 新增设施 + */ + @PreAuthorize("@ss.hasPermi('system:equipment:add')") + @Log(title = "设施", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Equipment equipment) + { + return toAjax(equipmentService.insertEquipment(equipment)); + } + + /** + * 修改设施 + */ + @PreAuthorize("@ss.hasPermi('system:equipment:edit')") + @Log(title = "设施", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Equipment equipment) + { + return toAjax(equipmentService.updateEquipment(equipment)); + } + + /** + * 删除设施 + */ + @PreAuthorize("@ss.hasPermi('system:equipment:remove')") + @Log(title = "设施", businessType = BusinessType.DELETE) + @DeleteMapping("/{equipmentIds}") + public AjaxResult remove(@PathVariable Long[] equipmentIds) + { + return toAjax(equipmentService.deleteEquipmentByEquipmentIds(equipmentIds)); + } +} diff --git a/share-space-admin/src/main/java/com/ruoyi/web/controller/system/WifiController.java b/share-space-admin/src/main/java/com/ruoyi/web/controller/system/WifiController.java new file mode 100644 index 0000000..667d88a --- /dev/null +++ b/share-space-admin/src/main/java/com/ruoyi/web/controller/system/WifiController.java @@ -0,0 +1,108 @@ +package com.ruoyi.web.controller.system; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.ruoyi.ss.wifi.domain.Wifi; +import com.ruoyi.ss.wifi.domain.WifiQuery; +import com.ruoyi.ss.wifi.domain.WifiVO; +import com.ruoyi.ss.wifi.service.IWifiService; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * wifiController + * + * @author qzz + * @date 2025-01-06 + */ +@RestController +@RequestMapping("/system/wifi") +public class WifiController extends BaseController +{ + @Autowired + private IWifiService wifiService; + + /** + * 查询wifi列表 + */ + @PreAuthorize("@ss.hasPermi('system:wifi:list')") + @GetMapping("/list") + public TableDataInfo list(WifiQuery query) + { + startPage(); + startOrderBy(); + List list = wifiService.selectWifiList(query); + return getDataTable(list); + } + + /** + * 导出wifi列表 + */ + @PreAuthorize("@ss.hasPermi('system:wifi:export')") + @Log(title = "wifi", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, WifiQuery query) + { + List list = wifiService.selectWifiList(query); + ExcelUtil util = new ExcelUtil(WifiVO.class); + util.exportExcel(response, list, "wifi数据"); + } + + /** + * 获取wifi详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:wifi:query')") + @GetMapping(value = "/{wifiId}") + public AjaxResult getInfo(@PathVariable("wifiId") Long wifiId) + { + return success(wifiService.selectWifiByWifiId(wifiId)); + } + + /** + * 新增wifi + */ + @PreAuthorize("@ss.hasPermi('system:wifi:add')") + @Log(title = "wifi", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Wifi wifi) + { + return toAjax(wifiService.insertWifi(wifi)); + } + + /** + * 修改wifi + */ + @PreAuthorize("@ss.hasPermi('system:wifi:edit')") + @Log(title = "wifi", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Wifi wifi) + { + return toAjax(wifiService.updateWifi(wifi)); + } + + /** + * 删除wifi + */ + @PreAuthorize("@ss.hasPermi('system:wifi:remove')") + @Log(title = "wifi", businessType = BusinessType.DELETE) + @DeleteMapping("/{wifiIds}") + public AjaxResult remove(@PathVariable Long[] wifiIds) + { + return toAjax(wifiService.deleteWifiByWifiIds(wifiIds)); + } +} diff --git a/share-space-common/src/main/java/com/ruoyi/common/constant/ServiceConstants.java b/share-space-common/src/main/java/com/ruoyi/common/constant/ServiceConstants.java index 7331c8e..4cfa750 100644 --- a/share-space-common/src/main/java/com/ruoyi/common/constant/ServiceConstants.java +++ b/share-space-common/src/main/java/com/ruoyi/common/constant/ServiceConstants.java @@ -736,6 +736,11 @@ public class ServiceConstants { */ public static final String USER_TYPE_CLEANER = "04"; + /** + * 05 - 合伙人 + */ + public static final String USER_TYPE_PARTNER = "05"; + /** * 09 - 超级管理员 */ diff --git a/share-space-common/src/main/java/com/ruoyi/common/core/domain/ValidGroup.java b/share-space-common/src/main/java/com/ruoyi/common/core/domain/ValidGroup.java index 042a77b..99b95ac 100644 --- a/share-space-common/src/main/java/com/ruoyi/common/core/domain/ValidGroup.java +++ b/share-space-common/src/main/java/com/ruoyi/common/core/domain/ValidGroup.java @@ -24,5 +24,9 @@ public interface ValidGroup { // 退款 interface Refund extends Default{} + // 新增保洁 + interface CreateCleaner extends Default {} + // 新增合伙人 + interface CreatePartner extends Default {} } diff --git a/share-space-common/src/main/java/com/ruoyi/common/core/domain/dto/BasicConfigDTO.java b/share-space-common/src/main/java/com/ruoyi/common/core/domain/dto/BasicConfigDTO.java index 1a693bf..74c8041 100644 --- a/share-space-common/src/main/java/com/ruoyi/common/core/domain/dto/BasicConfigDTO.java +++ b/share-space-common/src/main/java/com/ruoyi/common/core/domain/dto/BasicConfigDTO.java @@ -32,4 +32,8 @@ public class BasicConfigDTO { @NotNull(message = "违约金不能为空") private BigDecimal penalty; + @ApiModelProperty(value = "提前开始使用时间") + @NotNull(message = "提前开始使用时间") + private int beforeTime; + } diff --git a/share-space-common/src/main/java/com/ruoyi/common/core/domain/entity/User.java b/share-space-common/src/main/java/com/ruoyi/common/core/domain/entity/User.java index 5981005..943e237 100644 --- a/share-space-common/src/main/java/com/ruoyi/common/core/domain/entity/User.java +++ b/share-space-common/src/main/java/com/ruoyi/common/core/domain/entity/User.java @@ -41,6 +41,7 @@ public class User extends BaseEntity /** 真实姓名 */ @Excel(name = "真实姓名") + @NotBlank(message = "真实姓名不能为空", groups = {ValidGroup.CreateCleaner.class, ValidGroup.CreatePartner.class}) private String realName; /** 身份证号 */ @@ -57,6 +58,7 @@ public class User extends BaseEntity /** 手机号码 */ @Excel(name = "手机号码") + @NotBlank(message = "手机号码不能为空", groups = {ValidGroup.CreateCleaner.class, ValidGroup.CreatePartner.class}) private String phonenumber; /** 出生年月 */ @@ -115,6 +117,7 @@ public class User extends BaseEntity public Long payChannel; /** 分账比例 */ + @NotNull(message = "分账比例不能为空", groups = {ValidGroup.CreatePartner.class}) private BigDecimal dividendProportion; /** 商户id */ @@ -130,7 +133,7 @@ public class User extends BaseEntity private Long roleId; /** 店铺ID */ - @NotNull(message = "店铺ID不能为空") + @NotNull(message = "店铺ID不能为空", groups = {ValidGroup.CreateCleaner.class, ValidGroup.CreatePartner.class}) private Long storeId; /** 服务费比例 */ @@ -149,6 +152,9 @@ public class User extends BaseEntity @ApiModelProperty(value = "违约金比例") private BigDecimal penalty; + @ApiModelProperty(value = "提前开始使用时间") + private int beforeTime; + public User() { } diff --git a/share-space-system/src/main/java/com/ruoyi/ss/device/domain/vo/DeviceVO.java b/share-space-system/src/main/java/com/ruoyi/ss/device/domain/vo/DeviceVO.java index 0123162..6e0e0fc 100644 --- a/share-space-system/src/main/java/com/ruoyi/ss/device/domain/vo/DeviceVO.java +++ b/share-space-system/src/main/java/com/ruoyi/ss/device/domain/vo/DeviceVO.java @@ -8,12 +8,15 @@ import com.fasterxml.jackson.annotation.JsonView; //import com.ruoyi.ss.device.domain.DeviceView; //import com.ruoyi.ss.suit.domain.SuitVO; import com.ruoyi.common.core.domain.JsonViewProfile; +import com.ruoyi.common.core.domain.ValidGroup; import com.ruoyi.ss.device.domain.Device; import com.ruoyi.ss.device.domain.DeviceView; +import com.ruoyi.ss.equipment.domain.EquipmentVO; import com.ruoyi.system.iot.interfaces.IotDevice; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.LocalTime; import java.util.List; @@ -110,6 +113,9 @@ public class DeviceVO extends Device implements IotDevice { @ApiModelProperty("设备投放状态") private String placementStatus; + @ApiModelProperty("设施对象") + private EquipmentVO equ; + @Override public String iotMac1() { return getMac(); diff --git a/share-space-system/src/main/java/com/ruoyi/ss/device/service/DeviceAssembler.java b/share-space-system/src/main/java/com/ruoyi/ss/device/service/DeviceAssembler.java index e4b2660..ab59f6e 100644 --- a/share-space-system/src/main/java/com/ruoyi/ss/device/service/DeviceAssembler.java +++ b/share-space-system/src/main/java/com/ruoyi/ss/device/service/DeviceAssembler.java @@ -62,4 +62,9 @@ public interface DeviceAssembler { default void assembleAllowSwitch(DeviceVO device, Long userId) { assembleAllowSwitch(Collections.singletonList(device), userId); } + + /** + * 拼接设施信息 + */ + void assembleEquipment(List list); } diff --git a/share-space-system/src/main/java/com/ruoyi/ss/device/service/impl/DeviceAssemblerImpl.java b/share-space-system/src/main/java/com/ruoyi/ss/device/service/impl/DeviceAssemblerImpl.java index 7615971..7643f72 100644 --- a/share-space-system/src/main/java/com/ruoyi/ss/device/service/impl/DeviceAssemblerImpl.java +++ b/share-space-system/src/main/java/com/ruoyi/ss/device/service/impl/DeviceAssemblerImpl.java @@ -22,6 +22,7 @@ import com.ruoyi.common.utils.collection.CollectionUtils; import com.ruoyi.ss.device.domain.vo.DeviceVO; import com.ruoyi.ss.device.service.DeviceAssembler; import com.ruoyi.ss.device.service.DeviceValidator; +import com.ruoyi.ss.equipment.domain.EquipmentVO; import com.ruoyi.ss.equipment.service.IEquipmentService; import com.ruoyi.ss.room.service.IRoomService; import com.ruoyi.ss.store.service.IStoreService; @@ -178,8 +179,6 @@ public class DeviceAssemblerImpl implements DeviceAssembler { for (DeviceVO device : list){ List roomIds = equipmentService.selectRoomIdByDeviceId(device.getDeviceId()); device.setPlacementStatus(roomIds.isEmpty() ? DEVICE_STATUS_PLACEMENT_NOT_PLACED : DEVICE_PLACEMENT_STATUS_PLACED); -// Long storeId = equipmentService.selectStoreIdByDeviceId(device.getDeviceId()); -// device.setPlacementStatus(storeId == null ? DEVICE_STATUS_PLACEMENT_NOT_PLACED : DEVICE_PLACEMENT_STATUS_PLACED); } // list通过placementStatus过滤 if (StringUtils.isNotEmpty(placementStatus)) { @@ -255,4 +254,18 @@ public class DeviceAssemblerImpl implements DeviceAssembler { // device.setAllowSwitch(false); // } } + + /** + * 拼接设施对象 + */ + @Override + public void assembleEquipment(List list) { + if (CollectionUtils.isEmptyElement(list)) { + return; + } + for (DeviceVO device : list){ + EquipmentVO equipmentVO = equipmentService.selectByDeviceId(device.getDeviceId()); + device.setEqu(equipmentVO); + } + } } diff --git a/share-space-system/src/main/java/com/ruoyi/ss/equipment/domain/Equipment.java b/share-space-system/src/main/java/com/ruoyi/ss/equipment/domain/Equipment.java index a5d9bb3..4941d5a 100644 --- a/share-space-system/src/main/java/com/ruoyi/ss/equipment/domain/Equipment.java +++ b/share-space-system/src/main/java/com/ruoyi/ss/equipment/domain/Equipment.java @@ -79,5 +79,13 @@ public class Equipment extends BaseEntity{ // @Size(min = 1, message = "至少需要一个标签", groups = {ValidGroup.Create.class}) private List tags; + @Excel(name = "商户id") + @ApiModelProperty("商户id") + private Long merchantId; + + @Excel(name = "状态") + @ApiModelProperty("状态:0-正常;1-下架") + private String status; + } diff --git a/share-space-system/src/main/java/com/ruoyi/ss/equipment/domain/EquipmentQuery.java b/share-space-system/src/main/java/com/ruoyi/ss/equipment/domain/EquipmentQuery.java index 3cdafa5..3b33ed5 100644 --- a/share-space-system/src/main/java/com/ruoyi/ss/equipment/domain/EquipmentQuery.java +++ b/share-space-system/src/main/java/com/ruoyi/ss/equipment/domain/EquipmentQuery.java @@ -2,7 +2,12 @@ package com.ruoyi.ss.equipment.domain; import lombok.Data; +import java.util.List; + @Data public class EquipmentQuery extends Equipment{ + /** 房间ids*/ + private List roomIds; + } diff --git a/share-space-system/src/main/java/com/ruoyi/ss/equipment/mapper/EquipmentMapper.xml b/share-space-system/src/main/java/com/ruoyi/ss/equipment/mapper/EquipmentMapper.xml index 97ebc85..8f32934 100644 --- a/share-space-system/src/main/java/com/ruoyi/ss/equipment/mapper/EquipmentMapper.xml +++ b/share-space-system/src/main/java/com/ruoyi/ss/equipment/mapper/EquipmentMapper.xml @@ -5,6 +5,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -23,6 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" type, device_id, rule_ids, + status, unlock_mode, unlock_condition, unlock_time @@ -34,20 +36,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and store_id = #{query.storeId} and picture = #{query.picture} and tags = #{query.tags} + and query. = #{query.status} and room_id = #{query.roomId} and device_id = #{query.deviceId} - and deleted = #{query.deleted} and type = #{query.type} + and merchant_id = #{query.merchantId} + and deleted = false + and deleted = #{query.deleted} + + and room_id in + + #{item} + + - where deleted = 0 - + + + + + + select u.user_id, u.user_name, u.real_name, u.id_card, u.nick_name, u.email, u.avatar,u.service_fee_proportion,u.clean_duration, u.clean_notice,u.ago_cancel,u.penalty, - u.phonenumber, u.password, u.sex, u.status,u.user_type,u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time,u.balance, + u.phonenumber, u.password, u.sex, u.status,u.user_type,u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time,u.balance,u.before_time, u.remark,u.wxopenid,u.is_authentication,u.pay_channel,ub.balance from ss_user u left join ss_user_balance ub on ub.user_id = u.user_id @@ -145,7 +145,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + + + + + + insert into ss_wifi + + wifi_id, + wifi, + password, + store_id, + merchant_id, + create_by, + create_time, + + + #{wifiId}, + #{wifi}, + #{password}, + #{storeId}, + #{merchantId}, + #{createBy}, + #{createTime}, + + + + + update ss_wifi + + + + where wifi_id = #{data.wifiId} + + + + wifi = #{data.wifi}, + password = #{data.password}, + store_id = #{data.storeId}, + merchant_id = #{data.merchantId}, + create_by = #{data.createBy}, + create_time = #{data.createTime}, + + + + delete from ss_wifi where wifi_id = #{wifiId} + + + + delete from ss_wifi where wifi_id in + + #{wifiId} + + + diff --git a/share-space-system/src/main/java/com/ruoyi/ss/wifi/service/IWifiService.java b/share-space-system/src/main/java/com/ruoyi/ss/wifi/service/IWifiService.java new file mode 100644 index 0000000..f7efb40 --- /dev/null +++ b/share-space-system/src/main/java/com/ruoyi/ss/wifi/service/IWifiService.java @@ -0,0 +1,64 @@ +package com.ruoyi.ss.wifi.service; + +import com.ruoyi.ss.wifi.domain.Wifi; +import com.ruoyi.ss.wifi.domain.WifiQuery; +import com.ruoyi.ss.wifi.domain.WifiVO; + +import java.util.List; + +/** + * wifiService接口 + * + * @author qzz + * @date 2025-01-06 + */ +public interface IWifiService +{ + /** + * 查询wifi + * + * @param wifiId wifi主键 + * @return wifi + */ + public WifiVO selectWifiByWifiId(Long wifiId); + + /** + * 查询wifi列表 + * + * @param wifi wifi + * @return wifi集合 + */ + public List selectWifiList(WifiQuery wifi); + + /** + * 新增wifi + * + * @param wifi wifi + * @return 结果 + */ + public int insertWifi(Wifi wifi); + + /** + * 修改wifi + * + * @param wifi wifi + * @return 结果 + */ + public int updateWifi(Wifi wifi); + + /** + * 批量删除wifi + * + * @param wifiIds 需要删除的wifi主键集合 + * @return 结果 + */ + public int deleteWifiByWifiIds(Long[] wifiIds); + + /** + * 删除wifi信息 + * + * @param wifiId wifi主键 + * @return 结果 + */ + public int deleteWifiByWifiId(Long wifiId); +} diff --git a/share-space-system/src/main/java/com/ruoyi/ss/wifi/service/impl/WifiServiceImpl.java b/share-space-system/src/main/java/com/ruoyi/ss/wifi/service/impl/WifiServiceImpl.java new file mode 100644 index 0000000..ecf9fda --- /dev/null +++ b/share-space-system/src/main/java/com/ruoyi/ss/wifi/service/impl/WifiServiceImpl.java @@ -0,0 +1,103 @@ +package com.ruoyi.ss.wifi.service.impl; + +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.ss.wifi.domain.Wifi; +import com.ruoyi.ss.wifi.domain.WifiQuery; +import com.ruoyi.ss.wifi.domain.WifiVO; +import com.ruoyi.ss.wifi.mapper.WifiMapper; +import com.ruoyi.ss.wifi.service.IWifiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +import static com.ruoyi.common.utils.SecurityUtils.getUserId; +import static com.ruoyi.common.utils.SecurityUtils.getUsername; + +/** + * wifiService业务层处理 + * + * @author qzz + * @date 2025-01-06 + */ +@Service +public class WifiServiceImpl implements IWifiService +{ + @Autowired + private WifiMapper wifiMapper; + + /** + * 查询wifi + * + * @param wifiId wifi主键 + * @return wifi + */ + @Override + public WifiVO selectWifiByWifiId(Long wifiId) + { + return wifiMapper.selectWifiByWifiId(wifiId); + } + + /** + * 查询wifi列表 + * + * @param wifi wifi + * @return wifi + */ + @Override + public List selectWifiList(WifiQuery wifi) + { + return wifiMapper.selectWifiList(wifi); + } + + /** + * 新增wifi + * + * @param wifi wifi + * @return 结果 + */ + @Override + public int insertWifi(Wifi wifi) + { + wifi.setMerchantId(getUserId()); + wifi.setCreateBy(getUsername()); + wifi.setCreateTime(DateUtils.getNowDate()); + return wifiMapper.insertWifi(wifi); + } + + /** + * 修改wifi + * + * @param wifi wifi + * @return 结果 + */ + @Override + public int updateWifi(Wifi wifi) + { + return wifiMapper.updateWifi(wifi); + } + + /** + * 批量删除wifi + * + * @param wifiIds 需要删除的wifi主键 + * @return 结果 + */ + @Override + public int deleteWifiByWifiIds(Long[] wifiIds) + { + return wifiMapper.deleteWifiByWifiIds(wifiIds); + } + + /** + * 删除wifi信息 + * + * @param wifiId wifi主键 + * @return 结果 + */ + @Override + public int deleteWifiByWifiId(Long wifiId) + { + return wifiMapper.deleteWifiByWifiId(wifiId); + } +}