From cc80794e556bbe1e43f9c1369e1dfc9c61318fda Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 07 三月 2024 14:57:10 +0800
Subject: [PATCH] ERP接口
---
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java | 6 +
server/dmvisit_web/src/main/java/com/doumee/api/ScheduleTool.java | 1
server/dmvisit_service/src/main/java/com/doumee/service/common/tree/CompanyTree.java | 4
server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/MemberInfoDTO.java | 2
server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java | 11 ++
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 15 ++
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java | 131 ++++++++++++++++---------
server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java | 1
server/dmvisit_service/src/main/java/com/doumee/dao/web/response/WxAuthorizeVO.java | 3
server/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java | 1
server/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java | 2
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java | 3
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 22 +++-
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java | 7 +
server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java | 13 ++
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java | 15 ++
server/dmvisit_service/src/main/java/com/doumee/dao/admin/request/VisitConfigDTO.java | 5 +
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java | 3
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java | 5
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java | 4
20 files changed, 186 insertions(+), 68 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java b/server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java
index 2cf79ff..274ec82 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -439,6 +439,19 @@
}
return "";
}
+
+ public static String getShortTimeToNull(Date date) {
+
+ if (date == null)
+ return null;
+ try {
+ String nowDate = sdfLong.format(date);
+ return nowDate;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return "";
+ }
/**
* Descrption:鍙栧緱褰撳墠鏃ユ湡,鏍煎紡涓�:yyyy-MM-dd HH:mm:ss
*
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java b/server/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
index 38a982a..57febaf 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
@@ -38,7 +38,7 @@
WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()
.toUser(visits.getOpenid())
.templateId(tempId)
- .url(prefix + "pages/appointmentDetails/appointmentDetails?id="+visits.getId())
+ .url(prefix + visits.getId())
.build();
String thing1 = "寰呭鎵�";
if(visits.getStatus()==2){
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/admin/request/VisitConfigDTO.java b/server/dmvisit_service/src/main/java/com/doumee/dao/admin/request/VisitConfigDTO.java
index f26310a..15cd76b 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/admin/request/VisitConfigDTO.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/admin/request/VisitConfigDTO.java
@@ -38,4 +38,9 @@
@ApiModelProperty(value = "鍏ュ巶椤荤煡")
private String visitNotice;
+
+ @ApiModelProperty(value = "鑷�夐棬绂侀厤缃�")
+ private Integer doorsVisitRequired;
+
+
}
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 284d522..7d74f1b 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
@@ -36,7 +36,7 @@
@ApiModelProperty(value = "鍏徃鍚嶇О")
private String companyName;
- @ApiModelProperty(value = "娴峰悍鐘舵�� 0寰呬笅鍙� 1鎴愬姛2澶辫触")
+ @ApiModelProperty(value = "娴峰悍鍚屾鐘舵�� 0鏈悓姝� 1宸插悓姝� 2鍚屾澶辫触 3涓嶇鍚堜笅鍙戞潯浠� 4绛夊緟鍒犻櫎鏉冮檺 ", example = "1")
private Integer hkStatus;
@ApiModelProperty(value = "鍏徃璐熻矗浜�")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
index 1c958a1..3f3f823 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
@@ -71,6 +71,10 @@
@ApiModelProperty(value = "鍙栨秷澶囨敞")
private String cancelInfo;
+ @ApiModelProperty(value = "璁惧鍚嶇О")
+ @TableField(exist = false)
+ private String deviceName;
+
@ApiModelProperty(value = "鎵�灞炲叕鍙哥紪鐮�")
@TableField(exist = false)
private String companyId;
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
index 72ce6e7..1ac0a30 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
@@ -99,9 +99,11 @@
@ApiModelProperty(value = "璇佷欢鏄剧ず淇℃伅")
@ExcelColumn(name="璇佷欢鏄剧ず淇℃伅")
private String idcardDecode;
+
@ApiModelProperty(value = "璇佷欢绫诲瀷 0韬唤璇� 1娓境璇佷欢 2鎶ょ収", example = "1")
@ExcelColumn(name="璇佷欢绫诲瀷 0韬唤璇� 1娓境璇佷欢 2鎶ょ収")
private Integer idcardType;
+
@ApiModelProperty(value = "宸ュ彿")
@ExcelColumn(name="宸ュ彿")
private String code;
@@ -215,6 +217,10 @@
@TableField(exist = false)
private String roleIdParam;
+ @ApiModelProperty(value = "鍓嶇紑鍦板潃")
+ @TableField(exist = false)
+ private String prefixUrl;
+
@ApiModelProperty(value = "鎺堟潈闂ㄧ缁勭紪鐮侀泦鍚�,銆愯瀹㈢銆戝敮涓�鏍囪瘑",hidden = true )
@TableField(exist = false)
private Integer[] roleIds;
diff --git a/server/dmvisit_service/src/main/java/com/doumee/dao/web/response/WxAuthorizeVO.java b/server/dmvisit_service/src/main/java/com/doumee/dao/web/response/WxAuthorizeVO.java
index 03ac978..8256ca2 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/dao/web/response/WxAuthorizeVO.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/dao/web/response/WxAuthorizeVO.java
@@ -1,5 +1,6 @@
package com.doumee.dao.web.response;
+import com.doumee.dao.business.model.Member;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -18,4 +19,6 @@
@ApiModelProperty(value = "鐢ㄦ埛token")
private String token;
+ @ApiModelProperty(value = "鐢ㄦ埛淇℃伅")
+ private Member member;
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java
index 406c8c9..7899ef0 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java
@@ -52,14 +52,20 @@
@Override
public Integer create(DeviceRole deviceRole) {
-
+ if(Objects.isNull(deviceRole)
+ || StringUtils.isBlank(deviceRole.getName())
+ || Objects.isNull(deviceRole.getType())
+ || Objects.isNull(deviceRole.getIsDefault())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
// 鑾峰彇涔嬪墠鏄惁瀛樺湪榛樿闂ㄧ缁�
DeviceRole newDeviceRole = null;
if(null != deviceRole.getType()) {
newDeviceRole = getDeviceRole(deviceRole.getType());
}
LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal();
- if(null != newDeviceRole) {
+ if(null != newDeviceRole && deviceRole.getIsDefault().equals(Constants.ZERO)) {
DeviceRole updateDeviceRole = new DeviceRole();
// 鑻ョ幇鍦ㄦ柊澧炴暟鎹缃粯璁ら棬绂佺粍锛涢偅涔堝厛鎶婁箣鍓嶇殑榛樿闂ㄧ缁勭姸鎬佹敼涓轰笉鏄粯璁ょ殑
updateDeviceRole.setId(newDeviceRole.getId());
@@ -117,7 +123,7 @@
newDeviceRole = getDeviceRole(deviceRole.getType());
}
LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal();
- if(null != newDeviceRole) {
+ if(null != newDeviceRole && deviceRole.getIsDefault().equals(Constants.ZERO)) {
DeviceRole update = new DeviceRole();
update.setEdirot(loginUserInfo.getId().toString());
update.setEditDate(new Date());
@@ -163,7 +169,8 @@
LambdaQueryWrapper<DeviceRole> query = new LambdaQueryWrapper<>();
query.eq(DeviceRole::getIsdeleted,Constants.ZERO)
.eq(DeviceRole::getIsDefault,Constants.ZERO)
- .eq(DeviceRole::getType,type);
+ .eq(DeviceRole::getType,type)
+ .last(" limit 1");
// 鏌ヨ鏄惁鏈夐粯璁ら棬绂佺粍锛屽彧鑳芥湁涓�缁勯粯璁ら棬绂佺粍
DeviceRole getDeviceRole = deviceRoleMapper.selectOne(query);
return getDeviceRole;
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java
index 1fd3fbf..77cb8f1 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java
@@ -9,6 +9,7 @@
import com.doumee.dao.business.EmpowerMapper;
import com.doumee.dao.business.join.EmpowerJoinMapper;
import com.doumee.dao.business.model.Company;
+import com.doumee.dao.business.model.Device;
import com.doumee.dao.business.model.Empower;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.system.model.SystemUser;
@@ -109,11 +110,13 @@
queryWrapper.selectAs(Member::getName,Empower::getMemberName);
queryWrapper.selectAs(Member::getPhone,Empower::getMemberPhone);
queryWrapper.selectAs(Member::getIdcardDecode,Empower::getMemberidCard);
+ queryWrapper.selectAs(Device::getName,Empower::getDeviceName);
queryWrapper.selectAs(Company::getName,Empower::getCompanyName);
queryWrapper.selectAs(SystemUser::getUsername,Empower::getCreaterName);
queryWrapper.leftJoin(Member.class,Member::getId,Empower::getMemberId);
queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);
queryWrapper.leftJoin(SystemUser.class,SystemUser::getId,Empower::getCreator);
+ queryWrapper.leftJoin(Device.class,Device::getId,Empower::getDeviceId);
queryWrapper
/* .eq(Empower::getIsdeleted, Constants.ZERO)*/
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java
index 7e5c9e9..4a84782 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java
@@ -296,7 +296,8 @@
.selectAs(Member::getName,MemberCard::getMemberName)
.selectAs(Member::getPhone,MemberCard::getMemberPhone)
.selectAs(Member::getType,MemberCard::getMemberType)
- .selectAs(Company::getName,MemberCard::getCompanyName);
+ .selectAs(Company::getName,MemberCard::getCompanyName)
+ .eq(MemberCard::getIsdeleted,Constants.ZERO);
queryWrapper.like(Objects.nonNull(pageWrap.getModel().getCode()),MemberCard::getCode,pageWrap.getModel().getCode())
.eq(Objects.nonNull(pageWrap.getModel().getStatus()),MemberCard::getStatus,pageWrap.getModel().getStatus())
.eq(Objects.nonNull(pageWrap.getModel().getStatus()),MemberCard::getStatus,pageWrap.getModel().getStatus())
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index 5f44246..9bce39b 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -603,6 +603,7 @@
queryWrapper.selectAll(Member.class);
queryWrapper.selectAs(Company::getName,Member::getCompanyName);
+ queryWrapper.select(" ( select count(1) from member_card mc where mc.member_id = t.id ) as memberCardCount ");
queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);
queryWrapper.in(Objects.nonNull(pageWrap.getModel().getCompanyIds())&&pageWrap.getModel().getCompanyIds().size()>0,
Member::getCompanyId,pageWrap.getModel().getCompanyIds())
@@ -714,8 +715,8 @@
.selectAs(Company::getName,MemberInfoDTO::getCompanyName)
.select(" (select ua.CREATE_DATE from user_action ua where ua.MEMBER_ID=t.id and ua.ISDELETED=0 order by ua.CREATE_DATE desc limit 1) as optTime")
.select(" (select s.REALNAME from user_action uac left join system_user s on uac.CREATOR = s.ID where uac.MEMBER_ID=t.id and uac.ISDELETED=0 order by uac.CREATE_DATE desc limit 1) as creatorName")
- .select(" (select STARTTIME from visits v where v.MEMBER_ID=t.id and v.ISDELETED=0 order by CREATE_DATE desc limit 1) as visitsLastDate");
-
+ .select(" (select STARTTIME from visits v where v.MEMBER_ID=t.id and v.ISDELETED=0 order by CREATE_DATE desc limit 1) as visitsLastDate")
+ .eq(Member::getIsdeleted,Constants.ZERO);
queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getCreaterId()),Member::getEditor,pageWrap.getModel().getCreaterId());
queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Member::getType,pageWrap.getModel().getType());
queryWrapper
@@ -878,24 +879,35 @@
WxAuthorizeVO wxAuthorizeVO = new WxAuthorizeVO();
wxAuthorizeVO.setOpenid(openId);
//鏍规嵁openId 鏌ヨ鐢ㄦ埛淇℃伅
- Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda()
+ Member member = memberJoinMapper.selectJoinOne(Member.class,new MPJLambdaWrapper<Member>()
+ .selectAll(Member.class)
+ .selectAs(Company::getName,Member::getCompanyName)
+ .leftJoin(Company.class,Company::getId,Member::getCompanyId)
.eq(Member::getOpenid,openId)
.eq(Member::getIsdeleted,Constants.ZERO)
- .ne(Member::getType,Constants.memberType.visitor)
+ .orderByDesc(Member::getCreateDate)
+ .last(" limit 1 ")
);
//闈炶瀹㈢敤鎴� 杩涜鍒ゆ柇鏄惁瀛樺湪鐢ㄦ埛
- if(!Objects.isNull(member)&&!member.getType().equals(Constants.memberType.visitor)){
+ if(!Objects.isNull(member)){
if(member.getIsdeleted() == Constants.ONE){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸插垹闄�,璇疯仈绯荤鐞嗗憳");
}
if(member.getStatus() != Constants.ZERO){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸茬鐢�,璇疯仈绯荤鐞嗗憳");
}
+ if(StringUtils.isNotBlank(member.getIdcardNo())){
+ member.setIdcardDecode(DESUtil.decrypt(Constants.EDS_PWD, member.getIdcardNo()));
+ }
+ String prefixUrl = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +
+ systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode();
+ member.setPrefixUrl(prefixUrl);
JwtPayLoad payLoad = new JwtPayLoad(Integer.toString(member.getId()));
String token = JwtTokenUtil.generateToken(payLoad);
//瀛樺偍token鑷硆edis
RedisUtil.addObject(redisTemplate,Constants.RedisKeys.INTERNAL_TOKEN+"_"+member.getId(),token,Constants.RedisKeys.EXPIRE_TIME);
wxAuthorizeVO.setToken(token);
+ wxAuthorizeVO.setMember(member);
}
return wxAuthorizeVO;
}
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 e387803..e340737 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
@@ -54,6 +54,7 @@
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.DigestUtils;
@@ -114,6 +115,7 @@
if (Objects.isNull(erpVisitDTO)
|| StringUtils.isBlank(erpVisitDTO.getName())
|| StringUtils.isBlank(erpVisitDTO.getPhone())
+ || StringUtils.isBlank(erpVisitDTO.getCompanyName())
|| Objects.isNull(erpVisitDTO.getIdcardType())
|| StringUtils.isBlank(erpVisitDTO.getIdcardNo())
|| Objects.isNull(erpVisitDTO.getStarttime())
@@ -155,6 +157,8 @@
for (ErpWithVisitDTO erpWithVisitDTO : erpWithVisitDTOList) {
Visits withVisits = new Visits();
BeanUtils.copyProperties(erpWithVisitDTO, withVisits);
+ withVisits.setCompanyName(visits.getCompanyName());
+ withVisits.setReason(visits.getReason());
visitsList.add(withVisits);
}
visits.setWithUserList(visitsList);
@@ -163,11 +167,12 @@
}catch (BusinessException e){
throw e;
}finally {
- saveInterfaceLog(erpVisitDTO,"/visitBiz/resource/crateVisit",null,Constants.ZERO);
+ saveInterfaceLog(erpVisitDTO,"/visitBiz/resource/createVisit",null,Constants.ZERO);
}
}
- private void saveInterfaceLog(Object param, String path,String result,Integer type) {
+ @Transactional(propagation = Propagation.NOT_SUPPORTED)
+ void saveInterfaceLog(Object param, String path, String result, Integer type) {
InterfaceLog interfaceLog=new InterfaceLog();
interfaceLog.setType(type);
interfaceLog.setCreateDate(new Date());
@@ -568,9 +573,10 @@
private void isValidBaseParam(Visits visits) {
if(visits.getEndtime() == null
|| visits.getStarttime() == null
-// || StringUtils.isBlank(visits.getReason())
+ || StringUtils.isBlank(visits.getReason())
|| StringUtils.isBlank( visits.getName())
|| StringUtils.isBlank( visits.getPhone())
+ || StringUtils.isBlank( visits.getCompanyName())
|| visits.getIdcardType() == null
// || StringUtils.isBlank( visits.getFaceImg() )
|| StringUtils.isBlank( visits.getIdcardNo() )
@@ -917,6 +923,9 @@
if(!Constants.equalsInteger(Constants.ONE, member.getCanVisit())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇ユ嫓璁夸汉鏆傛椂涓嶈兘鎺ュ彈鎮ㄧ殑鎷滆鐢宠~");
}
+ if(StringUtils.isBlank(member.getHkId())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇ユ嫓璁夸汉鏈笅鍙戞殏鏃朵笉鑳芥帴鍙楁偍鐨勬嫓璁跨敵璇穨");
+ }
return member;
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
index 6e63bab..9cce8e3 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -44,6 +44,7 @@
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.PostConstruct;
@@ -524,7 +525,7 @@
for (DeviceRole deviceRole:deviceRoleList) {
RoleListResponse roleListResponse = new RoleListResponse();
BeanUtils.copyProperties(deviceRole,roleListResponse);
- if(deviceRole.getType().equals(Constants.TWO)){
+ if(deviceRole.getType().equals("2")){
roleListResponse.setType(Constants.ONE);
}else{
roleListResponse.setType(Constants.ZERO);
@@ -877,6 +878,7 @@
member.setFsStatus(Constants.ZERO);
member.setCompanyId(company.getId());
member.setType(Constants.memberType.internal);
+ member.setCanVisit(Constants.ONE);
String encryptIdNo = DESUtil.encrypt(Constants.EDS_PWD,param.getIdNo());
member.setIdcardNo(encryptIdNo);
member.setStartTime(param.getValidStartTime());
@@ -1008,6 +1010,30 @@
@Override
public void roleUserAuthor(UserAuthorRequest param){
+ try{
+// if(Objects.isNull(param)
+// ||StringUtils.isBlank(param.getUserId())){
+// throw new BusinessException(ResponseStatus.BAD_REQUEST);
+// }
+// Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getErpId,param.getUserId()).last("limit 1"));
+// if(Objects.isNull(member)){
+// throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛淇℃伅涓嶅瓨鍦紒");
+// }
+// List<Integer> doorIds = getRoleIdByParam(param.getRoleIds(),member);
+// if(StringUtils.isBlank(member.getRoleId())){
+// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌闂ㄧ缁勬暟鎹�");
+// }
+// //鏇存柊鎺堟潈鏈夋晥鏈�
+// Member update = new Member();
+// update.setId(member.getId());
+// update.setEditDate(new Date());
+// update.setStartTime(param.getValidStartTime());
+// update.setEndTime(param.getValidEndTime());
+// update.setRoleId(StringUtils.isNotBlank(member.getRoleId())?member.getRoleId():null);
+// update.setHkStatus(Constants.ZERO);//鍋氫竴閬嶆洿鏂伴�昏緫
+// update.setRemark("寰呭悓姝ュ畨闃插钩鍙�");
+// memberMapper.updateById(update);
+
if(Objects.isNull(param)
||StringUtils.isBlank(param.getUserId())){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
@@ -1042,61 +1068,68 @@
.set(Member::getEndTime,param.getValidEndTime())
.set(Member::getEditDate,new Date())
.set(Member::getHkStatus,Constants.ZERO ));
+ }catch (BusinessException e){
+ throw e;
+ }finally {
+ saveInterfaceLog(param,"/event/role/userAuthor",null,Constants.ZERO);
+ }
}
@Override
public void parkCarAuthor(CarAuthorRequest param){
- if(Objects.isNull(param)
- ||StringUtils.isBlank(param.getCarCode())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
- }
- if(Objects.nonNull(param.getValidStartTime())&&Objects.nonNull(param.getValidEndTime())){
- if(param.getValidStartTime().getTime()> param.getValidEndTime().getTime()){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝鏈夋晥鏈熸椂闂翠笉鍚堟硶锛�");
+ try{
+ if(Objects.isNull(param)
+ ||StringUtils.isBlank(param.getCarCode())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
- }
- Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getErpId,param.getUserId()).last("limit 1"));
- if(Objects.isNull(member)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛淇℃伅涓嶅瓨鍦紒");
- }
- //鍒犻櫎杞﹂噺搴撹褰曟暟鎹�
- parkBookMapper.update(null,new UpdateWrapper<ParkBook>().lambda()
- .eq(ParkBook::getCarCode,param.getCarCode())
- .set(ParkBook::getIsdeleted,Constants.ONE)
- .set(ParkBook::getHkStatus,Constants.ZERO)
- );
- //鏌ヨ杞﹀簱淇℃伅
- List<Parks> parksList = new ArrayList<>();
- if(CollectionUtils.isNotEmpty(param.getParkIdList())){
- parksList = parksMapper.selectList(new QueryWrapper<Parks>().lambda()
- .in(Parks::getId,param.getParkIdList())
+ if(Objects.nonNull(param.getValidStartTime())&&Objects.nonNull(param.getValidEndTime())){
+ if(param.getValidStartTime().getTime()> param.getValidEndTime().getTime()){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝鏈夋晥鏈熸椂闂翠笉鍚堟硶锛�");
+ }
+ }
+ Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getErpId,param.getUserId()).last("limit 1"));
+ if(Objects.isNull(member)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛淇℃伅涓嶅瓨鍦紒");
+ }
+ //鍒犻櫎杞﹂噺搴撹褰曟暟鎹�
+ parkBookMapper.update(null,new UpdateWrapper<ParkBook>().lambda()
+ .eq(ParkBook::getCarCode,param.getCarCode())
+ .set(ParkBook::getIsdeleted,Constants.ONE)
+ .set(ParkBook::getHkStatus,Constants.ZERO)
);
- }else{
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鍋滆溅搴撲俊鎭笉瀛樺湪锛屾巿鏉冨け璐�");
- }
- if(CollectionUtils.isNotEmpty(parksList)){
- List<ParkBook> parkBookList = new ArrayList<>();
- for (Parks parks:parksList) {
- ParkBook parkBook = new ParkBook();
- parkBook.setIsdeleted(Constants.ZERO);
- parkBook.setCreateDate(new Date());
- parkBook.setCarCode(param.getCarCode());
- parkBook.setParkId(parks.getId());
- parkBook.setOrigin(Constants.ZERO);
- parkBook.setStartTime(Objects.isNull(param.getValidStartTime())?new Date():param.getValidStartTime());
- parkBook.setEndTime(Objects.isNull(param.getValidEndTime())?null:param.getValidEndTime());
- parkBook.setTimeType(Objects.isNull(param.getValidEndTime())?Constants.ZERO:Constants.ONE);
- parkBook.setMemberId(member.getId());
- parkBook.setHkStatus(Constants.ZERO);
- parkBook.setRemark("寰呭悓姝ュ畨闃插钩鍙�");
- parkBookList.add(parkBook);
+ //鏌ヨ杞﹀簱淇℃伅
+ if(CollectionUtils.isNotEmpty(param.getParkIdList())){
+ List<Parks> parksList = parksMapper.selectList(new QueryWrapper<Parks>().lambda()
+ .in(Parks::getId,param.getParkIdList())
+ );
+ if(CollectionUtils.isNotEmpty(parksList)){
+ List<ParkBook> parkBookList = new ArrayList<>();
+ for (Parks parks:parksList) {
+ ParkBook parkBook = new ParkBook();
+ parkBook.setIsdeleted(Constants.ZERO);
+ parkBook.setCreateDate(new Date());
+ parkBook.setCarCode(param.getCarCode());
+ parkBook.setParkId(parks.getId());
+ parkBook.setOrigin(Constants.ZERO);
+ parkBook.setStartTime(Objects.isNull(param.getValidStartTime())?null:param.getValidStartTime());
+ parkBook.setEndTime(Objects.isNull(param.getValidEndTime())?null:param.getValidEndTime());
+ parkBook.setTimeType(Objects.isNull(param.getValidEndTime())?Constants.ZERO:Constants.ONE);
+ parkBook.setMemberId(member.getId());
+ parkBook.setHkStatus(Constants.ZERO);
+ parkBook.setRemark("寰呭悓姝ュ畨闃插钩鍙�");
+ parkBookList.add(parkBook);
+ }
+ parkBookMapper.insertBatchSomeColumn(parkBookList);
+ }else{
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鍋滆溅搴撲俊鎭笉瀛樺湪锛屾巿鏉冨け璐�");
+ }
}
- parkBookMapper.insertBatchSomeColumn(parkBookList);
- }else{
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鍋滆溅搴撲俊鎭笉瀛樺湪锛屾巿鏉冨け璐�");
+ }catch (BusinessException e){
+ throw e;
+ }finally {
+ saveInterfaceLog(param,"/event/park/carAuthor",null,Constants.ZERO);
}
-
}
@@ -1142,8 +1175,8 @@
}
-
- private void saveInterfaceLog(Object param, String path,String result,Integer type) {
+ @Transactional(propagation = Propagation.NOT_SUPPORTED)
+ public void saveInterfaceLog(Object param, String path, String result, Integer type) {
InterfaceLog interfaceLog=new InterfaceLog();
interfaceLog.setType(type);
interfaceLog.setCreateDate(new Date());
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
index b902487..a786ef7 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
@@ -30,6 +30,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Objects;
/**
* 娴峰悍鍋滆溅搴撳悓姝ervice瀹炵幇
@@ -138,8 +139,8 @@
CarChargeAddRequest param = new CarChargeAddRequest();
param.setPlateNo(c.getCarCode());
param.setParkSyscode(c.getParkHkId());
- param.setStartTime(DateUtil.getShortTime(c.getStartTime()));
- param.setEndTime(DateUtil.getShortTime(c.getEndTime()));
+ param.setStartTime(Objects.isNull(c.getStartTime())?DateUtil.getDate(new Date(),"yyyy-MM-dd"):DateUtil.getShortTimeToNull(c.getStartTime()));
+ param.setEndTime(Objects.isNull(c.getEndTime())?"2999-12-31":DateUtil.getShortTimeToNull(c.getEndTime()));
BaseResponse response = HKService.carChargeAddtion(param);
if(response!=null
&& StringUtils.equals(response.getCode(),HKConstants.RESPONSE_SUCCEE)){
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
index 4c5b975..95c71f3 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
@@ -379,6 +379,13 @@
request.setVisitEndTime(DateUtil.getISO8601Timestamp(c.getEndtime()));
request.setReceptionistId(c.getReceptMemberHkId());//琚浜烘捣搴风紪鐮�
request.setVisitPurpose(c.getReason());
+ if(StringUtils.isNotBlank(c.getReason())){
+ char[] charArray = c.getReason().toCharArray();
+ int length = charArray.length;
+ if(length>32){
+ request.setVisitPurpose(c.getReason().substring(32));
+ }
+ }
//鑾峰彇鏉冮檺缁勯泦鍚�
request.setVisitorPermissionSet(getVisitPermissonRequest(roleList,c));
List<VisitAppointmentVistorRequest> infolist = new ArrayList<>();
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/common/tree/CompanyTree.java b/server/dmvisit_service/src/main/java/com/doumee/service/common/tree/CompanyTree.java
index 365c4bc..4852691 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/common/tree/CompanyTree.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/common/tree/CompanyTree.java
@@ -43,12 +43,12 @@
for (Company treeNode : nodeList){
// 鍒ゆ柇褰撳墠鑺傜偣鏄惁涓烘牴鑺傜偣锛屾澶勬敞鎰忥細鑻arentId绫诲瀷鏄疭tring锛屽垯瑕侀噰鐢╡quals()鏂规硶鍒ゆ柇銆�
if(origin== DataSyncConfig.origin.hk){
- if (Objects.isNull(treeNode.getHkParentId())) {
+ if (StringUtils.isBlank(treeNode.getHkParentId())) {
// 鏄紝娣诲姞
rootNodeList.add(treeNode);
}
}else if(origin== DataSyncConfig.origin.erp){
- if (Objects.isNull(treeNode.getErpParentId())) {
+ if (StringUtils.isBlank(treeNode.getErpParentId())) {
// 鏄紝娣诲姞
rootNodeList.add(treeNode);
}
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
index 65edb21..9445510 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
@@ -179,6 +179,11 @@
throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"鍏ュ巶椤荤煡 瀛楀吀涓嶅瓨鍦�");
}
visitConfigDTO.setVisitNotice(visitNotice.getCode());
+ SystemDictData doorsVisitRequired = systemDictList.stream().filter(m->m.getLabel().equals(Constants.SELECT_DOORS_VISIT_REQUIRED)).findFirst().get();
+ if(Objects.isNull(doorsVisitRequired)){
+ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"鑷�夐棬绂侀厤缃� 瀛楀吀涓嶅瓨鍦�");
+ }
+ visitConfigDTO.setDoorsVisitRequired(Integer.valueOf(doorsVisitRequired.getCode()));
return visitConfigDTO;
}
@@ -243,6 +248,11 @@
}
visitNotice.setCode(visitConfigDTO.getVisitNotice());
+ SystemDictData doorsVisitRequired = systemDictList.stream().filter(m->m.getLabel().equals(Constants.SELECT_DOORS_VISIT_REQUIRED)).findFirst().get();
+ if(Objects.isNull(doorsVisitRequired)){
+ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"鑷�夐棬绂侀厤缃� 瀛楀吀涓嶅瓨鍦�");
+ }
+ doorsVisitRequired.setCode(visitConfigDTO.getDoorsVisitRequired().toString());
systemDictDataMapper.updateById(reservationWay);
systemDictDataMapper.updateById(checkVisit);
@@ -251,6 +261,7 @@
systemDictDataMapper.updateById(theme);
systemDictDataMapper.updateById(description);
systemDictDataMapper.updateById(visitNotice);
+ systemDictDataMapper.updateById(doorsVisitRequired);
}
diff --git a/server/dmvisit_web/src/main/java/com/doumee/api/ScheduleTool.java b/server/dmvisit_web/src/main/java/com/doumee/api/ScheduleTool.java
index f9f7345..e1fc4ba 100644
--- a/server/dmvisit_web/src/main/java/com/doumee/api/ScheduleTool.java
+++ b/server/dmvisit_web/src/main/java/com/doumee/api/ScheduleTool.java
@@ -66,6 +66,7 @@
String url = WXConstant.GET_ACCESS_TOKEN_URL.replace("APPID",appId).replace("APPSECRET",appSecret);
String response = HttpsUtil.get(url,false);
JSONObject json = JSONObject.parseObject(response);
+ System.out.println(json);
SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN);
if(!Objects.isNull(systemDictData)){
systemDictData.setCode(json.getString("access_token"));
diff --git a/server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java b/server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
index b38b36e..626e9cc 100644
--- a/server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
+++ b/server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
@@ -95,6 +95,7 @@
@RequestMapping(method= RequestMethod.POST,value="api/uploadFtp.do")
@ResponseBody
public void uploadFtp(HttpServletRequest request, HttpServletResponse response, String folderCode) throws Exception {
+ System.out.println("涓婁紶涓�");
String folder = systemDictDataBiz.queryByCode(Constants.FTP,folderCode).getCode();
String prefixPath = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode();
InputStream is = null;
diff --git a/server/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java b/server/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java
index 2a4a690..92ded6e 100644
--- a/server/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java
+++ b/server/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java
@@ -1,5 +1,6 @@
package com.doumee.api.web;
+import com.doumee.config.annotation.LoginRequired;
import com.doumee.core.annotation.trace.Trace;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.utils.Constants;
--
Gitblit v1.9.3