springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -9,7 +9,7 @@ import com.panzhihua.common.model.dtos.community.dpc.AddDpcDTO; import com.panzhihua.common.model.dtos.community.dpc.EditDpcDTO; import com.panzhihua.common.model.dtos.community.dpc.PageDpcDTO; import com.panzhihua.common.model.dtos.community.enterprise.PageEnterpriseTypeDTO; import com.panzhihua.common.model.dtos.community.enterprise.*; import com.panzhihua.common.model.dtos.community.reserve.*; import com.panzhihua.common.model.dtos.community.warehouse.ComActWarehouseApplyDTO; import com.panzhihua.common.model.dtos.community.GetIdentityEidTokenDTO; @@ -207,9 +207,6 @@ import com.panzhihua.common.model.dtos.community.elder.PageElderAuthStatisticDTO; import com.panzhihua.common.model.dtos.community.elder.PagePensionAuthStatisticDTO; import com.panzhihua.common.model.dtos.community.elder.SignElderAuthStatisticDTO; import com.panzhihua.common.model.dtos.community.enterprise.AddEnterpriseDTO; import com.panzhihua.common.model.dtos.community.enterprise.EditEnterpriseDTO; import com.panzhihua.common.model.dtos.community.enterprise.PageEnterpriseDTO; import com.panzhihua.common.model.dtos.community.fms.AddFmsClassroomAdminDTO; import com.panzhihua.common.model.dtos.community.fms.AddFmsServiceAdminDTO; import com.panzhihua.common.model.dtos.community.fms.AddTeamDTO; @@ -9937,8 +9934,263 @@ @RequestParam(value = "size",required = false) Integer size, @RequestParam(value = "belongTo",required = false) String belongTo, @RequestParam(value = "unitId",required = false) Long unitId); /** * 批量删除活动 * @param ids * @return */ @PostMapping("batchDel") R deleteActivities(@RequestBody List<Long> ids); /** * 街道详情 * @param id * @return */ @GetMapping("detailStreet") R detailStreet(@RequestParam("id") Long id); /** * 分页查询项目报名列表 * @param pageProjectSignListDTO * @return */ @PostMapping("/comActSocialProject/signList") R pageProjectSignList(@RequestBody PageProjectSignListDTO pageProjectSignListDTO); /** * 分页查询孵化申请 * @param pageHatchAuditDTO * @return */ @PostMapping("/comActSocialOrgHatchAudit/page") R pageHatchAudit(@RequestBody PageSocialOrgHatchAuditDTO pageHatchAuditDTO); /** * 查看孵化申请详情 * @param id * @return */ @GetMapping("/comActSocialOrgHatchAudit/detail") R detailHatchAudit(@RequestParam("id") Long id); /** * 修改孵化申请 * @param hatchAuditDTO * @return */ @PostMapping("/comActSocialOrgHatchAudit/update") R updateHatchAudit(@RequestBody SocialOrgHatchAuditDTO hatchAuditDTO); /** * 分页查询孵化数据 * @param pageHatchDTO * @return */ @PostMapping("/comActSocialOrgHatch/page") R pageOrgHatch(@RequestBody PageSocialOrgHatchDTO pageHatchDTO); /** * 查看孵化数据详情 * @param id * @return */ @GetMapping("/comActSocialOrgHatch/detail") R detailOrgHatch(@RequestParam("id") Long id); /** * 修改孵化状态 * @param id * @param status * @return */ @PutMapping("/comActSocialOrgHatch/updateStatus") R updateOrgHatchStatus(@RequestParam("id") Long id, @RequestParam("status") Integer status); /** * 获取孵化流程配置 * @return */ @GetMapping("/comActSocialOrgHatchAudit/process") R getHatchAuditProcess(); /** * 修改孵化流程配置 * @param processDTO * @return */ @PutMapping("/comActSocialOrgHatchAudit/process") R putHatchAuditProcess(@RequestBody HatchAuditProcessDTO processDTO); /** * 新增孵化申请 * @param hatchAuditDTO * @return */ @PostMapping("/comActSocialOrgHatchAudit/add") R addHatchAudit(@RequestBody SocialOrgHatchAuditDTO hatchAuditDTO); /** * 查看孵化申请审核进度 * @param userId * @return */ @GetMapping("/comActSocialOrgHatchAudit/schedule") R getHatchAuditSchedule(@RequestParam("userId") Long userId); /** * 项目公开报名 * @param projectId * @param userId * @return */ @GetMapping("/comActSocialProject/sign") R signProject(@RequestParam("projectId") Long projectId, @RequestParam("userId") Long userId); /** * 分页查询用户报名的项目 * @param pageProjectDTO * @return */ @PostMapping("/comActSocialProject/project") R pageProjectWhichIsSignedByUser(@RequestBody PageProjectDTO pageProjectDTO); /** * 删除孵化申请详情 * @param id * @return */ @GetMapping("/comActSocialOrgHatchAudit/delete") R deleteHatchAudit(@RequestParam("id") Long id); /** * 删除孵化数据 * @param id * @return */ @GetMapping("/comActSocialOrgHatch/delete") R deleteOrgHatch(@RequestParam("id") Long id); /** * 新增社区企业 * @param addEnterpriseDTO * @return */ @PostMapping("/enterprise/add") R addEnterprise(@RequestBody AddEnterpriseDTO addEnterpriseDTO); /** * 修改社区企业 * @param editEnterpriseDTO * @return */ @PostMapping("/enterprise/edit") R editEnterprise(@RequestBody EditEnterpriseDTO editEnterpriseDTO); /** * 删除社区企业 * @param id * @return */ @DeleteMapping("/enterprise/delete") R deleteEnterprise(@RequestParam("id") Long id); /** * 获取社区企业详情 * @param id * @return */ @GetMapping("/enterprise/detail") R detailEnterprise(@RequestParam("id") Long id); /** * 分页查询社区企业 * @param pageEnterpriseDTO * @return */ @PostMapping("/enterprise/page") R pageEnterprise(@RequestBody PageEnterpriseDTO pageEnterpriseDTO); /** * 孵化中心-基础数据 * @param communityId * @return */ @GetMapping("/screen/hatch/base") R getHatchBaseData(@RequestParam("communityId") Long communityId); /** * 孵化中心-孵化成果展示列表 * @param pageBaseDTO * @return */ @PostMapping("/screen/hatchResult/list") R pageHatchResult(@RequestBody PageBaseDTO pageBaseDTO); /** * 孵化中心-孵化进度展示列表 * @param pageBaseDTO * @return */ @PostMapping("/screen/hatchSchedule/list") R pageHatchSchedule(@RequestBody PageBaseDTO pageBaseDTO); /** * 五社联动基础数据 * @param communityId * @return */ @GetMapping("/screen/fiveAssociations/base") R getFiveAssociationsBaseData(@RequestParam("communityId") Long communityId); /** * 五社联动项目展示列表 * @param pageBaseDTO * @return */ @PostMapping("/screen/socialProject/list") R pageSocialProjectList(@RequestBody PageBaseDTO pageBaseDTO); /** * 五社联动社会组织展示列表 * @param pageBaseDTO * @return */ @PostMapping("/screen/socialOrg/list") R pageSocialOrgList(@RequestBody PageBaseDTO pageBaseDTO); /** * 新增服务分类 * @param addEnterpriseTypeDTO * @return */ @PostMapping("/enterpriseType/add") R addEnterpriseType(@RequestBody AddEnterpriseTypeDTO addEnterpriseTypeDTO); /** * 修改服务分类 * @param enterpriseTypeDTO * @return */ @PostMapping("/enterpriseType/edit") R editEnterpriseType(@RequestBody EditEnterpriseTypeDTO enterpriseTypeDTO); /** * 删除服务分类 * @param id * @return */ @DeleteMapping("/enterpriseType/delete") R deleteEnterpriseType(@RequestParam("id") Long id); /** * 获取服务分类详情 * @param id * @return */ @GetMapping("/enterpriseType/detail") R detailEnterpriseType(@RequestParam("id") Long id); /** * 分页查询服务分类 * @param pageEnterpriseTypeDTO * @return springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComActSocialProjectApi.java
@@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; import java.util.Date; /** springcloud_k8s_panzhihuazhihuishequ/grid_backstage/pom.xml
@@ -64,6 +64,11 @@ <artifactId>minio</artifactId> <version>6.0.8</version> </dependency> <dependency> <groupId>com.github.penggle</groupId> <artifactId>kaptcha</artifactId> <version>2.3.2</version> </dependency> </dependencies> <build> springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/api/CommonApi.java
@@ -11,6 +11,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import com.panzhihua.common.utlis.MimeTypeUtils; import com.panzhihua.grid_backstage.config.MinioUtil; import org.apache.commons.io.FilenameUtils; import org.springframework.beans.factory.annotation.Value; @@ -27,6 +28,8 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import static com.panzhihua.common.utlis.FileTypeUploadUtils.assertAllowed; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -120,6 +123,7 @@ @PostMapping(value = "/uploadimages", consumes = "multipart/*", headers = "content-type=multipart/form-date") public R uploadImages(@RequestParam MultipartFile file, HttpServletRequest request) { try { assertAllowed(file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION); String extension = FilenameUtils.getExtension(file.getOriginalFilename()); String name = UUID.randomUUID().toString().replaceAll("-", "") + "." + extension; String imageUrl = minioUtil.upload(file, name); springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/api/EventVisitingTasksApi.java
@@ -180,4 +180,9 @@ return gridService.reset(idDTO); } @GetMapping("/test") public R test(){ return gridService.timedTaskVisitingJobHandler(); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java
@@ -8,6 +8,7 @@ import javax.annotation.Resource; import com.panzhihua.common.model.dtos.common.PageComActEasyPhotoEvaluateDto; import com.panzhihua.common.model.vos.common.ComActEasyPhotoHandlerVo; import com.panzhihua.common.model.vos.community.easyPhoto.BannerVO; import com.panzhihua.service_community.entity.ComActEasyPhotoEvaluate; import com.panzhihua.service_community.entity.ComActEasyPhotoHandler; @@ -880,4 +881,45 @@ return R.ok(this.baseMapper.easyPhotoNoHandleIds(communityId)); } /** * 获取人大代表反馈记录 * @param id 随手拍id * @return */ @Override public R getFeedbackList(Long id) { return R.ok(comActEasyPhotoFeedbackMapper.getPhotoFeedbackListForDpc(id)); } /** * 人大代表反馈随手拍 * @param comActEasyPhotoVO * @return */ @Override public R addEasyPhotoFeedbackForDpc(ComActEasyPhotoVO comActEasyPhotoVO) { Date nowDate = new Date(); // 操作类型 1审核通过 2驳回 3反馈 4完成随手拍 ComActEasyPhotoDO cmActEasyPhotoDO = this.comActEasyPhotoDAO.selectById(comActEasyPhotoVO.getId()); if (cmActEasyPhotoDO == null) { return R.fail("未查询到随手拍记录"); } if (!cmActEasyPhotoDO.getStatus().equals(ComActEasyPhotoDO.status.dfk)) { return R.fail("该随手拍不是进行中状态,不可进行反馈"); } // 给随手拍新增反馈信息 ComActEasyPhotoFeedbackDO photoFeedbackDO = new ComActEasyPhotoFeedbackDO(); photoFeedbackDO.setEasyId(comActEasyPhotoVO.getId()); photoFeedbackDO.setFeedbackContent(comActEasyPhotoVO.getHandleResult()); photoFeedbackDO.setFeedbackImg(comActEasyPhotoVO.getHandlePhotoList()); photoFeedbackDO.setType(2); photoFeedbackDO.setCreateAt(nowDate); photoFeedbackDO.setCreateBy(comActEasyPhotoVO.getUserId()); int result = comActEasyPhotoFeedbackMapper.insert(photoFeedbackDO); if (result > 0) { return R.ok(); } return R.fail(); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngProvinceServiceImpl.java
@@ -79,7 +79,7 @@ } @Override public R getCityTreeByProvinceCode(Integer provinceAdcode) { public R getCityTreeByProvinceCode(Integer provinceAdcode,String areaCode) { List<ComMngProvinceDO> provinceDOS = comMngProvinceDAO.selectList( new QueryWrapper<ComMngProvinceDO>().lambda().eq(ComMngProvinceDO::getProvinceAdcode, provinceAdcode)); List<ComMngCityDO> cityDOS = comMngCityDAO.selectList(new QueryWrapper<>()); springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/RentingHourseRegisterServiceImpl.java
@@ -439,7 +439,7 @@ } @Override public void updateAllHouseUnionAppCode() { public void updateAllHouseUnionAppCode(String areaCode) { List<RentingHourseRegister> list = this.baseMapper.selectList(null); if (!list.isEmpty()) { list.stream().forEach(houseRegister -> { springcloud_k8s_panzhihuazhihuishequ/shop_backstage/pom.xml
@@ -61,6 +61,11 @@ <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>com.github.penggle</groupId> <artifactId>kaptcha</artifactId> <version>2.3.2</version> </dependency> </dependencies> <build> springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/ConvenientApi.java
@@ -1,5 +1,6 @@ package com.panzhihua.shop_backstage.api; import static com.panzhihua.common.utlis.FileTypeUploadUtils.assertAllowed; import static org.apache.commons.lang3.StringUtils.isBlank; import java.io.File; springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/LoginApi.java
@@ -19,11 +19,17 @@ import com.panzhihua.common.service.auth.TokenService; import com.panzhihua.common.service.community.CommunityService; import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.interfaces.ShopOperLog; import com.panzhihua.shop_backstage.model.vos.LoginBody; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @Slf4j @RestController @@ -40,7 +46,7 @@ @ApiOperation(value = "商家后台登录", response = LoginReturnVO.class) @ShopOperLog(operType = 1) @PostMapping("login") public R login(@RequestBody LoginBody loginBody) { public R login(@RequestBody LoginBody loginBody){ String account = loginBody.getAccount(); String password = loginBody.getPassword(); boolean empty = ObjectUtils.isEmpty(account); springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/MicroCommercialStreetApi.java
@@ -22,49 +22,19 @@ import com.alibaba.fastjson.JSONObject; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.dtos.community.microCommercialStreet.BindUserPhoneDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.DeleteProductDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.LoginWithPhoneDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.McsEvaluateDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.McsGameDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.McsInfoDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.McsMerchantDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.McsProductDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.PageJoinGameListDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.PageMcsEvaluateDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.PageMcsGameDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.PageMcsInformationDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.PageMcsMerchantDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.PageMcsProductDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.PageVerifyRecordDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.PutUserInfoDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.SetShelfForGameDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.SetShelfForInfoDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.SetShelfForProductDTO; import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.dtos.community.microCommercialStreet.*; import com.panzhihua.common.model.vos.LoginReturnVO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.microCommercialStreet.GameStatisticsVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.IndexTopStatisticsVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsConfigVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsCouponVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsEvaluateVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsGameVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsInformationVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsLabelVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsLoginUserInfoVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsMerchantVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsProductVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.McsVerifyRecordVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.MyCouponVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.TopStatisticsVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.VerifiedReturnVO; import com.panzhihua.common.model.vos.community.microCommercialStreet.*; import com.panzhihua.common.service.auth.TokenService; import com.panzhihua.common.service.community.CommunityService; import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.validated.AddGroup; import com.panzhihua.common.validated.PutGroup; import com.panzhihua.shop_backstage.aop.CheckMcsMerchantExpiration; import com.panzhihua.shop_backstage.config.MyAESUtil; import com.panzhihua.shop_backstage.config.WxMaConfiguration; import com.panzhihua.shop_backstage.model.request.LoginRequest; import com.panzhihua.shop_backstage.model.vos.LoginBody; @@ -74,6 +44,19 @@ import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; import java.time.Duration; import java.util.regex.Pattern; import static java.util.Objects.isNull; import static java.util.Objects.nonNull; /** * @title: MicroCommercialStreetApi @@ -88,6 +71,7 @@ @Slf4j public class MicroCommercialStreetApi extends BaseController { private static String LOGIN_FAIL = "LOGIN_FAIL_"; @Resource private CommunityService communityService; @Resource @@ -96,6 +80,8 @@ private UserService userService; @Resource private WxMaConfiguration wxMaConfiguration; @Resource private RedisTemplate redisTemplate; @ApiOperation(value = "H5授权登录", response = LoginReturnVO.class) @PostMapping("/auth/login") @@ -159,7 +145,14 @@ @PostMapping("/merchant/login") public R merchantLogin(@RequestBody @Valid LoginBody loginBody) { String account = loginBody.getAccount(); String password = loginBody.getPassword(); log.info("登录用户信息【{}】", loginBody); try { password = MyAESUtil.Decrypt(loginBody.getPassword(), "Ryo7M3n8loC5Abcd"); } catch (Exception e) { return R.fail("账号或密码错误!"); } boolean flag = redisTemplate.hasKey(LOGIN_FAIL + account); try { R r = communityService.getMcsMerchantByAccount(account); Boolean isValid = false; @@ -167,7 +160,14 @@ McsMerchantVO merchantVO = JSONObject.parseObject(JSONObject.toJSONString(r.getData()), McsMerchantVO.class); isValid = merchantVO.getAccountStatus() == 1; if (isValid) { R result = tokenService.loginMcsUser(account, loginBody.getPassword()); if (flag) { Integer time = (Integer) redisTemplate.opsForValue().get(LOGIN_FAIL + account); if (time >= 5) { redisTemplate.opsForValue().set(LOGIN_FAIL + account, 5, Duration.ofMinutes(5)); throw new ServiceException("登录错误超过限制,请五分钟后重试"); } } R result = tokenService.loginMcsUser(account, password); return result; } else { return R.fail("账号被禁用"); @@ -175,10 +175,20 @@ } return R.fail(r.getMsg()); } catch (Exception e) { lockLogin(flag, account); return R.fail("登陆失败了"); } } private void lockLogin(Boolean flag, String userName) { if (flag) { Integer time = (Integer) redisTemplate.opsForValue().get(LOGIN_FAIL + userName); redisTemplate.opsForValue().set(LOGIN_FAIL + userName, time + 1, Duration.ofMinutes(5)); } else { redisTemplate.opsForValue().set(LOGIN_FAIL + userName, 1, Duration.ofMinutes(5)); } } @ApiOperation(value = "微商业街用户登录", response = LoginReturnVO.class) @PostMapping("/loginWithPhone") public R loginWithPhone(@RequestBody @Valid LoginWithPhoneDTO loginDTO) { springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/config/MyAESUtil.java
New file @@ -0,0 +1,52 @@ package com.panzhihua.shop_backstage.config; import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder; import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpec; public class MyAESUtil { // 加密 public static String Encrypt(String sSrc, String sKey) throws Exception { if (sKey == null) { System.out.print("Key为空null"); return null; } // 判断Key是否为16位 if (sKey.length() != 16) { System.out.print("Key长度不是16位"); return null; } byte[] raw = sKey.getBytes("utf-8"); SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES"); Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");//"算法/模式/补码方式" cipher.init(Cipher.ENCRYPT_MODE, skeySpec); byte[] encrypted = cipher.doFinal(sSrc.getBytes("utf-8")); return new BASE64Encoder().encode(encrypted);//此处使用BASE64做转码功能,同时能起到2次加密的作用。 } // 解密 public static String Decrypt(String sSrc, String sKey) throws Exception { try { byte[] raw = sKey.getBytes("utf-8"); SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES"); Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); cipher.init(Cipher.DECRYPT_MODE, skeySpec); byte[] encrypted1 = new BASE64Decoder().decodeBuffer(sSrc);//先用base64解密 try { byte[] original = cipher.doFinal(encrypted1); String originalString = new String(original,"utf-8"); return originalString; } catch (Exception e) { System.out.println(e.toString()); return null; } } catch (Exception ex) { System.out.println(ex.toString()); return null; } } }