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.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 { private String url="http://103.21.119.249:3131/http/send.aspx"; private String loginName="qddxfsyy"; 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.toLowerCase(),passWord.toLowerCase()); key="5b2d0edb45ac3583543fbf55d8af1e6d"; String content="{\"LoginName\":\""+loginName+"\",\"PassWord\":\""+passWord+"\"," + "\"Key\":\""+key+"\"," + "\"Tel\":\""+DTO.getTel()+"\",\"MessageContent\":\""+DTO.getMessageContent()+"\"}"; String 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) { return hashPasswordForStoring(str,"MD5"); } public static String SHA1(String str) { return hashPasswordForStoring(str,"SHA1"); } public static String hashPasswordForStoring(String password, String algorithm) { try { // 1. è·ååå¸ç®æ³å®ä¾ MessageDigest md = MessageDigest.getInstance(algorithm); // 2. å¯ç 转 UTF-8 åèï¼å .NET å®å ¨ä¸è´ï¼ byte[] passwordBytes = password.getBytes(StandardCharsets.UTF_8); // 3. 计ç®åå¸ byte[] hashBytes = md.digest(passwordBytes); // 4. 转为大ååå è¿å¶å符串ï¼å .NET è¾åºæ ¼å¼ä¸è´ï¼ return bytesToHexUpperCase(hashBytes); } catch (NoSuchAlgorithmException e) { throw new RuntimeException("䏿¯æçåå¸ç®æ³: " + algorithm, e); } } private static String bytesToHexUpperCase(byte[] bytes) { StringBuilder sb = new StringBuilder(); for (byte b : bytes) { // 转两ä½å¤§ååå è¿å¶ 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/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