From 922a118ac36d64fd3d18a6d86e279800c92a5ccd Mon Sep 17 00:00:00 2001 From: fengjin <1435304038@qq.com> Date: 星期三, 19 十月 2022 11:14:44 +0800 Subject: [PATCH] 1.修改自动分配代码逻辑2.修改BUG --- flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java | 112 ++++++++++++++++++++++++++++--------------------------- 1 files changed, 57 insertions(+), 55 deletions(-) diff --git a/flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java b/flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java index 831ac1d..ce3ba60 100644 --- a/flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java +++ b/flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java @@ -74,8 +74,8 @@ } if (isAdd) { //自动分配业务代码开始 - List<OrganizationChartEntity> organizationChartEntities = organizationChartMapper.selectByCode(guideRepairOrder.getAreaCode()); - if (organizationChartEntities != null) { + List<OrganizationChartEntity> organizationChartEntities = organizationChartMapper.selectByCode(transactionEvent.getDepartmentId(),guideRepairOrder.getAreaCode()); + if (organizationChartEntities.size() > 0) { for (OrganizationChartEntity organizationChart : organizationChartEntities) { departmentIds.add(organizationChart.getId().toString()); } @@ -114,12 +114,12 @@ entity.setFromDepartmentalId(guideRepairOrder.getGuideDepartmentId()); entity.setGuidOrderNum(guideRepairOrder.getOrderNum()); //超时时间设置业务开始 - guideRepairOrder=this.setTimeoutTim(guideRepairOrder); + guideRepairOrder = this.setTimeoutTim(guideRepairOrder); //超时时间设置业务结束 //消息推送 - this.sendGuideRepairOrderSubmit(sysUser.getOpenid(),guideRepairOrder); + this.sendGuideRepairOrderSubmit(sysUser.getOpenid(), guideRepairOrder); //短信发送 - smsUtil.sendSmsSubmit(sysUser.getPhonenumber(),sysUser.getUserName()); + smsUtil.sendSmsSubmit(sysUser.getPhonenumber(), sysUser.getUserName()); guideEvolveMapper.insertConfig(entity); } } else {//如果该办事指南用户所选所属地区无导半部门则为特殊单据需要手动分配 @@ -216,36 +216,38 @@ @Override public int updateSysUserOrderNum(GuideEvolveEntity order) { - if (order.getState().equals("11")) { - SysUser sysUser = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getToUserId())); - GuideRepairOrder guideRepairOrder = baseMapper.selectOne(new QueryWrapper<GuideRepairOrder>().lambda() - .eq(GuideRepairOrder::getId, order.getGuideId())); - if (guideRepairOrder!=null){ - this.sendGuideRepairOrderSubmit(sysUser.getOpenid(),guideRepairOrder); + if (order.getState() != null) { + if (order.getState().equals("11")) { + SysUser sysUser = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getToUserId())); + GuideRepairOrder guideRepairOrder = baseMapper.selectOne(new QueryWrapper<GuideRepairOrder>().lambda() + .eq(GuideRepairOrder::getId, order.getGuideId())); + if (guideRepairOrder != null) { + this.sendGuideRepairOrderSubmit(sysUser.getOpenid(), guideRepairOrder); + } + //短信发送 + smsUtil.sendSmsSubmit(sysUser.getPhonenumber(), sysUser.getUserName()); + sysUser.setTransactionNum(sysUser.getTransactionNum() + 1); + return sysUserMapper.updateById(sysUser); + } else if (order.getState().equals("10")) { + SysUser sysUserTo = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getToUserId())); + SysUser sysUserFrom = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getFromUserId())); + sysUserTo.setTransactionNum(sysUserTo.getTransactionNum() + 1); + sysUserFrom.setTransactionNum(sysUserFrom.getTransactionNum() - 1); + sysUserMapper.updateById(sysUserFrom); + GuideRepairOrder guideRepairOrder = baseMapper.selectOne(new QueryWrapper<GuideRepairOrder>().lambda() + .eq(GuideRepairOrder::getId, order.getGuideId())); + //短信发送 + smsUtil.sendSmsSubmit(sysUserTo.getPhonenumber(), sysUserTo.getUserName()); + if (guideRepairOrder != null) { + this.sendGuideRepairOrderSubmit(sysUserTo.getOpenid(), guideRepairOrder); + } + return sysUserMapper.updateById(sysUserTo); + } else if (order.getState().equals("7")) { + SysUser sysUserFrom = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getFromUserId())); + sysUserFrom.setTransactionNum(sysUserFrom.getTransactionNum() - 1); + return sysUserMapper.updateById(sysUserFrom); } - //短信发送 - smsUtil.sendSmsSubmit(sysUser.getPhonenumber(),sysUser.getUserName()); - sysUser.setTransactionNum(sysUser.getTransactionNum() + 1); - return sysUserMapper.updateById(sysUser); - } else if (order.getState().equals("10")) { - SysUser sysUserTo = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getToUserId())); - SysUser sysUserFrom = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getFromUserId())); - sysUserTo.setTransactionNum(sysUserTo.getTransactionNum() + 1); - sysUserFrom.setTransactionNum(sysUserFrom.getTransactionNum() - 1); - sysUserMapper.updateById(sysUserFrom); - GuideRepairOrder guideRepairOrder = baseMapper.selectOne(new QueryWrapper<GuideRepairOrder>().lambda() - .eq(GuideRepairOrder::getId, order.getGuideId())); - //短信发送 - smsUtil.sendSmsSubmit(sysUserTo.getPhonenumber(),sysUserTo.getUserName()); - if (guideRepairOrder!=null){ - this.sendGuideRepairOrderSubmit(sysUserTo.getOpenid(),guideRepairOrder); - } - return sysUserMapper.updateById(sysUserTo); - } else if (order.getState().equals("7")) { - SysUser sysUserFrom = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getFromUserId())); - sysUserFrom.setTransactionNum(sysUserFrom.getTransactionNum() - 1); - return sysUserMapper.updateById(sysUserFrom); - } + } return 0; } @@ -273,10 +275,10 @@ } @Override - public GuideRepairOrder setTimeoutTim(GuideRepairOrder guideRepairOrder){ + public GuideRepairOrder setTimeoutTim(GuideRepairOrder guideRepairOrder) { AutomessageSysSettings automessageSysSettings = iSysSettingsMapper.selectOne( new QueryWrapper<AutomessageSysSettings>().lambda() - .eq(AutomessageSysSettings::getSettingName,"系统超时基础设置")); + .eq(AutomessageSysSettings::getSettingName, "系统超时基础设置")); LocalDateTime startTime = LocalDate.now().atTime(0, 0, 0);//今天开始时间 LocalDateTime morningStartTime = LocalDate.now().atTime(9, 0, 0);//上午工作开始时间 LocalDateTime morningEndTime = LocalDate.now().atTime(12, 0, 0);//上午工作结束时间 @@ -284,50 +286,50 @@ LocalDateTime afternoonEndTime = LocalDate.now().atTime(17, 0, 0);//下午工作结束时间 LocalDateTime endTime = LocalDate.now().atTime(23, 59, 59);//今天结束时间 TestDate td = new TestDate(); - DateTime dateTimeUser= DateTime.now(); - String format="YYYYMMdd"; - String dateTimeToday=dateTimeUser.toString(format); - if (!WorkUtils.isWorkendDay(dateTimeToday)){ - if ( LocalDateTime.now().isAfter(startTime)&&LocalDateTime.now().isBefore(morningStartTime)){//提交时间是上午上班前 + DateTime dateTimeUser = DateTime.now(); + String format = "YYYYMMdd"; + String dateTimeToday = dateTimeUser.toString(format); + if (!WorkUtils.isWorkendDay(dateTimeToday)) { + if (LocalDateTime.now().isAfter(startTime) && LocalDateTime.now().isBefore(morningStartTime)) {//提交时间是上午上班前 guideRepairOrder.setTimeoutTime(LocalDate.now(). - atTime(9+automessageSysSettings.getTimeoutNotificationNum(),0,0)); - }else if (LocalDateTime.now().isAfter(morningStartTime)&&LocalDateTime.now().isBefore(morningEndTime)){//提交时间在上午工作日内 + atTime(9 + automessageSysSettings.getTimeoutNotificationNum(), 0, 0)); + } else if (LocalDateTime.now().isAfter(morningStartTime) && LocalDateTime.now().isBefore(morningEndTime)) {//提交时间在上午工作日内 guideRepairOrder.setTimeoutTime(LocalDateTime.now().plusHours(automessageSysSettings.getTimeoutNotificationNum())); - }else if(LocalDateTime.now().isAfter(morningEndTime)&&LocalDateTime.now().isBefore(afternoonStartTime)){//提交时间在工作日午休内 + } else if (LocalDateTime.now().isAfter(morningEndTime) && LocalDateTime.now().isBefore(afternoonStartTime)) {//提交时间在工作日午休内 guideRepairOrder.setTimeoutTime(LocalDate.now(). - atTime(13+automessageSysSettings.getTimeoutNotificationNum(),30,0)); - }else if(LocalDateTime.now().isAfter(afternoonStartTime)&&LocalDateTime.now().isBefore(afternoonEndTime)){//提交时间在下午工作日内 + atTime(13 + automessageSysSettings.getTimeoutNotificationNum(), 30, 0)); + } else if (LocalDateTime.now().isAfter(afternoonStartTime) && LocalDateTime.now().isBefore(afternoonEndTime)) {//提交时间在下午工作日内 guideRepairOrder.setTimeoutTime(LocalDateTime.now().plusHours(automessageSysSettings.getTimeoutNotificationNum())); - }else if(LocalDateTime.now().isAfter(afternoonEndTime)&&LocalDateTime.now().isBefore(endTime)){//提交时间在下午下班后 + } else if (LocalDateTime.now().isAfter(afternoonEndTime) && LocalDateTime.now().isBefore(endTime)) {//提交时间在下午下班后 DateTime dateTime = td.nextWeekDay(dateTimeUser); Calendar calendar = dateTime.toCalendar(); LocalDateTime localDateTime = LocalDateTime.of(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DATE), - 9+automessageSysSettings.getTimeoutNotificationNum(),0);//设置时间为下一个工作日时间的9点+设置超时时间 + 9 + automessageSysSettings.getTimeoutNotificationNum(), 0);//设置时间为下一个工作日时间的9点+设置超时时间 guideRepairOrder.setTimeoutTime(localDateTime); } - }else//当前不是工作日则获取下一个工作日 + } else//当前不是工作日则获取下一个工作日 { DateTime dateTime = td.nextWeekDay(dateTimeUser); Calendar calendar = dateTime.toCalendar(); LocalDateTime localDateTime = LocalDateTime.of(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DATE), - 9+automessageSysSettings.getTimeoutNotificationNum(),0);//设置时间为下一个工作日时间的9点+设置超时时间 + 9 + automessageSysSettings.getTimeoutNotificationNum(), 0);//设置时间为下一个工作日时间的9点+设置超时时间 guideRepairOrder.setTimeoutTime(localDateTime); } return guideRepairOrder; } @Override - public void sendGuideRepairOrderSubmit (String openid,GuideRepairOrder guideRepairOrder){ - WxUtil wxUtil=new WxUtil(); - String accessToken="0"; + public void sendGuideRepairOrderSubmit(String openid, GuideRepairOrder guideRepairOrder) { + WxUtil wxUtil = new WxUtil(); + String accessToken = "0"; try { - accessToken= wxUtil.getBatteryCarAccessToken(); + accessToken = wxUtil.getBatteryCarAccessToken(); } catch (Exception e) { throw new RuntimeException(e); } - wxUtil.sendGuideRepairOrderSubmit(openid,accessToken,"WggWK_yG7_qfrTj8bQe-2co4ATgpXamLzT1xvrTu4K0",guideRepairOrder); + wxUtil.sendGuideRepairOrderSubmit(openid, accessToken, "WggWK_yG7_qfrTj8bQe-2co4ATgpXamLzT1xvrTu4K0", guideRepairOrder); // smsUtil.sendSmsOvertime(sysUser.getPhonenumber(),guideRepairOrder.getMatterName()); } -- Gitblit v1.7.1