From ed9c9f07d1f9a5ed027e06feb8f0f5ed2d1756bc Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期五, 07 六月 2024 10:39:25 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit
---
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java | 106 ++++++++++++
server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java | 38 ++++
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java | 2
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/StagingCloudController.java | 49 +++++
server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java | 82 ++++++++++
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java | 9
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java | 7
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java | 10
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java | 10 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 57 +++---
server/system_service/src/main/java/com/doumee/core/utils/FtpUtil.java | 38 ++++
server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java | 6
server/system_service/src/main/java/com/doumee/service/system/NoticesService.java | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerCloudController.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 22 ++
17 files changed, 385 insertions(+), 63 deletions(-)
diff --git a/server/system_service/src/main/java/com/doumee/core/utils/FtpUtil.java b/server/system_service/src/main/java/com/doumee/core/utils/FtpUtil.java
index a62bf46..5a6fbd5 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/FtpUtil.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/FtpUtil.java
@@ -15,6 +15,7 @@
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;
+import org.apache.xpath.operations.Bool;
import sun.misc.BASE64Encoder;
/** */
@@ -237,7 +238,6 @@
// 璁剧疆PassiveMode浼犺緭
try {
ftpClient.enterLocalPassiveMode();
-
// 璁剧疆浠ヤ簩杩涘埗娴佺殑鏂瑰紡浼犺緭
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
ftpClient.setControlEncoding("GBK");
@@ -266,6 +266,42 @@
}
return false;
}
+
+ public boolean uploadInputstreamBatch(InputStream inputStream, String remote, Boolean close) {
+ // 璁剧疆PassiveMode浼犺緭
+ try {
+ ftpClient.enterLocalPassiveMode();
+ // 璁剧疆浠ヤ簩杩涘埗娴佺殑鏂瑰紡浼犺緭
+ ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
+ ftpClient.setControlEncoding("GBK");
+ // 瀵硅繙绋嬬洰褰曠殑澶勭悊
+ String remoteFileName = remote;
+ if (remote.contains("/")) {
+ remoteFileName = remote.substring(remote.lastIndexOf("/") + 1);
+ // 鍒涘缓鏈嶅姟鍣ㄨ繙绋嬬洰褰曠粨鏋勶紝鍒涘缓澶辫触鐩存帴杩斿洖
+ if (StringUtils.equals(CreateDirecroty(remote, ftpClient), "2")) {
+ log.error("鍒涘缓ftp鐩綍澶辫触======================="+remote);
+ return false;
+ }
+ }
+ boolean result = ftpClient.storeFile(remoteFileName, inputStream);
+ inputStream.close();
+ if(close){
+ ftpClient.logout();
+ }
+ if(result){
+ log.info("涓婁紶鏂囦欢鎴愬姛======================"+remote);
+ }else{
+ log.error("涓婁紶鏂囦欢澶辫触======================="+remote);
+ }
+ return result;
+ }catch (Exception e){
+ e.printStackTrace();
+ log.error("涓婁紶鏂囦欢澶辫触======================="+remote);
+ }
+ return false;
+ }
+
public int getNumFromStr(String str,char searchstr) {
int count = 0;
char[] charArray = str.toCharArray();
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java b/server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java
new file mode 100644
index 0000000..d08a08c
--- /dev/null
+++ b/server/system_service/src/main/java/com/doumee/dao/system/dto/NoticesDTO.java
@@ -0,0 +1,38 @@
+package com.doumee.dao.system.dto;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * Created by IntelliJ IDEA.
+ *
+ * @Author : Rk
+ * @create 2024/6/5 9:27
+ */
+@Data
+public class NoticesDTO {
+
+ @ApiModelProperty(value = "鐢ㄦ埛涓婚敭",hidden = true)
+ private Integer memberId;
+
+ @ApiModelProperty(value = "鏌ヨ绫诲瀷: 0=寰呭鐞嗭紱1=宸插鐞嗭紱2=鎴戝彂甯冪殑锛�3=鎶勯�佹垜")
+ private Integer queryType;
+
+ @ApiModelProperty(value = "寮�濮嬫棩鏈�")
+ private Date startDate;
+
+ @ApiModelProperty(value = "缁撴潫鏃ユ湡")
+ private Date endDate;
+
+ @ApiModelProperty(value = "0璁垮瀹℃壒 1璁垮鎶ュ 2鐢ㄨ溅瀹℃壒 3闅愭偅澶勭悊 4鐗╂祦杞﹀鎵� 5绯荤粺绯荤粺")
+ private Integer type;
+
+ @ApiModelProperty(value = "鍙湅鏈锛�1=鏄紱0=鍚�")
+ private Integer noRead;
+
+ @ApiModelProperty(value = "浠诲姟鍚嶇О/鏍囬")
+ private String title;
+}
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java b/server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java
index d591321..ab03953 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java
@@ -88,15 +88,15 @@
private String typeDetail;
- @ApiModelProperty(value = "鍏宠仈鍙傛暟1" ,notes = "瀛樺偍 娑堟伅灞曠ずJSON ")
+ @ApiModelProperty(value = "瀛樺偍 娑堟伅灞曠ずJSON" ,notes = "瀛樺偍 娑堟伅灞曠ずJSON ")
@ExcelColumn(name="鍏宠仈鍙傛暟1")
private String param1;
- @ApiModelProperty(value = "鍏宠仈鍙傛暟2",notes = "鐢ㄤ簬瀛樺偍 涓氬姟鐘舵�佷俊鎭� 0 =寰呭鐞�;1=宸插悓鎰�/宸插鐞�;2=宸叉嫆缁�/宸查��鍥�;3=宸茶浆浜�;4=宸叉挙閿�")
+ @ApiModelProperty(value = "鐢ㄤ簬瀛樺偍 涓氬姟鐘舵�佷俊鎭� 0 =寰呭鐞�;1=宸插悓鎰�/宸插鐞�;2=宸叉嫆缁�/宸查��鍥�;3=宸茶浆浜�;4=宸叉挙閿�",notes = "鐢ㄤ簬瀛樺偍 涓氬姟鐘舵�佷俊鎭� 0 =寰呭鐞�;1=宸插悓鎰�/宸插鐞�;2=宸叉嫆缁�/宸查��鍥�;3=宸茶浆浜�;4=宸叉挙閿�")
@ExcelColumn(name="鍏宠仈鍙傛暟2")
private String param2;
- @ApiModelProperty(value = "鍏宠仈鍙傛暟3",notes = "鍙戣捣浜�")
+ @ApiModelProperty(value = "鍙戣捣浜�",notes = "鍙戣捣浜�")
@ExcelColumn(name="鍏宠仈鍙傛暟3")
private String param3;
diff --git a/server/system_service/src/main/java/com/doumee/service/system/NoticesService.java b/server/system_service/src/main/java/com/doumee/service/system/NoticesService.java
index d217439..0c45a5a 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/NoticesService.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/NoticesService.java
@@ -2,6 +2,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.dao.system.dto.NoticesDTO;
import com.doumee.dao.system.model.Notices;
import java.util.List;
@@ -97,5 +98,10 @@
long count(Notices notices);
+ PageData<Notices> taskCanterPage(PageWrap<NoticesDTO> pageWrap);
+
+ void signReadById(Integer noticesId);
+
+ void signRead(Integer memberId);
}
diff --git a/server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java b/server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java
index 67cbee2..68ab7e8 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java
@@ -4,21 +4,26 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
+import com.doumee.dao.system.dto.NoticesDTO;
import com.doumee.dao.system.join.NoticesJoinMapper;
import com.doumee.dao.system.model.Notices;
import com.doumee.service.system.NoticesService;
import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
+import java.util.Objects;
/**
* 绯荤粺娑堟伅淇℃伅琛⊿ervice瀹炵幇
@@ -93,8 +98,6 @@
IPage<Notices> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
MPJLambdaWrapper<Notices> queryWrapper = new MPJLambdaWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
- LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
-
queryWrapper.selectAll(Notices.class);
if (pageWrap.getModel().getIsdeleted() != null) {
queryWrapper.eq(Notices::getIsdeleted, pageWrap.getModel().getIsdeleted());
@@ -140,7 +143,82 @@
return noticesMapper.selectCount(wrapper);
}
+ @Override
+ public PageData<Notices> taskCanterPage(PageWrap<NoticesDTO> pageWrap) {
+ IPage<Notices> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ MPJLambdaWrapper<Notices> queryWrapper = new MPJLambdaWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ queryWrapper.selectAll(Notices.class);
+ NoticesDTO noticesDTO = pageWrap.getModel();
+ if(Objects.isNull(noticesDTO)
+ || Objects.isNull(noticesDTO.getMemberId())
+ || Objects.isNull(noticesDTO.getQueryType())){
+ queryWrapper.eq("1","2");
+ }
+ if(noticesDTO.getQueryType().equals(Constants.ZERO)){
+ queryWrapper.eq(Notices::getStatus,Constants.ZERO);
+ queryWrapper.eq(Notices::getSendacopy,Constants.ZERO);
+ queryWrapper.eq(Notices::getUserId, noticesDTO.getMemberId());
+ } else if(noticesDTO.getQueryType().equals(Constants.ONE)){
+ queryWrapper.eq(Notices::getStatus,Constants.ONE);
+ queryWrapper.eq(Notices::getSendacopy,Constants.ZERO);
+ } else if(noticesDTO.getQueryType().equals(Constants.TWO)){
+ queryWrapper.eq(Notices::getParam3, noticesDTO.getMemberId());
+ } else if (noticesDTO.getQueryType().equals(Constants.THREE)) {
+ queryWrapper.eq(Notices::getUserId, noticesDTO.getMemberId());
+ queryWrapper.eq(Notices::getSendacopy,Constants.ONE);
+ if(Objects.nonNull(noticesDTO.getNoRead())&&Constants.equalsInteger(noticesDTO.getNoRead(),Constants.ONE)){
+ queryWrapper.eq(Notices::getReaded,Constants.ONE);
+ }
+ }else{
+ queryWrapper.eq("1","2");
+ }
+ queryWrapper.ge(noticesDTO.getStartDate() != null, Notices::getCreateDate, Utils.Date.getStart(noticesDTO.getStartDate() ));
+ queryWrapper.le(noticesDTO.getStartDate() != null, Notices::getCreateDate, Utils.Date.getEnd(noticesDTO.getStartDate() ));
+ queryWrapper.ge(noticesDTO.getEndDate() != null, Notices::getCreateDate, Utils.Date.getStart(noticesDTO.getEndDate() ));
+ queryWrapper.le(noticesDTO.getEndDate() != null, Notices::getCreateDate, Utils.Date.getEnd(noticesDTO.getEndDate() ));
+ queryWrapper.eq(Objects.nonNull(noticesDTO.getType()),Notices::getType,noticesDTO.getType());
+ queryWrapper.eq(StringUtils.isNotBlank(noticesDTO.getTitle()),Notices::getTitle,noticesDTO.getTitle());
+ queryWrapper.orderByDesc(Notices::getCreateDate);
+ PageData<Notices> pageData = PageData.from(noticesMapper.selectJoinPage(page,Notices.class, queryWrapper));
+ return pageData;
+ }
+ /**
+ * 鏍囪宸茶
+ * @param noticesId
+ */
+ @Override
+ public void signReadById(Integer noticesId){
+ if(Objects.isNull(noticesId)){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ Notices notices = noticesMapper.selectById(noticesId);
+ if(Objects.isNull(notices)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ if(Constants.equalsInteger(notices.getSendacopy(),Constants.ONE)){
+ if(Constants.equalsInteger(Constants.ZERO,notices.getReaded())){
+ noticesMapper.update(null,new UpdateWrapper<Notices>().lambda()
+ .set(Notices::getReaded,Constants.ONE).eq(Notices::getId,notices));
+ }
+ }else{
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炴妱閫佹暟鎹�,鏃犳硶杩涜鏍囪");
+ }
+ }
+
+ /**
+ * 鎵归噺鏍囪宸茶
+ * @param memberId
+ */
+ @Override
+ public void signRead(Integer memberId) {
+ noticesMapper.update(null, new UpdateWrapper<Notices>().lambda()
+ .set(Notices::getReaded, Constants.ONE)
+ .eq(Notices::getSendacopy,Constants.ONE)
+ .eq(Notices::getReaded,Constants.ZERO)
+ .eq(Notices::getUserId, memberId));
+ }
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
index cd86296..41eeaf0 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
@@ -104,7 +104,7 @@
@GetMapping("/{id}")
@RequiresPermissions("business:visits:query")
public ApiResponse<Visits> findById(@PathVariable Integer id) {
- return ApiResponse.success(visitsService.findById(id));
+ return ApiResponse.success(visitsService.findById(id,null));
}
@ApiOperation("婊炵暀浜哄憳")
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerCloudController.java
index 0270a01..6c0dcb7 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerCloudController.java
@@ -80,7 +80,7 @@
@ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
@CloudRequiredPermission("business:hiddendanger:query")
- public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ public ApiResponse<HiddenDanger> findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
return ApiResponse.success(hiddenDangerService.findById(id));
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/StagingCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/StagingCloudController.java
index 6e7e202..4dddf78 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/StagingCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/StagingCloudController.java
@@ -1,21 +1,31 @@
package com.doumee.cloud.admin;
import com.doumee.api.BaseController;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.dao.admin.response.StagingDataVO;
import com.doumee.dao.business.model.Visits;
+import com.doumee.dao.system.dto.NoticesDTO;
import com.doumee.dao.system.model.Notices;
+import com.doumee.dao.web.response.InternalHomeVO;
+import com.doumee.service.business.ApproveService;
import com.doumee.service.business.MemberService;
import com.doumee.service.business.VisitsService;
import com.doumee.service.system.NoticesService;
import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
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 java.util.Objects;
/**
* Created by IntelliJ IDEA.
@@ -38,6 +48,8 @@
@Autowired
private NoticesService noticesService;
+ @Autowired
+ private ApproveService approveService;
@ApiOperation("澶撮儴鏁版嵁")
@@ -70,13 +82,38 @@
}
- @ApiOperation("浠诲姟涓績鍒嗛〉")
- @PostMapping("/taskPage")
- @RequiresPermissions("business:notices:query")
- public ApiResponse<PageData<Notices>> taskPage (@RequestBody PageWrap<Notices> pageWrap) {
- pageWrap.getModel().setPalt(Constants.ZERO);
- return ApiResponse.success(noticesService.findPage(pageWrap));
+
+ @ApiOperation(value = "浠诲姟涓績澶撮儴", notes = "H5")
+ @GetMapping("/taskCenterHead")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "isDetail", value = " 鏄惁鏌ヨ璇︾粏 1鏄紱0鍚�", required = true),
+ })
+ public ApiResponse<InternalHomeVO> taskCenterHead(@RequestParam Integer isDetail,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success("鏌ヨ鎴愬姛",approveService.getHomeData(getLoginUser(token).getMemberId(),isDetail));
}
+ @ApiOperation("浠诲姟涓績鍒嗛〉")
+ @PostMapping("/taskPage")
+ public ApiResponse<PageData<Notices>> taskPage (@RequestBody PageWrap<NoticesDTO> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ LoginUserInfo loginUserInfo = getLoginUser(token);
+ pageWrap.getModel().setMemberId(loginUserInfo.getMemberId());
+ return ApiResponse.success(noticesService.taskCanterPage(pageWrap));
+ }
+
+ @ApiOperation("鏍囪宸茶")
+ @GetMapping("/signRead")
+ @ApiImplicitParams({
+ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "noticesId", value = "璁板綍涓婚敭", required = false),
+ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "signType", value = "鏍囪绫诲瀷锛�0=鍗曚釜鏍囪;1=鏍囪鍏ㄩ儴鏈", required = false),
+ })
+ public ApiResponse signRead (Integer noticesId,@RequestParam Integer signType, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ LoginUserInfo loginUserInfo = getLoginUser(token);
+ if(Constants.equalsInteger(signType,Constants.ZERO)){
+ noticesService.signReadById(noticesId);
+ }else{
+ noticesService.signRead(loginUserInfo.getMemberId());
+ }
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java
index 1b048b2..ff53508 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/VisitsCloudController.java
@@ -6,6 +6,7 @@
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.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
@@ -96,6 +97,7 @@
@PostMapping("/page")
@CloudRequiredPermission("business:visits:query")
public ApiResponse<PageData<Visits>> findPage (@RequestBody PageWrap<Visits> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ pageWrap.getModel().setMemberId(getLoginUser(token).getMemberId());
return ApiResponse.success(visitsService.findPage(pageWrap));
}
@@ -110,7 +112,8 @@
@GetMapping("/{id}")
@CloudRequiredPermission("business:visits:query")
public ApiResponse<Visits> findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
- return ApiResponse.success(visitsService.findById(id));
+ LoginUserInfo loginUserInfo = getLoginUser(token);
+ return ApiResponse.success(visitsService.findById(id,loginUserInfo.getMemberId()));
}
@ApiOperation("婊炵暀浜哄憳")
@@ -126,7 +129,9 @@
@ApiOperation(value = "璁垮鎶ュ", notes = "璁垮鎶ュ")
@PostMapping("/createVisit")
public ApiResponse createVisit(@RequestBody Visits visits,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- visits.setMemberId(getLoginUser(token).getMemberId());
+ LoginUserInfo loginUserInfo = getLoginUser(token);
+ visits.setMemberId(loginUserInfo.getMemberId());
+ visits.setCreateMemberId(loginUserInfo.getMemberId());
visits.setReceptMemberId(visits.getMemberId());
return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.visitReporting(visits));
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java
index b8d7082..eb12019 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/common/PublicCloudController.java
@@ -1,13 +1,18 @@
package com.doumee.cloud.common;
+import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.doumee.api.BaseController;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.annotation.trace.Trace;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.FtpUtil;
import com.doumee.core.utils.aliyun.ALiYunUtil;
+import com.doumee.dao.system.model.SystemDict;
+import com.doumee.dao.system.model.SystemDictData;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -26,10 +31,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.UUID;
+import java.util.*;
/**
* @author Eva.Caesar Liu
@@ -50,6 +52,102 @@
public static FtpUtil ftp = null;
+ @ApiOperation(value = "鎵归噺涓婁紶鏂囦欢鍒癋TP")
+ @RequestMapping(method= RequestMethod.POST,value="/uploadBatch")
+ @ResponseBody
+ public void uploadBatch(HttpServletRequest request, HttpServletResponse response, String folder) throws Exception {
+ if(Objects.isNull(folder)){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ SystemDictData folderData = systemDictDataBiz.queryByCode(Constants.FTP,folder);
+ if(Objects.isNull(folderData)||StringUtils.isBlank(folderData.getCode())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐩爣鏂囦欢澶归敊璇�");
+ }
+ folder = systemDictDataBiz.queryByCode(Constants.FTP,folder).getCode();
+ String prefixPath = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode();
+ response.setCharacterEncoding("UTF-8");
+ response.setContentType("text/html;charset=UTF-8");
+ Map<String, Object> context = new HashMap<>();
+ try {
+ if(ftp == null){
+ ftp = new FtpUtil(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_HOST).getCode(),
+ Integer.parseInt(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PORT).getCode()),
+ systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_USERNAME).getCode(),
+ systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PWD).getCode());
+ }else{
+ ftp.connect();
+ }
+
+ context.put("success", true);
+ context.put("code", 200);
+ context.put("errno",0);
+ CommonsMultipartResolver multipartResovler = new CommonsMultipartResolver();
+ if (multipartResovler.isMultipart(request)) {
+ MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+ List<MultipartFile> fileList = multipartRequest.getFiles("file");
+ Iterator<String> it = multipartRequest.getFileNames();
+ JSONArray jsonArray = new JSONArray();
+
+ if (fileList.size() > 0) {
+ //閬嶅巻鏂囦欢鍒楄〃
+ Iterator<MultipartFile> fileIte = fileList.iterator();
+ Integer index = Constants.ONE;
+ while (fileIte.hasNext()) {
+ //鑾峰緱姣忎竴涓枃浠�
+ MultipartFile file = fileIte.next();
+ String originname = file.getOriginalFilename();
+ InputStream is = file.getInputStream();
+ String endType = originname.substring(originname.lastIndexOf("."), originname.length());
+ String date = DateUtil.getNowShortDate();
+ String fName = date + "/" + UUID.randomUUID() + endType;
+ String fileName = folder + "/" + fName;
+ boolean r = ftp.uploadInputstreamBatch(is, fileName, Constants.equalsInteger(index ,fileList.size()));
+ if (r) {
+ JSONObject fileJSON = new JSONObject();
+ fileJSON.put("url", prefixPath + fileName);
+ fileJSON.put("imgaddr", fName);
+ fileJSON.put("imgname", fileName);
+ fileJSON.put("originname", originname);
+ jsonArray.add(fileJSON);
+ }
+ index = index + 1;
+ }
+
+ }
+
+// while (it.hasNext()) {
+// MultipartFile file = multipartRequest.getFile(it.next());
+// String originname = file.getOriginalFilename();
+// is = file.getInputStream();
+// String endType = originname.substring(originname.lastIndexOf("."),originname.length());
+// String date = DateUtil.getNowShortDate();
+// String fName = date+"/"+ UUID.randomUUID()+endType;
+// String fileName = folder+"/"+fName;
+// boolean r = ftp.uploadInputstream(is,fileName);
+// if(r){
+// JSONObject fileJSON = new JSONObject();
+// fileJSON.put("url", prefixPath+fileName);
+// fileJSON.put("imgaddr", fName);
+// fileJSON.put("imgname", fileName);
+// fileJSON.put("originname", originname);
+// jsonArray.add(fileJSON);
+// }
+// }
+ context.put("data",jsonArray);
+ }
+ } catch (Exception e) {
+ log.error("銆愪笂浼燜TP澶辫触銆�======================"+e.getMessage());
+ context.put("code", 0);
+ context.put("message", "涓婁紶澶辫触");
+ context.put("errno",0);
+ writerJson(response, context);
+ return;
+
+ }
+ writerJson(response, context);
+ return;
+ }
+
@ApiOperation(value = "涓婁紶鏂囦欢鍒癋TP")
@RequestMapping(method= RequestMethod.POST,value="/upload")
@ResponseBody
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
index 1739bfd..e0e31ec 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/InternalWebController.java
@@ -61,11 +61,11 @@
private ApproveService approveService;
- @ApiOperation(value = "鍐呴儴浜哄憳棣栭〉", notes = "H5")
- @GetMapping("/internalHome")
- public ApiResponse<InternalHomeVO> internalHome(@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- return ApiResponse.success("鏌ヨ鎴愬姛",approveService.getHomeData(getLoginUser(token).getMemberId()));
- }
+// @ApiOperation(value = "鍐呴儴浜哄憳棣栭〉", notes = "H5")
+// @GetMapping("/internalHome")
+// public ApiResponse<InternalHomeVO> internalHome(@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+// return ApiResponse.success("鏌ヨ鎴愬姛",approveService.getHomeData(getLoginUser(token).getMemberId()));
+// }
@ApiOperation("浠诲姟涓績")
@PostMapping("/taskCenter")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java
index bf78546..1e2dbda 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import com.doumee.core.model.LoginUserModel;
+import com.doumee.dao.business.vo.ApproveDataVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
@@ -292,4 +293,13 @@
@ApiModelProperty(value = "绂诲満鐘舵�侊紱0=鏈鍦�", example = "1",hidden = true)
@TableField(exist = false)
private Integer levelStatus;
+
+ @ApiModelProperty(value = "鍒涘缓浜哄鍚�", example = "1")
+ @TableField(exist = false)
+ private String createMemberName;
+
+ @ApiModelProperty(value = "瀹℃壒淇℃伅鏁版嵁")
+ @TableField(exist = false)
+ private ApproveDataVO approveDateVO;
+
}
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 fb8029d..8254608 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
@@ -105,7 +105,7 @@
* @param memberId
* @return
*/
- InternalHomeVO getHomeData(Integer memberId);
+ InternalHomeVO getHomeData(Integer memberId,Integer isDetail);
void createApproveFlow(Integer tempType,Integer businessId,Integer createMemberId);
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java
index b89edf1..35fdec6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/VisitsService.java
@@ -79,7 +79,7 @@
* @param id 涓婚敭
* @return Visits
*/
- Visits findById(Integer id);
+ Visits findById(Integer id,Integer memberId);
/**
* 鏉′欢鏌ヨ鍗曟潯璁板綍
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 af762bd..62379b0 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
@@ -236,42 +236,45 @@
/**
* 鍐呴儴浜哄憳H5椤甸潰棣栭〉
* @param memberId
+ * @param isDetail 鏄惁鏌ヨ璇︾粏 1鏄紱0鍚�
* @return
*/
@Override
- public InternalHomeVO getHomeData(Integer memberId){
+ public InternalHomeVO getHomeData(Integer memberId,Integer isDetail){
InternalHomeVO internalHomeVO = new InternalHomeVO();
internalHomeVO.setHomeImg(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.HOME_IMAGE).getCode());
- internalHomeVO.setTaskNum(approveMapper.selectCount(new QueryWrapper<Approve>().lambda().eq(Approve::getChekorId,memberId).eq(Approve::getStatus,Constants.ZERO)));
//浠诲姟鏁版嵁
- List<Notices> noticesList = noticesJoinMapper.selectList(new QueryWrapper<Notices>().lambda().eq(Notices::getUserId,memberId).orderByDesc(Notices::getCreateDate));
- if(CollectionUtils.isNotEmpty(noticesList)){
- //寰呮垜澶勭悊鐨勬暟鎹�
- internalHomeVO.setNoticeWaitNum(
- noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
- &&Constants.equalsInteger(i.getStatus(),Constants.ZERO)
- &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO)
- ).count()
- );
- internalHomeVO.setNoticeDealNum(
- noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
- &&Constants.equalsInteger(i.getStatus(),Constants.ONE)
- &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO)
- ).count()
- );
+ List<Notices> noticesList = noticesJoinMapper.
+ selectList(new QueryWrapper<Notices>().lambda()
+ .eq(Notices::getUserId,memberId).orderByDesc(Notices::getCreateDate));
+ internalHomeVO.setTaskNum(noticesList.size());
+ if(Constants.equalsInteger(Constants.ONE,isDetail)){
+ if(CollectionUtils.isNotEmpty(noticesList)){
+ //寰呮垜澶勭悊鐨勬暟鎹�
+ internalHomeVO.setNoticeWaitNum(
+ noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
+ &&Constants.equalsInteger(i.getStatus(),Constants.ZERO)
+ &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO)
+ ).count()
+ );
+ internalHomeVO.setNoticeDealNum(
+ noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
+ &&Constants.equalsInteger(i.getStatus(),Constants.ONE)
+ &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO)
+ ).count()
+ );
- internalHomeVO.setNoticeCreateNum(
- noticesJoinMapper.selectCount(new QueryWrapper<Notices>().lambda().eq(Notices::getParam3,memberId))
- );
+ internalHomeVO.setNoticeCreateNum(
+ noticesJoinMapper.selectCount(new QueryWrapper<Notices>().lambda().eq(Notices::getParam3,memberId))
+ );
- internalHomeVO.setNoticeCopyNum(
- noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
- &&Constants.equalsInteger(i.getSendacopy(),Constants.ONE)
- ).count()
- );
+ internalHomeVO.setNoticeCopyNum(
+ noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
+ &&Constants.equalsInteger(i.getSendacopy(),Constants.ONE)
+ ).count()
+ );
+ }
}
-
-
return internalHomeVO;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
index 63afab9..c263aac 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
@@ -76,6 +76,7 @@
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ hiddenDanger.setMemberId(hiddenDanger.getLoginUserInfo().getMemberId());
hiddenDanger.setIsdeleted(Constants.ZERO);
hiddenDanger.setCreateDate(new Date());
hiddenDanger.setEditDate(new Date());
@@ -109,7 +110,7 @@
hiddenDangerLog.setObjType(Constants.ZERO);
hiddenDangerLogMapper.insert(hiddenDangerLog);
- List<Multifile> multifiles = hiddenDanger.getMultifileList();
+ List<Multifile> multifiles = hiddenDanger.getSubmitFileList();
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(multifiles)){
for (int i = 0; i < multifiles.size(); i++) {
Multifile multifile = multifiles.get(i);
@@ -125,8 +126,8 @@
String title = "[闅愭偅闅忔墜鎷峕鎻愭姤浜�-"+hiddenDanger.getLoginUserInfo().getRealname();
//json鏁版嵁
Map<String,Object> jsonMap = new HashMap<>();
- jsonMap.put("name", "鍙戠幇鍖哄煙:" + hiddenDangerParam.getName());
- jsonMap.put("name", "闅愭偅绫诲瀷:" + hiddenDangerCate.getName());
+ jsonMap.put("area", "鍙戠幇鍖哄煙:" + hiddenDangerParam.getName());
+ jsonMap.put("cate", "闅愭偅绫诲瀷:" + hiddenDangerCate.getName());
jsonMap.put("sTime", "鍙戠幇鏃堕棿:" + DateUtil.DateToStr(hiddenDanger.getSubmitTime() , "yyyy-MM-dd HH:mm"));
//榛樿鐢熸垚涓�鏉� 鐢宠浜虹殑鏁版嵁 鏍囪鍒犻櫎鐘舵�佺敤浜庡鐞嗗埌 浠诲姟涓績锛堟垜鍙戣捣锛変娇鐢�
Notices createNotices = new Notices();
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
index 63bf0b8..7d8d473 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -266,6 +266,7 @@
//鍒涘缓鏃堕棿
visits.setCreateDate(date);
//璁垮鎶ュ
+ visits.setIsdeleted(Constants.ZERO);
visits.setType(Constants.TWO);
visits.setReceptMemberId(visitMember.getId());
visits.setStatus(Constants.VisitStatus.waitCheck);
@@ -274,6 +275,7 @@
//鍒濆鍖栬瀹俊鎭�
// initVisitInfo(visits,date);
visitsMapper.insert(visits);
+ approveService.createApproveFlow(visits.getType(),visits.getId(),visits.getReceptMemberId());
return visits.getId();
}
@@ -621,12 +623,12 @@
}
}
//璁垮鎶ュ
- if(visits.getType().equals(Constants.TWO)
+ if(Constants.equalsInteger(visits.getType(),Constants.TWO)
&& (StringUtils.isBlank( visits.getName())
|| StringUtils.isBlank( visits.getPhone())
- || StringUtils.isBlank( visits.getCompanyName()))
+ || StringUtils.isBlank( visits.getCompanyName())
|| StringUtils.isBlank( visits.getCarNos())
- || Objects.isNull(visits.getReceptMemberId())
+ || Objects.isNull(visits.getReceptMemberId()))
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝淇℃伅濉啓涓嶆纭紒");
}else if(visits.getType().equals(Constants.ONE) && StringUtils.isBlank(visits.getConstructionReason())){
@@ -1085,14 +1087,16 @@
}
@Override
- public Visits findById(Integer id) {
+ public Visits findById(Integer id,Integer memberId) {
MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>();
queryWrapper.selectAll(Visits.class);
queryWrapper.selectAs(Member::getName,Visits::getReceptMemberName);
queryWrapper.selectAs(Company::getName,Visits::getReceptMemberDepartment);
+ queryWrapper.select("t3.name",Visits::getCreateMemberName);
queryWrapper.leftJoin(Member.class,Member::getId,Visits::getReceptMemberId);
queryWrapper.leftJoin(Company.class,Company::getErpId,Member::getErpOrgId);
+ queryWrapper.leftJoin("Member t3 on t.CREATE_MEMBER_ID=t3.id");
queryWrapper.eq(Visits::getId,id);
Visits result = visitsJoinMapper.selectJoinOne(Visits.class,queryWrapper);
@@ -1119,6 +1123,13 @@
result.setWithUserList(visitsList);
result.setPrefixUrl(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +
systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode());
+
+ result.setApproveDateVO(
+ approveService.arrangeApprovedData(id,
+ result.getType(),
+ memberId)
+ );
+
return result;
}
@@ -1147,10 +1158,9 @@
queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);
queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO);
- queryWrapper.eq(pageWrap.getModel().getType()!=null,Visits::getType,pageWrap.getModel().getType());
queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Visits::getType,pageWrap.getModel().getType());
queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getOpenid()),Visits::getOpenid,pageWrap.getModel().getOpenid());
- queryWrapper.eq(StringUtils.isBlank(pageWrap.getModel().getOpenid()),"1","2");
+// queryWrapper.eq(StringUtils.isBlank(pageWrap.getModel().getOpenid()),"1","2");
queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Visits::getName,pageWrap.getModel().getName())
.or().like(Visits::getPhone,pageWrap.getModel().getName()))
.eq(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Visits::getIdcardNo,DESUtil.encrypt(Constants.EDS_PWD, pageWrap.getModel().getIdcardNo()))
--
Gitblit v1.9.3