Commit f452f394 authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents c8a3f222 956e1882
......@@ -311,3 +311,8 @@ PRIMARY KEY (`id`)
INSERT INTO `mortals_xhx_param` (`name`, `firstOrganize`, `secondOrganize`, `paramKey`, `paramValue`, `validStatus`, `modStatus`, `displayType`, `remark`, `createTime`, `createUserId`, `createUserName`) VALUES ('综窗服务器http', NULL, NULL, 'server_cws_http_url', 'http://192.168.0.252:21086', '1', '4', '0', NULL, NULL, NULL, NULL);
-- ----------
-- 门户用户同步(2024-01-17)
-- ----------
INSERT INTO `mortals_xhx_task` (`name`, `taskKey`, `status`, `excuteService`, `excuteParam`, `excuteHost`, `excuteStrategy`, `excuteDate`, `excuteTime`, `remark`, `lastExcuteHost`, `lastExcuteTime`, `interimExcuteStatus`, `createTime`, `createUserId`, `createUserName`) VALUES ('同步门户用户', 'SyncPortalUserTask', '0', 'SyncPortalUserTask', NULL, NULL, '1', '0', '22:01', NULL, '172.17.0.1', '2024-01-16 22:01:01', '0', '2023-08-24 22:29:18', '1', '系统管理员');
package com.mortals.xhx.common.code.complex;
import com.mortals.xhx.common.code.AgentEnum;
import java.util.*;
public enum HandlingState {
HANDLE("HANDLE","办理中"),
FAILED("FAILED","不予受理"),
VOTE("VOTE","审核未通过"),
SUCCESS("SUCCESS","办件成功"),
UNDO("UNDO","办件撤销"),
GENERAL("GENERAL","通办中"),
GENERAL_NO_PICK("GENERAL_NO_PICK","通办不接件"),
GENERAL_SUCCESS("GENERAL_SUCCESS","通办成功"),
HANDLING_CORRECTION_FILLING("HANDLING_CORRECTION_FILLING","补证补齐")
;
private String value;
private String desc;
HandlingState(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return value;
}
public String getDesc() {
return desc;
}
public static HandlingState getByValue(String value) {
HandlingState[] var1 = values();
int var2 = var1.length;
for(int var3 = 0; var3 < var2; ++var3) {
HandlingState examStatus = var1[var3];
if (examStatus.getValue().equals(value)) {
return examStatus;
}
}
return null;
}
public static List<Map<String, String>> getEnumMap(String... eItem) {
List<Map<String, String>> result = new ArrayList<>();
HandlingState[] var2 = values();
int var3 = var2.length;
for(int var4 = 0; var4 < var3; ++var4) {
HandlingState item = var2[var4];
try {
boolean hasE = false;
String[] var7 = eItem;
int var8 = eItem.length;
for(int var9 = 0; var9 < var8; ++var9) {
String e = var7[var9];
if (item.getValue().equals(e)) {
hasE = true;
break;
}
}
if (!hasE) {
Map<String, String> resultMap = new HashMap();
resultMap.put("item_text", item.getValue());
resultMap.put("item_value", item.getDesc());
result.add(resultMap);
}
} catch (Exception var11) {
}
}
return result;
}
}
package com.mortals.xhx.common.code.complex;
import java.util.*;
public enum SfYofn {
("Y","是"),
("N","否")
;
private String value;
private String desc;
SfYofn(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return value;
}
public String getDesc() {
return desc;
}
public static SfYofn getByValue(String value) {
SfYofn[] var1 = values();
int var2 = var1.length;
for(int var3 = 0; var3 < var2; ++var3) {
SfYofn examStatus = var1[var3];
if (examStatus.getValue().equals(value)) {
return examStatus;
}
}
return null;
}
public static List<Map<String, String>> getEnumMap(String... eItem) {
List<Map<String, String>> result = new ArrayList<>();
SfYofn[] var2 = values();
int var3 = var2.length;
for(int var4 = 0; var4 < var3; ++var4) {
SfYofn item = var2[var4];
try {
boolean hasE = false;
String[] var7 = eItem;
int var8 = eItem.length;
for(int var9 = 0; var9 < var8; ++var9) {
String e = var7[var9];
if (item.getValue().equals(e)) {
hasE = true;
break;
}
}
if (!hasE) {
Map<String, String> resultMap = new HashMap();
resultMap.put("item_text", item.getValue());
resultMap.put("item_value", item.getDesc());
result.add(resultMap);
}
} catch (Exception var11) {
}
}
return result;
}
}
package com.mortals.xhx.common.code.complex;
import java.util.*;
public enum StepResult {
通过("001","通过"),
不通过("002","不通过"),
补证补齐("003","补证补齐"),
后台重审("004","后台重审"),
准予受理("005","准予受理"),
不予受理("006","不予受理"),
容缺受理("007","容缺受理"),
外勘重审("008","外勘重审")
;
private String value;
private String desc;
StepResult(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return value;
}
public String getDesc() {
return desc;
}
public static StepResult getByValue(String value) {
StepResult[] var1 = values();
int var2 = var1.length;
for(int var3 = 0; var3 < var2; ++var3) {
StepResult examStatus = var1[var3];
if (examStatus.getValue().equals(value)) {
return examStatus;
}
}
return null;
}
public static List<Map<String, String>> getEnumMap(String... eItem) {
List<Map<String, String>> result = new ArrayList<>();
StepResult[] var2 = values();
int var3 = var2.length;
for(int var4 = 0; var4 < var3; ++var4) {
StepResult item = var2[var4];
try {
boolean hasE = false;
String[] var7 = eItem;
int var8 = eItem.length;
for(int var9 = 0; var9 < var8; ++var9) {
String e = var7[var9];
if (item.getValue().equals(e)) {
hasE = true;
break;
}
}
if (!hasE) {
Map<String, String> resultMap = new HashMap();
resultMap.put("item_text", item.getValue());
resultMap.put("item_value", item.getDesc());
result.add(resultMap);
}
} catch (Exception var11) {
}
}
return result;
}
}
package com.mortals.xhx.common.code.complex;
import java.util.*;
public enum YesNo {
("yes","有"),
("no","无")
;
private String value;
private String desc;
YesNo(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return value;
}
public String getDesc() {
return desc;
}
public static YesNo getByValue(String value) {
YesNo[] var1 = values();
int var2 = var1.length;
for(int var3 = 0; var3 < var2; ++var3) {
YesNo examStatus = var1[var3];
if (examStatus.getValue().equals(value)) {
return examStatus;
}
}
return null;
}
public static List<Map<String, String>> getEnumMap(String... eItem) {
List<Map<String, String>> result = new ArrayList<>();
YesNo[] var2 = values();
int var3 = var2.length;
for(int var4 = 0; var4 < var3; ++var4) {
YesNo item = var2[var4];
try {
boolean hasE = false;
String[] var7 = eItem;
int var8 = eItem.length;
for(int var9 = 0; var9 < var8; ++var9) {
String e = var7[var9];
if (item.getValue().equals(e)) {
hasE = true;
break;
}
}
if (!hasE) {
Map<String, String> resultMap = new HashMap();
resultMap.put("item_text", item.getValue());
resultMap.put("item_value", item.getDesc());
result.add(resultMap);
}
} catch (Exception var11) {
}
}
return result;
}
}
......@@ -204,28 +204,38 @@ public class AESUtil {
// AES支持三种长度的密钥:128位、192位、256位。
// 代码中这种就是128位的加密密钥,16字节 * 8位/字节 = 128位。
String random = "0000000671595991";
System.out.println("随机key:" + random);
System.out.println();
System.out.println("---------加密---------");
String aesResult = encrypt("511181198903042414", random);
System.out.println("aes加密结果:" + aesResult);
System.out.println();
// System.out.println("随机key:" + random);
// System.out.println();
//
// System.out.println("---------加密---------");
// String aesResult = encrypt("511181198903042414", random);
// System.out.println("aes加密结果:" + aesResult);
// System.out.println();
//
// System.out.println("---------解密---------");
// String decrypt = decrypt(aesResult, random);
// System.out.println("aes解密结果:" + decrypt);
// System.out.println();
//
//
// System.out.println("--------AES_CBC加密解密---------");
// String cbcResult = encryptCBC("511181198903042414", random);
// System.out.println("aes_cbc加密结果:" + cbcResult);
// System.out.println();
System.out.println("---------解密---------");
String decrypt = decrypt(aesResult, random);
System.out.println("aes解密结果:" + decrypt);
System.out.println("---------解密CBC---------");
String cbcDecrypt = decryptCBC("SWYgzz2KjYx+6TopctMpJQ==", random);
System.out.println("aes解密结果:" + cbcDecrypt);
System.out.println();
System.out.println("--------AES_CBC加密解密---------");
String cbcResult = encryptCBC("511181198903042414", random);
System.out.println("aes_cbc加密结果:" + cbcResult);
System.out.println("---------解密CBC---------");
String cbcDecrypt1 = decryptCBC("DXgGKRNryrPM/eeUQiN4wlfpYNUZ0XIwumXNHRFQGZM=", random);
System.out.println("aes解密结果:" + cbcDecrypt1);
System.out.println();
System.out.println("---------解密CBC---------");
String cbcDecrypt = decryptCBC("R2tB6mi08cAZytixt0nANWQJxrr4pwpjsBVpQ82I4JM=", random);
System.out.println("aes解密结果:" + cbcDecrypt);
String cbcDecrypt2 = decryptCBC("6yPbSSjvMeFuJ2ONqNmSyA==", random);
System.out.println("aes解密结果:" + cbcDecrypt2);
System.out.println();
}
}
......
package com.mortals.xhx.daemon.task;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.model.UserQuery;
import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.pdu.RespData;
import com.mortals.xhx.common.pdu.user.UserPdu;
import com.mortals.xhx.feign.user.IUserFeign;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 同步门户用户
*/
@Slf4j
@Service("SyncPortalUserTask")
public class SyncPortalUserTaskImpl implements ITaskExcuteService {
@Autowired
private IUserFeign userFeign;
@Autowired
private UserService userService;
@Override
public void excuteTask(ITask task) throws AppException {
try {
log.info("同步门户用户");
syncPersons();
} catch (Exception e) {
log.error("同步门户异常", e);
}
}
private void syncPersons() {
UserPdu userPdu = new UserPdu();
userPdu.setPage(1);
userPdu.setSize(-1);
Rest<RespData<List<UserPdu>>> resp = userFeign.list(userPdu);
if (resp.getCode() == YesNoEnum.YES.getValue()) {
List<UserPdu> userPduList = resp.getData().getData();
log.info("用户总数量:{}", userPduList.size());
if (!ObjectUtils.isEmpty(userPduList)) {
List<UserEntity> newUserList = userPduList.stream().map(newUser -> {
UserEntity userEntity = new UserEntity();
userEntity.initAttrValue();
BeanUtils.copyProperties(newUser, userEntity, new String[]{"id", "lastLoginTime", "lastLoginAddress"});
return userEntity;
}).collect(Collectors.toList());
List<UserEntity> oldUserList = userService.find(new UserQuery());
log.info(" oldUserList size:{}", oldUserList.size());
//当前用户map
Map<String, UserEntity> oldUserMap = oldUserList.parallelStream().collect(Collectors.toMap(x -> x.getLoginName(), y -> y, (o, n) -> n));
//门户用户map
// Map<String, UserEntity> newUserMap = newUserList.stream().collect(Collectors.toMap(x -> x.getLoginName(), y -> y, (o, n) -> n));
List<UserEntity> saveUserList = newUserList.stream().map(item -> {
if (!oldUserMap.containsKey(item.getLoginName())) {
item.setCreateUserId(1L);
item.setCreateUserName("系统管理员");
item.setCreateTime(new Date());
return item;
}
return null;
}).filter(f -> f != null).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(saveUserList)) {
log.info("用户新增,size:{}", saveUserList.size());
saveUserList.stream().forEach(item -> {
userService.getUserDao().insert(item);
});
}
}
//查找新增 与更新
}
}
@Override
public void stopTask(ITask task) throws AppException {
}
}
package com.mortals.xhx.module.sst.feign;
import com.alibaba.fastjson.JSON;
import com.mortals.xhx.common.code.ApiRespCodeEnum;
import com.mortals.xhx.feign.IFeign;
import com.mortals.xhx.feign.base.pdu.SitePdu;
import com.mortals.xhx.feign.rsp.ApiResp;
import com.mortals.xhx.module.sst.pdu.AcceptHandlingPdu;
import com.mortals.xhx.module.sst.pdu.FindHandlingPageReq;
import com.mortals.xhx.module.sst.pdu.SyntheticalMatterQuery;
import com.mortals.xhx.module.sst.pdu.SyntheticalPdu;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@FeignClient(name = "complex-window-manager", path = "/complex", fallbackFactory =ComplexFeignFallbackFactory.class)
public interface IApiComplexFeign extends IFeign {
/**
* 查询字典
* @param query
* @return
*/
@PostMapping(value = "/api/common/queryDict")
String queryDict(@RequestBody SyntheticalPdu query);
/**
* 查询可受理事项
* @param query
* @return
*/
@PostMapping(value = "/api/event-implementation/list")
String eventList(@RequestBody SyntheticalMatterQuery query);
/**
* 查询事项详情
* @param query
* @return
*/
@PostMapping(value = "/api/event-implementation/get-by-id")
String eventInfo(@RequestBody SyntheticalPdu query);
/**
* 查询事项情形
* @param query
* @return
*/
@PostMapping(value = "/api/bus-situation-material/getSituationMaterialTreeByEventIds")
String getSituationMaterialTreeByEventIds(@RequestBody SyntheticalPdu query);
/**
* 根据事项EventId查询办理事项材料
* @param query
* @return
*/
@PostMapping(value = "/api/material/findList")
String findMaterialList(@RequestBody SyntheticalPdu query);
/**
* 根据事项情形查询办理事项材料
* @param query
* @return
*/
@PostMapping(value = "/api/consulting-service/getMaterialByEventAndSituation")
String getMaterialByEventAndSituation(@RequestBody SyntheticalPdu query);
/**
* 获取办件要素
* @param query
* @return
*/
@PostMapping(value = "/api/event-implementation/getDynamicFormByEventIds")
String getDynamicFormByEventIds(@RequestBody SyntheticalPdu query);
/**
* 自助设备接件
* @param query
* @return
*/
@PostMapping(value = "/api/self-device-info/acceptHandling")
String acceptHandling(@RequestBody AcceptHandlingPdu query);
/**
* 查询已受理事项列表
* @param query
* @return
*/
@PostMapping(value = "/api/handling/findPageWithPermission")
String findPageWithPermission(@RequestBody FindHandlingPageReq query);
/**
* 文件下载
* @param query
* @return
*/
@PostMapping(value = "/api/common/downloadFileFtp")
String downloadFileFtp(@RequestBody FindHandlingPageReq query);
}
@Slf4j
@Component
class ComplexFeignFallbackFactory implements FallbackFactory<IApiComplexFeign> {
@Override
public IApiComplexFeign create(Throwable cause) {
return new IApiComplexFeign(){
@Override
public String queryDict(SyntheticalPdu query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法查询字典,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String eventList(SyntheticalMatterQuery query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法查询可受理事项,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String eventInfo(SyntheticalPdu query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法调用接口,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String getSituationMaterialTreeByEventIds(SyntheticalPdu query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法调用接口,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String findMaterialList(SyntheticalPdu query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法调用接口,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String getMaterialByEventAndSituation(SyntheticalPdu query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法调用接口,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String getDynamicFormByEventIds(SyntheticalPdu query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法调用接口,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String acceptHandling(AcceptHandlingPdu query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法调用接口,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String findPageWithPermission(FindHandlingPageReq query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法调用接口,请稍后再试!");
return JSON.toJSONString(failResp);
}
@Override
public String downloadFileFtp(FindHandlingPageReq query) {
ApiResp<String> failResp = new ApiResp<>();
failResp.setCode(ApiRespCodeEnum.FAILED.getValue());
failResp.setMsg("暂时无法调用接口,请稍后再试!");
return JSON.toJSONString(failResp);
}
};
}
}
......@@ -3,6 +3,8 @@ package com.mortals.xhx.module.sst.pdu;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -14,6 +16,7 @@ public class AcceptHandlingPdu {
private Long userId;
/** 申请人信息 */
private ApplicantLegal applicantLegal;
private ApplicantPersonal applicantPersonal;
/** 事项信息 */
private List<Map<String,String>> handlings;
/** 法人信息 */
......@@ -25,4 +28,8 @@ public class AcceptHandlingPdu {
/** 材料 */
private List<Material> materials;
private Object agency;
private String isStaging;
private Object thingId;
}
......@@ -12,4 +12,5 @@ public class ApplicantLegal {
private String documentId;
/** 申请人电话 */
private String phone;
private String applicantSex;
}
package com.mortals.xhx.module.sst.pdu;
import lombok.Data;
@Data
public class ApplicantPersonal{
private String phone;
private String applicantSex;
private String documentId;
private String applicantName;
private String applicantIdNumber;
}
......@@ -10,4 +10,8 @@ public class FindHandlingPageReq {
private Integer size;
private String search;
private String encryptStr;
private String url;
}
package com.mortals.xhx.module.sst.pdu;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
@Data
......@@ -11,6 +12,7 @@ public class Material {
/**材料原名 */
private String uploadFileName;
/**材料内容base64 */
@JSONField(serialize = false)
private String materialContent;
/**材料文件地址 */
private String materialFilePath;
......
package com.mortals.xhx.module.sst.service.impl;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.pdu.user.UserPdu;
import com.mortals.xhx.feign.user.IUserFeign;
......@@ -28,15 +30,21 @@ public class SstAgreementServiceImpl extends AbstractCRUDServiceImpl<SstAgreemen
@Autowired
private IUserFeign userFeign;
@Autowired
private UserService userService;
@Override
protected void findAfter(SstAgreementEntity params, PageInfo pageInfo, Context context, List<SstAgreementEntity> list) throws AppException {
if(CollectionUtils.isNotEmpty(list)){
list.stream().forEach(item->{
if(item.getUpdateUserId()!=null) {
Rest<UserPdu> resp = userFeign.info(item.getUpdateUserId());
if (resp.getCode() == YesNoEnum.YES.getValue()) {
item.setUpdateUserName(resp.getData().getRealName());
// Rest<UserPdu> resp = userFeign.info(item.getUpdateUserId());
// if (resp.getCode() == YesNoEnum.YES.getValue()) {
// item.setUpdateUserName(resp.getData().getRealName());
// }
UserEntity userEntity = userService.get(item.getUpdateUserId());
if(userEntity!=null){
item.setUpdateUserName(userEntity.getRealName());
}
}
});
......
......@@ -50,26 +50,28 @@ public class SstAppsDeskServiceImpl extends AbstractCRUDServiceImpl<SstAppsDeskD
orderCols.put("basicSort","DESC");
query.setOrderCols(orderCols);
query.setSiteId(siteId);
List<SstAppsDeskEntity> appsEntities = this.find(query);
query.setShowBasic(1);
List<SstAppsDeskEntity> showApps = this.find(query);
Map<String, Object> siteApp = new HashMap<>();
siteApp.put("allApps", allApps);
if(CollectionUtils.isNotEmpty(appsEntities)){
List<SstAppsDeskEntity> showApps = new ArrayList<>();
List<SstAppsDeskEntity> hotApps = new ArrayList<>();
for(SstAppsDeskEntity SstAppsDeskEntity:appsEntities){
if(SstAppsDeskEntity.getShowBasic()==1){
showApps.add(SstAppsDeskEntity);
}
if(SstAppsDeskEntity.getShowHot()==1){
hotApps.add(SstAppsDeskEntity);
}
}
if(CollectionUtils.isNotEmpty(showApps)){
siteApp.put("showApps", showApps);
siteApp.put("hotApps", hotApps);
}else {
siteApp.put("showApps", Collections.emptyList());
siteApp.put("hotApps", Collections.emptyList());
}
SstAppsDeskEntity query1 = new SstAppsDeskEntity();
Map<String,String> orderCols1 = new HashMap<>();
orderCols1.put("hotSort","DESC");
query1.setOrderCols(orderCols1);
query1.setSiteId(siteId);
query1.setShowHot(1);
List<SstAppsDeskEntity> hotApps = this.find(query1);
if(CollectionUtils.isNotEmpty(hotApps)){
siteApp.put("hotApps", hotApps);
}else {
siteApp.put("hotApps", Collections.emptyList());
}
return siteApp;
}
......@@ -153,6 +155,11 @@ public class SstAppsDeskServiceImpl extends AbstractCRUDServiceImpl<SstAppsDeskD
query.setOrderCols(orderCols);
query.setSiteId(siteId);
List<SstAppsDeskEntity> appsEntities = this.find(query);
Map<String,String> orderCols1 = new HashMap<>();
orderCols1.put("clickSum","DESC");
orderCols1.put("hotSort","DESC");
query.setOrderCols(orderCols1);
List<SstAppsDeskEntity> appsHots = this.find(query);
Map<Long,Long> black = new HashMap<>();
if(StringUtils.isNotEmpty(deviceCode)){
DeviceBlackappPdu blackappPdu = new DeviceBlackappPdu();
......@@ -160,7 +167,6 @@ public class SstAppsDeskServiceImpl extends AbstractCRUDServiceImpl<SstAppsDeskD
blackappPdu.setDeviceCode(deviceCode);
Rest<RespData<List<DeviceBlackappPdu>>> rest = appFeign.blackappList(blackappPdu);
if (rest.getCode().equals(YesNoEnum.YES.getValue())) {
List<AppsInfoEntity> appsInfoEntities = new ArrayList<>();
for(DeviceBlackappPdu pdu:rest.getData().getData()){
black.put(pdu.getAppId(),pdu.getAppId());
}
......@@ -181,7 +187,6 @@ public class SstAppsDeskServiceImpl extends AbstractCRUDServiceImpl<SstAppsDeskD
siteApp.put("allApps", allApps);
if(CollectionUtils.isNotEmpty(appsEntities)){
List<AppsInfoEntity> showApps = new ArrayList<>();
List<AppsInfoEntity> hotApps = new ArrayList<>();
for(SstAppsDeskEntity sstAppsDeskEntity:appsEntities){
if(black.containsKey(sstAppsDeskEntity.getAppId())){
continue;
......@@ -194,14 +199,28 @@ public class SstAppsDeskServiceImpl extends AbstractCRUDServiceImpl<SstAppsDeskD
if(sstAppsDeskEntity.getShowBasic()==1){
showApps.add(appInfoMap.get(sstAppsDeskEntity.getAppId()));
}
}
siteApp.put("showApps", showApps);
}else {
siteApp.put("showApps", Collections.emptyList());
}
if(CollectionUtils.isNotEmpty(appsHots)){
List<AppsInfoEntity> hotApps = new ArrayList<>();
for(SstAppsDeskEntity sstAppsDeskEntity:appsHots){
if(black.containsKey(sstAppsDeskEntity.getAppId())){
continue;
}
if(!appInfoMap.containsKey(sstAppsDeskEntity.getAppId())){
continue;
}
appInfoMap.get(sstAppsDeskEntity.getAppId()).setClickSum(sstAppsDeskEntity.getClickSum());
appInfoMap.get(sstAppsDeskEntity.getAppId()).setSort(sstAppsDeskEntity.getBasicSort());
if(sstAppsDeskEntity.getShowHot()==1){
hotApps.add(appInfoMap.get(sstAppsDeskEntity.getAppId()));
}
}
siteApp.put("showApps", showApps);
siteApp.put("hotApps", hotApps);
}else {
siteApp.put("showApps", Collections.emptyList());
siteApp.put("hotApps", Collections.emptyList());
}
return siteApp;
......
......@@ -53,24 +53,25 @@ public class SstAppsServiceImpl extends AbstractCRUDServiceImpl<SstAppsDao, SstA
orderCols.put("basicSort","DESC");
query.setOrderCols(orderCols);
query.setSiteId(siteId);
List<SstAppsEntity> appsEntities = this.find(query);
query.setShowBasic(1);
List<SstAppsEntity> showApps = this.find(query);
Map<String, Object> siteApp = new HashMap<>();
siteApp.put("allApps", allApps);
if(CollectionUtils.isNotEmpty(appsEntities)){
List<SstAppsEntity> showApps = new ArrayList<>();
List<SstAppsEntity> hotApps = new ArrayList<>();
for(SstAppsEntity sstAppsEntity:appsEntities){
if(sstAppsEntity.getShowBasic()==1){
showApps.add(sstAppsEntity);
}
if(sstAppsEntity.getShowHot()==1){
hotApps.add(sstAppsEntity);
}
}
if(CollectionUtils.isNotEmpty(showApps)){
siteApp.put("showApps", showApps);
siteApp.put("hotApps", hotApps);
}else {
siteApp.put("showApps", Collections.emptyList());
}
SstAppsEntity query1 = new SstAppsEntity();
Map<String,String> orderCols1 = new HashMap<>();
orderCols1.put("hotSort","DESC");
query1.setOrderCols(orderCols1);
query1.setSiteId(siteId);
query1.setShowHot(1);
List<SstAppsEntity> hotApps = this.find(query1);
if(CollectionUtils.isNotEmpty(hotApps)){
siteApp.put("hotApps", hotApps);
}else {
siteApp.put("hotApps", Collections.emptyList());
}
return siteApp;
......@@ -156,6 +157,11 @@ public class SstAppsServiceImpl extends AbstractCRUDServiceImpl<SstAppsDao, SstA
query.setOrderCols(orderCols);
query.setSiteId(siteId);
List<SstAppsEntity> appsEntities = this.find(query);
Map<String,String> orderCols1 = new HashMap<>();
orderCols1.put("clickSum","DESC");
orderCols1.put("hotSort","DESC");
query.setOrderCols(orderCols1);
List<SstAppsEntity> appsHots = this.find(query);
Map<Long,Long> black = new HashMap<>();
if(StringUtils.isNotEmpty(deviceCode)){
DeviceBlackappPdu blackappPdu = new DeviceBlackappPdu();
......@@ -163,7 +169,6 @@ public class SstAppsServiceImpl extends AbstractCRUDServiceImpl<SstAppsDao, SstA
blackappPdu.setDeviceCode(deviceCode);
Rest<RespData<List<DeviceBlackappPdu>>> rest = appFeign.blackappList(blackappPdu);
if (rest.getCode().equals(YesNoEnum.YES.getValue())) {
List<AppsInfoEntity> appsInfoEntities = new ArrayList<>();
for(DeviceBlackappPdu pdu:rest.getData().getData()){
black.put(pdu.getAppId(),pdu.getAppId());
}
......@@ -185,7 +190,6 @@ public class SstAppsServiceImpl extends AbstractCRUDServiceImpl<SstAppsDao, SstA
siteApp.put("allApps", allApps);
if(CollectionUtils.isNotEmpty(appsEntities)){
List<AppsInfoEntity> showApps = new ArrayList<>();
List<AppsInfoEntity> hotApps = new ArrayList<>();
for(SstAppsEntity sstAppsEntity:appsEntities){
if(black.containsKey(sstAppsEntity.getAppId())){
continue;
......@@ -198,14 +202,28 @@ public class SstAppsServiceImpl extends AbstractCRUDServiceImpl<SstAppsDao, SstA
if(sstAppsEntity.getShowBasic()==1){
showApps.add(appInfoMap.get(sstAppsEntity.getAppId()));
}
}
siteApp.put("showApps", showApps);
}else {
siteApp.put("showApps", Collections.emptyList());
}
if(CollectionUtils.isNotEmpty(appsHots)){
List<AppsInfoEntity> hotApps = new ArrayList<>();
for(SstAppsEntity sstAppsEntity:appsHots){
if(black.containsKey(sstAppsEntity.getAppId())){
continue;
}
if(!appInfoMap.containsKey(sstAppsEntity.getAppId())){
continue;
}
appInfoMap.get(sstAppsEntity.getAppId()).setClickSum(sstAppsEntity.getClickSum());
appInfoMap.get(sstAppsEntity.getAppId()).setSort(sstAppsEntity.getBasicSort());
if(sstAppsEntity.getShowHot()==1){
hotApps.add(appInfoMap.get(sstAppsEntity.getAppId()));
}
}
siteApp.put("showApps", showApps);
siteApp.put("hotApps", hotApps);
}else {
siteApp.put("showApps", Collections.emptyList());
siteApp.put("hotApps", Collections.emptyList());
}
return siteApp;
......
......@@ -14,10 +14,17 @@ import com.mortals.framework.exception.AppException;
import com.mortals.framework.util.HttpUtil;
import com.mortals.framework.util.StringUtils;
import com.mortals.framework.web.BaseJsonBodyController;
import com.mortals.xhx.common.code.complex.HandlingState;
import com.mortals.xhx.common.code.complex.SfYofn;
import com.mortals.xhx.common.code.complex.StepResult;
import com.mortals.xhx.common.code.complex.YesNo;
import com.mortals.xhx.common.utils.AESUtil;
import com.mortals.xhx.module.matter.service.UserMatterApplyService;
import com.mortals.xhx.module.sst.feign.IApiComplexFeign;
import com.mortals.xhx.module.sst.pdu.*;
import lombok.Getter;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.PostMapping;
......@@ -30,6 +37,9 @@ import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.net.HttpCookie;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
......@@ -53,7 +63,7 @@ public class SyntheticalController extends BaseJsonBodyController {
private String filePath;
@Autowired
private UserMatterApplyService userMatterApplyService;
private IApiComplexFeign iApiComplexFeign;
/**
* 查询可受理事项
......@@ -70,7 +80,8 @@ public class SyntheticalController extends BaseJsonBodyController {
Map<String, Object> model = new HashMap();
String busiDesc = "查询可受理事项" ;
try {
resp = doPost(url, jsonObject.toJSONString(query));
//resp = doPost(url, jsonObject.toJSONStriqng(query));
resp = iApiComplexFeign.eventList(query);
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
......@@ -96,7 +107,8 @@ public class SyntheticalController extends BaseJsonBodyController {
Map<String, Object> model = new HashMap();
String busiDesc = "查询事项详情" ;
try {
resp = doPost(url, JSONObject.toJSONString(query));
//resp = doPost(url, JSONObject.toJSONString(query));
resp = iApiComplexFeign.eventInfo(query);
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
......@@ -122,7 +134,8 @@ public class SyntheticalController extends BaseJsonBodyController {
Map<String, Object> model = new HashMap();
String busiDesc = "查询事项情形" ;
try {
resp = doPost(url, JSONObject.toJSONString(query));
//resp = doPost(url, JSONObject.toJSONString(query));
resp = iApiComplexFeign.getSituationMaterialTreeByEventIds(query);
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
......@@ -148,7 +161,8 @@ public class SyntheticalController extends BaseJsonBodyController {
Map<String, Object> model = new HashMap();
String busiDesc = "根据事项EventId查询办理事项材料" ;
try {
resp = doPost(url, JSONObject.toJSONString(query));
//resp = doPost(url, JSONObject.toJSONString(query));
resp = iApiComplexFeign.findMaterialList(query);
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
......@@ -174,7 +188,8 @@ public class SyntheticalController extends BaseJsonBodyController {
Map<String, Object> model = new HashMap();
String busiDesc = "根据事项情形查询办理事项材料" ;
try {
resp = doPost(url, JSONObject.toJSONString(query));
//resp = doPost(url, JSONObject.toJSONString(query));
resp = iApiComplexFeign.getMaterialByEventAndSituation(query);
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
......@@ -200,7 +215,8 @@ public class SyntheticalController extends BaseJsonBodyController {
Map<String, Object> model = new HashMap();
String busiDesc = "获取办件要素" ;
try {
resp = doPost(url, JSONObject.toJSONString(query));
//resp = doPost(url, JSONObject.toJSONString(query));
resp = iApiComplexFeign.getDynamicFormByEventIds((query));
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
......@@ -226,7 +242,8 @@ public class SyntheticalController extends BaseJsonBodyController {
Map<String, Object> model = new HashMap();
String busiDesc = "查询字典" ;
try {
resp = doPost(url, JSONObject.toJSONString(query));
//resp = doPost(url, JSONObject.toJSONString(query));
resp = iApiComplexFeign.queryDict(query);
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
......@@ -253,15 +270,22 @@ public class SyntheticalController extends BaseJsonBodyController {
String busiDesc = "自助设备接件" ;
try {
doFileToBase64(pdu);
resp = doPost(url, JSONObject.toJSONString(pdu));
String random = "0000000671595991";
if(ObjectUtil.isNotEmpty(pdu.getApplicantLegal())){
pdu.getApplicantLegal().setApplicantIdNumber(AESUtil.decryptCBC(pdu.getApplicantLegal().getApplicantIdNumber(),random));
pdu.getApplicantLegal().setApplicantName(AESUtil.decryptCBC(pdu.getApplicantLegal().getApplicantName(),random));
pdu.getApplicantLegal().setPhone(AESUtil.decryptCBC(pdu.getApplicantLegal().getPhone(),random));
}
if(ObjectUtil.isNotEmpty(pdu.getApplicantPersonal())){
pdu.getApplicantPersonal().setApplicantIdNumber(AESUtil.decryptCBC(pdu.getApplicantPersonal().getApplicantIdNumber(),random));
pdu.getApplicantPersonal().setApplicantName(AESUtil.decryptCBC(pdu.getApplicantPersonal().getApplicantName(),random));
pdu.getApplicantPersonal().setPhone(AESUtil.decryptCBC(pdu.getApplicantPersonal().getPhone(),random));
}
//resp = doPost(url, JSONObject.toJSONString(pdu));
resp = iApiComplexFeign.acceptHandling(pdu);
log.info("accept resp==>"+resp);
this.recordSysLog(this.request, busiDesc + " 【成功】");
// Rest<List<AcceptRspInfo>> rest = JSON.parseObject(resp, new TypeReference<Rest<List<AcceptRspInfo>>>() {
// });
// if(rest.getCode()==1){
// if(CollectionUtils.isNotEmpty(rest.getData())) {
// this.userMatterApplyService.saveAcceptRspInfo(rest.getData().get(0), pdu);
// }
// }
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
Rest<Object> ret = new Rest();
......@@ -286,7 +310,64 @@ public class SyntheticalController extends BaseJsonBodyController {
Map<String, Object> model = new HashMap();
String busiDesc = "查询已受理事项列表" ;
try {
resp = doPost(url, JSONObject.toJSONString(pdu));
if(StringUtils.isNotEmpty(pdu.getEncryptStr())){
String random = "0000000671595991";
pdu.setSearch(AESUtil.decryptCBC(pdu.getEncryptStr(),random));
log.info(JSONObject.toJSONString(pdu));
}
//resp = doPost(url, JSONObject.toJSONString(pdu));
resp = iApiComplexFeign.findPageWithPermission(pdu);
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
Rest<Object> ret = new Rest();
ret.setCode(-1);
ret.setMsg(busiDesc + " 【异常】");
resp = JSON.toJSONString(ret);
}
return resp;
}
/**
* 查询已受理事项列表
* @param pdu
* @return
*/
@PostMapping({"api/common/downloadFileFtp"})
@UnAuth
public String downloadFileFtp(@RequestBody FindHandlingPageReq pdu) {
String url = GlobalSysInfo.getParamValue(PARAM_SERVER_CWS_HTTP_URL, "http://8.136.255.30:1086");
url += "/complex/api/common/downloadFileFtp";
String resp = null;
Map<String, Object> model = new HashMap();
String busiDesc = "查询已受理事项列表" ;
try {
resp = iApiComplexFeign.downloadFileFtp(pdu);
Rest<String> eventRest = JSON.parseObject(resp, new TypeReference<Rest<String>>() {
});
if(eventRest.getCode()==1 && eventRest.getData().length()>1024){
String urlStr = pdu.getUrl();
String fileName = urlStr.substring(urlStr.lastIndexOf("/")+1);
byte[] data = Base64.getDecoder().decode(eventRest.getData());
// OutputStream outputStream = null;
// String path = "D:\\Download\\test1.docx";
// File file = new File(path);
// if (file.exists()) {
// file.delete();
// }
// outputStream = new FileOutputStream(file);
// outputStream.write(data);
// outputStream.flush();
// outputStream.close();
if(data.length>1024) {
this.responseStream(this.response, data, fileName);
}else {
Rest<Object> ret = new Rest();
ret.setCode(-1);
ret.setMsg("下载文件不存在");
resp = JSON.toJSONString(ret);
}
}
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception e) {
this.doException(this.request, busiDesc + " 【异常】", model, e);
......@@ -320,6 +401,7 @@ public class SyntheticalController extends BaseJsonBodyController {
}
}
if(StringUtils.isNotEmpty(item.getMaterialContent())){
log.info("base64");
String base64 = String.valueOf(item.getMaterialContent());
base64 = base64.replaceAll("data:image/png;base64,","");
item.setMaterialContent(base64);
......@@ -329,6 +411,26 @@ public class SyntheticalController extends BaseJsonBodyController {
}
}
/**
* 查询字典
* @param query
* @return
*/
@PostMapping({"api/getDict"})
@UnAuth
public String getDict() {
Map<String, Object> model = new HashMap();
model.put("handling_state", HandlingState.getEnumMap());
model.put("step_result", StepResult.getEnumMap());
model.put("yes_no", YesNo.getEnumMap());
model.put("sf_yofn", SfYofn.getEnumMap());
Rest<Object> ret = new Rest();
ret.setDict(model);
ret.setCode(1);
ret.setMsg("成功");
return JSON.toJSONString(ret);
}
private String doPost(String url,String body) throws Exception{
HttpRequest httpRequest = HttpRequest.post(url);
httpRequest.body(body);
......@@ -369,15 +471,4 @@ public class SyntheticalController extends BaseJsonBodyController {
// }
// }
// public static void main(String[] args) {
// try {
// Path filePath = Paths.get("D:\\home\\mortals\\app\\aaa.jpg"); // 替换为实际文件路径
// byte[] fileBytes = Files.readAllBytes(filePath);
// String base64EncodedString = Base64.getEncoder().encodeToString(fileBytes);
// System.out.println(base64EncodedString);
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment