Pārlūkot izejas kodu

Merge branch 'master' of http://47.92.161.104:10080/fulonglong/chargeing-parking into master

zhupeng 3 gadi atpakaļ
vecāks
revīzija
ed2eeb90c5
17 mainītis faili ar 754 papildinājumiem un 31 dzēšanām
  1. 4 0
      src/main/java/com/charging/chargingparking/entity/ParkingChannel.java
  2. 61 0
      src/main/java/com/charging/chargingparking/entity/ParkingUserRelation.java
  3. 11 1
      src/main/java/com/charging/chargingparking/mapper/ParkingInfoMapper.java
  4. 15 0
      src/main/java/com/charging/chargingparking/mapper/ParkingUserRelationMapper.java
  5. 224 0
      src/main/java/com/charging/chargingparking/modules/backController/ParkingChannelController.java
  6. 199 14
      src/main/java/com/charging/chargingparking/modules/backController/ParkingInfoController.java
  7. 2 2
      src/main/java/com/charging/chargingparking/modules/backController/ParkingMemberInfoController.java
  8. 11 1
      src/main/java/com/charging/chargingparking/service/ParkingInfoService.java
  9. 1 1
      src/main/java/com/charging/chargingparking/service/ParkingMemberService.java
  10. 11 0
      src/main/java/com/charging/chargingparking/service/ParkingUserRelationService.java
  11. 1 1
      src/main/java/com/charging/chargingparking/service/impl/ParkingChannelServiceImpl.java
  12. 51 1
      src/main/java/com/charging/chargingparking/service/impl/ParkingInfoServiceImpl.java
  13. 13 7
      src/main/java/com/charging/chargingparking/service/impl/ParkingMemberServiceImpl.java
  14. 1 1
      src/main/java/com/charging/chargingparking/service/impl/ParkingRecordServiceImpl.java
  15. 20 0
      src/main/java/com/charging/chargingparking/service/impl/ParkingUserRelationServiceImpl.java
  16. 106 2
      src/main/resources/mapper/ParkingInfoMapper.xml
  17. 23 0
      src/main/resources/mapper/ParkingUserRelationMapper.xml

+ 4 - 0
src/main/java/com/charging/chargingparking/entity/ParkingChannel.java

@@ -78,4 +78,8 @@ public class ParkingChannel implements Serializable {
 
     @TableField(exist = false)
     private static final long serialVersionUID = 1L;
+
+
+    @TableField(exist = false)
+    private String parkName;
 }

+ 61 - 0
src/main/java/com/charging/chargingparking/entity/ParkingUserRelation.java

@@ -0,0 +1,61 @@
+package com.charging.chargingparking.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 
+ * @TableName base_parking_user_relation
+ */
+@TableName(value ="base_parking_user_relation")
+@Data
+public class ParkingUserRelation implements Serializable {
+    /**
+     * ID
+     */
+    @TableId
+    private String id;
+
+    /**
+     * 后台用户ID
+     */
+    private String regUserId;
+
+    /**
+     * 停车场ID
+     */
+    private String parkingId;
+
+    /**
+     * 是否删除
+     */
+    private Boolean delFlag;
+
+    /**
+     * 创建人
+     */
+    private String createBy;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 更新人
+     */
+    private String updateBy;
+
+    /**
+     * 更新时间
+     */
+    private Date updateTime;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 11 - 1
src/main/java/com/charging/chargingparking/mapper/ParkingInfoMapper.java

@@ -2,12 +2,22 @@ package com.charging.chargingparking.mapper;
 
 import com.charging.chargingparking.entity.ParkingInfo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.charging.chargingparking.modules.common.dto.Sort;
+import com.github.pagehelper.Page;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * @Entity com.charging.chargingparking.entity.ParkingInfo
  */
 public interface ParkingInfoMapper extends BaseMapper<ParkingInfo> {
-
+    int insert(ParkingInfo entity);
+    int update(ParkingInfo entity);
+    ParkingInfo get(String id);
+    int delete(String id);
+    List<ParkingInfo> list();
+    List<ParkingInfo> search(Map<String,Object> searchParams,List<Sort> sortList);
 }
 
 

+ 15 - 0
src/main/java/com/charging/chargingparking/mapper/ParkingUserRelationMapper.java

@@ -0,0 +1,15 @@
+package com.charging.chargingparking.mapper;
+
+import com.charging.chargingparking.entity.ParkingUserRelation;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Entity com.charging.chargingparking.entity.ParkingUserRelation
+ */
+public interface ParkingUserRelationMapper extends BaseMapper<ParkingUserRelation> {
+
+}
+
+
+
+

+ 224 - 0
src/main/java/com/charging/chargingparking/modules/backController/ParkingChannelController.java

@@ -0,0 +1,224 @@
+package com.charging.chargingparking.modules.backController;
+
+
+import com.charging.chargingparking.dto.MessageResult;
+import com.charging.chargingparking.entity.ParkingChannel;
+import com.charging.chargingparking.entity.ParkingInfo;
+import com.charging.chargingparking.service.ParkingChannelService;
+import com.charging.chargingparking.service.ParkingInfoService;
+import com.charging.chargingparking.utils.StringUtils;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import java.util.*;
+
+@RestController
+@Slf4j
+@RequestMapping("/parkingChannel")
+public class ParkingChannelController {
+
+    private Logger logger = LoggerFactory.getLogger(getClass());
+
+    @Autowired
+    private ParkingChannelService parkingChannelService;
+
+    @Autowired
+    private ParkingInfoService parkingInfoService;
+
+
+    @ApiOperation(value = "创建空记录")
+    @GetMapping("create")
+    public MessageResult<ParkingChannel> create() {
+        MessageResult<ParkingChannel> msgResult = new MessageResult<>();
+
+        ParkingChannel parkingChannel = new ParkingChannel();
+
+        msgResult.setData(parkingChannel);
+        msgResult.setResult(true);
+
+        return msgResult;
+    }
+
+    @ApiOperation(value="添加信息")
+    @PostMapping("add")
+    public MessageResult<ParkingChannel> add(@RequestBody ParkingChannel parkingChannel, @RequestAttribute String subject){
+        MessageResult<ParkingChannel> msgResult = new MessageResult<>();
+
+        try {
+            parkingChannel.setDelFlag(false);
+            parkingChannel.setCreateBy(subject);
+            parkingChannel.setCreateTime(new Date());
+
+            boolean affect = parkingChannelService.save(parkingChannel);
+
+            if (affect) {
+                msgResult.setResult(true);
+                msgResult.setData(parkingChannel);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("添加失败");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage("添加失败");
+        }
+
+        return msgResult;
+    }
+
+
+    @ApiOperation(value = "获取信息")
+    @GetMapping("edit/{id}")
+    public MessageResult<ParkingChannel> edit(@PathVariable("id") String id) {
+        MessageResult<ParkingChannel> msgResult = new MessageResult<>();
+
+        try {
+            ParkingChannel parkingChannel = parkingChannelService.getById(id);
+
+            if (parkingChannel != null) {
+                msgResult.setResult(true);
+                msgResult.setData(parkingChannel);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库不存在该记录!");
+            }
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+
+    @ApiOperation(value="更新用户")
+    @PostMapping("update")
+    public MessageResult<ParkingChannel> update(@RequestBody ParkingChannel parkingChannel, @RequestAttribute String subject){
+        MessageResult<ParkingChannel> msgResult = new MessageResult<>();
+
+        try {
+            parkingChannel.setUpdateBy(subject);
+            parkingChannel.setUpdateTime(new Date());
+
+            boolean affect = parkingChannelService.updateById(parkingChannel);
+
+            if (affect) {
+                msgResult.setResult(true);
+                msgResult.setData(parkingChannel);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("更新失败");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage("更新失败");
+        }
+
+        return msgResult;
+    }
+
+
+    @ApiOperation(value = "删除")
+    @PostMapping("delete/{id}")
+    public MessageResult<Boolean> delete(@PathVariable("id") String id, @RequestAttribute String subject) {
+        MessageResult<Boolean> msgResult = new MessageResult<>();
+
+        try {
+            ParkingChannel parkingChannel = parkingChannelService.getById(id);
+
+            boolean flag = parkingChannelService.removeById(parkingChannel);
+
+
+            msgResult.setResult(true);
+            msgResult.setData(flag);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+
+    @ApiOperation(value = "批量删除")
+    @PostMapping("batchDelete")
+    public MessageResult<Integer> batchDelete(@RequestBody List<String> idList, @RequestAttribute String subject) {
+        MessageResult<Integer> msgResult = new MessageResult<>();
+
+        try {
+
+            for (String id : idList) {
+                ParkingChannel parkingChannel = parkingChannelService.getById(id);
+                parkingChannelService.removeById(parkingChannel);
+            }
+
+            msgResult.setResult(true);
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+    @ApiOperation(value = "列表")
+    @RequestMapping(value = "pageList", method = RequestMethod.POST)
+    public MessageResult<Object> pageList(
+            String parkId,String channelName,String channelType,
+            @RequestParam(value = "pageIndex", defaultValue = "1") int pageIndex,
+            @RequestParam(value = "pageSize", defaultValue = "20") int pageSize,
+            @RequestAttribute String subject) {
+
+        MessageResult<Object> messageResult = new MessageResult<>();
+
+        try{
+            QueryWrapper<ParkingChannel> queryWrapper = new QueryWrapper<>();
+            if(StringUtils.isNotEmpty(parkId)){
+                queryWrapper.like("park_id",parkId);
+            }
+
+            if(StringUtils.isNotEmpty(channelName)){
+                queryWrapper.like("channel_name","%"+channelName+"%");
+            }
+
+            if(StringUtils.isNotEmpty(channelType)){
+                queryWrapper.like("channel_type",channelType);
+            }
+
+            Page<ParkingChannel> page = parkingChannelService.page(new Page<>(pageIndex,pageSize),queryWrapper);
+
+            for (ParkingChannel parkingChannel : page.getRecords()) {
+                ParkingInfo parkingInfo = parkingInfoService.getById(parkingChannel.getParkId());
+                if (parkingInfo != null) {
+                    parkingChannel.setParkName(parkingInfo.getParkingName());
+                }
+            }
+
+            messageResult.setData(page);
+            messageResult.setResult(true);
+
+        }catch (Exception ex){
+            log.error(ex.getMessage(),ex);
+            messageResult.setResult(false);
+        }
+
+        return messageResult;
+    }
+}

+ 199 - 14
src/main/java/com/charging/chargingparking/modules/backController/ParkingInfoController.java

@@ -1,19 +1,20 @@
 package com.charging.chargingparking.modules.backController;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.charging.chargingparking.dto.AddParkingMember;
 import com.charging.chargingparking.dto.MessageResult;
+import com.charging.chargingparking.dto.PojoUtils;
 import com.charging.chargingparking.entity.ParkingInfo;
-import com.charging.chargingparking.modules.vo.ParkingInfoVo;
+import com.charging.chargingparking.modules.common.dto.Sort;
 import com.charging.chargingparking.service.ParkingInfoService;
+import com.github.pagehelper.Page;
+import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
-import javax.validation.Valid;
-import java.util.List;
+import java.util.*;
 
 /**
  * @author 墨鱼_mo
@@ -24,20 +25,204 @@ import java.util.List;
 @RequestMapping("/backParkingInfo")
 public class ParkingInfoController {
 
+    private Logger logger = LoggerFactory.getLogger(getClass());
+
     @Autowired
     private ParkingInfoService parkingInfoService;
 
-    @PostMapping("parkingInfoList")
-    public MessageResult<Object> parkingInfoList(String parkingName,@RequestParam Integer pageSize,@RequestParam Integer pageIndex) {
+    @ApiOperation(value="创建空记录")
+    @GetMapping("create")
+    public MessageResult<ParkingInfo> create(){
+        MessageResult<ParkingInfo> msgResult = new MessageResult<>();
+
+        ParkingInfo parkingInfo = new ParkingInfo();
+
+        msgResult.setData(parkingInfo);
+        msgResult.setResult(true);
+
+        return msgResult;
+    }
+
+    @ApiOperation(value="添加信息")
+    @PostMapping("add")
+    public MessageResult<ParkingInfo> add(@RequestBody ParkingInfo parkingInfo,@RequestAttribute String subject){
+        MessageResult<ParkingInfo> msgResult = new MessageResult<>();
+
+        try {
+            parkingInfo.setId(UUID.randomUUID().toString());
+            parkingInfo.setDelFlag(false);
+            parkingInfo.setCreateTime(new Date());
+
+            int affectCount = parkingInfoService.insert(parkingInfo);
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(parkingInfo);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库添加失败");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+    @ApiOperation(value="获取信息")
+    @GetMapping("edit/{id}")
+    public MessageResult<ParkingInfo> edit(@PathVariable("id") String id){
+        MessageResult<ParkingInfo> msgResult = new MessageResult<>();
+
+        try {
+            ParkingInfo parkingInfo = parkingInfoService.get(id);
+
+            if (parkingInfo != null) {
+                msgResult.setResult(true);
+                msgResult.setData(parkingInfo);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库不存在该记录!");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+    @ApiOperation(value="更新用户")
+    @PostMapping("update")
+    public MessageResult<ParkingInfo> update(@RequestBody ParkingInfo parkingInfo,@RequestAttribute String subject){
+        MessageResult<ParkingInfo> msgResult = new MessageResult<>();
+
+        try {
+            parkingInfo.setUpdateBy(subject);
+            parkingInfo.setUpdateTime(new Date());
+
+            int affectCount = parkingInfoService.update(parkingInfo);
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(parkingInfo);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库更新失败");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+    @ApiOperation(value="删除")
+    @PostMapping("delete/{id}")
+    public MessageResult<Integer> delete(@PathVariable("id") String id,@RequestAttribute String subject){
+        MessageResult<Integer> msgResult = new MessageResult<>();
+
+        try {
+            ParkingInfo parkingInfo = parkingInfoService.get(id);
+            parkingInfo.setDelFlag(true);
+            parkingInfo.setUpdateBy(subject);
+            parkingInfo.setUpdateTime(new Date());
+
+            int affectCount = parkingInfoService.update(parkingInfo);
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(affectCount);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("删除失败");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+
+    @ApiOperation(value="批量删除")
+    @PostMapping("batchDelete")
+    public MessageResult<Integer> batchDelete(@RequestBody List<String> idList, @RequestAttribute String subject){
+        MessageResult<Integer> msgResult = new MessageResult<>();
 
-        MessageResult<Object> messageResult = new MessageResult<>();
+        try {
+            int affectCount = 0;
+
+            for (String id : idList) {
+                ParkingInfo parkingInfo = parkingInfoService.get(id);
+                parkingInfo.setDelFlag(true);
+                parkingInfo.setUpdateBy(subject);
+                parkingInfo.setUpdateTime(new Date());
+
+                affectCount += parkingInfoService.update(parkingInfo);
+            }
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(affectCount);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("删除失败");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+
+    @ApiOperation(value="停车场列表")
+    @RequestMapping(value = "parkingInfoList",method = RequestMethod.POST)
+    public MessageResult<Map> parkingInfoList(
+            String parkingName,
+            @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
+            @RequestParam(value="pageSize",defaultValue="20") int pageSize,
+            @RequestParam(value="field",defaultValue="create_time") String field,
+            @RequestParam(value="direction",defaultValue="desc") String direction,
+            @RequestAttribute String subject){
+
+        //当前用户ID
+        System.out.println(subject);
+
+        MessageResult<Map> messageResult = new MessageResult<>();
 
         try{
-            QueryWrapper<ParkingInfo> parkingInfoQueryWrapper = new QueryWrapper<>();
-            parkingInfoQueryWrapper.like("parking_name",parkingName);
-            Page<ParkingInfo> page = parkingInfoService.page(new Page<>(pageIndex,pageSize),parkingInfoQueryWrapper);
+            Map<String,Object> searchParams = new HashMap<>();
+
+            List<Sort> sortList = new ArrayList<>();
+            sortList.add(new Sort(field,direction));
+
+            if (StringUtils.isNotEmpty(parkingName)) {
+                searchParams.put("parkingName","%" + parkingName + "%");
+            }
+
+            Page<ParkingInfo> page = parkingInfoService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
 
-            messageResult.setData(page);
+            messageResult.setData(PojoUtils.pageWrapper(page));
             messageResult.setResult(true);
 
         }catch (Exception ex){

+ 2 - 2
src/main/java/com/charging/chargingparking/modules/backController/ParkingMemberInfoController.java

@@ -124,7 +124,7 @@ public class ParkingMemberInfoController {
             boolean flag = parkingMemberService.removeById(parkingMember);
 
             if(flag){
-                parkingMemberService.cloudDelete(parkingMember.getParkId(),parkingMember.getMemberCarNum());
+                parkingMemberService.cloudDelete(id,parkingMember.getParkId(),parkingMember.getMemberCarNum());
             }
 
             msgResult.setResult(true);
@@ -156,7 +156,7 @@ public class ParkingMemberInfoController {
                 boolean flag = parkingMemberService.removeById(parkingMember);
 
                 if(flag){
-                    parkingMemberService.cloudDelete(parkingMember.getParkId(),parkingMember.getMemberCarNum());
+                    parkingMemberService.cloudDelete(id,parkingMember.getParkId(),parkingMember.getMemberCarNum());
                 }
             }
 

+ 11 - 1
src/main/java/com/charging/chargingparking/service/ParkingInfoService.java

@@ -2,10 +2,20 @@ package com.charging.chargingparking.service;
 
 import com.charging.chargingparking.entity.ParkingInfo;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.charging.chargingparking.modules.common.dto.Sort;
+import com.github.pagehelper.Page;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  *
  */
 public interface ParkingInfoService extends IService<ParkingInfo> {
-
+    ParkingInfo get(String id);
+    int insert(ParkingInfo model);
+    int update(ParkingInfo model);
+    int delete(String id);
+    List<ParkingInfo> list();
+    Page<ParkingInfo> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
 }

+ 1 - 1
src/main/java/com/charging/chargingparking/service/ParkingMemberService.java

@@ -17,7 +17,7 @@ public interface ParkingMemberService extends IService<ParkingMember> {
 
     void addParkingMember(AddParkingMember addParkingMember,Boolean backFlag,String createBy) throws Exception;
 
-    void cloudDelete(String parkId, String license);
+    void cloudDelete(String memberId, String parkId, String license);
 
     Boolean parkingMemberStatus(String carNum,String parkId) throws Exception;
 

+ 11 - 0
src/main/java/com/charging/chargingparking/service/ParkingUserRelationService.java

@@ -0,0 +1,11 @@
+package com.charging.chargingparking.service;
+
+import com.charging.chargingparking.entity.ParkingUserRelation;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ *
+ */
+public interface ParkingUserRelationService extends IService<ParkingUserRelation> {
+
+}

+ 1 - 1
src/main/java/com/charging/chargingparking/service/impl/ParkingChannelServiceImpl.java

@@ -124,7 +124,7 @@ public class ParkingChannelServiceImpl extends ServiceImpl<ParkingChannelMapper,
 
                     //出停车场检测是否需要删除临时会员
                     if (map.get(ParkingConstant.RESPONSEKEY) !=null && "1".equals(parkingRecord.getReleaseStatus())){
-                        parkingMemberService.cloudDelete(parkingChannel.getParkId(),parkingRecord.getCarNum());
+                        parkingMemberService.cloudDelete(null,parkingChannel.getParkId(),parkingRecord.getCarNum());
                     }
 
 

+ 51 - 1
src/main/java/com/charging/chargingparking/service/impl/ParkingInfoServiceImpl.java

@@ -2,17 +2,67 @@ package com.charging.chargingparking.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.charging.chargingparking.entity.ParkingInfo;
+import com.charging.chargingparking.modules.common.dto.Sort;
 import com.charging.chargingparking.service.ParkingInfoService;
 import com.charging.chargingparking.mapper.ParkingInfoMapper;
 import org.springframework.stereotype.Service;
+import com.github.pagehelper.Page;
+import com.github.pagehelper.PageHelper;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.Map;
 
 /**
  *
  */
 @Service
 public class ParkingInfoServiceImpl extends ServiceImpl<ParkingInfoMapper, ParkingInfo>
-    implements ParkingInfoService{
+        implements ParkingInfoService{
+
+    @Resource(name="parkingInfoMapper")
+    private ParkingInfoMapper parkingInfoMapper;
+
+    @Override
+    public ParkingInfo get(String id) {
+        // TODO Auto-generated method stub
+        return parkingInfoMapper.get(id);
+    }
+
+    @Override
+    public int insert(ParkingInfo model) {
+        // TODO Auto-generated method stub
+        //model.setId(UUID.randomUUID().toString());
+
+        return parkingInfoMapper.insert(model);
+    }
+
+    @Override
+    public int update(ParkingInfo model) {
+        // TODO Auto-generated method stub
+        return parkingInfoMapper.update(model);
+    }
+
+    @Override
+    public int delete(String id) {
+        // TODO Auto-generated method stub
+        return parkingInfoMapper.delete(id);
+    }
+
+    @Override
+    public List<ParkingInfo> list() {
+        // TODO Auto-generated method stub
+        return parkingInfoMapper.list();
+    }
+
+    @Override
+    public Page<ParkingInfo> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize, boolean count, List<Sort> sortList) {
+        Page<ParkingInfo> page = PageHelper.startPage(pageNumber,pageSize,count).doSelectPage(()->{
+            parkingInfoMapper.search(searchParams,sortList);
+        });
 
+        return page;
+    }
 }
 
 

+ 13 - 7
src/main/java/com/charging/chargingparking/service/impl/ParkingMemberServiceImpl.java

@@ -88,6 +88,7 @@ public class ParkingMemberServiceImpl extends ServiceImpl<ParkingMemberMapper, P
                 parkingMember1.setMemberEndTime(DateUtil.offset(addParkingMember.getMemberStartTime(), DateField.MINUTE, min));
                 parkingMember1.setCreateTime(new Date());
                 save(parkingMember1);
+                parkingMember = parkingMember1;
                 //会员日志
                 ParkingMemberLog parkingMemberLog = new ParkingMemberLog();
                 parkingMemberLog.setParkingMemberId(parkingMember1.getId());
@@ -141,7 +142,7 @@ public class ParkingMemberServiceImpl extends ServiceImpl<ParkingMemberMapper, P
             }
 
             //下发白名单
-            parkingWhiteService.addWhiteList(addParkingMember.getParkingUname(), addParkingMember.getCarNum(), addParkingMember.getMemberStartTime(), DateUtil.offset(addParkingMember.getMemberStartTime(), DateField.MINUTE, min));
+            parkingWhiteService.addWhiteList(addParkingMember.getParkingUname(), addParkingMember.getCarNum(), parkingMember.getMemberStartTime(),parkingMember.getMemberEndTime());
         }else {
             if (StrUtil.isNotBlank(addParkingMember.getId())){
                 ParkingMember parkingMember = getById(addParkingMember.getId());
@@ -176,12 +177,18 @@ public class ParkingMemberServiceImpl extends ServiceImpl<ParkingMemberMapper, P
     }
 
     @Override
-    public void cloudDelete(String parkId, String license) {
+    public void cloudDelete(String memberId,String parkId, String license) {
         QueryWrapper<ParkingMember> parkingMemberQueryWrapper = new QueryWrapper<>();
-        parkingMemberQueryWrapper.eq("park_id", parkId);
-        parkingMemberQueryWrapper.eq("member_car_num", license);
-        parkingMemberQueryWrapper.eq("cloud_del_flag", false);
-        parkingMemberQueryWrapper.lt("member_end_time", new Date());
+        if (StrUtil.isNotBlank(memberId)){
+            parkingMemberQueryWrapper.eq("id", memberId);
+            parkingMemberQueryWrapper.eq("park_id", parkId);
+            parkingMemberQueryWrapper.eq("cloud_del_flag", false);
+        }else {
+            parkingMemberQueryWrapper.eq("park_id", parkId);
+            parkingMemberQueryWrapper.eq("member_car_num", license);
+            parkingMemberQueryWrapper.eq("cloud_del_flag", false);
+            parkingMemberQueryWrapper.lt("member_end_time", new Date());
+        }
         ParkingMember parkingMember = getOne(parkingMemberQueryWrapper);
         if (parkingMember != null) {
             parkingMember.setCloudDelFlag(true);
@@ -194,7 +201,6 @@ public class ParkingMemberServiceImpl extends ServiceImpl<ParkingMemberMapper, P
             parkingMemberLog.setCreateTime(new Date());
             parkingMemberLog.setContent(StrUtil.format("{}会员出场,会员自动删除", parkingMember.getMemberCarNum()));
             parkingMemberLogService.save(parkingMemberLog);
-
             parkingWhiteService.deleteWhiteList(parkId, parkingMember.getMemberCarNum());
         }
 

+ 1 - 1
src/main/java/com/charging/chargingparking/service/impl/ParkingRecordServiceImpl.java

@@ -227,7 +227,7 @@ public class ParkingRecordServiceImpl extends ServiceImpl<ParkingRecordMapper, P
                 updateById(parkingRecord0);
                 //出停车场检测是否需要删除临时会员
                 if (map.get(ParkingConstant.RESPONSEKEY) !=null && "1".equals(parkingRecord0.getReleaseStatus())){
-                    parkingMemberService.cloudDelete(parkingChannel.getParkId(),license);
+                    parkingMemberService.cloudDelete(null,parkingChannel.getParkId(),license);
                 }
             }
 

+ 20 - 0
src/main/java/com/charging/chargingparking/service/impl/ParkingUserRelationServiceImpl.java

@@ -0,0 +1,20 @@
+package com.charging.chargingparking.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.charging.chargingparking.entity.ParkingUserRelation;
+import com.charging.chargingparking.service.ParkingUserRelationService;
+import com.charging.chargingparking.mapper.ParkingUserRelationMapper;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ */
+@Service
+public class ParkingUserRelationServiceImpl extends ServiceImpl<ParkingUserRelationMapper, ParkingUserRelation>
+    implements ParkingUserRelationService{
+
+}
+
+
+
+

+ 106 - 2
src/main/resources/mapper/ParkingInfoMapper.xml

@@ -4,7 +4,7 @@
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.charging.chargingparking.mapper.ParkingInfoMapper">
 
-    <resultMap id="BaseResultMap" type="com.charging.chargingparking.entity.ParkingInfo">
+    <resultMap id="ParkingInfoMap" type="com.charging.chargingparking.entity.ParkingInfo">
             <id property="id" column="id" jdbcType="VARCHAR"/>
             <result property="parkUname" column="park_uname" jdbcType="BIGINT"/>
             <result property="parkKey" column="park_key" jdbcType="VARCHAR"/>
@@ -23,11 +23,115 @@
             <result property="address" column="address_" jdbcType="VARCHAR"/>
     </resultMap>
 
-    <sql id="Base_Column_List">
+    <sql id="Base_Parking_Info">
         id,park_uname,park_key,
         password_,company_name,parking_name,
         pic_url,charging_free_duration,oil_car_enable,new_energy_car_enable,del_flag,create_by,
         create_time,update_by,update_time,
         address_
     </sql>
+    <insert id="insert" parameterType="com.charging.chargingparking.entity.ParkingInfo">
+        <![CDATA[
+		insert into base_parking_info
+	    (id,park_uname,park_key,password_,company_name,parking_name,pic_url,charging_free_duration,oil_car_enable,
+	        new_energy_car_enable,del_flag,create_by,create_time,update_by,update_time,address_)
+		values
+		(
+			#{id,jdbcType=VARCHAR}
+            ,#{parkUname,jdbcType=BIGINT}
+            ,#{parkKey,jdbcType=VARCHAR}
+            ,#{password,jdbcType=VARCHAR}
+            ,#{companyName,jdbcType=VARCHAR}
+            ,#{parkingName,jdbcType=VARCHAR}
+            ,#{picUrl,jdbcType=VARCHAR}
+            ,#{chargingFreeDuration,jdbcType=INTEGER}
+            ,#{oilCarEnable,jdbcType=BIT}
+            ,#{newEnergyCarEnable,jdbcType=BIT}
+            ,#{delFlag,jdbcType=BIT}
+            ,#{createBy,jdbcType=VARCHAR}
+            ,#{createTime,jdbcType=TIMESTAMP}
+            ,#{updateBy,jdbcType=VARCHAR}
+            ,#{updateTime,jdbcType=TIMESTAMP}
+            ,#{address,jdbcType=VARCHAR}
+		)
+	]]>
+    </insert>
+    <update id="update" parameterType="com.charging.chargingparking.entity.ParkingInfo">
+        update base_parking_info
+        <set>
+            <if test="parkUname!=null">
+                park_uname=#{parkUname,jdbcType=BIGINT},
+            </if>
+            <if test="parkKey!=null">
+                park_key=#{parkKey,jdbcType=VARCHAR},
+            </if>
+            <if test="password!=null">
+                password_=#{password,jdbcType=VARCHAR},
+            </if>
+            <if test="companyName!=null">
+                company_name=#{companyName,jdbcType=VARCHAR},
+            </if>
+            <if test="parkingName!=null">
+                parking_name=#{parkingName,jdbcType=VARCHAR},
+            </if>
+            <if test="picUrl!=null">
+                pic_url=#{picUrl,jdbcType=VARCHAR},
+            </if>
+            <if test="chargingFreeDuration!=null">
+                charging_free_duration=#{chargingFreeDuration,jdbcType=INTEGER},
+            </if>
+            <if test="oilCarEnable!=null">
+                oil_car_enable=#{oilCarEnable,jdbcType=BIT},
+            </if>
+            <if test="newEnergyCarEnable!=null">
+                new_energy_car_enable=#{newEnergyCarEnable,jdbcType=BIT},
+            </if>
+            <if test="delFlag!=null">
+                del_flag=#{delFlag,jdbcType=BIT},
+            </if>
+            <if test="createBy!=null">
+                create_by=#{createBy,jdbcType=VARCHAR},
+            </if>
+            <if test="createTime!=null">
+                create_time=#{createTime,jdbcType=TIMESTAMP},
+            </if>
+            <if test="updateBy!=null">
+                update_by=#{updateBy,jdbcType=VARCHAR},
+            </if>
+            <if test="updateTime!=null">
+                update_time=#{updateTime,jdbcType=TIMESTAMP},
+            </if>
+            <if test="address!=null">
+                address_=#{address,jdbcType=VARCHAR},
+            </if>
+        </set>
+        where id=#{id}
+    </update>
+    <delete id="delete" parameterType="string">
+        delete from base_parking_info where id=#{id,jdbcType=VARCHAR}
+    </delete>
+    <select id="get" parameterType="string" resultType="com.charging.chargingparking.entity.ParkingInfo">
+        select * from base_parking_info where id=#{0} and del_flag = 0
+    </select>
+    <select id="list" resultType="com.charging.chargingparking.entity.ParkingInfo">
+        select * from base_parking_info
+    </select>
+    <select id="search" parameterType="hashmap" resultType="com.charging.chargingparking.entity.ParkingInfo">
+        <![CDATA[
+			select * from base_parking_info
+		]]>
+        <where>
+            del_flag = 0
+            <if test="searchParams.parkingName != null">
+                and parking_name like #{searchParams.parkingName}
+            </if>
+            <if test="searchParams.createTime != null">
+                and create_time like #{searchParams.createTime}
+            </if>
+
+        </where>
+        <foreach item="sort" collection="sortList"  open="order by" separator=",">
+            ${sort.name} ${sort.order}
+        </foreach>
+    </select>
 </mapper>

+ 23 - 0
src/main/resources/mapper/ParkingUserRelationMapper.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.charging.chargingparking.mapper.ParkingUserRelationMapper">
+
+    <resultMap id="BaseResultMap" type="com.charging.chargingparking.entity.ParkingUserRelation">
+            <id property="id" column="id" jdbcType="VARCHAR"/>
+            <result property="regUserId" column="reg_user_id" jdbcType="VARCHAR"/>
+            <result property="parkingId" column="parking_id" jdbcType="VARCHAR"/>
+            <result property="delFlag" column="del_flag" jdbcType="BIT"/>
+            <result property="createBy" column="create_by" jdbcType="VARCHAR"/>
+            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+            <result property="updateBy" column="update_by" jdbcType="VARCHAR"/>
+            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,reg_user_id,parking_id,
+        del_flag,create_by,create_time,
+        update_by,update_time
+    </sql>
+</mapper>