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 });
},
});
})
}