ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,89 @@ package com.ruoyi.web.controller.common; import com.alibaba.fastjson2.JSON; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.utils.http.HttpUtils; import com.ruoyi.common.utils.sign.Md5Utils; import com.ruoyi.project.domain.GiApi; import com.ruoyi.project.domain.dto.ApiDTO; import com.ruoyi.project.domain.dto.SmsDTO; import com.ruoyi.project.service.IApiService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.Base64; import java.util.List; import java.util.Map; @Slf4j @Api(description = "çä¿¡æå¡") @RestController @RequestMapping("/sms") public class SmsController { @Value("${sms.url}") private String url="http://103.21.119.249:3131/http/send.aspx"; @Value("${sms.loginName}") private String loginName="qddxfsyy"; @Value("${sms.passWord}") private String passWord="Qyfy_0718"; @ApiOperation("çä¿¡æå¡->åéçä¿¡") @PostMapping("/send") public AjaxResult getApiList(@RequestBody SmsDTO DTO) { if (ObjectUtils.isNotEmpty(DTO.getTel())&&ObjectUtils.isNotEmpty(DTO.getMessageContent())) { String key= keyForMd5(loginName,passWord); String content="{\"LoginName\":\""+loginName+"\",\"PassWord\":\""+passWord+"\"," + "\"Key\":\""+key+"\"," + "\"Tel\":\""+DTO.getTel()+"\",\"MessageContent\":\""+DTO.getMessageContent()+"\"}"; String result=""; result= HttpUtils.sendPost(url, Base64.getEncoder().encodeToString(content.getBytes()) ); return AjaxResult.success(result); } else { return AjaxResult.error("çµè¯åæ¶æ¯ä¸è½ä¸ºç©º"); } } public String keyForMd5(String name, String pass) { return md5(md5(pass) + pass + md5(name)); } public static String md5(String str) { try { // 1. è·å MD5 æ¶æ¯æè¦å®ä¾ MessageDigest md = MessageDigest.getInstance("MD5"); // 2. ä½¿ç¨ UTF-8 ç¼ç å°å符串转æ¢ä¸ºåèæ°ç»å¹¶è®¡ç®åå¸ byte[] hashBytes = md.digest(str.getBytes(StandardCharsets.UTF_8)); // 3. å°åèæ°ç»è½¬æ¢ä¸ºåå è¿å¶å符串ï¼å°åï¼ return bytesToHex(hashBytes).toLowerCase(); } catch (NoSuchAlgorithmException e) { // MD5 æ¯æ åç®æ³ï¼æ£å¸¸æ åµä¸ä¸ä¼æåºæ¤å¼å¸¸ throw new RuntimeException("ç³»ç»ä¸æ¯æ MD5 ç®æ³", e); } } /** * å°åèæ°ç»è½¬æ¢ä¸ºåå è¿å¶å符串 * * @param bytes åèæ°ç» * @return åå è¿å¶å符串 */ private static String bytesToHex(byte[] bytes) { StringBuilder sb = new StringBuilder(bytes.length * 2); for (byte b : bytes) { // å°æ¯ä¸ªåèçé«4ä½åä½4ä½åå«è½¬æ¢ä¸ºåå è¿å¶å符 sb.append(String.format("%02x", b)); } return sb.toString(); } } ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportController.java
@@ -72,8 +72,7 @@ //è¡¥å éä»¶ ServiceTransportFile serviceTransportFile = new ServiceTransportFile(); serviceTransportFile.setDelFlag(0); serviceTransportFile.setTransportId(transport.getReportId()); serviceTransportFile.setCaseNo(transport.getCaseNo()); serviceTransportFile.setTransportId(transport.getId()); List<ServiceTransportFile> serviceTransportFiles = serviceTransportFileService.queryList(serviceTransportFile); transport.setAnnexfilesList(serviceTransportFiles); } @@ -107,7 +106,7 @@ public AjaxResult edit(@RequestBody ServiceTransport serviceTransport) { boolean b = serviceTransportService.updateById(serviceTransport); if (b) { serviceTransportFileService.updateList(serviceTransport.getAnnexfilesList(), serviceTransport.getReportId(), serviceTransport.getCaseNo(), getNickName()); serviceTransportFileService.updateList(serviceTransport.getAnnexfilesList(), serviceTransport.getId(), serviceTransport.getCaseNo(), getNickName()); } return toAjax(b); } ruoyi-admin/src/main/resources/application-druid.yml
@@ -1,3 +1,11 @@ # 项ç®ç¸å ³é ç½® ruoyi: # æä»¶è·¯å¾ 示ä¾ï¼ Windowsé ç½®D:/ruoyi/uploadPathï¼Linuxé ç½® /home/ruoyi/uploadPathï¼ # å¼åç¯å¢ window profile: D:/OPO/WEB/uploadFile # 彿¡£è·¯å¾ archived: D:/OPO/WEB/archived/ # æ°æ®æºé ç½® spring: datasource: @@ -90,3 +98,8 @@ proxy: enabled: true # æ¯å¦å¯ç¨ä»£ç url: http://127.0.0.1:8800/dingtalk-api # Nginx代çå°åï¼éè¦æ¿æ¢ä¸ºå®é å°å sms: url: http://103.21.119.249:3131/http/send.aspx loginName: qddxfsyy passWord: Qyfy_0718 ruoyi-admin/src/main/resources/application-prod.yml
ÎļþÃû´Ó ruoyi-admin/src/main/resources/application-srm.yml ÐÞ¸Ä @@ -1,3 +1,15 @@ # 项ç®ç¸å ³é ç½® ruoyi: # æä»¶è·¯å¾ 示ä¾ï¼ Windowsé ç½®D:/ruoyi/uploadPathï¼Linuxé ç½® /home/ruoyi/uploadPathï¼ # å¼åç¯å¢ window # profile: D:/lihusoft/OPO/WEB/Upload # å¼åç¯å¢ linux # profile: /home/smartor/uploadFile # å»é¢ç¯å¢ profile: /home/smartor/uploadFile # 彿¡£è·¯å¾ archived: /home/smartor/archived/ # æ°æ®æºé ç½® spring: datasource: @@ -91,3 +103,9 @@ proxy: enabled: true # æ¯å¦å¯ç¨ä»£ç url: http://192.168.111.9:9096/dingtalk-api # Nginx代çå°åï¼éè¦æ¿æ¢ä¸ºå®é å°å sms: url: http://192.168.111.9:9096/http/send.aspx loginName: qddxfsyy passWord: Qyfy_0718 ruoyi-admin/src/main/resources/application.yml
@@ -8,15 +8,6 @@ copyrightYear: 2021 # å®ä¾æ¼ç¤ºå¼å ³ demoEnabled: true # æä»¶è·¯å¾ 示ä¾ï¼ Windowsé ç½®D:/ruoyi/uploadPathï¼Linuxé ç½® /home/ruoyi/uploadPathï¼ # å¼åç¯å¢ window # profile: D:/lihusoft/OPO/WEB/Upload # å¼åç¯å¢ linux # profile: /home/smartor/uploadFile # å»é¢ç¯å¢ profile: D:/OPO/WEB/Upload # 彿¡£è·¯å¾ archived: D:/OPO/WEB/archived/ # è·åipå°åå¼å ³ addressEnabled: false # éªè¯ç ç±»å math æ°ç»è®¡ç® char å符éªè¯ @@ -25,7 +16,7 @@ # å¼åç¯å¢é ç½® server: # æå¡å¨çHTTP端å£ï¼é»è®¤ä¸º9095 port: 9095 port: 8080 servlet: # åºç¨ç访é®è·¯å¾ context-path: / @@ -53,7 +44,7 @@ # å½é åèµæºæä»¶è·¯å¾ basename: i18n/messages profiles: active: srm active: druid # æä»¶ä¸ä¼ servlet: multipart: ruoyi-admin/target/classes/com/ruoyi/web/controller/common/SmsController.classBinary files differ
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatecompletioninfo.java
@@ -134,5 +134,13 @@ @ApiModelProperty("å®æç¶æ1å¾ å©ç¨ï¼2è¿è¡ä¸ï¼3æç®å®æï¼4æ¾å¼") @Excel(name = "å®æç¶æ1å¾ å©ç¨ï¼2è¿è¡ä¸ï¼3æç®å®æï¼4æ¾å¼") private String completeState; @ApiModelProperty("亲å±å ³ç³»") @Excel(name = "亲å±å ³ç³»") private String signfamilyrelations; @ApiModelProperty("亲å±å§å") @Excel(name = "亲å±å§å") private String relationname; } ruoyi-project/src/main/java/com/ruoyi/project/domain/dto/DonationCompletionBaseInfoDTO.java
@@ -215,4 +215,13 @@ @Excel(name = "å®æç¶æ1å¾ å©ç¨ï¼2è¿è¡ä¸ï¼3æç®å®æï¼4æ¾å¼") private String completeState; @ApiModelProperty("亲å±å ³ç³»") @Excel(name = "亲å±å ³ç³»") private String signfamilyrelations; @ApiModelProperty("亲å±å§å") @Excel(name = "亲å±å§å") private String relationname; } ruoyi-project/src/main/java/com/ruoyi/project/domain/dto/SmsDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,20 @@ package com.ruoyi.project.domain.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; @Data @ToString @NoArgsConstructor @ApiModel("çä¿¡") public class SmsDTO { @ApiModelProperty("çµè¯å·ç ") private String tel; @ApiModelProperty("çµè¯å·ç ") private String messageContent; } ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/ServiceDonatecompletioninfoVO.java
@@ -139,5 +139,12 @@ @Excel(name = "å®æç¶æ1å¾ å©ç¨ï¼2è¿è¡ä¸ï¼3æç®å®æï¼4æ¾å¼") private String completeState; @ApiModelProperty("亲å±å ³ç³»") @Excel(name = "亲å±å ³ç³»") private String signfamilyrelations; @ApiModelProperty("亲å±å§å") @Excel(name = "亲å±å§å") private String relationname; } ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganBaseServiceImpl.java
@@ -152,7 +152,11 @@ b = updateById(serviceDonateorganBase); if (b == true && CollectionUtils.isNotEmpty(serviceDonateorganBaseVO.getServiceDonateorganList())) { for (ServiceDonateorgan serviceDonateorgan : serviceDonateorganBaseVO.getServiceDonateorganList()) { serviceDonateorganMapper.updateById(serviceDonateorgan); if(ObjectUtils.isNotEmpty(serviceDonateorgan.getId()) ) { serviceDonateorganMapper.updateById(serviceDonateorgan); }else { serviceDonateorganMapper.insert(serviceDonateorgan); } } } } ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTransportFileServiceImpl.java
@@ -77,9 +77,9 @@ @Transactional(rollbackFor = Exception.class) @Override public Boolean updateList(List<ServiceTransportFile> annexfilesList, Long reportId,String caseNo,String updateName) { public Boolean updateList(List<ServiceTransportFile> annexfilesList, Long transportId,String caseNo,String updateName) { // å å°æ°æ®æ¥åºæ¥ List<ServiceTransportFile> list = list(new LambdaQueryWrapper<ServiceTransportFile>().eq(ServiceTransportFile::getTransportId, reportId)); List<ServiceTransportFile> list = list(new LambdaQueryWrapper<ServiceTransportFile>().eq(ServiceTransportFile::getTransportId, transportId)); // æåç°æè®°å½çè·¯å¾éåï¼ç¨äºé«ææ¯è¾ Set<String> existingPaths = list.stream().map(file -> file.getFileName() != null ? file.getPath().trim() : "").filter(StringUtils::isNotEmpty).collect(Collectors.toSet()); @@ -103,7 +103,7 @@ for (ServiceTransportFile serviceTransportFile : annexfilesList) { if (StringUtils.isNotEmpty(serviceTransportFile.getFileName()) && !existingPaths.contains(serviceTransportFile.getFileName().trim())) { serviceTransportFile.setId(null); serviceTransportFile.setTransportId(reportId); serviceTransportFile.setTransportId(transportId); serviceTransportFile.setCreateBy(updateName); serviceTransportFile.setUpdateTime(new Date()); result &= save(serviceTransportFile); ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTransportServiceImpl.java
@@ -58,7 +58,6 @@ ServiceTransportFile serviceTransportFile = new ServiceTransportFile(); serviceTransportFile.setDelFlag(0); serviceTransportFile.setTransportId(serviceTransport1.getId()); serviceTransportFile.setCaseNo(serviceTransport1.getCaseNo()); List<ServiceTransportFile> serviceTransportFiles = serviceTransportFileService.queryList(serviceTransportFile); serviceTransport1.setAnnexfilesList(serviceTransportFiles); ruoyi-project/src/main/resources/mapper/project/ServiceDonatecompletioninfoMapper.xml
@@ -208,7 +208,9 @@ sdc.CoordinatedUserNameT AS coordinatedusernamet, sdc.AssessAnnex AS assessannex, sdc.DonateOrgan AS donateorgan, sdc.complete_state as completeState sdc.complete_state as completeState, sdc.signfamilyrelations, sdc.relationname FROM service_donatebaseinfo sd LEFT JOIN service_donatecompletioninfo sdc ON sd.ID = sdc.InfoID ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml
@@ -158,7 +158,9 @@ st.OrganDonation_Other as organdonationOther, st.DonationCategory as donationcategory, st.DeathJudgeAnnex as deathjudgeannex, st.witness_state as witnessState st.witness_state as witnessState, st.IsSpendRemember as isspendremember, st.IsRestoreRemains as isrestoreremains FROM service_donatebaseinfo sd LEFT JOIN service_donationwitness st ON sd.ID = st.InfoID ruoyi-project/target/classes/com/ruoyi/project/domain/dto/SmsDTO.classBinary files differ