|
@@ -8,6 +8,7 @@ import cn.hutool.core.date.LocalDateTimeUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.qmrb.system.common.constant.SystemConstants;
|
|
|
import com.qmrb.system.common.result.PageResult;
|
|
|
import com.qmrb.system.converter.ContractPlaceNumberRelConverter;
|
|
|
import com.qmrb.system.framework.security.util.SecurityUtils;
|
|
@@ -20,6 +21,7 @@ import com.qmrb.system.pojo.vo.ContractPlaceNumberRelHisVO;
|
|
|
import com.qmrb.system.pojo.vo.ContractPlaceNumberRelVO;
|
|
|
import com.qmrb.system.pojo.query.ContractPlaceNumberRelQuery;
|
|
|
import com.qmrb.system.mapper.ContractPlaceNumberRelMapper;
|
|
|
+import com.qmrb.system.pojo.vo.PayOrderVO;
|
|
|
import com.qmrb.system.service.IContractPlaceNumberRelHisService;
|
|
|
import com.qmrb.system.service.IContractPlaceNumberRelService;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
@@ -41,6 +43,7 @@ import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
|
|
|
|
|
|
* <p>
|
|
@@ -58,7 +61,7 @@ public class ContractPlaceNumberRelServiceImpl extends ServiceImpl<ContractPlace
|
|
|
|
|
|
@Autowired
|
|
|
SysUserService userService;
|
|
|
-
|
|
|
+
|
|
|
@Autowired
|
|
|
BarnRecordMapper barnRecordMapper;
|
|
|
|
|
@@ -72,56 +75,64 @@ public class ContractPlaceNumberRelServiceImpl extends ServiceImpl<ContractPlace
|
|
|
*/
|
|
|
@Override
|
|
|
public Page<ContractPlaceNumberRelVO> getPage(ContractPlaceNumberRelQuery queryParams) {
|
|
|
+ Page<ContractPlaceNumberRelVO> pageResult = new Page<>();
|
|
|
|
|
|
int pageNum = queryParams.getPageNum();
|
|
|
int pageSize = queryParams.getPageSize();
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
SysUser sysUser = userService.getOne(new LambdaQueryWrapper<SysUser>()
|
|
|
- .eq(SysUser::getId, SecurityUtils.getUserId())
|
|
|
+ .eq(SysUser::getId, SecurityUtils.getUserId())
|
|
|
|
|
|
);
|
|
|
-
|
|
|
- List<ContractPlaceNumberRel> list = this.list(new LambdaQueryWrapper<ContractPlaceNumberRel>()
|
|
|
- .eq(ContractPlaceNumberRel::getContractId, sysUser.getContractId())
|
|
|
- .eq(ContractPlaceNumberRel::getStatus, "1")
|
|
|
- );
|
|
|
-
|
|
|
- Page<ContractPlaceNumberRel> dictItemPage = this.page(
|
|
|
- new Page<>(pageNum, pageSize),
|
|
|
- new LambdaQueryWrapper<ContractPlaceNumberRel>()
|
|
|
- .eq(sysUser != null, ContractPlaceNumberRel::getContractId, sysUser.getContractId())
|
|
|
- .orderByDesc(ContractPlaceNumberRel::getStartTime)
|
|
|
-
|
|
|
-
|
|
|
- );
|
|
|
-
|
|
|
-
|
|
|
- Page<ContractPlaceNumberRelVO> pageResult = converter.entity2Page(dictItemPage);
|
|
|
-
|
|
|
- Contract contract = contractService.getOne(new LambdaQueryWrapper<Contract>().eq(Contract::getId, sysUser.getContractId()));
|
|
|
- List<ContractPlaceNumberRelVO> records = pageResult.getRecords();
|
|
|
-
|
|
|
- if (CollectionUtil.isEmpty(records)) {
|
|
|
- ContractPlaceNumberRelVO contractPlaceNumberRelVO = new ContractPlaceNumberRelVO();
|
|
|
- contractPlaceNumberRelVO.setContractId(sysUser.getContractId());
|
|
|
- contractPlaceNumberRelVO.setAbledNum("1");
|
|
|
- contractPlaceNumberRelVO.setStatus("1");
|
|
|
-
|
|
|
- contractPlaceNumberRelVO.setMaxParkingLotNum(contract.getMaxParkingLotNum());
|
|
|
- contractPlaceNumberRelVO.setBigParkingLotNum(contract.getBigParkingLotNum());
|
|
|
- contractPlaceNumberRelVO.setSmallParkingLotNum(contract.getSmallParkingLotNum());
|
|
|
- records.add(contractPlaceNumberRelVO);
|
|
|
- }else{
|
|
|
- for (ContractPlaceNumberRelVO record : records) {
|
|
|
- record.setAbledNum(String.valueOf(list.size()));
|
|
|
+
|
|
|
+ Set<String> roles = SecurityUtils.getRoles();
|
|
|
+ String role = "";
|
|
|
+
|
|
|
+ if (roles.contains("ADMIN")) {
|
|
|
+ role = "ADMIN";
|
|
|
+ pageResult = baseMapper.getAdminPage(new Page<>(pageNum, pageSize), role, sysUser,queryParams);
|
|
|
+ List<ContractPlaceNumberRelVO> records = pageResult.getRecords();
|
|
|
+ if (CollectionUtil.isNotEmpty(records)) {
|
|
|
+ records.get(0).setRole(role);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+
|
|
|
+ List<ContractPlaceNumberRel> list = this.list(new LambdaQueryWrapper<ContractPlaceNumberRel>()
|
|
|
+ .eq(ContractPlaceNumberRel::getContractId, sysUser.getContractId())
|
|
|
+ .eq(ContractPlaceNumberRel::getStatus, "1")
|
|
|
+ );
|
|
|
+
|
|
|
+ Page<ContractPlaceNumberRel> dictItemPage = this.page(
|
|
|
+ new Page<>(pageNum, pageSize),
|
|
|
+ new LambdaQueryWrapper<ContractPlaceNumberRel>()
|
|
|
+ .eq(sysUser != null, ContractPlaceNumberRel::getContractId, sysUser.getContractId())
|
|
|
+ .orderByDesc(ContractPlaceNumberRel::getStartTime)
|
|
|
+ );
|
|
|
+
|
|
|
+ pageResult = converter.entity2Page(dictItemPage);
|
|
|
+
|
|
|
+ Contract contract = contractService.getOne(new LambdaQueryWrapper<Contract>().eq(Contract::getId, sysUser.getContractId()));
|
|
|
+ List<ContractPlaceNumberRelVO> records = pageResult.getRecords();
|
|
|
+ if (CollectionUtil.isEmpty(records)) {
|
|
|
+ ContractPlaceNumberRelVO contractPlaceNumberRelVO = new ContractPlaceNumberRelVO();
|
|
|
+ contractPlaceNumberRelVO.setContractId(sysUser.getContractId());
|
|
|
+ contractPlaceNumberRelVO.setAbledNum("1");
|
|
|
+ contractPlaceNumberRelVO.setStatus("1");
|
|
|
|
|
|
- record.setMaxParkingLotNum(contract.getMaxParkingLotNum());
|
|
|
- record.setBigParkingLotNum(contract.getBigParkingLotNum());
|
|
|
- record.setSmallParkingLotNum(contract.getSmallParkingLotNum());
|
|
|
+ contractPlaceNumberRelVO.setMaxParkingLotNum(contract.getMaxParkingLotNum());
|
|
|
+ contractPlaceNumberRelVO.setBigParkingLotNum(contract.getBigParkingLotNum());
|
|
|
+ contractPlaceNumberRelVO.setSmallParkingLotNum(contract.getSmallParkingLotNum());
|
|
|
+ records.add(contractPlaceNumberRelVO);
|
|
|
+ } else {
|
|
|
+ for (ContractPlaceNumberRelVO record : records) {
|
|
|
+ record.setAbledNum(String.valueOf(list.size()));
|
|
|
+
|
|
|
+ record.setMaxParkingLotNum(contract.getMaxParkingLotNum());
|
|
|
+ record.setBigParkingLotNum(contract.getBigParkingLotNum());
|
|
|
+ record.setSmallParkingLotNum(contract.getSmallParkingLotNum());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
return pageResult;
|
|
|
}
|
|
|
|
|
@@ -139,8 +150,8 @@ public class ContractPlaceNumberRelServiceImpl extends ServiceImpl<ContractPlace
|
|
|
if (save) {
|
|
|
|
|
|
ContractPlaceNumberRelHis contractPlaceNumberRelHis = new ContractPlaceNumberRelHis();
|
|
|
- BeanUtils.copyProperties(form,contractPlaceNumberRelHis,"id");
|
|
|
- contractPlaceNumberRelHis.setStatus("3");
|
|
|
+ BeanUtils.copyProperties(form, contractPlaceNumberRelHis, "id");
|
|
|
+ contractPlaceNumberRelHis.setStatus("3");
|
|
|
contractPlaceNumberRelHisService.save(contractPlaceNumberRelHis);
|
|
|
}
|
|
|
ContractPlaceNumberRelForm result = converter.entity2Form(entity);
|
|
@@ -155,11 +166,11 @@ public class ContractPlaceNumberRelServiceImpl extends ServiceImpl<ContractPlace
|
|
|
ContractPlaceNumberRel entity = converter.form2Entity(form);
|
|
|
entity.setId(id);
|
|
|
boolean result = this.updateById(entity);
|
|
|
- if (result){
|
|
|
+ if (result) {
|
|
|
|
|
|
ContractPlaceNumberRelHis contractPlaceNumberRelHis = new ContractPlaceNumberRelHis();
|
|
|
- BeanUtils.copyProperties(form,contractPlaceNumberRelHis,"id");
|
|
|
- contractPlaceNumberRelHis.setStatus(form.getUpdateStatus());
|
|
|
+ BeanUtils.copyProperties(form, contractPlaceNumberRelHis, "id");
|
|
|
+ contractPlaceNumberRelHis.setStatus(form.getUpdateStatus());
|
|
|
boolean save = contractPlaceNumberRelHisService.save(contractPlaceNumberRelHis);
|
|
|
|
|
|
}
|
|
@@ -228,27 +239,27 @@ public class ContractPlaceNumberRelServiceImpl extends ServiceImpl<ContractPlace
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public Map<String,Object> getDenomination(Long recordId) {
|
|
|
+ public Map<String, Object> getDenomination(Long recordId) {
|
|
|
BarnRecord barnRecord = barnRecordMapper.selectById(recordId);
|
|
|
- if(barnRecord == null || barnRecord.getOutTime() != null){
|
|
|
- return null;
|
|
|
+ if (barnRecord == null || barnRecord.getOutTime() != null) {
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
Instant instant = barnRecord.getInTime().toInstant();
|
|
|
|
|
|
|
|
|
LocalDateTime inDateTime = instant.atZone(ZoneId.systemDefault()).toLocalDateTime();
|
|
|
-
|
|
|
+
|
|
|
LambdaQueryWrapper<ContractPlaceNumberRel> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
- queryWrapper.eq(ContractPlaceNumberRel::getPlateNumber,barnRecord.getPlaceNo());
|
|
|
- queryWrapper.eq(ContractPlaceNumberRel::getStatus,"1");
|
|
|
-
|
|
|
-
|
|
|
+ queryWrapper.eq(ContractPlaceNumberRel::getPlateNumber, barnRecord.getPlaceNo());
|
|
|
+ queryWrapper.eq(ContractPlaceNumberRel::getStatus, "1");
|
|
|
+
|
|
|
+
|
|
|
LocalDateTime now = LocalDateTime.now();
|
|
|
- queryWrapper.lt(ContractPlaceNumberRel::getEndTime,inDateTime);
|
|
|
- queryWrapper.gt(ContractPlaceNumberRel::getStartTime,now);
|
|
|
+ queryWrapper.lt(ContractPlaceNumberRel::getEndTime, inDateTime);
|
|
|
+ queryWrapper.gt(ContractPlaceNumberRel::getStartTime, now);
|
|
|
List<ContractPlaceNumberRel> list = this.list(queryWrapper);
|
|
|
- if(CollectionUtil.isNotEmpty(list)){
|
|
|
+ if (CollectionUtil.isNotEmpty(list)) {
|
|
|
ContractPlaceNumberRel contractPlaceNumberRel = list.get(0);
|
|
|
long between = DateUtil.between(contractPlaceNumberRel.getStartTime(), new Date(), DateUnit.MINUTE);
|
|
|
HashMap<String, Object> map = new HashMap<>();
|
|
@@ -258,8 +269,8 @@ public class ContractPlaceNumberRelServiceImpl extends ServiceImpl<ContractPlace
|
|
|
|
|
|
|
|
|
LocalDateTime endTime = endTimeinstant.atZone(ZoneId.systemDefault()).toLocalDateTime();
|
|
|
- map.put("denomination",Double.valueOf(between));
|
|
|
- map.put("expireTime",endTime);
|
|
|
+ map.put("denomination", Double.valueOf(between));
|
|
|
+ map.put("expireTime", endTime);
|
|
|
return map;
|
|
|
}
|
|
|
return null;
|