From 0b6189c1c208a4f1c4cd4b230dba10b3581d1ff9 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期四, 16 五月 2024 16:01:16 +0800
Subject: [PATCH] fix: 获取司机配送员信息接口修改
---
xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/controller/FingerprintController.java | 235 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 226 insertions(+), 9 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 53b8cec..6edb241 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
@@ -2,10 +2,13 @@
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.your.entity.Fingerprint;
-import cn.exrick.xboot.your.service.IFingerprintService;
+import cn.exrick.xboot.core.entity.User;
+import cn.exrick.xboot.core.service.UserService;
+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;
@@ -16,6 +19,8 @@
import org.springframework.web.bind.annotation.*;
import org.springframework.transaction.annotation.Transactional;
+import java.nio.charset.StandardCharsets;
+import java.util.Base64;
import java.util.List;
/**
@@ -31,6 +36,24 @@
@Autowired
private IFingerprintService iFingerprintService;
+ @Autowired
+ private UserService userService;
+
+ @Autowired
+ private ICustomerReceiveService iCustomerReceiveService;
+
+ @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) {
@@ -39,12 +62,75 @@
return new ResultUtil<Fingerprint>().setData(fingerprint);
}
- @RequestMapping(value = "/getAll", method = RequestMethod.GET)
- @ApiOperation(value = "鑾峰彇鍏ㄩ儴鏁版嵁")
- public Result<List<Fingerprint>> getAll() {
+ @RequestMapping(value = "/getAreaIdByToken", method = RequestMethod.GET)
+ @ApiOperation(value = "鏍规嵁token鑾峰彇鍖哄煙id")
+ public Result<Object> getAreaIdByToken() {
+ Area area = getArea(securityUtil.getCurrUser().getId());
+ return new ResultUtil<Object>().setData(area);
+ }
- List<Fingerprint> list = iFingerprintService.list();
+ @RequestMapping(value = "/getAll", method = RequestMethod.GET)
+ @ApiOperation(value = "鑾峰彇鍏ㄩ儴鍙告満鍜岄厤閫佸憳鎸囩汗鏁版嵁")
+ public Result<List<Fingerprint>> getAll() {
+ QueryWrapper<Fingerprint> wrapper = new QueryWrapper<>();
+ wrapper.select(" id,code,file_id,user_id ");
+ wrapper.isNotNull("user_id");
+ wrapper.isNotNull("file_id");
+ List<Fingerprint> list = iFingerprintService.list(wrapper);
return new ResultUtil<List<Fingerprint>>().setData(list);
+ }
+
+ @RequestMapping(value = "/getAllByAreaId", method = RequestMethod.GET)
+ @ApiOperation(value = "鑾峰彇鍏ㄩ儴鐗囧尯鍐呮寚绾规暟鎹�")
+ 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",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;
+// }
+
+ public Area getArea(String userId){
+ QueryWrapper<Car> carQueryWrapper = new QueryWrapper<Car>();
+ carQueryWrapper.eq("user_id",userId).or().eq("follow_user_id",userId);
+ Car one = iCarService.getOne(carQueryWrapper);
+ if(one==null){
+ return null;
+ }else{
+ QueryWrapper<Area> wrapper = new QueryWrapper<Area>();
+ wrapper.eq("car_id",one.getId());
+ Area area = iAreaService.getOne(wrapper);
+ return area;
+ }
+ }
+
+ @RequestMapping(value = "/getCount", method = RequestMethod.GET)
+ @ApiOperation(value = "鑾峰彇鐢ㄦ埛鎸囩汗鏁�")
+ public Result<Integer> getCount() {
+ QueryWrapper<Fingerprint> wrapper = new QueryWrapper<>();
+ wrapper.isNotNull("user_id");
+ int a = iFingerprintService.count(wrapper);
+ return new ResultUtil<Integer>().setData(a);
}
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@@ -55,16 +141,147 @@
return new ResultUtil<IPage<Fingerprint>>().setData(data);
}
+ @RequestMapping(value = "/getUserByCode", method = RequestMethod.GET)
+ @ApiOperation(value = "鐢ㄦ寚绾圭紪鍙峰徃鏈烘垨閰嶉�佸憳鐨勭櫥褰曞悕鍜屽瘑鐮�")
+ public Result<Object> getUserByCode(String code) {
+ QueryWrapper<Fingerprint> wrapper = new QueryWrapper<>();
+ wrapper.eq("code",code);
+ wrapper.isNotNull("user_id");
+ Fingerprint one = iFingerprintService.getOne(wrapper);
+ User user = userService.findByUsername(one.getUsername());
+ if(user==null){
+ return ResultUtil.error("鐢ㄦ埛宸插垹闄�");
+ }else{
+ one.setPassword(Base64.getEncoder().encodeToString(user.getDescription().getBytes(StandardCharsets.UTF_8)));
+ }
+ return new ResultUtil<Object>().setData(one);
+ }
+
+ @RequestMapping(value = "/getCustomerByCode", method = RequestMethod.GET)
+ @ApiOperation(value = "鐢ㄦ寚绾圭紪鍙峰拰鍟嗘埛id鑾峰彇鎺ヨ揣浜轰俊鎭�")
+ public Result<Object> getCustomerByCode(String code,String customerId) {
+ Customer c = iCustomerService.getById(customerId);
+ 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);
+ }
+
+ @RequestMapping(value = "/getCode2", method = RequestMethod.GET)
+ @ApiOperation(value = "鏍规嵁鍟嗘埛id鑾峰彇鎺ヨ揣浜虹紪鍙�")
+ public Result<Object> getCode2(String customerId) {
+ Customer c = iCustomerService.getById(customerId);
+ int code = iFingerprintService.maxCode2(c.getAreaId());
+ return new ResultUtil<Object>().setData(code);
+ }
+
+ @RequestMapping(value = "/getCode", method = RequestMethod.GET)
+ @ApiOperation(value = "鑾峰彇鍙告満鎴栭厤閫佸憳鎸囩汗缂栧彿")
+ public Result<Object> getCode() {
+
+ User currUser = securityUtil.getCurrUser();
+ String userId = currUser.getId();
+
+ QueryWrapper<Fingerprint> wrapper = new QueryWrapper<Fingerprint>();
+ wrapper.eq("user_id",userId);
+ wrapper.isNull("file_id");
+ Fingerprint one = iFingerprintService.getOne(wrapper);
+ if(one!=null){
+ return new ResultUtil<Object>().setData(one.getCode());
+ }else{
+ int code = iFingerprintService.maxCode();
+
+ Fingerprint fingerprint = new Fingerprint();
+ fingerprint.setUserId(userId);
+ fingerprint.setType(currUser.getType2());
+ fingerprint.setCode(code);
+ fingerprint.setUsername(currUser.getUsername());
+ fingerprint.setPassword(currUser.getDescription());
+ iFingerprintService.saveOrUpdate(fingerprint);
+ return new ResultUtil<Object>().setData(code);
+ }
+ }
+
+
@RequestMapping(value = "/insertOrUpdate", method = RequestMethod.POST)
@ApiOperation(value = "缂栬緫鎴栨洿鏂版暟鎹�")
public Result<Fingerprint> saveOrUpdate(Fingerprint fingerprint) {
-
- if (iFingerprintService.saveOrUpdate(fingerprint)) {
- return new ResultUtil<Fingerprint>().setData(fingerprint);
+ if(StrUtil.isEmpty(fingerprint.getFileId())){
+ return ResultUtil.error("fileId涓嶈兘涓虹┖");
}
+
+ if(StrUtil.isNotEmpty(fingerprint.getUserId())){
+ QueryWrapper<Fingerprint> wp = new QueryWrapper<Fingerprint>();
+ wp.eq("code",fingerprint.getCode());
+ wp.isNotNull("user_id");
+ List<Fingerprint> f = iFingerprintService.list(wp);
+ if(f.size()>1){
+ return ResultUtil.error("code閲嶅锛岃閲嶆柊鑾峰彇code骞跺綍鍏ユ寚绾�");
+ }
+
+ QueryWrapper<Fingerprint> wrapper = new QueryWrapper<Fingerprint>();
+ wrapper.eq("code",fingerprint.getCode());
+ wrapper.eq("user_id",fingerprint.getUserId());
+ Fingerprint one = iFingerprintService.getOne(wrapper);
+ if(one!=null){
+ one.setFileId(fingerprint.getFileId());
+// User user = userService.get(fingerprint.getUserId());
+// one.setUsername(user.getUsername());
+// one.setPassword(user.getDescription());
+// one.setType(user.getType2());
+ iFingerprintService.saveOrUpdate(one);
+ }else{
+ return ResultUtil.error("鏈壘鍒伴渶瑕佹洿鏂扮殑鎸囩汗");
+ }
+
+ }
+
+ 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閲嶅浜嗭紝璇烽噸鏂拌幏鍙�");
+ }
+ }else{
+ return ResultUtil.error("customerId涓嶈兘涓虹┖");
+ }
+
+ 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);
+ }
+ }
+
return new ResultUtil<Fingerprint>().setErrorMsg("鎿嶄綔澶辫触");
}
+
@RequestMapping(value = "/delByIds", method = RequestMethod.POST)
@ApiOperation(value = "鎵归噺閫氳繃id鍒犻櫎")
public Result<Object> delAllByIds(@RequestParam String[] ids) {
--
Gitblit v1.9.1