From 2539f5e726a15f8c0dc72cce8f11c56aa915516a Mon Sep 17 00:00:00 2001 From: kylin L <452061493@qq.com> Date: Thu, 15 Aug 2024 14:24:37 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=84=E4=BB=B7=E6=BB=A1=E6=84=8F=E5=BA=A6?= =?UTF-8?q?=E9=99=84=E4=BB=B6=E4=BF=A1=E6=81=AF=E6=8B=89=E5=8F=96=20.=20?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E7=94=A8=E6=88=B7=E5=92=8C=E9=83=A8=E9=97=A8?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E7=9A=84=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=8B=86=E5=BC=80=E6=9D=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zdxt/common/util/IdCardCryptoUtil.java | 7 +- ...pEnterpriseComplaintSatisfyController.java | 48 ++++- .../app/controller/AppSystemController.java | 61 +++--- .../zdxt/app/task/ComplaintEvaluateTask.java | 17 ++ .../java/com/zdxt/app/task/SynDeptTask.java | 195 ++++++++++++++++++ .../com/zdxt/app/task/SynUserInfoTask.java | 187 +++++++++++++++++ .../domain/EnterpriseComplaintSatisfy.java | 26 ++- .../com/zdxt/code/domain/MssqAddOrder.java | 19 ++ .../EnterpriseComplaintSatisfyMapper.java | 1 + .../IEnterpriseComplaintSatisfyService.java | 1 + .../com/zdxt/code/service/MssqApiService.java | 1 + ...EnterpriseComplaintSatisfyServiceImpl.java | 5 + .../code/service/impl/MssqApiServiceImpl.java | 6 + .../EnterpriseComplaintSatisfyMapper.xml | 32 ++- 14 files changed, 557 insertions(+), 49 deletions(-) create mode 100644 lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/SynDeptTask.java create mode 100644 lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/SynUserInfoTask.java diff --git a/lib/EmergencyBaseLib/EmergencyCommon/src/main/java/com/zdxt/common/util/IdCardCryptoUtil.java b/lib/EmergencyBaseLib/EmergencyCommon/src/main/java/com/zdxt/common/util/IdCardCryptoUtil.java index f18eb5ba..216eeac1 100644 --- a/lib/EmergencyBaseLib/EmergencyCommon/src/main/java/com/zdxt/common/util/IdCardCryptoUtil.java +++ b/lib/EmergencyBaseLib/EmergencyCommon/src/main/java/com/zdxt/common/util/IdCardCryptoUtil.java @@ -30,12 +30,13 @@ public class IdCardCryptoUtil { public static void main(String[] args) { - String userIdCode = IdCardCryptoUtil.symmetricEncryptIdCard("VRJHzFqJpsSZhwnsKTWNspv_GZMxTWl-bgH6DyE9Ty0", "1608644307579883522"); - String userNameCode = IdCardCryptoUtil.symmetricEncryptIdCard("eWIzY3BMRVNEQXhvUUlXMA==", "汪鑫"); +// String userIdCode = IdCardCryptoUtil.symmetricEncryptIdCard("VRJHzFqJpsSZhwnsKTWNspv_GZMxTWl-bgH6DyE9Ty0", "1608644307579883522"); +// String userNameCode = IdCardCryptoUtil.symmetricEncryptIdCard("eWIzY3BMRVNEQXhvUUlXMA==", "汪鑫"); // String secret = IdCardCryptoUtil.symmetricEncryptIdCard("eWIzY3BMRVNEQXhvUUlXMA==", "ae739d8c-86ed-4898-b57d-eed3be42debf"); // String phone = IdCardCryptoUtil.symmetricDecryptIdCard("VRJHzFqJpsSZhwnsKTWNspv_GZMxTWl-bgH6DyE9Ty0", "3qQTst9aURL3pN5EzKtqVJnQv2Q0Ob3r+Gc9DXX/I30="); - String phone = IdCardCryptoUtil.symmetricDecryptIdCard("VRJHzFqJpsSZhwnsKTWNspv_GZMxTWl-bgH6DyE9Ty0", "Mi4URDD0cfD4kU4WK8t+sQ=="); +// String phone = IdCardCryptoUtil.symmetricDecryptIdCard("VRJHzFqJpsSZhwnsKTWNspv_GZMxTWl-bgH6DyE9Ty0", "DAphKNsYj1EzQEjhGyPMLw=="); + String phone = IdCardCryptoUtil.symmetricDecryptIdCard("VRJHzFqJpsSZhwnsKTWNspv_GZMxTWl-bgH6DyE9Ty0", "vFMPp4yo/PS6+p4N2vKNAg=="); // System.out.println(userIdCode); System.out.println(phone); diff --git a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppEnterpriseComplaintSatisfyController.java b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppEnterpriseComplaintSatisfyController.java index 72353971..af1b596b 100755 --- a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppEnterpriseComplaintSatisfyController.java +++ b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppEnterpriseComplaintSatisfyController.java @@ -1,9 +1,15 @@ package com.zdxt.app.controller; +import java.util.ArrayList; import java.util.List; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.zdxt.auth.common.utils.StringUtils; import com.zdxt.code.domain.EnterpriseComplaintSatisfy; +import com.zdxt.code.domain.MssqAddOrder; import com.zdxt.code.service.IEnterpriseComplaintSatisfyService; +import com.zdxt.code.service.MssqApiService; import com.zdxt.common.ZDResponse; import com.zdxt.common.controller.BaseController; import com.zdxt.common.util.TableDataInfo; @@ -11,11 +17,7 @@ import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; /** * 工单评价Controller @@ -24,13 +26,15 @@ import org.springframework.web.bind.annotation.ResponseBody; * @date 2024-08-12 */ @Controller -@RequestMapping("/system/satisfy") +@RequestMapping("/app/satisfy") public class AppEnterpriseComplaintSatisfyController extends BaseController { private String prefix = "system/satisfy"; @Autowired private IEnterpriseComplaintSatisfyService enterpriseComplaintSatisfyService; + @Autowired + private MssqApiService mssqApiService; @RequiresPermissions("system:satisfy:view") @GetMapping() @@ -52,6 +56,15 @@ public class AppEnterpriseComplaintSatisfyController extends BaseController return getDataTable(list); } + @GetMapping("/getObjByKey/{proWoCode}") + @ResponseBody + public ZDResponse getObjByKey(@PathVariable("proWoCode") String proWoCode) + { + + EnterpriseComplaintSatisfy enterpriseComplaintSatisfy = enterpriseComplaintSatisfyService.selectEnterpriseComplaintSatisfyByCode(proWoCode); + return ZDResponse.success("查询成功", enterpriseComplaintSatisfy); + } + /** * 新增工单评价 */ @@ -104,4 +117,27 @@ public class AppEnterpriseComplaintSatisfyController extends BaseController { return ZDResponse.success("success", enterpriseComplaintSatisfyService.deleteEnterpriseComplaintSatisfyByIds(ids)); } + + /** + * 下载附件接口 + */ + @PostMapping("/mssqDownFiles") + @ResponseBody + public ZDResponse mssqDownFiles(@RequestBody MssqAddOrder mssqAddOrder) throws Exception { + List res = new ArrayList<>(); + for (String path : mssqAddOrder.getUploadPaths()) { + MssqAddOrder params = new MssqAddOrder(); + params.setUploadPath(path); + String result = mssqApiService.mssqDownFile(params); + res.add(result); + } + return ZDResponse.success("查询成功", res); + } + + @PostMapping("/mssqDownFile") + @ResponseBody + public ZDResponse mssqDownFile(@RequestBody MssqAddOrder mssqAddOrder) throws Exception { + String result = mssqApiService.mssqDownFile(mssqAddOrder); + return ZDResponse.success("查询成功", result); + } } diff --git a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppSystemController.java b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppSystemController.java index fa73adb0..03d0f784 100644 --- a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppSystemController.java +++ b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppSystemController.java @@ -77,6 +77,7 @@ public class AppSystemController extends BaseController { @GetMapping("/listApp") @ResponseBody public TableDataInfo listApp(User user) { + startPage(); List list = userService.selectUserList(user); //解密 // if(list.size() > 0){ @@ -86,21 +87,21 @@ public class AppSystemController extends BaseController { // } // } // 查询出职务 - for (User userData : list) { - List postBeanList = postApi.selectPostsByUserId(userData.getUserId()); - ArrayList postList = new ArrayList<>(); - - // 职务bean转成实体 - for (PostBean postBean : postBeanList) { - Post post = new Post(); - BeanUtil.copyProperties(postBean, post); - postList.add(post); - } - - if (!postList.isEmpty()) { - userData.setPostList(postList); - } - } +// for (User userData : list) { +// List postBeanList = postApi.selectPostsByUserId(userData.getUserId()); +// ArrayList postList = new ArrayList<>(); +// +// // 职务bean转成实体 +// for (PostBean postBean : postBeanList) { +// Post post = new Post(); +// BeanUtil.copyProperties(postBean, post); +// postList.add(post); +// } +// +// if (!postList.isEmpty()) { +// userData.setPostList(postList); +// } +// } return getDataTable(list); } @@ -109,21 +110,21 @@ public class AppSystemController extends BaseController { public ZDResponse listAApp(User user) { List list = userService.selectUserList(user); // 查询出职务 - for (User userData : list) { - List postBeanList = postApi.selectPostsByUserId(userData.getUserId()); - ArrayList postList = new ArrayList<>(); - - // 职务bean转成实体 - for (PostBean postBean : postBeanList) { - Post post = new Post(); - BeanUtil.copyProperties(postBean, post); - postList.add(post); - } - - if (!postList.isEmpty()) { - userData.setPostList(postList); - } - } +// for (User userData : list) { +// List postBeanList = postApi.selectPostsByUserId(userData.getUserId()); +// ArrayList postList = new ArrayList<>(); +// +// // 职务bean转成实体 +// for (PostBean postBean : postBeanList) { +// Post post = new Post(); +// BeanUtil.copyProperties(postBean, post); +// postList.add(post); +// } +// +// if (!postList.isEmpty()) { +// userData.setPostList(postList); +// } +// } return ZDResponse.success("查询成功",list); } diff --git a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/ComplaintEvaluateTask.java b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/ComplaintEvaluateTask.java index c9eb12dd..752894f1 100644 --- a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/ComplaintEvaluateTask.java +++ b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/ComplaintEvaluateTask.java @@ -136,6 +136,23 @@ public class ComplaintEvaluateTask { ce.setOrgCode(satisfyJson.getString("orgCode")); /** 评价次数 */ ce.setAssessNumber(satisfyJson.getInteger("assessNumber")); + /** 附件存储json */ + ce.setAssessFiles(satisfyJson.getString("assessFiles")); + + /** 获取机构中文 */ + try { + MssqAddOrder mparams = new MssqAddOrder(); + mparams.setProWoCode(ce.getProWoCode()); + String resStr = mssqApiService.mssqQueryEndInfo(mparams); + JSONObject resObj = JSONObject.parseObject(resStr); + if ("0".equals(resObj.getString("resultCode"))) { + JSONObject endData = resObj.getJSONObject("endData"); + ce.setOrgText(endData.getString("handleOrgName")); + } + } catch (Exception e) { + log.error("同步时, 获取机构中文, 出现异常"); + e.printStackTrace(); + } return ce; } } diff --git a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/SynDeptTask.java b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/SynDeptTask.java new file mode 100644 index 00000000..21a8f66c --- /dev/null +++ b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/SynDeptTask.java @@ -0,0 +1,195 @@ +package com.zdxt.app.task; + +import cn.hutool.core.map.MapUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.zdxt.auth.dto.UserBean; +import com.zdxt.auth.feign.UserApi; +import com.zdxt.auth.project.system.dept.service.IDeptService; +import com.zdxt.auth.project.system.dict.service.IDictDataService; +import com.zdxt.auth.project.system.user.service.IUserService; +import com.zdxt.domain.auth.DictData; +import org.apache.http.HttpEntity; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.security.MessageDigest; +import java.util.*; +import java.util.stream.Collectors; + + +/** + * @Author: kylin + * @Date: 2024/5/9 2:58 下午 + * @Version: 1.0 + * @Desc: TODO + */ +@Component("synDeptTask") +public class SynDeptTask { + + @Value("${srnwg.systemCode}") + private String systemCode; + @Value("${srnwg.integrationKey}") + private String integrationKey; + @Value("${srnwg.url}") + private String znwgUrl; + @Value("${srnwg.paasId}") + private String paasId; + @Value("${srnwg.paasToken}") + private String paasToken; + + @Autowired private UserApi userApi; + @Autowired private IUserService userService; + @Autowired private IDeptService deptService; + @Autowired + private IDictDataService iDictDataService; + + public static Map params = new HashMap<>(); + + private static final Logger log = LoggerFactory.getLogger(SynDeptTask.class); + + + public void run(){ + this.dept(); + } + + /** 同步部门数据 */ + public void dept(){ + List srz_item = iDictDataService.selectDictDataByType("srz_item"); + Map map = srz_item.stream().collect(Collectors.toMap(DictData::getDictLabel,DictData::getDictValue)); + + if(MapUtil.isNotEmpty(map)){ + params = map; + } + String token = ""; + String destroyTken = ""; + try { + // 获取 access_token + String tokenJson = connect("/ebus/sfrzhqxglmk/sysPullLogin?systemCode="+systemCode+"&integrationKey="+integrationKey); + JSONObject tokenObj = JSONObject.parseObject(tokenJson); + System.out.println("====================== access_token ======================"); + System.out.println(tokenObj); + System.out.println("====================== access_token ======================"); + token = tokenObj.getString("data"); + + // 获取 用户信息 + int page = 0; + int pageSize = 500; + List> sumMap = new ArrayList<>(); + + int insertNum = 0; + int updateNum = 0; + page = 0; + // 获取 部门信息 + while (true) { + String deptInfoJson = connect("/ebus/sfrzhqxglmk/sysPullOrg?token="+token+"&page="+page+"&pageSize="+pageSize+"&status=0"); + JSONObject sourceObj = JSONObject.parseObject(deptInfoJson); + JSONObject tmpJsonObj = sourceObj.getJSONObject("data"); + if(null==tmpJsonObj) { + log.info("=====================> tmpJsonObj 为空"); + break; + } + JSONArray dataArr = tmpJsonObj.getJSONArray("data"); + if (null == dataArr || dataArr.size()==0) { break; } + // 插入更新数据库 + Map resMap = deptService.addSrzDept(dataArr,token); + sumMap.add(resMap); + page++; + } + + insertNum = 0; + updateNum = 0; + for (Map item : sumMap) { + insertNum += item.get("insertNum"); + updateNum += item.get("updateNum"); + } + log.info("新增部门数量 : {} / 更新部门数量 : {}", insertNum, updateNum); + + // 注销token + destroyTken = connect("/ebus/sfrzhqxglmk/sysPullLogout?token="+token); + System.out.println("====================== destroyTken ======================"); + System.out.println(destroyTken); + System.out.println("====================== destroyTken ======================"); + } catch (Exception e) { + e.printStackTrace(); + } + } + + private String connect(String apiPath) { + //各种参数 + + try { +// String params = "{\"uid\":\"5b07b3de672c4e999c4b04f4\"}"; //请求接⼝的参数 + String params = ""; //请求接⼝的参数 + + long now = new Date().getTime(); + String timestamp = Long.toString((long) Math.floor(now / 1000)); + String nonce = Long.toHexString(now) + "-" + Long.toHexString((long) Math.floor(Math.random() * 0xFFFFFF)); + String signature = toSHA256(timestamp + paasToken + nonce + timestamp); + + + //创建CloseableHttpClient + CloseableHttpClient client = HttpClientBuilder.create().build(); + HttpPost httpPost = new HttpPost(znwgUrl + apiPath); + httpPost.setHeader("x-tif-paasid", paasId); + httpPost.setHeader("x-tif-timestamp", timestamp); + httpPost.setHeader("x-tif-signature", signature); + httpPost.setHeader("x-tif-nonce", nonce); + httpPost.setHeader("Content-Type", "application/json"); + httpPost.setHeader("Cache-Control", "no-cache"); + HttpEntity entity = new StringEntity(params); + + + httpPost.setEntity(entity); + + CloseableHttpResponse response = client.execute(httpPost); + + return EntityUtils.toString(response.getEntity()); + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + + + private String toSHA256(String str) throws Exception { + MessageDigest messageDigest; + String encodeStr = ""; + try { + messageDigest = MessageDigest.getInstance("SHA-256"); + messageDigest.update(str.getBytes("UTF-8")); + encodeStr = byte2Hex(messageDigest.digest()); + } catch (Exception e) { + throw e; + } + return encodeStr; + } + + // byte转换成16进制 + private String byte2Hex(byte[] bytes) { + StringBuffer stringBuffer = new StringBuffer(); + String temp = null; + for (int i = 0; i < bytes.length; i++) { + temp = Integer.toHexString(bytes[i] & 0xFF); + if (temp.length() == 1) { + stringBuffer.append("0"); + } + stringBuffer.append(temp); + } + return stringBuffer.toString(); + } +} diff --git a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/SynUserInfoTask.java b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/SynUserInfoTask.java new file mode 100644 index 00000000..5bea5dcc --- /dev/null +++ b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/task/SynUserInfoTask.java @@ -0,0 +1,187 @@ +package com.zdxt.app.task; + +import cn.hutool.core.map.MapUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.zdxt.auth.dto.UserBean; +import com.zdxt.auth.feign.UserApi; +import com.zdxt.auth.project.system.dept.service.IDeptService; +import com.zdxt.auth.project.system.dict.service.IDictDataService; +import com.zdxt.auth.project.system.user.service.IUserService; +import com.zdxt.domain.auth.DictData; +import org.apache.http.HttpEntity; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.security.MessageDigest; +import java.util.*; +import java.util.stream.Collectors; + + +/** + * @Author: kylin + * @Date: 2024/5/9 2:58 下午 + * @Version: 1.0 + * @Desc: TODO + */ +@Component("synUserInfoTask") +public class SynUserInfoTask { + + @Value("${srnwg.systemCode}") + private String systemCode; + @Value("${srnwg.integrationKey}") + private String integrationKey; + @Value("${srnwg.url}") + private String znwgUrl; + @Value("${srnwg.paasId}") + private String paasId; + @Value("${srnwg.paasToken}") + private String paasToken; + + @Autowired private UserApi userApi; + @Autowired private IUserService userService; + @Autowired private IDeptService deptService; + @Autowired + private IDictDataService iDictDataService; + + public static Map params = new HashMap<>(); + + private static final Logger log = LoggerFactory.getLogger(SynUserInfoTask.class); + + + public void run(){ + this.userInfo(); + } + + /** 同步用户数据 */ + public void userInfo(){ + List srz_item = iDictDataService.selectDictDataByType("srz_item"); + Map map = srz_item.stream().collect(Collectors.toMap(DictData::getDictLabel,DictData::getDictValue)); + + if(MapUtil.isNotEmpty(map)){ + params = map; + } + String token = ""; + String destroyTken = ""; + try { + // 获取 access_token + String tokenJson = connect("/ebus/sfrzhqxglmk/sysPullLogin?systemCode="+systemCode+"&integrationKey="+integrationKey); + JSONObject tokenObj = JSONObject.parseObject(tokenJson); + System.out.println("====================== access_token ======================"); + System.out.println(tokenObj); + System.out.println("====================== access_token ======================"); + token = tokenObj.getString("data"); + + // 获取 用户信息 + int page = 0; + int pageSize = 500; + List> sumMap = new ArrayList<>(); + while (true) { + String userInfoJson = connect("/ebus/sfrzhqxglmk/sysPullTacc?token="+token+"&page="+page+"&pageSize="+pageSize+"&status=0"); + JSONObject sourceObj = JSONObject.parseObject(userInfoJson); + JSONObject tmpJsonObj = sourceObj.getJSONObject("data"); + if(null==tmpJsonObj) { + log.info("=====================> tmpJsonObj 为空"); + break; + } + JSONArray dataArr = tmpJsonObj.getJSONArray("data"); + if (null == dataArr || dataArr.size()==0) { break; } + Map resMap = userService.addSrzUser(dataArr, token); + sumMap.add(resMap); + page++; + } + + int insertNum = 0; + int updateNum = 0; + for (Map item : sumMap) { + insertNum += item.get("insertNum"); + updateNum += item.get("updateNum"); + } + log.info("新增用户数量 : {} / 更新用户数量 : {}", insertNum, updateNum); + + // 注销token + destroyTken = connect("/ebus/sfrzhqxglmk/sysPullLogout?token="+token); + System.out.println("====================== destroyTken ======================"); + System.out.println(destroyTken); + System.out.println("====================== destroyTken ======================"); + } catch (Exception e) { + e.printStackTrace(); + } + } + + private String connect(String apiPath) { + //各种参数 + + try { +// String params = "{\"uid\":\"5b07b3de672c4e999c4b04f4\"}"; //请求接⼝的参数 + String params = ""; //请求接⼝的参数 + + long now = new Date().getTime(); + String timestamp = Long.toString((long) Math.floor(now / 1000)); + String nonce = Long.toHexString(now) + "-" + Long.toHexString((long) Math.floor(Math.random() * 0xFFFFFF)); + String signature = toSHA256(timestamp + paasToken + nonce + timestamp); + + + //创建CloseableHttpClient + CloseableHttpClient client = HttpClientBuilder.create().build(); + HttpPost httpPost = new HttpPost(znwgUrl + apiPath); + httpPost.setHeader("x-tif-paasid", paasId); + httpPost.setHeader("x-tif-timestamp", timestamp); + httpPost.setHeader("x-tif-signature", signature); + httpPost.setHeader("x-tif-nonce", nonce); + httpPost.setHeader("Content-Type", "application/json"); + httpPost.setHeader("Cache-Control", "no-cache"); + HttpEntity entity = new StringEntity(params); + + + httpPost.setEntity(entity); + + CloseableHttpResponse response = client.execute(httpPost); + + return EntityUtils.toString(response.getEntity()); + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + private String toSHA256(String str) throws Exception { + MessageDigest messageDigest; + String encodeStr = ""; + try { + messageDigest = MessageDigest.getInstance("SHA-256"); + messageDigest.update(str.getBytes("UTF-8")); + encodeStr = byte2Hex(messageDigest.digest()); + } catch (Exception e) { + throw e; + } + return encodeStr; + } + + // byte转换成16进制 + private String byte2Hex(byte[] bytes) { + StringBuffer stringBuffer = new StringBuffer(); + String temp = null; + for (int i = 0; i < bytes.length; i++) { + temp = Integer.toHexString(bytes[i] & 0xFF); + if (temp.length() == 1) { + stringBuffer.append("0"); + } + stringBuffer.append(temp); + } + return stringBuffer.toString(); + } +} diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/EnterpriseComplaintSatisfy.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/EnterpriseComplaintSatisfy.java index 7ae00462..7ab18b26 100755 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/EnterpriseComplaintSatisfy.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/EnterpriseComplaintSatisfy.java @@ -2,6 +2,8 @@ package com.zdxt.code.domain; import com.zdxt.common.BaseDomain; +import java.util.List; + /** * 工单评价对象 enterprise_complaint_satisfy * @@ -45,10 +47,32 @@ public class EnterpriseComplaintSatisfy extends BaseDomain /** 机构code */ private String orgCode; + /** 机构文字 */ + private String orgText; + /** 评价次数 */ private Integer assessNumber; - public void setProWoId(String proWoId) + /** 附件(存储时用) */ + private String assessFiles; + + public String getAssessFiles() { + return assessFiles; + } + + public void setAssessFiles(String assessFiles) { + this.assessFiles = assessFiles; + } + + public String getOrgText() { + return orgText; + } + + public void setOrgText(String orgText) { + this.orgText = orgText; + } + + public void setProWoId(String proWoId) { this.proWoId = proWoId; } diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/MssqAddOrder.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/MssqAddOrder.java index 89c1cb59..a5d6ea31 100644 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/MssqAddOrder.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/domain/MssqAddOrder.java @@ -147,6 +147,25 @@ public class MssqAddOrder extends MssqBaseDomain { private String evaluatorName; /** 评价人联系号码 */ private String evaluatorPapersPhone; + /** 附件地址 */ + private List uploadPaths; + private String uploadPath; + + public String getUploadPath() { + return uploadPath; + } + + public void setUploadPath(String uploadPath) { + this.uploadPath = uploadPath; + } + + public List getUploadPaths() { + return uploadPaths; + } + + public void setUploadPaths(List uploadPaths) { + this.uploadPaths = uploadPaths; + } public String getAppId() { return appId; diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnterpriseComplaintSatisfyMapper.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnterpriseComplaintSatisfyMapper.java index 4907917d..3f03ac04 100755 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnterpriseComplaintSatisfyMapper.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnterpriseComplaintSatisfyMapper.java @@ -19,6 +19,7 @@ public interface EnterpriseComplaintSatisfyMapper * @return 工单评价 */ public EnterpriseComplaintSatisfy selectEnterpriseComplaintSatisfyById(String proWoId); + public EnterpriseComplaintSatisfy selectEnterpriseComplaintSatisfyByCode(String proWoCode); /** * 查询工单评价列表 diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/IEnterpriseComplaintSatisfyService.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/IEnterpriseComplaintSatisfyService.java index 60859e24..2e765085 100755 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/IEnterpriseComplaintSatisfyService.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/IEnterpriseComplaintSatisfyService.java @@ -19,6 +19,7 @@ public interface IEnterpriseComplaintSatisfyService * @return 工单评价 */ public EnterpriseComplaintSatisfy selectEnterpriseComplaintSatisfyById(String proWoId); + public EnterpriseComplaintSatisfy selectEnterpriseComplaintSatisfyByCode(String proWoCode); /** * 查询工单评价列表 diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/MssqApiService.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/MssqApiService.java index 4f4a395b..8c854e5d 100644 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/MssqApiService.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/MssqApiService.java @@ -27,5 +27,6 @@ public interface MssqApiService { String mssqAppraise(MssqAddOrder mssqAddOrder) throws Exception; String mssqQueryEndInfo(MssqAddOrder mssqAddOrder) throws Exception; String mssqQuerySatisfy(MssqAddOrder mssqAddOrder) throws Exception; + String mssqDownFile(MssqAddOrder mssqAddOrder) throws Exception; String queryMssq(MssqAddOrder mssqAddOrder, String url) throws Exception; } diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnterpriseComplaintSatisfyServiceImpl.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnterpriseComplaintSatisfyServiceImpl.java index 8bb69381..83867ca5 100755 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnterpriseComplaintSatisfyServiceImpl.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnterpriseComplaintSatisfyServiceImpl.java @@ -32,6 +32,11 @@ public class EnterpriseComplaintSatisfyServiceImpl implements IEnterpriseComplai { return enterpriseComplaintSatisfyMapper.selectEnterpriseComplaintSatisfyById(proWoId); } + @Override + public EnterpriseComplaintSatisfy selectEnterpriseComplaintSatisfyByCode(String proWoCode) + { + return enterpriseComplaintSatisfyMapper.selectEnterpriseComplaintSatisfyByCode(proWoCode); + } /** * 查询工单评价列表 diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/MssqApiServiceImpl.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/MssqApiServiceImpl.java index 194dff7f..991e11bf 100644 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/MssqApiServiceImpl.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/MssqApiServiceImpl.java @@ -153,6 +153,12 @@ public class MssqApiServiceImpl implements MssqApiService { return this.queryMssq(mssqAddOrder, "/api/API_YX/proProcess/querySatisfy"); } + @Override + public String mssqDownFile(MssqAddOrder mssqAddOrder) throws Exception { + mssqAddOrder.setAppid(appId); + return this.queryMssq(mssqAddOrder, "/api/API_YX/fast/downFile"); + } + @Override public String queryMssq(MssqAddOrder mssqAddOrder, String url) throws Exception { MssqBaseDomain mssqToken = this.getMssqToken(); diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnterpriseComplaintSatisfyMapper.xml b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnterpriseComplaintSatisfyMapper.xml index 258b5ece..ecd96b88 100755 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnterpriseComplaintSatisfyMapper.xml +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnterpriseComplaintSatisfyMapper.xml @@ -15,8 +15,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - - + + + + @@ -24,7 +26,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select pro_wo_id, pro_wo_code, approve_code, approve_time, dis_approve_reason, deal_speed_metrics, deal_effect_metrics, service_metrics, feedback_quality_metrics, writing_evaluation, org_Code, assess_Number, creator, create_time, updator, update_time from enterprise_complaint_satisfy + select pro_wo_id, pro_wo_code, approve_code, approve_time, dis_approve_reason, deal_speed_metrics, deal_effect_metrics, service_metrics, feedback_quality_metrics, writing_evaluation, org_code, org_text, assess_number, assess_files, creator, create_time, updator, update_time from enterprise_complaint_satisfy + insert into enterprise_complaint_satisfy @@ -64,8 +72,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" service_metrics, feedback_quality_metrics, writing_evaluation, - org_Code, - assess_Number, + org_code, + org_text, + assess_number, + assess_files, creator, create_time, updator, @@ -83,7 +93,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{feedbackQualityMetrics}, #{writingEvaluation}, #{orgCode}, + #{orgText}, #{assessNumber}, + #{assessFiles}, #{creator}, #{createTime}, #{updator}, @@ -103,8 +115,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" service_metrics = #{serviceMetrics}, feedback_quality_metrics = #{feedbackQualityMetrics}, writing_evaluation = #{writingEvaluation}, - org_Code = #{orgCode}, - assess_Number = #{assessNumber}, + org_code = #{orgCode}, + org_text = #{orgText}, + assess_number = #{assessNumber}, + assess_files = #{assessFiles}, creator = #{creator}, create_time = #{createTime}, updator = #{updator},