var searchUri = "/SearchApi"; var govUri = "/"; var siteId = 0; var searchStr = window.location.search.slice(1); //全局查询参数 var q = ""; //办事服务数据 var sd = { pagedata: null,//服务当前也数据 wsbsId: '',//网上办理的id AREA_CODE: [ { id: "00", code: "340000000000", lab: "安徽" }, { id: "01", code: "341800000000", lab: "宣城市" }, { id: "2", code: "341802000000", lab: "宣州区人民政府" }, { id: "3", code: "341881000000", lab: "宁国人民政府" }, { id: "4", code: "341821000000", lab: "郎溪县人民政府" }, { id: "5", code: "341882000000", lab: "广德市人民政府" }, { id: "6", code: "341823000000", lab: "AMG·新葡萄8883(Macau)股份有限公司-Official website" }, { id: "7", code: "341824000000", lab: "绩溪县人民政府" }, { id: "8", code: "341825000000", lab: "旌德县人民政府" }, ], //办事服务弹窗对象 guideItem: null, // 本站筛选条件 serverUrl: '/v1/ApiZwfw/search', serverParam: { currentPageNo: 1, pageSize: 16, context: "", searchType: "01", areacode: "341823000000", category: "07|03", origin: "", orderby: "01", s_noqr: "", selfLevelFlag: false, jb: "", serviceObject: "", topClass: "", attachIds: "", terminalType: "", searchTime: "2024-09-14 09:03:01:000", isTable: 1, }, // 区县平台、市值单位查询参数 deptUrl: '/v1/ApiZwfw/self/queryImplements', deptParam: { 'currentPageNo': 1, 'pageSize': 10, 'ssqdZoneCode': 341800000000, 'ssqdTypeCode': '', 'ssqdName': '', 'isOnline': '', 'allOnline': '', 'iscsjtb': '', 'serviceObject': '', 'xzqhZj': 0, 'isPage': 1 }, //便民服务 wstbmfwURL: '/v1/ApiZwfw/getWstbmfw', //办事服务弹窗-区县(本站 07:办事服务) xzqhBySjdmUrl: '/v1/ApiZwfw/getXzqhBySjdm', xzqhBySjdmParam:{ sjdm: '341800000000', ssqdName: '', compDeptCode: '', tmplSsqdCode: 'f40ce928754949e8a334da1e3c991969' }, //办事服务弹窗-列表(本站 07:办事服务) ssqdListUrl:'/v1/ApiZwfw/getSsqdList', ssqdListParam:{ pageNum: 1, pageSize: 5, tmplSsqdCode: '', xzqhCode: '', }, //办事服务弹窗-区县(本站 03:服务专栏) xzqhListUrl: ' /v1/ApiZwfw/getXzqhList', xzqhListParam: { contentId: '', xzqhCode: '341800000000' }, //办事服务弹窗-列表(本站 03:服务专栏) operateListUrl: '/v1/ApiZwfw/getOperateList', operateListParam: { pageNum: 1, pageSize: 5, contentId: '', xzqhCode: '341800000000' }, //网上办理 wsblUrl: '/v1/ApiZwfw/getOnlineUrl/', completedCount: 0, resultsArray: [], } var requestTotalTimer = 0;//总用时间 var requestStartTime; //请求开始时间 var bt = baidu.template; bt.LEFT_DELIMITER = ""; bt.ESCAPE = false; saveSearchLog(); function saveSearchLog() { var searchLogStr = decodeURIComponent(searchStr); var qSearchLog = strToList(searchLogStr); if (qSearchLog.keyword) { var searchObj = { content: qSearchLog.keyword, }; $.ajax({ url: "/Search/SearchLog", method: "post", data: searchObj, success: function (res) { $("#searchId").val(res["searchId"]); }, }); } } function doSearchFilter(queryStr) { queryStr = decodeURIComponent(queryStr); searchStr = decodeURIComponent(searchStr); // console.log("queryStr", queryStr); //collection=policy // console.log("searchStr", searchStr); //siteName=本站&siteId=1&keyword=服务&inResults=&page=1&fromDays=0 $(".m-search .visible.transition") .removeClass("visible") .addClass("hidden") .css({ display: "none" }); $("html,body").animate({ scrollTop: 210 + "px" }, 500); var str = searchStr; q = strToList(searchStr); var n = strToList(queryStr); q = $.extend(true, q, n); // 过滤特殊字符 $.each(q, function (qk, qInfo) { q[qk] = htmlspecialchars(qInfo); }); if (!q.keyword) { layer.msg("请输入搜索关键字"); $(".u-tpsearchtext").focus(); return false; } if (q.originalKey) { /* q.originalKey = decodeURIComponent(q.originalKey); q.originalKey = $.trim(q.originalKey); q.originalKey = q.originalKey.replace(/^\+|\+$/g, ''); */ q.inResults = 1; } else { q.inResults = ""; } if (!n.page || isNaN(n.page)) { q.page = 1; } if (q.fromDate) { q.fromDate = q.fromDate.slice(0, 10); } if (q.endDate) { q.endDate = q.endDate.slice(0, 10); } //选中搜索项 tabChange("#tab_" + q["collection"]); //获取tab 选择项目 var tabActive = $(".m_search_tab .active").attr("id").replace("tab_",""); q["collection"] = tabActive; if (n.collection || n.collection === "") { delete q["thumbOn"]; delete q["videoOn"]; delete q["attachOn"]; } if (n.thumbOn) { q.thumbOn = 1; q.pageSize = 15; delete q["collection"]; delete q["videoOn"]; delete q["attachOn"]; } if (n.videoOn) { q.videoOn = 1; q.pageSize = 15; delete q["collection"]; delete q["thumbOn"]; delete q["attachOn"]; } if (n.attachOn) { q.attachOn = 1; delete q["collection"]; delete q["thumbOn"]; delete q["videoOn"]; } // 初始化数据 initItem(q); requestTotalTimer = 0;//总用时间 requestStartTime = new Date(); searchStr = $.param(q); switch (q["collection"]) { case 'service': // 服务 getServerList(); $(".u_result").hide(); $(".m-service").show(); break; case 'all': // 全部 getAllList(); $(".m_screen").show(); $(".u_result").show(); $(".m-service").hide(); break; default: // 其他(政策\公开\互动\要闻动态\新媒体\图片\视频\附件) getSearchList(url = "/data?" + searchStr); $(".m_screen").show(); $(".u_result").show(); $(".m-service").hide(); break; } } function initItem(q) { $("#item_all_leader").html(""); $("#item_all_service").html(""); $("#item_all_konwledge").html(""); $("#search_total").text(""); $("#search_time").text(""); if (q.keyword) { // 设置搜索框关键词 // $(".u-tpsearchtext").val(q.keyword); } if (q.originalKey) { // 设置二次检索搜索框关键词 $("#subKeywords").val(q.originalKey); } if (q.keyword && q.originalKey) { // $(".u-tpsearchtext").val(q.originalKey); // $("#subKeywords").val(q.keyword); // $(".u-tpsearchtext").val(q.keyword); $("#subKeywords").val(q.originalKey); } //检索条件设置 $(".m_screen li").removeClass("u-active"); if (String(q.sort) === '0') { $("#item_sort_0").addClass("u-active"); } else { q.sort = 1; $("#item_sort_1").addClass("u-active"); } if (q.fullText == 1) { $("#item_fullText_1").addClass("u-active"); } else { q.fullText = 0; $("#item_fullText_0").addClass("u-active"); } //时间 if (!q.fromDays || isNaN(q.fromDays)) { q.fromDays = 0; } if (!q.days || isNaN(q.days)) { q.days = 0; } //时间选中 $("#item_fromDays_" + q.days).addClass("u-active"); $(".g_date>span").text($("#item_fromDays_" + q.days).text() + ""); if (String(q.fuzzy) === '1') { $("#item_fuzzy_1").addClass("u-active"); } else { q.fuzzy = 0; $("#item_fuzzy_0").addClass("u-active"); } } //结果筛选条件切换(结果排序\匹配规则\搜索位置\时间) function resultFilter(param){ var type = param.split("=")[0]; var val = param.split("=")[1]; if(type === 'fuzzy' && val === '1' ){//模糊搜索 param = param + "&sort=0"; } doSearchFilter(param); } // step1 function handleData() { // 重置分页 $("#pagination").html(""); $("#pagination_js").remove(); // 清空列表数据 //$(".m_search_list .list_switch ul").html("") $(".g_search_list ul").html(""); layer.load(); } // step2 获取搜索结果数据 function getSearchList(url) { handleData(); $(".m_result").show(); var apiUrl = searchUri + url; $.ajax({ url: apiUrl, method: "GET", error: function () { layer.closeAll(); }, success: function (res) { getDetail(res); handleAllResult(res.response.items); }, }); } // 获取办事服务数据qjs function getServerList() { handleData(); //数据重新初始化 var queryfn = []; sd.serverParam.currentPageNo = q["page"]; sd.serverParam.context = q["keyword"]; if(siteType(q.siteId) === 0 || siteType(q.siteId) === 1){ sd.serverParam.areacode = sd.AREA_CODE[6].code; sd.serverParam.isErrWord = q.isErrWord;//是否是错词 sd.serverParam.isPinyin = q.isPinyin;//是否是拼音 queryfn.push(requestPost(sd.serverUrl, sd.serverParam));//服务列表数据[本站] }else{ sd.deptParam.currentPageNo = q["page"]; sd.deptParam.ssqdName = q.keyword; sd.deptParam.siteId = q.siteId; sd.deptParam.isErrWord = q.isErrWord;//是否是错词 sd.deptParam.isPinyin = q.isPinyin;//是否是拼音 queryfn.push(requestPost(sd.deptUrl, sd.deptParam)); } IPromiseAll(queryfn) .then( function (results) { $(".m_screen").hide(); layer.closeAll();//清除loding var end = new Date(); var timeUsed = end.getTime() - requestStartTime.getTime(); // results是一个数组,包含了每个成功请求的响应数据 var res1 = results[0]; var data = {}; var total = 0; var pagesize = 16; if(siteType(q.siteId) ===0 || siteType(q.siteId) === 1){ $(".m-service").show(); var response1 = JSON.parse(res1.data.searchResult); total = response1.data.total; sd.pagedata = response1.data.result;// 办事服务弹窗用到 data = { result: response1.data.result }; }else{ $(".m-service").hide(); total = res1.data.total; pagesize = sd.deptParam.pageSize; data = { result: res1.data.rows }; } // console.log("服务请求数据:", data); // 列表 $("#item_service").parent().removeClass("f-dn"); // 列表数据 if (data.result.length < 1) { var html = bt("tpl_empty", { data: q }); } else { var html = bt("tpl_all_service", { data: data }); } $("#item_service ul").html(html); // 条数、查询时间 $("#search_total").text(total); $("#search_time").text(timeUsed / 1000 ); // // 分页 $("#pagination").html( '' ); $("body").append( '' ); }, function (error) { // 如果任何一个请求失败,则会进入这里处理错误 console.log("请求失败:", error); } ); } // 获取全部列表数据 function getAllList(){ sd.completedCount = 0; var url = "/data?" + searchStr; getSearchList(url) if (q.page === 1) { getLeader("/leader?" + searchStr); //领导 (全部特有的请求 搜'市长'出现) getKnowledge(url);//答问知识库(全部特有的请求) // getPolicy(url);//政策(全部特有的请求) // getInteract(url);//互动(全部特有的请求) // getNews(url);//要闻动态(全部特有的请求) getSpecial("/special?" + searchStr);//专题(全部特有的请求) getService(); //便捷服务快捷入口\事项办理\政务名词 (全部特有的请求) } } // 处理全部列表的回调 如果所有请求都是空, 则页面展示空数据提示 function handleAllResult(result){ sd.resultsArray.push(result); sd.completedCount++; if (sd.completedCount === 9) {//有9个请求 var isAllEmpty = sd.resultsArray.every(function(result){ return result === null || result === undefined || (Array.isArray(result) && result.length === 0) || (typeof result === 'object' && Object.keys(result).length === 0)}); if (isAllEmpty) { $(".m_result").show();//全部为空的时候显示 var html = bt("tpl_empty", { data: q }); $("#item_all ul").html(html); } } } //办事指南 弹窗初始化 function initGuide(){ $(".service-dialog .ish-position").html('宣城市'); $(".service-dialog .ish-bs-area").html(''); $(".service-dialog .ish-bs-list ul").html(''); initList() } //办事服务 弹窗列表数据初始化 function initList(){ $(".service-dialog .ish-fy").html('上一页 下一页'); sd.operateListParam.pageNum = 1; sd.ssqdListParam.pageNum = 1; } //办事指南 弹窗 qjs function getGuide(obj) { initGuide(); $.each(sd.pagedata, function (i, v) { if (v.id === $(obj).data('id')) { sd.guideItem = v; } }); $(".v-modal").fadeIn(); $(".service-dialog").fadeIn(); if ($(".service-dialog").length) { //body隐藏滚动条,避免出现双滚动条 $("body").css("overflow", "hidden"); $(":root").css({ "overflow-y": "hidden" }); } if(sd.guideItem.category === '07'){ sd.ssqdListParam.xzqhCode = sd.AREA_CODE[6].code; sd.ssqdListParam.tmplSsqdCode = sd.guideItem.tmplSsqdCode; sd.xzqhBySjdmParam.sjdm = sd.AREA_CODE[6].code; sd.xzqhBySjdmParam.ssqdName = sd.guideItem.title.replace(/<[^>]*>/g, ""); sd.xzqhBySjdmParam.compDeptCode = sd.guideItem.compDeptCode; sd.xzqhBySjdmParam.tmplSsqdCode = sd.guideItem.tmplSsqdCode; getXzqhBySjdm(); // 区县街道展示 getSsqdList(); //事项列表 } if(sd.guideItem.category === '03'){ sd.operateListParam.contentId = sd.guideItem.id, sd.operateListParam.xzqhCode = sd.AREA_CODE[6].code, sd.xzqhListParam.contentId = sd.guideItem.id, sd.xzqhListParam.xzqhCode = sd.AREA_CODE[6].code, getXzqhList(); // 区县街道展示 getOperateList(); //事项列表 } } //办事服务、服务专栏-获取县区列表(07) function getXzqhBySjdm() { $.ajax({ url: sd.xzqhBySjdmUrl, data: sd.xzqhBySjdmParam, method: "POST", headers: { contentType: "application/json;charset=utf-8", }, error: function () { layer.closeAll();//清除loding layer.msg("请求失败", { icon: 1, time: 2000 }); }, success: function (res) { loadBsfwCity(res); } }); } //办事服务、服务专栏-获取县区列表(03) function getXzqhList() { requestPost(sd.xzqhListUrl, sd.xzqhListParam).then( function (res) { loadBsfwCity(res); }); } //获取[办事指南弹窗]事项列表 function getSsqdList() { requestPost(sd.ssqdListUrl, sd.ssqdListParam).then(function (res) { if (res.msg === "获取可用区划事项列表为空") { $(".ish-fy .next").addClass("disabled"); $(".ish-fy .prev").addClass("disabled"); return; } if (res.status) { var html = ""; var data = res.data.result; if (sd.ssqdListParam.pageNum === 1) { $(".ish-fy .prev").addClass("disabled"); } if (!data || data.length < 5) { $(".ish-fy .next").addClass("disabled"); } $.each(data, function (i, v) { html += '
  • ' + ' 【' + v.ssqdZoneName + "】" + v.ssqdName + " " + '
    ' + '办事指南' + '网上办理' + "
    " + "
  • "; }); $(".service-dialog .ish-bs-list ul").html(html); } }); } //获取[服务专栏弹窗]事项列表 function getOperateList() { requestPost(sd.operateListUrl, sd.operateListParam).then(function (res) { if (res.msg === "获取可用区划事项列表为空") { $(".ish-fy .next").addClass("disabled"); return; } if (res.errMsg === 'success' ) { var html = ""; var data = res.data.list; if (sd.operateListParam.pageNum === 1) { $(".ish-fy .prev").addClass("disabled"); } if (!data || data.length < 5) { $(".ish-fy .next").addClass("disabled"); } $.each(data, function (i, v) { html += '
  • ' + ' 【' + v.xzqhName + "】" + v.operateTitle + " " + "
  • "; }); $(".service-dialog .ish-bs-list ul").html(html); } }); } //获取网上办理的url(如有:跳新页面。如没有:按钮置灰) function getWsblUrl(url){ layer.load(); requestGet(url,{}).then(function (res) { layer.closeAll(); if(res.status){ if(!res.url){ $('.service-dialog .wsbs-item[data-id="'+sd.wsbsId+'"]').attr('disabled', true); return; } $('.service-dialog .wsbs-item[data-id="'+sd.wsbsId+'"]').attr('href',res.url); $('.service-dialog .wsbs-item[data-id="'+sd.wsbsId+'"]').attr('target', '_blank'); $('.service-dialog .wsbs-item[data-id="'+sd.wsbsId+'"]').off('click'); window.open(res.url) }else{ layer.msg('请求失败!',{icon: 2, time: 2000 }) } }); } //办事服务-加载区县列表 function loadBsfwCity(res){ var html = ""; var isExitCity = false; // 如果结果都是isExist == 0 ,并且jb不等于3,就不展示。 $.each(res, function (i, v) { if (v.isExist === "1" || v.jb === '3') { isExitCity = true; } html += "
  • " + '' + v.text + "" + "
  • "; }); if (isExitCity) { $(".service-dialog .ish-bs-area").html(html); } } //办事指南、服务专栏弹窗【导航栏点击事件】 $('body').on("click", ".ish-position .cell", function (envt) { initList();//列表数据初始化 $(this).nextAll().remove(); if(sd.guideItem.category === '07'){//办事指南 sd.ssqdListParam.xzqhCode = $($(this)[0]).data('code'); sd.xzqhBySjdmParam.sjdm = $($(this)[0]).data('code'); getXzqhBySjdm(); getSsqdList(); } if(sd.guideItem.category === '03'){//服务专栏 sd.operateListParam.sjdm = $($(this)[0]).data('code'); sd.xzqhListParam.xzqhCode = $($(this)[0]).data('code'); getXzqhList(); getOperateList(); } }); //办事指南、服务专栏弹窗【县区点击事件】 $('body').on("click",'.service-dialog .ish-bs-area .areaItem:not([disabled])', function (envt) { var that = $(this)[0]; var datasets = $(envt.target).data(); //向导航栏添加或修改 var isExitNav = false; $(".service-dialog .ish-position") .children() .each(function (i, vl) { if ($(vl).data('jb') === $(that).data('jb')) { isExitNav = true; } }); if (isExitNav) { $('.ish-position .cell[data-jb="' + $(that).data('jb') + '"]').text( " > " + that.text ); } else { $(".ish-position").append( ' > ' + that.text + "" ); } initList();//列表数据初始化 if(sd.guideItem.category === '07'){ sd.xzqhBySjdmParam.sjdm = datasets.value; sd.ssqdListParam.xzqhCode = datasets.value; getXzqhBySjdm(); getSsqdList(); } if(sd.guideItem.category === '03'){ sd.operateListParam.sjdm = datasets.value; sd.xzqhListParam.xzqhCode = datasets.value; getXzqhList(); getOperateList(); } }); //办事指南、服务专栏弹窗的【分页点击事件】 $('body').on("click", '.service-dialog .ish-fy span',function (envt) { if (envt.target.className === "prev") { //上一页 $(".ish-fy .next").removeClass("disabled"); if(sd.guideItem.category === '07'){ sd.ssqdListParam.pageNum--; getSsqdList(); } if(sd.guideItem.category === '03'){ sd.operateListParam.pageNum--; getOperateList(); } } if (envt.target.className === "next") { // 下一页 $(".ish-fy .prev").removeClass("disabled"); if(sd.guideItem.category === '07'){ sd.ssqdListParam.pageNum++; getSsqdList(); } if(sd.guideItem.category === '03'){ sd.operateListParam.pageNum++; getOperateList(); } } }); //办事指南弹窗的【网上办理点击事件】 $('body').on('click','.service-dialog .wsbs-item:not([disabled])',function(event){ var datasets = $(event.target).data(); var url = sd.wsblUrl+"?"+"ssqdCode="+datasets.code+"&ssqdId="+datasets.id; sd.wsbsId = datasets.id; getWsblUrl(url); }) var moduleNames = { weibo_content: "微博", wechat_content: "微信", content: "要闻动态", openness_content: "信息公开", openness_column: "公开目录", openness_guide: "公开指南", openness_annual_report: "公开年报", openness_rule: "公开制度", openness_request_dir: "依申请公开目录", openness_request: " 依申请公开", in_feedback: "互动信件", site_leader: "领导之窗", service_content: "政务服务", livelihood: "政务服务", in_live: "在线访谈", in_vote: "网上调查", in_knowledge_base: "答问知识库", in_collect: "意见征集", gazette_content: "政府公报", special: "专题专栏", in_comment: "网上评议", }; var icons = { word: ["doc", "docx", "dot", "dotx", "docm", "dotm", "rtf", "wps"], excel: ["xls", "xlsx", "xlsm", "xltx", "xltm", "xlsb", "xlam"], pdf: ["pdf"], picture: ["jpg", "jpeg", "png", "gif"], audio: ["mp3", "wav", "wma"], video: ["mp4", "flv", "mov", "avi", "wmv"], zip: ["zip", "rar", "7z"], }; var iconBase = "file"; var now = new Date(); // step3 获取搜索结果基础数据 function getDetail(result) { $.each(result["response"]["items"], function (i, item) { /*item['moduleName'] = '' if (item['table_name'] in moduleNames) { item['moduleName'] = moduleNames[item['table_name']] if(item['collection'] === 'policy'){ item['moduleName'] = '政策文件' } }*/ item["policyTypeName"] = item["policy_name"]; item["fileTypeName"] = item["policy_name"]; item["validName"] = item["valid_name"]; if (!item["serial_number"]) { item["serial_number"] = ""; } if (!item["copyFrom"]) { if (item["publisher"]) { item["copyFrom"] = item["publisher"]; } } item["attachListCount"] = 0; if (item["attachList"]) { item["attachListCount"] = item["attachList"].length; $.each(item["attachList"], function (x, file) { $.each(icons, function (icon, iconlist) { if ($.inArray(file["file_type"], iconlist) !== -1) { iconBase = icon; } }); file["icon"] = iconBase; }); } }); doSearchData(result["response"]); } // step4 数据处理 function doSearchData(result) { layer.closeAll(); var searchList = result["items"]; var searchTime = result["totalSeconds"]; var searchPages = result["pagination"]; var dom = "all"; if (result["collection"]) { dom = result["collection"]; } if (result["thumbOn"] == 1) { dom = "picture"; } if (result["videoOn"] == 1) { dom = "video"; } var tpl_dom = dom; if (result["attachOn"] == 1) { dom = "attach"; tpl_dom = "all"; } if ( $.inArray(result["collection"], [ "news", "policy", "service", "openness", "interact", ]) !== -1 ) { tpl_dom = "all"; } // 导航栏 // tabChange("#tab_" + dom); // 列表 $("#item_" + dom).parent().removeClass("f-dn"); $(".fontDefalut").show(); // 列表数据 if (q["collection"] !== "all" && searchList.length < 1) { //如果是全部(collection=null),还要判断getservice是否有返回数据,如果有,还不能显示空 var html = bt("tpl_empty", { data: result }); } else if(q["collection"] === "all" && searchList.length < 1){ //如果全部的时候 列表数据为空 $(".m_result").hide();//搜索结果隐藏 } else { var html = bt("tpl_" + tpl_dom, { data: searchList }); } $("#item_" + dom + " ul").html(html); // 条数、查询时间 $("#search_total").text(searchPages["total"]); totaltime(new Date());//统计请求时长 // $("#search_time").text(searchTime); $("#search_time").text(requestTotalTimer); // 默认 领导活动、办事服务、答问知识库、搜索历史 // if('leader' in result){ // var html=bt("tpl_all_leader",{'data':result['leader']}); // $('#item_all_leader').html(html); // } // if('serviceItems' in result){ // var html=bt("tpl_all_service",{'data':result['serviceItems']}); // $('#item_all_service').html(html); // } // if('inknowledgeItems' in result){ // var html=bt("tpl_all_konwledge",{'data':result['inknowledgeItems']}); // $('#item_all_konwledge').html(html); // } // if('searchHistory' in result){ // var searchHistoryHtml = '' // $.each(result['searchHistory'], function (i, item) { // item = $.trim(item) // searchHistoryHtml += '
  • '+item+'
  • '; // }); // $('#searchHistory').html(searchHistoryHtml); // } // 分页 $("#pagination").html( '' ); $("body").append( '' ); } function getLeader(url) { var apiUrl = searchUri + url; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { if (res.status === true) { handleAllResult(res.response.items); if (res.response.items.length > 0) { var html = bt("tpl_all_leader", { data: res["response"]["items"] }); $("#item_all_leader").html(html); totaltime(new Date()); } } }, }); } // 获取政务名词的全部信息 function getService() { handleData(); //数据重新初始化 var queryfn = []; if(siteType(q.siteId) === 0 || siteType(q.siteId) === 1){ sd.serverParam.currentPageNo = q["page"]; sd.serverParam.context = q["keyword"]; sd.serverParam.areacode = sd.AREA_CODE[6].code; sd.serverParam.siteId = q.siteId; sd.serverParam.isErrWord = q.isErrWord;//是否是错词 sd.serverParam.isPinyin = q.isPinyin;//是否是拼音 queryfn.push(requestPost(sd.serverUrl, sd.serverParam)); var wstbmfwParam = { searchStr: q["keyword"], xzqhCode: sd.AREA_CODE[6].code, isPinyin: q["isPinyin"], isErrWord: q["isErrWord"] }; queryfn.push(requestGet(sd.wstbmfwURL, wstbmfwParam));// 便民服务快捷入口 }else{ sd.deptParam.siteId = q.siteId; sd.deptParam.ssqdName = q.keyword; sd.deptParam.isErrWord = q.isErrWord;//是否是错词 sd.deptParam.isPinyin = q.isPinyin;//是否是拼音 queryfn.push(requestPost(sd.deptUrl, sd.deptParam)); // 服务列表数据[地市县区] } IPromiseAll(queryfn).then(function (results) { layer.closeAll();//清除loding // results是一个数组,包含了每个成功请求的响应数据 var res1 = results[0]; var res2 = results[1]; var response2 = {rows:[]} var rows = []; var sitety = 1; if(siteType(q.siteId) === 0 || siteType(q.siteId) === 1){ var response1 = JSON.parse(res1.data.searchResult); rows = response1.data.result if(res2){ response2 = JSON.parse(res2.data); } }else{ sitety = 2; if(Array.isArray(res1.data)){ rows = res1.data; }else{ rows = res1.data.rows; } } //处理的参数 var data = { result: rows, sitety: sitety, wstbmfw: response2.rows, }; // console.log(data) //结果交由handleAllResult 去判断是否为空 handleAllResult(data.result); handleAllResult(data.wstbmfw); sd.pagedata = rows; // console.log("服务请求数据:", data); var html = bt("tpl_service08", { data: data }); $("#item_all_service").html(html); //便民服务快捷入口 弹窗 $(".item-consev a").click(function (e) { event.returnValue = false; $(".v-modal").fadeIn(); $(".wstbmfw-dialog").fadeIn(); if ($(".wstbmfw-dialog").length) { //body隐藏滚动条,避免出现双滚动条 $("body").css("overflow", "hidden"); $(":root").css({ "overflow-y": "hidden" }); } $("#qrcode").html(""); var id = $(e.target).data('id'); var url = "https://www.ahzwfw.gov.cn/wst-ds/middlepage/general/#/middlePage?params=" + encodeURIComponent('{"serviceId":"' + id + '"}'); var qrcode = new QRCode(document.getElementById("qrcode"), { width: 160, height: 160, }); qrcode.makeCode(url); }); //事项办理点击事件 $(".bsfw-title07").click(function (e) { event.returnValue = false; getGuide(e.target); }); totaltime(new Date());//统计请求时长 }); } /** * 知识库 * @param {} url */ function getKnowledge(url) { var apiUrl = searchUri + url + "&tableName=in_knowledge_base"; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { handleAllResult(res.response.items); if (res.response.items.length > 0) { var html = bt("tpl_all_konwledge", { data: res["response"]["items"] }); $("#item_all_konwledge").html(html); totaltime(new Date());//统计请求时长 } }, }); } /** * 全部-政策 * @param {} url */ function getPolicy(url) { var apiUrl = searchUri + url + "&collection=policy"; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { handleAllResult(res.response.items); if (res.response.items.length > 0) { var html = bt("tpl_all_policy", { data: res["response"]["items"] }); $("#item_all_policy").html(html); totaltime(new Date());//统计请求时长 } }, }); } /** * 全部-互动 * @param {} url */ function getInteract(url) { var apiUrl = searchUri + url + "&collection=interact"; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { handleAllResult(res.response.items); if (res.response.items.length > 0) { var html = bt("tpl_all_interact", { data: res["response"]["items"] }); $("#item_all_interact").html(html); totaltime(new Date());//统计请求时长 } }, }); } /** * 全部-要闻 * @param {} url */ function getNews(url) { var apiUrl = searchUri + url + "&collection=news"; $("#item_all_news").html(''); $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { handleAllResult(res.response.items); if (res.response.items.length > 0) { var html = bt("tpl_all_news", { data: res["response"]["items"] }); $("#item_all_news").html(html); totaltime(new Date());//统计请求时长 } }, }); } /** * 专题 * @param {*} url */ function getSpecial(url) { var apiUrl = searchUri + url; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { if (res.status === true) { handleAllResult(res.response.items); if (res.response.items.length > 0) { var html = bt("tpl_all_special", { data: res["response"]["items"] }); $("#item_all_special").html(html); totaltime(new Date());//统计请求时长 } } }, }); } //智能推荐 function getIntellectList(url) { var apiUrl = searchUri + url + "&tableName=in_knowledge_base"; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { var html = ""; if (res.status == true) { $.each(res.data, function (i, item) { html += '
  • ' + item["title"] + "
  • "; }); } $("#recommend_list1").html(html); if (html) { $("#recommend_list1").removeClass("f-dn"); $("#recommend_list2").addClass("f-dn"); } else { $("#recommend_list2").removeClass("f-dn"); $("#recommend_list1").addClass("f-dn"); } }, }); } //热点信息 function getHotList() { var apiUrl = govUri + "/v1/Search/getHotList?pageSize=9"; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { var html = ""; if (res.status == true) { $.each(res.data, function (i, item) { html += '
  • ' + item["title"] + "
  • "; }); } $("#right_hotList").html(html); }, }); } //微信 function getMediaList() { var apiUrl = govUri + "/v1/Search/getMediaList?pageSize=3"; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { var html = ""; if (res.status == true) { $.each(res.data, function (i, item) { html += '
  • ' + item["title"] + "
  • "; }); } $("#right_media").html(html); }, }); } //最新政策 function getPolicyList() { var apiUrl = govUri + "/v1/Search/getPolicyList?pageSize=3"; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { var html = ""; if (res.status == true) { $.each(res.data, function (i, item) { html += '
  • ' + item["title"] + "
  • "; }); } $("#right_policy").html(html); }, }); } //要闻动态 function getNewsList() { var apiUrl = govUri + "/v1/Search/getNewsList?pageSize=3"; $.ajax({ url: apiUrl, method: "GET", error: function () {}, success: function (res) { var html = ""; if (res.status == true) { $.each(res.data, function (i, item) { html += '
  • ' + item["title"] + "
  • "; }); } $("#right_news").html(html); }, }); } // 分页 $(document).on("click", "#pagination ul li a", function () { var currentpage = $(this).attr("data-page"); doSearchFilter("page=" + currentpage); }); //检索 $("#searchForm").submit(function () { var keyword = $(".u-tpsearchtext").val(); toSearchByWord(keyword); }); // 跳转检索 function toSearchByWord(keyword) { keyword = htmlspecialchars(keyword); var q = strToList(searchStr); var nq = { keyword: keyword }; var newSearchStr = $.param(nq); var newSearchUrl = "/Search?" + newSearchStr; window.location = newSearchUrl; return false; } //二次检索 $("#subForm").submit(function () { var subKeywords = $("#subKeywords").val(); subKeywords = htmlspecialchars(subKeywords); var keyword = $(".u-tpsearchtext").val(); keyword = htmlspecialchars(keyword); if (!keyword) { layer.msg("请输入搜索关键字"); $(".u-tpsearchtext").focus(); return false; } doSearchFilter( "newKeyword=" + subKeywords + "&originalKey=" + subKeywords + "&inResults=1" ); return false; }); // 办理层级选择 $(".u_storey").click(function () { var qList = strToList(searchStr); var levelList = []; if (qList.service_content_type_id) { levelList = decodeURIComponent(qList.service_content_type_id).split(","); } var level = $(this).attr("data-value"); if ($.inArray(level, levelList) !== -1) { levelList = $.grep(levelList, function (value) { return value != level; }); } else { levelList.push(level); } var serviceLevel = levelList.join(","); doSearchFilter("service_content_type_id=" + serviceLevel); }); function strToList(str) { var q = {}; var version = IEVersion(); if (version > 8 || version < 0) { str.split("&").forEach(function (i) { if (i != "") { q[i.split("=")[0]] = i.split("=")[1]; } }); } else { for (var i = 0; i < str.split("&").length; i++) { if (str.split("&")[i] != "") { q[str.split("&")[i].split("=")[0]] = str.split("&")[i].split("=")[1]; } } } return q; } function IEVersion() { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器 var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器 var isIE11 = userAgent.indexOf("Trident") > -1 && userAgent.indexOf("rv:11.0") > -1; if (isIE) { var reIE = new RegExp("MSIE (\\d+\\.\\d+);"); reIE.test(userAgent); var fIEVersion = parseFloat(RegExp["$1"]); if (fIEVersion == 7) { return 7; } else if (fIEVersion == 8) { return 8; } else if (fIEVersion == 9) { return 9; } else if (fIEVersion == 10) { return 10; } else { return 6; //IE版本<=7 } } else if (isEdge) { return "edge"; //edge } else if (isIE11) { return 11; //IE11 } else { return -1; //不是ie浏览器 } } /* function htmlspecialchars(str){ var reg = /\~|\!|\!|\@|\#|\$|\^|\¥|\%|\…|\&|\*|\(|\)|\—|\+|\{|\}|\“|\”|\《|\》|\?|\?|\<|\>|\'|\"/g; str = str.replace(reg, ""); str = str.replace(/&/g, '&'); str = str.replace(//g, '>'); str = str.replace(/"/g, '"'); str = str.replace(/'/g, '''); return str; } */ function htmlspecialchars(str) { var reg = /\!|\@|\#|\$|\^|\¥|\%|\…|\*|\(|\)|\+|\{|\}|\?|\'|\"/g; str = str.replace(reg, ""); str = $.trim(str); return str; } $("#search_log_satisfied").click(function () { var searchIdVal = $("#searchId").val(); var dataObj = { rating: 1, dup_id: searchIdVal, }; toRating(dataObj); }); $("#search_log_box button").click(function () { var searchIdVal = $("#searchId").val(); var dataObj = { rating: 2, dup_id: searchIdVal, }; if ($.trim($("#search_log_content").val()) == "") { layer.open({ title: "温馨提示", content: '

    请输入不满意的原因!

    ', yes: function (index) { $("#search_log_content").val(""); layer.closeAll(index); }, }); return false; } else { dataObj.rating_content = $("#search_log_content").val(); } toRating(dataObj); }); function toRating(dataObj) { $.ajax({ url: "/Search/Rating", method: "post", data: dataObj, success: function (res) { if (res.status) { $("#search_log_content").val(""); $(".m_evaluate").remove(); layer.msg("感谢您,您的评价会让我们做得更好", { icon: 1, time: 2000 }); setTimeout(function () { $("#search_log_box").addClass("hide"); }, 2000); } else { layer.msg("提交失败", { icon: 2, time: 2000 }); } }, }); } function cleanHistory(key, isAll) { $.getJSON( "/Search/cleanHistory?keyword=" + key + "&isAll=" + isAll, function (data) { if (data) { layer.msg("清除成功", { icon: 1, time: 2000 }); var history = ""; $("#searchHistory").html(history); } } ); } //办事服务-服务对象 $("body").on("click", ".g-vl", function () { if ($(".g-service ul")[0].className.indexOf("f-dn") !== -1) { $(".g-service ul").removeClass("f-dn"); } else { $(".g-service ul").addClass("f-dn"); } }); //办事服务-服务对象下拉选点击事件 $("body").on("click", ".g-service .item_sel a", function (event) { sd.serverParam.serviceObject = $(event.target).data('value'); $(".g-vl").text(event.target.text); $(".g-service ul").addClass("f-dn"); getServerList(q); }); //办事服务-办理层级选择事件 $("body").on("click", ".m-storey .u-storey", function (event) { if ($(this)[0].className.indexOf("active") !== -1) { $(this)[0].className = "u-storey"; } else { $(this)[0].className = "u-storey active"; } var topClass = []; $(".m-storey .u-storey.active").each(function (i, v) { topClass.push($(v).data('val')); }); sd.serverParam.topClass = topClass.join(","); getServerList(q); }); /** * 站点类型:0: * siteid:0 市级平台; siteId:1 本站; siteId: [2~9] 区县平台; siteId [27~99] 市值单位 */ function siteType(siteId){ siteId = Number.parseInt(siteId); if(!siteId || siteId === 0){ return 0;//市级平台 }else if(siteId === 1){ return 1;//本站 }else if(2 <= siteId && siteId <= 9){ return 3;//区县平台 }else{ return 2;//市值单位 } } /** * 判断数组为空 */ function isArrayEmpty(arr) { return Array.isArray(arr) && arr.length === 0; } /** * 统计时长 */ function totaltime(requestEndTime){ var longTimeS = (requestEndTime.getTime() - requestStartTime.getTime()) / 1000; if(longTimeS > requestTotalTimer){ requestTotalTimer = longTimeS; requestTotalTimer = requestTotalTimer.toFixed(2); } } /** * 封装post请求 */ function requestPost(url,param){ return new IPromise(function(resolve, reject){ $.ajax({ url: url, data: param, method: "POST", headers: { contentType: "application/json;charset=utf-8", }, success: function(data){ resolve(data) }, error: function (error) { reject(error) layer.closeAll();//清除loding layer.msg("请求失败", { icon: 1, time: 2000 }); }, }); }) } /** * 封装get请求 */ function requestGet(url,param){ var targetData = {}; Object.entries(param).forEach(function(item){ targetData[item[0]] = item[1]? decodeURIComponent(item[1]) : item[1]; }) var paramData = $.param(targetData); if(Object.getOwnPropertyNames(targetData).length !== 0){ url = url + "?" + paramData } return new IPromise(function(resolve, reject){ $.ajax({ url: url, data: param, method: "GET", headers: { contentType: "application/json;charset=utf-8", }, success: function(data){ resolve(data) }, error: function (error) { reject(error) layer.closeAll();//清除loding layer.msg("请求失败", { icon: 1, time: 2000 }); }, }); }) }