| | |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.service.business.third.model.PageData; |
| | | import com.doumee.service.business.third.model.PageWrap; |
| | | import com.doumee.core.utils.*; |
| | | import com.doumee.core.wx.wxPlat.WxPlatNotice; |
| | | import com.doumee.dao.business.*; |
| | | import com.doumee.dao.business.dao.MemberMapper; |
| | | import com.doumee.dao.business.dao.SmsConfigMapper; |
| | | import com.doumee.dao.business.dao.SmsEmailMapper; |
| | | import com.doumee.dao.business.join.VisitsJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.business.model.vo.ValidPhoneCodeVO; |
| | | import com.doumee.dao.business.model.Member; |
| | | import com.doumee.dao.system.SystemUserMapper; |
| | | import com.doumee.dao.system.model.SystemUser; |
| | | import com.doumee.service.business.SmsEmailService; |
| | | import com.doumee.service.business.third.EmayService; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import org.apache.commons.lang3.RandomStringUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | |
| | | |
| | | @Autowired |
| | | private SmsEmailMapper smsEmailMapper; |
| | | @Autowired |
| | | private SystemUserMapper systemUserMapper; |
| | | @Autowired |
| | | private MemberMapper memberMapper; |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | @Autowired |
| | |
| | | isCaptcheValide(smsEmailMapper,param.getPhone(),param.getCode()); |
| | | } |
| | | @Override |
| | | public SystemUser validDriverPhone(ValidPhoneCodeVO param){ |
| | | isCaptcheValide(smsEmailMapper,param.getPhone(),param.getCode()); |
| | | |
| | | SystemUser systemUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda() |
| | | .eq(SystemUser::getDeleted,Constants.ZERO) |
| | | .and(i->i.eq(SystemUser::getMobile,param.getPhone()).or().eq(SystemUser::getUsername,param.getPhone())) |
| | | .last("limit 1")); |
| | | if(systemUser !=null){ |
| | | return systemUser; |
| | | } |
| | | String salt = RandomStringUtils.randomAlphabetic(6); |
| | | Member member = new Member(); |
| | | member.setCreateDate(new Date()); |
| | | member.setIsdeleted(Constants.ZERO); |
| | | member.setType(Constants.memberType.driver); |
| | | member.setPhone(param.getPhone()); |
| | | member.setStatus(Constants.ZERO); |
| | | member.setOpenid(param.getOpenId()); |
| | | member.setPassward(Utils.Secure.encryptPassword(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INITIAL_PASSWORD).getCode(), salt)); |
| | | memberMapper.insert(member); |
| | | |
| | | systemUser = new SystemUser(); |
| | | systemUser.setCreateTime(new Date()); |
| | | systemUser.setDeleted(Boolean.FALSE); |
| | | systemUser.setUsername(param.getPhone()); |
| | | systemUser.setRealname(null); |
| | | systemUser.setMemberId(member.getId()); |
| | | systemUser.setMobile(param.getPhone()); |
| | | systemUser.setSalt(salt); |
| | | systemUser.setPassword(member.getPassward()); |
| | | systemUser.setStatus(Constants.ZERO); |
| | | systemUser.setType(Constants.memberType.driver); |
| | | systemUser.setSource(Constants.TWO); |
| | | systemUser.setOpenid(param.getOpenId()); |
| | | systemUserMapper.insert(systemUser); |
| | | return systemUser; |
| | | } |
| | | |
| | | @Override |
| | | public Integer create(SmsEmail smsEmail) { |
| | | smsEmailMapper.insert(smsEmail); |
| | | return smsEmail.getId(); |
| | |
| | | |
| | | @Override |
| | | public Integer sendSms(SmsEmail smsEmail) { |
| | | if(StringUtils.isBlank(smsEmail.getPhone())){ |
| | | if(StringUtils.isBlank(smsEmail.getPhone()) || smsEmail.getPhone().length() != 11 ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | String nowDate = DateUtil.getFomartDate(new Date(),"yyyy-MM-dd HH:mm:ss"); |
| | |
| | | queryWrapper.lambda().eq(SmsEmail::getContent, pageWrap.getModel().getContent()); |
| | | } |
| | | if (pageWrap.getModel().getPhone() != null) { |
| | | queryWrapper.lambda().eq(SmsEmail::getPhone, pageWrap.getModel().getPhone()); |
| | | queryWrapper.lambda().and(wr ->{ |
| | | wr.like(SmsEmail::getPhone, pageWrap.getModel().getPhone()) |
| | | .or().like(SmsEmail::getEmail, pageWrap.getModel().getPhone()); |
| | | }); |
| | | } |
| | | if (pageWrap.getModel().getEmail() != null) { |
| | | queryWrapper.lambda().eq(SmsEmail::getEmail, pageWrap.getModel().getEmail()); |
| | |
| | | if (pageWrap.getModel().getObjType() != null) { |
| | | queryWrapper.lambda().eq(SmsEmail::getObjType, pageWrap.getModel().getObjType()); |
| | | } |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | | queryWrapper.orderByDesc(sortData.getProperty()); |
| | | } else { |
| | | queryWrapper.orderByAsc(sortData.getProperty()); |
| | | } |
| | | } |
| | | queryWrapper.lambda().ge(Objects.nonNull(pageWrap.getModel().getStartTime()), |
| | | SmsEmail::getCreateDate, pageWrap.getModel().getStartTime()) |
| | | .le(Objects.nonNull(pageWrap.getModel().getEndTime()), |
| | | SmsEmail::getCreateDate, pageWrap.getModel().getEndTime()) |
| | | .orderByDesc(SmsEmail::getCreateDate); |
| | | return PageData.from(smsEmailMapper.selectPage(page, queryWrapper)); |
| | | } |
| | | |
| | |
| | | List<SmsEmail> smsEmails = smsEmailMapper.selectList(wrapper); |
| | | if(smsEmails!=null && smsEmails.size()>0){ |
| | | for(SmsEmail model : smsEmails){ |
| | | if(model.getPhone() == null){ |
| | | model.setStatus(Constants.THREE);//发送失败 |
| | | model.setRemark("手机号为空,取消任务发送!"); |
| | | }else{ |
| | | try { |
| | | emayService.sendSmsByHk(model.getPhone(),model.getContent()); |
| | | model.setStatus(Constants.ONE);//发送成功 |
| | | model.setRemark("短信任务发送成功"); |
| | | }catch (Exception e){ |
| | | if(Constants.equalsInteger(model.getType(),Constants.ZERO)){ |
| | | if(model.getPhone() == null){ |
| | | model.setStatus(Constants.THREE);//发送失败 |
| | | model.setRemark("短信任务发送失败!"+e.getMessage()); |
| | | model.setRemark("手机号为空,取消任务发送!"); |
| | | }else{ |
| | | try { |
| | | emayService.sendSmsByHk(model.getPhone(),model.getContent()); |
| | | model.setStatus(Constants.ONE);//发送成功 |
| | | model.setRemark("短信任务发送成功"); |
| | | }catch (Exception e){ |
| | | model.setStatus(Constants.THREE);//发送失败 |
| | | model.setRemark("短信任务发送失败!"+e.getMessage()); |
| | | } |
| | | } |
| | | }else if(Constants.equalsInteger(model.getType(),Constants.TWO)){ |
| | | if(DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss",model.getInfo()).getTime() < System.currentTimeMillis()){ |
| | | WxPlatNotice wxPlatNotice = new WxPlatNotice(); |
| | | wxPlatNotice.sendMeetTemplateNotice(systemDictDataBiz,model); |
| | | model.setStatus(Constants.ONE);//发送成功 |
| | | model.setRemark("微信通知发送成功"); |
| | | }else{ |
| | | model.setStatus(Constants.THREE);//发送成功 |
| | | model.setRemark("微信通知发送失败"); |
| | | } |
| | | }else{ |
| | | continue; |
| | | } |
| | | model.setEditDate(new Date()); |
| | | smsEmailMapper.updateById(model); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 访客申请业务短信通知 |
| | | * @param systemDictDataBiz |
| | |
| | | * @param auditUser |
| | | */ |
| | | public static void sendHiddenDangerSms(SystemDictDataBiz systemDictDataBiz, EmayService emayService , com.doumee.dao.business.dao.SmsEmailMapper smsEmailMapper , SmsConfigMapper smsConfigMapper, |
| | | HiddenDangerMapper hiddenDangerMapper, Integer objId, String objCode, List<String> auditUser){ |
| | | HiddenDangerMapper hiddenDangerMapper, Integer objId, String objCode, List<String> auditUser,String hiddenParam){ |
| | | try{ |
| | | SmsConfig smsConfig = smsConfigMapper.selectOne(new QueryWrapper<SmsConfig>().lambda().eq(SmsConfig::getCode, |
| | | objCode).last(" limit 1 ")); |
| | | //开启短信通知 |
| | | if(Objects.nonNull(smsConfig) || Constants.equalsInteger(smsConfig.getStatus(),Constants.ZERO)){ |
| | | String content = systemDictDataBiz.queryByCode(Constants.SMS,Constants.SMS_COMNAME).getCode() + smsConfig.getContent(); |
| | | String content = systemDictDataBiz.queryByCode(Constants.SMS,Constants.SMS_COMNAME).getCode() + smsConfig.getContent().replace("{隐患类型}",hiddenParam); |
| | | HiddenDanger hiddenDanger = hiddenDangerMapper.selectById(objId); |
| | | //您有一条【隐患随手拍-消防隐患】需要处理,详细信息请前往微信公众号查看 |
| | | //您提交的【隐患随手拍-消防隐患】已经处理完毕,详细信息请前往微信公众号查看。 |