From 6dfd2599d2e52507e018fd4c6b35d38873e48cfb Mon Sep 17 00:00:00 2001
From: wang-hao-jie <1550036656@qq.com>
Date: 星期四, 17 三月 2022 15:52:51 +0800
Subject: [PATCH] 最新版本

---
 xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/FingerprintController.java |   96 ++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 80 insertions(+), 16 deletions(-)

diff --git a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/FingerprintController.java b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/FingerprintController.java
index 345ca04..26ef18c 100644
--- a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/FingerprintController.java
+++ b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/FingerprintController.java
@@ -1,21 +1,14 @@
 package cn.exrick.xboot.your.controller;
 
-import cn.exrick.xboot.core.common.constant.SettingConstant;
-import cn.exrick.xboot.core.common.utils.CommonUtil;
 import cn.exrick.xboot.core.common.utils.PageUtil;
 import cn.exrick.xboot.core.common.utils.ResultUtil;
+import cn.exrick.xboot.core.common.utils.SecurityUtil;
 import cn.exrick.xboot.core.common.vo.PageVo;
 import cn.exrick.xboot.core.common.vo.Result;
-import cn.exrick.xboot.core.entity.Setting;
 import cn.exrick.xboot.core.entity.User;
-import cn.exrick.xboot.core.service.SettingService;
 import cn.exrick.xboot.core.service.UserService;
-import cn.exrick.xboot.your.entity.Customer;
-import cn.exrick.xboot.your.entity.CustomerReceive;
-import cn.exrick.xboot.your.entity.Fingerprint;
-import cn.exrick.xboot.your.service.ICustomerReceiveService;
-import cn.exrick.xboot.your.service.ICustomerService;
-import cn.exrick.xboot.your.service.IFingerprintService;
+import cn.exrick.xboot.your.entity.*;
+import cn.exrick.xboot.your.service.*;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -25,10 +18,6 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.servlet.http.HttpServletRequest;
-import java.io.InputStream;
 import java.util.List;
 
 /**
@@ -53,6 +42,15 @@
     @Autowired
     private ICustomerService iCustomerService;
 
+    @Autowired
+    private IAreaService iAreaService;
+
+    @Autowired
+    private ICarService iCarService;
+
+    @Autowired
+    private SecurityUtil securityUtil;
+
     @RequestMapping(value = "/get/{id}", method = RequestMethod.GET)
     @ApiOperation(value = "閫氳繃id鑾峰彇")
     public Result<Fingerprint> get(@PathVariable String id) {
@@ -72,11 +70,32 @@
 
     @RequestMapping(value = "/getAllByAreaId", method = RequestMethod.GET)
     @ApiOperation(value = "鑾峰彇鍏ㄩ儴鐗囧尯鍐呮寚绾规暟鎹�")
-    public Result<List<Fingerprint>> getAllByAreaId(String areaId) {
+    public Result<List<Fingerprint>> getAllByAreaId() {
+        Area area = getArea(securityUtil.getCurrUser().getId());
+        if(area==null){
+            return ResultUtil.error("璇ョ敤鎴疯繕鏈粦瀹氱墖鍖�");
+        }
         QueryWrapper<Fingerprint> wrapper = new QueryWrapper<>();
-        wrapper.eq("area_id",areaId);
+        wrapper.eq("area_id",area.getId());
         List<Fingerprint> list = iFingerprintService.list(wrapper);
         return new ResultUtil<List<Fingerprint>>().setData(list);
+    }
+
+    public Area getArea(String userId){
+        QueryWrapper<Area> wrapper = new QueryWrapper<Area>();
+        wrapper.eq("user_id",userId);
+        Area area = iAreaService.getOne(wrapper);
+        if(area==null){
+            QueryWrapper<Car> carQueryWrapper = new QueryWrapper<Car>();
+            carQueryWrapper.eq("user_id",userId);
+            Car one = iCarService.getOne(carQueryWrapper);
+
+            QueryWrapper<Area> wrapper3 = new QueryWrapper<Area>();
+            wrapper3.eq("user_id",one.getFollowUserId());
+            area = iAreaService.getOne(wrapper3);
+            return area;
+        }
+        return area;
     }
 
     @RequestMapping(value = "/getCount", method = RequestMethod.GET)
@@ -103,6 +122,10 @@
         wrapper.eq("code",code);
         wrapper.isNotNull("user_id");
         Fingerprint one = iFingerprintService.getOne(wrapper);
+        User byUsername = userService.findByUsername(one.getUsername());
+        if(byUsername==null){
+            return ResultUtil.error("鐢ㄦ埛宸插垹闄�");
+        }
         return new ResultUtil<Object>().setData(one);
     }
 
@@ -113,7 +136,20 @@
         QueryWrapper<Fingerprint> wrapper = new QueryWrapper<>();
         wrapper.eq("code",code);
         wrapper.eq("area_id",c.getAreaId());
+        wrapper.eq("customer_id",customerId);
         Fingerprint one = iFingerprintService.getOne(wrapper);
+        if(one==null){
+
+            QueryWrapper<Fingerprint> wrapper2 = new QueryWrapper<>();
+            wrapper2.eq("code",code);
+            wrapper2.eq("area_id",c.getAreaId());
+            Fingerprint one2 = iFingerprintService.getOne(wrapper2);
+            if(one2!=null){
+                c.setLikeCusotmerId(one2.getCustomerId());
+                iCustomerService.saveOrUpdate(c);
+            }
+            return ResultUtil.error("鎸囩汗涓庡晢鎴蜂笉鍖归厤");
+        }
 
         CustomerReceive customerReceive = iCustomerReceiveService.getById(one.getCustomerReceiveId());
         return new ResultUtil<Object>().setData(customerReceive);
@@ -138,11 +174,39 @@
     @ApiOperation(value = "缂栬緫鎴栨洿鏂版暟鎹�")
     public Result<Fingerprint> saveOrUpdate(Fingerprint fingerprint) {
         if(StrUtil.isNotEmpty(fingerprint.getUserId())){
+
+            QueryWrapper<Fingerprint> wrapper = new QueryWrapper<Fingerprint>();
+            wrapper.eq("code",fingerprint.getCode());
+            wrapper.isNotNull("user_id");
+            Fingerprint one = iFingerprintService.getOne(wrapper);
+            if(one!=null){
+                return ResultUtil.error("code閲嶅浜嗭紝璇烽噸鏂拌幏鍙�");
+            }
+
             User user = userService.get(fingerprint.getUserId());
             fingerprint.setUsername(user.getUsername());
             fingerprint.setPassword(user.getDescription());
             fingerprint.setType(user.getType2());
         }
+        if(StrUtil.isNotEmpty(fingerprint.getCustomerId())){
+            Customer byId = iCustomerService.getById(fingerprint.getCustomerId());
+            fingerprint.setAreaId(byId.getAreaId());
+
+            QueryWrapper<Fingerprint> wrapper = new QueryWrapper<Fingerprint>();
+            wrapper.eq("code",fingerprint.getCode());
+            wrapper.eq("area_id",byId.getAreaId());
+            wrapper.isNotNull("customer_id");
+            Fingerprint one = iFingerprintService.getOne(wrapper);
+            if(one!=null){
+                return ResultUtil.error("code閲嶅浜嗭紝璇烽噸鏂拌幏鍙�");
+            }
+        }
+
+        if(StrUtil.isNotEmpty(fingerprint.getCustomerReceiveId())){
+            CustomerReceive byId = iCustomerReceiveService.getById(fingerprint.getCustomerReceiveId());
+            byId.setFstatus(1);
+            iCustomerReceiveService.saveOrUpdate(byId);
+        }
         if (iFingerprintService.saveOrUpdate(fingerprint)) {
             return new ResultUtil<Fingerprint>().setData(fingerprint);
         }

--
Gitblit v1.9.1