Commit ccc65532ef03176856a9cf59a744c8d5fe2f5b08
Merge branch 'dev' of http://192.168.168.245:8888/youxiw20000/trash into dev
Showing
40 changed files
with
2184 additions
and
1398 deletions
trash-common/src/main/java/com/trash/common/core/domain/entity/SysUser.java
| @@ -105,10 +105,28 @@ public class SysUser extends BaseEntity | @@ -105,10 +105,28 @@ public class SysUser extends BaseEntity | ||
| 105 | List<String> companyAreas = new ArrayList<String>(); | 105 | List<String> companyAreas = new ArrayList<String>(); |
| 106 | List<String> earthAreas = new ArrayList<String>(); | 106 | List<String> earthAreas = new ArrayList<String>(); |
| 107 | List<String> truckList = new ArrayList<String>(); | 107 | List<String> truckList = new ArrayList<String>(); |
| 108 | - | 108 | + |
| 109 | + List<String> streetsAreas = new ArrayList<String>(); | ||
| 110 | + List<String> streetsList = new ArrayList<String>(); | ||
| 109 | 111 | ||
| 110 | 112 | ||
| 111 | 113 | ||
| 114 | + public List<String> getStreetsAreas() { | ||
| 115 | + return streetsAreas; | ||
| 116 | + } | ||
| 117 | + | ||
| 118 | + public void setStreetsAreas(List<String> streetsAreas) { | ||
| 119 | + this.streetsAreas = streetsAreas; | ||
| 120 | + } | ||
| 121 | + | ||
| 122 | + public List<String> getStreetsList() { | ||
| 123 | + return streetsList; | ||
| 124 | + } | ||
| 125 | + | ||
| 126 | + public void setStreetsList(List<String> streetsList) { | ||
| 127 | + this.streetsList = streetsList; | ||
| 128 | + } | ||
| 129 | + | ||
| 112 | public List<String> getCompanyAreas() { | 130 | public List<String> getCompanyAreas() { |
| 113 | return companyAreas; | 131 | return companyAreas; |
| 114 | } | 132 | } |
trash-common/src/main/java/com/trash/common/utils/RemoteServerUtils.java
| @@ -488,6 +488,32 @@ public class RemoteServerUtils { | @@ -488,6 +488,32 @@ public class RemoteServerUtils { | ||
| 488 | return object; | 488 | return object; |
| 489 | } | 489 | } |
| 490 | 490 | ||
| 491 | + public static JSONArray getStreets(String token){ | ||
| 492 | + JSONArray array = null; | ||
| 493 | + | ||
| 494 | + if (okHttpClient == null) { | ||
| 495 | + okHttpClient = getOkClient(); | ||
| 496 | + } | ||
| 497 | + | ||
| 498 | + Request request = new Request.Builder().url(remote + "/api/siteservice/v1/sites/tree/auth?type=4").addHeader("Authorization", token).get().build(); | ||
| 499 | + | ||
| 500 | + try { | ||
| 501 | + okhttp3.Response response = okHttpClient.newCall(request).execute(); | ||
| 502 | + String result = response.body().string(); | ||
| 503 | + | ||
| 504 | + if (result != null) { | ||
| 505 | + JSONArray json = JSON.parseArray(result); | ||
| 506 | + return json; | ||
| 507 | + } else { | ||
| 508 | + return null; | ||
| 509 | + } | ||
| 510 | + | ||
| 511 | + } catch (Exception e) { | ||
| 512 | + e.printStackTrace(); | ||
| 513 | + return null; | ||
| 514 | + } | ||
| 515 | + } | ||
| 516 | + | ||
| 491 | public static JSONArray getAreas(String token) { | 517 | public static JSONArray getAreas(String token) { |
| 492 | JSONArray array = null; | 518 | JSONArray array = null; |
| 493 | Object object = get("/api/gpsservice/cs/area", null, token); | 519 | Object object = get("/api/gpsservice/cs/area", null, token); |
| @@ -634,7 +660,7 @@ public class RemoteServerUtils { | @@ -634,7 +660,7 @@ public class RemoteServerUtils { | ||
| 634 | String token = SecurityUtils.getLoginUser().getToken(); | 660 | String token = SecurityUtils.getLoginUser().getToken(); |
| 635 | 661 | ||
| 636 | if (token.contains("durable:")) { | 662 | if (token.contains("durable:")) { |
| 637 | - token = token.replace("durable:", "Bearer durable:auth:token:"); | 663 | + token = "Bearer " + token; |
| 638 | } else { | 664 | } else { |
| 639 | token = "Bearer auth:token:" + token; | 665 | token = "Bearer auth:token:" + token; |
| 640 | } | 666 | } |
| @@ -674,8 +700,9 @@ public class RemoteServerUtils { | @@ -674,8 +700,9 @@ public class RemoteServerUtils { | ||
| 674 | 700 | ||
| 675 | String token = SecurityUtils.getLoginUser().getToken(); | 701 | String token = SecurityUtils.getLoginUser().getToken(); |
| 676 | 702 | ||
| 703 | + | ||
| 677 | if (token.contains("durable:")) { | 704 | if (token.contains("durable:")) { |
| 678 | - token = token.replace("durable:", "Bearer durable:auth:token:"); | 705 | + token = "Bearer " + token; |
| 679 | } else { | 706 | } else { |
| 680 | token = "Bearer auth:token:" + token; | 707 | token = "Bearer auth:token:" + token; |
| 681 | } | 708 | } |
| @@ -724,13 +751,8 @@ public class RemoteServerUtils { | @@ -724,13 +751,8 @@ public class RemoteServerUtils { | ||
| 724 | okHttpClient = getOkClient(); | 751 | okHttpClient = getOkClient(); |
| 725 | } | 752 | } |
| 726 | 753 | ||
| 727 | - | ||
| 728 | - if (token.contains("durable:")) { | ||
| 729 | - token = "Bearer " + token.replaceAll("durable:", ""); | ||
| 730 | - } else { | ||
| 731 | - token = "Bearer auth:token:" + token; | ||
| 732 | - } | ||
| 733 | - | 754 | + token = "Bearer " + token; |
| 755 | + | ||
| 734 | 756 | ||
| 735 | String param = JSON.toJSON(obj).toString(); | 757 | String param = JSON.toJSON(obj).toString(); |
| 736 | 758 | ||
| @@ -784,15 +806,11 @@ public class RemoteServerUtils { | @@ -784,15 +806,11 @@ public class RemoteServerUtils { | ||
| 784 | 806 | ||
| 785 | public static Object get(String url, Map<String, String> obj, String token) { | 807 | public static Object get(String url, Map<String, String> obj, String token) { |
| 786 | if (okHttpClient == null) { | 808 | if (okHttpClient == null) { |
| 787 | - | ||
| 788 | - | ||
| 789 | okHttpClient = getOkClient(); | 809 | okHttpClient = getOkClient(); |
| 790 | } | 810 | } |
| 791 | - if (token.contains("durable:")) { | ||
| 792 | - token = "Bearer " + token.replaceAll("durable:", ""); | ||
| 793 | - } else { | ||
| 794 | - token = "Bearer auth:token:" + token; | ||
| 795 | - } | 811 | + |
| 812 | + token = "Bearer " + token; | ||
| 813 | + | ||
| 796 | String params = ""; | 814 | String params = ""; |
| 797 | 815 | ||
| 798 | if (obj != null) { | 816 | if (obj != null) { |
| @@ -844,35 +862,27 @@ public class RemoteServerUtils { | @@ -844,35 +862,27 @@ public class RemoteServerUtils { | ||
| 844 | } | 862 | } |
| 845 | 863 | ||
| 846 | 864 | ||
| 847 | - public static JSONArray getDriverList() { | 865 | + public static JSONArray getDriverList(Map map) { |
| 848 | 866 | ||
| 849 | - try { | ||
| 850 | - Map map = new HashMap<>(); | ||
| 851 | - Object result = get(DriverListPath, null); | ||
| 852 | 867 | ||
| 853 | - if (result != null) { | ||
| 854 | - JSONObject json = JSON.parseObject(result.toString()); | ||
| 855 | - return json.getJSONArray("list"); | ||
| 856 | - | ||
| 857 | - } else { | ||
| 858 | - return null; | ||
| 859 | - } | 868 | + String token = SecurityUtils.getLoginUser().getToken(); |
| 860 | 869 | ||
| 861 | - } catch (Exception e) { | ||
| 862 | - e.printStackTrace(); | ||
| 863 | - return null; | ||
| 864 | - } | 870 | + return getDriverList(token,map); |
| 865 | } | 871 | } |
| 866 | 872 | ||
| 867 | - public static JSONArray getDriverList(String token) { | 873 | + public static JSONArray getDriverList(String token,Map map) { |
| 868 | 874 | ||
| 869 | if (okHttpClient == null) { | 875 | if (okHttpClient == null) { |
| 870 | okHttpClient = getOkClient(); | 876 | okHttpClient = getOkClient(); |
| 871 | } | 877 | } |
| 878 | + | ||
| 879 | + if (token.contains("durable:")) { | ||
| 880 | + token = "Bearer " + token; | ||
| 881 | + } else { | ||
| 882 | + token = "Bearer auth:token:" + token; | ||
| 883 | + } | ||
| 872 | 884 | ||
| 873 | - token = "Bearer " + token; | ||
| 874 | - | ||
| 875 | - String param = JSON.toJSON(new HashMap<>()).toString(); | 885 | + String param = JSON.toJSON(map).toString(); |
| 876 | 886 | ||
| 877 | RequestBody body = RequestBody.create(MediaType.parse("application/json"), param); | 887 | RequestBody body = RequestBody.create(MediaType.parse("application/json"), param); |
| 878 | 888 |
trash-framework/src/main/java/com/trash/framework/web/service/SysLoginService.java
| @@ -31,8 +31,10 @@ import org.springframework.stereotype.Component; | @@ -31,8 +31,10 @@ import org.springframework.stereotype.Component; | ||
| 31 | 31 | ||
| 32 | import javax.annotation.Resource; | 32 | import javax.annotation.Resource; |
| 33 | import java.util.ArrayList; | 33 | import java.util.ArrayList; |
| 34 | +import java.util.HashMap; | ||
| 34 | import java.util.HashSet; | 35 | import java.util.HashSet; |
| 35 | import java.util.List; | 36 | import java.util.List; |
| 37 | +import java.util.Map; | ||
| 36 | import java.util.Set; | 38 | import java.util.Set; |
| 37 | 39 | ||
| 38 | /** | 40 | /** |
| @@ -41,264 +43,288 @@ import java.util.Set; | @@ -41,264 +43,288 @@ import java.util.Set; | ||
| 41 | * @author trash | 43 | * @author trash |
| 42 | */ | 44 | */ |
| 43 | @Component | 45 | @Component |
| 44 | -public class SysLoginService | ||
| 45 | -{ | ||
| 46 | - @Autowired | ||
| 47 | - private TokenService tokenService; | 46 | +public class SysLoginService { |
| 47 | + @Autowired | ||
| 48 | + private TokenService tokenService; | ||
| 48 | 49 | ||
| 49 | - @Resource | ||
| 50 | - private AuthenticationManager authenticationManager; | 50 | + @Resource |
| 51 | + private AuthenticationManager authenticationManager; | ||
| 51 | 52 | ||
| 52 | - @Autowired | ||
| 53 | - private RedisCache redisCache; | ||
| 54 | - | ||
| 55 | - @Autowired | ||
| 56 | - UserDetailsService UserDetailsService; | 53 | + @Autowired |
| 54 | + private RedisCache redisCache; | ||
| 57 | 55 | ||
| 58 | - @Autowired | 56 | + @Autowired |
| 57 | + UserDetailsService UserDetailsService; | ||
| 58 | + | ||
| 59 | + @Autowired | ||
| 59 | SysTempMapper tempMapper; | 60 | SysTempMapper tempMapper; |
| 60 | - | ||
| 61 | - /** | ||
| 62 | - * 登录验证 | ||
| 63 | - * | ||
| 64 | - * @param username 用户名 | ||
| 65 | - * @param password 密码 | ||
| 66 | - * @param code 验证码 | ||
| 67 | - * @param uuid 唯一标识 | ||
| 68 | - * @return 结果 | ||
| 69 | - */ | ||
| 70 | - public String login(String username, String password, String code, String uuid) | ||
| 71 | - { | ||
| 72 | - String verifyKey = Constants.CAPTCHA_CODE_KEY + uuid; | ||
| 73 | - String captcha = redisCache.getCacheObject(verifyKey); | ||
| 74 | - redisCache.deleteObject(verifyKey); | ||
| 75 | - if (captcha == null) | ||
| 76 | - { | ||
| 77 | - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire"))); | ||
| 78 | - throw new CaptchaExpireException(); | ||
| 79 | - } | ||
| 80 | - if (!code.equalsIgnoreCase(captcha)) | ||
| 81 | - { | ||
| 82 | - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error"))); | ||
| 83 | - throw new CaptchaException(); | ||
| 84 | - } | ||
| 85 | - // 用户验证 | ||
| 86 | - Authentication authentication = null; | ||
| 87 | - try | ||
| 88 | - { | ||
| 89 | - // 该方法会去调用UserDetailsServiceImpl.loadUserByUsername | ||
| 90 | - authentication = authenticationManager | ||
| 91 | - .authenticate(new UsernamePasswordAuthenticationToken(username, password)); | ||
| 92 | - } | ||
| 93 | - catch (Exception e) | ||
| 94 | - { | ||
| 95 | - if (e instanceof BadCredentialsException) | ||
| 96 | - { | ||
| 97 | - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.password.not.match"))); | ||
| 98 | - throw new UserPasswordNotMatchException(); | ||
| 99 | - } | ||
| 100 | - else | ||
| 101 | - { | ||
| 102 | - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage())); | ||
| 103 | - throw new CustomException(e.getMessage()); | ||
| 104 | - } | ||
| 105 | - } | ||
| 106 | - | ||
| 107 | - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"))); | ||
| 108 | - LoginUser loginUser = (LoginUser) authentication.getPrincipal(); | ||
| 109 | - // 生成token | ||
| 110 | - return tokenService.createToken(loginUser); | ||
| 111 | - } | ||
| 112 | - | ||
| 113 | - | ||
| 114 | - | ||
| 115 | - public final String LOGIN_URL = "/api/authservice/cs/thirdpart/user"; //登录地址 待配置 | ||
| 116 | - | ||
| 117 | - public LoginUser loginByRemote(String token) | ||
| 118 | - { | ||
| 119 | - OkHttpClient okHttpClient = RemoteServerUtils.getOkClient(); | ||
| 120 | - | ||
| 121 | - JSONObject userJson = null; | ||
| 122 | - | ||
| 123 | - if(!token.contains("Bearer ")){ | ||
| 124 | - token = "Bearer "+ token; | ||
| 125 | - } | ||
| 126 | - | ||
| 127 | - Request request = new Request.Builder().url(RemoteServerUtils.remote + LOGIN_URL).addHeader("Authorization",token).get().build(); | ||
| 128 | - | ||
| 129 | - try { | ||
| 130 | - okhttp3.Response response = okHttpClient.newCall(request).execute(); | ||
| 131 | - String result = response.body().string(); | ||
| 132 | - | ||
| 133 | - if(result != null){ | ||
| 134 | - JSONObject json = JSON.parseObject(result); | ||
| 135 | - if("success".equals(json.getString("message"))){ | ||
| 136 | - userJson = json.getJSONObject("result"); | ||
| 137 | - } | ||
| 138 | - }else{ | ||
| 139 | - return null; | ||
| 140 | - } | ||
| 141 | - | ||
| 142 | - }catch (Exception e) { | ||
| 143 | - e.printStackTrace(); | ||
| 144 | - return null; | 61 | + |
| 62 | + /** | ||
| 63 | + * 登录验证 | ||
| 64 | + * | ||
| 65 | + * @param username | ||
| 66 | + * 用户名 | ||
| 67 | + * @param password | ||
| 68 | + * 密码 | ||
| 69 | + * @param code | ||
| 70 | + * 验证码 | ||
| 71 | + * @param uuid | ||
| 72 | + * 唯一标识 | ||
| 73 | + * @return 结果 | ||
| 74 | + */ | ||
| 75 | + public String login(String username, String password, String code, String uuid) { | ||
| 76 | + String verifyKey = Constants.CAPTCHA_CODE_KEY + uuid; | ||
| 77 | + String captcha = redisCache.getCacheObject(verifyKey); | ||
| 78 | + redisCache.deleteObject(verifyKey); | ||
| 79 | + if (captcha == null) { | ||
| 80 | + AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, | ||
| 81 | + MessageUtils.message("user.jcaptcha.expire"))); | ||
| 82 | + throw new CaptchaExpireException(); | ||
| 83 | + } | ||
| 84 | + if (!code.equalsIgnoreCase(captcha)) { | ||
| 85 | + AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, | ||
| 86 | + MessageUtils.message("user.jcaptcha.error"))); | ||
| 87 | + throw new CaptchaException(); | ||
| 88 | + } | ||
| 89 | + // 用户验证 | ||
| 90 | + Authentication authentication = null; | ||
| 91 | + try { | ||
| 92 | + // 该方法会去调用UserDetailsServiceImpl.loadUserByUsername | ||
| 93 | + authentication = authenticationManager | ||
| 94 | + .authenticate(new UsernamePasswordAuthenticationToken(username, password)); | ||
| 95 | + } catch (Exception e) { | ||
| 96 | + if (e instanceof BadCredentialsException) { | ||
| 97 | + AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, | ||
| 98 | + MessageUtils.message("user.password.not.match"))); | ||
| 99 | + throw new UserPasswordNotMatchException(); | ||
| 100 | + } else { | ||
| 101 | + AsyncManager.me() | ||
| 102 | + .execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage())); | ||
| 103 | + throw new CustomException(e.getMessage()); | ||
| 104 | + } | ||
| 105 | + } | ||
| 106 | + | ||
| 107 | + AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, | ||
| 108 | + MessageUtils.message("user.login.success"))); | ||
| 109 | + LoginUser loginUser = (LoginUser) authentication.getPrincipal(); | ||
| 110 | + // 生成token | ||
| 111 | + return tokenService.createToken(loginUser); | ||
| 112 | + } | ||
| 113 | + | ||
| 114 | + public final String LOGIN_URL = "/api/authservice/cs/thirdpart/user"; // 登录地址 | ||
| 115 | + // 待配置 | ||
| 116 | + | ||
| 117 | + public LoginUser loginByRemote(String token) { | ||
| 118 | + OkHttpClient okHttpClient = RemoteServerUtils.getOkClient(); | ||
| 119 | + | ||
| 120 | + JSONObject userJson = null; | ||
| 121 | + | ||
| 122 | + if (!token.contains("Bearer ")) { | ||
| 123 | + token = "Bearer " + token; | ||
| 124 | + } | ||
| 125 | + | ||
| 126 | + Request request = new Request.Builder().url(RemoteServerUtils.remote + LOGIN_URL) | ||
| 127 | + .addHeader("Authorization", token).get().build(); | ||
| 128 | + | ||
| 129 | + try { | ||
| 130 | + okhttp3.Response response = okHttpClient.newCall(request).execute(); | ||
| 131 | + String result = response.body().string(); | ||
| 132 | + | ||
| 133 | + if (result != null) { | ||
| 134 | + JSONObject json = JSON.parseObject(result); | ||
| 135 | + if ("success".equals(json.getString("message"))) { | ||
| 136 | + userJson = json.getJSONObject("result"); | ||
| 137 | + } | ||
| 138 | + } else { | ||
| 139 | + return null; | ||
| 140 | + } | ||
| 141 | + | ||
| 142 | + } catch (Exception e) { | ||
| 143 | + e.printStackTrace(); | ||
| 144 | + return null; | ||
| 145 | + } | ||
| 146 | + | ||
| 147 | + if (userJson == null) { | ||
| 148 | + return null; | ||
| 145 | } | 149 | } |
| 146 | - | ||
| 147 | - if(userJson == null){ | ||
| 148 | - return null; | ||
| 149 | - } | ||
| 150 | - | ||
| 151 | - LoginUser loginUser = new LoginUser(); | ||
| 152 | - | ||
| 153 | - ArrayList<SimpleGrantedAuthority> authorities = new ArrayList<SimpleGrantedAuthority>(); | ||
| 154 | - SimpleGrantedAuthority activitiUser = new SimpleGrantedAuthority("ROLE_ACTIVITI_USER"); | ||
| 155 | - SimpleGrantedAuthority admin = new SimpleGrantedAuthority("admin"); | ||
| 156 | - authorities.add(activitiUser); | ||
| 157 | - authorities.add(admin); | ||
| 158 | - loginUser.setAuthorities(authorities); | ||
| 159 | - | ||
| 160 | - Set<String> set = new HashSet<String>(); | ||
| 161 | - | ||
| 162 | - SysUser user = new SysUser(); | ||
| 163 | - user.setUserId(userJson.getString("id")); | ||
| 164 | - user.setUserName(userJson.getString("name")); | ||
| 165 | - user.setNickName(userJson.getString("name")); | ||
| 166 | - user.setPassword(userJson.getString("id")); | ||
| 167 | - SysDept dept = new SysDept(); | ||
| 168 | - | ||
| 169 | - if(userJson.getJSONArray("userIdentityList")!=null){ | ||
| 170 | - | ||
| 171 | - List<String> poStrings = new ArrayList<String>(); | ||
| 172 | - | ||
| 173 | - List<String> rolStrings = new ArrayList<String>(); | ||
| 174 | - | ||
| 175 | - try { | ||
| 176 | - | ||
| 177 | - for(Object obj:userJson.getJSONArray("userIdentityList")){ | ||
| 178 | - | ||
| 179 | - JSONObject uId = (JSONObject)obj; | ||
| 180 | - | ||
| 181 | - poStrings.add(uId.getString("postType")); | ||
| 182 | - | ||
| 183 | - rolStrings.add(uId.getString("departmentType")); | ||
| 184 | - | ||
| 185 | - | ||
| 186 | - } | ||
| 187 | - | ||
| 188 | - user.setPostIds(poStrings); | ||
| 189 | - | ||
| 190 | - user.setRoleIds(rolStrings); | ||
| 191 | - | ||
| 192 | - | ||
| 193 | - } catch (Exception e) { | ||
| 194 | - // TODO: handle exception | ||
| 195 | - } | ||
| 196 | - | ||
| 197 | - | ||
| 198 | - | ||
| 199 | - } | ||
| 200 | - | ||
| 201 | - JSONArray compnayList = redisCache.getCacheObject("companyList"); | ||
| 202 | - | ||
| 203 | - if(compnayList == null){ | ||
| 204 | - | ||
| 205 | - compnayList = JSONArray.parseArray(tempMapper.getLocalData("companyList")); | ||
| 206 | - } | ||
| 207 | - for(Object obj:compnayList){ | ||
| 208 | - JSONObject con = (JSONObject)(obj); | ||
| 209 | - | ||
| 210 | - | ||
| 211 | - if(con.getString("abbreviation").equals(user.getUserName().replace("公司", ""))){ | ||
| 212 | - user.setCompanyName(con.getString("name")); | ||
| 213 | - user.setUserName(con.getString("abbreviation")); | ||
| 214 | - user.setNickName(con.getString("abbreviation")); | ||
| 215 | - break; | ||
| 216 | - } | ||
| 217 | - | ||
| 218 | - } | ||
| 219 | - | ||
| 220 | - | ||
| 221 | - | ||
| 222 | - | ||
| 223 | - | ||
| 224 | - JSONArray jsonArray = (JSONArray)RemoteServerUtils.getAuth(token); | ||
| 225 | - if(jsonArray != null){ | ||
| 226 | - for(Object obj:jsonArray){ | ||
| 227 | - JSONObject json = (JSONObject)obj; | ||
| 228 | - if(json.getInteger("sourceType") == 2){ | ||
| 229 | - if(json.getJSONArray("sourceIds") != null){ | ||
| 230 | - List<String> tIds = json.getJSONArray("sourceIds").toJavaList(String.class); | ||
| 231 | - user.setTruckList(tIds); | ||
| 232 | - } | ||
| 233 | - if(json.getJSONArray("companyIds") != null){ | ||
| 234 | - List<String> companyIds = json.getJSONArray("companyIds").toJavaList(String.class); | ||
| 235 | - user.setCompanyIds(companyIds); | ||
| 236 | - } | ||
| 237 | - | ||
| 238 | - if(json.getJSONArray("adCodes") != null){ | ||
| 239 | - List<String> areas = json.getJSONArray("adCodes").toJavaList(String.class); | ||
| 240 | - user.setCompanyAreas(areas); | ||
| 241 | - } | ||
| 242 | - }else if(json.getInteger("sourceType") == 3){ | ||
| 243 | - if(json.getJSONArray("sourceIds") != null){ | ||
| 244 | - List<String> companyIds = json.getJSONArray("sourceIds").toJavaList(String.class); | ||
| 245 | - user.setConList(companyIds); | ||
| 246 | - } | ||
| 247 | - if(json.getJSONArray("adCodes") != null){ | ||
| 248 | - List<String> areas = json.getJSONArray("adCodes").toJavaList(String.class); | ||
| 249 | - user.setConAreas(areas); | ||
| 250 | - } | ||
| 251 | - }else if(json.getInteger("sourceType") == 4){ | ||
| 252 | - if(json.getJSONArray("sourceIds") != null){ | ||
| 253 | - List<String> companyIds = json.getJSONArray("sourceIds").toJavaList(String.class); | ||
| 254 | - user.setEarthList(companyIds); | ||
| 255 | - } | ||
| 256 | - if(json.getJSONArray("adCodes") != null){ | ||
| 257 | - List<String> areas = json.getJSONArray("adCodes").toJavaList(String.class); | ||
| 258 | - user.setEarthAreas(areas); | ||
| 259 | - } | ||
| 260 | - } | ||
| 261 | - } | ||
| 262 | - } | ||
| 263 | - | ||
| 264 | - | ||
| 265 | - | ||
| 266 | - dept.setDeptName(userJson.getString("orgName")); | ||
| 267 | - | ||
| 268 | - user.setDept(dept); | ||
| 269 | - | ||
| 270 | - user.setAvatar(RemoteServerUtils.remote + userJson.getString("elecSignaturePath")); | ||
| 271 | - | ||
| 272 | - loginUser.setUser(user); | ||
| 273 | - | ||
| 274 | - | ||
| 275 | - set.add("*:*:*");//测试直接给admin | ||
| 276 | - | ||
| 277 | - for(Object object:userJson.getJSONArray("menus")){ | ||
| 278 | - JSONObject menu = (JSONObject) object; | ||
| 279 | - | ||
| 280 | - set.add(menu.getString("code")); | ||
| 281 | - } | ||
| 282 | - | ||
| 283 | - | ||
| 284 | - SysRole role = new SysRole(); | ||
| 285 | - | ||
| 286 | - role.setRoleKey("admin"); | ||
| 287 | - | ||
| 288 | - ArrayList<SysRole> roles = new ArrayList<SysRole>(); | ||
| 289 | - | ||
| 290 | - roles.add(role); | ||
| 291 | - | ||
| 292 | - user.setRoles(roles); | ||
| 293 | - | ||
| 294 | - token = token.replace("Bearer ", "").replace("auth:token:", ""); | ||
| 295 | - | ||
| 296 | - loginUser.setPermissions(set); | ||
| 297 | - | ||
| 298 | - loginUser.setToken(token); | ||
| 299 | - tokenService.refreshToken(loginUser); | ||
| 300 | - | ||
| 301 | - // 生成token | ||
| 302 | - return loginUser; | ||
| 303 | - } | 150 | + |
| 151 | + LoginUser loginUser = new LoginUser(); | ||
| 152 | + | ||
| 153 | + ArrayList<SimpleGrantedAuthority> authorities = new ArrayList<SimpleGrantedAuthority>(); | ||
| 154 | + SimpleGrantedAuthority activitiUser = new SimpleGrantedAuthority("ROLE_ACTIVITI_USER"); | ||
| 155 | + SimpleGrantedAuthority admin = new SimpleGrantedAuthority("admin"); | ||
| 156 | + authorities.add(activitiUser); | ||
| 157 | + authorities.add(admin); | ||
| 158 | + loginUser.setAuthorities(authorities); | ||
| 159 | + | ||
| 160 | + Set<String> set = new HashSet<String>(); | ||
| 161 | + | ||
| 162 | + SysUser user = new SysUser(); | ||
| 163 | + user.setUserId(userJson.getString("id")); | ||
| 164 | + user.setUserName(userJson.getString("name")); | ||
| 165 | + user.setNickName(userJson.getString("name")); | ||
| 166 | + user.setPassword(userJson.getString("id")); | ||
| 167 | + SysDept dept = new SysDept(); | ||
| 168 | + | ||
| 169 | + if (userJson.getJSONArray("userIdentityList") != null) { | ||
| 170 | + | ||
| 171 | + List<String> poStrings = new ArrayList<String>(); | ||
| 172 | + | ||
| 173 | + List<String> rolStrings = new ArrayList<String>(); | ||
| 174 | + | ||
| 175 | + try { | ||
| 176 | + | ||
| 177 | + for (Object obj : userJson.getJSONArray("userIdentityList")) { | ||
| 178 | + | ||
| 179 | + JSONObject uId = (JSONObject) obj; | ||
| 180 | + | ||
| 181 | + poStrings.add(uId.getString("postType")); | ||
| 182 | + | ||
| 183 | + rolStrings.add(uId.getString("departmentType")); | ||
| 184 | + | ||
| 185 | + } | ||
| 186 | + | ||
| 187 | + user.setPostIds(poStrings); | ||
| 188 | + | ||
| 189 | + user.setRoleIds(rolStrings); | ||
| 190 | + | ||
| 191 | + } catch (Exception e) { | ||
| 192 | + // TODO: handle exception | ||
| 193 | + } | ||
| 194 | + | ||
| 195 | + } | ||
| 196 | + | ||
| 197 | + JSONArray compnayList = redisCache.getCacheObject("companyList"); | ||
| 198 | + | ||
| 199 | + if (compnayList == null) { | ||
| 200 | + compnayList = JSONArray.parseArray(tempMapper.getLocalData("companyList")); | ||
| 201 | + } | ||
| 202 | + for (Object obj : compnayList) { | ||
| 203 | + JSONObject con = (JSONObject) (obj); | ||
| 204 | + | ||
| 205 | + if (con.getString("abbreviation").equals(user.getUserName().replace("公司", ""))) { | ||
| 206 | + user.setCompanyName(con.getString("name")); | ||
| 207 | + user.setUserName(con.getString("abbreviation")); | ||
| 208 | + user.setNickName(con.getString("abbreviation")); | ||
| 209 | + break; | ||
| 210 | + } | ||
| 211 | + | ||
| 212 | + } | ||
| 213 | + | ||
| 214 | + JSONArray jsonArray = (JSONArray) RemoteServerUtils.getAuth(token); | ||
| 215 | + | ||
| 216 | + JSONArray streets = (JSONArray) RemoteServerUtils.getStreets(token); | ||
| 217 | + | ||
| 218 | + Map<String, List<String>> streetsMap = new HashMap<String, List<String>>(); | ||
| 219 | + | ||
| 220 | + for(Object obj:streets){ | ||
| 221 | + JSONObject jsonObject = (JSONObject) obj; | ||
| 222 | + if(jsonObject.getString("level").equals("3")){ | ||
| 223 | + streetsMap.put(jsonObject.getString("id"), new ArrayList<>()); | ||
| 224 | + } | ||
| 225 | + } | ||
| 226 | + | ||
| 227 | + for(Object obj:streets){ | ||
| 228 | + JSONObject jsonObject = (JSONObject) obj; | ||
| 229 | + if(jsonObject.getString("level").equals("4")){ | ||
| 230 | + streetsMap.get(jsonObject.getString("pid")).add(jsonObject.getString("id")); | ||
| 231 | + } | ||
| 232 | + } | ||
| 233 | + | ||
| 234 | + if (jsonArray != null) { | ||
| 235 | + | ||
| 236 | + | ||
| 237 | + if(user.getStreetsList() == null){ | ||
| 238 | + user.setStreetsList(new ArrayList<>()); | ||
| 239 | + } | ||
| 240 | + | ||
| 241 | + for (Object obj : jsonArray) { | ||
| 242 | + JSONObject json = (JSONObject) obj; | ||
| 243 | + if (json.getInteger("sourceType") == 2) { | ||
| 244 | + if (json.getJSONArray("sourceIds") != null) { | ||
| 245 | + List<String> tIds = json.getJSONArray("sourceIds").toJavaList(String.class); | ||
| 246 | + user.setTruckList(tIds); | ||
| 247 | + } | ||
| 248 | + if (json.getJSONArray("companyIds") != null) { | ||
| 249 | + List<String> companyIds = json.getJSONArray("companyIds").toJavaList(String.class); | ||
| 250 | + user.setCompanyIds(companyIds); | ||
| 251 | + } | ||
| 252 | + | ||
| 253 | + if (json.getJSONArray("adCodes") != null) { | ||
| 254 | + List<String> areas = json.getJSONArray("adCodes").toJavaList(String.class); | ||
| 255 | + user.setCompanyAreas(areas); | ||
| 256 | + } | ||
| 257 | + } else if (json.getInteger("sourceType") == 3) { | ||
| 258 | + if (json.getJSONArray("sourceIds") != null) { | ||
| 259 | + List<String> companyIds = json.getJSONArray("sourceIds").toJavaList(String.class); | ||
| 260 | + user.setConList(companyIds); | ||
| 261 | + } | ||
| 262 | + if (json.getJSONArray("adCodes") != null) { | ||
| 263 | + List<String> areas = json.getJSONArray("adCodes").toJavaList(String.class); | ||
| 264 | + user.setConAreas(areas); | ||
| 265 | + } | ||
| 266 | + } else if (json.getInteger("sourceType") == 4) { | ||
| 267 | + if (json.getJSONArray("sourceIds") != null) { | ||
| 268 | + List<String> companyIds = json.getJSONArray("sourceIds").toJavaList(String.class); | ||
| 269 | + user.setEarthList(companyIds); | ||
| 270 | + } | ||
| 271 | + if (json.getJSONArray("adCodes") != null) { | ||
| 272 | + List<String> areas = json.getJSONArray("adCodes").toJavaList(String.class); | ||
| 273 | + user.setEarthAreas(areas); | ||
| 274 | + } | ||
| 275 | + } else if (json.getInteger("sourceType") == 6) { | ||
| 276 | + if (json.getJSONArray("sourceIds") != null) { | ||
| 277 | + List<String> companyIds = json.getJSONArray("sourceIds").toJavaList(String.class); | ||
| 278 | + | ||
| 279 | + user.getStreetsList().addAll(companyIds); | ||
| 280 | + | ||
| 281 | + } | ||
| 282 | + if (json.getJSONArray("adCodes") != null) { | ||
| 283 | + List<String> areas = json.getJSONArray("adCodes").toJavaList(String.class); | ||
| 284 | + for(String str:areas){ | ||
| 285 | + if(streetsMap.get(str) == null) | ||
| 286 | + continue; | ||
| 287 | + user.getStreetsList().addAll(streetsMap.get(str)); | ||
| 288 | + } | ||
| 289 | + } | ||
| 290 | + } | ||
| 291 | + } | ||
| 292 | + } | ||
| 293 | + | ||
| 294 | + dept.setDeptName(userJson.getString("orgName")); | ||
| 295 | + | ||
| 296 | + user.setDept(dept); | ||
| 297 | + | ||
| 298 | + user.setAvatar(RemoteServerUtils.remote + userJson.getString("elecSignaturePath")); | ||
| 299 | + | ||
| 300 | + loginUser.setUser(user); | ||
| 301 | + | ||
| 302 | + set.add("*:*:*");// 测试直接给admin | ||
| 303 | + | ||
| 304 | + for (Object object : userJson.getJSONArray("menus")) { | ||
| 305 | + JSONObject menu = (JSONObject) object; | ||
| 306 | + | ||
| 307 | + set.add(menu.getString("code")); | ||
| 308 | + } | ||
| 309 | + | ||
| 310 | + SysRole role = new SysRole(); | ||
| 311 | + | ||
| 312 | + role.setRoleKey("admin"); | ||
| 313 | + | ||
| 314 | + ArrayList<SysRole> roles = new ArrayList<SysRole>(); | ||
| 315 | + | ||
| 316 | + roles.add(role); | ||
| 317 | + | ||
| 318 | + user.setRoles(roles); | ||
| 319 | + | ||
| 320 | + token = token.replace("Bearer ", "").replace("auth:token:", ""); | ||
| 321 | + | ||
| 322 | + loginUser.setPermissions(set); | ||
| 323 | + | ||
| 324 | + loginUser.setToken(token); | ||
| 325 | + tokenService.refreshToken(loginUser); | ||
| 326 | + | ||
| 327 | + // 生成token | ||
| 328 | + return loginUser; | ||
| 329 | + } | ||
| 304 | } | 330 | } |
trash-quartz/src/main/java/com/trash/quartz/task/DriverTask.java
| @@ -603,8 +603,11 @@ public class DriverTask { | @@ -603,8 +603,11 @@ public class DriverTask { | ||
| 603 | if (TOKEN == null) { | 603 | if (TOKEN == null) { |
| 604 | TOKEN = trashConfig.getToken(); | 604 | TOKEN = trashConfig.getToken(); |
| 605 | } | 605 | } |
| 606 | - | ||
| 607 | - JSONArray drivers = RemoteServerUtils.getDriverList(TOKEN); | 606 | + |
| 607 | + Map map = new HashMap<>(); | ||
| 608 | + map.put("size", "99999"); | ||
| 609 | + map.put("page", "1"); | ||
| 610 | + JSONArray drivers = RemoteServerUtils.getDriverList(TOKEN,map); | ||
| 608 | 611 | ||
| 609 | for (Object object : drivers) { | 612 | for (Object object : drivers) { |
| 610 | 613 | ||
| @@ -640,7 +643,7 @@ public class DriverTask { | @@ -640,7 +643,7 @@ public class DriverTask { | ||
| 640 | 643 | ||
| 641 | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); | 644 | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| 642 | Map map = new HashMap<>(); | 645 | Map map = new HashMap<>(); |
| 643 | - map.put("size", 9999); | 646 | + map.put("size", 99999); |
| 644 | map.put("valid", 0); | 647 | map.put("valid", 0); |
| 645 | map.put("page", 1); | 648 | map.put("page", 1); |
| 646 | 649 | ||
| @@ -713,7 +716,7 @@ public class DriverTask { | @@ -713,7 +716,7 @@ public class DriverTask { | ||
| 713 | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); | 716 | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| 714 | 717 | ||
| 715 | Map map = new HashMap<>(); | 718 | Map map = new HashMap<>(); |
| 716 | - map.put("size", 9999); | 719 | + map.put("size", 99999); |
| 717 | map.put("page", 1); | 720 | map.put("page", 1); |
| 718 | 721 | ||
| 719 | JSONArray companys = RemoteServerUtils.getCompanyList(map, TOKEN); | 722 | JSONArray companys = RemoteServerUtils.getCompanyList(map, TOKEN); |
trash-ui/dist.7z
No preview for this file type
trash-ui/src/api/dayWorkReport.js
| @@ -218,7 +218,7 @@ export default { | @@ -218,7 +218,7 @@ export default { | ||
| 218 | var size = this.queryParams.pageSize; | 218 | var size = this.queryParams.pageSize; |
| 219 | 219 | ||
| 220 | this.queryParams.page = 1; | 220 | this.queryParams.page = 1; |
| 221 | - this.queryParams.pageSize = 9999; | 221 | + this.queryParams.pageSize = 999999; |
| 222 | 222 | ||
| 223 | if (this.queryParams.timeRange) { | 223 | if (this.queryParams.timeRange) { |
| 224 | this.queryParams.workStartTime = this.queryParams.timeRange[0]; | 224 | this.queryParams.workStartTime = this.queryParams.timeRange[0]; |
trash-ui/src/api/dict.js
| 1 | import requestRemote from '@/utils/requestRemote' | 1 | import requestRemote from '@/utils/requestRemote' |
| 2 | - | 2 | + |
| 3 | export function getTruckList(params) { | 3 | export function getTruckList(params) { |
| 4 | return requestRemote({ | 4 | return requestRemote({ |
| 5 | url: ' /api/gpsservice/cs/basevehicle/simplelist', | 5 | url: ' /api/gpsservice/cs/basevehicle/simplelist', |
| 6 | - method: 'get', | 6 | + method: 'get', |
| 7 | params:params | 7 | params:params |
| 8 | }); | 8 | }); |
| 9 | -} | ||
| 10 | -//license/ 先留一下免得又改 | 9 | +} |
| 10 | +//license/ 先留一下免得又改 | ||
| 11 | export function constructionLicenseById(id) { | 11 | export function constructionLicenseById(id) { |
| 12 | return requestRemote({ | 12 | return requestRemote({ |
| 13 | url: '/api/siteservice/cs/constructionsites/'+id, | 13 | url: '/api/siteservice/cs/constructionsites/'+id, |
| 14 | method: 'get', | 14 | method: 'get', |
| 15 | }); | 15 | }); |
| 16 | } | 16 | } |
| 17 | - | 17 | + |
| 18 | 18 | ||
| 19 | export function constructionById(id) { | 19 | export function constructionById(id) { |
| 20 | return requestRemote({ | 20 | return requestRemote({ |
| @@ -58,23 +58,23 @@ export function earthsitesList(data) { | @@ -58,23 +58,23 @@ export function earthsitesList(data) { | ||
| 58 | method: 'post', | 58 | method: 'post', |
| 59 | data: data | 59 | data: data |
| 60 | }); | 60 | }); |
| 61 | -} | ||
| 62 | - | 61 | +} |
| 62 | + | ||
| 63 | export function constructionsitesLedgerList(data) { | 63 | export function constructionsitesLedgerList(data) { |
| 64 | return requestRemote({ | 64 | return requestRemote({ |
| 65 | url: '/api/siteservice/cs/constructionsites/ledger/list', | 65 | url: '/api/siteservice/cs/constructionsites/ledger/list', |
| 66 | method: 'post', | 66 | method: 'post', |
| 67 | data: data | 67 | data: data |
| 68 | }); | 68 | }); |
| 69 | -} | ||
| 70 | - | 69 | +} |
| 70 | + | ||
| 71 | export function earthsitesLedgerList(data) { | 71 | export function earthsitesLedgerList(data) { |
| 72 | return requestRemote({ | 72 | return requestRemote({ |
| 73 | url: '/api/siteservice/cs/earthsites/ledger/list', | 73 | url: '/api/siteservice/cs/earthsites/ledger/list', |
| 74 | method: 'post', | 74 | method: 'post', |
| 75 | data: data | 75 | data: data |
| 76 | }); | 76 | }); |
| 77 | -} | 77 | +} |
| 78 | 78 | ||
| 79 | export function updateEarthsites(data) { | 79 | export function updateEarthsites(data) { |
| 80 | return requestRemote({ | 80 | return requestRemote({ |
| @@ -83,7 +83,7 @@ export function updateEarthsites(data) { | @@ -83,7 +83,7 @@ export function updateEarthsites(data) { | ||
| 83 | data: data | 83 | data: data |
| 84 | }); | 84 | }); |
| 85 | } | 85 | } |
| 86 | - | 86 | + |
| 87 | 87 | ||
| 88 | export function companyList(data) { | 88 | export function companyList(data) { |
| 89 | return requestRemote({ | 89 | return requestRemote({ |
| @@ -142,14 +142,14 @@ export function getConstructionTruck(id) { | @@ -142,14 +142,14 @@ export function getConstructionTruck(id) { | ||
| 142 | url: '/api/siteservice/cs/unitetransport/bysite/' + id, | 142 | url: '/api/siteservice/cs/unitetransport/bysite/' + id, |
| 143 | method: 'get', | 143 | method: 'get', |
| 144 | }); | 144 | }); |
| 145 | -} | 145 | +} |
| 146 | 146 | ||
| 147 | export function getTruckInfo(id) { | 147 | export function getTruckInfo(id) { |
| 148 | return requestRemote({ | 148 | return requestRemote({ |
| 149 | url: '/api/gpsservice/cs/basevehicle/' + id, | 149 | url: '/api/gpsservice/cs/basevehicle/' + id, |
| 150 | method: 'get', | 150 | method: 'get', |
| 151 | }); | 151 | }); |
| 152 | -} | 152 | +} |
| 153 | 153 | ||
| 154 | export function getCompanyInfo(id) { | 154 | export function getCompanyInfo(id) { |
| 155 | return requestRemote({ | 155 | return requestRemote({ |
| @@ -179,15 +179,15 @@ export function getUsers(data){ | @@ -179,15 +179,15 @@ export function getUsers(data){ | ||
| 179 | method: 'post', | 179 | method: 'post', |
| 180 | data:data | 180 | data:data |
| 181 | }) | 181 | }) |
| 182 | -} | 182 | +} |
| 183 | 183 | ||
| 184 | export function getAuth() { | 184 | export function getAuth() { |
| 185 | return requestRemote({ | 185 | return requestRemote({ |
| 186 | url: '/api/gpsservice/cs/authority', | 186 | url: '/api/gpsservice/cs/authority', |
| 187 | method: 'get', | 187 | method: 'get', |
| 188 | }); | 188 | }); |
| 189 | -} | ||
| 190 | - | 189 | +} |
| 190 | + | ||
| 191 | 191 | ||
| 192 | 192 | ||
| 193 | export function getDict(params) { | 193 | export function getDict(params) { |
| @@ -205,3 +205,20 @@ export function getSupervision(params) { | @@ -205,3 +205,20 @@ export function getSupervision(params) { | ||
| 205 | params: params | 205 | params: params |
| 206 | }); | 206 | }); |
| 207 | } | 207 | } |
| 208 | + | ||
| 209 | +/** | ||
| 210 | + * 投放点获取区域数据 | ||
| 211 | + */ | ||
| 212 | +export function getAreaList() { | ||
| 213 | + return requestRemote({ | ||
| 214 | + url: '/api/siteservice/v1/sites/tree/auth?type=4', | ||
| 215 | + method: 'get' | ||
| 216 | + }); | ||
| 217 | +} | ||
| 218 | + | ||
| 219 | +export function getAreasList() { | ||
| 220 | + return requestRemote({ | ||
| 221 | + url: '/api/gisservice/v2/jurisdictions/areas?dict=1', | ||
| 222 | + method: 'get' | ||
| 223 | + }); | ||
| 224 | +} |
trash-ui/src/api/taskmethod.js
| 1 | -import {formDataSave, formDataShow, listTask,getNames} from "@/api/activiti/task"; | ||
| 2 | - | ||
| 3 | -import {historyFromData} from '@/api/activiti/historyFormdata' | ||
| 4 | -import {addSign, getSignByObjId} from "@/api/sign/sign"; | ||
| 5 | -import {updateCaseOffline} from "@/api/caseOffline/caseOffline"; | ||
| 6 | -import {updateViolationCaseFileReader} from "@/api/casefile/violationCaseFile"; | ||
| 7 | -import {updateViolationCaseFileReader1} from "@/api/casefile/violationWarningInformation"; | ||
| 8 | -import {getDict, getSupervision, getUsers} from "@/api/dict"; | ||
| 9 | -import {activeThreestep} from "@/api/business/threestep"; | ||
| 10 | -import {getToken} from "@/utils/auth"; | ||
| 11 | -import {addReplyApprovalProcess} from "@/api/casefile/replyApprovalProcess"; | 1 | +import {formDataSave, formDataShow, listTask,getNames} from "@/api/activiti/task"; |
| 2 | + | ||
| 3 | +import {historyFromData} from '@/api/activiti/historyFormdata' | ||
| 4 | +import {addSign, getSignByObjId} from "@/api/sign/sign"; | ||
| 5 | +import {updateCaseOffline} from "@/api/caseOffline/caseOffline"; | ||
| 6 | +import {updateViolationCaseFileReader} from "@/api/casefile/violationCaseFile"; | ||
| 7 | +import {updateViolationCaseFileReader1} from "@/api/casefile/violationWarningInformation"; | ||
| 8 | +import {getDict, getSupervision, getUsers} from "@/api/dict"; | ||
| 9 | +import {activeThreestep} from "@/api/business/threestep"; | ||
| 10 | +import {getToken} from "@/utils/auth"; | ||
| 11 | +import {addReplyApprovalProcess} from "@/api/casefile/replyApprovalProcess"; | ||
| 12 | import {updateHandleAffairs} from "@/api/office/handle"; | 12 | import {updateHandleAffairs} from "@/api/office/handle"; |
| 13 | import { listTrack, getTrack} from "@/api/business/track"; | 13 | import { listTrack, getTrack} from "@/api/business/track"; |
| 14 | 14 | ||
| @@ -155,6 +155,7 @@ export default { | @@ -155,6 +155,7 @@ export default { | ||
| 155 | this.leaveApplicationOpen = false; | 155 | this.leaveApplicationOpen = false; |
| 156 | this.company = false; | 156 | this.company = false; |
| 157 | this.driver = false; | 157 | this.driver = false; |
| 158 | + this.dropPoint = false; | ||
| 158 | this.vehicle = false; | 159 | this.vehicle = false; |
| 159 | this.videoSrc1 = []; | 160 | this.videoSrc1 = []; |
| 160 | this.slides1 = []; | 161 | this.slides1 = []; |
| @@ -317,6 +318,10 @@ export default { | @@ -317,6 +318,10 @@ export default { | ||
| 317 | this.driver = true; | 318 | this.driver = true; |
| 318 | return; | 319 | return; |
| 319 | } | 320 | } |
| 321 | + if(this.definitionKey == "workflow_drop_point"){ | ||
| 322 | + this.dropPoint = true; | ||
| 323 | + return; | ||
| 324 | + } | ||
| 320 | this.open = true; | 325 | this.open = true; |
| 321 | this.title = "审批"; | 326 | this.title = "审批"; |
| 322 | }); | 327 | }); |
| @@ -561,6 +566,7 @@ export default { | @@ -561,6 +566,7 @@ export default { | ||
| 561 | 566 | ||
| 562 | if ( | 567 | if ( |
| 563 | this.definitionKey.indexOf("supervision") > -1 || | 568 | this.definitionKey.indexOf("supervision") > -1 || |
| 569 | + this.definitionKey == "workflow_drop_point" || | ||
| 564 | this.definitionKey == "workflow_company" || | 570 | this.definitionKey == "workflow_company" || |
| 565 | this.definitionKey == "workflow_driver" || | 571 | this.definitionKey == "workflow_driver" || |
| 566 | this.definitionKey == "workflow_vehicle" || | 572 | this.definitionKey == "workflow_vehicle" || |
trash-ui/src/api/three_step.js
| @@ -109,7 +109,8 @@ export default { | @@ -109,7 +109,8 @@ export default { | ||
| 109 | companyTrucks: null, | 109 | companyTrucks: null, |
| 110 | status:null, | 110 | status:null, |
| 111 | workStartTime:null, | 111 | workStartTime:null, |
| 112 | - workEndTime:null, | 112 | + workEndTime:null, |
| 113 | + checkStatus:null | ||
| 113 | }, | 114 | }, |
| 114 | // 表单参数 | 115 | // 表单参数 |
| 115 | form: { | 116 | form: { |
| @@ -605,6 +606,7 @@ export default { | @@ -605,6 +606,7 @@ export default { | ||
| 605 | this.queryParams.pageStatus = tabIdx; | 606 | this.queryParams.pageStatus = tabIdx; |
| 606 | this.queryParams.status = null; | 607 | this.queryParams.status = null; |
| 607 | this.queryParams.his = null; | 608 | this.queryParams.his = null; |
| 609 | + this.queryParams.checkStatus = null; | ||
| 608 | 610 | ||
| 609 | getNames(this.queryParams).then(res => { | 611 | getNames(this.queryParams).then(res => { |
| 610 | 612 |
trash-ui/src/api/truck_active.js
| @@ -298,16 +298,16 @@ export default { | @@ -298,16 +298,16 @@ export default { | ||
| 298 | let list = tres.result.list; | 298 | let list = tres.result.list; |
| 299 | 299 | ||
| 300 | let qr = { | 300 | let qr = { |
| 301 | - status:0, | ||
| 302 | - constructionId:item.objectId | 301 | + status:0 |
| 303 | } | 302 | } |
| 304 | 303 | ||
| 305 | listTruckActivate(qr).then(response => { | 304 | listTruckActivate(qr).then(response => { |
| 306 | let taList = response.rows; | 305 | let taList = response.rows; |
| 307 | for(let i = 0;i< list.length;i++){ | 306 | for(let i = 0;i< list.length;i++){ |
| 308 | - if(vids.indexOf(list[i].id) == -1){ | ||
| 309 | - continue; | ||
| 310 | - } | 307 | + //过滤勾选车辆 |
| 308 | + // if(vids.indexOf(list[i].id) == -1){ | ||
| 309 | + // continue; | ||
| 310 | + // } | ||
| 311 | let count = 0; | 311 | let count = 0; |
| 312 | for(let j in taList){ | 312 | for(let j in taList){ |
| 313 | if(taList[j].objectId == list[i].id){ | 313 | if(taList[j].objectId == list[i].id){ |
trash-ui/src/api/vio_warning_info.js
| @@ -80,10 +80,10 @@ export default { | @@ -80,10 +80,10 @@ export default { | ||
| 80 | replyPeople:obj.createBy, | 80 | replyPeople:obj.createBy, |
| 81 | replyTime:obj.createTime | 81 | replyTime:obj.createTime |
| 82 | }; | 82 | }; |
| 83 | - | 83 | + |
| 84 | newRep.push(data); | 84 | newRep.push(data); |
| 85 | } | 85 | } |
| 86 | - | 86 | + |
| 87 | 87 | ||
| 88 | for(let j in array){ | 88 | for(let j in array){ |
| 89 | newRep.push(array[j]); | 89 | newRep.push(array[j]); |
| @@ -97,7 +97,7 @@ export default { | @@ -97,7 +97,7 @@ export default { | ||
| 97 | }; | 97 | }; |
| 98 | newRep.push(data); | 98 | newRep.push(data); |
| 99 | } | 99 | } |
| 100 | - | 100 | + |
| 101 | this.replyApprovalProcessList = newRep; | 101 | this.replyApprovalProcessList = newRep; |
| 102 | this.$forceUpdate(); | 102 | this.$forceUpdate(); |
| 103 | }); | 103 | }); |
trash-ui/src/api/warningInfo.js
| @@ -207,7 +207,16 @@ export default { | @@ -207,7 +207,16 @@ export default { | ||
| 207 | } | 207 | } |
| 208 | 208 | ||
| 209 | 209 | ||
| 210 | - this.getList(); | 210 | + this.getList(); |
| 211 | + | ||
| 212 | + | ||
| 213 | + | ||
| 214 | + setInterval(() => { | ||
| 215 | + console.log("getList"); | ||
| 216 | + this.getList(); | ||
| 217 | + }, 60000); | ||
| 218 | + | ||
| 219 | + | ||
| 211 | }, | 220 | }, |
| 212 | methods: { | 221 | methods: { |
| 213 | getCaseStatus(item){ | 222 | getCaseStatus(item){ |
| @@ -245,8 +254,7 @@ export default { | @@ -245,8 +254,7 @@ export default { | ||
| 245 | return type; | 254 | return type; |
| 246 | }, | 255 | }, |
| 247 | /** 查询违规预警信息列表 */ | 256 | /** 查询违规预警信息列表 */ |
| 248 | - getList() { | ||
| 249 | - this.loading = true; | 257 | + getList() { |
| 250 | if(this.queryParams.createTime){ | 258 | if(this.queryParams.createTime){ |
| 251 | this.queryParams.startTime = this.queryParams.createTime[0]; | 259 | this.queryParams.startTime = this.queryParams.createTime[0]; |
| 252 | this.queryParams.endTime = this.queryParams.createTime[1]; | 260 | this.queryParams.endTime = this.queryParams.createTime[1]; |
| @@ -431,7 +439,7 @@ export default { | @@ -431,7 +439,7 @@ export default { | ||
| 431 | } | 439 | } |
| 432 | if(query.owningRegion) | 440 | if(query.owningRegion) |
| 433 | query.owningRegion = query.owningRegion + "" | 441 | query.owningRegion = query.owningRegion + "" |
| 434 | - | 442 | + |
| 435 | query.createTime = null; | 443 | query.createTime = null; |
| 436 | 444 | ||
| 437 | this.$confirm('是否确认导出所有违规预警信息数据项?', "警告", { | 445 | this.$confirm('是否确认导出所有违规预警信息数据项?', "警告", { |
trash-ui/src/utils/trash.js
| @@ -153,9 +153,9 @@ export function handleTree(data, id, parentId, children, rootId) { | @@ -153,9 +153,9 @@ export function handleTree(data, id, parentId, children, rootId) { | ||
| 153 | * @returns {string} | 153 | * @returns {string} |
| 154 | */ | 154 | */ |
| 155 | export function parseStatus(status) { | 155 | export function parseStatus(status) { |
| 156 | - if(status==1){ | 156 | + if(status==='1'){ |
| 157 | return "审批通过"; | 157 | return "审批通过"; |
| 158 | - }else if(status==2){ | 158 | + }else if(status==='2'){ |
| 159 | return "审批驳回"; | 159 | return "审批驳回"; |
| 160 | }else{ | 160 | }else{ |
| 161 | return "审批中"; | 161 | return "审批中"; |
trash-ui/src/views/activiti/task/dropPointinfo.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div> | ||
| 3 | + <el-form ref="form" :model="infoData" label-width="148px"> | ||
| 4 | + | ||
| 5 | + <el-form-item label="投放点编号" prop="dropPointNo"> | ||
| 6 | + <el-input v-model="infoData.dropPointNo" placeholder="请输入投放点编号" :disabled="true"/> | ||
| 7 | + </el-form-item> | ||
| 8 | + | ||
| 9 | + <el-form-item label="投放点名称" prop="dropPointName"> | ||
| 10 | + <el-input v-model="infoData.dropPointName" placeholder="请输入投放点名称" :disabled="true"/> | ||
| 11 | + </el-form-item> | ||
| 12 | + | ||
| 13 | + <el-form-item label="所属区域" prop="district"> | ||
| 14 | + <el-input v-model="infoData.district" placeholder="请输入区域" :disabled="true"/> | ||
| 15 | + </el-form-item> | ||
| 16 | + | ||
| 17 | + <el-form-item label="所属街道" prop="street"> | ||
| 18 | + <el-input v-model="infoData.street" placeholder="请输入街道" :disabled="true"/> | ||
| 19 | + </el-form-item> | ||
| 20 | + | ||
| 21 | + <el-form-item label="社区" prop="community"> | ||
| 22 | + <el-input v-model="infoData.community" placeholder="请输入社区" :disabled="true"/> | ||
| 23 | + </el-form-item> | ||
| 24 | + | ||
| 25 | + <el-form-item label="所属小区" prop="street"> | ||
| 26 | + <el-input v-model="infoData.plot" placeholder="请输入小区" :disabled="true"/> | ||
| 27 | + </el-form-item> | ||
| 28 | + | ||
| 29 | + <el-form-item label="详细地址" prop="address"> | ||
| 30 | + <el-input v-model="infoData.address" placeholder="请输入详细地址" :disabled="true"/> | ||
| 31 | + </el-form-item> | ||
| 32 | + | ||
| 33 | + <el-form-item label="是否为实行物业管理的区域(小区)" prop="type"> | ||
| 34 | + <el-select v-model="infoData.type" placeholder="请选择是否为实行物业管理的区域(小区)" :disabled="true" style="width: 100%"> | ||
| 35 | + <el-option label="是" value="是"/> | ||
| 36 | + <el-option label="否" value="否"/> | ||
| 37 | + </el-select> | ||
| 38 | + </el-form-item> | ||
| 39 | + | ||
| 40 | + <el-form-item label="投放点面积(m²)" prop="area" :disabled="true"> | ||
| 41 | + <el-input v-model="infoData.area" placeholder="请输入投放点面积" :disabled="true"/> | ||
| 42 | + </el-form-item> | ||
| 43 | + | ||
| 44 | + <el-form-item label="投放点容量(m³)" prop="capacity"> | ||
| 45 | + <el-input v-model="infoData.capacity" placeholder="请输入投放点容量" :disabled="true"/> | ||
| 46 | + </el-form-item> | ||
| 47 | + | ||
| 48 | + <el-form-item label="管理单位" prop="managementUnit"> | ||
| 49 | + <el-input v-model="infoData.managementUnit" placeholder="请输入管理单位" :disabled="true"/> | ||
| 50 | + </el-form-item> | ||
| 51 | + | ||
| 52 | + <el-form-item label="管理员" prop="custodian"> | ||
| 53 | + <el-input v-model="infoData.custodian" placeholder="请输入管理员" :disabled="true"/> | ||
| 54 | + </el-form-item> | ||
| 55 | + | ||
| 56 | + <el-form-item label="管理员电话" prop="custodianPhone"> | ||
| 57 | + <el-input v-model="infoData.custodianPhone" placeholder="请输入管理员联系电话" :maxlength="11" show-word-limit :disabled="true"/> | ||
| 58 | + </el-form-item> | ||
| 59 | + | ||
| 60 | + <el-form-item label="投放时间" prop="dropTime"> | ||
| 61 | + <el-time-select | ||
| 62 | + v-model="infoData.dropTime[0]" | ||
| 63 | + style="width: 50%" | ||
| 64 | + :picker-options="{ | ||
| 65 | + start: '00:00', | ||
| 66 | + step: '00:30', | ||
| 67 | + end: '23:30' | ||
| 68 | + }" | ||
| 69 | + :disabled="true" | ||
| 70 | + placeholder="选择时间"> | ||
| 71 | + </el-time-select> | ||
| 72 | + <el-time-select | ||
| 73 | + v-model="infoData.dropTime[1]" | ||
| 74 | + style="width: 50%" | ||
| 75 | + :picker-options="{ | ||
| 76 | + start: '00:00', | ||
| 77 | + step: '00:30', | ||
| 78 | + end: '23:30' | ||
| 79 | + }" | ||
| 80 | + :disabled="true" | ||
| 81 | + placeholder="选择时间"> | ||
| 82 | + </el-time-select> | ||
| 83 | + </el-form-item> | ||
| 84 | + | ||
| 85 | + <el-form-item label="运营单位" prop="operatingUnit"> | ||
| 86 | + <el-input v-model="infoData.operatingUnit" placeholder="请输入运营单位" :disabled="true" /> | ||
| 87 | + </el-form-item> | ||
| 88 | + | ||
| 89 | + <el-form-item label="运输单位" prop="transportUnit"> | ||
| 90 | + <el-input v-model="infoData.transportUnit" placeholder="请输入运输单位" :disabled="true"/> | ||
| 91 | + </el-form-item> | ||
| 92 | + | ||
| 93 | + <el-form-item label="坐标点" prop="coordinatePoint"> | ||
| 94 | + <el-input v-model="infoData.coordinatePoint" placeholder="请输入坐标点经纬度" :disabled="true"/> | ||
| 95 | + </el-form-item> | ||
| 96 | + <!-- <el-button type="primary" @click="handleOpenMap">坐标点</el-button>--> | ||
| 97 | + | ||
| 98 | + </el-form> | ||
| 99 | + </div> | ||
| 100 | +</template> | ||
| 101 | + | ||
| 102 | +<script> | ||
| 103 | + | ||
| 104 | + | ||
| 105 | +import store from "@/store"; | ||
| 106 | +import { | ||
| 107 | + getToken | ||
| 108 | +} from "@/utils/auth"; | ||
| 109 | +import { | ||
| 110 | + listDropPointInfo, | ||
| 111 | + getDropPointInfo, | ||
| 112 | + delDropPointInfo, | ||
| 113 | + addDropPointInfo, | ||
| 114 | + updateDropPointInfo, | ||
| 115 | + exportDropPointInfo | ||
| 116 | +} from "@/api/unit/dropPointInfo"; | ||
| 117 | +import {getAreaList} from "@/api/dict" | ||
| 118 | + | ||
| 119 | + | ||
| 120 | + | ||
| 121 | + | ||
| 122 | +export default { | ||
| 123 | + name: "dropPointinfo", | ||
| 124 | + props: { | ||
| 125 | + businessKey: { | ||
| 126 | + type: String | ||
| 127 | + }, | ||
| 128 | + }, | ||
| 129 | + data() { | ||
| 130 | + return { | ||
| 131 | + sign: store.getters.avatar, //裁剪图片的地址 | ||
| 132 | + areas: [], | ||
| 133 | + loading: null, | ||
| 134 | + infoData: {}, | ||
| 135 | + dicts:null, | ||
| 136 | + showPic:false, | ||
| 137 | + picImage:null, | ||
| 138 | + } | ||
| 139 | + }, | ||
| 140 | + created() { | ||
| 141 | + getAreaList().then(response => { | ||
| 142 | + if(response==null || response.length===0){ | ||
| 143 | + this.$message.error("获取区域列表失败"); | ||
| 144 | + return; | ||
| 145 | + } | ||
| 146 | + const data = response; | ||
| 147 | + for (let dataKey in data) { | ||
| 148 | + if(data[dataKey].level === '3'){ | ||
| 149 | + this.areas.push({name:data[dataKey].name,code:data[dataKey].id, streets:[]}) | ||
| 150 | + } | ||
| 151 | + } | ||
| 152 | + for(let dataKey in data){ | ||
| 153 | + for(let areas1Key in this.areas){ | ||
| 154 | + if(data[dataKey].pid === this.areas[areas1Key].code){ | ||
| 155 | + this.areas[areas1Key].streets.push({code:data[dataKey].id, name:data[dataKey].name}) | ||
| 156 | + } | ||
| 157 | + } | ||
| 158 | + } | ||
| 159 | + }); | ||
| 160 | + this.loading = true; | ||
| 161 | + this.getInfo(); | ||
| 162 | + | ||
| 163 | + }, | ||
| 164 | + methods: { | ||
| 165 | + dict(code) { | ||
| 166 | + for (let key in this.areas) { | ||
| 167 | + if (this.areas[key].code === code) { | ||
| 168 | + return this.areas[key].name; | ||
| 169 | + } | ||
| 170 | + } | ||
| 171 | + }, | ||
| 172 | + dictInfo(code) { | ||
| 173 | + for (let key in this.areas) { | ||
| 174 | + for (let keyInfo in this.areas[key].streets) { | ||
| 175 | + if (this.areas[key].streets[keyInfo].code === code) { | ||
| 176 | + return this.areas[key].streets[keyInfo].name; | ||
| 177 | + } | ||
| 178 | + } | ||
| 179 | + } | ||
| 180 | + }, | ||
| 181 | + getInfo() { | ||
| 182 | + let id; | ||
| 183 | + if (this.businessKey.split(":").length == 2) { | ||
| 184 | + id = this.businessKey.split(":")[1]; | ||
| 185 | + } else { | ||
| 186 | + id = this.businessKey; | ||
| 187 | + } | ||
| 188 | + | ||
| 189 | + getDropPointInfo(id).then(response => { | ||
| 190 | + | ||
| 191 | + this.infoData = response.data; | ||
| 192 | + this.infoData.dropTime = response.data.dropTime.split("~"); | ||
| 193 | + // getArea().then(res => { | ||
| 194 | + // this.areas = res.result; | ||
| 195 | + // this.loading = false; | ||
| 196 | + // for (let i = 0; i < this.areas.length; i++) { | ||
| 197 | + // if (Number(this.infoData.place) == this.areas[i].code) { | ||
| 198 | + // this.infoData.place = this.areas[i].name; | ||
| 199 | + // } | ||
| 200 | + // } | ||
| 201 | + // }); | ||
| 202 | + | ||
| 203 | + // for(let i in obj){ | ||
| 204 | + // if(this.objectDict[i]){ | ||
| 205 | + // this.infoData.push({label:this.objectDict[i] ,value:obj[i]}) | ||
| 206 | + // } | ||
| 207 | + // } | ||
| 208 | + this.loading = false; | ||
| 209 | + }); | ||
| 210 | + }, | ||
| 211 | + } | ||
| 212 | + | ||
| 213 | +} | ||
| 214 | +</script> | ||
| 215 | +<style> | ||
| 216 | +.bd{ | ||
| 217 | + padding:5px; | ||
| 218 | +} | ||
| 219 | + | ||
| 220 | + | ||
| 221 | + | ||
| 222 | +</style> |
trash-ui/src/views/activiti/task/index.vue
| @@ -406,7 +406,27 @@ | @@ -406,7 +406,27 @@ | ||
| 406 | <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> | 406 | <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button> |
| 407 | </div> | 407 | </div> |
| 408 | </el-dialog> | 408 | </el-dialog> |
| 409 | - | 409 | + |
| 410 | + | ||
| 411 | + <!-- 投放点 --> | ||
| 412 | + <el-dialog :title="title" :visible.sync="dropInfoOpen" width="500px" append-to-body | ||
| 413 | + :close-on-click-modal="false"> | ||
| 414 | + <dropInfo :idInfo="idInfo" v-if="dropInfoOpen"/> | ||
| 415 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | ||
| 416 | + <div v-for="item in this.form.formData"> | ||
| 417 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | ||
| 418 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | ||
| 419 | + </div> | ||
| 420 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | ||
| 421 | + <el-table-column label="处理人" align="center" prop="createName"/> | ||
| 422 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | ||
| 423 | + </el-table> | ||
| 424 | + <div slot="footer" class="dialog-footer"> | ||
| 425 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | ||
| 426 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | ||
| 427 | + </div> | ||
| 428 | + </el-dialog> | ||
| 429 | + | ||
| 410 | <!-- 后勤管理 --> | 430 | <!-- 后勤管理 --> |
| 411 | <el-dialog :title="title" :visible.sync="logisticsInfoOpen" width="500px" append-to-body | 431 | <el-dialog :title="title" :visible.sync="logisticsInfoOpen" width="500px" append-to-body |
| 412 | :close-on-click-modal="false"> | 432 | :close-on-click-modal="false"> |
| @@ -658,6 +678,25 @@ | @@ -658,6 +678,25 @@ | ||
| 658 | </div> | 678 | </div> |
| 659 | </el-dialog> | 679 | </el-dialog> |
| 660 | 680 | ||
| 681 | + <el-dialog :title="title" :visible.sync="dropPoint" width="1500px" append-to-body :close-on-click-modal="false"> | ||
| 682 | + <dropPointinfo :businessKey="businessKey" :businessType="5" v-if="dropPoint"/> | ||
| 683 | + <div v-for="item in this.form.formData"> | ||
| 684 | + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" | ||
| 685 | + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/> | ||
| 686 | + </div> | ||
| 687 | + | ||
| 688 | + <el-table :data="hisfromData" v-if="hisfromData != null"> | ||
| 689 | + | ||
| 690 | + <el-table-column label="处理意见" align="center" prop="controlValue"/> | ||
| 691 | + <el-table-column label="处理人" align="center" prop="createName"/> | ||
| 692 | + <el-table-column label="处理时间" align="center" prop="createTime"/> | ||
| 693 | + </el-table> | ||
| 694 | + <div slot="footer" class="dialog-footer"> | ||
| 695 | + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button> | ||
| 696 | + <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button> | ||
| 697 | + </div> | ||
| 698 | + </el-dialog> | ||
| 699 | + | ||
| 661 | </div> | 700 | </div> |
| 662 | </template> | 701 | </template> |
| 663 | 702 | ||
| @@ -696,6 +735,7 @@ | @@ -696,6 +735,7 @@ | ||
| 696 | import companyInfo from "@/views/activiti/task/companyInfo"; | 735 | import companyInfo from "@/views/activiti/task/companyInfo"; |
| 697 | import driverInfo from "@/views/activiti/task/driverInfo"; | 736 | import driverInfo from "@/views/activiti/task/driverInfo"; |
| 698 | import vehicleInfo from "@/views/activiti/task/vehicleInfo"; | 737 | import vehicleInfo from "@/views/activiti/task/vehicleInfo"; |
| 738 | + import dropPointinfo from "@/views/activiti/task/dropPointinfo"; | ||
| 699 | 739 | ||
| 700 | import taskmethod from '@/api/taskmethod' | 740 | import taskmethod from '@/api/taskmethod' |
| 701 | 741 | ||
| @@ -720,7 +760,8 @@ | @@ -720,7 +760,8 @@ | ||
| 720 | supervisionInfo, | 760 | supervisionInfo, |
| 721 | companyInfo, | 761 | companyInfo, |
| 722 | driverInfo, | 762 | driverInfo, |
| 723 | - vehicleInfo | 763 | + vehicleInfo, |
| 764 | + dropPointinfo | ||
| 724 | }, | 765 | }, |
| 725 | data() { | 766 | data() { |
| 726 | return { | 767 | return { |
| @@ -816,6 +857,7 @@ | @@ -816,6 +857,7 @@ | ||
| 816 | company: false, | 857 | company: false, |
| 817 | driver: false, | 858 | driver: false, |
| 818 | vehicle: false, | 859 | vehicle: false, |
| 860 | + dropPoint: false, | ||
| 819 | names: null, | 861 | names: null, |
| 820 | hisfromData: [], | 862 | hisfromData: [], |
| 821 | slides: [], | 863 | slides: [], |
trash-ui/src/views/business/threestep/index.vue
| @@ -48,6 +48,12 @@ | @@ -48,6 +48,12 @@ | ||
| 48 | value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始时间"> | 48 | value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始时间"> |
| 49 | </el-date-picker> | 49 | </el-date-picker> |
| 50 | </el-form-item> | 50 | </el-form-item> |
| 51 | + <el-form-item label="抽查状态" prop="checkStatus" v-if="this.queryParams.his==1"> | ||
| 52 | + <el-select v-model="queryParams.checkStatus" placeholder="请选择抽查状态" size="small"> | ||
| 53 | + <el-option label="未抽查" value="0" /> | ||
| 54 | + <el-option label="已抽查" value="1" /> | ||
| 55 | + </el-select> | ||
| 56 | + </el-form-item> | ||
| 51 | 57 | ||
| 52 | 58 | ||
| 53 | <el-form-item> | 59 | <el-form-item> |
trash-ui/src/views/h5/task/dropPointinfo.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div> | ||
| 3 | + <el-form ref="form" :model="infoData" label-width="148px"> | ||
| 4 | + | ||
| 5 | + <el-form-item label="投放点编号" prop="dropPointNo"> | ||
| 6 | + <el-input v-model="infoData.dropPointNo" placeholder="请输入投放点编号" :disabled="true"/> | ||
| 7 | + </el-form-item> | ||
| 8 | + | ||
| 9 | + <el-form-item label="投放点名称" prop="dropPointName"> | ||
| 10 | + <el-input v-model="infoData.dropPointName" placeholder="请输入投放点名称" :disabled="true"/> | ||
| 11 | + </el-form-item> | ||
| 12 | + | ||
| 13 | + <el-form-item label="所属区域" prop="district"> | ||
| 14 | + <el-input v-model="infoData.district" placeholder="请输入区域" :disabled="true"/> | ||
| 15 | + </el-form-item> | ||
| 16 | + | ||
| 17 | + <el-form-item label="所属街道" prop="street"> | ||
| 18 | + <el-input v-model="infoData.street" placeholder="请输入街道" :disabled="true"/> | ||
| 19 | + </el-form-item> | ||
| 20 | + | ||
| 21 | + <el-form-item label="社区" prop="community"> | ||
| 22 | + <el-input v-model="infoData.community" placeholder="请输入社区" :disabled="true"/> | ||
| 23 | + </el-form-item> | ||
| 24 | + | ||
| 25 | + <el-form-item label="所属小区" prop="street"> | ||
| 26 | + <el-input v-model="infoData.plot" placeholder="请输入小区" :disabled="true"/> | ||
| 27 | + </el-form-item> | ||
| 28 | + | ||
| 29 | + <el-form-item label="详细地址" prop="address"> | ||
| 30 | + <el-input v-model="infoData.address" placeholder="请输入详细地址" :disabled="true"/> | ||
| 31 | + </el-form-item> | ||
| 32 | + | ||
| 33 | + <el-form-item label="是否为实行物业管理的区域(小区)" prop="type"> | ||
| 34 | + <el-select v-model="infoData.type" placeholder="请选择是否为实行物业管理的区域(小区)" :disabled="true" style="width: 100%"> | ||
| 35 | + <el-option label="是" value="是"/> | ||
| 36 | + <el-option label="否" value="否"/> | ||
| 37 | + </el-select> | ||
| 38 | + </el-form-item> | ||
| 39 | + | ||
| 40 | + <el-form-item label="投放点面积(m²)" prop="area" :disabled="true"> | ||
| 41 | + <el-input v-model="infoData.area" placeholder="请输入投放点面积" :disabled="true"/> | ||
| 42 | + </el-form-item> | ||
| 43 | + | ||
| 44 | + <el-form-item label="投放点容量(m³)" prop="capacity"> | ||
| 45 | + <el-input v-model="infoData.capacity" placeholder="请输入投放点容量" :disabled="true"/> | ||
| 46 | + </el-form-item> | ||
| 47 | + | ||
| 48 | + <el-form-item label="管理单位" prop="managementUnit"> | ||
| 49 | + <el-input v-model="infoData.managementUnit" placeholder="请输入管理单位" :disabled="true"/> | ||
| 50 | + </el-form-item> | ||
| 51 | + | ||
| 52 | + <el-form-item label="管理员" prop="custodian"> | ||
| 53 | + <el-input v-model="infoData.custodian" placeholder="请输入管理员" :disabled="true"/> | ||
| 54 | + </el-form-item> | ||
| 55 | + | ||
| 56 | + <el-form-item label="管理员电话" prop="custodianPhone"> | ||
| 57 | + <el-input v-model="infoData.custodianPhone" placeholder="请输入管理员联系电话" :maxlength="11" show-word-limit :disabled="true"/> | ||
| 58 | + </el-form-item> | ||
| 59 | + | ||
| 60 | + <el-form-item label="投放时间" prop="dropTime"> | ||
| 61 | + <el-time-select | ||
| 62 | + v-model="infoData.dropTime[0]" | ||
| 63 | + style="width: 50%" | ||
| 64 | + :picker-options="{ | ||
| 65 | + start: '00:00', | ||
| 66 | + step: '00:30', | ||
| 67 | + end: '23:30' | ||
| 68 | + }" | ||
| 69 | + :disabled="true" | ||
| 70 | + placeholder="选择时间"> | ||
| 71 | + </el-time-select> | ||
| 72 | + <el-time-select | ||
| 73 | + v-model="infoData.dropTime[1]" | ||
| 74 | + style="width: 50%" | ||
| 75 | + :picker-options="{ | ||
| 76 | + start: '00:00', | ||
| 77 | + step: '00:30', | ||
| 78 | + end: '23:30' | ||
| 79 | + }" | ||
| 80 | + :disabled="true" | ||
| 81 | + placeholder="选择时间"> | ||
| 82 | + </el-time-select> | ||
| 83 | + </el-form-item> | ||
| 84 | + | ||
| 85 | + <el-form-item label="运营单位" prop="operatingUnit"> | ||
| 86 | + <el-input v-model="infoData.operatingUnit" placeholder="请输入运营单位" :disabled="true" /> | ||
| 87 | + </el-form-item> | ||
| 88 | + | ||
| 89 | + <el-form-item label="运输单位" prop="transportUnit"> | ||
| 90 | + <el-input v-model="infoData.transportUnit" placeholder="请输入运输单位" :disabled="true"/> | ||
| 91 | + </el-form-item> | ||
| 92 | + | ||
| 93 | + <el-form-item label="坐标点" prop="coordinatePoint"> | ||
| 94 | + <el-input v-model="infoData.coordinatePoint" placeholder="请输入坐标点经纬度" :disabled="true"/> | ||
| 95 | + </el-form-item> | ||
| 96 | + <!-- <el-button type="primary" @click="handleOpenMap">坐标点</el-button>--> | ||
| 97 | + | ||
| 98 | + </el-form> | ||
| 99 | + </div> | ||
| 100 | +</template> | ||
| 101 | + | ||
| 102 | +<script> | ||
| 103 | + | ||
| 104 | + | ||
| 105 | +import store from "@/store"; | ||
| 106 | +import { | ||
| 107 | + getToken | ||
| 108 | +} from "@/utils/auth"; | ||
| 109 | +import { | ||
| 110 | + listDropPointInfo, | ||
| 111 | + getDropPointInfo, | ||
| 112 | + delDropPointInfo, | ||
| 113 | + addDropPointInfo, | ||
| 114 | + updateDropPointInfo, | ||
| 115 | + exportDropPointInfo | ||
| 116 | +} from "@/api/unit/dropPointInfo"; | ||
| 117 | +import {getAreaList} from "@/api/dict" | ||
| 118 | + | ||
| 119 | + | ||
| 120 | + | ||
| 121 | + | ||
| 122 | +export default { | ||
| 123 | + name: "dropPointinfo", | ||
| 124 | + props: { | ||
| 125 | + businessKey: { | ||
| 126 | + type: String | ||
| 127 | + }, | ||
| 128 | + }, | ||
| 129 | + data() { | ||
| 130 | + return { | ||
| 131 | + sign: store.getters.avatar, //裁剪图片的地址 | ||
| 132 | + areas: [], | ||
| 133 | + loading: null, | ||
| 134 | + infoData: {}, | ||
| 135 | + dicts:null, | ||
| 136 | + showPic:false, | ||
| 137 | + picImage:null, | ||
| 138 | + } | ||
| 139 | + }, | ||
| 140 | + created() { | ||
| 141 | + getAreaList().then(response => { | ||
| 142 | + if(response==null || response.length===0){ | ||
| 143 | + this.$message.error("获取区域列表失败"); | ||
| 144 | + return; | ||
| 145 | + } | ||
| 146 | + const data = response; | ||
| 147 | + for (let dataKey in data) { | ||
| 148 | + if(data[dataKey].level === '3'){ | ||
| 149 | + this.areas.push({name:data[dataKey].name,code:data[dataKey].id, streets:[]}) | ||
| 150 | + } | ||
| 151 | + } | ||
| 152 | + for(let dataKey in data){ | ||
| 153 | + for(let areas1Key in this.areas){ | ||
| 154 | + if(data[dataKey].pid === this.areas[areas1Key].code){ | ||
| 155 | + this.areas[areas1Key].streets.push({code:data[dataKey].id, name:data[dataKey].name}) | ||
| 156 | + } | ||
| 157 | + } | ||
| 158 | + } | ||
| 159 | + }); | ||
| 160 | + this.loading = true; | ||
| 161 | + this.getInfo(); | ||
| 162 | + | ||
| 163 | + }, | ||
| 164 | + methods: { | ||
| 165 | + dict(code) { | ||
| 166 | + for (let key in this.areas) { | ||
| 167 | + if (this.areas[key].code === code) { | ||
| 168 | + return this.areas[key].name; | ||
| 169 | + } | ||
| 170 | + } | ||
| 171 | + }, | ||
| 172 | + dictInfo(code) { | ||
| 173 | + for (let key in this.areas) { | ||
| 174 | + for (let keyInfo in this.areas[key].streets) { | ||
| 175 | + if (this.areas[key].streets[keyInfo].code === code) { | ||
| 176 | + return this.areas[key].streets[keyInfo].name; | ||
| 177 | + } | ||
| 178 | + } | ||
| 179 | + } | ||
| 180 | + }, | ||
| 181 | + getInfo() { | ||
| 182 | + let id; | ||
| 183 | + if (this.businessKey.split(":").length == 2) { | ||
| 184 | + id = this.businessKey.split(":")[1]; | ||
| 185 | + } else { | ||
| 186 | + id = this.businessKey; | ||
| 187 | + } | ||
| 188 | + | ||
| 189 | + getDropPointInfo(id).then(response => { | ||
| 190 | + | ||
| 191 | + this.infoData = response.data; | ||
| 192 | + this.infoData.dropTime = response.data.dropTime.split("~"); | ||
| 193 | + // getArea().then(res => { | ||
| 194 | + // this.areas = res.result; | ||
| 195 | + // this.loading = false; | ||
| 196 | + // for (let i = 0; i < this.areas.length; i++) { | ||
| 197 | + // if (Number(this.infoData.place) == this.areas[i].code) { | ||
| 198 | + // this.infoData.place = this.areas[i].name; | ||
| 199 | + // } | ||
| 200 | + // } | ||
| 201 | + // }); | ||
| 202 | + | ||
| 203 | + // for(let i in obj){ | ||
| 204 | + // if(this.objectDict[i]){ | ||
| 205 | + // this.infoData.push({label:this.objectDict[i] ,value:obj[i]}) | ||
| 206 | + // } | ||
| 207 | + // } | ||
| 208 | + this.loading = false; | ||
| 209 | + }); | ||
| 210 | + }, | ||
| 211 | + } | ||
| 212 | + | ||
| 213 | +} | ||
| 214 | +</script> | ||
| 215 | +<style> | ||
| 216 | +.bd{ | ||
| 217 | + padding:5px; | ||
| 218 | +} | ||
| 219 | + | ||
| 220 | + | ||
| 221 | + | ||
| 222 | +</style> |
trash-ui/src/views/h5/task/violationCaseFileInfo.vue
| 1 | <template> | 1 | <template> |
| 2 | - <el-form ref="form" :model="form" :rules="rules" label-width="80px"> | 2 | + <el-form ref="form" :model="form" label-width="80px"> |
| 3 | 3 | ||
| 4 | <el-form-item label="预警编号" prop="number"> | 4 | <el-form-item label="预警编号" prop="number"> |
| 5 | <el-input v-model="form.number" placeholder="请输入预警编号" :disabled="true"/> | 5 | <el-input v-model="form.number" placeholder="请输入预警编号" :disabled="true"/> |
trash-ui/src/views/h5/task/violationWarningInformationInfo.vue
| 1 | <template> | 1 | <template> |
| 2 | - <el-form ref="form" :model="form" :rules="rules" label-width="85px"> | 2 | + <el-form ref="form" :model="form" label-width="85px"> |
| 3 | 3 | ||
| 4 | <el-form-item label="案卷编号" prop="number"> | 4 | <el-form-item label="案卷编号" prop="number"> |
| 5 | <el-input v-model="form.number" placeholder="请输入案卷编号" :disabled="true"/> | 5 | <el-input v-model="form.number" placeholder="请输入案卷编号" :disabled="true"/> |
trash-ui/src/views/h5/threestep/index.vue
| @@ -30,6 +30,13 @@ | @@ -30,6 +30,13 @@ | ||
| 30 | format="yyyy-MM-dd HH:mm:ss" | 30 | format="yyyy-MM-dd HH:mm:ss" |
| 31 | value-format="yyyy-MM-dd HH:mm:ss" placeholder="结束时间"> | 31 | value-format="yyyy-MM-dd HH:mm:ss" placeholder="结束时间"> |
| 32 | </el-date-picker> | 32 | </el-date-picker> |
| 33 | + </el-form-item> | ||
| 34 | + | ||
| 35 | + <el-form-item label="抽查状态" prop="checkStatus" v-if="this.queryParams.his==1"> | ||
| 36 | + <el-select v-model="queryParams.checkStatus" placeholder="请选择抽查状态" size="small"> | ||
| 37 | + <el-option label="未抽查" value="0" /> | ||
| 38 | + <el-option label="已抽查" value="1" /> | ||
| 39 | + </el-select> | ||
| 33 | </el-form-item> | 40 | </el-form-item> |
| 34 | <el-form-item> | 41 | <el-form-item> |
| 35 | <el-button type="primary" size="mini" @click="handleQuery">搜索</el-button> | 42 | <el-button type="primary" size="mini" @click="handleQuery">搜索</el-button> |
| @@ -67,13 +74,23 @@ | @@ -67,13 +74,23 @@ | ||
| 67 | <el-col :span="24"> | 74 | <el-col :span="24"> |
| 68 | <div>巡查时间:{{item.checkTime}}</div> | 75 | <div>巡查时间:{{item.checkTime}}</div> |
| 69 | </el-col> | 76 | </el-col> |
| 70 | - </el-row> | 77 | + </el-row> |
| 78 | + | ||
| 79 | + <el-row class="card_row" style="margin-top: 20px;" v-if="queryParams.pageStatus==1"> | ||
| 80 | + <el-col :span="24"> | ||
| 81 | + <div>抽查时间:{{item.checkEndTime}}</div> | ||
| 82 | + </el-col> | ||
| 83 | + </el-row> | ||
| 84 | + | ||
| 85 | + | ||
| 71 | 86 | ||
| 72 | <span v-if="item.status==3">已停工"</span> | 87 | <span v-if="item.status==3">已停工"</span> |
| 73 | 88 | ||
| 74 | 89 | ||
| 75 | - <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(item,0)" v-hasPermi="['business:threestep:edit']" v-if="queryParams.pageStatus==1 && item.status==1 && item.checkEndTime == null">抽查</el-button> | ||
| 76 | - <el-button size="mini" type="text" icon="el-icon-edit" @click="reSub(item)" v-hasPermi="['business:threestep:add']" v-if="item.status==2">被驳回</el-button> | 90 | + <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(item,0)" |
| 91 | + v-if="queryParams.pageStatus==1 && item.status==1 && item.checkEndTime == null | ||
| 92 | + && checkPer(['business.supervision.threestep.spot'])">抽查</el-button> | ||
| 93 | + <el-button size="mini" type="text" icon="el-icon-edit" @click="reSub(item)" v-hasPermi="['business:threestep:add']" v-if="item.status==2">被驳回</el-button> | ||
| 77 | 94 | ||
| 78 | 95 | ||
| 79 | <el-button size="mini" type="text" @click="handleUpdate(item,1)" v-hasPermi="['business:threestep:edit']">查看详情</el-button> | 96 | <el-button size="mini" type="text" @click="handleUpdate(item,1)" v-hasPermi="['business:threestep:edit']">查看详情</el-button> |
trash-ui/src/views/h5/truckActivate/index.vue
| @@ -49,8 +49,8 @@ | @@ -49,8 +49,8 @@ | ||
| 49 | placeholder="结束日期"> | 49 | placeholder="结束日期"> |
| 50 | </el-date-picker> | 50 | </el-date-picker> |
| 51 | </el-form-item> | 51 | </el-form-item> |
| 52 | - | ||
| 53 | - | 52 | + |
| 53 | + | ||
| 54 | <el-form-item> | 54 | <el-form-item> |
| 55 | <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> | 55 | <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
| 56 | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> | 56 | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
| @@ -120,7 +120,7 @@ | @@ -120,7 +120,7 @@ | ||
| 120 | <el-form ref="form" :model="form" :rules="rules" label-width="80px"> | 120 | <el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
| 121 | <el-form-item label="所属工地" prop="construction"> | 121 | <el-form-item label="所属工地" prop="construction"> |
| 122 | <el-select v-model="form.construction" placeholder="请选择所属工地" filterable reserve-keyword @change="getCompany"> | 122 | <el-select v-model="form.construction" placeholder="请选择所属工地" filterable reserve-keyword @change="getCompany"> |
| 123 | - <el-option v-for="item in constList" :label="item.name" :value="item.name" ></el-option> | 123 | + <el-option class="custom-option" v-for="item in constList" :label="item.name" :value="item.name" ></el-option> |
| 124 | </el-select> | 124 | </el-select> |
| 125 | </el-form-item> | 125 | </el-form-item> |
| 126 | <el-form-item label="所属企业" prop="company"> | 126 | <el-form-item label="所属企业" prop="company"> |
| @@ -157,4 +157,11 @@ | @@ -157,4 +157,11 @@ | ||
| 157 | .el-select-dropdown__item{ | 157 | .el-select-dropdown__item{ |
| 158 | width:300px; | 158 | width:300px; |
| 159 | } | 159 | } |
| 160 | + .el-select-dropdown__item.hover, .el-select-dropdown__item:hover{ | ||
| 161 | + height:auto; | ||
| 162 | + } | ||
| 163 | + .custom-option { | ||
| 164 | + white-space: normal; /* 允许文本换行 */ | ||
| 165 | + word-wrap: break-word; /* 在长单词或URL地址内部进行换行 */ | ||
| 166 | + } | ||
| 160 | </style> | 167 | </style> |
trash-ui/src/views/unit/dropPointInfo/index.vue
| @@ -19,11 +19,11 @@ | @@ -19,11 +19,11 @@ | ||
| 19 | @keyup.enter.native="handleQuery" | 19 | @keyup.enter.native="handleQuery" |
| 20 | /> | 20 | /> |
| 21 | </el-form-item> | 21 | </el-form-item> |
| 22 | - <el-form-item label="投放点形式" prop="type"> | ||
| 23 | - <el-select v-model="queryParams.type" placeholder="请选择投放点形式" clearable size="small"> | 22 | + <el-form-item label="是否为实行物业管理的区域(小区)" prop="type"> |
| 23 | + <el-select v-model="queryParams.type" placeholder="请选择是否为实行物业管理的区域(小区)" clearable size="small"> | ||
| 24 | <el-option label="全部" value=""/> | 24 | <el-option label="全部" value=""/> |
| 25 | - <el-option label="固定" value="固定"/> | ||
| 26 | - <el-option label="临时" value="临时"/> | 25 | + <el-option label="是" value="是"/> |
| 26 | + <el-option label="否" value="否"/> | ||
| 27 | </el-select> | 27 | </el-select> |
| 28 | </el-form-item> | 28 | </el-form-item> |
| 29 | <el-form-item> | 29 | <el-form-item> |
| @@ -81,23 +81,39 @@ | @@ -81,23 +81,39 @@ | ||
| 81 | <el-table v-loading="loading" :data="dropPointInfoList" @selection-change="handleSelectionChange"> | 81 | <el-table v-loading="loading" :data="dropPointInfoList" @selection-change="handleSelectionChange"> |
| 82 | <el-table-column type="selection" width="55" align="center"/> | 82 | <el-table-column type="selection" width="55" align="center"/> |
| 83 | <el-table-column label="投放点名称" align="center" prop="dropPointName"/> | 83 | <el-table-column label="投放点名称" align="center" prop="dropPointName"/> |
| 84 | - <el-table-column label="所属区域" align="center" prop="district"/> | ||
| 85 | - <el-table-column label="所属街道" align="center" prop="street"/> | 84 | + <el-table-column label="所属区域" align="center" prop="district"> |
| 85 | + <template slot-scope="scope"> | ||
| 86 | + <span>{{ dict(scope.row.district) }}</span> | ||
| 87 | + </template> | ||
| 88 | + </el-table-column> | ||
| 89 | + <el-table-column label="所属街道" align="center" prop="street"> | ||
| 90 | + <template slot-scope="scope"> | ||
| 91 | + <span>{{ | ||
| 92 | + dictInfo(scope.row.street) | ||
| 93 | + }}</span> | ||
| 94 | + </template> | ||
| 95 | + </el-table-column> | ||
| 86 | <el-table-column label="社区" align="center" prop="community"/> | 96 | <el-table-column label="社区" align="center" prop="community"/> |
| 97 | + <el-table-column label="小区" align="center" prop="plot"/> | ||
| 87 | <el-table-column label="详细地址" align="center" prop="address"/> | 98 | <el-table-column label="详细地址" align="center" prop="address"/> |
| 88 | <el-table-column label="投放点形式" align="center" prop="type"/> | 99 | <el-table-column label="投放点形式" align="center" prop="type"/> |
| 89 | <el-table-column label="投放点面积(m²)" align="center" prop="area"/> | 100 | <el-table-column label="投放点面积(m²)" align="center" prop="area"/> |
| 90 | <el-table-column label="投放点容量(m³)" align="center" prop="capacity"/> | 101 | <el-table-column label="投放点容量(m³)" align="center" prop="capacity"/> |
| 91 | <el-table-column label="管理单位" align="center" prop="managementUnit"/> | 102 | <el-table-column label="管理单位" align="center" prop="managementUnit"/> |
| 92 | - <el-table-column label="管理人" align="center" prop="custodian"/> | 103 | + <el-table-column label="管理员" align="center" prop="custodian"/> |
| 93 | <el-table-column label="管理员电话" align="center" prop="custodianPhone"/> | 104 | <el-table-column label="管理员电话" align="center" prop="custodianPhone"/> |
| 94 | <el-table-column label="投放时间" align="center" prop="dropTime" width="180"/> | 105 | <el-table-column label="投放时间" align="center" prop="dropTime" width="180"/> |
| 95 | <el-table-column label="投放点编号" align="center" prop="dropPointNo"/> | 106 | <el-table-column label="投放点编号" align="center" prop="dropPointNo"/> |
| 96 | <el-table-column label="运营单位" align="center" prop="operatingUnit"/> | 107 | <el-table-column label="运营单位" align="center" prop="operatingUnit"/> |
| 97 | <el-table-column label="运输单位" align="center" prop="transportUnit"/> | 108 | <el-table-column label="运输单位" align="center" prop="transportUnit"/> |
| 109 | + <el-table-column label="审批状态" align="center" prop="status"> | ||
| 110 | + <template slot-scope="scope"> | ||
| 111 | + <span>{{ parseStatus(scope.row.status) }}</span> | ||
| 112 | + </template> | ||
| 113 | + </el-table-column> | ||
| 98 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 114 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 99 | <template slot-scope="scope"> | 115 | <template slot-scope="scope"> |
| 100 | - <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}-{i}-{s}') }}</span> | 116 | + <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span> |
| 101 | </template> | 117 | </template> |
| 102 | </el-table-column> | 118 | </el-table-column> |
| 103 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 119 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| @@ -132,123 +148,106 @@ | @@ -132,123 +148,106 @@ | ||
| 132 | 148 | ||
| 133 | <!-- 添加或修改投放点信息管理对话框 --> | 149 | <!-- 添加或修改投放点信息管理对话框 --> |
| 134 | <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> | 150 | <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> |
| 135 | - <el-form ref="form" :model="form" :rules="rules" label-width="128px"> | ||
| 136 | - <el-row> | ||
| 137 | - <el-col :span="12"> | 151 | + <el-form ref="form" :model="form" :rules="rules" label-width="148px"> |
| 152 | + | ||
| 138 | <el-form-item label="投放点编号" prop="dropPointNo"> | 153 | <el-form-item label="投放点编号" prop="dropPointNo"> |
| 139 | <el-input v-model="form.dropPointNo" placeholder="请输入投放点编号" :disabled="true"/> | 154 | <el-input v-model="form.dropPointNo" placeholder="请输入投放点编号" :disabled="true"/> |
| 140 | </el-form-item> | 155 | </el-form-item> |
| 141 | - </el-col> | ||
| 142 | - <el-col :span="12"> | 156 | + |
| 143 | <el-form-item label="投放点名称" prop="dropPointName"> | 157 | <el-form-item label="投放点名称" prop="dropPointName"> |
| 144 | <el-input v-model="form.dropPointName" placeholder="请输入投放点名称"/> | 158 | <el-input v-model="form.dropPointName" placeholder="请输入投放点名称"/> |
| 145 | </el-form-item> | 159 | </el-form-item> |
| 146 | - </el-col> | ||
| 147 | - </el-row> | ||
| 148 | - <el-row> | ||
| 149 | - <el-col :span="12"> | 160 | + |
| 150 | <el-form-item label="所属区域" prop="street"> | 161 | <el-form-item label="所属区域" prop="street"> |
| 151 | <el-select v-model="form.district" placeholder="请输入所属区域" style="width: 100%" clearable @change="getStreets"> | 162 | <el-select v-model="form.district" placeholder="请输入所属区域" style="width: 100%" clearable @change="getStreets"> |
| 152 | - <el-option v-for="(area,index) in areas" :label="area.name" :value="area.name" :key="index"/> | 163 | + <el-option v-for="(area,index) in areas" :label="area.name" :value="area.code" :key="index"/> |
| 153 | </el-select> | 164 | </el-select> |
| 154 | </el-form-item> | 165 | </el-form-item> |
| 155 | - </el-col> | ||
| 156 | - <el-col :span="12"> | 166 | + |
| 157 | <el-form-item label="所属街道" prop="street"> | 167 | <el-form-item label="所属街道" prop="street"> |
| 158 | - <el-select v-model="form.street" placeholder="请输入所属街道" style="width: 100%" clearable> | ||
| 159 | - <el-option v-for="(area,index) in streets" :label="area.name" :value="area.name" :key="area.code" @click.native="createDropPointNo(area)"/> | 168 | + <el-select v-model="form.street" placeholder="请输入所属街道" style="width: 100%" clearable @change="getCommunitys"> |
| 169 | + <el-option v-for="(area,index) in streets" :label="area.name" :value="area.code" :key="area.code"/> | ||
| 160 | </el-select> | 170 | </el-select> |
| 161 | </el-form-item> | 171 | </el-form-item> |
| 162 | 172 | ||
| 163 | - </el-col> | ||
| 164 | - </el-row> | ||
| 165 | - <el-row> | ||
| 166 | - <el-col :span="12"> | ||
| 167 | - <el-form-item label="社区" prop="community"> | ||
| 168 | - <el-input v-model="form.community" placeholder="请输入社区"/> | ||
| 169 | - </el-form-item> | 173 | + <el-form-item label="社区" prop="community"> |
| 174 | + <el-select v-model="form.community" placeholder="请输入所属社区" style="width: 100%" clearable> | ||
| 175 | + <el-option v-for="(area,index) in communitys" :label="area.name" :value="area.code" :key="area.code" @click.native="createDropPointNo(area,'community')"/> | ||
| 176 | + </el-select> | ||
| 177 | + </el-form-item> | ||
| 178 | + | ||
| 179 | + <el-form-item label="小区" prop="plot"> | ||
| 180 | + <el-input v-model="form.plot" placeholder="请输入小区"/> | ||
| 181 | + </el-form-item> | ||
| 170 | 182 | ||
| 171 | - </el-col> | ||
| 172 | - <el-col :span="12"> | ||
| 173 | <el-form-item label="详细地址" prop="address"> | 183 | <el-form-item label="详细地址" prop="address"> |
| 174 | <el-input v-model="form.address" placeholder="请输入详细地址"/> | 184 | <el-input v-model="form.address" placeholder="请输入详细地址"/> |
| 175 | </el-form-item> | 185 | </el-form-item> |
| 176 | - </el-col> | ||
| 177 | - </el-row> | ||
| 178 | - <el-row> | ||
| 179 | - <el-col :span="12"> | ||
| 180 | - <el-form-item label="投放点形式" prop="type"> | ||
| 181 | - <el-select v-model="form.type" placeholder="请选择投放点形式" style="width: 100%"> | ||
| 182 | - <el-option label="固定" value="固定"/> | ||
| 183 | - <el-option label="临时" value="临时"/> | 186 | + |
| 187 | + <el-form-item label="是否为实行物业管理的区域(小区)" prop="type"> | ||
| 188 | + <el-select v-model="form.type" placeholder="请选择是否为实行物业管理的区域(小区)" style="width: 100%"> | ||
| 189 | + <el-option label="是" value="是"/> | ||
| 190 | + <el-option label="否" value="否"/> | ||
| 184 | </el-select> | 191 | </el-select> |
| 185 | </el-form-item> | 192 | </el-form-item> |
| 186 | 193 | ||
| 187 | - </el-col> | ||
| 188 | - <el-col :span="12"> | ||
| 189 | <el-form-item label="投放点面积(m²)" prop="area"> | 194 | <el-form-item label="投放点面积(m²)" prop="area"> |
| 190 | <el-input v-model="form.area" placeholder="请输入投放点面积"/> | 195 | <el-input v-model="form.area" placeholder="请输入投放点面积"/> |
| 191 | </el-form-item> | 196 | </el-form-item> |
| 192 | - </el-col> | ||
| 193 | - </el-row> | ||
| 194 | - <el-row> | ||
| 195 | - <el-col :span="12"> | 197 | + |
| 196 | <el-form-item label="投放点容量(m³)" prop="capacity"> | 198 | <el-form-item label="投放点容量(m³)" prop="capacity"> |
| 197 | <el-input v-model="form.capacity" placeholder="请输入投放点容量"/> | 199 | <el-input v-model="form.capacity" placeholder="请输入投放点容量"/> |
| 198 | </el-form-item> | 200 | </el-form-item> |
| 199 | - </el-col> | ||
| 200 | - <el-col :span="12"> | 201 | + |
| 201 | <el-form-item label="管理单位" prop="managementUnit"> | 202 | <el-form-item label="管理单位" prop="managementUnit"> |
| 202 | <el-input v-model="form.managementUnit" placeholder="请输入管理单位"/> | 203 | <el-input v-model="form.managementUnit" placeholder="请输入管理单位"/> |
| 203 | </el-form-item> | 204 | </el-form-item> |
| 204 | - </el-col> | ||
| 205 | - </el-row> | ||
| 206 | - <el-row> | ||
| 207 | - <el-col :span="12"> | ||
| 208 | - <el-form-item label="管理人" prop="custodian"> | ||
| 209 | - <el-input v-model="form.custodian" placeholder="请输入管理人"/> | 205 | + |
| 206 | + <el-form-item label="管理员" prop="custodian"> | ||
| 207 | + <el-input v-model="form.custodian" placeholder="请输入管理员"/> | ||
| 210 | </el-form-item> | 208 | </el-form-item> |
| 211 | - </el-col> | ||
| 212 | - <el-col :span="12"> | 209 | + |
| 213 | <el-form-item label="管理员电话" prop="custodianPhone"> | 210 | <el-form-item label="管理员电话" prop="custodianPhone"> |
| 214 | <el-input v-model="form.custodianPhone" placeholder="请输入管理员联系电话" :maxlength="11" show-word-limit/> | 211 | <el-input v-model="form.custodianPhone" placeholder="请输入管理员联系电话" :maxlength="11" show-word-limit/> |
| 215 | </el-form-item> | 212 | </el-form-item> |
| 216 | - </el-col> | ||
| 217 | - </el-row> | ||
| 218 | - <el-row> | ||
| 219 | - <el-col :span="12"> | ||
| 220 | - <el-form-item label="投放时间" prop="dropTime"> | 213 | + |
| 214 | + <el-form-item label="投放时间" prop="dropTime" v-if="dropTime"> | ||
| 221 | <el-time-select | 215 | <el-time-select |
| 216 | + placeholder="起始时间" | ||
| 222 | v-model="form.dropTime" | 217 | v-model="form.dropTime" |
| 223 | - style="width: 100%" | 218 | + style="width: 50%" |
| 224 | :picker-options="{ | 219 | :picker-options="{ |
| 225 | - start: '00:00', | ||
| 226 | - step: '00:30', | ||
| 227 | - end: '23:30' | ||
| 228 | - }" | ||
| 229 | - placeholder="选择时间"> | 220 | + start: '00:00', |
| 221 | + step: '00:15', | ||
| 222 | + end: '23:45' | ||
| 223 | + }"> | ||
| 224 | + </el-time-select> | ||
| 225 | + <el-time-select | ||
| 226 | + placeholder="结束时间" | ||
| 227 | + v-model="endTime" | ||
| 228 | + style="width: 50%" | ||
| 229 | + :picker-options="{ | ||
| 230 | + start: '00:15', | ||
| 231 | + step: '00:15', | ||
| 232 | + end: '24:00', | ||
| 233 | + minTime: form.dropTime | ||
| 234 | + }"> | ||
| 230 | </el-time-select> | 235 | </el-time-select> |
| 231 | </el-form-item> | 236 | </el-form-item> |
| 232 | - </el-col> | ||
| 233 | - <el-col :span="12"> | 237 | + |
| 234 | <el-form-item label="运营单位" prop="operatingUnit"> | 238 | <el-form-item label="运营单位" prop="operatingUnit"> |
| 235 | <el-input v-model="form.operatingUnit" placeholder="请输入运营单位"/> | 239 | <el-input v-model="form.operatingUnit" placeholder="请输入运营单位"/> |
| 236 | </el-form-item> | 240 | </el-form-item> |
| 237 | - </el-col> | ||
| 238 | - </el-row> | ||
| 239 | - <el-row> | ||
| 240 | - <el-col :span="12"> | 241 | + |
| 241 | <el-form-item label="运输单位" prop="transportUnit"> | 242 | <el-form-item label="运输单位" prop="transportUnit"> |
| 242 | <el-input v-model="form.transportUnit" placeholder="请输入运输单位"/> | 243 | <el-input v-model="form.transportUnit" placeholder="请输入运输单位"/> |
| 243 | </el-form-item> | 244 | </el-form-item> |
| 244 | - </el-col> | ||
| 245 | - <el-col :span="12"> | 245 | + |
| 246 | <el-form-item label="坐标点" prop="coordinatePoint"> | 246 | <el-form-item label="坐标点" prop="coordinatePoint"> |
| 247 | <el-input v-model="form.coordinatePoint" placeholder="请输入坐标点经纬度" readonly @click.native="handleOpenMap"/> | 247 | <el-input v-model="form.coordinatePoint" placeholder="请输入坐标点经纬度" readonly @click.native="handleOpenMap"/> |
| 248 | </el-form-item> | 248 | </el-form-item> |
| 249 | <!-- <el-button type="primary" @click="handleOpenMap">坐标点</el-button>--> | 249 | <!-- <el-button type="primary" @click="handleOpenMap">坐标点</el-button>--> |
| 250 | - </el-col> | ||
| 251 | - </el-row> | 250 | + |
| 252 | </el-form> | 251 | </el-form> |
| 253 | <div slot="footer" class="dialog-footer"> | 252 | <div slot="footer" class="dialog-footer"> |
| 254 | <el-button type="primary" @click="submitForm">确 定</el-button> | 253 | <el-button type="primary" @click="submitForm">确 定</el-button> |
| @@ -302,7 +301,7 @@ import { | @@ -302,7 +301,7 @@ import { | ||
| 302 | updateDropPointInfo, | 301 | updateDropPointInfo, |
| 303 | exportDropPointInfo | 302 | exportDropPointInfo |
| 304 | } from "@/api/unit/dropPointInfo"; | 303 | } from "@/api/unit/dropPointInfo"; |
| 305 | -import {getAreaList} from "@/api/casefile/remoteServer"; | 304 | +import {getAreaList,getAreasList} from "@/api/dict" |
| 306 | import AMapLoader from "@amap/amap-jsapi-loader"; | 305 | import AMapLoader from "@amap/amap-jsapi-loader"; |
| 307 | import Treeselect from "@riophae/vue-treeselect"; | 306 | import Treeselect from "@riophae/vue-treeselect"; |
| 308 | 307 | ||
| @@ -356,7 +355,10 @@ export default { | @@ -356,7 +355,10 @@ export default { | ||
| 356 | {required: true, message: "请输入所属街道", trigger: "blur"} | 355 | {required: true, message: "请输入所属街道", trigger: "blur"} |
| 357 | ], | 356 | ], |
| 358 | community: [ | 357 | community: [ |
| 359 | - {required: true, message: "请输入社区", trigger: "blur"} | 358 | + {required: true, message: "请选择社区", trigger: "blur"} |
| 359 | + ], | ||
| 360 | + plot: [ | ||
| 361 | + {required: true, message: "请输入小区", trigger: "blur"} | ||
| 360 | ], | 362 | ], |
| 361 | address: [ | 363 | address: [ |
| 362 | {required: true, message: "请输入详细地址", trigger: "blur"} | 364 | {required: true, message: "请输入详细地址", trigger: "blur"} |
| @@ -378,7 +380,7 @@ export default { | @@ -378,7 +380,7 @@ export default { | ||
| 378 | {required: true, message: "请输入管理单位", trigger: "blur"} | 380 | {required: true, message: "请输入管理单位", trigger: "blur"} |
| 379 | ], | 381 | ], |
| 380 | custodian: [ | 382 | custodian: [ |
| 381 | - {required: true, message: "请输入管理人", trigger: "blur"} | 383 | + {required: true, message: "请输入管理员", trigger: "blur"} |
| 382 | ], | 384 | ], |
| 383 | custodianPhone: [ | 385 | custodianPhone: [ |
| 384 | {required: true, message: "请输入管理员电话", trigger: "blur"}, | 386 | {required: true, message: "请输入管理员电话", trigger: "blur"}, |
| @@ -391,9 +393,6 @@ export default { | @@ -391,9 +393,6 @@ export default { | ||
| 391 | dropTime: [ | 393 | dropTime: [ |
| 392 | {required: true, message: "请选择投放时间", trigger: "change"} | 394 | {required: true, message: "请选择投放时间", trigger: "change"} |
| 393 | ], | 395 | ], |
| 394 | - operatingUnit: [ | ||
| 395 | - {required: true, message: "请输入运营单位", trigger: "blur"} | ||
| 396 | - ], | ||
| 397 | transportUnit: [ | 396 | transportUnit: [ |
| 398 | {required: true, message: "请输入运输单位", trigger: "blur"} | 397 | {required: true, message: "请输入运输单位", trigger: "blur"} |
| 399 | ], | 398 | ], |
| @@ -401,160 +400,12 @@ export default { | @@ -401,160 +400,12 @@ export default { | ||
| 401 | {required: true, message: "请点击坐标点按钮选择坐标点", trigger: "blur"} | 400 | {required: true, message: "请点击坐标点按钮选择坐标点", trigger: "blur"} |
| 402 | ] | 401 | ] |
| 403 | }, | 402 | }, |
| 404 | - areas: [ | ||
| 405 | - { | ||
| 406 | - name: "芙蓉区", | ||
| 407 | - streets: [ | ||
| 408 | - {code: "FR01", name: "湘湖"}, | ||
| 409 | - {code: "FR02", name: "定王台街道"}, | ||
| 410 | - {code: "FR03", name: "韭菜园街道"}, | ||
| 411 | - {code: "FR04", name: "文艺路街道"}, | ||
| 412 | - {code: "FR05", name: "朝阳街道"}, | ||
| 413 | - {code: "FR06", name: "五里牌街道"}, | ||
| 414 | - {code: "FR07", name: "马王堆街道"}, | ||
| 415 | - {code: "FR08", name: "荷花园街道"}, | ||
| 416 | - {code: "FR09", name: "东屯渡街道"}, | ||
| 417 | - {code: "FR10", name: "火星街道"}, | ||
| 418 | - {code: "FR11", name: "东岸街道"}, | ||
| 419 | - {code: "FR12", name: "马坡岭街道"}, | ||
| 420 | - {code: "FR13", name: "东湖街道"} | ||
| 421 | - ] | ||
| 422 | - }, | ||
| 423 | - { | ||
| 424 | - name: "天心区", | ||
| 425 | - streets: [ | ||
| 426 | - {code: "TX01", name: "坡子街街道"}, | ||
| 427 | - {code: "TX02", name: "城南路街道"}, | ||
| 428 | - {code: "TX03", name: "裕南街街道"}, | ||
| 429 | - {code: "TX04", name: "赤岭路街道"}, | ||
| 430 | - {code: "TX05", name: "金盆岭街道"}, | ||
| 431 | - {code: "TX06", name: "新开铺街道"}, | ||
| 432 | - {code: "TX07", name: "文源街道"}, | ||
| 433 | - {code: "TX08", name: "桂花坪街道"}, | ||
| 434 | - {code: "TX09", name: "青园街道"}, | ||
| 435 | - {code: "TX10", name: "黑石铺街道"}, | ||
| 436 | - {code: "TX11", name: "大托铺街道"}, | ||
| 437 | - {code: "TX12", name: "先锋街道"}, | ||
| 438 | - {code: "TX13", name: "南托街道"}, | ||
| 439 | - {code: "TX14", name: "暮云街道"} | ||
| 440 | - ] | ||
| 441 | - }, | ||
| 442 | - { | ||
| 443 | - name: "开福区", | ||
| 444 | - streets: [ | ||
| 445 | - {code: "KF01", name: "望麓园街道"}, | ||
| 446 | - {code: "KF02", name: "清水塘街道"}, | ||
| 447 | - {code: "KF03", name: "湘雅路街道"}, | ||
| 448 | - {code: "KF04", name: "伍家岭街道"}, | ||
| 449 | - {code: "KF05", name: "新河街道"}, | ||
| 450 | - {code: "KF06", name: "东风路街道"}, | ||
| 451 | - {code: "KF07", name: "通泰街街道"}, | ||
| 452 | - {code: "KF08", name: "四方坪街道"}, | ||
| 453 | - {code: "KF09", name: "芙蓉北路街道"}, | ||
| 454 | - {code: "KF10", name: "洪山街道"}, | ||
| 455 | - {code: "KF11", name: "月湖街道"}, | ||
| 456 | - {code: "KF12", name: "浏阳河街道"}, | ||
| 457 | - {code: "KF13", name: "秀峰街道"}, | ||
| 458 | - {code: "KF14", name: "捞刀河街道"}, | ||
| 459 | - {code: "KF15", name: "沙坪街道"}, | ||
| 460 | - {code: "KF16", name: "青竹湖街道"} | ||
| 461 | - ] | ||
| 462 | - }, | ||
| 463 | - { | ||
| 464 | - name: "雨花区", | ||
| 465 | - streets: [ | ||
| 466 | - {code: "YH01", name: "雨花亭街道"}, | ||
| 467 | - {code: "YH02", name: "高桥街道"}, | ||
| 468 | - {code: "YH03", name: "左家塘街道"}, | ||
| 469 | - {code: "YH04", name: "侯家塘街道"}, | ||
| 470 | - {code: "YH05", name: "砂子塘街道"}, | ||
| 471 | - {code: "YH06", name: "东塘街道"}, | ||
| 472 | - {code: "YH07", name: "圭塘街道"}, | ||
| 473 | - {code: "YH08", name: "黎托街道"}, | ||
| 474 | - {code: "YH09", name: "洞井街道"}, | ||
| 475 | - {code: "YH10", name: "井湾子街道"}, | ||
| 476 | - {code: "YH11", name: "东山街道"}, | ||
| 477 | - {code: "YH12", name: "同升街道"}, | ||
| 478 | - {code: "YH13", name: "跳马镇"} | ||
| 479 | - ] | ||
| 480 | - }, | ||
| 481 | - { | ||
| 482 | - name: "长沙县", | ||
| 483 | - streets: [ | ||
| 484 | - {code: "CS01", name: "星沙街道"}, | ||
| 485 | - {code: "CS02", name: "湘龙街道"}, | ||
| 486 | - {code: "CS03", name: "泉塘街道"}, | ||
| 487 | - {code: "CS04", name: "榔梨街道"} | ||
| 488 | - ] | ||
| 489 | - }, | ||
| 490 | - { | ||
| 491 | - name: "望城", | ||
| 492 | - streets: [ | ||
| 493 | - {code: "WC01", name: "丁字湾街道"}, | ||
| 494 | - {code: "WC02", name: "书堂山街道"}, | ||
| 495 | - {code: "WC03", name: "高塘岭街道"}, | ||
| 496 | - {code: "WC04", name: "喻家坡街道"}, | ||
| 497 | - {code: "WC05", name: "白沙洲街道"}, | ||
| 498 | - {code: "WC06", name: "大泽湖街道"}, | ||
| 499 | - {code: "WC07", name: "月亮岛街道"}, | ||
| 500 | - {code: "WC08", name: "廖家坪街道"} | ||
| 501 | - ] | ||
| 502 | - }, | ||
| 503 | - { | ||
| 504 | - name: "浏阳", | ||
| 505 | - streets: [ | ||
| 506 | - {code: "LY01", name: "淮川街道"}, | ||
| 507 | - {code: "LY02", name: "集里街道"}, | ||
| 508 | - {code: "LY03", name: "荷花街道"}, | ||
| 509 | - {code: "LY04", name: "关口街道"} | ||
| 510 | - ] | ||
| 511 | - }, | ||
| 512 | - { | ||
| 513 | - name: "宁乡", | ||
| 514 | - streets: [ | ||
| 515 | - {code: "NX01", name: "玉潭街道"}, | ||
| 516 | - {code: "NX02", name: "城郊街道"}, | ||
| 517 | - {code: "NX03", name: "历经铺街道"}, | ||
| 518 | - {code: "NX04", name: "白马桥街道"}, | ||
| 519 | - {code: "NX05", name: "煤炭坝镇"}, | ||
| 520 | - {code: "NX06", name: "双凫铺镇"}, | ||
| 521 | - {code: "NX07", name: "双江口镇"}, | ||
| 522 | - {code: "NX08", name: "回龙铺镇"}, | ||
| 523 | - {code: "NX09", name: "夏铎铺镇"}, | ||
| 524 | - {code: "NX10", name: "历经铺镇"} | ||
| 525 | - ] | ||
| 526 | - }, | ||
| 527 | - { | ||
| 528 | - name: "湘江新区", | ||
| 529 | - streets: [ | ||
| 530 | - {code: "XJ01", name: "岳麓街道"}, | ||
| 531 | - {code: "XJ02", name: "桔子洲街道"}, | ||
| 532 | - {code: "XJ03", name: "望月湖街道"}, | ||
| 533 | - {code: "XJ04", name: "银盆岭街道"}, | ||
| 534 | - {code: "XJ05", name: "观沙岭街道"}, | ||
| 535 | - {code: "XJ06", name: "西湖街道"}, | ||
| 536 | - {code: "XJ07", name: "望城坡街道"}, | ||
| 537 | - {code: "XJ08", name: "望岳街道"}, | ||
| 538 | - {code: "XJ09", name: "咸嘉湖街道"}, | ||
| 539 | - {code: "XJ10", name: "梅溪湖街道"}, | ||
| 540 | - {code: "XJ11", name: "天顶街道"}, | ||
| 541 | - {code: "XJ12", name: "坪塘街道"}, | ||
| 542 | - {code: "XJ13", name: "洋湖街道"}, | ||
| 543 | - {code: "XJ14", name: "含浦街道"}, | ||
| 544 | - {code: "XJ15", name: "学士街道"}, | ||
| 545 | - {code: "XJ16", name: "莲花镇"}, | ||
| 546 | - {code: "XJ17", name: "雨敞坪镇"}, | ||
| 547 | - {code: "XJ18", name: "麓谷街道"}, | ||
| 548 | - {code: "XJ19", name: "东方红街道"}, | ||
| 549 | - {code: "XJ20", name: "白马街道"}, | ||
| 550 | - {code: "XJ21", name: "雷锋街道"}, | ||
| 551 | - {code: "XJ22", name: "黄金园街道"}, | ||
| 552 | - {code: "XJ23", name: "金山桥街道"}, | ||
| 553 | - {code: "XJ24", name: "白箬铺镇"} | ||
| 554 | - ] | ||
| 555 | - } | ||
| 556 | - ], | 403 | + //区域 |
| 404 | + areas: [], | ||
| 405 | + //街道 | ||
| 557 | streets:[], | 406 | streets:[], |
| 407 | + //社区 | ||
| 408 | + communitys:[], | ||
| 558 | // 地图 | 409 | // 地图 |
| 559 | map: null, | 410 | map: null, |
| 560 | keywords: "", | 411 | keywords: "", |
| @@ -562,13 +413,54 @@ export default { | @@ -562,13 +413,54 @@ export default { | ||
| 562 | openMap:false, | 413 | openMap:false, |
| 563 | center: null, | 414 | center: null, |
| 564 | circleMarker: null, | 415 | circleMarker: null, |
| 416 | + endTime: null, | ||
| 417 | + dropTime: true | ||
| 565 | }; | 418 | }; |
| 566 | }, | 419 | }, |
| 567 | created() { | 420 | created() { |
| 421 | + getAreasList().then(response => { | ||
| 422 | + if(response==null || response.length===0){ | ||
| 423 | + this.$message.error("获取区域列表失败"); | ||
| 424 | + return; | ||
| 425 | + } | ||
| 426 | + let data = response.filter(data => data.code === "430100" && data.code !== "430182" && data.code !== "430183" && data.code !== "430681"&& data.code !== "430624"); | ||
| 427 | + // console.log(data) | ||
| 428 | + this.areas = data[0].items.filter(data => data.code !== "430182" && data.code !== "430183" && data.code !== "430681"&& data.code !== "430624"); | ||
| 429 | + console.log(this.areas) | ||
| 430 | + // for (let dataKey in data) { | ||
| 431 | + // if(data[dataKey].parentCode === '430100'){ | ||
| 432 | + // this.areas.push({name:data[dataKey].name,code:data[dataKey].code, streets:[]}) | ||
| 433 | + // } | ||
| 434 | + // } | ||
| 435 | + // for(let dataKey in data){ | ||
| 436 | + // for(let areas1Key in this.areas){ | ||
| 437 | + // if(data[dataKey].parentCode === this.areas[areas1Key].code){ | ||
| 438 | + // this.areas[areas1Key].streets.push({code:data[dataKey].code, name:data[dataKey].name,item:data[dataKey].items}) | ||
| 439 | + // } | ||
| 440 | + // } | ||
| 441 | + // } | ||
| 442 | + }); | ||
| 443 | + | ||
| 568 | this.getList(); | 444 | this.getList(); |
| 569 | // this.initAMap(); | 445 | // this.initAMap(); |
| 570 | }, | 446 | }, |
| 571 | methods: { | 447 | methods: { |
| 448 | + dict(code){ | ||
| 449 | + for(let key in this.areas){ | ||
| 450 | + if(this.areas[key].code === code){ | ||
| 451 | + return this.areas[key].name; | ||
| 452 | + } | ||
| 453 | + } | ||
| 454 | + }, | ||
| 455 | + dictInfo(code){ | ||
| 456 | + for(let key in this.areas){ | ||
| 457 | + for(let keyInfo in this.areas[key].streets){ | ||
| 458 | + if(this.areas[key].streets[keyInfo].code === code){ | ||
| 459 | + return this.areas[key].streets[keyInfo].name; | ||
| 460 | + } | ||
| 461 | + } | ||
| 462 | + } | ||
| 463 | + }, | ||
| 572 | clearCoordinatePoint(){ | 464 | clearCoordinatePoint(){ |
| 573 | this.center = null; | 465 | this.center = null; |
| 574 | this.form.coordinatePoint = null; | 466 | this.form.coordinatePoint = null; |
| @@ -707,17 +599,25 @@ export default { | @@ -707,17 +599,25 @@ export default { | ||
| 707 | } | 599 | } |
| 708 | }, | 600 | }, |
| 709 | createDropPointNo(area){ | 601 | createDropPointNo(area){ |
| 710 | - listDropPointInfo({dropPointNo: area.code}).then(response => { | ||
| 711 | - const total = response.total+1; | ||
| 712 | - this.form.dropPointNo = area.code+total.toString().padStart(3, '0'); | ||
| 713 | - }); | 602 | + listDropPointInfo({dropPointNo: area.code}).then(response => { |
| 603 | + const total = response.total+1; | ||
| 604 | + this.form.dropPointNo = area.code+total.toString().padStart(3, '0'); | ||
| 605 | + }); | ||
| 606 | + | ||
| 714 | }, | 607 | }, |
| 715 | getStreets(regionName) { | 608 | getStreets(regionName) { |
| 716 | this.streets = []; | 609 | this.streets = []; |
| 717 | this.form.dropPointNo = null; | 610 | this.form.dropPointNo = null; |
| 718 | this.form.street = null; | 611 | this.form.street = null; |
| 719 | - const region = this.areas.find(region => region.name === regionName); | ||
| 720 | - this.streets = region.streets; | 612 | + const region = this.areas.find(region => region.code === regionName); |
| 613 | + this.streets = region.items; | ||
| 614 | + }, | ||
| 615 | + getCommunitys(regionName){ | ||
| 616 | + this.communitys = []; | ||
| 617 | + this.form.dropPointNo = null; | ||
| 618 | + this.form.community = null; | ||
| 619 | + const region = this.streets.find(region => region.code === regionName); | ||
| 620 | + this.communitys = region.items; | ||
| 721 | }, | 621 | }, |
| 722 | /** 下载文件 */ | 622 | /** 下载文件 */ |
| 723 | /** 查询投放点信息管理列表 */ | 623 | /** 查询投放点信息管理列表 */ |
| @@ -758,6 +658,9 @@ export default { | @@ -758,6 +658,9 @@ export default { | ||
| 758 | updateTime: null, | 658 | updateTime: null, |
| 759 | updateBy: null | 659 | updateBy: null |
| 760 | }; | 660 | }; |
| 661 | + this.endTime = null; | ||
| 662 | + this.streets = []; | ||
| 663 | + this.communitys = []; | ||
| 761 | this.map = null; | 664 | this.map = null; |
| 762 | this.center = null; | 665 | this.center = null; |
| 763 | this.resetForm("form"); | 666 | this.resetForm("form"); |
| @@ -788,26 +691,42 @@ export default { | @@ -788,26 +691,42 @@ export default { | ||
| 788 | handleUpdate(row) { | 691 | handleUpdate(row) { |
| 789 | this.reset(); | 692 | this.reset(); |
| 790 | const id = row.id || this.ids | 693 | const id = row.id || this.ids |
| 694 | + this.dropTime = false; | ||
| 791 | getDropPointInfo(id).then(response => { | 695 | getDropPointInfo(id).then(response => { |
| 696 | + let dropTime = response.data.dropTime.split("~"); | ||
| 697 | + console.log(dropTime) | ||
| 792 | this.form = response.data; | 698 | this.form = response.data; |
| 699 | + this.form.dropTime = dropTime[0]; | ||
| 700 | + this.endTime = dropTime[1]; | ||
| 793 | this.open = true; | 701 | this.open = true; |
| 794 | this.title = "修改投放点信息管理"; | 702 | this.title = "修改投放点信息管理"; |
| 703 | + this.dropTime = true; | ||
| 795 | }); | 704 | }); |
| 796 | }, | 705 | }, |
| 797 | /** 提交按钮 */ | 706 | /** 提交按钮 */ |
| 798 | submitForm() { | 707 | submitForm() { |
| 708 | + | ||
| 799 | this.$refs["form"].validate(valid => { | 709 | this.$refs["form"].validate(valid => { |
| 800 | if (valid) { | 710 | if (valid) { |
| 711 | + let dropTime = this.form.dropTime; | ||
| 712 | + if(this.endTime!=null){ | ||
| 713 | + this.form.dropTime = this.form.dropTime + "~" + this.endTime; | ||
| 714 | + }else{ | ||
| 715 | + this.$message.error("请选择投放结束时间"); | ||
| 716 | + return; | ||
| 717 | + } | ||
| 801 | if (this.form.id != null) { | 718 | if (this.form.id != null) { |
| 802 | updateDropPointInfo(this.form).then(response => { | 719 | updateDropPointInfo(this.form).then(response => { |
| 803 | this.msgSuccess("修改成功"); | 720 | this.msgSuccess("修改成功"); |
| 804 | this.open = false; | 721 | this.open = false; |
| 722 | + this.form.dropTime = dropTime; | ||
| 805 | this.getList(); | 723 | this.getList(); |
| 806 | }); | 724 | }); |
| 807 | } else { | 725 | } else { |
| 808 | addDropPointInfo(this.form).then(response => { | 726 | addDropPointInfo(this.form).then(response => { |
| 809 | this.msgSuccess("新增成功"); | 727 | this.msgSuccess("新增成功"); |
| 810 | this.open = false; | 728 | this.open = false; |
| 729 | + this.form.dropTime = dropTime; | ||
| 811 | this.getList(); | 730 | this.getList(); |
| 812 | }); | 731 | }); |
| 813 | } | 732 | } |
trash-unit/pom.xml
| @@ -20,5 +20,10 @@ | @@ -20,5 +20,10 @@ | ||
| 20 | <groupId>com.trash</groupId> | 20 | <groupId>com.trash</groupId> |
| 21 | <artifactId>trash-common</artifactId> | 21 | <artifactId>trash-common</artifactId> |
| 22 | </dependency> | 22 | </dependency> |
| 23 | + | ||
| 24 | + <dependency> | ||
| 25 | + <groupId>com.trash</groupId> | ||
| 26 | + <artifactId>trash-workflow</artifactId> | ||
| 27 | + </dependency> | ||
| 23 | </dependencies> | 28 | </dependencies> |
| 24 | </project> | 29 | </project> |
| 25 | \ No newline at end of file | 30 | \ No newline at end of file |
trash-unit/src/main/java/com/trash/dropPointInfo/domain/DropPointInfo.java
| @@ -2,6 +2,8 @@ package com.trash.dropPointInfo.domain; | @@ -2,6 +2,8 @@ package com.trash.dropPointInfo.domain; | ||
| 2 | 2 | ||
| 3 | import java.math.BigDecimal; | 3 | import java.math.BigDecimal; |
| 4 | import java.util.Date; | 4 | import java.util.Date; |
| 5 | +import java.util.List; | ||
| 6 | + | ||
| 5 | import com.fasterxml.jackson.annotation.JsonFormat; | 7 | import com.fasterxml.jackson.annotation.JsonFormat; |
| 6 | import org.apache.commons.lang3.builder.ToStringBuilder; | 8 | import org.apache.commons.lang3.builder.ToStringBuilder; |
| 7 | import org.apache.commons.lang3.builder.ToStringStyle; | 9 | import org.apache.commons.lang3.builder.ToStringStyle; |
| @@ -37,6 +39,10 @@ public class DropPointInfo extends BaseEntity | @@ -37,6 +39,10 @@ public class DropPointInfo extends BaseEntity | ||
| 37 | @Excel(name = "社区") | 39 | @Excel(name = "社区") |
| 38 | private String community; | 40 | private String community; |
| 39 | 41 | ||
| 42 | + /** 小区 */ | ||
| 43 | + @Excel(name = "小区") | ||
| 44 | + private String plot; | ||
| 45 | + | ||
| 40 | /** 详细地址 */ | 46 | /** 详细地址 */ |
| 41 | @Excel(name = "详细地址") | 47 | @Excel(name = "详细地址") |
| 42 | private String address; | 48 | private String address; |
| @@ -57,8 +63,8 @@ public class DropPointInfo extends BaseEntity | @@ -57,8 +63,8 @@ public class DropPointInfo extends BaseEntity | ||
| 57 | @Excel(name = "管理单位") | 63 | @Excel(name = "管理单位") |
| 58 | private String managementUnit; | 64 | private String managementUnit; |
| 59 | 65 | ||
| 60 | - /** 管理人 */ | ||
| 61 | - @Excel(name = "管理人") | 66 | + /** 管理员 */ |
| 67 | + @Excel(name = "管理员") | ||
| 62 | private String custodian; | 68 | private String custodian; |
| 63 | 69 | ||
| 64 | /** 管理员电话 */ | 70 | /** 管理员电话 */ |
| @@ -84,11 +90,28 @@ public class DropPointInfo extends BaseEntity | @@ -84,11 +90,28 @@ public class DropPointInfo extends BaseEntity | ||
| 84 | /** 坐标点 */ | 90 | /** 坐标点 */ |
| 85 | @Excel(name = "坐标点") | 91 | @Excel(name = "坐标点") |
| 86 | private String coordinatePoint; | 92 | private String coordinatePoint; |
| 87 | - | ||
| 88 | - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | 93 | + |
| 94 | + private List<String> sList; | ||
| 95 | + | ||
| 96 | + public List<String> getSList() { | ||
| 97 | + return sList; | ||
| 98 | + } | ||
| 99 | + | ||
| 100 | + public void setSList(List<String> sList) { | ||
| 101 | + this.sList = sList; | ||
| 102 | + } | ||
| 103 | + | ||
| 104 | + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | ||
| 89 | @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | 105 | @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") |
| 90 | private Date createTime; | 106 | private Date createTime; |
| 91 | 107 | ||
| 108 | + public String getPlot() { | ||
| 109 | + return plot; | ||
| 110 | + } | ||
| 111 | + | ||
| 112 | + public void setPlot(String plot) { | ||
| 113 | + this.plot = plot; | ||
| 114 | + } | ||
| 92 | 115 | ||
| 93 | public String getCoordinatePoint() { | 116 | public String getCoordinatePoint() { |
| 94 | return coordinatePoint; | 117 | return coordinatePoint; |
trash-unit/src/main/java/com/trash/dropPointInfo/service/impl/DropPointInfoServiceImpl.java
| 1 | package com.trash.dropPointInfo.service.impl; | 1 | package com.trash.dropPointInfo.service.impl; |
| 2 | 2 | ||
| 3 | +import java.util.ArrayList; | ||
| 4 | +import java.util.HashMap; | ||
| 3 | import java.util.List; | 5 | import java.util.List; |
| 6 | +import java.util.Map; | ||
| 7 | + | ||
| 4 | import com.trash.common.utils.DateUtils; | 8 | import com.trash.common.utils.DateUtils; |
| 5 | import com.trash.common.utils.SecurityUtils; | 9 | import com.trash.common.utils.SecurityUtils; |
| 10 | +import com.trash.common.utils.spring.SpringUtils; | ||
| 11 | + | ||
| 6 | import org.springframework.beans.factory.annotation.Autowired; | 12 | import org.springframework.beans.factory.annotation.Autowired; |
| 13 | +import org.springframework.security.core.annotation.AuthenticationPrincipal; | ||
| 7 | import org.springframework.stereotype.Service; | 14 | import org.springframework.stereotype.Service; |
| 8 | import com.trash.dropPointInfo.mapper.DropPointInfoMapper; | 15 | import com.trash.dropPointInfo.mapper.DropPointInfoMapper; |
| 9 | import com.trash.dropPointInfo.domain.DropPointInfo; | 16 | import com.trash.dropPointInfo.domain.DropPointInfo; |
| 10 | import com.trash.dropPointInfo.service.IDropPointInfoService; | 17 | import com.trash.dropPointInfo.service.IDropPointInfoService; |
| 18 | +import com.trash.office.mapper.UploadFileMapper; | ||
| 19 | +import com.trash.workflow.service.IWorkflowService; | ||
| 11 | 20 | ||
| 12 | /** | 21 | /** |
| 13 | * 投放点信息管理Service业务层处理 | 22 | * 投放点信息管理Service业务层处理 |
| @@ -41,8 +50,16 @@ public class DropPointInfoServiceImpl implements IDropPointInfoService | @@ -41,8 +50,16 @@ public class DropPointInfoServiceImpl implements IDropPointInfoService | ||
| 41 | */ | 50 | */ |
| 42 | @Override | 51 | @Override |
| 43 | public List<DropPointInfo> selectDropPointInfoList(DropPointInfo dropPointInfo) | 52 | public List<DropPointInfo> selectDropPointInfoList(DropPointInfo dropPointInfo) |
| 44 | - { | ||
| 45 | - return dropPointInfoMapper.selectDropPointInfoList(dropPointInfo); | 53 | + { |
| 54 | + List<String> ids = SecurityUtils.getLoginUser().getUser().getStreetsList(); | ||
| 55 | + | ||
| 56 | + if(ids.size() > 0){ | ||
| 57 | + dropPointInfo.setSList(ids); | ||
| 58 | + return dropPointInfoMapper.selectDropPointInfoList(dropPointInfo); | ||
| 59 | + } | ||
| 60 | + | ||
| 61 | + return new ArrayList<DropPointInfo>(); | ||
| 62 | + | ||
| 46 | } | 63 | } |
| 47 | 64 | ||
| 48 | /** | 65 | /** |
| @@ -51,12 +68,31 @@ public class DropPointInfoServiceImpl implements IDropPointInfoService | @@ -51,12 +68,31 @@ public class DropPointInfoServiceImpl implements IDropPointInfoService | ||
| 51 | * @param dropPointInfo 投放点信息管理 | 68 | * @param dropPointInfo 投放点信息管理 |
| 52 | * @return 结果 | 69 | * @return 结果 |
| 53 | */ | 70 | */ |
| 71 | + @Autowired | ||
| 72 | + IWorkflowService workflow; | ||
| 73 | + | ||
| 54 | @Override | 74 | @Override |
| 55 | public int insertDropPointInfo(DropPointInfo dropPointInfo) | 75 | public int insertDropPointInfo(DropPointInfo dropPointInfo) |
| 56 | { | 76 | { |
| 57 | dropPointInfo.setCreateTime(DateUtils.getNowDate()); | 77 | dropPointInfo.setCreateTime(DateUtils.getNowDate()); |
| 58 | dropPointInfo.setCreateBy(SecurityUtils.getUsername()); | 78 | dropPointInfo.setCreateBy(SecurityUtils.getUsername()); |
| 59 | - return dropPointInfoMapper.insertDropPointInfo(dropPointInfo); | 79 | + |
| 80 | + int i = dropPointInfoMapper.insertDropPointInfo(dropPointInfo); | ||
| 81 | + | ||
| 82 | + if(i == 0){ | ||
| 83 | + return i; | ||
| 84 | + } | ||
| 85 | + Map<String, String> map = new HashMap<String, String>(); | ||
| 86 | + map.put("name", dropPointInfo.getDropPointName()); | ||
| 87 | + map.put("area", dropPointInfo.getDistrict()); | ||
| 88 | + map.put("id", dropPointInfo.getId()+""); | ||
| 89 | + | ||
| 90 | + i = workflow.createDropPointWorkFlow(map); | ||
| 91 | + if (i == 0) { | ||
| 92 | + dropPointInfoMapper.deleteDropPointInfoById(dropPointInfo.getId()); | ||
| 93 | + } | ||
| 94 | + | ||
| 95 | + return i; | ||
| 60 | } | 96 | } |
| 61 | 97 | ||
| 62 | /** | 98 | /** |
trash-unit/src/main/resources/mapper/unit/DropPointInfoMapper.xml
| @@ -3,134 +3,154 @@ | @@ -3,134 +3,154 @@ | ||
| 3 | PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | 3 | PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
| 4 | "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | 4 | "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| 5 | <mapper namespace="com.trash.dropPointInfo.mapper.DropPointInfoMapper"> | 5 | <mapper namespace="com.trash.dropPointInfo.mapper.DropPointInfoMapper"> |
| 6 | - | ||
| 7 | - <resultMap type="DropPointInfo" id="DropPointInfoResult"> | ||
| 8 | - <result property="id" column="id" /> | ||
| 9 | - <result property="dropPointName" column="drop_point_name" /> | ||
| 10 | - <result property="district" column="district" /> | ||
| 11 | - <result property="street" column="street" /> | ||
| 12 | - <result property="community" column="community" /> | ||
| 13 | - <result property="address" column="address" /> | ||
| 14 | - <result property="type" column="type" /> | ||
| 15 | - <result property="area" column="area" /> | ||
| 16 | - <result property="capacity" column="capacity" /> | ||
| 17 | - <result property="managementUnit" column="management_unit" /> | ||
| 18 | - <result property="custodian" column="custodian" /> | ||
| 19 | - <result property="custodianPhone" column="custodian_phone" /> | ||
| 20 | - <result property="dropTime" column="drop_time" /> | ||
| 21 | - <result property="dropPointNo" column="drop_point_no" /> | ||
| 22 | - <result property="operatingUnit" column="operating_unit" /> | ||
| 23 | - <result property="transportUnit" column="transport_unit" /> | ||
| 24 | - <result property="coordinatePoint" column="coordinate_point" /> | ||
| 25 | - <result property="createTime" column="create_time" /> | ||
| 26 | - <result property="createBy" column="create_by" /> | ||
| 27 | - <result property="updateTime" column="update_time" /> | ||
| 28 | - <result property="updateBy" column="update_by" /> | ||
| 29 | - </resultMap> | ||
| 30 | 6 | ||
| 31 | - <sql id="selectDropPointInfoVo"> | ||
| 32 | - select id, drop_point_name, district, street, community, address, type, area, capacity, management_unit, custodian, custodian_phone, drop_time, drop_point_no, operating_unit, transport_unit,coordinate_point, create_time, create_by, update_time, update_by from drop_point_info | ||
| 33 | - </sql> | 7 | + <resultMap type="DropPointInfo" id="DropPointInfoResult"> |
| 8 | + <result property="id" column="id" /> | ||
| 9 | + <result property="dropPointName" column="drop_point_name" /> | ||
| 10 | + <result property="district" column="district" /> | ||
| 11 | + <result property="street" column="street" /> | ||
| 12 | + <result property="community" column="community" /> | ||
| 13 | + <result property="address" column="address" /> | ||
| 14 | + <result property="type" column="type" /> | ||
| 15 | + <result property="area" column="area" /> | ||
| 16 | + <result property="capacity" column="capacity" /> | ||
| 17 | + <result property="managementUnit" column="management_unit" /> | ||
| 18 | + <result property="custodian" column="custodian" /> | ||
| 19 | + <result property="custodianPhone" column="custodian_phone" /> | ||
| 20 | + <result property="dropTime" column="drop_time" /> | ||
| 21 | + <result property="dropPointNo" column="drop_point_no" /> | ||
| 22 | + <result property="operatingUnit" column="operating_unit" /> | ||
| 23 | + <result property="transportUnit" column="transport_unit" /> | ||
| 24 | + <result property="coordinatePoint" column="coordinate_point" /> | ||
| 25 | + <result property="createTime" column="create_time" /> | ||
| 26 | + <result property="createBy" column="create_by" /> | ||
| 27 | + <result property="updateTime" column="update_time" /> | ||
| 28 | + <result property="updateBy" column="update_by" /> | ||
| 29 | + <result property="plot" column="plot" /> | ||
| 30 | + </resultMap> | ||
| 34 | 31 | ||
| 35 | - <select id="selectDropPointInfoList" parameterType="DropPointInfo" resultMap="DropPointInfoResult"> | ||
| 36 | - <include refid="selectDropPointInfoVo"/> | ||
| 37 | - <where> | ||
| 38 | - <if test="dropPointName != null and dropPointName != ''"> and drop_point_name like concat('%', #{dropPointName}, '%')</if> | ||
| 39 | - <if test="address != null and address != ''"> and address like concat('%', #{address}, '%')</if> | ||
| 40 | - <if test="type != null and type != ''"> and type = #{type}</if> | ||
| 41 | - <if test="dropPointNo != null and dropPointNo != ''"> and drop_point_no like concat(#{dropPointNo}, '%')</if> | ||
| 42 | - </where> | ||
| 43 | - </select> | ||
| 44 | - | ||
| 45 | - <select id="selectDropPointInfoById" parameterType="Long" resultMap="DropPointInfoResult"> | ||
| 46 | - <include refid="selectDropPointInfoVo"/> | ||
| 47 | - where id = #{id} | ||
| 48 | - </select> | ||
| 49 | - | ||
| 50 | - <insert id="insertDropPointInfo" parameterType="DropPointInfo" useGeneratedKeys="true" keyProperty="id"> | ||
| 51 | - insert into drop_point_info | ||
| 52 | - <trim prefix="(" suffix=")" suffixOverrides=","> | ||
| 53 | - <if test="dropPointName != null">drop_point_name,</if> | ||
| 54 | - <if test="district != null">district,</if> | ||
| 55 | - <if test="street != null">street,</if> | ||
| 56 | - <if test="community != null">community,</if> | ||
| 57 | - <if test="address != null">address,</if> | ||
| 58 | - <if test="type != null">type,</if> | ||
| 59 | - <if test="area != null">area,</if> | ||
| 60 | - <if test="capacity != null">capacity,</if> | ||
| 61 | - <if test="managementUnit != null">management_unit,</if> | ||
| 62 | - <if test="custodian != null">custodian,</if> | ||
| 63 | - <if test="custodianPhone != null">custodian_phone,</if> | ||
| 64 | - <if test="dropTime != null">drop_time,</if> | ||
| 65 | - <if test="dropPointNo != null">drop_point_no,</if> | ||
| 66 | - <if test="operatingUnit != null">operating_unit,</if> | ||
| 67 | - <if test="transportUnit != null">transport_unit,</if> | ||
| 68 | - <if test="coordinatePoint != null">coordinate_point,</if> | ||
| 69 | - <if test="createTime != null">create_time,</if> | ||
| 70 | - <if test="createBy != null">create_by,</if> | ||
| 71 | - <if test="updateTime != null">update_time,</if> | ||
| 72 | - <if test="updateBy != null">update_by,</if> | ||
| 73 | - </trim> | ||
| 74 | - <trim prefix="values (" suffix=")" suffixOverrides=","> | ||
| 75 | - <if test="dropPointName != null">#{dropPointName},</if> | ||
| 76 | - <if test="district != null">#{district},</if> | ||
| 77 | - <if test="street != null">#{street},</if> | ||
| 78 | - <if test="community != null">#{community},</if> | ||
| 79 | - <if test="address != null">#{address},</if> | ||
| 80 | - <if test="type != null">#{type},</if> | ||
| 81 | - <if test="area != null">#{area},</if> | ||
| 82 | - <if test="capacity != null">#{capacity},</if> | ||
| 83 | - <if test="managementUnit != null">#{managementUnit},</if> | ||
| 84 | - <if test="custodian != null">#{custodian},</if> | ||
| 85 | - <if test="custodianPhone != null">#{custodianPhone},</if> | ||
| 86 | - <if test="dropTime != null">#{dropTime},</if> | ||
| 87 | - <if test="dropPointNo != null">#{dropPointNo},</if> | ||
| 88 | - <if test="operatingUnit != null">#{operatingUnit},</if> | ||
| 89 | - <if test="transportUnit != null">#{transportUnit},</if> | ||
| 90 | - <if test="coordinatePoint != null">#{coordinatePoint},</if> | ||
| 91 | - <if test="createTime != null">#{createTime},</if> | ||
| 92 | - <if test="createBy != null">#{createBy},</if> | ||
| 93 | - <if test="updateTime != null">#{updateTime},</if> | ||
| 94 | - <if test="updateBy != null">#{updateBy},</if> | ||
| 95 | - </trim> | ||
| 96 | - </insert> | 32 | + <sql id="selectDropPointInfoVo"> |
| 33 | + select id, drop_point_name, district, street, community, address, type, | ||
| 34 | + area, capacity, management_unit, custodian, custodian_phone, | ||
| 35 | + drop_time, drop_point_no, operating_unit, | ||
| 36 | + transport_unit,coordinate_point, create_time, create_by, update_time, | ||
| 37 | + update_by,plot from drop_point_info | ||
| 38 | + </sql> | ||
| 97 | 39 | ||
| 98 | - <update id="updateDropPointInfo" parameterType="DropPointInfo"> | ||
| 99 | - update drop_point_info | ||
| 100 | - <trim prefix="SET" suffixOverrides=","> | ||
| 101 | - <if test="dropPointName != null">drop_point_name = #{dropPointName},</if> | ||
| 102 | - <if test="district != null">district = #{district},</if> | ||
| 103 | - <if test="street != null">street = #{street},</if> | ||
| 104 | - <if test="community != null">community = #{community},</if> | ||
| 105 | - <if test="address != null">address = #{address},</if> | ||
| 106 | - <if test="type != null">type = #{type},</if> | ||
| 107 | - <if test="area != null">area = #{area},</if> | ||
| 108 | - <if test="capacity != null">capacity = #{capacity},</if> | ||
| 109 | - <if test="managementUnit != null">management_unit = #{managementUnit},</if> | ||
| 110 | - <if test="custodian != null">custodian = #{custodian},</if> | ||
| 111 | - <if test="custodianPhone != null">custodian_phone = #{custodianPhone},</if> | ||
| 112 | - <if test="dropTime != null">drop_time = #{dropTime},</if> | ||
| 113 | - <if test="dropPointNo != null">drop_point_no = #{dropPointNo},</if> | ||
| 114 | - <if test="operatingUnit != null">operating_unit = #{operatingUnit},</if> | ||
| 115 | - <if test="transportUnit != null">transport_unit = #{transportUnit},</if> | ||
| 116 | - <if test="coordinatePoint != null">coordinate_point = #{coordinatePoint},</if> | ||
| 117 | - <if test="createTime != null">create_time = #{createTime},</if> | ||
| 118 | - <if test="createBy != null">create_by = #{createBy},</if> | ||
| 119 | - <if test="updateTime != null">update_time = #{updateTime},</if> | ||
| 120 | - <if test="updateBy != null">update_by = #{updateBy},</if> | ||
| 121 | - </trim> | ||
| 122 | - where id = #{id} | ||
| 123 | - </update> | 40 | + <select id="selectDropPointInfoList" parameterType="DropPointInfo" |
| 41 | + resultMap="DropPointInfoResult"> | ||
| 42 | + <include refid="selectDropPointInfoVo" /> | ||
| 43 | + <where> | ||
| 44 | + <if test="dropPointName != null and dropPointName != ''"> and drop_point_name like concat('%', #{dropPointName}, | ||
| 45 | + '%')</if> | ||
| 46 | + <if test="address != null and address != ''"> and address like concat('%', #{address}, '%')</if> | ||
| 47 | + <if test="type != null and type != ''"> and type = #{type}</if> | ||
| 48 | + <if test="dropPointNo != null and dropPointNo != ''"> and drop_point_no like concat(#{dropPointNo}, '%')</if> | ||
| 49 | + <if test="sList != null and sList.size() > 0 "> | ||
| 50 | + and street in | ||
| 51 | + <foreach item="id" collection="sList" open="(" separator="," | ||
| 52 | + close=")"> | ||
| 53 | + #{id} | ||
| 54 | + </foreach> | ||
| 55 | + </if> | ||
| 56 | + </where> | ||
| 57 | + </select> | ||
| 124 | 58 | ||
| 125 | - <delete id="deleteDropPointInfoById" parameterType="Long"> | ||
| 126 | - delete from drop_point_info where id = #{id} | ||
| 127 | - </delete> | 59 | + <select id="selectDropPointInfoById" parameterType="Long" |
| 60 | + resultMap="DropPointInfoResult"> | ||
| 61 | + <include refid="selectDropPointInfoVo" /> | ||
| 62 | + where id = #{id} | ||
| 63 | + </select> | ||
| 64 | + | ||
| 65 | + <insert id="insertDropPointInfo" parameterType="DropPointInfo" | ||
| 66 | + useGeneratedKeys="true" keyProperty="id"> | ||
| 67 | + insert into drop_point_info | ||
| 68 | + <trim prefix="(" suffix=")" suffixOverrides=","> | ||
| 69 | + <if test="dropPointName != null">drop_point_name,</if> | ||
| 70 | + <if test="district != null">district,</if> | ||
| 71 | + <if test="street != null">street,</if> | ||
| 72 | + <if test="community != null">community,</if> | ||
| 73 | + <if test="address != null">address,</if> | ||
| 74 | + <if test="type != null">type,</if> | ||
| 75 | + <if test="area != null">area,</if> | ||
| 76 | + <if test="capacity != null">capacity,</if> | ||
| 77 | + <if test="managementUnit != null">management_unit,</if> | ||
| 78 | + <if test="custodian != null">custodian,</if> | ||
| 79 | + <if test="custodianPhone != null">custodian_phone,</if> | ||
| 80 | + <if test="dropTime != null">drop_time,</if> | ||
| 81 | + <if test="dropPointNo != null">drop_point_no,</if> | ||
| 82 | + <if test="operatingUnit != null">operating_unit,</if> | ||
| 83 | + <if test="transportUnit != null">transport_unit,</if> | ||
| 84 | + <if test="coordinatePoint != null">coordinate_point,</if> | ||
| 85 | + <if test="createTime != null">create_time,</if> | ||
| 86 | + <if test="createBy != null">create_by,</if> | ||
| 87 | + <if test="updateTime != null">update_time,</if> | ||
| 88 | + <if test="updateBy != null">update_by,</if> | ||
| 89 | + <if test="plot != null">plot,</if> | ||
| 90 | + </trim> | ||
| 91 | + <trim prefix="values (" suffix=")" suffixOverrides=","> | ||
| 92 | + <if test="dropPointName != null">#{dropPointName},</if> | ||
| 93 | + <if test="district != null">#{district},</if> | ||
| 94 | + <if test="street != null">#{street},</if> | ||
| 95 | + <if test="community != null">#{community},</if> | ||
| 96 | + <if test="address != null">#{address},</if> | ||
| 97 | + <if test="type != null">#{type},</if> | ||
| 98 | + <if test="area != null">#{area},</if> | ||
| 99 | + <if test="capacity != null">#{capacity},</if> | ||
| 100 | + <if test="managementUnit != null">#{managementUnit},</if> | ||
| 101 | + <if test="custodian != null">#{custodian},</if> | ||
| 102 | + <if test="custodianPhone != null">#{custodianPhone},</if> | ||
| 103 | + <if test="dropTime != null">#{dropTime},</if> | ||
| 104 | + <if test="dropPointNo != null">#{dropPointNo},</if> | ||
| 105 | + <if test="operatingUnit != null">#{operatingUnit},</if> | ||
| 106 | + <if test="transportUnit != null">#{transportUnit},</if> | ||
| 107 | + <if test="coordinatePoint != null">#{coordinatePoint},</if> | ||
| 108 | + <if test="createTime != null">#{createTime},</if> | ||
| 109 | + <if test="createBy != null">#{createBy},</if> | ||
| 110 | + <if test="updateTime != null">#{updateTime},</if> | ||
| 111 | + <if test="updateBy != null">#{updateBy},</if> | ||
| 112 | + <if test="plot != null">#{plot},</if> | ||
| 113 | + </trim> | ||
| 114 | + </insert> | ||
| 115 | + | ||
| 116 | + <update id="updateDropPointInfo" parameterType="DropPointInfo"> | ||
| 117 | + update drop_point_info | ||
| 118 | + <trim prefix="SET" suffixOverrides=","> | ||
| 119 | + <if test="dropPointName != null">drop_point_name = #{dropPointName},</if> | ||
| 120 | + <if test="district != null">district = #{district},</if> | ||
| 121 | + <if test="street != null">street = #{street},</if> | ||
| 122 | + <if test="community != null">community = #{community},</if> | ||
| 123 | + <if test="address != null">address = #{address},</if> | ||
| 124 | + <if test="type != null">type = #{type},</if> | ||
| 125 | + <if test="area != null">area = #{area},</if> | ||
| 126 | + <if test="capacity != null">capacity = #{capacity},</if> | ||
| 127 | + <if test="managementUnit != null">management_unit = #{managementUnit},</if> | ||
| 128 | + <if test="custodian != null">custodian = #{custodian},</if> | ||
| 129 | + <if test="custodianPhone != null">custodian_phone = #{custodianPhone},</if> | ||
| 130 | + <if test="dropTime != null">drop_time = #{dropTime},</if> | ||
| 131 | + <if test="dropPointNo != null">drop_point_no = #{dropPointNo},</if> | ||
| 132 | + <if test="operatingUnit != null">operating_unit = #{operatingUnit},</if> | ||
| 133 | + <if test="transportUnit != null">transport_unit = #{transportUnit},</if> | ||
| 134 | + <if test="coordinatePoint != null">coordinate_point = #{coordinatePoint},</if> | ||
| 135 | + <if test="createTime != null">create_time = #{createTime},</if> | ||
| 136 | + <if test="createBy != null">create_by = #{createBy},</if> | ||
| 137 | + <if test="updateTime != null">update_time = #{updateTime},</if> | ||
| 138 | + <if test="updateBy != null">update_by = #{updateBy},</if> | ||
| 139 | + <if test="plot != null">plot = #{plot},</if> | ||
| 140 | + </trim> | ||
| 141 | + where id = #{id} | ||
| 142 | + </update> | ||
| 143 | + | ||
| 144 | + <delete id="deleteDropPointInfoById" parameterType="Long"> | ||
| 145 | + delete from drop_point_info where id = #{id} | ||
| 146 | + </delete> | ||
| 147 | + | ||
| 148 | + <delete id="deleteDropPointInfoByIds" parameterType="String"> | ||
| 149 | + delete from drop_point_info where id in | ||
| 150 | + <foreach item="id" collection="array" open="(" separator="," | ||
| 151 | + close=")"> | ||
| 152 | + #{id} | ||
| 153 | + </foreach> | ||
| 154 | + </delete> | ||
| 128 | 155 | ||
| 129 | - <delete id="deleteDropPointInfoByIds" parameterType="String"> | ||
| 130 | - delete from drop_point_info where id in | ||
| 131 | - <foreach item="id" collection="array" open="(" separator="," close=")"> | ||
| 132 | - #{id} | ||
| 133 | - </foreach> | ||
| 134 | - </delete> | ||
| 135 | - | ||
| 136 | </mapper> | 156 | </mapper> |
| 137 | \ No newline at end of file | 157 | \ No newline at end of file |
trash-workFlow/pom.xml
| @@ -21,7 +21,6 @@ | @@ -21,7 +21,6 @@ | ||
| 21 | <groupId>com.trash</groupId> | 21 | <groupId>com.trash</groupId> |
| 22 | <artifactId>trash-common</artifactId> | 22 | <artifactId>trash-common</artifactId> |
| 23 | </dependency> | 23 | </dependency> |
| 24 | - | ||
| 25 | <!-- kafka --> | 24 | <!-- kafka --> |
| 26 | <dependency> | 25 | <dependency> |
| 27 | <groupId>org.springframework.kafka</groupId> | 26 | <groupId>org.springframework.kafka</groupId> |
trash-workFlow/src/main/java/com/trash/business/controller/TruckActivateController.java
| @@ -185,7 +185,7 @@ public class TruckActivateController extends BaseController | @@ -185,7 +185,7 @@ public class TruckActivateController extends BaseController | ||
| 185 | info.setAddress(turck.getAddress()); | 185 | info.setAddress(turck.getAddress()); |
| 186 | info.setEarthName(turck.getEarthName()); | 186 | info.setEarthName(turck.getEarthName()); |
| 187 | info.setRouteName(turck.getRouteName()); | 187 | info.setRouteName(turck.getRouteName()); |
| 188 | - info.setTransportEndTime(turck.getTransportStartTime()); | 188 | + info.setTransportEndTime(turck.getTransportEndTime()); |
| 189 | info.setTransportStartTime(turck.getTransportStartTime()); | 189 | info.setTransportStartTime(turck.getTransportStartTime()); |
| 190 | info.setEffectiveFrom(turck.getEffectiveFrom()); | 190 | info.setEffectiveFrom(turck.getEffectiveFrom()); |
| 191 | info.setEffectiveEnd(turck.getEffectiveEnd()); | 191 | info.setEffectiveEnd(turck.getEffectiveEnd()); |
trash-workFlow/src/main/java/com/trash/business/domain/SupervisionThreestep.java
| @@ -138,10 +138,20 @@ public class SupervisionThreestep extends BaseEntity | @@ -138,10 +138,20 @@ public class SupervisionThreestep extends BaseEntity | ||
| 138 | private String attchItem2; | 138 | private String attchItem2; |
| 139 | private String attchItem3; | 139 | private String attchItem3; |
| 140 | 140 | ||
| 141 | + private String checkStatus; | ||
| 142 | + | ||
| 141 | private String[] places; | 143 | private String[] places; |
| 142 | 144 | ||
| 143 | 145 | ||
| 144 | - public String[] getPlaces() { | 146 | + public String getCheckStatus() { |
| 147 | + return checkStatus; | ||
| 148 | + } | ||
| 149 | + | ||
| 150 | + public void setCheckStatus(String checkStatus) { | ||
| 151 | + this.checkStatus = checkStatus; | ||
| 152 | + } | ||
| 153 | + | ||
| 154 | + public String[] getPlaces() { | ||
| 145 | return places; | 155 | return places; |
| 146 | } | 156 | } |
| 147 | 157 |
trash-workFlow/src/main/java/com/trash/business/mapper/GarMapper.java
0 → 100644
trash-workFlow/src/main/java/com/trash/business/service/impl/DriverCreditServiceImpl.java
| @@ -5,6 +5,7 @@ import java.util.Date; | @@ -5,6 +5,7 @@ import java.util.Date; | ||
| 5 | import java.util.HashMap; | 5 | import java.util.HashMap; |
| 6 | import java.util.List; | 6 | import java.util.List; |
| 7 | import java.util.Map; | 7 | import java.util.Map; |
| 8 | +import java.util.concurrent.TimeUnit; | ||
| 8 | 9 | ||
| 9 | import com.trash.business.domain.TruckCredit; | 10 | import com.trash.business.domain.TruckCredit; |
| 10 | import org.springframework.beans.factory.annotation.Autowired; | 11 | import org.springframework.beans.factory.annotation.Autowired; |
| @@ -23,6 +24,8 @@ import com.trash.common.utils.util.PostSms; | @@ -23,6 +24,8 @@ import com.trash.common.utils.util.PostSms; | ||
| 23 | import com.trash.common.utils.vo.mt.JsonSmsSend; | 24 | import com.trash.common.utils.vo.mt.JsonSmsSend; |
| 24 | import com.trash.common.utils.vo.mt.Mobile; | 25 | import com.trash.common.utils.vo.mt.Mobile; |
| 25 | 26 | ||
| 27 | +import ch.qos.logback.core.util.TimeUtil; | ||
| 28 | + | ||
| 26 | import org.springframework.transaction.annotation.Transactional; | 29 | import org.springframework.transaction.annotation.Transactional; |
| 27 | 30 | ||
| 28 | /** | 31 | /** |
| @@ -32,276 +35,300 @@ import org.springframework.transaction.annotation.Transactional; | @@ -32,276 +35,300 @@ import org.springframework.transaction.annotation.Transactional; | ||
| 32 | * @date 2023-04-26 | 35 | * @date 2023-04-26 |
| 33 | */ | 36 | */ |
| 34 | @Service | 37 | @Service |
| 35 | -public class DriverCreditServiceImpl implements IDriverCreditService | ||
| 36 | -{ | ||
| 37 | - @Autowired | ||
| 38 | - private DriverCreditMapper driverCreditMapper; | ||
| 39 | - | ||
| 40 | - @Autowired | ||
| 41 | - RedisCache redisCache; | ||
| 42 | - | ||
| 43 | - /** | ||
| 44 | - * 查询驾驶员失信 | ||
| 45 | - * | ||
| 46 | - * @param id 驾驶员失信ID | ||
| 47 | - * @return 驾驶员失信 | ||
| 48 | - */ | ||
| 49 | - @Override | ||
| 50 | - public DriverCredit selectDriverCreditById(Long id) | ||
| 51 | - { | ||
| 52 | - return driverCreditMapper.selectDriverCreditById(id); | ||
| 53 | - } | ||
| 54 | - | ||
| 55 | - /** | ||
| 56 | - * 查询驾驶员失信列表 | ||
| 57 | - * | ||
| 58 | - * @param driverCredit 驾驶员失信 | ||
| 59 | - * @return 驾驶员失信 | ||
| 60 | - */ | ||
| 61 | - @Autowired | ||
| 62 | - private trashConfig trashConfig; | ||
| 63 | - | ||
| 64 | - @Autowired | ||
| 65 | - RedisCache redis; | ||
| 66 | - | ||
| 67 | - @Override | ||
| 68 | - public List<DriverCredit> selectDriverCreditList(DriverCredit driverCredit) | ||
| 69 | - { | ||
| 70 | - | ||
| 71 | - List<DriverCredit> list = new ArrayList<>(); | ||
| 72 | - | ||
| 73 | - List<String> companys = SecurityUtils.getLoginUser().getUser().getCompanyIds(); | ||
| 74 | - List<String> areas = SecurityUtils.getLoginUser().getUser().getCompanyAreas(); | ||
| 75 | - | ||
| 76 | - | ||
| 77 | - if(areas.size() > 0) { | ||
| 78 | - JSONArray array = redis.getCacheObject("companyList"); | ||
| 79 | - if(array != null) { | ||
| 80 | - for(Object obj:array) { | ||
| 81 | - JSONObject json = (JSONObject)obj; | ||
| 82 | - if(areas.indexOf(json.getString("areaCode")) > -1) { | ||
| 83 | - companys.add(json.getString("id")); | ||
| 84 | - } | 38 | +public class DriverCreditServiceImpl implements IDriverCreditService { |
| 39 | + @Autowired | ||
| 40 | + private DriverCreditMapper driverCreditMapper; | ||
| 41 | + | ||
| 42 | + @Autowired | ||
| 43 | + RedisCache redisCache; | ||
| 44 | + | ||
| 45 | + /** | ||
| 46 | + * 查询驾驶员失信 | ||
| 47 | + * | ||
| 48 | + * @param id | ||
| 49 | + * 驾驶员失信ID | ||
| 50 | + * @return 驾驶员失信 | ||
| 51 | + */ | ||
| 52 | + @Override | ||
| 53 | + public DriverCredit selectDriverCreditById(Long id) { | ||
| 54 | + return driverCreditMapper.selectDriverCreditById(id); | ||
| 55 | + } | ||
| 56 | + | ||
| 57 | + /** | ||
| 58 | + * 查询驾驶员失信列表 | ||
| 59 | + * | ||
| 60 | + * @param driverCredit | ||
| 61 | + * 驾驶员失信 | ||
| 62 | + * @return 驾驶员失信 | ||
| 63 | + */ | ||
| 64 | + @Autowired | ||
| 65 | + private trashConfig trashConfig; | ||
| 66 | + | ||
| 67 | + @Override | ||
| 68 | + public List<DriverCredit> selectDriverCreditList(DriverCredit driverCredit) { | ||
| 69 | + | ||
| 70 | + List<DriverCredit> list = new ArrayList<>(); | ||
| 71 | + | ||
| 72 | + List<String> companys = SecurityUtils.getLoginUser().getUser().getCompanyIds(); | ||
| 73 | + List<String> areas = SecurityUtils.getLoginUser().getUser().getCompanyAreas(); | ||
| 74 | + | ||
| 75 | + if (areas.size() > 0) { | ||
| 76 | + JSONArray array = redisCache.getCacheObject("companyList"); | ||
| 77 | + if (array != null) { | ||
| 78 | + for (Object obj : array) { | ||
| 79 | + JSONObject json = (JSONObject) obj; | ||
| 80 | + if (areas.indexOf(json.getString("areaCode")) > -1) { | ||
| 81 | + companys.add(json.getString("id")); | ||
| 85 | } | 82 | } |
| 86 | } | 83 | } |
| 87 | } | 84 | } |
| 88 | - | ||
| 89 | - if (companys.size() > 0) { | 85 | + } |
| 90 | 86 | ||
| 91 | - List<String> ids = new ArrayList<>(); | ||
| 92 | - | ||
| 93 | - JSONArray jsonArray = RemoteServerUtils.getDriverList(trashConfig.getToken()); | ||
| 94 | - | ||
| 95 | - for(Object obj:jsonArray){ | ||
| 96 | - JSONObject json = (JSONObject) obj; | ||
| 97 | - if(companys.indexOf(json.getString("companyId")) > -1){ | ||
| 98 | - ids.add(json.getString("id")); | ||
| 99 | - System.out.print(json.getString("id") + " "); | ||
| 100 | - } | ||
| 101 | - } | ||
| 102 | - | ||
| 103 | - driverCredit.setIds(ids); | ||
| 104 | - | 87 | + if (companys.size() > 0) { |
| 88 | + | ||
| 89 | + List<String> ids = new ArrayList<>(); | ||
| 90 | + JSONArray jsonArray = redisCache.getCacheObject("driverList"); | ||
| 91 | + if(jsonArray == null){ | ||
| 92 | + Map map = new HashMap<>(); | ||
| 93 | + map.put("size", "99999"); | ||
| 94 | + map.put("page", "1"); | ||
| 95 | + jsonArray = RemoteServerUtils.getDriverList(trashConfig.getToken(), map); | ||
| 105 | 96 | ||
| 97 | + if(jsonArray != null){ | ||
| 98 | + redisCache.setCacheObject("driverList", jsonArray, 60, TimeUnit.DAYS); | ||
| 99 | + } | ||
| 106 | 100 | ||
| 107 | - list = driverCreditMapper.selectDriverCreditList(driverCredit); | ||
| 108 | } | 101 | } |
| 109 | - | ||
| 110 | 102 | ||
| 111 | - | ||
| 112 | - return list; | ||
| 113 | - | ||
| 114 | - } | ||
| 115 | - | ||
| 116 | - /** | ||
| 117 | - * 新增驾驶员失信 | ||
| 118 | - * | ||
| 119 | - * @param driverCredit 驾驶员失信 | ||
| 120 | - * @return 结果 | ||
| 121 | - */ | ||
| 122 | - @Override | ||
| 123 | - public int insertDriverCredit(DriverCredit driverCredit) | ||
| 124 | - { | ||
| 125 | - | ||
| 126 | - int i; | ||
| 127 | - | ||
| 128 | - DriverCredit cc = new DriverCredit(); | ||
| 129 | - | ||
| 130 | - cc.setStatus(0L); | ||
| 131 | - cc.setLostCredit(driverCredit.getLostCredit()); | ||
| 132 | - cc.setObjectId(driverCredit.getObjectId()); | ||
| 133 | - | ||
| 134 | - List old = driverCreditMapper.selectDriverCreditList(cc); | ||
| 135 | - | ||
| 136 | - if(old.size() > 0){ | ||
| 137 | - i = 1; | ||
| 138 | - }else{ | ||
| 139 | - i = driverCreditMapper.insertDriverCredit(driverCredit); | ||
| 140 | - | ||
| 141 | - | ||
| 142 | - JSONArray array = redisCache.getCacheObject("companyList"); | ||
| 143 | - | ||
| 144 | - | ||
| 145 | - JSONArray drivers = RemoteServerUtils.getDriverList(); | ||
| 146 | - String companyId = null; | ||
| 147 | - | ||
| 148 | - for(Object obj:drivers){ | ||
| 149 | - | ||
| 150 | - JSONObject json = (JSONObject)obj; | ||
| 151 | - if(json.getString("id").equals(driverCredit.getObjectId())){ | ||
| 152 | - companyId = json.getString("companyId"); | 103 | + |
| 104 | + | ||
| 105 | + | ||
| 106 | + for (Object obj : jsonArray) { | ||
| 107 | + JSONObject json = (JSONObject) obj; | ||
| 108 | + if (companys.indexOf(json.getString("companyId")) > -1) { | ||
| 109 | + ids.add(json.getString("id")); | ||
| 110 | + System.out.print(json.getString("id") + " "); | ||
| 111 | + } | ||
| 153 | } | 112 | } |
| 113 | + | ||
| 114 | + driverCredit.setIds(ids); | ||
| 115 | + | ||
| 116 | + list = driverCreditMapper.selectDriverCreditList(driverCredit); | ||
| 154 | } | 117 | } |
| 155 | - | ||
| 156 | - if(companyId != null){ | ||
| 157 | - String number = null; | ||
| 158 | - for(Object obj:array){ | ||
| 159 | - JSONObject json = (JSONObject)obj; | ||
| 160 | - if(companyId.equals(json.getString("id"))){ | ||
| 161 | - number = json.getString("principalPhoneNo"); //企业安全负责人 | ||
| 162 | - break; | 118 | + |
| 119 | + return list; | ||
| 120 | + | ||
| 121 | + } | ||
| 122 | + | ||
| 123 | + /** | ||
| 124 | + * 新增驾驶员失信 | ||
| 125 | + * | ||
| 126 | + * @param driverCredit | ||
| 127 | + * 驾驶员失信 | ||
| 128 | + * @return 结果 | ||
| 129 | + */ | ||
| 130 | + @Override | ||
| 131 | + public int insertDriverCredit(DriverCredit driverCredit) { | ||
| 132 | + | ||
| 133 | + int i; | ||
| 134 | + | ||
| 135 | + DriverCredit cc = new DriverCredit(); | ||
| 136 | + | ||
| 137 | + cc.setStatus(0L); | ||
| 138 | + cc.setLostCredit(driverCredit.getLostCredit()); | ||
| 139 | + cc.setObjectId(driverCredit.getObjectId()); | ||
| 140 | + | ||
| 141 | + List old = driverCreditMapper.selectDriverCreditList(cc); | ||
| 142 | + | ||
| 143 | + if (old.size() > 0) { | ||
| 144 | + i = 1; | ||
| 145 | + } else { | ||
| 146 | + i = driverCreditMapper.insertDriverCredit(driverCredit); | ||
| 147 | + | ||
| 148 | + JSONArray array = redisCache.getCacheObject("companyList"); | ||
| 149 | + | ||
| 150 | + JSONArray jsonArray = redisCache.getCacheObject("driverList"); | ||
| 151 | + if(jsonArray == null){ | ||
| 152 | + Map map = new HashMap<>(); | ||
| 153 | + map.put("size", "99999"); | ||
| 154 | + map.put("page", "1"); | ||
| 155 | + jsonArray = RemoteServerUtils.getDriverList(trashConfig.getToken(), map); | ||
| 156 | + | ||
| 157 | + if(jsonArray != null){ | ||
| 158 | + redisCache.setCacheObject("driverList", jsonArray, 60, TimeUnit.DAYS); | ||
| 163 | } | 159 | } |
| 164 | } | 160 | } |
| 165 | 161 | ||
| 162 | + String companyId = null; | ||
| 163 | + | ||
| 164 | + for (Object obj : jsonArray) { | ||
| 166 | 165 | ||
| 167 | - | ||
| 168 | - | ||
| 169 | - if(number != null){ | ||
| 170 | - List<Mobile> mobileList=new ArrayList<Mobile>(); | ||
| 171 | - Mobile mobile=new Mobile(); | ||
| 172 | - mobile.setMobile(number); | ||
| 173 | - mobileList.add(mobile); | ||
| 174 | - | ||
| 175 | - String smsString = ""; | ||
| 176 | - if(driverCredit.getLostCredit() == 1){ | ||
| 177 | - smsString = "失信提醒:"+driverCredit.getName()+"因"+driverCredit.getReason()+"原因,被纳入失信名单,将影响渣土业务办理,请及时处理。"; | ||
| 178 | - }else{ | ||
| 179 | - smsString = "失信解除提醒:"+driverCredit.getName()+"现已解除失信,可以进行渣土业务办理,请知悉。"; | ||
| 180 | - } | ||
| 181 | - | ||
| 182 | - | ||
| 183 | - | ||
| 184 | - JsonSmsSend jsonSmsSend= PostSms.sendSms(mobileList,smsString); | ||
| 185 | - if(jsonSmsSend!=null){ | ||
| 186 | - if(jsonSmsSend.getState()==0){ | ||
| 187 | - System.out.println("发送成功"); | ||
| 188 | - }else{ | ||
| 189 | - System.out.println(jsonSmsSend.getMessage()); | ||
| 190 | - } | ||
| 191 | - }else{ | ||
| 192 | - System.out.println("发送返回空"); | ||
| 193 | - } | 166 | + JSONObject json = (JSONObject) obj; |
| 167 | + if (json.getString("id").equals(driverCredit.getObjectId())) { | ||
| 168 | + companyId = json.getString("companyId"); | ||
| 169 | + break; | ||
| 170 | + } | ||
| 194 | } | 171 | } |
| 195 | - } | ||
| 196 | - | ||
| 197 | - } | ||
| 198 | - | ||
| 199 | - | ||
| 200 | - | ||
| 201 | - | ||
| 202 | -// sentDataToRemoteServer(driverCredit); | ||
| 203 | 172 | ||
| 204 | - return i; | ||
| 205 | - } | 173 | + if (companyId != null) { |
| 174 | + String number = null; | ||
| 175 | + for (Object obj : array) { | ||
| 176 | + JSONObject json = (JSONObject) obj; | ||
| 177 | + if (companyId.equals(json.getString("id"))) { | ||
| 178 | + number = json.getString("principalPhoneNo"); // 企业安全负责人 | ||
| 179 | + break; | ||
| 180 | + } | ||
| 181 | + } | ||
| 206 | 182 | ||
| 207 | - private void sentDataToRemoteServer(DriverCredit driverCredit) { | 183 | + if (number != null) { |
| 184 | + List<Mobile> mobileList = new ArrayList<Mobile>(); | ||
| 185 | + Mobile mobile = new Mobile(); | ||
| 186 | + mobile.setMobile(number); | ||
| 187 | + mobileList.add(mobile); | ||
| 188 | + | ||
| 189 | + String smsString = ""; | ||
| 190 | + if (driverCredit.getLostCredit() == 1) { | ||
| 191 | + smsString = "失信提醒:" + driverCredit.getName() + "因" + driverCredit.getReason() | ||
| 192 | + + "原因,被纳入失信名单,将影响渣土业务办理,请及时处理。"; | ||
| 193 | + } else { | ||
| 194 | + smsString = "失信解除提醒:" + driverCredit.getName() + "现已解除失信,可以进行渣土业务办理,请知悉。"; | ||
| 195 | + } | ||
| 208 | 196 | ||
| 209 | - System.out.println("sendData!" + driverCredit.getObjectId() + "status" + driverCredit.getStatus() ); | 197 | + JsonSmsSend jsonSmsSend = PostSms.sendSms(mobileList, smsString); |
| 198 | + if (jsonSmsSend != null) { | ||
| 199 | + if (jsonSmsSend.getState() == 0) { | ||
| 200 | + System.out.println("发送成功"); | ||
| 201 | + } else { | ||
| 202 | + System.out.println(jsonSmsSend.getMessage()); | ||
| 203 | + } | ||
| 204 | + } else { | ||
| 205 | + System.out.println("发送返回空"); | ||
| 206 | + } | ||
| 207 | + } | ||
| 208 | + } | ||
| 210 | 209 | ||
| 211 | - } | 210 | + } |
| 212 | 211 | ||
| 213 | - /** | ||
| 214 | - * 修改驾驶员失信 | ||
| 215 | - * | ||
| 216 | - * @param driverCredit 驾驶员失信 | ||
| 217 | - * @return 结果 | ||
| 218 | - */ | ||
| 219 | - @Override | ||
| 220 | - @Transactional | ||
| 221 | - public int updateDriverCredit(DriverCredit driverCredit) | ||
| 222 | - { | ||
| 223 | - DriverCredit cc = driverCreditMapper.selectDriverCreditById(driverCredit.getId()); | 212 | + // sentDataToRemoteServer(driverCredit); |
| 224 | 213 | ||
| 225 | - cc.setStatus(1L); | 214 | + return i; |
| 215 | + } | ||
| 226 | 216 | ||
| 227 | - try { | ||
| 228 | - driverCreditMapper.updateDriverCredit(cc); | 217 | + private void sentDataToRemoteServer(DriverCredit driverCredit) { |
| 229 | 218 | ||
| 230 | - cc.setReason(driverCredit.getReason()); | ||
| 231 | - cc.setTime(new Date()); | ||
| 232 | - cc.setLostCredit(0L); | 219 | + System.out.println("sendData!" + driverCredit.getObjectId() + "status" + driverCredit.getStatus()); |
| 233 | 220 | ||
| 234 | - return insertDriverCredit(cc); | 221 | + } |
| 235 | 222 | ||
| 236 | - } catch (Exception e) { | 223 | + /** |
| 224 | + * 修改驾驶员失信 | ||
| 225 | + * | ||
| 226 | + * @param driverCredit | ||
| 227 | + * 驾驶员失信 | ||
| 228 | + * @return 结果 | ||
| 229 | + */ | ||
| 230 | + @Override | ||
| 231 | + @Transactional | ||
| 232 | + public int updateDriverCredit(DriverCredit driverCredit) { | ||
| 233 | + DriverCredit cc = driverCreditMapper.selectDriverCreditById(driverCredit.getId()); | ||
| 237 | 234 | ||
| 238 | - } | 235 | + cc.setStatus(1L); |
| 239 | 236 | ||
| 240 | - return 0; | ||
| 241 | - } | 237 | + try { |
| 238 | + driverCreditMapper.updateDriverCredit(cc); | ||
| 242 | 239 | ||
| 243 | - @Override | ||
| 244 | - public List<DriverCredit> selectDriverCreditHistory(DriverCredit driverCredit) | ||
| 245 | - { | ||
| 246 | - | ||
| 247 | - List<DriverCredit> list = new ArrayList<>(); | 240 | + cc.setReason(driverCredit.getReason()); |
| 241 | + cc.setTime(new Date()); | ||
| 242 | + cc.setLostCredit(0L); | ||
| 248 | 243 | ||
| 249 | - List<String> companys = SecurityUtils.getLoginUser().getUser().getCompanyIds(); | 244 | + return insertDriverCredit(cc); |
| 250 | 245 | ||
| 251 | - | ||
| 252 | - if (companys.size() > 0) { | 246 | + } catch (Exception e) { |
| 247 | + e.printStackTrace(); | ||
| 248 | + } | ||
| 253 | 249 | ||
| 254 | - List<String> ids = new ArrayList<>(); | ||
| 255 | - | ||
| 256 | - JSONArray jsonArray = RemoteServerUtils.getDriverList(trashConfig.getToken()); | ||
| 257 | - | ||
| 258 | - for(Object obj:jsonArray){ | ||
| 259 | - JSONObject json = (JSONObject) obj; | ||
| 260 | - if(companys.indexOf(json.getString("companyId")) > -1){ | ||
| 261 | - ids.add(json.getString("id")); | ||
| 262 | - } | 250 | + return 0; |
| 251 | + } | ||
| 252 | + | ||
| 253 | + @Override | ||
| 254 | + public List<DriverCredit> selectDriverCreditHistory(DriverCredit driverCredit) { | ||
| 255 | + | ||
| 256 | + List<DriverCredit> list = new ArrayList<>(); | ||
| 257 | + | ||
| 258 | + List<String> companys = SecurityUtils.getLoginUser().getUser().getCompanyIds(); | ||
| 259 | + List<String> areas = SecurityUtils.getLoginUser().getUser().getCompanyAreas(); | ||
| 260 | + | ||
| 261 | + if (areas.size() > 0) { | ||
| 262 | + JSONArray array = redisCache.getCacheObject("companyList"); | ||
| 263 | + if (array != null) { | ||
| 264 | + for (Object obj : array) { | ||
| 265 | + JSONObject json = (JSONObject) obj; | ||
| 266 | + if (areas.indexOf(json.getString("areaCode")) > -1) { | ||
| 267 | + companys.add(json.getString("id")); | ||
| 263 | } | 268 | } |
| 269 | + } | ||
| 270 | + } | ||
| 271 | + } | ||
| 272 | + | ||
| 273 | + if (companys.size() > 0) { | ||
| 274 | + | ||
| 275 | + | ||
| 276 | + List<String> ids = new ArrayList<>(); | ||
| 277 | + | ||
| 278 | + JSONArray jsonArray = redisCache.getCacheObject("driverList"); | ||
| 279 | + if(jsonArray == null){ | ||
| 280 | + Map map = new HashMap<>(); | ||
| 281 | + map.put("size", "99999"); | ||
| 282 | + map.put("page", "1"); | ||
| 283 | + jsonArray = RemoteServerUtils.getDriverList(trashConfig.getToken(), map); | ||
| 264 | 284 | ||
| 285 | + if(jsonArray != null){ | ||
| 286 | + redisCache.setCacheObject("driverList", jsonArray, 60, TimeUnit.DAYS); | ||
| 287 | + } | ||
| 265 | 288 | ||
| 266 | - driverCredit.setIds(ids); | ||
| 267 | - | ||
| 268 | - | ||
| 269 | - | ||
| 270 | - list = driverCreditMapper.selectDriverCreditHistory(driverCredit); | ||
| 271 | } | 289 | } |
| 272 | 290 | ||
| 273 | - | ||
| 274 | - return list; | ||
| 275 | - } | ||
| 276 | - | ||
| 277 | - /** | ||
| 278 | - * 批量删除驾驶员失信 | ||
| 279 | - * | ||
| 280 | - * @param ids 需要删除的驾驶员失信ID | ||
| 281 | - * @return 结果 | ||
| 282 | - */ | ||
| 283 | - @Override | ||
| 284 | - public int deleteDriverCreditByIds(Long[] ids) | ||
| 285 | - { | ||
| 286 | - return driverCreditMapper.deleteDriverCreditByIds(ids); | ||
| 287 | - } | ||
| 288 | - | ||
| 289 | - | ||
| 290 | - | ||
| 291 | - public List<String> getNames(DriverCredit driverCredit) { | ||
| 292 | - | ||
| 293 | - return driverCreditMapper.getNames(driverCredit); | ||
| 294 | - } | ||
| 295 | - | ||
| 296 | - /** | ||
| 297 | - * 删除驾驶员失信信息 | ||
| 298 | - * | ||
| 299 | - * @param id 驾驶员失信ID | ||
| 300 | - * @return 结果 | ||
| 301 | - */ | ||
| 302 | - @Override | ||
| 303 | - public int deleteDriverCreditById(Long id) | ||
| 304 | - { | ||
| 305 | - return driverCreditMapper.deleteDriverCreditById(id); | ||
| 306 | - } | 291 | + for (Object obj : jsonArray) { |
| 292 | + JSONObject json = (JSONObject) obj; | ||
| 293 | + if (companys.indexOf(json.getString("companyId")) > -1) { | ||
| 294 | + ids.add(json.getString("id")); | ||
| 295 | + } | ||
| 296 | + } | ||
| 297 | + | ||
| 298 | + driverCredit.setIds(ids); | ||
| 299 | + | ||
| 300 | + list = driverCreditMapper.selectDriverCreditHistory(driverCredit); | ||
| 301 | + } | ||
| 302 | + | ||
| 303 | + return list; | ||
| 304 | + } | ||
| 305 | + | ||
| 306 | + /** | ||
| 307 | + * 批量删除驾驶员失信 | ||
| 308 | + * | ||
| 309 | + * @param ids | ||
| 310 | + * 需要删除的驾驶员失信ID | ||
| 311 | + * @return 结果 | ||
| 312 | + */ | ||
| 313 | + @Override | ||
| 314 | + public int deleteDriverCreditByIds(Long[] ids) { | ||
| 315 | + return driverCreditMapper.deleteDriverCreditByIds(ids); | ||
| 316 | + } | ||
| 317 | + | ||
| 318 | + public List<String> getNames(DriverCredit driverCredit) { | ||
| 319 | + | ||
| 320 | + return driverCreditMapper.getNames(driverCredit); | ||
| 321 | + } | ||
| 322 | + | ||
| 323 | + /** | ||
| 324 | + * 删除驾驶员失信信息 | ||
| 325 | + * | ||
| 326 | + * @param id | ||
| 327 | + * 驾驶员失信ID | ||
| 328 | + * @return 结果 | ||
| 329 | + */ | ||
| 330 | + @Override | ||
| 331 | + public int deleteDriverCreditById(Long id) { | ||
| 332 | + return driverCreditMapper.deleteDriverCreditById(id); | ||
| 333 | + } | ||
| 307 | } | 334 | } |
| 308 | \ No newline at end of file | 335 | \ No newline at end of file |
trash-workFlow/src/main/java/com/trash/business/service/impl/SupervisionThreestepServiceImpl.java
| @@ -196,7 +196,7 @@ public class SupervisionThreestepServiceImpl implements ISupervisionThreestepSer | @@ -196,7 +196,7 @@ public class SupervisionThreestepServiceImpl implements ISupervisionThreestepSer | ||
| 196 | if (ids.size() == 0) { | 196 | if (ids.size() == 0) { |
| 197 | return list; | 197 | return list; |
| 198 | } | 198 | } |
| 199 | - | 199 | + |
| 200 | list = supervisionThreestepMapper.selectSupervisionThreestepList(supervisionThreestep); | 200 | list = supervisionThreestepMapper.selectSupervisionThreestepList(supervisionThreestep); |
| 201 | if (supervisionThreestep.getHis() != null && supervisionThreestep.getHis().equals("2")) { | 201 | if (supervisionThreestep.getHis() != null && supervisionThreestep.getHis().equals("2")) { |
| 202 | 202 | ||
| @@ -989,7 +989,8 @@ public class SupervisionThreestepServiceImpl implements ISupervisionThreestepSer | @@ -989,7 +989,8 @@ public class SupervisionThreestepServiceImpl implements ISupervisionThreestepSer | ||
| 989 | JSONObject truckObject = (JSONObject) object; | 989 | JSONObject truckObject = (JSONObject) object; |
| 990 | 990 | ||
| 991 | for (TruckActivate ta : taList) { | 991 | for (TruckActivate ta : taList) { |
| 992 | - | 992 | + |
| 993 | + | ||
| 993 | if (truckObject.getString("vehicleId").equals(ta.getObjectId())) { | 994 | if (truckObject.getString("vehicleId").equals(ta.getObjectId())) { |
| 994 | 995 | ||
| 995 | if (truckObject.getInteger("vehicleStatus") == 1) { | 996 | if (truckObject.getInteger("vehicleStatus") == 1) { |
trash-workFlow/src/main/java/com/trash/business/service/impl/TruckActivateServiceImpl.java
| @@ -77,9 +77,6 @@ public class TruckActivateServiceImpl implements ITruckActivateService { | @@ -77,9 +77,6 @@ public class TruckActivateServiceImpl implements ITruckActivateService { | ||
| 77 | 77 | ||
| 78 | 78 | ||
| 79 | List<TruckActivate> list = new ArrayList<>(); | 79 | List<TruckActivate> list = new ArrayList<>(); |
| 80 | - if(1==1){ | ||
| 81 | - return truckActivateMapper.selectTruckActivateList(truckActivate); | ||
| 82 | - } | ||
| 83 | 80 | ||
| 84 | List<String> companys = SecurityUtils.getLoginUser().getUser().getCompanyIds(); | 81 | List<String> companys = SecurityUtils.getLoginUser().getUser().getCompanyIds(); |
| 85 | List<String> tList = SecurityUtils.getLoginUser().getUser().getTruckList(); | 82 | List<String> tList = SecurityUtils.getLoginUser().getUser().getTruckList(); |
trash-workFlow/src/main/java/com/trash/casefile/kafka/Consumer.java
| 1 | package com.trash.casefile.kafka; | 1 | package com.trash.casefile.kafka; |
| 2 | 2 | ||
| 3 | +import com.alibaba.druid.sql.visitor.functions.If; | ||
| 3 | import com.alibaba.fastjson.JSONArray; | 4 | import com.alibaba.fastjson.JSONArray; |
| 4 | import com.alibaba.fastjson.JSONObject; | 5 | import com.alibaba.fastjson.JSONObject; |
| 5 | import com.trash.casefile.domain.KafkaCompensation; | 6 | import com.trash.casefile.domain.KafkaCompensation; |
| @@ -35,408 +36,464 @@ import java.util.concurrent.TimeUnit; | @@ -35,408 +36,464 @@ import java.util.concurrent.TimeUnit; | ||
| 35 | 36 | ||
| 36 | @Component | 37 | @Component |
| 37 | public class Consumer { | 38 | public class Consumer { |
| 38 | - private static final Logger log = LoggerFactory.getLogger(Consumer.class); | ||
| 39 | - | ||
| 40 | - @Autowired | ||
| 41 | - private IViolationWarningInformationService violationWarningInformationService; | ||
| 42 | - | ||
| 43 | - @KafkaListener(topics = "record_process_alarm") | ||
| 44 | - public void consume(ConsumerRecord<?, ?> record, Acknowledgment ack) throws InterruptedException, IOException { | ||
| 45 | - if(record==null){ | ||
| 46 | - throw new RuntimeException("kafka record对象为空"); | ||
| 47 | - } | ||
| 48 | - if(record.value()==null){ | ||
| 49 | - throw new RuntimeException("kafka消费数据为空"); | ||
| 50 | - } | ||
| 51 | - if(ack==null){ | ||
| 52 | - throw new RuntimeException("kafka ack对象为空"); | ||
| 53 | - } | ||
| 54 | - log.info("kafka消费数据成功,offset:"+ record.offset() +",data:" + record.value()); | ||
| 55 | - String id = insertKafkaCompensation(record.value().toString()); | ||
| 56 | - autoViolationWarning(record.value().toString(),id); | ||
| 57 | - //手动提交offset | ||
| 58 | - ack.acknowledge(); | ||
| 59 | - } | ||
| 60 | - | ||
| 61 | - @Autowired | ||
| 62 | - trashConfig trashConfig; | ||
| 63 | - | ||
| 64 | - @Autowired | ||
| 65 | - SysLoginService loginService; | ||
| 66 | - | ||
| 67 | - @Autowired | ||
| 68 | - RedisCache redisCache; | ||
| 69 | - | ||
| 70 | - public void autoViolationWarning(String data,String id) throws InterruptedException, IOException { | ||
| 71 | - | ||
| 72 | - JSONObject jsonObject = JSONObject.parseObject(data); | ||
| 73 | - //报警时间 | ||
| 74 | - Date alarmTime = new Date(jsonObject.getLong("alarmTime")*1000L); | ||
| 75 | - | ||
| 76 | - //这一块是一天内同一工地,同一类型的报警,只报有一条数据,不重复报工,只累加 | ||
| 77 | - String nowHour = DateFormatUtils.format(alarmTime, "HH"); | ||
| 78 | - String nowDate = null; | ||
| 79 | - String tomorrowDate = null; | ||
| 80 | - if(Integer.valueOf(nowHour)<8){ | ||
| 81 | - nowDate = DateFormatUtils.format(DateUtils.addDays(alarmTime, -1), "yyyy-MM-dd"); | ||
| 82 | - tomorrowDate = DateFormatUtils.format(alarmTime, "yyyy-MM-dd"); | ||
| 83 | - }else{ | ||
| 84 | - nowDate = DateFormatUtils.format(alarmTime, "yyyy-MM-dd"); | ||
| 85 | - tomorrowDate = DateFormatUtils.format(DateUtils.addDays(alarmTime, 1), "yyyy-MM-dd"); | ||
| 86 | - } | ||
| 87 | - | ||
| 88 | - //违规类型code | ||
| 89 | - String violationTypeCode = jsonObject.getString("alarmType"); | ||
| 90 | - //违规类型 | ||
| 91 | - String violationType = jsonObject.getString("alarmName"); | ||
| 92 | - if(RemoteServerUtils.remote==null){ | ||
| 93 | - //登录 | ||
| 94 | - RemoteServerUtils.remote = trashConfig.getRemotePath(); | ||
| 95 | - loginService.loginByRemote(trashConfig.getToken()); | ||
| 96 | - } | ||
| 97 | - ViolationWarningInformation violationWarningInformation1 = null; | ||
| 98 | - JSONArray company1 = null; | ||
| 99 | - JSONObject basevehicleInfo = null; | ||
| 100 | - //这些类型无需累加 | ||
| 101 | - if(violationTypeCode.equals("44030021") || violationTypeCode.equals("44030025")||violationTypeCode.equals("44030023")){ | ||
| 102 | - violationWarningInformation1 = null; | ||
| 103 | - }else if(violationTypeCode.equals("44030033")||violationTypeCode.equals("44030034")){//这两种类型根据公司累加 | ||
| 104 | - company1 = redisCache.getCacheObject("companyList"); | ||
| 105 | - basevehicleInfo = RemoteServerUtils.getBasevehicleInfo(jsonObject.getString("vehicleId"),trashConfig.getToken()); | ||
| 106 | - if(company1==null){ | ||
| 107 | - throw new RuntimeException("获取公司列表失败!!!"); | ||
| 108 | - } | ||
| 109 | - | ||
| 110 | - if(basevehicleInfo==null){ | ||
| 111 | - throw new RuntimeException("获取公司详情失败!vehicleId:"+jsonObject.getString("vehicleId")); | ||
| 112 | - } | ||
| 113 | - }else{//其他都是根据工地/消纳站累加 | ||
| 114 | - String project = jsonObject.getString("siteName"); | ||
| 115 | - violationWarningInformation1 = SpringUtils.getBean(ViolationWarningInformationMapper.class).selectViolationWarningInformation(null,project, violationTypeCode, nowDate, tomorrowDate); | ||
| 116 | - } | ||
| 117 | - String siteName = jsonObject.getString("siteName"); | ||
| 118 | - //判断该类型,该工地,该时间段是否已经存在报警信息,如果存在则不再新增,如果不存在则新增 | ||
| 119 | - if (violationWarningInformation1 == null) { | ||
| 120 | - ViolationWarningInformation violationWarningInformation = new ViolationWarningInformation(); | ||
| 121 | - String siteType = jsonObject.getString("siteType"); | ||
| 122 | - if ("2".equals(siteType)) {//消纳场 | ||
| 123 | - violationWarningInformation.setViolationObjectType("1"); | ||
| 124 | - } | ||
| 125 | - //所属区域 | ||
| 126 | - violationWarningInformation.setOwningRegion(jsonObject.getString("areaName")); | ||
| 127 | - //案卷编码 | ||
| 128 | - String number = DateFormatUtils.format(alarmTime, "yyyyMMddHHmmssSSS"); | ||
| 129 | - violationWarningInformation.setNumber(number.substring(2)); | ||
| 130 | - //公司名称 | ||
| 131 | - violationWarningInformation.setCompanyName(jsonObject.getString("enterpriseName")); | ||
| 132 | - //违规类型 | ||
| 133 | - violationWarningInformation.setViolationType(violationTypeCode); | ||
| 134 | - //发送人 | ||
| 135 | - violationWarningInformation.setCreateBy("长沙市建筑垃圾智慧监管平台"); | ||
| 136 | - //推送对象 | ||
| 137 | - violationWarningInformation.setViolationGrade("一般类"); | ||
| 138 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 139 | - String describe = ""; | ||
| 140 | - String alarmTimeString = DateFormatUtils.format(alarmTime,"HH:mm"); | ||
| 141 | - //根据不同违规类型,走不同流程 | ||
| 142 | - switch (violationTypeCode) { | ||
| 143 | - case "44030020"://工地预警-未报开工作业 | ||
| 144 | - //获取报警次数 | ||
| 145 | - int count44030020 = redisCache.getCacheObject(nowDate+jsonObject.getString("siteId")+"44030020")==null?1:Integer.parseInt(redisCache.getCacheObject(nowDate+jsonObject.getString("siteId")+"44030020").toString())+1; | ||
| 146 | - //获取累计报警描述 | ||
| 147 | - String describe44030020 = redisCache.getCacheObject(nowDate+jsonObject.getString("siteId")+"44030020describe")==null?"":redisCache.getCacheObject(nowDate+jsonObject.getString("siteId")+"44030020describe").toString(); | ||
| 148 | - if(!StringUtils.isEmpty(describe44030020)){ | ||
| 149 | - describe44030020 = describe44030020 + ";\n" + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 150 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 151 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 152 | - }else{ | ||
| 153 | - describe44030020 = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 154 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 155 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 156 | - } | ||
| 157 | - //报警次数等于5推送案卷 | ||
| 158 | - if(count44030020==5){ | ||
| 159 | - violationWarningInformation.setViolationObjectType("0"); | ||
| 160 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 161 | - violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 162 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 163 | - violationWarningInformation.setDescribe(describe44030020); | ||
| 164 | - // 业务逻辑 | ||
| 165 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 166 | - } | ||
| 167 | - //次数+1 | ||
| 168 | - redisCache.setCacheObject(nowDate+jsonObject.getString("siteId")+"44030020",count44030020,24, TimeUnit.HOURS); | ||
| 169 | - //累计描述 | ||
| 170 | - redisCache.setCacheObject(nowDate+jsonObject.getString("siteId")+"44030020describe",describe44030020,24, TimeUnit.HOURS); | ||
| 171 | - break; | ||
| 172 | - case "44030023"://工地预警-未按时间作业 | ||
| 173 | - try{ | ||
| 174 | - //获取工地信息 | ||
| 175 | - JSONObject object = RemoteServerUtils.getConstructionLicenseById(jsonObject.getString("siteId"), trashConfig.getToken()); | ||
| 176 | - String transportEndTime = object.getString("transportEndTime"); | ||
| 177 | - String transportStartTime = object.getString("transportStartTime"); | ||
| 178 | - String endTime = manipulateTime(transportEndTime,30); | ||
| 179 | - String startTime = manipulateTime(transportStartTime,-30); | ||
| 180 | - //获取结束运输报警次数 | ||
| 181 | - String countKey = nowDate+jsonObject.getString("siteId")+"44030023"+transportEndTime; | ||
| 182 | - int count44030023 = redisCache.getCacheObject(countKey)==null?1:Integer.parseInt(redisCache.getCacheObject(countKey).toString())+1; | ||
| 183 | - //获取结束运输累计报警描述 | ||
| 184 | - String describeKey = nowDate+jsonObject.getString("siteId")+"44030023describe"+transportEndTime; | ||
| 185 | - String describe44030023 = redisCache.getCacheObject(describeKey)==null?"":redisCache.getCacheObject(describeKey).toString(); | ||
| 186 | - //获取结束运输报警次数 | ||
| 187 | - String countEKey = nowDate+jsonObject.getString("siteId")+"44030023"+transportStartTime; | ||
| 188 | - int countE = redisCache.getCacheObject(countEKey)==null?1:Integer.parseInt(redisCache.getCacheObject(countEKey).toString())+1; | ||
| 189 | - //获取结束运输累计报警描述 | ||
| 190 | - String describeEKey = nowDate+jsonObject.getString("siteId")+"44030023describe"+transportStartTime; | ||
| 191 | - String describeE = redisCache.getCacheObject(describeEKey)==null?"":redisCache.getCacheObject(describeEKey).toString(); | ||
| 192 | - | ||
| 193 | - if(!StringUtils.isEmpty(describe44030023)){ | ||
| 194 | - describe44030023 = describe44030023 + ";\n" + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 195 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 196 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 197 | - }else{ | ||
| 198 | - describe44030023 = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 199 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 200 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 201 | - } | ||
| 202 | - //报警次数等于5推送案卷 | ||
| 203 | - if(count44030023==5&&isTimeWithinRange(alarmTimeString,transportEndTime,endTime)){ | ||
| 204 | - violationWarningInformation.setViolationObjectType("0"); | ||
| 205 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 206 | - violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 207 | - | ||
| 208 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 209 | - violationWarningInformation.setDescribe(describe44030023); | ||
| 210 | - // 业务逻辑 | ||
| 211 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 212 | - } | ||
| 213 | - | ||
| 214 | - if(!StringUtils.isEmpty(describeE)){ | ||
| 215 | - describeE = describeE + ";\n" + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 216 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 217 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 218 | - }else{ | ||
| 219 | - describeE = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 220 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 221 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 222 | - } | ||
| 223 | - //报警次数等于5推送案卷 | ||
| 224 | - if(countE==5&&isTimeWithinRange(alarmTimeString,startTime,transportStartTime)){ | ||
| 225 | - violationWarningInformation.setViolationObjectType("0"); | ||
| 226 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 227 | - violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 228 | - | ||
| 229 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 230 | - violationWarningInformation.setDescribe(describeE); | ||
| 231 | - // 业务逻辑 | ||
| 232 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 233 | - } | ||
| 234 | - | ||
| 235 | - | ||
| 236 | - //判断结束运输 | ||
| 237 | - if(isTimeWithinRange(alarmTimeString,transportEndTime,endTime)){ | ||
| 238 | - //次数+1 | ||
| 239 | - redisCache.setCacheObject(countKey,count44030023,1, TimeUnit.HOURS); | ||
| 240 | - //累计描述 | ||
| 241 | - redisCache.setCacheObject(describeKey,describe44030023,1, TimeUnit.HOURS); | ||
| 242 | - }else if(isTimeWithinRange(alarmTimeString,startTime,transportStartTime)){ | ||
| 243 | - //次数+1 | ||
| 244 | - redisCache.setCacheObject(countEKey,countE,1, TimeUnit.HOURS); | ||
| 245 | - //累计描述 | ||
| 246 | - redisCache.setCacheObject(describeEKey,describeE,1, TimeUnit.HOURS); | ||
| 247 | - } | ||
| 248 | - }catch (NullPointerException e){ | ||
| 249 | - throw e; | ||
| 250 | - } | ||
| 251 | - break; | ||
| 252 | - | ||
| 253 | - case "44030030"://未激活车辆作业 | ||
| 254 | - case "44030031"://未核准作业车辆作业 | ||
| 255 | - case "44030022"://工地预警-三无车辆进入工地 | ||
| 256 | - case "44030021"://工地预警-视频设备离线超时报警 | ||
| 257 | - case "44030028"://离线运输报警(工) | ||
| 258 | - | ||
| 259 | - violationWarningInformation.setViolationObjectType("0"); | ||
| 260 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 261 | - violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 262 | - describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 263 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 264 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 265 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 266 | - violationWarningInformation.setDescribe(describe); | ||
| 267 | - // 业务逻辑 | ||
| 268 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 269 | - break; | ||
| 270 | - | ||
| 271 | - case "44030024"://处理场所预警-未报开工作业 | ||
| 272 | - //获取报警次数 | ||
| 273 | - int count44030024 = redisCache.getCacheObject(nowDate+jsonObject.getString("siteId")+"44030024")==null?1:Integer.parseInt(redisCache.getCacheObject(nowDate+jsonObject.getString("siteId")+"44030024").toString())+1; | ||
| 274 | - //获取累计报警描述 | ||
| 275 | - String describe44030024 = redisCache.getCacheObject(nowDate+jsonObject.getString("siteId")+"44030024describe")==null?"":redisCache.getCacheObject(nowDate+jsonObject.getString("siteId")+"44030024describe").toString(); | ||
| 276 | - if(!StringUtils.isEmpty(describe44030024)){ | ||
| 277 | - describe44030024 = describe44030024 + ";\n" + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 278 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 279 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 280 | - }else{ | ||
| 281 | - describe44030024 = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 282 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 283 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 284 | - } | ||
| 285 | - //报警次数等于5推送案卷 | ||
| 286 | - if(count44030024==5){ | ||
| 287 | - violationWarningInformation.setViolationObjectType("1"); | ||
| 288 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 289 | - violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 290 | - | ||
| 291 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 292 | - violationWarningInformation.setDescribe(describe44030024); | ||
| 293 | - // 业务逻辑 | ||
| 294 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 295 | - } | ||
| 296 | - | ||
| 297 | - | ||
| 298 | - //次数+1 | ||
| 299 | - redisCache.setCacheObject(nowDate+jsonObject.getString("siteId")+"44030024",count44030024,24, TimeUnit.HOURS); | ||
| 300 | - //累计描述 | ||
| 301 | - redisCache.setCacheObject(nowDate+jsonObject.getString("siteId")+"44030024describe",describe44030024,24, TimeUnit.HOURS); | ||
| 302 | - break; | ||
| 303 | - case "44030027"://处理场所预警-未到指定的处理场所作业 | ||
| 304 | - case "44030026"://处理场所预警-三无车辆进入处理场所 | ||
| 305 | - case "44030029"://离线运输报警(消) | ||
| 306 | - case "44030025"://处理场所预警-视频设备离线超时报警 | ||
| 307 | - violationWarningInformation.setViolationObjectType("1"); | ||
| 308 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 309 | - violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 310 | - describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 311 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 312 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 313 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 314 | - violationWarningInformation.setDescribe(describe); | ||
| 315 | - // 业务逻辑 | ||
| 316 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 317 | - break; | ||
| 318 | - case "44030032"://未按线路行驶 | ||
| 319 | - violationWarningInformation.setViolationObjectType("0"); | ||
| 320 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 321 | - violationWarningInformation.setProjectName(siteName); | ||
| 322 | - describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 323 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 324 | - jsonObject.get("siteName") + "出现" + violationType; | ||
| 325 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 326 | - violationWarningInformation.setDescribe(describe); | ||
| 327 | - // 业务逻辑 | ||
| 328 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 329 | - break; | ||
| 330 | - case "44030033"://闯禁行驶 | ||
| 331 | - violationWarningInformation.setViolationObjectType("0"); | ||
| 332 | - violationWarningInformation.setSendObject("区管理部门"); | ||
| 333 | - violationWarningInformation.setProjectName(siteName); | ||
| 334 | - describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 335 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "出现" + violationType; | ||
| 336 | - //设置公司简称 | ||
| 337 | - for(Object o:company1){ | ||
| 338 | - JSONObject jo = (JSONObject) o; | ||
| 339 | - if(basevehicleInfo.getString("companyID").equals(jo.getString("id"))){ | ||
| 340 | - violationWarningInformation.setAbbreviation(jo.getString("abbreviation")); | ||
| 341 | - } | ||
| 342 | - } | ||
| 343 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 344 | - violationWarningInformation.setDescribe(describe); | ||
| 345 | - // 业务逻辑 | ||
| 346 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 347 | - break; | ||
| 348 | - | ||
| 349 | - case "44030034"://失信车辆作业 | ||
| 350 | - case "44030035"://卫星 | ||
| 351 | - violationWarningInformation.setProjectName(siteName); | ||
| 352 | - violationWarningInformation.setViolationObjectType("2"); | ||
| 353 | - violationWarningInformation.setSendObject("运输企业"); | ||
| 354 | - describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 355 | - + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "出现" + violationType; | ||
| 356 | - //设置公司简称 | ||
| 357 | - for(Object o:company1){ | ||
| 358 | - JSONObject jo = (JSONObject) o; | ||
| 359 | - if(basevehicleInfo.getString("companyID").equals(jo.getString("id"))){ | ||
| 360 | - violationWarningInformation.setAbbreviation(jo.getString("abbreviation")); | ||
| 361 | - } | ||
| 362 | - } | ||
| 363 | - violationWarningInformation.setCreateTime(alarmTime); | ||
| 364 | - violationWarningInformation.setDescribe(describe); | ||
| 365 | - // 业务逻辑 | ||
| 366 | - violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 367 | - break; | ||
| 368 | - } | ||
| 369 | - | ||
| 370 | - | ||
| 371 | - | ||
| 372 | - | ||
| 373 | - } else { | ||
| 374 | - String describe = ""; | ||
| 375 | - if(violationTypeCode.equals("44030033")||violationTypeCode.equals("44030034")){ | ||
| 376 | - describe = violationWarningInformation1.getDescribe() + ";\n" + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 377 | - + jsonObject.getString("enterpriseName") + " " + jsonObject.get("licenseplateNo") + "出现" + jsonObject.getString("alarmName"); | ||
| 378 | - }else{ | ||
| 379 | - describe = violationWarningInformation1.getDescribe() + ";\n" + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 380 | - + jsonObject.getString("enterpriseName") + " " + jsonObject.get("licenseplateNo") + "在" + | ||
| 381 | - jsonObject.get("siteName") + "出现" + jsonObject.getString("alarmName"); | ||
| 382 | - } | ||
| 383 | - | ||
| 384 | - violationWarningInformation1.setDescribe(describe); | ||
| 385 | - SpringUtils.getBean(ViolationWarningInformationMapper.class).updateViolationWarningInformation(violationWarningInformation1); | ||
| 386 | - } | ||
| 387 | - //kafka消费成功 | ||
| 388 | - KafkaCompensation kafkaCompensation = new KafkaCompensation(); | ||
| 389 | - kafkaCompensation.setId(Long.valueOf(id)); | ||
| 390 | - kafkaCompensation.setStatus(1); | ||
| 391 | - SpringUtils.getBean(KafkaCompensationMapper.class).updateKafkaCompensation(kafkaCompensation); | ||
| 392 | - | ||
| 393 | - } | ||
| 394 | - | ||
| 395 | - public String insertKafkaCompensation(String data){ | ||
| 396 | - KafkaCompensation kafkaCompensation = new KafkaCompensation(); | ||
| 397 | - kafkaCompensation.setData(data); | ||
| 398 | - kafkaCompensation.setCreateTime(DateUtils.getNowDate()); | ||
| 399 | - kafkaCompensation.setStatus(0); | ||
| 400 | - SpringUtils.getBean(KafkaCompensationMapper.class).insertKafkaCompensation(kafkaCompensation); | ||
| 401 | - return kafkaCompensation.getId().toString(); | ||
| 402 | - } | ||
| 403 | - | ||
| 404 | - /** | ||
| 405 | - * 对HH:mm格式时间进行分钟的加减 | ||
| 406 | - * @param timeStr | ||
| 407 | - * @param minutesToAddOrSubtract | ||
| 408 | - * @return | ||
| 409 | - */ | ||
| 410 | - public String manipulateTime(String timeStr, int minutesToAddOrSubtract) { | ||
| 411 | - // 定义输入时间格式的日期时间格式器 | ||
| 412 | - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm"); | ||
| 413 | - | ||
| 414 | - // 解析输入的时间字符串为 LocalTime 对象 | ||
| 415 | - LocalTime time = LocalTime.parse(timeStr, formatter); | ||
| 416 | - | ||
| 417 | - // 执行加减分钟的操作 | ||
| 418 | - LocalTime modifiedTime = time.plusMinutes(minutesToAddOrSubtract); | ||
| 419 | - | ||
| 420 | - // 将修改后的时间格式化为 HH:mm 格式 | ||
| 421 | - String formattedModifiedTime = modifiedTime.format(formatter); | ||
| 422 | - | ||
| 423 | - return formattedModifiedTime; | ||
| 424 | - } | ||
| 425 | - | ||
| 426 | - /** | ||
| 427 | - * 判断timeStr是否在startTimeStr-endTimeStr区间 | ||
| 428 | - * @param timeStr | ||
| 429 | - * @param startTimeStr | ||
| 430 | - * @param endTimeStr | ||
| 431 | - * @return | ||
| 432 | - */ | ||
| 433 | - public boolean isTimeWithinRange(String timeStr, String startTimeStr, String endTimeStr) { | ||
| 434 | - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm"); | ||
| 435 | - LocalTime time = LocalTime.parse(timeStr, formatter); | ||
| 436 | - LocalTime startTime = LocalTime.parse(startTimeStr, formatter); | ||
| 437 | - LocalTime endTime = LocalTime.parse(endTimeStr, formatter); | ||
| 438 | - | ||
| 439 | - return !time.isBefore(startTime) && !time.isAfter(endTime); | ||
| 440 | - | ||
| 441 | - } | 39 | + private static final Logger log = LoggerFactory.getLogger(Consumer.class); |
| 40 | + | ||
| 41 | + @Autowired | ||
| 42 | + private IViolationWarningInformationService violationWarningInformationService; | ||
| 43 | + | ||
| 44 | + @KafkaListener(topics = "record_process_alarm") | ||
| 45 | + public void consume(ConsumerRecord<?, ?> record, Acknowledgment ack) throws InterruptedException, IOException { | ||
| 46 | + if (record == null) { | ||
| 47 | + throw new RuntimeException("kafka record对象为空"); | ||
| 48 | + } | ||
| 49 | + if (record.value() == null) { | ||
| 50 | + throw new RuntimeException("kafka消费数据为空"); | ||
| 51 | + } | ||
| 52 | + if (ack == null) { | ||
| 53 | + throw new RuntimeException("kafka ack对象为空"); | ||
| 54 | + } | ||
| 55 | + log.info("kafka消费数据成功,offset:" + record.offset() + ",data:" + record.value()); | ||
| 56 | + String id = insertKafkaCompensation(record.value().toString()); | ||
| 57 | + autoViolationWarning(record.value().toString(), id); | ||
| 58 | + // 手动提交offset | ||
| 59 | + ack.acknowledge(); | ||
| 60 | + } | ||
| 61 | + | ||
| 62 | + @Autowired | ||
| 63 | + trashConfig trashConfig; | ||
| 64 | + | ||
| 65 | + @Autowired | ||
| 66 | + SysLoginService loginService; | ||
| 67 | + | ||
| 68 | + @Autowired | ||
| 69 | + RedisCache redisCache; | ||
| 70 | + | ||
| 71 | + Map<String, Long> cMap = new HashMap<String, Long>(); | ||
| 72 | + | ||
| 73 | + JSONArray company1 = null; | ||
| 74 | + | ||
| 75 | + public void autoViolationWarning(String data, String id) throws InterruptedException, IOException { | ||
| 76 | + | ||
| 77 | + JSONObject jsonObject = JSONObject.parseObject(data); | ||
| 78 | + // 报警时间 | ||
| 79 | + Date alarmTime = new Date(jsonObject.getLong("alarmTime") * 1000L); | ||
| 80 | + | ||
| 81 | + // 这一块是一天内同一工地,同一类型的报警,只报有一条数据,不重复报工,只累加 | ||
| 82 | + String nowHour = DateFormatUtils.format(alarmTime, "HH"); | ||
| 83 | + String nowDate = null; | ||
| 84 | + String tomorrowDate = null; | ||
| 85 | + if (Integer.valueOf(nowHour) < 8) { | ||
| 86 | + nowDate = DateFormatUtils.format(DateUtils.addDays(alarmTime, -1), "yyyy-MM-dd"); | ||
| 87 | + tomorrowDate = DateFormatUtils.format(alarmTime, "yyyy-MM-dd"); | ||
| 88 | + } else { | ||
| 89 | + nowDate = DateFormatUtils.format(alarmTime, "yyyy-MM-dd"); | ||
| 90 | + tomorrowDate = DateFormatUtils.format(DateUtils.addDays(alarmTime, 1), "yyyy-MM-dd"); | ||
| 91 | + } | ||
| 92 | + | ||
| 93 | + // 违规类型code | ||
| 94 | + String violationTypeCode = jsonObject.getString("alarmType"); | ||
| 95 | + // 违规类型 | ||
| 96 | + String violationType = jsonObject.getString("alarmName"); | ||
| 97 | + if (RemoteServerUtils.remote == null) { | ||
| 98 | + // 登录 | ||
| 99 | + RemoteServerUtils.remote = trashConfig.getRemotePath(); | ||
| 100 | + loginService.loginByRemote(trashConfig.getToken()); | ||
| 101 | + } | ||
| 102 | + ViolationWarningInformation violationWarningInformation1 = null; | ||
| 103 | + JSONObject basevehicleInfo = null; | ||
| 104 | + // 这些类型无需累加 | ||
| 105 | + if (violationTypeCode.equals("44030021") || violationTypeCode.equals("44030025") | ||
| 106 | + || violationTypeCode.equals("44030023")) { | ||
| 107 | + violationWarningInformation1 = null; | ||
| 108 | + } else if (violationTypeCode.equals("44030033") || violationTypeCode.equals("44030034") | ||
| 109 | + || violationTypeCode.equals("44030035")) {// 这两种类型根据公司累加 | ||
| 110 | + | ||
| 111 | + if (company1 == null || cMap.get("companyTime")==null || (new Date().getTime() - cMap.get("companyTime")) > 1000 * 60 * 60) { | ||
| 112 | + company1 = redisCache.getCacheObject("companyList"); | ||
| 113 | + cMap.put("companyTime", new Date().getTime()); | ||
| 114 | + } | ||
| 115 | + basevehicleInfo = RemoteServerUtils.getBasevehicleInfo(jsonObject.getString("vehicleId"), | ||
| 116 | + trashConfig.getToken()); | ||
| 117 | + if (company1 == null) { | ||
| 118 | + throw new RuntimeException("获取公司列表失败!!!"); | ||
| 119 | + } | ||
| 120 | + | ||
| 121 | + if (basevehicleInfo == null) { | ||
| 122 | + throw new RuntimeException("获取公司详情失败!vehicleId:" + jsonObject.getString("vehicleId")); | ||
| 123 | + } | ||
| 124 | + } else {// 其他都是根据工地/消纳站累加 | ||
| 125 | + String project = jsonObject.getString("siteName"); | ||
| 126 | + violationWarningInformation1 = SpringUtils.getBean(ViolationWarningInformationMapper.class) | ||
| 127 | + .selectViolationWarningInformation(null, project, violationTypeCode, nowDate, tomorrowDate); | ||
| 128 | + } | ||
| 129 | + String siteName = jsonObject.getString("siteName"); | ||
| 130 | + // 判断该类型,该工地,该时间段是否已经存在报警信息,如果存在则不再新增,如果不存在则新增 | ||
| 131 | + if (violationWarningInformation1 == null) { | ||
| 132 | + ViolationWarningInformation violationWarningInformation = new ViolationWarningInformation(); | ||
| 133 | + String siteType = jsonObject.getString("siteType"); | ||
| 134 | + if ("2".equals(siteType)) {// 消纳场 | ||
| 135 | + violationWarningInformation.setViolationObjectType("1"); | ||
| 136 | + } | ||
| 137 | + // 所属区域 | ||
| 138 | + violationWarningInformation.setOwningRegion(jsonObject.getString("areaName")); | ||
| 139 | + // 案卷编码 | ||
| 140 | + String number = DateFormatUtils.format(alarmTime, "yyyyMMddHHmmssSSS"); | ||
| 141 | + violationWarningInformation.setNumber(number.substring(2)); | ||
| 142 | + // 公司名称 | ||
| 143 | + violationWarningInformation.setCompanyName(jsonObject.getString("enterpriseName")); | ||
| 144 | + // 违规类型 | ||
| 145 | + violationWarningInformation.setViolationType(violationTypeCode); | ||
| 146 | + // 发送人 | ||
| 147 | + violationWarningInformation.setCreateBy("长沙市建筑垃圾智慧监管平台"); | ||
| 148 | + // 推送对象 | ||
| 149 | + violationWarningInformation.setViolationGrade("一般类"); | ||
| 150 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 151 | + String describe = ""; | ||
| 152 | + String alarmTimeString = DateFormatUtils.format(alarmTime, "HH:mm"); | ||
| 153 | + // 根据不同违规类型,走不同流程 | ||
| 154 | + switch (violationTypeCode) { | ||
| 155 | + case "44030020":// 工地预警-未报开工作业 | ||
| 156 | + // 获取报警次数 | ||
| 157 | + int count44030020 = redisCache | ||
| 158 | + .getCacheObject(nowDate + jsonObject.getString("siteId") + "44030020") == null | ||
| 159 | + ? 1 | ||
| 160 | + : Integer.parseInt( | ||
| 161 | + redisCache.getCacheObject(nowDate + jsonObject.getString("siteId") + "44030020") | ||
| 162 | + .toString()) | ||
| 163 | + + 1; | ||
| 164 | + // 获取累计报警描述 | ||
| 165 | + String describe44030020 = redisCache | ||
| 166 | + .getCacheObject(nowDate + jsonObject.getString("siteId") + "44030020describe") == null | ||
| 167 | + ? "" | ||
| 168 | + : redisCache | ||
| 169 | + .getCacheObject(nowDate + jsonObject.getString("siteId") + "44030020describe") | ||
| 170 | + .toString(); | ||
| 171 | + if (!StringUtils.isEmpty(describe44030020)) { | ||
| 172 | + describe44030020 = describe44030020 + ";\n" | ||
| 173 | + + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 174 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") | ||
| 175 | + + "在" + jsonObject.get("siteName") + "出现" + violationType; | ||
| 176 | + } else { | ||
| 177 | + describe44030020 = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 178 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") | ||
| 179 | + + "在" + jsonObject.get("siteName") + "出现" + violationType; | ||
| 180 | + } | ||
| 181 | + // 报警次数等于5推送案卷 | ||
| 182 | + if (count44030020 == 5) { | ||
| 183 | + violationWarningInformation.setViolationObjectType("0"); | ||
| 184 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 185 | + violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 186 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 187 | + violationWarningInformation.setDescribe(describe44030020); | ||
| 188 | + // 业务逻辑 | ||
| 189 | + violationWarningInformationService.insertViolationWarningInformation(null, | ||
| 190 | + violationWarningInformation); | ||
| 191 | + } | ||
| 192 | + // 次数+1 | ||
| 193 | + redisCache.setCacheObject(nowDate + jsonObject.getString("siteId") + "44030020", count44030020, 24, | ||
| 194 | + TimeUnit.HOURS); | ||
| 195 | + // 累计描述 | ||
| 196 | + redisCache.setCacheObject(nowDate + jsonObject.getString("siteId") + "44030020describe", | ||
| 197 | + describe44030020, 24, TimeUnit.HOURS); | ||
| 198 | + break; | ||
| 199 | + case "44030023":// 工地预警-未按时间作业 | ||
| 200 | + try { | ||
| 201 | + // 获取工地信息 | ||
| 202 | + JSONObject object = RemoteServerUtils.getConstructionLicenseById(jsonObject.getString("siteId"), | ||
| 203 | + trashConfig.getToken()); | ||
| 204 | + String transportEndTime = object.getString("transportEndTime"); | ||
| 205 | + String transportStartTime = object.getString("transportStartTime"); | ||
| 206 | + String endTime = manipulateTime(transportEndTime, 30); | ||
| 207 | + String startTime = manipulateTime(transportStartTime, -30); | ||
| 208 | + // 获取结束运输报警次数 | ||
| 209 | + String countKey = nowDate + jsonObject.getString("siteId") + "44030023" + transportEndTime; | ||
| 210 | + int count44030023 = redisCache.getCacheObject(countKey) == null ? 1 | ||
| 211 | + : Integer.parseInt(redisCache.getCacheObject(countKey).toString()) + 1; | ||
| 212 | + // 获取结束运输累计报警描述 | ||
| 213 | + String describeKey = nowDate + jsonObject.getString("siteId") + "44030023describe" | ||
| 214 | + + transportEndTime; | ||
| 215 | + String describe44030023 = redisCache.getCacheObject(describeKey) == null ? "" | ||
| 216 | + : redisCache.getCacheObject(describeKey).toString(); | ||
| 217 | + // 获取结束运输报警次数 | ||
| 218 | + String countEKey = nowDate + jsonObject.getString("siteId") + "44030023" + transportStartTime; | ||
| 219 | + int countE = redisCache.getCacheObject(countEKey) == null ? 1 | ||
| 220 | + : Integer.parseInt(redisCache.getCacheObject(countEKey).toString()) + 1; | ||
| 221 | + // 获取结束运输累计报警描述 | ||
| 222 | + String describeEKey = nowDate + jsonObject.getString("siteId") + "44030023describe" | ||
| 223 | + + transportStartTime; | ||
| 224 | + String describeE = redisCache.getCacheObject(describeEKey) == null ? "" | ||
| 225 | + : redisCache.getCacheObject(describeEKey).toString(); | ||
| 226 | + | ||
| 227 | + if (!StringUtils.isEmpty(describe44030023)) { | ||
| 228 | + describe44030023 = describe44030023 + ";\n" | ||
| 229 | + + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 230 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") | ||
| 231 | + + "在" + jsonObject.get("siteName") + "出现" + violationType; | ||
| 232 | + } else { | ||
| 233 | + describe44030023 = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 234 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") | ||
| 235 | + + "在" + jsonObject.get("siteName") + "出现" + violationType; | ||
| 236 | + } | ||
| 237 | + // 报警次数等于5推送案卷 | ||
| 238 | + if (count44030023 == 5 && isTimeWithinRange(alarmTimeString, transportEndTime, endTime)) { | ||
| 239 | + violationWarningInformation.setViolationObjectType("0"); | ||
| 240 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 241 | + violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 242 | + | ||
| 243 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 244 | + violationWarningInformation.setDescribe(describe44030023); | ||
| 245 | + // 业务逻辑 | ||
| 246 | + violationWarningInformationService.insertViolationWarningInformation(null, | ||
| 247 | + violationWarningInformation); | ||
| 248 | + } | ||
| 249 | + | ||
| 250 | + if (!StringUtils.isEmpty(describeE)) { | ||
| 251 | + describeE = describeE + ";\n" + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 252 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") | ||
| 253 | + + "在" + jsonObject.get("siteName") + "出现" + violationType; | ||
| 254 | + } else { | ||
| 255 | + describeE = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 256 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") | ||
| 257 | + + "在" + jsonObject.get("siteName") + "出现" + violationType; | ||
| 258 | + } | ||
| 259 | + // 报警次数等于5推送案卷 | ||
| 260 | + if (countE == 5 && isTimeWithinRange(alarmTimeString, startTime, transportStartTime)) { | ||
| 261 | + violationWarningInformation.setViolationObjectType("0"); | ||
| 262 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 263 | + violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 264 | + | ||
| 265 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 266 | + violationWarningInformation.setDescribe(describeE); | ||
| 267 | + // 业务逻辑 | ||
| 268 | + violationWarningInformationService.insertViolationWarningInformation(null, | ||
| 269 | + violationWarningInformation); | ||
| 270 | + } | ||
| 271 | + | ||
| 272 | + // 判断结束运输 | ||
| 273 | + if (isTimeWithinRange(alarmTimeString, transportEndTime, endTime)) { | ||
| 274 | + // 次数+1 | ||
| 275 | + redisCache.setCacheObject(countKey, count44030023, 1, TimeUnit.HOURS); | ||
| 276 | + // 累计描述 | ||
| 277 | + redisCache.setCacheObject(describeKey, describe44030023, 1, TimeUnit.HOURS); | ||
| 278 | + } else if (isTimeWithinRange(alarmTimeString, startTime, transportStartTime)) { | ||
| 279 | + // 次数+1 | ||
| 280 | + redisCache.setCacheObject(countEKey, countE, 1, TimeUnit.HOURS); | ||
| 281 | + // 累计描述 | ||
| 282 | + redisCache.setCacheObject(describeEKey, describeE, 1, TimeUnit.HOURS); | ||
| 283 | + } | ||
| 284 | + } catch (NullPointerException e) { | ||
| 285 | + throw e; | ||
| 286 | + } | ||
| 287 | + break; | ||
| 288 | + | ||
| 289 | + case "44030030":// 未激活车辆作业 | ||
| 290 | + case "44030031":// 未核准作业车辆作业 | ||
| 291 | + case "44030022":// 工地预警-三无车辆进入工地 | ||
| 292 | + case "44030021":// 工地预警-视频设备离线超时报警 | ||
| 293 | + case "44030028":// 离线运输报警(工) | ||
| 294 | + | ||
| 295 | + violationWarningInformation.setViolationObjectType("0"); | ||
| 296 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 297 | + violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 298 | + describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 299 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" | ||
| 300 | + + jsonObject.get("siteName") + "出现" + violationType; | ||
| 301 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 302 | + violationWarningInformation.setDescribe(describe); | ||
| 303 | + // 业务逻辑 | ||
| 304 | + violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 305 | + break; | ||
| 306 | + | ||
| 307 | + case "44030024":// 处理场所预警-未报开工作业 | ||
| 308 | + // 获取报警次数 | ||
| 309 | + int count44030024 = redisCache | ||
| 310 | + .getCacheObject(nowDate + jsonObject.getString("siteId") + "44030024") == null | ||
| 311 | + ? 1 | ||
| 312 | + : Integer.parseInt( | ||
| 313 | + redisCache.getCacheObject(nowDate + jsonObject.getString("siteId") + "44030024") | ||
| 314 | + .toString()) | ||
| 315 | + + 1; | ||
| 316 | + // 获取累计报警描述 | ||
| 317 | + String describe44030024 = redisCache | ||
| 318 | + .getCacheObject(nowDate + jsonObject.getString("siteId") + "44030024describe") == null | ||
| 319 | + ? "" | ||
| 320 | + : redisCache | ||
| 321 | + .getCacheObject(nowDate + jsonObject.getString("siteId") + "44030024describe") | ||
| 322 | + .toString(); | ||
| 323 | + if (!StringUtils.isEmpty(describe44030024)) { | ||
| 324 | + describe44030024 = describe44030024 + ";\n" | ||
| 325 | + + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 326 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") | ||
| 327 | + + "在" + jsonObject.get("siteName") + "出现" + violationType; | ||
| 328 | + } else { | ||
| 329 | + describe44030024 = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 330 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") | ||
| 331 | + + "在" + jsonObject.get("siteName") + "出现" + violationType; | ||
| 332 | + } | ||
| 333 | + // 报警次数等于5推送案卷 | ||
| 334 | + if (count44030024 == 5) { | ||
| 335 | + violationWarningInformation.setViolationObjectType("1"); | ||
| 336 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 337 | + violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 338 | + | ||
| 339 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 340 | + violationWarningInformation.setDescribe(describe44030024); | ||
| 341 | + // 业务逻辑 | ||
| 342 | + violationWarningInformationService.insertViolationWarningInformation(null, | ||
| 343 | + violationWarningInformation); | ||
| 344 | + } | ||
| 345 | + | ||
| 346 | + // 次数+1 | ||
| 347 | + redisCache.setCacheObject(nowDate + jsonObject.getString("siteId") + "44030024", count44030024, 24, | ||
| 348 | + TimeUnit.HOURS); | ||
| 349 | + // 累计描述 | ||
| 350 | + redisCache.setCacheObject(nowDate + jsonObject.getString("siteId") + "44030024describe", | ||
| 351 | + describe44030024, 24, TimeUnit.HOURS); | ||
| 352 | + break; | ||
| 353 | + case "44030027":// 处理场所预警-未到指定的处理场所作业 | ||
| 354 | + case "44030026":// 处理场所预警-三无车辆进入处理场所 | ||
| 355 | + case "44030029":// 离线运输报警(消) | ||
| 356 | + case "44030025":// 处理场所预警-视频设备离线超时报警 | ||
| 357 | + violationWarningInformation.setViolationObjectType("1"); | ||
| 358 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 359 | + violationWarningInformation.setProjectName(jsonObject.getString("siteName")); | ||
| 360 | + describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 361 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" | ||
| 362 | + + jsonObject.get("siteName") + "出现" + violationType; | ||
| 363 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 364 | + violationWarningInformation.setDescribe(describe); | ||
| 365 | + // 业务逻辑 | ||
| 366 | + violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 367 | + break; | ||
| 368 | + case "44030032":// 未按线路行驶 | ||
| 369 | + violationWarningInformation.setViolationObjectType("0"); | ||
| 370 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 371 | + violationWarningInformation.setProjectName(siteName); | ||
| 372 | + describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 373 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "在" | ||
| 374 | + + jsonObject.get("siteName") + "出现" + violationType; | ||
| 375 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 376 | + violationWarningInformation.setDescribe(describe); | ||
| 377 | + // 业务逻辑 | ||
| 378 | + violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 379 | + break; | ||
| 380 | + case "44030033":// 闯禁行驶 | ||
| 381 | + violationWarningInformation.setViolationObjectType("0"); | ||
| 382 | + violationWarningInformation.setSendObject("区管理部门"); | ||
| 383 | + violationWarningInformation.setProjectName(siteName); | ||
| 384 | + describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 385 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "出现" | ||
| 386 | + + violationType; | ||
| 387 | + // 设置公司简称 | ||
| 388 | + for (Object o : company1) { | ||
| 389 | + JSONObject jo = (JSONObject) o; | ||
| 390 | + if (basevehicleInfo.getString("companyID").equals(jo.getString("id"))) { | ||
| 391 | + violationWarningInformation.setAbbreviation(jo.getString("abbreviation")); | ||
| 392 | + break; | ||
| 393 | + } | ||
| 394 | + } | ||
| 395 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 396 | + violationWarningInformation.setDescribe(describe); | ||
| 397 | + // 业务逻辑 | ||
| 398 | + violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 399 | + break; | ||
| 400 | + | ||
| 401 | + case "44030034":// 失信车辆作业 | ||
| 402 | + case "44030035":// 卫星 | ||
| 403 | + violationWarningInformation.setProjectName(siteName); | ||
| 404 | + violationWarningInformation.setViolationObjectType("2"); | ||
| 405 | + violationWarningInformation.setSendObject("运输企业"); | ||
| 406 | + describe = DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 407 | + + violationWarningInformation.getCompanyName() + " " + jsonObject.get("licenseplateNo") + "出现" | ||
| 408 | + + violationType; | ||
| 409 | + // 设置公司简称 | ||
| 410 | + for (Object o : company1) { | ||
| 411 | + JSONObject jo = (JSONObject) o; | ||
| 412 | + if (basevehicleInfo.getString("companyID").equals(jo.getString("id"))) { | ||
| 413 | + violationWarningInformation.setAbbreviation(jo.getString("abbreviation")); | ||
| 414 | + break; | ||
| 415 | + } | ||
| 416 | + } | ||
| 417 | + violationWarningInformation.setCreateTime(alarmTime); | ||
| 418 | + violationWarningInformation.setDescribe(describe); | ||
| 419 | + // 业务逻辑 | ||
| 420 | + violationWarningInformationService.insertViolationWarningInformation(null, violationWarningInformation); | ||
| 421 | + break; | ||
| 422 | + } | ||
| 423 | + | ||
| 424 | + } else { | ||
| 425 | + String describe = ""; | ||
| 426 | + if (violationTypeCode.equals("44030033") || violationTypeCode.equals("44030034")) { | ||
| 427 | + describe = violationWarningInformation1.getDescribe() + ";\n" | ||
| 428 | + + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 429 | + + jsonObject.getString("enterpriseName") + " " + jsonObject.get("licenseplateNo") + "出现" | ||
| 430 | + + jsonObject.getString("alarmName"); | ||
| 431 | + } else { | ||
| 432 | + describe = violationWarningInformation1.getDescribe() + ";\n" | ||
| 433 | + + DateFormatUtils.format(alarmTime, "yyyy/MM/dd HH:mm:ss") + " " | ||
| 434 | + + jsonObject.getString("enterpriseName") + " " + jsonObject.get("licenseplateNo") + "在" | ||
| 435 | + + jsonObject.get("siteName") + "出现" + jsonObject.getString("alarmName"); | ||
| 436 | + } | ||
| 437 | + | ||
| 438 | + violationWarningInformation1.setDescribe(describe); | ||
| 439 | + SpringUtils.getBean(ViolationWarningInformationMapper.class) | ||
| 440 | + .updateViolationWarningInformation(violationWarningInformation1); | ||
| 441 | + } | ||
| 442 | + // kafka消费成功 | ||
| 443 | + KafkaCompensation kafkaCompensation = new KafkaCompensation(); | ||
| 444 | + kafkaCompensation.setId(Long.valueOf(id)); | ||
| 445 | + kafkaCompensation.setStatus(1); | ||
| 446 | + SpringUtils.getBean(KafkaCompensationMapper.class).updateKafkaCompensation(kafkaCompensation); | ||
| 447 | + | ||
| 448 | + } | ||
| 449 | + | ||
| 450 | + public String insertKafkaCompensation(String data) { | ||
| 451 | + KafkaCompensation kafkaCompensation = new KafkaCompensation(); | ||
| 452 | + kafkaCompensation.setData(data); | ||
| 453 | + kafkaCompensation.setCreateTime(DateUtils.getNowDate()); | ||
| 454 | + kafkaCompensation.setStatus(0); | ||
| 455 | + SpringUtils.getBean(KafkaCompensationMapper.class).insertKafkaCompensation(kafkaCompensation); | ||
| 456 | + return kafkaCompensation.getId().toString(); | ||
| 457 | + } | ||
| 458 | + | ||
| 459 | + /** | ||
| 460 | + * 对HH:mm格式时间进行分钟的加减 | ||
| 461 | + * | ||
| 462 | + * @param timeStr | ||
| 463 | + * @param minutesToAddOrSubtract | ||
| 464 | + * @return | ||
| 465 | + */ | ||
| 466 | + public String manipulateTime(String timeStr, int minutesToAddOrSubtract) { | ||
| 467 | + // 定义输入时间格式的日期时间格式器 | ||
| 468 | + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm"); | ||
| 469 | + | ||
| 470 | + // 解析输入的时间字符串为 LocalTime 对象 | ||
| 471 | + LocalTime time = LocalTime.parse(timeStr, formatter); | ||
| 472 | + | ||
| 473 | + // 执行加减分钟的操作 | ||
| 474 | + LocalTime modifiedTime = time.plusMinutes(minutesToAddOrSubtract); | ||
| 475 | + | ||
| 476 | + // 将修改后的时间格式化为 HH:mm 格式 | ||
| 477 | + String formattedModifiedTime = modifiedTime.format(formatter); | ||
| 478 | + | ||
| 479 | + return formattedModifiedTime; | ||
| 480 | + } | ||
| 481 | + | ||
| 482 | + /** | ||
| 483 | + * 判断timeStr是否在startTimeStr-endTimeStr区间 | ||
| 484 | + * | ||
| 485 | + * @param timeStr | ||
| 486 | + * @param startTimeStr | ||
| 487 | + * @param endTimeStr | ||
| 488 | + * @return | ||
| 489 | + */ | ||
| 490 | + public boolean isTimeWithinRange(String timeStr, String startTimeStr, String endTimeStr) { | ||
| 491 | + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm"); | ||
| 492 | + LocalTime time = LocalTime.parse(timeStr, formatter); | ||
| 493 | + LocalTime startTime = LocalTime.parse(startTimeStr, formatter); | ||
| 494 | + LocalTime endTime = LocalTime.parse(endTimeStr, formatter); | ||
| 495 | + | ||
| 496 | + return !time.isBefore(startTime) && !time.isAfter(endTime); | ||
| 497 | + | ||
| 498 | + } | ||
| 442 | } | 499 | } |
trash-workFlow/src/main/java/com/trash/workflow/listener/DropPointListener.java
0 → 100644
| 1 | +package com.trash.workflow.listener; | ||
| 2 | + | ||
| 3 | +import java.util.ArrayList; | ||
| 4 | +import java.util.List; | ||
| 5 | +import java.util.Map; | ||
| 6 | + | ||
| 7 | +import org.activiti.engine.delegate.DelegateExecution; | ||
| 8 | +import org.activiti.engine.delegate.ExecutionListener; | ||
| 9 | +import org.activiti.engine.delegate.Expression; | ||
| 10 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 11 | + | ||
| 12 | +import com.trash.business.mapper.GarMapper; | ||
| 13 | +import com.trash.common.utils.spring.SpringUtils; | ||
| 14 | + | ||
| 15 | + | ||
| 16 | +public class DropPointListener implements ExecutionListener { | ||
| 17 | + | ||
| 18 | + private Expression state; | ||
| 19 | + | ||
| 20 | + @Override | ||
| 21 | + public void notify(DelegateExecution delegateExecution) { | ||
| 22 | + | ||
| 23 | + List<Map> maps = new ArrayList<Map>(); | ||
| 24 | + | ||
| 25 | + String idString = (delegateExecution.getProcessInstanceBusinessKey().split(":")[1]); | ||
| 26 | + String status = (state.getValue(delegateExecution).toString()); | ||
| 27 | + | ||
| 28 | + SpringUtils.getBean(GarMapper.class).updateDropPointById(idString, status); | ||
| 29 | + | ||
| 30 | + workflowUtils.sendDataToHisTory(delegateExecution, state,null); | ||
| 31 | + | ||
| 32 | + System.out.println("纪检督察流程状态更新 更新ID:" + delegateExecution.getProcessInstanceBusinessKey() + "状态:" + state.getValue(delegateExecution).toString()); | ||
| 33 | + } | ||
| 34 | + | ||
| 35 | + | ||
| 36 | + | ||
| 37 | +} |
trash-workFlow/src/main/java/com/trash/workflow/service/IWorkflowService.java
| @@ -3,17 +3,12 @@ package com.trash.workflow.service; | @@ -3,17 +3,12 @@ package com.trash.workflow.service; | ||
| 3 | import java.util.List; | 3 | import java.util.List; |
| 4 | import java.util.Map; | 4 | import java.util.Map; |
| 5 | 5 | ||
| 6 | -import com.trash.casefile.domain.ViolationWarningInformation; | ||
| 7 | -import org.activiti.api.process.model.ProcessInstance; | ||
| 8 | - | ||
| 9 | -import com.trash.activiti.domain.dto.HistoryDataDTO; | ||
| 10 | import com.trash.business.domain.SupervisionThreestep; | 6 | import com.trash.business.domain.SupervisionThreestep; |
| 11 | import com.trash.caseOffline.domain.CaseOffline; | 7 | import com.trash.caseOffline.domain.CaseOffline; |
| 12 | import com.trash.casefile.domain.ViolationCaseFile; | 8 | import com.trash.casefile.domain.ViolationCaseFile; |
| 9 | +import com.trash.casefile.domain.ViolationWarningInformation; | ||
| 13 | import com.trash.workflow.domain.Workflow; | 10 | import com.trash.workflow.domain.Workflow; |
| 14 | 11 | ||
| 15 | -import net.sf.jsqlparser.statement.create.table.Index; | ||
| 16 | - | ||
| 17 | /** | 12 | /** |
| 18 | * 请假Service接口 | 13 | * 请假Service接口 |
| 19 | * | 14 | * |
| @@ -79,6 +74,7 @@ public interface IWorkflowService | @@ -79,6 +74,7 @@ public interface IWorkflowService | ||
| 79 | */ | 74 | */ |
| 80 | int deleteWorkflowById(String id); | 75 | int deleteWorkflowById(String id); |
| 81 | 76 | ||
| 77 | + int createDropPointWorkFlow(Map<String,String> droppoint); | ||
| 82 | 78 | ||
| 83 | int createLeaveWorkFlow(Workflow workflow,int index); | 79 | int createLeaveWorkFlow(Workflow workflow,int index); |
| 84 | 80 |
trash-workFlow/src/main/java/com/trash/workflow/service/impl/WorkflowServiceImpl.java
| @@ -4,33 +4,20 @@ import java.text.SimpleDateFormat; | @@ -4,33 +4,20 @@ import java.text.SimpleDateFormat; | ||
| 4 | import java.util.Date; | 4 | import java.util.Date; |
| 5 | import java.util.List; | 5 | import java.util.List; |
| 6 | import java.util.Map; | 6 | import java.util.Map; |
| 7 | -import java.util.concurrent.TimeUnit; | ||
| 8 | import java.util.stream.Collectors; | 7 | import java.util.stream.Collectors; |
| 9 | 8 | ||
| 10 | -import com.trash.casefile.domain.ViolationWarningInformation; | ||
| 11 | -import com.trash.common.config.trashConfig; | ||
| 12 | -import com.trash.common.core.redis.RedisCache; | ||
| 13 | -import com.trash.common.core.domain.entity.SysUser; | ||
| 14 | -import com.trash.common.core.domain.model.LoginUser; | ||
| 15 | -import com.trash.framework.web.service.SysLoginService; | ||
| 16 | import org.activiti.api.process.model.ProcessInstance; | 9 | import org.activiti.api.process.model.ProcessInstance; |
| 17 | import org.activiti.api.process.model.builders.ProcessPayloadBuilder; | 10 | import org.activiti.api.process.model.builders.ProcessPayloadBuilder; |
| 18 | -import org.activiti.api.process.model.payloads.StartProcessPayload; | ||
| 19 | import org.activiti.api.process.runtime.ProcessRuntime; | 11 | import org.activiti.api.process.runtime.ProcessRuntime; |
| 20 | import org.activiti.api.task.runtime.TaskRuntime; | 12 | import org.activiti.api.task.runtime.TaskRuntime; |
| 21 | import org.activiti.engine.RuntimeService; | 13 | import org.activiti.engine.RuntimeService; |
| 22 | import org.activiti.engine.TaskService; | 14 | import org.activiti.engine.TaskService; |
| 23 | import org.activiti.engine.task.IdentityLink; | 15 | import org.activiti.engine.task.IdentityLink; |
| 24 | -import org.activiti.engine.task.IdentityLinkType; | ||
| 25 | import org.activiti.engine.task.Task; | 16 | import org.activiti.engine.task.Task; |
| 26 | import org.apache.commons.collections4.map.HashedMap; | 17 | import org.apache.commons.collections4.map.HashedMap; |
| 27 | import org.springframework.beans.factory.annotation.Autowired; | 18 | import org.springframework.beans.factory.annotation.Autowired; |
| 28 | -import org.springframework.security.core.context.SecurityContext; | ||
| 29 | import org.springframework.security.core.context.SecurityContextHolder; | 19 | import org.springframework.security.core.context.SecurityContextHolder; |
| 30 | import org.springframework.security.core.context.SecurityContextImpl; | 20 | import org.springframework.security.core.context.SecurityContextImpl; |
| 31 | -import org.springframework.security.authentication.AuthenticationManager; | ||
| 32 | -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; | ||
| 33 | -import org.springframework.security.core.Authentication; | ||
| 34 | import org.springframework.stereotype.Service; | 21 | import org.springframework.stereotype.Service; |
| 35 | import org.springframework.transaction.annotation.Transactional; | 22 | import org.springframework.transaction.annotation.Transactional; |
| 36 | 23 | ||
| @@ -44,11 +31,14 @@ import com.trash.business.service.IConstructionSignService; | @@ -44,11 +31,14 @@ import com.trash.business.service.IConstructionSignService; | ||
| 44 | import com.trash.business.service.ISupervisionThreestepService; | 31 | import com.trash.business.service.ISupervisionThreestepService; |
| 45 | import com.trash.caseOffline.domain.CaseOffline; | 32 | import com.trash.caseOffline.domain.CaseOffline; |
| 46 | import com.trash.casefile.domain.ViolationCaseFile; | 33 | import com.trash.casefile.domain.ViolationCaseFile; |
| 34 | +import com.trash.casefile.domain.ViolationWarningInformation; | ||
| 35 | +import com.trash.common.core.domain.entity.SysUser; | ||
| 36 | +import com.trash.common.core.redis.RedisCache; | ||
| 47 | import com.trash.common.utils.DateUtils; | 37 | import com.trash.common.utils.DateUtils; |
| 48 | import com.trash.common.utils.RemoteServerUtils; | 38 | import com.trash.common.utils.RemoteServerUtils; |
| 49 | import com.trash.common.utils.SecurityUtils; | 39 | import com.trash.common.utils.SecurityUtils; |
| 50 | import com.trash.common.utils.StringUtils; | 40 | import com.trash.common.utils.StringUtils; |
| 51 | -import com.trash.common.utils.uuid.UUID; | 41 | +import com.trash.framework.web.service.SysLoginService; |
| 52 | import com.trash.system.service.ISysUserService; | 42 | import com.trash.system.service.ISysUserService; |
| 53 | import com.trash.workflow.domain.Workflow; | 43 | import com.trash.workflow.domain.Workflow; |
| 54 | import com.trash.workflow.mapper.WorkflowMapper; | 44 | import com.trash.workflow.mapper.WorkflowMapper; |
| @@ -280,6 +270,46 @@ public class WorkflowServiceImpl implements IWorkflowService { | @@ -280,6 +270,46 @@ public class WorkflowServiceImpl implements IWorkflowService { | ||
| 280 | 270 | ||
| 281 | return 0; | 271 | return 0; |
| 282 | } | 272 | } |
| 273 | + | ||
| 274 | + @Override | ||
| 275 | + @Transactional | ||
| 276 | + public int createDropPointWorkFlow(Map<String,String> droppoint) { // 三查 | ||
| 277 | + ProcessInstance processInstance = null; | ||
| 278 | + ActWorkflowFormData awf = null; | ||
| 279 | + try { | ||
| 280 | + String name = "投放点审批:" + droppoint.get("name"); | ||
| 281 | + | ||
| 282 | + processInstance = processRuntime.start(ProcessPayloadBuilder.start() | ||
| 283 | + .withProcessDefinitionKey("workflow_drop_point").withName(name) | ||
| 284 | + .withBusinessKey("workflow_drop_point:" + droppoint.get("id")).build()); | ||
| 285 | + | ||
| 286 | + PorcThreeStepTask(processInstance, droppoint.get("area")); | ||
| 287 | + | ||
| 288 | + Workflow workflow = new Workflow(); | ||
| 289 | + workflow.setId("workflow_drop_point:" + droppoint.get("id")); | ||
| 290 | + workflow.setTitle(name); | ||
| 291 | + workflow.setReason(droppoint.get("name") + "审批流程"); | ||
| 292 | + workflow.setStartTime(sdf.format(new Date())); | ||
| 293 | + workflow.setEndTime(sdf.format(new Date())); | ||
| 294 | + workflow.setType("投放点审批"); | ||
| 295 | + workflow.setInstanceId(processInstance.getId()); | ||
| 296 | + workflow.setState("0"); | ||
| 297 | + workflow.setCreateTime(new Date()); | ||
| 298 | + | ||
| 299 | + | ||
| 300 | + SysUser user = SecurityUtils.getLoginUser().getUser(); | ||
| 301 | + awf = insertAwf(user,workflow); | ||
| 302 | + | ||
| 303 | + return workflowMapper.insertWorkflow(workflow); | ||
| 304 | + } catch (Exception e) { | ||
| 305 | + e.printStackTrace(); | ||
| 306 | + if(awf.getId() != null) | ||
| 307 | + awfServer.deleteActWorkflowFormDataById(awf.getId()); | ||
| 308 | + processRuntime.delete(ProcessPayloadBuilder.delete(processInstance)); | ||
| 309 | + } | ||
| 310 | + | ||
| 311 | + return 0; | ||
| 312 | + } | ||
| 283 | 313 | ||
| 284 | @Override | 314 | @Override |
| 285 | @Transactional | 315 | @Transactional |
trash-workFlow/src/main/resources/mapper/GarMapper.xml
0 → 100644
| 1 | +<?xml version="1.0" encoding="UTF-8" ?> | ||
| 2 | +<!DOCTYPE mapper | ||
| 3 | +PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||
| 4 | +"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||
| 5 | +<mapper namespace="com.trash.business.mapper.GarMapper"> | ||
| 6 | + | ||
| 7 | + <update id="updateDropPointById" parameterType="String"> | ||
| 8 | + update drop_point_info Set update_time = NOW(),status = #{status} | ||
| 9 | + where id = #{id} | ||
| 10 | + </update> | ||
| 11 | +</mapper> | ||
| 0 | \ No newline at end of file | 12 | \ No newline at end of file |
trash-workFlow/src/main/resources/mapper/SupervisionThreestepMapper.xml
| @@ -133,6 +133,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | @@ -133,6 +133,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||
| 133 | <if test="phone != null and phone != ''"> and phone = #{phone}</if> | 133 | <if test="phone != null and phone != ''"> and phone = #{phone}</if> |
| 134 | <if test="status != null"> and status = #{status}</if> | 134 | <if test="status != null"> and status = #{status}</if> |
| 135 | <if test="createBy != null and createBy != ''"> and create_by = #{createBy}</if> | 135 | <if test="createBy != null and createBy != ''"> and create_by = #{createBy}</if> |
| 136 | + <if test="checkStatus != null and checkStatus==1 "> and check_end_time is not null</if> | ||
| 137 | + <if test="checkStatus != null and checkStatus==0 "> and check_end_time is null</if> | ||
| 138 | + | ||
| 136 | <if test="workStartTime != null"> and self_check_time BETWEEN #{workStartTime} and | 139 | <if test="workStartTime != null"> and self_check_time BETWEEN #{workStartTime} and |
| 137 | #{workEndTime}</if> | 140 | #{workEndTime}</if> |
| 138 | 141 | ||
| @@ -149,7 +152,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | @@ -149,7 +152,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||
| 149 | close=")"> | 152 | close=")"> |
| 150 | #{id} | 153 | #{id} |
| 151 | </foreach> | 154 | </foreach> |
| 152 | - </if> | 155 | + </if> |
| 153 | </where> | 156 | </where> |
| 154 | ORDER BY create_time desc | 157 | ORDER BY create_time desc |
| 155 | </select> | 158 | </select> |
trash-workFlow/src/main/resources/mapper/TruckActivateMapper.xml
| @@ -26,9 +26,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | @@ -26,9 +26,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||
| 26 | <result property="transportEndTime" column="transport_end_time" /> | 26 | <result property="transportEndTime" column="transport_end_time" /> |
| 27 | <result property="routeName" column="route_name" /> | 27 | <result property="routeName" column="route_name" /> |
| 28 | <result property="earthName" column="earth_name" /> | 28 | <result property="earthName" column="earth_name" /> |
| 29 | - <result property="routeInfo" column="route_info" /> | 29 | +<!-- <result property="routeInfo" column="route_info" /> |
| 30 | <result property="earthList" column="earth_list" /> | 30 | <result property="earthList" column="earth_list" /> |
| 31 | - <result property="coord" column="coord" /> | 31 | + <result property="coord" column="coord" /> --> |
| 32 | </resultMap> | 32 | </resultMap> |
| 33 | 33 | ||
| 34 | <sql id="selectTruckActivateVo"> | 34 | <sql id="selectTruckActivateVo"> |
| @@ -161,9 +161,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | @@ -161,9 +161,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||
| 161 | <if test="transportEndTime != null">transport_end_time,</if> | 161 | <if test="transportEndTime != null">transport_end_time,</if> |
| 162 | <if test="routeName != null">route_name,</if> | 162 | <if test="routeName != null">route_name,</if> |
| 163 | <if test="earthName != null">earth_name,</if> | 163 | <if test="earthName != null">earth_name,</if> |
| 164 | - <if test="routeInfo != null">route_info,</if> | 164 | +<!-- <if test="routeInfo != null">route_info,</if> |
| 165 | <if test="earthList != null">earth_list,</if> | 165 | <if test="earthList != null">earth_list,</if> |
| 166 | - <if test="coord != null">coord,</if> | 166 | + <if test="coord != null">coord,</if> --> |
| 167 | </trim> | 167 | </trim> |
| 168 | <trim prefix="values (" suffix=")" suffixOverrides=","> | 168 | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| 169 | <if test="company != null">#{company},</if> | 169 | <if test="company != null">#{company},</if> |
| @@ -187,9 +187,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | @@ -187,9 +187,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||
| 187 | <if test="transportEndTime != null">#{transportEndTime},</if> | 187 | <if test="transportEndTime != null">#{transportEndTime},</if> |
| 188 | <if test="routeName != null">#{routeName},</if> | 188 | <if test="routeName != null">#{routeName},</if> |
| 189 | <if test="earthName != null">#{earthName},</if> | 189 | <if test="earthName != null">#{earthName},</if> |
| 190 | - <if test="routeInfo != null">#{routeInfo},</if> | 190 | +<!-- <if test="routeInfo != null">#{routeInfo},</if> |
| 191 | <if test="earthList != null">#{earthList},</if> | 191 | <if test="earthList != null">#{earthList},</if> |
| 192 | - <if test="coord != null">#{coord},</if> | 192 | + <if test="coord != null">#{coord},</if> --> |
| 193 | </trim> | 193 | </trim> |
| 194 | </insert> | 194 | </insert> |
| 195 | 195 | ||
| @@ -216,9 +216,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | @@ -216,9 +216,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||
| 216 | <if test="transportEndTime != null">transport_end_time = #{transportEndTime},</if> | 216 | <if test="transportEndTime != null">transport_end_time = #{transportEndTime},</if> |
| 217 | <if test="routeName != null">route_name = #{routeName},</if> | 217 | <if test="routeName != null">route_name = #{routeName},</if> |
| 218 | <if test="earthName != null">earth_name = #{earthName},</if> | 218 | <if test="earthName != null">earth_name = #{earthName},</if> |
| 219 | - <if test="routeInfo != null">route_info = #{routeInfo},</if> | 219 | +<!-- <if test="routeInfo != null">route_info = #{routeInfo},</if> |
| 220 | <if test="earthList != null">earth_list = #{earthList},</if> | 220 | <if test="earthList != null">earth_list = #{earthList},</if> |
| 221 | - <if test="coord != null">coord = #{coord},</if> | 221 | + <if test="coord != null">coord = #{coord},</if> --> |
| 222 | </trim> | 222 | </trim> |
| 223 | where id = #{id} | 223 | where id = #{id} |
| 224 | </update> | 224 | </update> |