¶Ô±ÈÐÂÎļþ |
| | |
| | | INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywquickmodel:create', 'æ°å»ºå·¥ä½å° - å¿«æ·æ¨¡å', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0); |
| | | INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywquickmodel:delete', 'å é¤å·¥ä½å° - å¿«æ·æ¨¡å', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0); |
| | | INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywquickmodel:update', 'ä¿®æ¹å·¥ä½å° - å¿«æ·æ¨¡å', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0); |
| | | INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywquickmodel:query', 'æ¥è¯¢å·¥ä½å° - å¿«æ·æ¨¡å', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0); |
| | | INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ywquickmodel:exportExcel', '导åºå·¥ä½å° - å¿«æ·æ¨¡å(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0); |
| | | |
| | |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.dao.business.model.YwContractBill; |
| | | import com.doumee.dao.business.vo.YwContractBillDataVO; |
| | | import com.doumee.service.business.YwContractBillService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | |
| | | return ApiResponse.success("çææå"); |
| | | } |
| | | |
| | | @ApiOperation("è·åå¾
å¤çè´¦å") |
| | | @GetMapping("/getWaitDealList") |
| | | @CloudRequiredPermission("business:ywcontractbill:query") |
| | | public ApiResponse<YwContractBillDataVO> getWaitDealList(@RequestParam Integer contractId,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | return ApiResponse.success(ywContractBillService.getWaitDealList(contractId)); |
| | | } |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.cloud.admin; |
| | | |
| | | import com.doumee.api.BaseController; |
| | | import com.doumee.core.annotation.excel.ExcelExporter; |
| | | import com.doumee.core.annotation.pr.PreventRepeat; |
| | | import com.doumee.core.model.ApiResponse; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.dao.business.model.YwQuickModel; |
| | | import com.doumee.service.business.YwQuickModelService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.apache.shiro.authz.annotation.RequiresPermissions; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author æ±è¹è¹ |
| | | * @date 2025/01/09 17:47 |
| | | */ |
| | | @Api(tags = "å·¥ä½å° - å¿«æ·æ¨¡å") |
| | | @RestController |
| | | @RequestMapping("/business/ywQuickModel") |
| | | public class YwQuickModelCloudController extends BaseController { |
| | | |
| | | @Autowired |
| | | private YwQuickModelService ywQuickModelService; |
| | | |
| | | @PreventRepeat |
| | | @ApiOperation("æ°å»º") |
| | | @PostMapping("/create") |
| | | @RequiresPermissions("business:ywquickmodel:create") |
| | | public ApiResponse create(@RequestBody YwQuickModel ywQuickModel) { |
| | | return ApiResponse.success(ywQuickModelService.create(ywQuickModel)); |
| | | } |
| | | |
| | | @ApiOperation("æ ¹æ®IDå é¤") |
| | | @GetMapping("/delete/{id}") |
| | | @RequiresPermissions("business:ywquickmodel:delete") |
| | | public ApiResponse deleteById(@PathVariable Integer id) { |
| | | ywQuickModelService.deleteById(id); |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("æ¹éå é¤") |
| | | @GetMapping("/delete/batch") |
| | | @RequiresPermissions("business:ywquickmodel:delete") |
| | | public ApiResponse deleteByIdInBatch(@RequestParam String ids) { |
| | | String [] idArray = ids.split(","); |
| | | List<Integer> idList = new ArrayList<>(); |
| | | for (String id : idArray) { |
| | | idList.add(Integer.valueOf(id)); |
| | | } |
| | | ywQuickModelService.deleteByIdInBatch(idList); |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("æ ¹æ®IDä¿®æ¹") |
| | | @PostMapping("/updateById") |
| | | @RequiresPermissions("business:ywquickmodel:update") |
| | | public ApiResponse updateById(@RequestBody YwQuickModel ywQuickModel) { |
| | | ywQuickModelService.updateById(ywQuickModel); |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("å页æ¥è¯¢") |
| | | @PostMapping("/page") |
| | | @RequiresPermissions("business:ywquickmodel:query") |
| | | public ApiResponse<PageData<YwQuickModel>> findPage (@RequestBody PageWrap<YwQuickModel> pageWrap) { |
| | | return ApiResponse.success(ywQuickModelService.findPage(pageWrap)); |
| | | } |
| | | |
| | | @ApiOperation("导åºExcel") |
| | | @PostMapping("/exportExcel") |
| | | @RequiresPermissions("business:ywquickmodel:exportExcel") |
| | | public void exportExcel (@RequestBody PageWrap<YwQuickModel> pageWrap, HttpServletResponse response) { |
| | | ExcelExporter.build(YwQuickModel.class).export(ywQuickModelService.findPage(pageWrap).getRecords(), "å·¥ä½å° - å¿«æ·æ¨¡å", response); |
| | | } |
| | | |
| | | @ApiOperation("æ ¹æ®IDæ¥è¯¢") |
| | | @GetMapping("/{id}") |
| | | @RequiresPermissions("business:ywquickmodel:query") |
| | | public ApiResponse findById(@PathVariable Integer id) { |
| | | return ApiResponse.success(ywQuickModelService.findById(id)); |
| | | } |
| | | } |
| | |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.dao.business.model.YwContractRoom; |
| | | import com.doumee.dao.business.model.YwRoom; |
| | | import com.doumee.dao.business.vo.YwFloorStatusDataVO; |
| | | import com.doumee.dao.business.vo.YwRoomContractDataVO; |
| | | import com.doumee.service.business.YwRoomService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | |
| | | public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | return ApiResponse.success(ywRoomService.findById(id)); |
| | | } |
| | | |
| | | @ApiOperation("æ¥è¯¢æ¿é´æå¿æ°æ®") |
| | | @PostMapping("/getRoomStatusList") |
| | | @CloudRequiredPermission("business:ywroom:query") |
| | | public ApiResponse<List<YwFloorStatusDataVO>> getRoomStatusList (@RequestBody YwRoom model, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | return ApiResponse.success(ywRoomService.getRoomStatusList(model)); |
| | | } |
| | | |
| | | @ApiOperation("æ¥è¯¢æ¿é´ç§èµä¿¡æ¯") |
| | | @PostMapping("/getRoomContract") |
| | | @CloudRequiredPermission("business:ywroom:query") |
| | | public ApiResponse<YwRoomContractDataVO> getRoomContract (@RequestBody YwRoom model, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { |
| | | return ApiResponse.success(ywRoomService.getRoomContract(model)); |
| | | } |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.business; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.doumee.dao.business.model.YwQuickModel; |
| | | import com.github.yulichang.base.MPJBaseMapper; |
| | | |
| | | /** |
| | | * @author æ±è¹è¹ |
| | | * @date 2025/01/09 17:47 |
| | | */ |
| | | public interface YwQuickModelMapper extends MPJBaseMapper<YwQuickModel> { |
| | | |
| | | } |
| | |
| | | @ApiModelProperty(value = "项ç®åç§°") |
| | | @TableField(exist = false) |
| | | private String projectName; |
| | | @ApiModelProperty(value = "æ¿é´è®¡è´¹é¢ç§¯ï¼å¹³æ¹ç±³ï¼", example = "1") |
| | | @TableField(exist = false) |
| | | private BigDecimal roomFeeArea; |
| | | @ApiModelProperty(value = "æ¿é´è®¡ç§é¢ç§¯ï¼å¹³æ¹ç±³ï¼", example = "1") |
| | | @TableField(exist = false) |
| | | private BigDecimal roomRentArea; |
| | | |
| | | } |
| | |
| | | @ApiModelProperty(value = "éæ°å¼å§æ¶é´") |
| | | @TableField(exist = false) |
| | | private Date queryStartTime; |
| | | @ApiModelProperty(value = "ååæ»è´¹ç¨",notes = "åååå§åæ¶éé¢", example = "1") |
| | | @TableField(exist = false) |
| | | private BigDecimal totalFee; |
| | | |
| | | @ApiModelProperty(value = "æ¥è¯¢ç»ææ¶é´") |
| | | @TableField(exist = false) |
| | |
| | | import lombok.Data; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * è¿ç»´å·¡æ£è®¡åä¿¡æ¯è¡¨ |
| | |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date endDateSec; |
| | | |
| | | |
| | | |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.business.model; |
| | | |
| | | import com.doumee.core.annotation.excel.ExcelColumn; |
| | | import com.doumee.core.model.LoginUserModel; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import lombok.Data; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * å·¥ä½å° - å¿«æ·æ¨¡å |
| | | * @author æ±è¹è¹ |
| | | * @date 2025/01/09 17:47 |
| | | */ |
| | | @Data |
| | | @ApiModel("å·¥ä½å° - å¿«æ·æ¨¡å") |
| | | @TableName("`yw_quick_model`") |
| | | public class YwQuickModel extends LoginUserModel { |
| | | |
| | | @TableId(type = IdType.AUTO) |
| | | @ApiModelProperty(value = "主é®", example = "1") |
| | | @ExcelColumn(name="主é®") |
| | | private Integer id; |
| | | |
| | | @ApiModelProperty(value = "å建人ç¼ç ", example = "1") |
| | | @ExcelColumn(name="å建人ç¼ç ") |
| | | private Integer creator; |
| | | |
| | | @ApiModelProperty(value = "å建æ¶é´") |
| | | @ExcelColumn(name="å建æ¶é´") |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date createDate; |
| | | |
| | | @ApiModelProperty(value = "æ´æ°äººç¼ç ", example = "1") |
| | | @ExcelColumn(name="æ´æ°äººç¼ç ") |
| | | private Integer editor; |
| | | |
| | | @ApiModelProperty(value = "æ´æ°æ¶é´") |
| | | @ExcelColumn(name="æ´æ°æ¶é´") |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date editDate; |
| | | |
| | | @ApiModelProperty(value = "æ¯å¦å é¤0å¦ 1æ¯", example = "1") |
| | | @ExcelColumn(name="æ¯å¦å é¤0å¦ 1æ¯") |
| | | private Integer isdeleted; |
| | | |
| | | @ApiModelProperty(value = "ç¨æ·ä¸»é®", example = "1") |
| | | @ExcelColumn(name="ç¨æ·ä¸»é®") |
| | | private Integer userId; |
| | | |
| | | @ApiModelProperty(value = "模ååç§°") |
| | | @ExcelColumn(name="模ååç§°") |
| | | private String name; |
| | | |
| | | @ApiModelProperty(value = "模åå°å") |
| | | @ExcelColumn(name="模åå°å") |
| | | private String path; |
| | | |
| | | @ApiModelProperty(value = "徿 å°å") |
| | | @ExcelColumn(name="徿 å°å") |
| | | private String icoPath; |
| | | |
| | | @ApiModelProperty(value = "æåºç ", example = "1") |
| | | @ExcelColumn(name="æåºç ") |
| | | private Integer sort; |
| | | |
| | | } |
| | |
| | | @ApiModelProperty(value = "æ¿æºåç§°") |
| | | @TableField(exist = false) |
| | | private String roomName; |
| | | @ApiModelProperty(value = "é®é¢ä¸»é®") |
| | | @TableField(exist = false) |
| | | private String problemId; |
| | | @ApiModelProperty(value = "æ¥ä¿®åºå") |
| | | @ExcelColumn(name="æ¥ä¿®åºå",index = 2,width = 10) |
| | | @TableField(exist = false) |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.business.vo; |
| | | |
| | | import com.doumee.dao.system.model.Notices; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * Created by IntelliJ IDEA. |
| | | * |
| | | * @Author : Rk |
| | | * @create 2023/5/6 10:20 |
| | | */ |
| | | @Data |
| | | public class MonthDataResponse { |
| | | |
| | | @ApiModelProperty(value = "æ¥æ") |
| | | private String monthDate; |
| | | |
| | | @ApiModelProperty(value = "å¨å ") |
| | | private String weekMsg; |
| | | |
| | | @ApiModelProperty(value = "éç¥å表") |
| | | private List<Notices> noticeList; |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.business.vo; |
| | | |
| | | import com.doumee.dao.business.model.YwContractBill; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * Created by IntelliJ IDEA. |
| | | * |
| | | * @Author : Rk |
| | | * @create 2025/1/8 15:32 |
| | | */ |
| | | @Data |
| | | public class YwContractBillDataVO { |
| | | |
| | | @ApiModelProperty(value = "æ¶æ¬¾è´¦åæ°", example = "1") |
| | | private Integer inAmount; |
| | | |
| | | @ApiModelProperty(value = "æ¶æ¬¾è´¦åéé¢", example = "1") |
| | | private BigDecimal inFee; |
| | | |
| | | @ApiModelProperty(value = "仿¬¾è´¦åæ°", example = "1") |
| | | private Integer payAmount; |
| | | |
| | | @ApiModelProperty(value = "仿¬¾è´¦åéé¢", example = "1") |
| | | private BigDecimal payFee; |
| | | |
| | | @ApiModelProperty(value = "è´¦åå表", example = "1") |
| | | private List<YwContractBill> ywContractBillList; |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.business.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * Created by IntelliJ IDEA. |
| | | * |
| | | * @Author : Rk |
| | | * @create 2025/1/8 15:32 |
| | | */ |
| | | @Data |
| | | public class YwFloorStatusDataVO { |
| | | |
| | | @ApiModelProperty(value = "楼å±ä¸»é®", example = "1") |
| | | private Integer floorId; |
| | | |
| | | @ApiModelProperty(value = "楼å±é¢ç§¯", example = "1") |
| | | private BigDecimal floorArea; |
| | | |
| | | @ApiModelProperty(value = "楼å±åç§°", example = "1") |
| | | private String floorName; |
| | | |
| | | @ApiModelProperty(value = "æ¥¼å±æ°", example = "1") |
| | | private Integer floor; |
| | | |
| | | @ApiModelProperty(value = "æ¿é´ç¶ææ°æ®", example = "1") |
| | | private List<YwRoomStatusDataVO> ywRoomStatusDataVOList; |
| | | |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.business.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * Created by IntelliJ IDEA. |
| | | * |
| | | * @Author : Rk |
| | | * @create 2025/1/8 15:32 |
| | | */ |
| | | @Data |
| | | public class YwRoomContractDataVO { |
| | | |
| | | @ApiModelProperty(value = "å¨ç§ååæ°", example = "1") |
| | | private Integer leaseContractAmount; |
| | | |
| | | @ApiModelProperty(value = "å¨ç§åæ¿æºæ°", example = "1") |
| | | private Integer leaseRoomAmount; |
| | | |
| | | @ApiModelProperty(value = "坿åé¢ç§¯", example = "1") |
| | | private BigDecimal investmentArea; |
| | | |
| | | @ApiModelProperty(value = "å¯æåæ¿æºæ°", example = "1") |
| | | private Integer investmentRoomAmount; |
| | | |
| | | @ApiModelProperty(value = "å¨ç§å®æ¶åä»·", example = "1") |
| | | private BigDecimal leasePrice; |
| | | |
| | | @ApiModelProperty(value = "å¨ç§é¢ç§¯", example = "1") |
| | | private BigDecimal leaseArea; |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.business.vo; |
| | | |
| | | import com.doumee.core.annotation.excel.ExcelColumn; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * Created by IntelliJ IDEA. |
| | | * |
| | | * @Author : Rk |
| | | * @create 2025/1/8 15:32 |
| | | */ |
| | | @Data |
| | | public class YwRoomStatusDataVO { |
| | | |
| | | @ApiModelProperty(value = "楼å±ä¸»é®", example = "1") |
| | | private Integer floorId; |
| | | |
| | | @ApiModelProperty(value = "æ¿é´ä¸»é®", example = "1") |
| | | private Integer roomId; |
| | | |
| | | @ApiModelProperty(value = "æ¿é´ç¼å·", example = "1") |
| | | private String roomCode; |
| | | |
| | | @ApiModelProperty(value = "计ç§é¢ç§¯ï¼å¹³æ¹ç±³ï¼", example = "1") |
| | | private BigDecimal roomRentArea; |
| | | |
| | | @ApiModelProperty(value = "ç§å®¢åç§°", example = "1") |
| | | private String customerName; |
| | | |
| | | @ApiModelProperty(value = "æ¿é´ç¶æï¼0=å¾
ç§ï¼1=å·²ç§ï¼2=å³å°å°æ", example = "1") |
| | | private Integer roomStatus; |
| | | |
| | | @ApiModelProperty(value = "å°ææ¥æ", example = "1") |
| | | private Date overData; |
| | | |
| | | @ApiModelProperty(value = "空é²å¤©æ°", example = "1") |
| | | private Integer freeDayAmount; |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.service.business; |
| | | |
| | | import com.doumee.core.model.LoginUserInfo; |
| | | import com.doumee.dao.business.model.YwQuickModel; |
| | | import com.doumee.dao.business.vo.MonthDataResponse; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 审æ¹ä¿¡æ¯è®°å½è¡¨Serviceå®ä¹ |
| | | * @author æ±è¹è¹ |
| | | * @date 2023/12/28 14:09 |
| | | */ |
| | | public interface WorkbenchesService { |
| | | |
| | | |
| | | List<YwQuickModel> getYwQuickList(LoginUserInfo loginUserInfo); |
| | | |
| | | void updMyYwQuickModel(List<Integer> idList, LoginUserInfo loginUserInfo); |
| | | |
| | | List<MonthDataResponse> getMonthNotices(String yearMonth, LoginUserInfo loginUserInfo); |
| | | } |
| | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.dao.business.model.YwContractBill; |
| | | import com.doumee.dao.business.vo.YwContractBillDataVO; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | void dealDayBillCode(); |
| | | |
| | | List<YwContractBill> getCanBackBill(YwContractBill model); |
| | | |
| | | |
| | | YwContractBillDataVO getWaitDealList(Integer contractId); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.service.business; |
| | | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.dao.business.model.YwQuickModel; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * å·¥ä½å° - å¿«æ·æ¨¡åServiceå®ä¹ |
| | | * @author æ±è¹è¹ |
| | | * @date 2025/01/09 17:47 |
| | | */ |
| | | public interface YwQuickModelService { |
| | | |
| | | /** |
| | | * å建 |
| | | * |
| | | * @param ywQuickModel å®ä½å¯¹è±¡ |
| | | * @return Integer |
| | | */ |
| | | Integer create(YwQuickModel ywQuickModel); |
| | | |
| | | /** |
| | | * 主é®å é¤ |
| | | * |
| | | * @param id ä¸»é® |
| | | */ |
| | | void deleteById(Integer id); |
| | | |
| | | /** |
| | | * å é¤ |
| | | * |
| | | * @param ywQuickModel å®ä½å¯¹è±¡ |
| | | */ |
| | | void delete(YwQuickModel ywQuickModel); |
| | | |
| | | /** |
| | | * æ¹é主é®å é¤ |
| | | * |
| | | * @param ids 主é®é |
| | | */ |
| | | void deleteByIdInBatch(List<Integer> ids); |
| | | |
| | | /** |
| | | * 䏻鮿´æ° |
| | | * |
| | | * @param ywQuickModel å®ä½å¯¹è±¡ |
| | | */ |
| | | void updateById(YwQuickModel ywQuickModel); |
| | | |
| | | /** |
| | | * æ¹é䏻鮿´æ° |
| | | * |
| | | * @param ywQuickModels å®ä½é |
| | | */ |
| | | void updateByIdInBatch(List<YwQuickModel> ywQuickModels); |
| | | |
| | | /** |
| | | * 䏻鮿¥è¯¢ |
| | | * |
| | | * @param id ä¸»é® |
| | | * @return YwQuickModel |
| | | */ |
| | | YwQuickModel findById(Integer id); |
| | | |
| | | /** |
| | | * æ¡ä»¶æ¥è¯¢åæ¡è®°å½ |
| | | * |
| | | * @param ywQuickModel å®ä½å¯¹è±¡ |
| | | * @return YwQuickModel |
| | | */ |
| | | YwQuickModel findOne(YwQuickModel ywQuickModel); |
| | | |
| | | /** |
| | | * æ¡ä»¶æ¥è¯¢ |
| | | * |
| | | * @param ywQuickModel å®ä½å¯¹è±¡ |
| | | * @return List<YwQuickModel> |
| | | */ |
| | | List<YwQuickModel> findList(YwQuickModel ywQuickModel); |
| | | |
| | | /** |
| | | * å页æ¥è¯¢ |
| | | * |
| | | * @param pageWrap å页对象 |
| | | * @return PageData<YwQuickModel> |
| | | */ |
| | | PageData<YwQuickModel> findPage(PageWrap<YwQuickModel> pageWrap); |
| | | |
| | | /** |
| | | * æ¡ä»¶ç»è®¡ |
| | | * |
| | | * @param ywQuickModel å®ä½å¯¹è±¡ |
| | | * @return long |
| | | */ |
| | | long count(YwQuickModel ywQuickModel); |
| | | } |
| | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.dao.business.model.YwRoom; |
| | | import com.doumee.dao.business.vo.YwFloorStatusDataVO; |
| | | import com.doumee.dao.business.vo.YwRoomContractDataVO; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | * @return long |
| | | */ |
| | | long count(YwRoom ywRoom); |
| | | |
| | | List<YwFloorStatusDataVO> getRoomStatusList(YwRoom model); |
| | | |
| | | |
| | | YwRoomContractDataVO getRoomContract(YwRoom model); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.service.business.impl; |
| | | |
| | | import com.alibaba.druid.sql.visitor.functions.Concat; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.model.LoginUserInfo; |
| | | import com.doumee.core.model.LoginUserModel; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.dao.business.ApproveParamMapper; |
| | | import com.doumee.dao.business.PlatformLogMapper; |
| | | import com.doumee.dao.business.YwQuickModelMapper; |
| | | import com.doumee.dao.business.model.YwQuickModel; |
| | | import com.doumee.dao.business.vo.MonthDataResponse; |
| | | import com.doumee.service.business.WorkbenchesService; |
| | | import com.github.xiaoymin.knife4j.core.util.CollectionUtils; |
| | | import io.jsonwebtoken.lang.Objects; |
| | | import io.swagger.models.auth.In; |
| | | import org.apache.tomcat.util.bcel.classfile.Constant; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * å®¡æ¹æ¨¡çé
置信æ¯è¡¨Serviceå®ç° |
| | | * @author æ±è¹è¹ |
| | | * @date 2023/12/28 11:46 |
| | | */ |
| | | @Service |
| | | public class WorkbenchesServiceImpl implements WorkbenchesService { |
| | | |
| | | |
| | | @Autowired |
| | | private YwQuickModelMapper ywQuickModelMapper; |
| | | |
| | | |
| | | |
| | | @Override |
| | | public List<YwQuickModel> getYwQuickList(LoginUserInfo loginUserInfo){ |
| | | List<YwQuickModel> ywQuickModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda() |
| | | .eq(YwQuickModel::getIsdeleted, Constants.ZERO) |
| | | .eq(YwQuickModel::getUserId,loginUserInfo.getId()) |
| | | .orderByAsc(YwQuickModel::getSort) |
| | | ); |
| | | if(CollectionUtils.isEmpty(ywQuickModelList)){ |
| | | ywQuickModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda() |
| | | .eq(YwQuickModel::getIsdeleted, Constants.ZERO) |
| | | .isNull(YwQuickModel::getUserId) |
| | | .orderByAsc(YwQuickModel::getSort) |
| | | ); |
| | | } |
| | | return ywQuickModelList; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public void updMyYwQuickModel(List<Integer> idList, LoginUserInfo loginUserInfo){ |
| | | List<YwQuickModel> ywQuickModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda() |
| | | .eq(YwQuickModel::getIsdeleted, Constants.ZERO) |
| | | .isNull(YwQuickModel::getUserId) |
| | | .orderByAsc(YwQuickModel::getSort) |
| | | ); |
| | | if(CollectionUtils.isEmpty(ywQuickModelList) || Constants.equalsInteger(idList.size(),ywQuickModelList.size())){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"å¿«æ·æ¨¡åé
ç½®å¼å¸¸,请è系管çå"); |
| | | } |
| | | ywQuickModelMapper.delete(new QueryWrapper<YwQuickModel>().lambda().eq(YwQuickModel::getUserId,loginUserInfo.getId())); |
| | | List<YwQuickModel> newList = new ArrayList<>(); |
| | | for (int i = 0; i < idList.size(); i++) { |
| | | Integer id = idList.get(i); |
| | | List<YwQuickModel> ywQuickModels = ywQuickModelList.stream().filter(j->Constants.equalsInteger(j.getId(),id)).collect(Collectors.toList()); |
| | | if(CollectionUtils.isEmpty(ywQuickModels)){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"å¿«æ·æ¨¡åé
ç½®å¼å¸¸,请è系管çå"); |
| | | } |
| | | YwQuickModel ywQuickModel = ywQuickModels.get(Constants.ZERO); |
| | | ywQuickModel.setId(null); |
| | | ywQuickModel.setCreator(loginUserInfo.getId()); |
| | | ywQuickModel.setCreateDate(new Date()); |
| | | ywQuickModel.setSort(i+1); |
| | | ywQuickModel.setUserId(loginUserInfo.getId()); |
| | | newList.add(ywQuickModel); |
| | | } |
| | | ywQuickModelMapper.insert(newList); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public List<MonthDataResponse> getMonthNotices(String yearMonth, LoginUserInfo loginUserInfo){ |
| | | List<String> dataList = DateUtil.getDayByMonth(yearMonth); |
| | | List<MonthDataResponse> monthDataResponseList = new ArrayList<>(); |
| | | for (String str:dataList) { |
| | | MonthDataResponse monthDataResponse = new MonthDataResponse(); |
| | | monthDataResponse.setWeekMsg(DateUtil.getWeek(DateUtil.StringToDate(str,"yyyy-MM-dd")).getChineseName()); |
| | | monthDataResponse.setMonthDate(str); |
| | | |
| | | monthDataResponseList.add(monthDataResponse); |
| | | } |
| | | return monthDataResponseList; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | |
| | | @Override |
| | | public YwBuilding findById(Integer id) { |
| | | |
| | | |
| | | MPJLambdaWrapper<YwBuilding> queryWrapper = new MPJLambdaWrapper<>(); |
| | | queryWrapper.selectAll(YwBuilding.class ) |
| | | .selectAs(YwProject::getName,YwBuilding::getProjectName) |
| | | .select(" (select ifnull(sum(y.FEE_AREA),0) from yw_room y where y.ISDELETED = 0 and y.status = 0 and y.IS_INVESTMENT = 1 and y.BUILDING_ID = t.id ) ",YwBuilding::getRoomFeeArea) |
| | | .select(" (select ifnull(sum(y.RENT_AREA),0) from yw_room y where y.ISDELETED = 0 and y.status = 0 and y.IS_INVESTMENT = 1 and y.BUILDING_ID = t.id ) ",YwBuilding::getRoomRentArea) |
| | | .select("",YwBuilding::getRoomFeeArea) |
| | | .leftJoin(YwProject.class,YwProject::getId,YwBuilding::getProjectId) |
| | | .eq(YwBuilding::getId,id) |
| | | .last(" limit 1 ") |
| | |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.*; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.business.vo.YwContractBillDataVO; |
| | | import com.doumee.dao.system.MultifileMapper; |
| | | import com.doumee.dao.system.model.Multifile; |
| | | import com.doumee.dao.system.model.SystemUser; |
| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.checkerframework.checker.units.qual.C; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | |
| | | YwContractBill model = pageWrap.getModel(); |
| | | IPage<YwContractBill> iPage = ywContractBillMapper.selectJoinPage(page,YwContractBill.class, |
| | | queryWrapper.selectAll(YwContractBill.class) |
| | | // .select(" ( select ifnull(sum(case when yw.REVENUE_TYPE = 0 then yw.ACT_RECEIVABLE_FEE else -yw.ACT_RECEIVABLE_FEE end),0) from yw_contract_revenue yw where yw.bill_id = t.id and yw.status = 0 and yw.isdeleted = 0 ) as actReceivableFee ") |
| | | .select(" ( select ifnull( sum( CASE WHEN t.bill_type = 0 and yw.REVENUE_TYPE = 0 THEN yw.ACT_RECEIVABLE_FEE when t.bill_type = 0 and yw.REVENUE_TYPE = 1 then -yw.ACT_RECEIVABLE_FEE when t.bill_type = 1 and yw.REVENUE_TYPE = 0 then -yw.ACT_RECEIVABLE_FEE else yw.ACT_RECEIVABLE_FEE END),0) from yw_contract_revenue yw where yw.bill_id = t.id and yw.status = 0 and yw.isdeleted = 0 ) as actReceivableFee ") |
| | | .selectAs(YwContract::getCode,YwContractBill::getContractCode) |
| | | .selectAs(YwCustomer::getName,YwContractBill::getCustomerName) |
| | |
| | | return list; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public YwContractBillDataVO getWaitDealList(Integer contractId){ |
| | | YwContractBillDataVO ywContractBillDataVO = new YwContractBillDataVO(); |
| | | ywContractBillDataVO.setInAmount(Constants.ZERO); |
| | | ywContractBillDataVO.setInFee(BigDecimal.ZERO); |
| | | ywContractBillDataVO.setPayAmount(Constants.ZERO); |
| | | ywContractBillDataVO.setPayFee(BigDecimal.ZERO); |
| | | MPJLambdaWrapper<YwContractBill> queryWrapper = new MPJLambdaWrapper<YwContractBill>(); |
| | | queryWrapper.selectAll(YwContractBill.class) |
| | | .select(" ( select ifnull( sum( CASE WHEN t.bill_type = 0 and yw.REVENUE_TYPE = 0 THEN yw.ACT_RECEIVABLE_FEE when t.bill_type = 0 and yw.REVENUE_TYPE = 1 then -yw.ACT_RECEIVABLE_FEE when t.bill_type = 1 and yw.REVENUE_TYPE = 0 then -yw.ACT_RECEIVABLE_FEE else yw.ACT_RECEIVABLE_FEE END),0) from yw_contract_revenue yw where yw.bill_id = t.id and yw.status = 0 and yw.isdeleted = 0 ) as actReceivableFee ") |
| | | .selectAs(YwContract::getCode,YwContractBill::getContractCode) |
| | | .selectAs(YwCustomer::getName,YwContractBill::getCustomerName) |
| | | .leftJoin(YwContract.class,YwContract::getId,YwContractBill::getContractId) |
| | | .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId) |
| | | .eq(YwContractBill::getIsdeleted,Constants.ZERO) |
| | | .in(YwContractBill::getPayStatus,Constants.ZERO,Constants.TWO,Constants.THREE,Constants.FOUR) |
| | | .eq(YwContractBill::getContractId,contractId) |
| | | .orderByDesc(YwContractBill::getId); |
| | | List<YwContractBill> list = ywContractBillMapper.selectJoinList(YwContractBill.class,queryWrapper); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(list)){ |
| | | for (YwContractBill ywContractBill:list) { |
| | | //éæ¶éé¢ |
| | | ywContractBill.setNeedReceivableFee( |
| | | ywContractBill.getReceivableFee().subtract(ywContractBill.getActReceivableFee()) |
| | | ); |
| | | //æ¶æ¬¾è´¦å |
| | | if(Constants.equalsInteger(ywContractBill.getBillType(),Constants.ZERO)){ |
| | | //åºæ¶éé¢ å°äº 宿¶éé¢ å¤æ¶éé¢ åºè¯¥æ¯é款 |
| | | if(ywContractBill.getNeedReceivableFee().compareTo(BigDecimal.ZERO)<Constants.ZERO){ |
| | | ywContractBillDataVO.setPayAmount(ywContractBillDataVO.getPayAmount()+1); |
| | | ywContractBillDataVO.setPayFee(ywContractBillDataVO.getPayFee().add(ywContractBill.getNeedReceivableFee().abs())); |
| | | }else if(ywContractBill.getNeedReceivableFee().compareTo(BigDecimal.ZERO)>Constants.ZERO){ |
| | | ywContractBillDataVO.setInAmount(ywContractBillDataVO.getInAmount()+1); |
| | | ywContractBillDataVO.setInFee(ywContractBillDataVO.getInFee().add(ywContractBill.getNeedReceivableFee().abs())); |
| | | } |
| | | }else{ |
| | | //仿¬¾è´¦å |
| | | //åºä»éé¢ å°äº å®ä»éé¢ åºè¯¥æ¯ä»æ¬¾æ¬¾ |
| | | if(ywContractBill.getNeedReceivableFee().compareTo(BigDecimal.ZERO)<Constants.ZERO){ |
| | | ywContractBillDataVO.setPayAmount(ywContractBillDataVO.getPayAmount()+1); |
| | | ywContractBillDataVO.setPayFee(ywContractBillDataVO.getPayFee().add(ywContractBill.getNeedReceivableFee().abs())); |
| | | }else{ |
| | | ywContractBillDataVO.setInAmount(ywContractBillDataVO.getInAmount()+1); |
| | | ywContractBillDataVO.setInFee(ywContractBillDataVO.getInFee().add(ywContractBill.getNeedReceivableFee().abs())); |
| | | } |
| | | } |
| | | } |
| | | ywContractBillDataVO.setYwContractBillList(list); |
| | | } |
| | | |
| | | return ywContractBillDataVO; |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | import com.doumee.dao.business.YwPatrolTaskMapper; |
| | | import com.doumee.dao.business.YwPatrolTaskRecordMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.system.SystemUserMapper; |
| | | import com.doumee.dao.system.model.SystemUser; |
| | | import com.doumee.service.business.YwPatrolSchemeService; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | |
| | | private YwLinePointMapper ywLinePointMapper; |
| | | @Autowired |
| | | private YwPatrolTaskRecordMapper ywPatrolTaskRecordMapper; |
| | | @Autowired |
| | | private SystemUserMapper systemUserMapper; |
| | | @Autowired |
| | | private RedisTemplate<String, Object> redisTemplate; |
| | | |
| | |
| | | YwPatrolScheme model = pageWrap.getModel(); |
| | | queryWrapper.selectAll(YwPatrolScheme.class) |
| | | .select(" t2.realName as createUserName ") |
| | | .select(" t1.realName as userName ") |
| | | .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolScheme::getUserIds) |
| | | // .select(" t1.realName as userName ") |
| | | // .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolScheme::getUserIds) |
| | | .leftJoin(" system_user t2 on t.creator = t2.id ") |
| | | .eq(YwPatrolScheme::getIsdeleted,Constants.ZERO) |
| | | .like(StringUtils.isNotBlank(model.getTitle()),YwPatrolScheme::getTitle,model.getTitle()) |
| | |
| | | IPage<YwPatrolScheme> iPage = ywPatrolSchemeMapper.selectJoinPage(page,YwPatrolScheme.class,queryWrapper); |
| | | for (YwPatrolScheme ywPatrolScheme:iPage.getRecords()) { |
| | | this.getSchemeStatus(ywPatrolScheme); |
| | | //å·¡æ£äººå |
| | | this.getUserNames(ywPatrolScheme); |
| | | } |
| | | return PageData.from(iPage); |
| | | } |
| | | |
| | | |
| | | public void getUserNames(YwPatrolScheme ywPatrolScheme){ |
| | | if(Objects.nonNull(ywPatrolScheme)&&StringUtils.isNotBlank(ywPatrolScheme.getUserIds())){ |
| | | List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda() |
| | | .apply(" find_in_set(id,'"+ywPatrolScheme.getUserIds()+"') ") |
| | | ); |
| | | String userName = String.join(",",systemUserList.stream().map(i->i.getRealname()).collect(Collectors.toList())); |
| | | ywPatrolScheme.setUserName(userName); |
| | | } |
| | | } |
| | | |
| | | |
| | | //è·åç¶æ |
| | | public void getSchemeStatus(YwPatrolScheme ywPatrolScheme){ |
| | | List<YwPatrolTask> ywPatrolTaskList = ywPatrolTaskMapper.selectList(new QueryWrapper<YwPatrolTask>().lambda() |
| | |
| | | |
| | | @Override |
| | | public YwProject findById(Integer id) { |
| | | return ywProjectMapper.selectById(id); |
| | | YwProject ywProject = ywProjectMapper.selectById(id); |
| | | if(Objects.isNull(ywProject)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY); |
| | | } |
| | | if(Objects.nonNull(ywProject.getAreaId())){ |
| | | Areas a = areasService.findById(ywProject.getAreaId(),Constants.TWO); |
| | | if(a != null){ |
| | | ywProject.setAreaName(a.getName()); |
| | | ywProject.setCityId(a.getCityId()); |
| | | ywProject.setCityName(a.getCityName()); |
| | | ywProject.setProvinceId(a.getProvinceId()); |
| | | ywProject.setProvinceName(a.getProvinceName()); |
| | | } |
| | | } |
| | | return ywProject; |
| | | } |
| | | |
| | | @Override |
| | |
| | | ProjectTree treeBuild = new ProjectTree(projectDataVOList); |
| | | projectDataVOList = treeBuild.buildTree(); |
| | | return projectDataVOList; |
| | | |
| | | } |
| | | |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.service.business.impl; |
| | | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.YwQuickModelMapper; |
| | | import com.doumee.dao.business.model.YwQuickModel; |
| | | import com.doumee.service.business.YwQuickModelService; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * å·¥ä½å° - å¿«æ·æ¨¡åServiceå®ç° |
| | | * @author æ±è¹è¹ |
| | | * @date 2025/01/09 17:47 |
| | | */ |
| | | @Service |
| | | public class YwQuickModelServiceImpl implements YwQuickModelService { |
| | | |
| | | @Autowired |
| | | private YwQuickModelMapper ywQuickModelMapper; |
| | | |
| | | @Override |
| | | public Integer create(YwQuickModel ywQuickModel) { |
| | | ywQuickModelMapper.insert(ywQuickModel); |
| | | return ywQuickModel.getId(); |
| | | } |
| | | |
| | | @Override |
| | | public void deleteById(Integer id) { |
| | | ywQuickModelMapper.deleteById(id); |
| | | } |
| | | |
| | | @Override |
| | | public void delete(YwQuickModel ywQuickModel) { |
| | | UpdateWrapper<YwQuickModel> deleteWrapper = new UpdateWrapper<>(ywQuickModel); |
| | | ywQuickModelMapper.delete(deleteWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public void deleteByIdInBatch(List<Integer> ids) { |
| | | if (CollectionUtils.isEmpty(ids)) { |
| | | return; |
| | | } |
| | | ywQuickModelMapper.deleteBatchIds(ids); |
| | | } |
| | | |
| | | @Override |
| | | public void updateById(YwQuickModel ywQuickModel) { |
| | | ywQuickModelMapper.updateById(ywQuickModel); |
| | | } |
| | | |
| | | @Override |
| | | public void updateByIdInBatch(List<YwQuickModel> ywQuickModels) { |
| | | if (CollectionUtils.isEmpty(ywQuickModels)) { |
| | | return; |
| | | } |
| | | for (YwQuickModel ywQuickModel: ywQuickModels) { |
| | | this.updateById(ywQuickModel); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public YwQuickModel findById(Integer id) { |
| | | return ywQuickModelMapper.selectById(id); |
| | | } |
| | | |
| | | @Override |
| | | public YwQuickModel findOne(YwQuickModel ywQuickModel) { |
| | | QueryWrapper<YwQuickModel> wrapper = new QueryWrapper<>(ywQuickModel); |
| | | return ywQuickModelMapper.selectOne(wrapper); |
| | | } |
| | | |
| | | @Override |
| | | public List<YwQuickModel> findList(YwQuickModel ywQuickModel) { |
| | | QueryWrapper<YwQuickModel> wrapper = new QueryWrapper<>(ywQuickModel); |
| | | return ywQuickModelMapper.selectList(wrapper); |
| | | } |
| | | |
| | | @Override |
| | | public PageData<YwQuickModel> findPage(PageWrap<YwQuickModel> pageWrap) { |
| | | IPage<YwQuickModel> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<YwQuickModel> queryWrapper = new QueryWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getId() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getId, pageWrap.getModel().getId()); |
| | | } |
| | | if (pageWrap.getModel().getCreator() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getCreator, pageWrap.getModel().getCreator()); |
| | | } |
| | | if (pageWrap.getModel().getCreateDate() != null) { |
| | | queryWrapper.lambda().ge(YwQuickModel::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.lambda().le(YwQuickModel::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); |
| | | } |
| | | if (pageWrap.getModel().getEditor() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getEditor, pageWrap.getModel().getEditor()); |
| | | } |
| | | if (pageWrap.getModel().getEditDate() != null) { |
| | | queryWrapper.lambda().ge(YwQuickModel::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); |
| | | queryWrapper.lambda().le(YwQuickModel::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); |
| | | } |
| | | if (pageWrap.getModel().getIsdeleted() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getIsdeleted, pageWrap.getModel().getIsdeleted()); |
| | | } |
| | | if (pageWrap.getModel().getUserId() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getUserId, pageWrap.getModel().getUserId()); |
| | | } |
| | | if (pageWrap.getModel().getName() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getName, pageWrap.getModel().getName()); |
| | | } |
| | | if (pageWrap.getModel().getPath() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getPath, pageWrap.getModel().getPath()); |
| | | } |
| | | if (pageWrap.getModel().getIcoPath() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getIcoPath, pageWrap.getModel().getIcoPath()); |
| | | } |
| | | if (pageWrap.getModel().getSort() != null) { |
| | | queryWrapper.lambda().eq(YwQuickModel::getSort, pageWrap.getModel().getSort()); |
| | | } |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | | queryWrapper.orderByDesc(sortData.getProperty()); |
| | | } else { |
| | | queryWrapper.orderByAsc(sortData.getProperty()); |
| | | } |
| | | } |
| | | return PageData.from(ywQuickModelMapper.selectPage(page, queryWrapper)); |
| | | } |
| | | |
| | | @Override |
| | | public long count(YwQuickModel ywQuickModel) { |
| | | QueryWrapper<YwQuickModel> wrapper = new QueryWrapper<>(ywQuickModel); |
| | | return ywQuickModelMapper.selectCount(wrapper); |
| | | } |
| | | } |
| | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.YwBuildingMapper; |
| | | import com.doumee.dao.business.YwContractRoomMapper; |
| | | import com.doumee.dao.business.YwRoomMapper; |
| | | import com.doumee.dao.business.YwWorkorderMapper; |
| | | import com.doumee.dao.business.*; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.business.vo.YwFloorStatusDataVO; |
| | | import com.doumee.dao.business.vo.YwRoomContractDataVO; |
| | | import com.doumee.dao.business.vo.YwRoomStatusDataVO; |
| | | import com.doumee.service.business.YwRoomService; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * è¿ç»´æ¿æºä¿¡æ¯è¡¨Serviceå®ç° |
| | |
| | | @Autowired |
| | | private YwContractRoomMapper ywContractRoomMapper; |
| | | @Autowired |
| | | private YwContractMapper ywContractMapper; |
| | | |
| | | @Autowired |
| | | private YwWorkorderMapper ywWorkorderMapper; |
| | | @Autowired |
| | | private YwFloorMapper ywFloorMapper; |
| | | |
| | | |
| | | @Override |
| | | public Integer create(YwRoom model) { |
| | |
| | | QueryWrapper<YwRoom> wrapper = new QueryWrapper<>(ywRoom); |
| | | return ywRoomMapper.selectCount(wrapper); |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | | public List<YwFloorStatusDataVO> getRoomStatusList(YwRoom model){ |
| | | if(Objects.isNull(model) |
| | | || (Objects.isNull(model.getBuildingId()) && Objects.isNull(model.getFloor()))){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | List<YwFloorStatusDataVO> ywFloorStatusDataVOList = new ArrayList<>(); |
| | | List<YwFloor> ywFloorList = ywFloorMapper.selectList(new QueryWrapper<YwFloor>().lambda() |
| | | .eq(YwFloor::getIsdeleted,Constants.ZERO) |
| | | .eq(Objects.nonNull(model.getBuildingId()),YwFloor::getBuildingId,model.getBuildingId()) |
| | | .eq(Objects.nonNull(model.getFloor()),YwFloor::getId,model.getFloor()) |
| | | .orderByAsc(YwFloor::getFloor) |
| | | ); |
| | | List<YwRoom> ywRoomList = ywRoomMapper.selectList(new QueryWrapper<YwRoom>().lambda() |
| | | .eq(YwRoom::getIsdeleted,Constants.ZERO) |
| | | .eq(YwRoom::getIsInvestment,Constants.ONE) |
| | | .eq(YwRoom::getStatus,Constants.ZERO) |
| | | .eq(Objects.nonNull(model.getBuildingId()),YwRoom::getBuildingId,model.getBuildingId()) |
| | | .eq(Objects.nonNull(model.getFloor()),YwRoom::getFloor,model.getFloor()) |
| | | .orderByAsc(YwRoom::getSortnum) |
| | | ); |
| | | List<YwRoomStatusDataVO> roomStatusDataList = new ArrayList<>(); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywRoomList)){ |
| | | for (YwRoom ywRoom:ywRoomList) { |
| | | YwRoomStatusDataVO roomStatusDataVO = new YwRoomStatusDataVO(); |
| | | roomStatusDataVO.setFloorId(ywRoom.getFloor()); |
| | | roomStatusDataVO.setRoomId(ywRoom.getId()); |
| | | roomStatusDataVO.setRoomCode(ywRoom.getCode()); |
| | | roomStatusDataVO.setRoomRentArea(ywRoom.getRentArea()); |
| | | |
| | | List<YwContract> roomContractList = ywContractMapper.selectJoinList(YwContract.class,new MPJLambdaWrapper<YwContract>() |
| | | .selectAll(YwContract.class) |
| | | .selectAs(YwCustomer::getName,YwContract::getRenterName) |
| | | .leftJoin(YwContractRoom.class,YwContractRoom::getContractId,YwContract::getId) |
| | | .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId) |
| | | .eq(YwContract::getIsdeleted,Constants.ZERO) |
| | | .ge(YwContract::getStartDate, DateUtil.getCurrDateTime()) |
| | | .eq(YwContractRoom::getType,Constants.ZERO) |
| | | .eq(YwContractRoom::getRoomId,ywRoom.getId()) |
| | | .ne(YwContract::getBillStatus,Constants.THREE) |
| | | .orderByDesc(YwContract::getStartDate) |
| | | ); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(roomContractList)){ |
| | | roomStatusDataVO.setRoomStatus(Constants.ZERO); |
| | | roomStatusDataVO.setFreeDayAmount(Constants.ZERO); |
| | | }else{ |
| | | YwContract ywContract = roomContractList.get(Constants.ZERO); |
| | | //ååç¶æ 0å¾
æ§è¡ 1æ§è¡ä¸ 2已尿 3éç§ä¸ 4å·²éç§ |
| | | //å¾
æ§è¡/æ§è¡ä¸/éç§ä¸ åå±äºå·²åºç§ æ ¹æ®å
·ä½å°ææ¶é´å¤ææ¯å¦å¤äºå³å°å°æ 90天 |
| | | if(Constants.equalsInteger(ywContract.getStatus(),Constants.ZERO)||Constants.equalsInteger(ywContract.getStatus(),Constants.ONE)|| |
| | | Constants.equalsInteger(ywContract.getStatus(),Constants.THREE)){ |
| | | roomStatusDataVO.setRoomStatus(Constants.ONE); |
| | | roomStatusDataVO.setCustomerName(ywContract.getRenterName()); |
| | | if(Constants.equalsInteger(ywContract.getStatus(),Constants.THREE)){ |
| | | if(Objects.nonNull(ywContract.getBtDate()) && DateUtil.getBetweenDays(DateUtil.getFomartDate(ywContract.getBtDate(),"yyyy-MM-dd"),DateUtil.getFomartDate(new Date(),"yyyy-MM-dd"))<=90){ |
| | | roomStatusDataVO.setRoomStatus(Constants.TWO); |
| | | roomStatusDataVO.setOverData(ywContract.getBtDate()); |
| | | } |
| | | }else{ |
| | | if(Objects.nonNull(ywContract.getEndDate()) && DateUtil.getBetweenDays(DateUtil.getFomartDate(ywContract.getEndDate(),"yyyy-MM-dd"),DateUtil.getFomartDate(new Date(),"yyyy-MM-dd"))<=90){ |
| | | roomStatusDataVO.setRoomStatus(Constants.TWO); |
| | | roomStatusDataVO.setOverData(ywContract.getEndDate()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | roomStatusDataList.add(roomStatusDataVO); |
| | | } |
| | | } |
| | | for (YwFloor ywFloor:ywFloorList) { |
| | | YwFloorStatusDataVO ywFloorStatusDataVO = new YwFloorStatusDataVO(); |
| | | ywFloorStatusDataVO.setFloor(ywFloor.getFloor()); |
| | | ywFloorStatusDataVO.setFloorId(ywFloor.getId()); |
| | | ywFloorStatusDataVO.setFloorArea(ywFloor.getArea()); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(roomStatusDataList)){ |
| | | List<YwRoomStatusDataVO> floorRoomList = roomStatusDataList.stream().filter(i->Objects.nonNull(i.getFloorId())&&Constants.equalsInteger(i.getFloorId(),ywFloor.getId())).collect(Collectors.toList()); |
| | | ywFloorStatusDataVO.setYwRoomStatusDataVOList(floorRoomList); |
| | | } |
| | | ywFloorStatusDataVOList.add(ywFloorStatusDataVO); |
| | | } |
| | | return ywFloorStatusDataVOList; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public YwRoomContractDataVO getRoomContract(YwRoom model){ |
| | | if(Objects.isNull(model) |
| | | || (Objects.isNull(model.getBuildingId()) && Objects.isNull(model.getProjectId()))){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | YwRoomContractDataVO ywRoomContractDataVO = new YwRoomContractDataVO(); |
| | | ywRoomContractDataVO.setInvestmentRoomAmount(Constants.ZERO); |
| | | ywRoomContractDataVO.setInvestmentArea(BigDecimal.ZERO); |
| | | ywRoomContractDataVO.setLeaseContractAmount(Constants.ZERO); |
| | | ywRoomContractDataVO.setLeasePrice(BigDecimal.ZERO); |
| | | ywRoomContractDataVO.setLeaseArea(BigDecimal.ZERO); |
| | | ywRoomContractDataVO.setLeaseRoomAmount(Constants.ZERO); |
| | | |
| | | List<YwRoom> ywRoomList = ywRoomMapper.selectList(new QueryWrapper<YwRoom>().lambda() |
| | | .eq(YwRoom::getIsdeleted,Constants.ZERO) |
| | | .eq(YwRoom::getStatus,Constants.ZERO) |
| | | .eq(YwRoom::getIsInvestment,Constants.ONE) |
| | | .eq(Objects.nonNull(model.getBuildingId()),YwRoom::getBuildingId,model.getBuildingId()) |
| | | .eq(Objects.nonNull(model.getProjectId()),YwRoom::getProjectId,model.getProjectId()) |
| | | .orderByAsc(YwRoom::getSortnum) |
| | | ); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(ywRoomList)){ |
| | | return ywRoomContractDataVO; |
| | | } |
| | | ywRoomContractDataVO.setInvestmentRoomAmount(ywRoomList.size()); |
| | | ywRoomContractDataVO.setInvestmentArea(ywRoomList.stream().filter(i->Objects.nonNull(i.getRentArea())).map(i->i.getRentArea()).reduce(BigDecimal.ZERO,BigDecimal::add)); |
| | | |
| | | List<YwContract> roomContractList = ywContractMapper.selectJoinList(YwContract.class,new MPJLambdaWrapper<YwContract>() |
| | | .selectAll(YwContract.class) |
| | | .select(" ( select ifnull(sum(yr.RENT_AREA),0) from yw_contract_room y left join yw_room yr on y.room_id = yr.id where y.type = 0 and y.CONTRACT_ID = t.id ) " , YwContract::getTotalArea) |
| | | .select(" ( select ifnull(sum(y.TOTLE_FEE),0) from yw_contract_bill y where y.CONTRACT_ID = t.id and y.type = 0 ) " , YwContract::getTotalFee) |
| | | .eq(YwContract::getIsdeleted,Constants.ZERO) |
| | | .in(YwContract::getStatus,Constants.ONE,Constants.TWO,Constants.THREE) |
| | | .ne(YwContract::getBillStatus,Constants.THREE) |
| | | .apply(Objects.nonNull(model.getBuildingId()), |
| | | " t.id in ( select y.CONTRACT_ID from yw_contract_room y left join yw_room yr on y.room_id = yr.id where y.type = 0 and yr.BUILDING_ID = "+model.getBuildingId()+" ) ") |
| | | .apply(Objects.nonNull(model.getProjectId()), |
| | | " t.id in ( select y.CONTRACT_ID from yw_contract_room y left join yw_room yr on y.room_id = yr.id where y.type = 0 and yr.PROJECT_ID = "+model.getProjectId()+" ) ") |
| | | .apply(Objects.nonNull(model.getProjectId())," ") |
| | | .orderByDesc(YwContract::getStartDate) |
| | | ); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(roomContractList)){ |
| | | return ywRoomContractDataVO; |
| | | } |
| | | //å¤çç§èµåä»· æ ¹æ® ååç§èµæ»é¢ / ï¼ç§èµæ¶é¿ * ç§èµé¢ç§¯ï¼ |
| | | for (YwContract ywContract:roomContractList) { |
| | | long contractDayAmount = DateUtil.getBetweenDays(DateUtil.getFomartDate(ywContract.getEndDate(),"yyyy-MM-dd"),DateUtil.getFomartDate(ywContract.getStartDate(),"yyyy-MM-dd")); |
| | | if(Objects.nonNull(contractDayAmount) && Objects.nonNull(ywContract.getTotalArea()) && Objects.nonNull(ywContract.getTotalFee())){ |
| | | ywRoomContractDataVO.setLeasePrice( |
| | | ywRoomContractDataVO.getLeasePrice().add( |
| | | ywContract.getTotalFee().divide((ywContract.getTotalArea().multiply(new BigDecimal(Long.toString(contractDayAmount)))),2,BigDecimal.ROUND_HALF_UP) |
| | | ) |
| | | ); |
| | | } |
| | | } |
| | | |
| | | ywRoomContractDataVO.setLeaseContractAmount(roomContractList.size()); |
| | | List<Integer> contractId = roomContractList.stream().map(i->i.getId()).collect(Collectors.toList()); |
| | | List<YwRoom> ywLeaseRoomList = ywRoomMapper.selectJoinList(YwRoom.class,new MPJLambdaWrapper<YwRoom>() |
| | | .selectAll(YwRoom.class) |
| | | .leftJoin(YwContractRoom.class,YwContractRoom::getRoomId,YwRoom::getId) |
| | | .eq(YwRoom::getIsdeleted,Constants.ZERO) |
| | | .eq(YwRoom::getIsInvestment,Constants.ONE) |
| | | .eq(YwRoom::getStatus,Constants.ZERO) |
| | | .eq(Objects.nonNull(model.getBuildingId()),YwRoom::getBuildingId,model.getBuildingId()) |
| | | .eq(Objects.nonNull(model.getProjectId()),YwRoom::getProjectId,model.getProjectId()) |
| | | .in(YwContractRoom::getContractId,contractId) |
| | | .orderByAsc(YwRoom::getSortnum) |
| | | ); |
| | | if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywLeaseRoomList)){ |
| | | ywRoomContractDataVO.setLeaseArea( |
| | | ywLeaseRoomList.stream().filter(i->Objects.nonNull(i.getRentArea())).map(i->i.getRentArea()).reduce(BigDecimal.ZERO,BigDecimal::add) |
| | | ); |
| | | ywRoomContractDataVO.setLeaseRoomAmount(ywLeaseRoomList.size()); |
| | | } |
| | | return ywRoomContractDataVO; |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | .selectAs(YwFloor::getName,YwWorkorder::getFloorName) |
| | | .selectAs(YwBuilding::getName,YwWorkorder::getBuildingName) |
| | | .selectAs(YwProject::getName,YwWorkorder::getProjectName) |
| | | .selectAs(YwProblem::getId,YwWorkorder::getProblemId) |
| | | .leftJoin(SystemUser.class,SystemUser::getId,YwWorkorder::getDealUserId) |
| | | .leftJoin(Category.class,Category::getId,YwWorkorder::getCateId) |
| | | .leftJoin(SystemUser.class,SystemUser::getId,YwWorkorder::getCreator) |
| | |
| | | .leftJoin(YwFloor.class,YwFloor::getId,YwWorkorder::getFloorId) |
| | | .leftJoin(YwBuilding.class,YwBuilding::getId,YwWorkorder::getBuildingId) |
| | | .leftJoin(YwProject.class,YwProject::getId,YwBuilding::getProjectId) |
| | | .leftJoin(YwProblem.class,YwProblem::getWorkorderId,YwWorkorder::getId) |
| | | .apply(StringUtils.isNotBlank(pageWrap.getModel().getQueryStatus())," find_in_set(t.DEAL_STATUS ,'"+pageWrap.getModel().getQueryStatus()+"') "); |
| | | pageWrap.getModel().setIsdeleted(Constants.ZERO); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | |
| | | if (pageWrap.getModel().getCreator() != null) { |
| | | queryWrapper.eq(YwWorkorder::getCreator, pageWrap.getModel().getCreator()); |
| | | } |
| | | if (pageWrap.getModel().getOrigin() != null) { |
| | | queryWrapper.eq(YwWorkorder::getOrigin, pageWrap.getModel().getOrigin()); |
| | | } |
| | | if (pageWrap.getModel().getCreateDate() != null) { |
| | | queryWrapper.ge(YwWorkorder::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.le(YwWorkorder::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); |