From c1e829fcf97594aaa30ffb531f213b703e0eb21f Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 26 十二月 2023 18:23:16 +0800
Subject: [PATCH] ERP接口
---
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java | 14 +++
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java | 4
server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/MemberInfoDTO.java | 3
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 111 ++++++++++++++++++---------
server/dmvisit_web/src/main/java/com/doumee/api/web/ProblemController.java | 2
server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java | 17 +++
server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/response/erp/ApproveInfoResponse.java | 2
server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java | 76 +++++++++++++++++--
8 files changed, 178 insertions(+), 51 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java b/server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java
index e4fa49f..26af248 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java
@@ -99,14 +99,25 @@
* @return
*/
public static ApproveInfoResponse submitApprove(String url, ApproveAddRequest param){
+ System.out.println(JSONObject.toJSONString(param));
String result = HttpsUtil.postJson(url, JSONObject.toJSONString(param));
if(StringUtils.isNotBlank(result)){
+// TypeReference typeReference =
+// new TypeReference<ERPApiResponse<ApproveInfoResponse>>(){};
+// ERPApiResponse<ApproveInfoResponse> response = JSONObject.parseObject(result, typeReference.getType());
+// if(response!=null && response.isSuccess()){
+// return response.getData();
+// }
TypeReference typeReference =
- new TypeReference<ERPApiResponse<ApproveInfoResponse>>(){};
- ERPApiResponse<ApproveInfoResponse> response = JSONObject.parseObject(result, typeReference.getType());
+ new TypeReference<ERPApiResponse<String>>(){};
+ ERPApiResponse<String> response = JSONObject.parseObject(result, typeReference.getType());
if(response!=null && response.isSuccess()){
- return response.getData();
+ ApproveInfoResponse approveInfoResponse = new ApproveInfoResponse();
+ approveInfoResponse.setId(response.getData());
+ return approveInfoResponse;
}
+
+
}
return null;
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/response/erp/ApproveInfoResponse.java b/server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/response/erp/ApproveInfoResponse.java
index deda22e..f8635b2 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/response/erp/ApproveInfoResponse.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/response/erp/ApproveInfoResponse.java
@@ -13,7 +13,7 @@
@ApiModel("璁垮鐢宠瀹℃壒缁撴灉鏌ヨ杩斿洖淇℃伅")
public class ApproveInfoResponse {
@ApiModelProperty(value = "瀹℃壒璁板綍鍞竴鏍囪瘑锛圗RP绔疘D锛�" ,example = "1")
- private Integer id;
+ private String id;
@ApiModelProperty(value = "瀹℃壒缁撴灉 0-涓嶉�氳繃 1-閫氳繃,榛樿 0" ,example = "1")
private Integer status;
@ApiModelProperty(value = "瀹℃牳鏃堕棿" )
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/MemberInfoDTO.java b/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/MemberInfoDTO.java
index 524bd4d..d36ca0c 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/MemberInfoDTO.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/MemberInfoDTO.java
@@ -93,7 +93,6 @@
@ApiModelProperty(value = "鏄惁鍙嫓璁夸汉 0鍚� 1鏄�")
private String canVisit;
-
@ApiModelProperty(value = "鍗$墖鏁�")
private Integer memberCardCount;
@@ -117,5 +116,7 @@
@TableField(exist = false)
private Date userActionType1;
+ @ApiModelProperty(value = "璇佷欢绫诲瀷 0韬唤璇� 1娓境璇佷欢 2鎶ょ収", example = "1")
+ private Integer idcardType;
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java
index fd67fb3..14d7dea 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java
@@ -9,6 +9,8 @@
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
import java.util.Date;
import java.util.List;
@@ -106,10 +108,15 @@
@ExcelColumn(name="闅忕▼浜哄憳鏁�")
private Integer memberNum;
+
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "闂ㄧ鏈夋晥鏈熷紑濮�")
@ExcelColumn(name="闂ㄧ鏈夋晥鏈熷紑濮�")
private Date starttime;
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "闂ㄧ鏈夋晥鏈熸埅姝�")
@ExcelColumn(name="闂ㄧ鏈夋晥鏈熸埅姝�")
private Date endtime;
@@ -215,6 +222,7 @@
@ApiModelProperty(value = "ERP鐢宠璁板綍缂栫爜")
@ExcelColumn(name="ERP鐢宠璁板綍缂栫爜")
private String erpId;
+
@ApiModelProperty(value = "鏅�氳瀹㈢敵璇烽殢璁夸汉鍛�")
@TableField(exist = false)
private List<Visits> withUserList;
@@ -228,6 +236,12 @@
@TableField(exist = false)
private List<Integer> lwWithUserList;
+
+
+ @ApiModelProperty(value = "鍥剧墖鍓嶇紑")
+ @TableField(exist = false)
+ private String prefixUrl;
+
@ApiModelProperty(value = "琚浜哄憳濮撳悕", example = "1")
@ExcelColumn(name="琚浜哄憳濮撳悕")
@TableField(exist = false)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java
index c9c6a2e..9dcf9b4 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/ProblemsServiceImpl.java
@@ -11,6 +11,7 @@
import com.doumee.dao.admin.request.OptionsObject;
import com.doumee.dao.admin.response.ProblemDTO;
import com.doumee.dao.business.ProblemsMapper;
+import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.Problems;
import com.doumee.dao.web.response.ProblemsVO;
import com.doumee.service.business.ProblemsService;
@@ -232,7 +233,8 @@
*/
@Override
public List<ProblemsVO> getProblemsVO(Integer useType){
- List<Problems> problemsList = problemsMapper.selectList(new QueryWrapper<Problems>().lambda().eq(Problems::getUseType,useType)
+ List<Problems> problemsList = problemsMapper.selectList(new QueryWrapper<Problems>().lambda()
+ .and(ms->ms.eq(Problems::getUseType,useType).or().eq(Problems::getUseType,Constants.ZERO))
.eq(Problems::getIsdeleted, Constants.ZERO).orderByAsc(Problems::getSortnu));
List<ProblemsVO> problemsVOList = new ArrayList<>();
for (Problems problems:problemsList) {
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
index e35fe39..40f22bd 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -35,6 +35,7 @@
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.github.xiaoymin.knife4j.core.util.CollectionUtils;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import io.swagger.models.auth.In;
import org.apache.commons.lang3.StringUtils;
@@ -42,7 +43,6 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
import org.springframework.util.DigestUtils;
import java.util.*;
@@ -91,15 +91,22 @@
//妫�鏌ユ槸鍚﹀繀椤荤瓟棰橈紝骞朵笖绗﹀悎绛旈瑕佹眰
ProblemLog problemLog = isValidProblemLog(visits);
//鑾峰彇鐢宠鐨勬捣搴疯闂棬绂佺粍淇℃伅
- String[] hkIds = getHkDeviceRoles(visits);
+ getHkDeviceRoles(visits);
//妫�楠屾嫓璁夸汉鏄惁鍚堟硶
Member visitMember = isValideVisitedUser(visits.getReceptMemberId());
if(Constants.equalsInteger(Constants.ZERO, visits.getIdcardType()) &&!IdcardUtil.isValidCard(visits.getIdcardNo())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝韬唤璇佸彿鐮佹湁璇紝璇锋牳瀹炲悗閲嶈瘯锛�");
}
Date date = new Date();
+ //鍒涘缓鏃堕棿
+ visits.setCreateDate(date);
+ //鏅�氳瀹�
+ visits.setType(Constants.ONE);
+ //闅忚浜哄憳鏁伴噺
+ visits.setMemberNum(CollectionUtils.isNotEmpty(visits.getWithUserList())?visits.getWithUserList().size():0);
//璁垮淇℃伅(浣跨敤韬唤璇佸彿鏌ヨ鏄惁宸插瓨鍦ㄦ敼鏅�氳瀹紝娌℃湁鍒欐柊澧烇紝瀛樺湪鍒欐洿鏂皁penid绛変俊鎭�),鍖呮嫭闅忚浜哄憳鏍¢獙鍜屽鐞�
Member member =dealMemberAndVisits(visits);
+ visits.setMemberId(member.getId());
//鍒濆鍖栬瀹俊鎭�
initVisitInfo(visits,date);
//鍙戣捣ERP瀹℃壒鐢宠
@@ -120,13 +127,13 @@
* @param visits
*/
private void isValidBaseParam(Visits visits) {
- if(visits.getStarttime() == null
- || visits.getEndtime() == null
+ if(visits.getEndtime() == null
+ || visits.getStarttime() == null
|| StringUtils.isBlank(visits.getReason())
|| StringUtils.isBlank( visits.getName())
|| StringUtils.isBlank( visits.getPhone())
|| visits.getIdcardType() == null
- || StringUtils.isBlank( visits.getFaceImg() )
+// || StringUtils.isBlank( visits.getFaceImg() )
|| StringUtils.isBlank( visits.getIdcardNo() )
|| visits.getReceptMemberId() == null){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝淇℃伅濉啓涓嶆纭紒");
@@ -177,13 +184,16 @@
}
private void initWithVisitInfo(Visits visits) {
- if(visits.getWithUserList()!=null && visits.getLwWithUserList().size()>0){
+ if(CollectionUtils.isNotEmpty(visits.getWithUserList())){
for(Visits v :visits.getWithUserList()){
v.setParentId(visits.getId());
v.setStarttime(visits.getStarttime());
v.setEndtime(visits.getEndtime());
v.setIsdeleted(Constants.ZERO);
v.setCreateDate(visits.getCreateDate());
+ v.setSex(Constants.getSexByCardNo(v.getIdcardNo()));
+ v.setIdcardDecode(Constants.getTuominStr(v.getIdcardNo()));//鑴辨晱韬唤璇佸彿
+ v.setIdcardNo(DESUtil.encrypt(Constants.EDS_PWD, v.getIdcardNo()));//韬唤璇佸彿鍔犲瘑
v.setErpId(visits.getErpId());
v.setHkStatus(Constants.ZERO);
v.setStatus(Constants.ZERO);
@@ -197,9 +207,10 @@
visits.setHkStatus(Constants.ZERO);//鏈悓姝�
visits.setBirthday(Constants.getBirthdyByCardNo(visits.getIdcardNo()));
visits.setStatus(Constants.ZERO);//寰呭鎵�
+ visits.setSex(Constants.getSexByCardNo(visits.getIdcardNo()));
+ visits.setIdcardDecode(Constants.getTuominStr(visits.getIdcardNo()));//鑴辨晱韬唤璇佸彿
visits.setIdcardNo(DESUtil.encrypt(Constants.EDS_PWD, visits.getIdcardNo()));//韬唤璇佸彿鍔犲瘑
- //韬唤璇佸彿瀛樺偍瀵嗘枃
- visits.setIdcardDecode(Constants.getTuominStr(visits.getIdcardNo()));//鑴辨晱鎵嬫満鍙�
+ visits.setIsdeleted(Constants.ZERO);
visits.setCreateDate(date);
}
@@ -207,7 +218,7 @@
ApproveAddRequest param = new ApproveAddRequest();
List<Visits> withUserVisitsList = visits.getWithUserList();
List<UserInfoRequest> withUserList = new ArrayList<>();
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(withUserVisitsList)){
+ if(CollectionUtils.isNotEmpty(withUserVisitsList)){
for (Visits v:withUserVisitsList) {
UserInfoRequest userInfoRequest = new UserInfoRequest();
userInfoRequest.setName(v.getName());
@@ -231,7 +242,7 @@
}
if(StringUtils.isNotBlank(visits.getDoors())){
List<DeviceRole> deviceRoleList = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda().in(DeviceRole::getId,Arrays.asList(visits.getDoors().split(","))));
- if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(deviceRoleList)){
+ if(CollectionUtils.isNotEmpty(deviceRoleList)){
param.setRoleIds(deviceRoleList.stream().map(m->m.getId()).collect(Collectors.toList()));
param.setRoleNames(deviceRoleList.stream().map(m->m.getName()).collect(Collectors.toList()));
}
@@ -281,25 +292,39 @@
//闅忚浜哄憳淇℃伅澶勭悊
if(visits.getWithUserList()!= null && visits.getWithUserList().size()>0){
for(Visits model:visits.getWithUserList()){
+ model.setStarttime(visits.getStarttime());
+ model.setEndtime(visits.getEndtime());
//鏍¢獙闅忚浜哄憳濉姤鏁版嵁鍚堟硶鎬�
isValidWithVisitParam(model,addList,editList);
model.setCreateDate(visits.getCreateDate());
- getMemberListParam(model.getIdcardNo(),visits,addList,editList);
+ getMemberListParam(model.getIdcardNo(),model,addList,editList);
}
}
+
+ if(CollectionUtils.isNotEmpty(addList)){
+ memberMapper.insertBatchSomeColumn(addList);
+ }
+ if(CollectionUtils.isNotEmpty(editList)){
+ editList.forEach(i->{
+ memberMapper.updateById(i);
+ });
+
+ }
+
return m;
}
private Member getMemberListParam(String cardno, Visits visits, List<Member> addList, List<Member> editList) {
- if(!Constants.checkCarNo(visits.getCarNos())){
+ if(StringUtils.isNotBlank(visits.getCarNos())&&!Constants.checkCarNo(visits.getCarNos())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝杞︾墝鍙枫��"+visits.getCarNos()+"銆戜笉鍚堟硶锛岃鏍稿疄鍚庨噸璇晘");
}
Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda()
.eq(Member::getType,Constants.memberType.visitor)
.eq(Member::getIdcardType,visits.getIdcardType())
- .eq(Member::getIdcardNo,visits.getIdcardNo()).last("limit 1" )
+ .eq(Member::getIdcardNo,DESUtil.encrypt(Constants.EDS_PWD, cardno)).last("limit 1" )
);
if(member == null){
+ member = new Member();
//濡傛灉鐢ㄦ埛涓嶅瓨鍦紝鍒欐柊澧�
member.setCreateDate(visits.getCreateDate());
member.setIsdeleted(Constants.ZERO);
@@ -307,12 +332,18 @@
member.setIdcardDecode(visits.getIdcardDecode());
member.setIdcardNo(DESUtil.encrypt(Constants.EDS_PWD, cardno));//韬唤璇佸彿鍔犲瘑
member.setIdcardDecode(Constants.getTuominStr(cardno));//鑴辨晱鎵嬫満鍙�
+ member.setFaceImg(visits.getFaceImg());
+ member.setSex(Constants.getSexByCardNo(cardno));
+ member.setImgurl(StringUtils.isNotBlank(visits.getImgurl())?visits.getImgurl():null);
+ member.setIdcardType(visits.getIdcardType());
member.setName(visits.getName());
member.setPhone(visits.getPhone());
member.setOpenid(visits.getOpenid());
member.setType(Constants.memberType.visitor);
member.setStatus(Constants.ZERO);
member.setSex(Constants.getSexByCardNo(cardno));
+ member.setHkStatus(Constants.ZERO);
+ member.setErpStatus(Constants.ZERO);
// 鏂板璁垮璁板綍
addList.add(member);
}else{
@@ -322,24 +353,28 @@
}
//鏍告煡棰勭害鐢ㄦ埛鏄惁瀛樺湪鏈绂荤殑棰勭害璁板綍
isExsitNoOutVisisRecord(member);
+ member.setFaceImg(visits.getFaceImg());
+ member.setImgurl(StringUtils.isNotBlank(visits.getImgurl())?visits.getImgurl():null);
member.setEditDate(visits.getCreateDate());
member.setIsdeleted(Constants.ZERO);
- member.setIdcardNo(visits.getIdcardNo());
- member.setIdcardDecode(visits.getIdcardDecode());
+ member.setSex(Constants.getSexByCardNo(cardno));
+ member.setIdcardNo(DESUtil.encrypt(Constants.EDS_PWD, cardno));//韬唤璇佸彿鍔犲瘑
+ member.setIdcardDecode(Constants.getTuominStr(cardno));//鑴辨晱韬唤璇佸彿
member.setName(visits.getName());
member.setPhone(visits.getPhone());
member.setOpenid(visits.getOpenid());
member.setSex(Constants.getSexByCardNo(cardno));
+ member.setHkStatus(Constants.ZERO);
+ member.setErpStatus(Constants.ZERO);
// 鏇存柊璁垮淇℃伅,
editList.add(member);
}
//鏍规嵁鎵嬫満鍙峰拰韬唤璇佸彿鐮佹煡璇� 褰撳墠棰勭害鐨勬椂闂存槸鍚︿笌鍏朵粬棰勭害璁板綍鏈夊啿绐�
if (visitsMapper.selectCount(new QueryWrapper<Visits>().lambda()
- .eq(Visits::getPhone, member.getPhone())
- .and(ms -> ms.eq(Visits::getPhone, member.getPhone())
- .or().eq(Visits::getIdcardDecode, member.getIdcardDecode()))
- .and(ms -> ms.apply(" visits.STARTTIME <= '" + visits.getStarttime() + "' and visits.ENDTIME >= '" + visits.getStarttime() + "' ")
- .or().apply(" visits.STARTTIME <= '" + visits.getEndtime() + "' and visits.ENDTIME >= '" + visits.getEndtime() + "' ")
+ .and(ms -> ms.eq(Visits::getPhone, visits.getPhone())
+ .or().eq(Visits::getIdcardDecode, Constants.getTuominStr(cardno)))
+ .and(ms -> ms.apply(" visits.STARTTIME <= '" + DateUtil.DateToStr(visits.getStarttime(),"yyyy-MM-dd HH:mm:ss") + "' and visits.ENDTIME >= '" + DateUtil.DateToStr(visits.getStarttime(),"yyyy-MM-dd HH:mm:ss") + "' ")
+ .or().apply(" visits.STARTTIME <= '" + DateUtil.DateToStr(visits.getEndtime(),"yyyy-MM-dd HH:mm:ss") + "' and visits.ENDTIME >= '" + DateUtil.DateToStr(visits.getEndtime(),"yyyy-MM-dd HH:mm:ss") + "' ")
)) > Constants.ZERO) {
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝鎵嬫満鍙枫��"+member.getPhone()+"銆戞垨韬唤璇併��"+ member.getIdcardDecode() +"銆戝瓨鍦ㄩ绾︽椂闂村啿绐侊紝鏃犳硶鐢宠鍝︼紒");
}
@@ -384,6 +419,7 @@
private void updateProblemLog(Visits visits, ProblemLog problemLog,Member member) {
if(problemLog!=null){
problemLog.setEditDate(visits.getCreateDate());
+ problemLog.setStatus(Constants.ONE);
problemLog.setName(visits.getName());
problemLog.setUserId(member.getId());
problemLog.setPhone(member.getPhone());
@@ -398,7 +434,7 @@
*/
private Member isValideVisitedUser(Integer receptMemberId) {
Member member = memberMapper.selectById(receptMemberId);
- if(member == null || Constants.equalsInteger(Constants.ZERO,member.getIsdeleted())){
+ if(member == null || !Constants.equalsInteger(Constants.ZERO,member.getIsdeleted())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇ユ嫓璁夸汉鏆傛椂涓嶈兘鎺ュ彈鎮ㄧ殑鎷滆鐢宠锛�");
}
if(!Constants.equalsInteger(member.getStatus(), Constants.ZERO)){
@@ -421,7 +457,7 @@
if(log == null){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇峰厛鎸夎姹傝繘琛屽畨鍏ㄧ煡璇嗙瓟棰�.");
}
- if(log.getLogId() !=null){
+ if(log.getLogId() !=null&&log.getStatus().equals(Constants.ZERO)){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇峰厛鎸夎姹傝繘琛屽畨鍏ㄧ煡璇嗙瓟棰榽");
}
return log;
@@ -438,11 +474,23 @@
String mustSelectDoors = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.SELECT_DOORS_VISIT_REQUIRED).getCode();
List<DeviceRole> roles = null;
if(StringUtils.equals(mustSelectDoors,Constants.ZERO+"")){
- //濡傛灉蹇呴』閫夋嫨闂ㄧ锛屼絾鏈�夋嫨
+ //濡傛灉璁剧疆涓嶉�夋嫨闂ㄧ锛屽垯鎻愪緵榛樿闂ㄧ缁勪俊鎭�
+
if(StringUtils.isBlank(visits.getDoors())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇烽�夋嫨璁块棶闂ㄧ锛�");
}
//鏍¢獙闂ㄧ缁勪俊鎭槸鍚︽纭�
+ String[] dIds = visits.getDoors().split(",");
+ roles = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda()
+ .eq(DeviceRole::getIsDefault,Constants.ZERO)
+ .eq(DeviceRole::getIsdeleted,Constants.ZERO)
+ .eq(DeviceRole::getType,Constants.DeviceRoleType.fk));
+ if(roles.size() ==0){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鏆備笉瀛樺湪鍙闂殑璁垮闂ㄧ锛屾棤娉曡繘琛岀敵璇锋搷浣滐紒");
+ }
+
+ }else{
+ //濡傛灉蹇呴』閫夋嫨闂ㄧ锛屼絾鏈�夋嫨
String[] dIds = visits.getDoors().split(",");
roles = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda()
.eq(DeviceRole::getIsdeleted,Constants.ZERO)
@@ -450,17 +498,6 @@
.in(DeviceRole::getId, Arrays.asList(dIds)));
if(roles == null || roles.size()==0 || roles.size() != dIds.length){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇烽�夋嫨鏈夋晥璁块棶闂ㄧ锛�");
- }
- }else{
- //濡傛灉璁剧疆涓嶉�夋嫨闂ㄧ锛屽垯鎻愪緵榛樿闂ㄧ缁勪俊鎭�
- String[] dIds = visits.getDoors().split(",");
- roles = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda()
- .eq(DeviceRole::getIsdeleted,Constants.ZERO)
- .eq(DeviceRole::getIsDefault,Constants.ZERO)
- .eq(DeviceRole::getType,Constants.DeviceRoleType.fk));
- if(roles.size() ==0){
-
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鏆備笉瀛樺湪鍙闂殑璁垮闂ㄧ锛屾棤娉曡繘琛岀敵璇锋搷浣滐紒");
}
}
String[] ids =new String[roles.size()];
@@ -537,6 +574,8 @@
BeanUtils.copyProperties(result,v);
visitsList.add(0,v);
result.setWithUserList(visitsList);
+ result.setPrefixUrl(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +
+ systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode());
return result;
}
@@ -565,9 +604,9 @@
queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO);
queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Visits::getType,pageWrap.getModel().getType());
- queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Visits::getPhone,pageWrap.getModel().getName())
+ 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,StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()))
+ .eq(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Visits::getIdcardNo,DESUtil.encrypt(Constants.EDS_PWD, pageWrap.getModel().getIdcardNo()))
.eq(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Visits::getCompanyName,pageWrap.getModel().getCompanyName())
.eq(Objects.nonNull(pageWrap.getModel().getStatus()),Visits::getStatus,pageWrap.getModel().getStatus());
queryWrapper.isNull(Visits::getParentId);
diff --git a/server/dmvisit_web/src/main/java/com/doumee/api/web/ProblemController.java b/server/dmvisit_web/src/main/java/com/doumee/api/web/ProblemController.java
index c47b3d3..854619d 100644
--- a/server/dmvisit_web/src/main/java/com/doumee/api/web/ProblemController.java
+++ b/server/dmvisit_web/src/main/java/com/doumee/api/web/ProblemController.java
@@ -40,7 +40,7 @@
@ApiOperation(value = "鑾峰彇棰樼洰鏁版嵁", notes = "H5")
@GetMapping("/getProblemsVO")
@ApiImplicitParams({
- @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "useType", value = "浣跨敤鍦烘櫙 0鍔冲姟浜哄憳 1鏅�氳瀹�", required = true)
+ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "useType", value = "浣跨敤鍦烘櫙 2鍔冲姟浜哄憳 1鏅�氳瀹�", required = true)
})
public ApiResponse<List<ProblemsVO>> getProblemsVO(@RequestParam Integer useType) {
return ApiResponse.success("鏌ヨ鎴愬姛",problemsService.getProblemsVO(useType));
diff --git a/server/dmvisit_web/src/main/java/com/doumee/api/common/PublicController.java b/server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
similarity index 82%
rename from server/dmvisit_web/src/main/java/com/doumee/api/common/PublicController.java
rename to server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
index eec54de..b38b36e 100644
--- a/server/dmvisit_web/src/main/java/com/doumee/api/common/PublicController.java
+++ b/server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
@@ -1,4 +1,4 @@
-package com.doumee.api.common;
+package com.doumee.api.web;
import com.alibaba.fastjson.JSONObject;
import com.doumee.api.BaseController;
@@ -6,6 +6,7 @@
import com.doumee.core.annotation.trace.Trace;
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 io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -14,9 +15,7 @@
import lombok.extern.slf4j.Slf4j;
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.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
@@ -25,11 +24,9 @@
import javax.servlet.http.HttpServletResponse;
import java.io.File;
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
@@ -89,6 +86,69 @@
systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode());
}
+
+
+
+ public static FtpUtil ftp = null;
+
+ @ApiOperation(value = "涓婁紶鏂囦欢鍒癋TP")
+ @RequestMapping(method= RequestMethod.POST,value="api/uploadFtp.do")
+ @ResponseBody
+ public void uploadFtp(HttpServletRequest request, HttpServletResponse response, String folderCode) throws Exception {
+ String folder = systemDictDataBiz.queryByCode(Constants.FTP,folderCode).getCode();
+ String prefixPath = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode();
+ InputStream is = null;
+ 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();
+ }
+
+ CommonsMultipartResolver multipartResovler = new CommonsMultipartResolver();
+ if (multipartResovler.isMultipart(request)) {
+ MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+ Iterator<String> it = multipartRequest.getFileNames();
+ while (it.hasNext()) {
+ MultipartFile file = multipartRequest.getFile(it.next());
+ is = file.getInputStream();
+ String date = DateUtil.getNowShortDate();
+ String fName = date+"/"+ UUID.randomUUID()+".jpg";
+ String fileName = folder+fName;
+ boolean r = ftp.uploadInputstream(is,fileName);
+ if(r){
+ context.put("success", true);
+ context.put("code", 200);
+ context.put("errno",0);
+ JSONObject fileJSON = new JSONObject();
+ fileJSON.put("halfPath", fName);
+ fileJSON.put("prefixPath", prefixPath);
+ fileJSON.put("folder", folder);
+ context.put("data",fileJSON);
+ context.put("message","璇锋眰鎴愬姛");
+ writerJson(response, context);
+ return;
+ }
+ }
+ }
+ } catch (Exception e) {
+ log.error("銆愪笂浼燜TP澶辫触銆�======================"+e.getMessage());
+ }
+ context.put("code", 0);
+ context.put("message", "涓婁紶澶辫触");
+ context.put("errno",0);
+ writerJson(response, context);
+ return;
+ }
+
+
+
public void upload(HttpServletRequest request, HttpServletResponse response, String folder, String bucketName,
String access_id, String access_key, String resourcePath, String endpoint) throws Exception {
response.setCharacterEncoding("UTF-8");
--
Gitblit v1.9.3