diff --git a/web/src/main/java/com/example/web/controller/UserController.java b/web/src/main/java/com/example/web/controller/UserController.java index 5729f96..0469889 100644 --- a/web/src/main/java/com/example/web/controller/UserController.java +++ b/web/src/main/java/com/example/web/controller/UserController.java @@ -57,6 +57,7 @@ public class UserController { @RequestParam(defaultValue = "10") int size, @RequestParam String userRole, @RequestParam(required = false) String userName, + @RequestParam(required = false) String phoneNumber, @RequestParam(required = false) String managercompany, @RequestParam(required = false) String managerdepartment, @RequestParam(required = false) String organization, @@ -66,6 +67,7 @@ public class UserController { params.put("size", size); params.put("userRole", userRole); params.put("userName", userName); + params.put("phoneNumber", phoneNumber); params.put("managercompany", managercompany); params.put("managerdepartment", managerdepartment); params.put("organization", organization); diff --git a/web/src/main/java/com/example/web/service/impl/UserServiceImpl.java b/web/src/main/java/com/example/web/service/impl/UserServiceImpl.java index e3d0b29..9d6c7ef 100644 --- a/web/src/main/java/com/example/web/service/impl/UserServiceImpl.java +++ b/web/src/main/java/com/example/web/service/impl/UserServiceImpl.java @@ -66,6 +66,7 @@ public class UserServiceImpl implements UserService { String followup = (String) requestParams.getOrDefault("followup", ""); String userRole = (String) requestParams.getOrDefault("userRole", ""); String userName = (String) requestParams.getOrDefault("userName", ""); + String phoneNumber = (String) requestParams.getOrDefault("phoneNumber", ""); String managercompany = (String) requestParams.getOrDefault("managercompany", ""); String managerdepartment = (String) requestParams.getOrDefault("managerdepartment", ""); String organization = (String) requestParams.getOrDefault("organization", ""); @@ -78,6 +79,7 @@ public class UserServiceImpl implements UserService { // 设置认证参数过滤 params.put("userName", userName); + params.put("phoneNumber", phoneNumber); params.put("managercompany", managercompany); params.put("managerdepartment", managerdepartment); params.put("organization", organization); @@ -119,6 +121,7 @@ public class UserServiceImpl implements UserService { int size = (int) requestParams.getOrDefault("size", 10); String userRole = (String) requestParams.getOrDefault("userRole", ""); String userName = (String) requestParams.getOrDefault("userName", ""); + String phoneNumber = (String) requestParams.getOrDefault("phoneNumber", ""); String managercompany = (String) requestParams.getOrDefault("managercompany", ""); String managerdepartment = (String) requestParams.getOrDefault("managerdepartment", ""); String organization = (String) requestParams.getOrDefault("organization", ""); @@ -131,6 +134,7 @@ public class UserServiceImpl implements UserService { // 设置认证参数过滤 params.put("userName", userName); + params.put("phoneNumber", phoneNumber); params.put("managercompany", managercompany); params.put("managerdepartment", managerdepartment); params.put("organization", organization); diff --git a/web/src/main/resources/mapper/UsersMapper.xml b/web/src/main/resources/mapper/UsersMapper.xml index 90be5d8..04f2a37 100644 --- a/web/src/main/resources/mapper/UsersMapper.xml +++ b/web/src/main/resources/mapper/UsersMapper.xml @@ -181,26 +181,20 @@ diff --git a/web/src/main/resources/static/index.html b/web/src/main/resources/static/index.html index 6fccf0f..9a876b7 100644 --- a/web/src/main/resources/static/index.html +++ b/web/src/main/resources/static/index.html @@ -10,58 +10,6 @@ box-sizing: border-box; } - // 后台加载剩余货源数据 - function loadRemainingProductsData(userRole, userName, total) { - console.log('开始在后台加载剩余货源数据...'); - - // 计算需要加载的剩余数据量 - var remainingSize = Math.min(1000, total); // 最多加载1000条 - - // 构建查询参数 - var url = '/KH/api/products?userName=' + encodeURIComponent(userName) + '&userRole=' + encodeURIComponent(userRole) + '&page=1&size=' + remainingSize; - - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, true); - xhr.onreadystatechange = function() { - if (xhr.readyState == 4 && xhr.status == 200) { - var data = JSON.parse(xhr.responseText); - if (data.success) { - var allProducts = data.products || []; - var totalCount = data.total || 0; - var pages = Math.ceil(totalCount / productsPageSize); - - // 更新缓存 - setCachedData('products', 'all', { - products: allProducts, - total: totalCount, - pages: pages - }); - - // 缓存所有页面数据 - for (var i = 1; i <= pages && i <= 100; i++) { // 最多缓存100页 - var startIndex = (i - 1) * productsPageSize; - var endIndex = startIndex + productsPageSize; - var pageProducts = allProducts.slice(startIndex, endIndex); - - setCachedData('products', 'page_' + i + '_size_' + productsPageSize, { - products: pageProducts, - total: totalCount, - pages: pages - }); - } - - console.log('后台加载剩余货源数据完成,共', allProducts.length, '条数据,分为', pages, '页'); - console.log('已缓存', Math.min(pages, 100), '页数据'); - } else { - console.error('后台加载剩余货源数据失败:', data.message); - } - } else if (xhr.readyState == 4) { - console.error('后台加载剩余货源数据失败:', xhr.status, xhr.statusText); - } - }; - xhr.send(); - } - body { font-family: Arial, sans-serif; background-color: #f5f7fa; @@ -2230,6 +2178,59 @@ // 更新筛选标签 updateFilterTags('public'); } + + // 后台加载剩余货源数据 + function loadRemainingProductsData(userRole, userName, total) { + console.log('开始在后台加载剩余货源数据...'); + + // 计算需要加载的剩余数据量 + var remainingSize = Math.min(1000, total); // 最多加载1000条 + + // 构建查询参数 + var url = '/KH/api/products?userName=' + encodeURIComponent(userName) + '&userRole=' + encodeURIComponent(userRole) + '&page=1&size=' + remainingSize; + + var xhr = new XMLHttpRequest(); + xhr.open('GET', url, true); + xhr.onreadystatechange = function() { + if (xhr.readyState == 4 && xhr.status == 200) { + var data = JSON.parse(xhr.responseText); + if (data.success) { + var allProducts = data.products || []; + var totalCount = data.total || 0; + var pages = Math.ceil(totalCount / productsPageSize); + + // 更新缓存 + setCachedData('products', 'all', { + products: allProducts, + total: totalCount, + pages: pages + }); + + // 缓存所有页面数据 + for (var i = 1; i <= pages && i <= 100; i++) { // 最多缓存100页 + var startIndex = (i - 1) * productsPageSize; + var endIndex = startIndex + productsPageSize; + var pageProducts = allProducts.slice(startIndex, endIndex); + + setCachedData('products', 'page_' + i + '_size_' + productsPageSize, { + products: pageProducts, + total: totalCount, + pages: pages + }); + } + + console.log('后台加载剩余货源数据完成,共', allProducts.length, '条数据,分为', pages, '页'); + console.log('已缓存', Math.min(pages, 100), '页数据'); + } else { + console.error('后台加载剩余货源数据失败:', data.message); + } + } else if (xhr.readyState == 4) { + console.error('后台加载剩余货源数据失败:', xhr.status, xhr.statusText); + } + }; + xhr.send(); + } + // 重置公海池数据创建时间筛选 function resetPublicDateFilter() { @@ -2726,16 +2727,21 @@ mergedTraces.forEach(trace => { if (trace.phoneNumber) { // 根据电话号码获取用户信息 - var url = '/KH/api/users/public?phoneNumber=' + encodeURIComponent(trace.phoneNumber) + '&userRole=admin'; + var url = '/KH/api/users/public?phoneNumber=' + encodeURIComponent(trace.phoneNumber) + '&userRole=管理员'; var xhr = new XMLHttpRequest(); xhr.open('GET', url, true); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.status == 200) { var data = JSON.parse(xhr.responseText); if (data.users && data.users.length > 0) { - var user = data.users[0]; - var createTime = user.create_time; - var followupTime = user.followup_time; + // 根据电话号码筛选正确的用户 + var user = data.users.find(u => + u.phoneNumber === trace.phoneNumber || + u.phoneNumber === trace.phoneNumber.replace(/\s/g, '') + ) || data.users[0]; + // 统一使用正确的字段名 + var createTime = user.created_at || user.create_time; + var followupTime = user.followup_at || user.followup_time; if (createTime && followupTime) { // 计算响应时间 @@ -4232,7 +4238,7 @@ // 员工申请记录模态框HTML var employeeApplyModalHTML = `