From 29fc101ccd5165a1c3d762ba3a240b1a0ab4ddfe Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期二, 10 九月 2024 13:08:27 +0800 Subject: [PATCH] 代码初始化 --- server/system_service/src/main/java/com/doumee/core/utils/Constants.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java | 41 +++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java | 6 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformJobCloudController.java | 10 server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/PCWorkPlatformDataVO.java | 87 ++++++++ server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java | 14 + server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java | 7 server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java | 7 server/system_service/src/main/java/com/doumee/core/utils/DESUtil.java | 51 +++++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 17 + server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java | 52 +++++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java | 24 ++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/HkBaseTokenRequest.java | 20 ++ server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformBooksCloudController.java | 58 ++++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformGroupWorkVO.java | 20 ++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java | 21 ++ server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java | 98 ++++++++- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java | 8 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java | 21 + server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformBooks.java | 14 + server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java | 9 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java | 4 22 files changed, 552 insertions(+), 39 deletions(-) diff --git a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java index 57c23f5..09a1473 100644 --- a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java +++ b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java @@ -30,6 +30,7 @@ public static final String HEADER_USER_TOKEN = "dm_user_token"; public static final String REDIS_TOKEN_KEY = "token_"; public static final String REDIS_HK_TOKEN_KEY = "hk_token_"; + public static final String HK_TOKEN_VALIDITY = "HK_TOKEN_VALIDITY"; public static final String[] ALL_SPELL_LIST_FIRST = new String[]{"A", "B", "C", "D", "E", "F", "G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"}; public static final int ZERO = 0 ; public static final int ONE = 1 ; @@ -826,6 +827,7 @@ AUTHED_LEAVE(9, "宸叉巿鏉冪鍥�","宸叉巿鏉冪鍥�" ), LEAVED(10, "宸茬鍥� ","宸茬鍥� " ), OVER_NUMBER(11, "宸茶繃鍙�","宸茶繃鍙�" ), + CANCEL(12, "宸插彇娑�","宸插彇娑�" ), ; // 鎴愬憳鍙橀噺 diff --git a/server/system_service/src/main/java/com/doumee/core/utils/DESUtil.java b/server/system_service/src/main/java/com/doumee/core/utils/DESUtil.java index 3486129..959cc6e 100644 --- a/server/system_service/src/main/java/com/doumee/core/utils/DESUtil.java +++ b/server/system_service/src/main/java/com/doumee/core/utils/DESUtil.java @@ -1,5 +1,12 @@ package com.doumee.core.utils; +import com.alibaba.fastjson.JSONObject; +import com.doumee.core.constants.ResponseStatus; +import com.doumee.core.exception.BusinessException; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; + import javax.crypto.Cipher; import javax.crypto.CipherInputStream; import javax.crypto.CipherOutputStream; @@ -9,6 +16,7 @@ import java.io.*; import java.security.Key; import java.util.Base64; +import java.util.concurrent.TimeUnit; public class DESUtil { @@ -169,4 +177,47 @@ } return null; } + + + /** + * 娴峰悍鍔犲瘑 + * @param userName + * @param hour + * @return + */ + public static String generateTokenToHk(String userName,Integer hour, RedisTemplate<String,Object> redisTemplate){ + long currentTimeMillis = System.currentTimeMillis() + 1000*60*60*hour; + String encrypt = DESUtil.encrypt("12345678",currentTimeMillis + "_" + userName ); + redisTemplate.opsForValue().set(Constants.REDIS_HK_TOKEN_KEY+encrypt, encrypt,1000*60*60*hour, TimeUnit.MILLISECONDS); + return encrypt; + } + + + /** + * 娴峰悍瑙g爜 + * @param token + * @return + */ + public static String verifyHkToken(String token){ + String decrypt = DESUtil.decrypt("12345678",token); + if(StringUtils.isBlank(decrypt)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"token瑙f瀽澶辫触"); + } + try{ + Integer index_ = decrypt.indexOf("_"); + long currentTimeMillis = Long.valueOf(decrypt.substring(Constants.ZERO,index_)); + if(currentTimeMillis<=System.currentTimeMillis()){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"token宸茶繃鏈�"); + } + String userName = decrypt.substring(index_+Constants.ONE); + return userName ; + }catch (Exception e){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"token瑙f瀽澶辫触"); + } + + } + + + + } \ No newline at end of file diff --git a/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java b/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java index a4cd38c..fbd64de 100644 --- a/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java +++ b/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java @@ -2971,6 +2971,13 @@ return DateToStr(date, "yyyyMMdd"); } + public static String afterDateHourToStr(Integer hour){ + Date date = new Date(); + Long l = date.getTime()+1000*60*60*hour; + date.setTime(l); + return DateToStr(date, "yyyyMMdd"); + } + public static String beforeDateToStr(Integer days){ Date date = new Date(); Long l = date.getTime()-1000*60*60*24*days; diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java index 0b00a66..6fb07a9 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java @@ -1,6 +1,7 @@ package com.doumee.cloud.admin; import com.doumee.api.BaseController; +import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.config.annotation.CloudRequiredPermission; import com.doumee.config.annotation.LoginNoRequired; import com.doumee.core.annotation.pr.PreventRepeat; @@ -13,7 +14,9 @@ import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest; import com.doumee.core.haikang.service.HKService; import com.doumee.core.model.ApiResponse; +import com.doumee.core.model.LoginUserInfo; import com.doumee.core.utils.Constants; +import com.doumee.core.utils.DESUtil; import com.doumee.dao.business.model.Device; import com.doumee.service.business.impl.hksync.*; import io.swagger.annotations.Api; @@ -22,6 +25,7 @@ import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; @@ -47,6 +51,14 @@ private HkSyncPushServiceImpl hkSyncPushService; @Autowired private HkSyncLoginAuthServiceImpl hkSyncLoginAuthService; + + @Autowired + private SystemDictDataBiz systemDictDataBiz; + + @Autowired + private RedisTemplate<String,Object> redisTemplate; + + @PreventRepeat @ApiOperation("銆愭捣搴枫�戝叏閲忓悓姝ユ湀鍙颁俊鎭帴鍙�") @PostMapping("/syncPlatforms") @@ -167,9 +179,12 @@ @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type",example = "0",value = "鑿滃崟绫诲瀷", required = true), }) - public ApiResponse<String> getHkMenuLink(Integer type){ - String token = "";//------------TODO----------搴峰悍缁х画鍐� - return ApiResponse.success( HKService.getMenuUrl(type,token)); + public ApiResponse<String> getHkMenuLink(Integer type,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + LoginUserInfo loginUserInfo = this.getLoginUser(token); + String hkToken = DESUtil.generateTokenToHk(loginUserInfo.getUsername(),Integer.valueOf( + systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_TOKEN_VALIDITY).getCode() + ),redisTemplate); + return ApiResponse.success( HKService.getMenuUrl(type,hkToken)); } } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformBooksCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformBooksCloudController.java index dd1490d..cea4426 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformBooksCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformBooksCloudController.java @@ -1,21 +1,28 @@ package com.doumee.cloud.admin; import com.doumee.api.BaseController; +import com.doumee.config.annotation.CloudRequiredPermission; 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.LoginUserInfo; import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.PlatformBooks; +import com.doumee.dao.business.model.PlatformReason; +import com.doumee.dao.web.reqeust.PlatformBooksApplyDTO; +import com.doumee.dao.web.reqeust.PlatformBooksCheckNumDTO; +import com.doumee.dao.web.response.DriverHomeVO; import com.doumee.service.business.PlatformBooksService; +import com.doumee.service.business.PlatformReasonService; 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.math.BigDecimal; import java.util.ArrayList; import java.util.List; @@ -30,18 +37,20 @@ @Autowired private PlatformBooksService platformBooksService; + @Autowired + private PlatformReasonService platformReasonService; @PreventRepeat @ApiOperation("鏂板缓") @PostMapping("/create") - @RequiresPermissions("business:platformbooks:create") + @CloudRequiredPermission("business:platformbooks:create") public ApiResponse create(@RequestBody PlatformBooks platformBooks) { return ApiResponse.success(platformBooksService.create(platformBooks)); } @ApiOperation("鏍规嵁ID鍒犻櫎") @GetMapping("/delete/{id}") - @RequiresPermissions("business:platformbooks:delete") + @CloudRequiredPermission("business:platformbooks:delete") public ApiResponse deleteById(@PathVariable Integer id) { platformBooksService.deleteById(id); return ApiResponse.success(null); @@ -49,7 +58,7 @@ @ApiOperation("鎵归噺鍒犻櫎") @GetMapping("/delete/batch") - @RequiresPermissions("business:platformbooks:delete") + @CloudRequiredPermission("business:platformbooks:delete") public ApiResponse deleteByIdInBatch(@RequestParam String ids) { String [] idArray = ids.split(","); List<Integer> idList = new ArrayList<>(); @@ -62,7 +71,7 @@ @ApiOperation("鏍规嵁ID淇敼") @PostMapping("/updateById") - @RequiresPermissions("business:platformbooks:update") + @CloudRequiredPermission("business:platformbooks:update") public ApiResponse updateById(@RequestBody PlatformBooks platformBooks) { platformBooksService.updateById(platformBooks); return ApiResponse.success(null); @@ -70,22 +79,53 @@ @ApiOperation("鍒嗛〉鏌ヨ") @PostMapping("/page") - @RequiresPermissions("business:platformbooks:query") - public ApiResponse<PageData<PlatformBooks>> findPage (@RequestBody PageWrap<PlatformBooks> pageWrap) { + @CloudRequiredPermission("business:platformbooks:query") + public ApiResponse<PageData<PlatformBooks>> findPage (@RequestBody PageWrap<PlatformBooks> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { return ApiResponse.success(platformBooksService.findPage(pageWrap)); } @ApiOperation("瀵煎嚭Excel") @PostMapping("/exportExcel") - @RequiresPermissions("business:platformbooks:exportExcel") + @CloudRequiredPermission("business:platformbooks:exportExcel") public void exportExcel (@RequestBody PageWrap<PlatformBooks> pageWrap, HttpServletResponse response) { ExcelExporter.build(PlatformBooks.class).export(platformBooksService.findPage(pageWrap).getRecords(), "鏈堝彴鍏ュ洯棰勭害淇℃伅琛�", response); } @ApiOperation("鏍规嵁ID鏌ヨ") @GetMapping("/{id}") - @RequiresPermissions("business:platformbooks:query") + @CloudRequiredPermission("business:platformbooks:query") public ApiResponse findById(@PathVariable Integer id) { return ApiResponse.success(platformBooksService.findById(id)); } + + + + @ApiOperation("鍏ュ洯鍘熷洜") + @GetMapping("/platformReasonList") + public ApiResponse<List<PlatformReason>> platformReasonList (@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + List<PlatformReason> platformReasons = platformReasonService.findList(null); + return ApiResponse.success(platformReasons); + } + + @ApiOperation("鏌ヨ鍙绾﹂噺") + @PostMapping("/checkSurplusNum") + public ApiResponse<BigDecimal> checkSurplusNum (@RequestBody PlatformBooksCheckNumDTO platformBooksCheckNumDTO , @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + return ApiResponse.success(platformBooksService.checkNum(platformBooksCheckNumDTO)); + } + + @ApiOperation("鐗╂祦杞﹂绾�") + @PostMapping("/apply") + public ApiResponse<Integer> apply (@RequestBody PlatformBooksApplyDTO platformBooksApplyDTO , @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + LoginUserInfo loginUserInfo = getLoginUser(token); + platformBooksApplyDTO.setUserId(loginUserInfo.getMemberId()); + platformBooksApplyDTO.setDriverId(loginUserInfo.getMemberId()); + return ApiResponse.success(platformBooksService.apply(platformBooksApplyDTO)); + } + + @ApiOperation("鐗╂祦杞﹂绾﹁鎯�") + @GetMapping("/getDetail") + public ApiResponse<PlatformBooks> getDetail (@RequestParam Integer id, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + PlatformBooks platformBooks = platformBooksService.getDetail(id,getLoginUser(token).getMemberId()); + return ApiResponse.success(platformBooks); + } } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java index 5acfa7d..3359739 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java @@ -13,6 +13,7 @@ import com.doumee.dao.business.model.PlatformJob; import com.doumee.dao.web.reqeust.JobOperateDTO; import com.doumee.dao.web.reqeust.PlatformDataDTO; +import com.doumee.dao.web.response.PlatformGroupWorkVO; import com.doumee.dao.web.response.PlatformWorkVO; import com.doumee.service.business.PlatformGroupService; import com.doumee.service.business.PlatformJobService; @@ -212,6 +213,19 @@ return ApiResponse.success("鎿嶄綔鎴愬姛"); } + @ApiOperation("鎺堟潈绂诲満") + @PostMapping("/powerLevel") + public ApiResponse powerLevel (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + jobOperateDTO.setLoginUserInfo(getLoginUser(token)); + platformJobService.powerLevel(jobOperateDTO); + return ApiResponse.success("鎿嶄綔鎴愬姛"); + } + + @ApiOperation("鑾峰彇鏈堝彴缁� 绛夊緟涓庡紓甯告寕璧锋暟鎹�") + @GetMapping("/getPlatformGroupWork") + public ApiResponse<PlatformGroupWorkVO> getPlatformGroupWork (@RequestParam Integer platformGroupId, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + return ApiResponse.success(platformGroupService.getPlatformGroupWork(platformGroupId)); + } } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformJobCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformJobCloudController.java index 5c71da5..f71d7c1 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformJobCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformJobCloudController.java @@ -9,6 +9,7 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.PlatformJob; +import com.doumee.dao.web.reqeust.JobDetailDTO; import com.doumee.service.business.PlatformJobService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -41,7 +42,7 @@ @GetMapping("/delete/{id}") @CloudRequiredPermission("business:platformjob:delete") public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ - platformJobService.deleteById(id); + platformJobService.delete(id); return ApiResponse.success(null); } @@ -81,4 +82,11 @@ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ return ApiResponse.success(platformJobService.findById(id)); } + + @ApiOperation("浠诲姟璇︽儏") + @PostMapping("/jobDetail") + @CloudRequiredPermission("business:platformjob:query") + public ApiResponse<PlatformJob> jobDetail (@RequestBody JobDetailDTO jobDetailDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + return ApiResponse.success(platformJobService.getDetail(jobDetailDTO)); + } } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java index 686dbf0..c2292a7 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java @@ -1,26 +1,32 @@ package com.doumee.cloud.openapi; +import cn.emay.sdk.util.AES; import com.doumee.api.BaseController; +import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.config.annotation.LoginNoRequired; +import com.doumee.config.jwt.JwtTokenUtil; import com.doumee.core.annotation.pr.PreventRepeat; +import com.doumee.core.constants.ResponseStatus; +import com.doumee.core.exception.BusinessException; import com.doumee.core.model.ApiResponse; import com.doumee.core.utils.Constants; +import com.doumee.core.utils.DESUtil; import com.doumee.dao.openapi.request.*; import com.doumee.dao.openapi.response.*; +import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.PlatformJobService; import com.doumee.service.business.PlatformLogService; import com.doumee.service.business.PlatformService; import com.doumee.service.business.PlatformWaterGasService; +import com.doumee.service.system.SystemUserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.web.bind.annotation.*; -import java.util.ArrayList; -import java.util.List; +import java.util.*; /** * @author 姹熻箘韫� @@ -43,75 +49,135 @@ @Autowired private PlatformWaterGasService platformWaterGasService; + @Autowired + private SystemUserService systemUserService; + + @Autowired + private SystemDictDataBiz systemDictDataBiz; + + @Autowired + private RedisTemplate<String,Object> redisTemplate; + + @LoginNoRequired + @ApiOperation("token瑙f瀽") + @GetMapping("/water/decodeToken") + public ApiResponse<Map<String,Object>> decodeToken(@RequestParam String token) { + HkBaseTokenRequest hkBaseTokenRequest = new HkBaseTokenRequest(); + hkBaseTokenRequest.setToken(token); + return ApiResponse.success(this.decodeTokenForHk(hkBaseTokenRequest)); + } + + + public Map<String,Object> decodeTokenForHk(HkBaseTokenRequest hkBaseTokenRequest){ + if(Objects.isNull(hkBaseTokenRequest)||StringUtils.isBlank(hkBaseTokenRequest.getToken())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"token鍙傛暟涓虹┖"); + } + String redisToken = (String) redisTemplate.opsForValue().get(Constants.REDIS_HK_TOKEN_KEY+hkBaseTokenRequest.getToken()); + if(StringUtils.isBlank(redisToken)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"token瑙f瀽澶辫触"); + } + + String userName = DESUtil.verifyHkToken(hkBaseTokenRequest.getToken()); + if(StringUtils.isBlank(userName)){ + throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"token瑙f瀽澶辫触"); + } + //鏌ヨ鐢ㄦ埛淇℃伅鏄惁瀛樺湪 + SystemUser systemUser = new SystemUser(); + systemUser.setUsername(userName); + systemUser.setDeleted(Boolean.FALSE); + SystemUser queryBean = systemUserService.findOne(systemUser); + if(Objects.isNull(queryBean)){ + throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"token瑙f瀽澶辫触"); + } + if(Constants.equalsInteger(queryBean.getStatus(),Constants.ONE)){ + throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"鐢ㄦ埛宸茬鐢�"); + } + redisTemplate.delete(Constants.REDIS_HK_TOKEN_KEY+hkBaseTokenRequest.getToken()); + Map<String,Object> result = new HashMap<>(); + result.put("userId",userName); + return result; + } + + + @LoginNoRequired @PreventRepeat @ApiOperation("銆愮敤姘撮噺銆戞湰鏈堛�佷笂鏈堝拰鍘诲勾鍚屾湀") @PostMapping("/water/dataByMonth") - @LoginNoRequired public ApiResponse<WaterByMonthResponse> waterDataByMonth(@RequestBody WaterByMonthRequest param) { return ApiResponse.success(platformWaterGasService.waterDataByMonth(param)); } + + @LoginNoRequired @PreventRepeat @ApiOperation("銆愮敤姘旈噺銆戞湰鏈堛�佷笂鏈堝拰鍘诲勾鍚屾湀") @PostMapping("/gas/dataByMonth") - @LoginNoRequired public ApiResponse<GasByMonthResponse> gasDataByMonth(@RequestBody GasByMonthRequest param) { return ApiResponse.success(platformWaterGasService.gasDataByMonth(param)); } + + @LoginNoRequired @PreventRepeat @ApiOperation("銆愭湀鍙般�戞寜澶╃粺璁¤繍鍗曡姹傚弬鏁�") @PostMapping("/platform/orderNumByDate") - @LoginNoRequired public ApiResponse<PlatformOrderNumByDateResponse> orderNumByDate(@RequestBody PlatformOrderNumByDateRequest param) { return ApiResponse.success(platformJobService.orderNumByDate(param)); } + + + @LoginNoRequired @PreventRepeat @ApiOperation("銆愭湀鍙般�戞湀鍙扮姸鎬佹暟閲忕粺璁�") @PostMapping("/platform/totalNumByStatus") - @LoginNoRequired public ApiResponse<PlatformNumByStatusResponse> totalNumByStatus(@RequestBody PlatformNumByStatusRequest param) { return ApiResponse.success(platformService.getPlatformNumByStatusResponse()); } + + + @LoginNoRequired @PreventRepeat @ApiOperation("銆愭湀鍙般�戞湀鍙板綋鍓嶄綔涓氫俊鎭垪琛�") @PostMapping("/platform/workingDataList") - @LoginNoRequired public ApiResponse<List<PlatformDataListResponse>> platformWorkingDataList(@RequestBody PlatformDataListRequest param) { return ApiResponse.success(platformJobService.platformWorkingDataList(param)); } + + @LoginNoRequired @PreventRepeat @ApiOperation("銆愭湀鍙般�戞湀鍙颁綔涓氳鎯呬俊鎭�") @PostMapping("/platform/workDataInfo") - @LoginNoRequired public ApiResponse<PlatformDataInfoResponse> platformWorkingDataList(@RequestBody PlatformDataInfoRequest param) { return ApiResponse.success(platformJobService.platformWorkingDataList(param)); } + + + @LoginNoRequired @PreventRepeat @ApiOperation("銆愭湀鍙般�戝綋鍓嶈溅杈嗙姸鎬佹暟閲忕粺璁�") @PostMapping("/platform/carStatusNum") - @LoginNoRequired public ApiResponse<CarNumByStatusResponse> carStatusNum(@RequestBody CarNumByStatusRequest param) { return ApiResponse.success(platformJobService.carStatusNum(param)); } + @LoginNoRequired @PreventRepeat @ApiOperation("銆愭湀鍙般�戣溅杈嗕簨浠跺垪琛ㄦ暟鎹泦鍚堬紙鏈�鏂癗鏉★級") @PostMapping("/platform/carLogsList") - @LoginNoRequired public ApiResponse<List<CarLogsListResponse>> carLogsList(@RequestBody CarLogsListRequest param) { return ApiResponse.success(platformLogService.getCarLogsListResponse(param)); } + + @LoginNoRequired @PreventRepeat @ApiOperation("銆愭湀鍙般�戞帓闃熼槦鍒楀垪琛ㄩ泦鍚�") @PostMapping("/platform/queueList") - @LoginNoRequired public ApiResponse<PlatformQueuingListResponse> queueList(@RequestBody PlatformQueuingListRequest param) { return ApiResponse.success(platformJobService.queueList(param)); } + @LoginNoRequired @PreventRepeat @ApiOperation("銆愭湀鍙般�戦璀︿簨浠堕泦鍚堝垪琛�") @PostMapping("/platform/warningEventList") - @LoginNoRequired public ApiResponse<List<PlatformWarnEventListResponse>> warningEventList(@RequestBody PlatformWarnEventListRequest param) { return ApiResponse.success(new ArrayList<>()); } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java index be7e9e7..eff6a72 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/config/swagger/SwaggerConfig.java @@ -52,8 +52,11 @@ .apiInfo(this.getApiInfo()).groupName("default") .host(host) .select() - .apis( basePackage("com.doumee.cloud.openapi;com.doumee.api.common")) -// .apis( basePackage("com.doumee.cloud.openapi;")) + .apis( basePackage("com.doumee.cloud")) +// .apis( basePackage("com.doumee.api.common")) + +// .apis( basePackage("com.doumee.cloud.openapi;com.doumee.api.common")) +// .apis( basePackage("com.doumee.cloud.openapi")) // 璁剧疆闇�瑕佽鎵弿鐨勭被锛岃繖閲岃缃负娣诲姞浜咢Api娉ㄨВ鐨勭被 // .apis(RequestHandlerSelectors.withClassAnnotation(Api.class)) .paths(PathSelectors.any()) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/PCWorkPlatformDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/PCWorkPlatformDataVO.java new file mode 100644 index 0000000..287cbc1 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/response/PCWorkPlatformDataVO.java @@ -0,0 +1,87 @@ +package com.doumee.dao.admin.response; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; +import java.util.Map; + +/** + * Created by IntelliJ IDEA. + * + * @Author : Rk + * @create 2024/2/26 11:02 + */ +@Data +@ApiModel("PC绔伐浣滃彴鏁版嵁") +public class PCWorkPlatformDataVO { + + @ApiModelProperty(value = "浠婃棩鍦ㄥ洯浜烘暟") + private Long todayInParkUserNum; + + @ApiModelProperty(value = "浠婃棩鍏ュ洯浜烘暟") + private Long todayInUserNum; + + @ApiModelProperty(value = "浠婃棩绂诲洯浜烘暟") + private Long todayOutUserNum; + + + @ApiModelProperty(value = "鍦ㄥ洯璁垮浜烘暟") + private Long inParkVisitUserNum; + + @ApiModelProperty(value = "璁垮浜烘") + private Long visitUserNum; + + @ApiModelProperty(value = "绛剧浜烘") + private Long signLevelNum; + + + @ApiModelProperty(value = "鍦ㄥ洯闀挎湡鐩稿叧鏂逛汉鏁�") + private Long inParkLwUserNum; + + @ApiModelProperty(value = "鍏ュ洯浜烘") + private Long lwUserInNum; + + @ApiModelProperty(value = "鍑哄洯浜烘") + private Long lwUserOutNum; + + + @ApiModelProperty(value = "浠婃棩鍦ㄥ洯杞﹁締") + private Long todayInParkCarNum; + + @ApiModelProperty(value = "鍏ュ洯杞︽") + private Long todayInCarNum; + + @ApiModelProperty(value = "鍑哄洯杞︽") + private Long todayOutCarNum; + + + + + + @ApiModelProperty(value = "璁垮浜哄憳") + private Long visitorCount; + + @ApiModelProperty(value = "鍔冲姟浜哄憳") + private Long lwCount; + + @ApiModelProperty(value = "鍦ㄥ満杞﹁締") + private Long presenceCarCount; + + @ApiModelProperty(value = "棰勭害杞﹁締") + private Long visitorCarCount; + + @ApiModelProperty(value = "闀挎湡杞﹁締") + private Long longCarCount; + + @ApiModelProperty(value = "渚涘簲鍟嗘暟閲�") + private Long supplierCount; + + @ApiModelProperty(value = "鍔冲姟鍏徃浜哄憳鏁�") + private List<Map<String,Object>> companyUsers; + + @ApiModelProperty(value = "婊炵暀浜哄憳鏁版嵁") + private List<Map<String,Object>> retentionUsers; + +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformBooks.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformBooks.java index 12e06bd..ff5947f 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformBooks.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformBooks.java @@ -69,7 +69,6 @@ @ApiModelProperty(value = "棰勮鍒板満鏃堕棿") @ExcelColumn(name="棰勮鍒板満鏃堕棿") - private Date arriveDate; @ApiModelProperty(value = "鍏ュ簱绫诲瀷 0鏁存墭鐩� 1浠剁儫", example = "1") @@ -140,6 +139,19 @@ @TableField(exist = false) private String prefixUrl; + @ApiModelProperty(value = "棰勮鍒板満寮�濮嬫椂闂�") + @TableField(exist = false) + private Date arriveDateStart; + + @ApiModelProperty(value = "棰勮鍒板満缁撴潫鏃堕棿") + @TableField(exist = false) + private Date arriveDateEnd; + + @ApiModelProperty(value = "瀹℃壒浜哄悕绉�") + @TableField(exist = false) + private String auditName; + + @ApiModelProperty(value = "瀹℃壒淇℃伅鏁版嵁") @TableField(exist = false) private ApproveDataVO approveDateVO; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java index c916a3d..8125540 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java @@ -59,8 +59,8 @@ @ExcelColumn(name="澶囨敞") private String remark; - @ApiModelProperty(value = "鐘舵�� 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙�", example = "1") - @ExcelColumn(name="鐘舵�� 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙�") + @ApiModelProperty(value = "鐘舵�� 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙� 12鍙栨秷锛圵MS锛�" , example = "1") + @ExcelColumn(name="鐘舵�� 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙� 12鍙栨秷锛圵MS锛�") private Integer status; @ApiModelProperty(value = "鎺掑簭鐮�", example = "1") @@ -206,12 +206,17 @@ @ApiModelProperty(value = "杞﹁締绂诲巶涓嬪彂鏃堕棿") @ExcelColumn(name="杞﹁締绂诲巶涓嬪彂鏃堕棿") - private Date outHkdate; @ApiModelProperty(value = "杞﹁締绂诲巶涓嬪彂澶囨敞") @ExcelColumn(name="杞﹁締绂诲巶涓嬪彂澶囨敞") private String outHkinfo; + + + @ApiModelProperty(value = "绂诲満涓嬪彂鎿嶄綔浜�", example = "1") + @ExcelColumn(name="绂诲満涓嬪彂鎿嶄綔浜�") + private Integer outUserId; + @ApiModelProperty(value = "杞﹁締杩涘巶涓嬪彂鐘舵�� 0寰呬笅鍙� 1涓嬪彂涓� 2涓嬪彂鎴愬姛 3涓嬪彂澶辫触", example = "1") @ExcelColumn(name="杞﹁締杩涘巶涓嬪彂鐘舵�� 0寰呬笅鍙� 1涓嬪彂涓� 2涓嬪彂鎴愬姛 3涓嬪彂澶辫触") @@ -277,6 +282,11 @@ @ExcelColumn(name="鎬昏繍杈撻噺") private BigDecimal totalNum; + @ApiModelProperty(value = "纭浠诲姟鏃堕棿") + @ExcelColumn(name="纭浠诲姟鏃堕棿") + private Date confirmTaskDate; + + @ApiModelProperty(value = "鍓嶆柟鎺掗槦鏁伴噺", example = "1") @TableField(exist = false) private Integer lineUpNum; @@ -292,6 +302,11 @@ @ApiModelProperty(value = "浣滀笟鏈堝彴鍚嶇О") @TableField(exist = false) private String platformName ; + + + @ApiModelProperty(value = "绂诲満涓嬪彂鎿嶄綔浜哄悕绉�", example = "1") + @TableField(exist = false) + private String outUserName; @ApiModelProperty(value = "wms涓氬姟涓婚敭") @TableField(exist = false) @@ -336,6 +351,26 @@ @TableField(exist = false) private Integer callType; + @ApiModelProperty(value = "浣滀笟绫诲瀷 0=瀹夋嘲鐗╂祦杞︿换鍔★紱1=甯傚叕鍙歌溅", example = "1") + @TableField(exist = false) + private Integer jobType; + + @ApiModelProperty(value = "寮�濮嬩换鍔℃椂闂磋捣") + @TableField(exist = false) + private Date beginWorkDateStart; + + @ApiModelProperty(value = "寮�濮嬩换鍔℃椂闂存") + @TableField(exist = false) + private Date beginWorkDateEnd; + + @ApiModelProperty(value = "澶氱姸鎬佹煡璇� 澶氫釜浠�,鍒嗗壊") + @TableField(exist = false) + private String queryStatus; + + @ApiModelProperty(value = "鐢靛瓙閿佺姸鎬侊細0=鏈笂閿� 1=涓嶅垎涓婇攣 2=鍏ㄩ儴涓婇攣") + @TableField(exist = false) + private Integer lockStatus; + public void dealTime(){ if(Constants.equalsInteger(this.getStatus(),Constants.PlatformJobStatus.WAIT_CONFIRM.getKey()) || Constants.equalsInteger(this.getStatus(),Constants.PlatformJobStatus.WART_SIGN_IN.getKey()) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/HkBaseTokenRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/HkBaseTokenRequest.java new file mode 100644 index 0000000..a324ca1 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/HkBaseTokenRequest.java @@ -0,0 +1,20 @@ +package com.doumee.dao.openapi.request; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Created by IntelliJ IDEA. + * + * @Author : Rk + * @create 2023/12/7 11:19 + */ +@Data +@ApiModel("娴峰悍澶у睆BaseToken") +public class HkBaseTokenRequest { + + @ApiModelProperty(value = "token") + private String token; + +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java index 816c6db..65c78c0 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java @@ -18,8 +18,10 @@ */ @Data @ApiModel("鏈湀銆佷笂鏈堛�佸幓骞村悓鏈堢敤姘撮噺璇锋眰鍙傛暟") -public class WaterByMonthRequest { +public class WaterByMonthRequest extends HkBaseTokenRequest{ + @ApiModelProperty(value = "骞存湀淇℃伅锛屾牸寮忥細yyyy-MM",example = "2024-08") @JsonFormat(pattern = "yyyy-MM") private Date timeInfo; + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformGroupWorkVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformGroupWorkVO.java new file mode 100644 index 0000000..b4dba48 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformGroupWorkVO.java @@ -0,0 +1,20 @@ +package com.doumee.dao.web.response; + +import com.doumee.dao.business.model.PlatformJob; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +@ApiModel("鏈堝彴浠诲姟鏁版嵁") +public class PlatformGroupWorkVO { + + @ApiModelProperty(value = "绛夊緟鏁伴噺") + private Long waitNum ; + + @ApiModelProperty(value = "寮傚父鏁伴噺") + private Long exceptionNum ; + +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java index e6e7570..a161b3e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java @@ -117,4 +117,13 @@ ApproveDataVO arrangeApprovedData(Integer businessId, Integer businessType, Integer memberId); void approved(ApproveDTO approveDTO); + + /** + * 鏍规嵁涓氬姟涓婚敭鏌ヨ 瀹℃壒浜哄悕绉� + * @param businessId + * @param businessType + * @return + */ + String getApproveUserName(Integer businessId,Integer businessType); + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java index 1b843fc..f558b09 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java @@ -5,6 +5,7 @@ import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.PlatformGroup; import com.doumee.dao.web.reqeust.PlatformDataDTO; +import com.doumee.dao.web.response.PlatformGroupWorkVO; import com.doumee.dao.web.response.PlatformWorkVO; import java.util.List; @@ -110,6 +111,11 @@ List<PlatformGroup> getAllPlatformGroup(PlatformDataDTO platformDataDTO, LoginUserInfo loginUserInfo); - + /** + * 鑾峰彇鏈堝彴缁� 绛夊緟涓庡紓甯告暟鎹� + * @param platformGroupId + * @return + */ + PlatformGroupWorkVO getPlatformGroupWork(Integer platformGroupId); } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java index 483569a..d82cd9f 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java @@ -36,6 +36,7 @@ */ void deleteById(Integer id); + void delete(Integer id); /** * 鍒犻櫎 * @@ -181,6 +182,11 @@ void finishWork(JobOperateDTO jobOperateDTO); /** + * 鎵嬪姩鎺堟潈杞﹁締绂诲満 + * @param jobOperateDTO + */ + void powerLevel(JobOperateDTO jobOperateDTO); + /** * 鑾峰彇鏈堝彴涓嬬殑浠诲姟淇℃伅 * @param groupId * @param loginUserInfo diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java index 9cef87e..9fca5c3 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java @@ -1050,6 +1050,23 @@ return Constants.ZERO; } + @Override + public String getApproveUserName(Integer businessId,Integer businessType){ + List<Approve> approveList = approveJoinMapper.selectJoinList(Approve.class,new MPJLambdaWrapper<Approve>() + .selectAll(Approve.class) + .selectAs(Member::getName,Approve::getMemberName) + .leftJoin(Member.class,Member::getId,Approve::getChekorId) + .eq(Approve::getObjId,businessId) + .eq(Approve::getObjType,businessType) + .eq(Approve::getType,Constants.ZERO) + .eq(Approve::getStatus,Constants.approveStatus.auditIng) + ); + if(CollectionUtils.isNotEmpty(approveList)){ + List<String> names = approveList.stream().map(m->m.getMemberName()).collect(Collectors.toList()); + return String.join(",",names); + } + return null; + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java index e47c027..e9b3d38 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java @@ -18,6 +18,7 @@ import com.doumee.dao.business.join.ApproveJoinMapper; import com.doumee.dao.business.model.*; import com.doumee.dao.business.vo.ApproveDataVO; +import com.doumee.dao.system.join.NoticesJoinMapper; import com.doumee.dao.web.reqeust.ConfirmTaskDTO; import com.doumee.dao.web.reqeust.PlatformBooksApplyDTO; import com.doumee.dao.web.reqeust.PlatformBooksCheckNumDTO; @@ -51,6 +52,9 @@ @Autowired private PlatformBooksMapper platformBooksMapper; + + @Autowired + private NoticesJoinMapper noticesJoinMapper; @Autowired private ApproveTemplMapper approveTemplMapper; @@ -159,10 +163,24 @@ .eq(pageWrap.getModel().getPlateNum() != null, PlatformBooks::getPlateNum, pageWrap.getModel().getPlateNum()) .eq(pageWrap.getModel().getDriverPhone() != null, PlatformBooks::getDriverPhone, pageWrap.getModel().getDriverPhone()) .ge(pageWrap.getModel().getQueryDate() != null, PlatformBooks::getCreateDate, pageWrap.getModel().getQueryDate()) + .ge(pageWrap.getModel().getArriveDateStart() != null, PlatformBooks::getArriveDate, Utils.Date.getStart(pageWrap.getModel().getArriveDateStart())) + .le(pageWrap.getModel().getArriveDateEnd() != null, PlatformBooks::getArriveDate, Utils.Date.getEnd(pageWrap.getModel().getArriveDateEnd())) .orderByDesc(PlatformBooks::getCreateDate) ; - return PageData.from(platformBooksMapper.selectPage(page, queryWrapper)); + PageData<PlatformBooks> pageData = PageData.from(platformBooksMapper.selectPage(page, queryWrapper)); + for (PlatformBooks platformBooks:pageData.getRecords()) { + if(Constants.equalsInteger(platformBooks.getStatus(),Constants.ONE)){ + String auditName = approveService.getApproveUserName(platformBooks.getId(),Constants.approveObjectType.reason); + platformBooks.setAuditName(auditName); + } + } + + return pageData; } + + + + @Override public long count(PlatformBooks platformBooks) { @@ -236,6 +254,7 @@ platformBooks.setIsdeleted(Constants.ZERO); platformBooks.setStatus(Constants.ZERO); platformBooks.setDriverId(platformBooksApplyDTO.getUserId()); + platformBooks.setEditDate(new Date()); platformBooksMapper.insert(platformBooks); //鍒涘缓瀹℃壒娴佷俊鎭� diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java index 578a97b..7257cc8 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java @@ -17,6 +17,7 @@ import com.doumee.dao.business.model.PlatformJob; import com.doumee.dao.business.model.PlatformShowParam; import com.doumee.dao.web.reqeust.PlatformDataDTO; +import com.doumee.dao.web.response.PlatformGroupWorkVO; import com.doumee.dao.web.response.PlatformWorkVO; import com.doumee.service.business.PlatformGroupService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -303,5 +304,28 @@ + @Override + public PlatformGroupWorkVO getPlatformGroupWork(Integer platformGroupId){ + PlatformGroupWorkVO platformGroupWorkVO = new PlatformGroupWorkVO(); + platformGroupWorkVO.setExceptionNum(platformJobJoinMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getPlatformGroupId,platformGroupId) + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.EXCEPTION.getKey()) + ) + ); + + platformGroupWorkVO.setWaitNum(platformJobJoinMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getPlatformGroupId,platformGroupId) + .in(PlatformJob::getStatus, + Constants.PlatformJobStatus.WAIT_CALL.getKey(), + Constants.PlatformJobStatus.IN_WAIT.getKey(), + Constants.PlatformJobStatus.CALLED.getKey() + + ) + ) + ); + return platformGroupWorkVO; + } + + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java index a4b0ac7..0432147 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java @@ -17,6 +17,7 @@ import com.doumee.dao.business.model.*; import com.doumee.dao.openapi.request.*; import com.doumee.dao.openapi.response.*; +import com.doumee.dao.system.model.SystemUser; import com.doumee.dao.web.reqeust.*; import com.doumee.dao.web.response.DriverHomeVO; import com.doumee.dao.web.response.LineUpVO; @@ -94,6 +95,15 @@ platformJobMapper.deleteById(id); } + + @Override + public void delete(Integer id) { + platformJobMapper.update(null,new UpdateWrapper<PlatformJob>().lambda() + .set(PlatformJob::getIsdeleted,Constants.ONE) + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.CANCEL.getKey()) + .eq(PlatformJob::getId,id)); + } + @Override public void delete(PlatformJob platformJob) { UpdateWrapper<PlatformJob> deleteWrapper = new UpdateWrapper<>(platformJob); @@ -150,8 +160,10 @@ .selectAs(Platform::getName,PlatformJob::getPlatformName) .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) .selectAs(PlatformWmsJob::getCarrierName,PlatformJob::getCarrierName) + .selectAs(SystemUser::getUsername,PlatformJob::getOutUserName) .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode) + .leftJoin(SystemUser.class,SystemUser::getId,PlatformJob::getOutUserId) .eq(pageWrap.getModel().getId() != null, PlatformJob::getId, pageWrap.getModel().getId()) .eq(pageWrap.getModel().getCreator() != null, PlatformJob::getCreator, pageWrap.getModel().getCreator()) .ge(pageWrap.getModel().getCreateDate() != null, PlatformJob::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())) @@ -225,6 +237,12 @@ .eq(pageWrap.getModel().getInType() != null, PlatformJob::getInType, pageWrap.getModel().getInType()) .eq(pageWrap.getModel().getTotalNum() != null, PlatformJob::getTotalNum, pageWrap.getModel().getTotalNum()) .eq(pageWrap.getModel().getPlatformGroupId() != null, PlatformJob::getPlatformGroupId, pageWrap.getModel().getPlatformGroupId()) + + .apply(pageWrap.getModel().getQueryStatus() != null, " find_in_set(t.`STATUS`,'"+pageWrap.getModel().getQueryStatus()+"')") + .ge(pageWrap.getModel().getBeginWorkDateStart() != null, PlatformJob::getStartDate, Utils.Date.getStart(pageWrap.getModel().getBeginWorkDateStart())) + .le(pageWrap.getModel().getBeginWorkDateEnd() != null, PlatformJob::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getBeginWorkDateEnd())) + .eq(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()), PlatformJob::getType, Constants.platformJobType.sgscxh) + .ne(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()), PlatformJob::getType, Constants.platformJobType.sgscxh) ; for(PageWrap.SortData sortData: pageWrap.getSorts()) { @@ -275,7 +293,7 @@ .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey()).or() .apply(" ( t.status = "+Constants.PlatformJobStatus.TRANSFERING.getKey()+" and t.PLATFORM_GROUP_ID = "+pageWrap.getModel().getPlatformGroupId()+" ) ") ) - .like(PlatformJob::getArriveDate,DateUtil.dateTypeToString(new Date(),"yyyy-MM-dd")) +// .like(PlatformJob::getArriveDate,DateUtil.dateTypeToString(new Date(),"yyyy-MM-dd")) .orderByDesc(PlatformJob::getStatus) ; IPage<PlatformJob> platformJobIPage = platformJobJoinMapper.selectJoinPage(page,PlatformJob.class,queryWrapper); @@ -946,6 +964,38 @@ /** + * 鎺堟潈绂诲洯 + */ + @Override + @Transactional(rollbackFor = {Exception.class,BusinessException.class}) + public void powerLevel(JobOperateDTO jobOperateDTO){ + if(Objects.isNull(jobOperateDTO) + || Objects.isNull(jobOperateDTO.getJobId())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + PlatformJob platformJob = platformJobMapper.selectById(jobOperateDTO.getJobId()); + if(Objects.isNull(platformJob)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY); + } + if(!Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.DONE.getKey())){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧�,涓氬姟鐘舵�佸凡娴佽浆锛�"); + } + PlatformJob oldPlatformJob = new PlatformJob(); + BeanUtils.copyProperties(platformJob,oldPlatformJob); + platformJob.setOutUserId(jobOperateDTO.getLoginUserInfo().getId()); + platformJob.setOutHkdate(new Date()); + platformJob.setStatus(Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()); + platformJob.setEditDate(new Date()); + platformJobMapper.updateById(platformJob); + //瀛樺偍鎿嶄綔鏃ュ織 + savePlatformLog(Constants.PlatformJobLogType.AUTHED_LEAVE.getKey(),oldPlatformJob,platformJob , + Constants.PlatformJobLogType.AUTHED_LEAVE.getInfo()); + + //TODO 鎺堟潈杞﹁締绂诲満鏉冮檺 + } + + + /** * 鏈堝彴鐩告満鎺ㄩ�� 寮�濮嬩綔涓� * @param jobOperateDTO */ -- Gitblit v1.9.3