交接前的修改与注释
This commit is contained in:
parent
2775c0789d
commit
eb3e4d4635
6
.idea/ApipostSplitterTypeStorage.xml
generated
6
.idea/ApipostSplitterTypeStorage.xml
generated
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ApipostSplitterTypeStorage">
|
||||
<option name="splitterType" value="false" />
|
||||
</component>
|
||||
</project>
|
@ -1,29 +1,738 @@
|
||||
CSW
|
||||
JNW
|
||||
KYW
|
||||
BKW
|
||||
MDW
|
||||
SXW
|
||||
SMW
|
||||
SMW2
|
||||
TMW
|
||||
YMW
|
||||
YBW
|
||||
YCW
|
||||
ZDW
|
||||
BLL
|
||||
BXL
|
||||
DBC
|
||||
DDW
|
||||
DCLL
|
||||
DSP
|
||||
JAL
|
||||
JBL
|
||||
JJYLL
|
||||
JXL
|
||||
LG
|
||||
LCL
|
||||
MLLL
|
||||
SCL
|
||||
SCL2
|
||||
SALL
|
||||
[
|
||||
{
|
||||
"QX": [
|
||||
{
|
||||
"id": 1,
|
||||
"name": "基础信息管理",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 101,
|
||||
"url": "app.YBLB",
|
||||
"isshow": true,
|
||||
"name": "样品类别管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 102,
|
||||
"url": "app.JCXM",
|
||||
"isshow": true,
|
||||
"name": "检测项目管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 103,
|
||||
"url": "app.JCXMNEW",
|
||||
"isshow": true,
|
||||
"name": "新检测项目管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 104,
|
||||
"url": "app.JCBZ",
|
||||
"isshow": true,
|
||||
"name": "检测标准管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 105,
|
||||
"url": "app.PJBZ",
|
||||
"isshow": true,
|
||||
"name": "评价标准管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 106,
|
||||
"url": "app.JLDW",
|
||||
"isshow": true,
|
||||
"name": "计量单位管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 107,
|
||||
"url": "app.DWHS",
|
||||
"isshow": true,
|
||||
"name": "单位换算管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 108,
|
||||
"url": "app.CYDD",
|
||||
"isshow": false,
|
||||
"name": "采样地点管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 109,
|
||||
"url": "app.JZJG",
|
||||
"isshow": true,
|
||||
"name": "检测机构管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 110,
|
||||
"url": "app.XFLDB",
|
||||
"isshow": true,
|
||||
"name": "消费量数据管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 111,
|
||||
"url": "app.JKZDZ",
|
||||
"isshow": true,
|
||||
"name": "健康指导值管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 112,
|
||||
"url": "app.XLZ",
|
||||
"isshow": true,
|
||||
"name": "限量值基础库"
|
||||
},
|
||||
{
|
||||
"name": "人口数量统计",
|
||||
"isshow": true,
|
||||
"url": "app.RenKouManage",
|
||||
"cid": 113,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "食品生产经营许可",
|
||||
"isshow": true,
|
||||
"url": "app.ShiPinShengChanJingYingXuKe",
|
||||
"cid": 114,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "样品信息分类库",
|
||||
"isshow": true,
|
||||
"url": "app.YangPinXinXiFenLeiKu",
|
||||
"cid": 115,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "投诉举报基础库",
|
||||
"isshow": true,
|
||||
"url": "app.TSJB",
|
||||
"cid": 116,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "信息追溯基础库",
|
||||
"isshow": true,
|
||||
"url": "app.XXZS",
|
||||
"cid": 117,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "样品农药残留信息",
|
||||
"isshow": true,
|
||||
"url": "app.YPXXNYCL",
|
||||
"cid": 118,
|
||||
"floor": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"name": "计划任务管理",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 201,
|
||||
"url": "app.PlanCustomize",
|
||||
"isshow": true,
|
||||
"name": "计划任务定制"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 202,
|
||||
"url": "app.PlanControl",
|
||||
"isshow": true,
|
||||
"name": "计划任务监控"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 203,
|
||||
"url": "app.PlanCheck({id:0})",
|
||||
"isshow": true,
|
||||
"name": "计划任务查看"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"name": "检测任务管理",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 301,
|
||||
"url": "app.SampleRegister({id:0})",
|
||||
"isshow": true,
|
||||
"name": "样品登记管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 302,
|
||||
"url": "app.SampleControl",
|
||||
"isshow": true,
|
||||
"name": "样品检验管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 303,
|
||||
"url": "app.SampleAutio",
|
||||
"isshow": true,
|
||||
"name": "样品审核管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 304,
|
||||
"url": "app.SampleApprove",
|
||||
"isshow": true,
|
||||
"name": "样品批准管理"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"name": "综合查询",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 401,
|
||||
"url": "app.CustomQuery",
|
||||
"isshow": false,
|
||||
"name": "MGO查询"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 402,
|
||||
"url": "app.CustomQuery2",
|
||||
"isshow": true,
|
||||
"name": "SQL查询"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 403,
|
||||
"url": "app.HLZH",
|
||||
"isshow": true,
|
||||
"name": "行列转换"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 404,
|
||||
"url": "app.SHDT",
|
||||
"isshow": false,
|
||||
"name": "上海地图"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 405,
|
||||
"url": "app.QGDT",
|
||||
"isshow": false,
|
||||
"name": "全国地图"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 406,
|
||||
"url": "app.QQDT",
|
||||
"isshow": false,
|
||||
"name": "全球地图"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 407,
|
||||
"url": "app.QGDT_YPCD",
|
||||
"isshow": false,
|
||||
"name": "全国地图-样品产地"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 408,
|
||||
"url": "app.SHDT_YPCD",
|
||||
"isshow": false,
|
||||
"name": "上海地图-样品产地"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 409,
|
||||
"url": "app.OperateLog",
|
||||
"isshow": true,
|
||||
"name": "操作日志"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 410,
|
||||
"url": "app.BackLog",
|
||||
"isshow": false,
|
||||
"name": "备份记录"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 411,
|
||||
"url": "app.CJHuiLuoNew",
|
||||
"isshow": false,
|
||||
"name": "抽检监测数据回落库"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"name": "统计分析",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 501,
|
||||
"url": "app.Sample",
|
||||
"isshow": false,
|
||||
"name": "不合格率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 502,
|
||||
"url": "app.JYXM",
|
||||
"isshow": false,
|
||||
"name": "检验项目统计分析"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 503,
|
||||
"url": "app.Overproof",
|
||||
"isshow": true,
|
||||
"name": "居民覆盖率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 504,
|
||||
"url": "app.TongJiHeGeLv",
|
||||
"isshow": true,
|
||||
"name": "统计合格率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 505,
|
||||
"url": "app.ZhuTiFuGaiLv",
|
||||
"isshow": true,
|
||||
"name": "主体覆盖率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 506,
|
||||
"url": "app.Problem",
|
||||
"isshow": true,
|
||||
"name": "问题率分析"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 507,
|
||||
"url": "app.Qualified",
|
||||
"isshow": true,
|
||||
"name": "合格率分析"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 508,
|
||||
"url": "app.TouSuJuBao",
|
||||
"isshow": true,
|
||||
"name": "投诉举报率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 509,
|
||||
"url": "app.ZhiFaJianCha",
|
||||
"isshow": true,
|
||||
"name": "执法检查率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 510,
|
||||
"url": "app.XinXiZhuiSuLv",
|
||||
"isshow": true,
|
||||
"name": "信息追溯率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 511,
|
||||
"url": "app.ChouChaKaohe",
|
||||
"isshow": true,
|
||||
"name": "抽查考核率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 512,
|
||||
"url": "app.XingZhengChuFa",
|
||||
"isshow": true,
|
||||
"name": "行政处罚率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 513,
|
||||
"url": "app.MXYZ",
|
||||
"isshow": false,
|
||||
"name": "数据验证"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"name": "风险评估",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 601,
|
||||
"url": "app.pingGuPesticide",
|
||||
"isshow": true,
|
||||
"name": "农药MEP评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 602,
|
||||
"url": "app.JianCeXiangMu4",
|
||||
"isshow": true,
|
||||
"name": "大类评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 603,
|
||||
"url": "app.JianCeXiangMu3",
|
||||
"isshow": true,
|
||||
"name": "亚类评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 604,
|
||||
"url": "app.JianCeXiangMu2",
|
||||
"isshow": true,
|
||||
"name": "品种评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 605,
|
||||
"url": "app.JianCeXiangMu",
|
||||
"isshow": true,
|
||||
"name": "细类评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 606,
|
||||
"url": "app.FengXianPingGu",
|
||||
"isshow": false,
|
||||
"name": "评估(2018)"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 607,
|
||||
"url": "app.chinaRiskAssessmentMap",
|
||||
"isshow": false,
|
||||
"name": "中国风险评估展示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 608,
|
||||
"url": "app.shanghaiRiskAssessmentMap",
|
||||
"isshow": false,
|
||||
"name": "上海风险评估展示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 609,
|
||||
"url": "app.nianfenzhanshi",
|
||||
"isshow": false,
|
||||
"name": "年份风险评估展示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 610,
|
||||
"url": "app.ShiPinLeiBiePingGuZhanShi",
|
||||
"isshow": false,
|
||||
"name": "食品类别评估展示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 611,
|
||||
"url": "app.ShiPinFengXianMapZhanShi",
|
||||
"isshow": false,
|
||||
"name": "风险评估地图展示(上海)"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 612,
|
||||
"url": "app.ShiPinFengXianMap_QuanGuoZhanShi",
|
||||
"isshow": false,
|
||||
"name": "风险评估地图展示(全国)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"name": "风险预警",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 701,
|
||||
"url": "app.zhinengYujing",
|
||||
"isshow": true,
|
||||
"name": "指数智能预警"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 702,
|
||||
"url": "app.JiedaoHegelv",
|
||||
"isshow": true,
|
||||
"name": "街道合格率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 703,
|
||||
"url": "app.dataBuhegelv",
|
||||
"isshow": true,
|
||||
"name": "首页预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"cid": 44,
|
||||
"url": "app.Buhegelv",
|
||||
"isshow": true,
|
||||
"name": "首次不合格预警"
|
||||
}
|
||||
],
|
||||
"cid": 704,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "首发预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"cid": 45,
|
||||
"url": "app.Buhegelv2",
|
||||
"isshow": true,
|
||||
"name": "不合格率上升预警"
|
||||
},
|
||||
{
|
||||
"cid": 48,
|
||||
"url": "app.Buhegelv4",
|
||||
"isshow": true,
|
||||
"name": "被抽样单位多件不合格预警"
|
||||
},
|
||||
{
|
||||
"cid": 57,
|
||||
"url": "app.Buhegelv7",
|
||||
"isshow": true,
|
||||
"name": "被抽样单位多次不合格预警"
|
||||
},
|
||||
{
|
||||
"cid": 50,
|
||||
"url": "app.Buhegelv6",
|
||||
"isshow": true,
|
||||
"name": "生产企业多件不合格预警"
|
||||
}
|
||||
],
|
||||
"cid": 705,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "频发预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"cid": 46,
|
||||
"url": "app.Buhegelv3",
|
||||
"isshow": true,
|
||||
"name": "不合格率偏高预警"
|
||||
},
|
||||
{
|
||||
"cid": 52,
|
||||
"url": "app.Buhegelv8",
|
||||
"isshow": true,
|
||||
"name": "产地省份不合格率预警"
|
||||
},
|
||||
{
|
||||
"cid": 53,
|
||||
"url": "app.Buhegelv9",
|
||||
"isshow": true,
|
||||
"name": "进口食品不合格率预警"
|
||||
},
|
||||
{
|
||||
"cid": 51,
|
||||
"url": "app.Buhegelv12",
|
||||
"isshow": true,
|
||||
"name": "网络平台不合格率预警"
|
||||
}
|
||||
],
|
||||
"cid": 706,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "高发预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"cid": 49,
|
||||
"url": "app.Buhegelv5",
|
||||
"isshow": true,
|
||||
"name": "检测值异常预警"
|
||||
}
|
||||
],
|
||||
"cid": 707,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "污染预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 55,
|
||||
"url": "app.Buhegelv11",
|
||||
"isshow": true,
|
||||
"name": "污染物总膳食暴露量预警"
|
||||
}
|
||||
],
|
||||
"cid": 708,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "风险评估预警"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"name": "食品安全综合指数",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 509,
|
||||
"url": "app.DaPingYanShi",
|
||||
"isshow": true,
|
||||
"name": "大屏演示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 509,
|
||||
"url": "app.StreetDaPingYanShi",
|
||||
"isshow": true,
|
||||
"name": "街道大屏演示"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"name": "智能化数据",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 901,
|
||||
"url": "app.ShuJuZhuanHuan",
|
||||
"isshow": false,
|
||||
"name": "数据转换工具"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 902,
|
||||
"url": "app.ZhiNengTuiJian",
|
||||
"isshow": false,
|
||||
"name": "智能化数据管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 903,
|
||||
"url": "app.ZhiNengTuiJianCeLue",
|
||||
"isshow": false,
|
||||
"name": "智能化数据策略"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"name": "风险安全隐患",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 1001,
|
||||
"url": "app.YinHuanBuhegelv",
|
||||
"isshow": false,
|
||||
"name": "首次不合格"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 1002,
|
||||
"url": "app.YinHuanBuhegelv3",
|
||||
"isshow": false,
|
||||
"name": "不合格率"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 20,
|
||||
"name": "用户管理",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 2001,
|
||||
"url": "app.user",
|
||||
"isshow": true,
|
||||
"name": "用户管理"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"Sel": [
|
||||
101,
|
||||
102,
|
||||
103,
|
||||
104,
|
||||
105,
|
||||
106,
|
||||
107,
|
||||
108,
|
||||
109,
|
||||
110,
|
||||
111,
|
||||
112,
|
||||
113,
|
||||
114,
|
||||
115,
|
||||
116,
|
||||
117,
|
||||
118,
|
||||
201,
|
||||
202,
|
||||
203,
|
||||
301,
|
||||
302,
|
||||
303,
|
||||
304,
|
||||
402,
|
||||
403,
|
||||
409,
|
||||
503,
|
||||
504,
|
||||
505,
|
||||
506,
|
||||
507,
|
||||
508,
|
||||
509,
|
||||
510,
|
||||
511,
|
||||
512,
|
||||
601,
|
||||
602,
|
||||
603,
|
||||
604,
|
||||
605,
|
||||
701,
|
||||
702,
|
||||
703,
|
||||
704,
|
||||
705,
|
||||
706,
|
||||
707,
|
||||
708,
|
||||
801,
|
||||
2001
|
||||
]
|
||||
}
|
||||
]
|
||||
|
@ -1,32 +1,746 @@
|
||||
残杀威
|
||||
甲萘威
|
||||
抗蚜威
|
||||
克百威
|
||||
灭多威
|
||||
杀线威
|
||||
霜霉威
|
||||
速灭威
|
||||
涕灭威
|
||||
乙霉威
|
||||
异丙威
|
||||
茚虫威
|
||||
仲丁威
|
||||
倍硫磷
|
||||
丙溴磷
|
||||
敌百虫
|
||||
敌敌畏
|
||||
地虫硫磷
|
||||
毒死蜱
|
||||
甲胺磷
|
||||
甲拌磷
|
||||
甲基异柳磷
|
||||
久效磷
|
||||
乐果
|
||||
氯唑磷
|
||||
马拉硫磷
|
||||
噻唑磷
|
||||
三唑磷
|
||||
水胺硫磷
|
||||
|
||||
|
||||
|
||||
[
|
||||
{
|
||||
"QX": [
|
||||
{
|
||||
"id": 1,
|
||||
"name": "基础信息管理",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 101,
|
||||
"url": "app.YBLB",
|
||||
"isshow": true,
|
||||
"name": "样品类别管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 102,
|
||||
"url": "app.JCXM",
|
||||
"isshow": true,
|
||||
"name": "检测项目管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 103,
|
||||
"url": "app.JCXMNEW",
|
||||
"isshow": true,
|
||||
"name": "新检测项目管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 104,
|
||||
"url": "app.JCBZ",
|
||||
"isshow": true,
|
||||
"name": "检测标准管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 105,
|
||||
"url": "app.PJBZ",
|
||||
"isshow": true,
|
||||
"name": "评价标准管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 106,
|
||||
"url": "app.JLDW",
|
||||
"isshow": true,
|
||||
"name": "计量单位管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 107,
|
||||
"url": "app.DWHS",
|
||||
"isshow": true,
|
||||
"name": "单位换算管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 108,
|
||||
"url": "app.CYDD",
|
||||
"isshow": false,
|
||||
"name": "采样地点管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 109,
|
||||
"url": "app.JZJG",
|
||||
"isshow": true,
|
||||
"name": "检测机构管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 110,
|
||||
"url": "app.XFLDB",
|
||||
"isshow": true,
|
||||
"name": "消费量数据管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 111,
|
||||
"url": "app.JKZDZ",
|
||||
"isshow": true,
|
||||
"name": "健康指导值管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 112,
|
||||
"url": "app.XLZ",
|
||||
"isshow": true,
|
||||
"name": "限量值基础库"
|
||||
},
|
||||
{
|
||||
"name": "人口数量统计",
|
||||
"isshow": true,
|
||||
"url": "app.RenKouManage",
|
||||
"cid": 113,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "食品生产经营许可",
|
||||
"isshow": true,
|
||||
"url": "app.ShiPinShengChanJingYingXuKe",
|
||||
"cid": 114,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "样品信息分类库",
|
||||
"isshow": true,
|
||||
"url": "app.YangPinXinXiFenLeiKu",
|
||||
"cid": 115,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "投诉举报基础库",
|
||||
"isshow": true,
|
||||
"url": "app.TSJB",
|
||||
"cid": 116,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "信息追溯基础库",
|
||||
"isshow": true,
|
||||
"url": "app.XXZS",
|
||||
"cid": 117,
|
||||
"floor": []
|
||||
},
|
||||
{
|
||||
"name": "样品农药残留信息",
|
||||
"isshow": true,
|
||||
"url": "app.YPXXNYCL",
|
||||
"cid": 118,
|
||||
"floor": []
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"name": "计划任务管理",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 201,
|
||||
"url": "app.PlanCustomize",
|
||||
"isshow": true,
|
||||
"name": "计划任务定制"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 202,
|
||||
"url": "app.PlanControl",
|
||||
"isshow": true,
|
||||
"name": "计划任务监控"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 203,
|
||||
"url": "app.PlanCheck({id:0})",
|
||||
"isshow": true,
|
||||
"name": "计划任务查看"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"name": "检测任务管理",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 301,
|
||||
"url": "app.SampleRegister({id:0})",
|
||||
"isshow": true,
|
||||
"name": "样品登记管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 302,
|
||||
"url": "app.SampleControl",
|
||||
"isshow": true,
|
||||
"name": "样品检验管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 303,
|
||||
"url": "app.SampleAutio",
|
||||
"isshow": true,
|
||||
"name": "样品审核管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 304,
|
||||
"url": "app.SampleApprove",
|
||||
"isshow": true,
|
||||
"name": "样品批准管理"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"name": "综合查询",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 401,
|
||||
"url": "app.CustomQuery",
|
||||
"isshow": false,
|
||||
"name": "MGO查询"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 402,
|
||||
"url": "app.CustomQuery2",
|
||||
"isshow": true,
|
||||
"name": "SQL查询"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 403,
|
||||
"url": "app.HLZH",
|
||||
"isshow": false,
|
||||
"name": "行列转换"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 404,
|
||||
"url": "app.SHDT",
|
||||
"isshow": false,
|
||||
"name": "上海地图"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 405,
|
||||
"url": "app.QGDT",
|
||||
"isshow": false,
|
||||
"name": "全国地图"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 406,
|
||||
"url": "app.QQDT",
|
||||
"isshow": false,
|
||||
"name": "全球地图"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 407,
|
||||
"url": "app.QGDT_YPCD",
|
||||
"isshow": false,
|
||||
"name": "全国地图-样品产地"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 408,
|
||||
"url": "app.SHDT_YPCD",
|
||||
"isshow": false,
|
||||
"name": "上海地图-样品产地"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 409,
|
||||
"url": "app.OperateLog",
|
||||
"isshow": true,
|
||||
"name": "操作日志"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 410,
|
||||
"url": "app.BackLog",
|
||||
"isshow": false,
|
||||
"name": "备份记录"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 411,
|
||||
"url": "app.CJHuiLuoNew",
|
||||
"isshow": false,
|
||||
"name": "抽检监测数据回落库"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"name": "统计分析",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 501,
|
||||
"url": "app.Sample",
|
||||
"isshow": false,
|
||||
"name": "不合格率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 502,
|
||||
"url": "app.JYXM",
|
||||
"isshow": false,
|
||||
"name": "检验项目统计分析"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 503,
|
||||
"url": "app.Overproof",
|
||||
"isshow": true,
|
||||
"name": "居民覆盖率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 504,
|
||||
"url": "app.TongJiHeGeLv",
|
||||
"isshow": true,
|
||||
"name": "统计合格率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 505,
|
||||
"url": "app.ZhuTiFuGaiLv",
|
||||
"isshow": true,
|
||||
"name": "主体覆盖率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 506,
|
||||
"url": "app.Problem",
|
||||
"isshow": true,
|
||||
"name": "问题率分析"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 507,
|
||||
"url": "app.Qualified",
|
||||
"isshow": true,
|
||||
"name": "合格率分析"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 508,
|
||||
"url": "app.TouSuJuBao",
|
||||
"isshow": true,
|
||||
"name": "投诉举报率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 509,
|
||||
"url": "app.ZhiFaJianCha",
|
||||
"isshow": true,
|
||||
"name": "执法检查率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 510,
|
||||
"url": "app.XinXiZhuiSuLv",
|
||||
"isshow": true,
|
||||
"name": "信息追溯率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 511,
|
||||
"url": "app.ChouChaKaohe",
|
||||
"isshow": true,
|
||||
"name": "抽查考核率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 512,
|
||||
"url": "app.XingZhengChuFa",
|
||||
"isshow": true,
|
||||
"name": "行政处罚率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 513,
|
||||
"url": "app.MXYZ",
|
||||
"isshow": false,
|
||||
"name": "数据验证"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"name": "风险评估",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 601,
|
||||
"url": "app.pingGuPesticide",
|
||||
"isshow": true,
|
||||
"name": "农药MEP评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 602,
|
||||
"url": "app.JianCeXiangMu4",
|
||||
"isshow": true,
|
||||
"name": "大类评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 603,
|
||||
"url": "app.JianCeXiangMu3",
|
||||
"isshow": true,
|
||||
"name": "亚类评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 604,
|
||||
"url": "app.JianCeXiangMu2",
|
||||
"isshow": true,
|
||||
"name": "品种评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 605,
|
||||
"url": "app.JianCeXiangMu",
|
||||
"isshow": true,
|
||||
"name": "细类评估"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 606,
|
||||
"url": "app.FengXianPingGu",
|
||||
"isshow": false,
|
||||
"name": "评估(2018)"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 607,
|
||||
"url": "app.chinaRiskAssessmentMap",
|
||||
"isshow": false,
|
||||
"name": "中国风险评估展示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 608,
|
||||
"url": "app.shanghaiRiskAssessmentMap",
|
||||
"isshow": false,
|
||||
"name": "上海风险评估展示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 609,
|
||||
"url": "app.nianfenzhanshi",
|
||||
"isshow": false,
|
||||
"name": "年份风险评估展示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 610,
|
||||
"url": "app.ShiPinLeiBiePingGuZhanShi",
|
||||
"isshow": false,
|
||||
"name": "食品类别评估展示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 611,
|
||||
"url": "app.ShiPinFengXianMapZhanShi",
|
||||
"isshow": false,
|
||||
"name": "风险评估地图展示(上海)"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 612,
|
||||
"url": "app.ShiPinFengXianMap_QuanGuoZhanShi",
|
||||
"isshow": false,
|
||||
"name": "风险评估地图展示(全国)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"name": "风险预警",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 701,
|
||||
"url": "app.zhinengYujing",
|
||||
"isshow": true,
|
||||
"name": "指数智能预警"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 702,
|
||||
"url": "app.JiedaoHegelv",
|
||||
"isshow": true,
|
||||
"name": "街道合格率"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 703,
|
||||
"url": "app.dataBuhegelv",
|
||||
"isshow": true,
|
||||
"name": "首页预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"cid": 44,
|
||||
"url": "app.Buhegelv",
|
||||
"isshow": true,
|
||||
"name": "首次不合格预警"
|
||||
}
|
||||
],
|
||||
"cid": 704,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "首发预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"cid": 45,
|
||||
"url": "app.Buhegelv2",
|
||||
"isshow": true,
|
||||
"name": "不合格率上升预警"
|
||||
},
|
||||
{
|
||||
"cid": 48,
|
||||
"url": "app.Buhegelv4",
|
||||
"isshow": true,
|
||||
"name": "被抽样单位多件不合格预警"
|
||||
},
|
||||
{
|
||||
"cid": 57,
|
||||
"url": "app.Buhegelv7",
|
||||
"isshow": true,
|
||||
"name": "被抽样单位多次不合格预警"
|
||||
},
|
||||
{
|
||||
"cid": 50,
|
||||
"url": "app.Buhegelv6",
|
||||
"isshow": true,
|
||||
"name": "生产企业多件不合格预警"
|
||||
}
|
||||
],
|
||||
"cid": 705,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "频发预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"cid": 46,
|
||||
"url": "app.Buhegelv3",
|
||||
"isshow": true,
|
||||
"name": "不合格率偏高预警"
|
||||
},
|
||||
{
|
||||
"cid": 52,
|
||||
"url": "app.Buhegelv8",
|
||||
"isshow": true,
|
||||
"name": "产地省份不合格率预警"
|
||||
},
|
||||
{
|
||||
"cid": 53,
|
||||
"url": "app.Buhegelv9",
|
||||
"isshow": true,
|
||||
"name": "进口食品不合格率预警"
|
||||
},
|
||||
{
|
||||
"cid": 51,
|
||||
"url": "app.Buhegelv12",
|
||||
"isshow": true,
|
||||
"name": "网络平台不合格率预警"
|
||||
}
|
||||
],
|
||||
"cid": 706,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "高发预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"cid": 49,
|
||||
"url": "app.Buhegelv5",
|
||||
"isshow": true,
|
||||
"name": "检测值异常预警"
|
||||
}
|
||||
],
|
||||
"cid": 707,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "污染预警"
|
||||
},
|
||||
{
|
||||
"floor": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 55,
|
||||
"url": "app.Buhegelv11",
|
||||
"isshow": true,
|
||||
"name": "污染物总膳食暴露量预警"
|
||||
}
|
||||
],
|
||||
"cid": 708,
|
||||
"url": "",
|
||||
"isshow": true,
|
||||
"name": "风险评估预警"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"name": "食品安全综合指数",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 801,
|
||||
"url": "app.zhinengMain",
|
||||
"isshow": true,
|
||||
"name": "大屏主界面"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 802,
|
||||
"url": "app.DaPingYanShi",
|
||||
"isshow": true,
|
||||
"name": "大屏演示"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 803,
|
||||
"url": "app.StreetDaPingYanShi",
|
||||
"isshow": true,
|
||||
"name": "街道大屏"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"name": "智能化数据",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 901,
|
||||
"url": "app.ShuJuZhuanHuan",
|
||||
"isshow": false,
|
||||
"name": "数据转换工具"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 902,
|
||||
"url": "app.ZhiNengTuiJian",
|
||||
"isshow": false,
|
||||
"name": "智能化数据管理"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 903,
|
||||
"url": "app.ZhiNengTuiJianCeLue",
|
||||
"isshow": false,
|
||||
"name": "智能化数据策略"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"name": "风险安全隐患",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 1001,
|
||||
"url": "app.YinHuanBuhegelv",
|
||||
"isshow": false,
|
||||
"name": "首次不合格"
|
||||
},
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 1002,
|
||||
"url": "app.YinHuanBuhegelv3",
|
||||
"isshow": false,
|
||||
"name": "不合格率"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 20,
|
||||
"name": "用户管理",
|
||||
"xiao": [
|
||||
{
|
||||
"floor": [],
|
||||
"cid": 2001,
|
||||
"url": "app.user",
|
||||
"isshow": true,
|
||||
"name": "用户管理"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"Sel": [
|
||||
101,
|
||||
102,
|
||||
103,
|
||||
104,
|
||||
105,
|
||||
106,
|
||||
107,
|
||||
108,
|
||||
109,
|
||||
110,
|
||||
111,
|
||||
112,
|
||||
113,
|
||||
114,
|
||||
116,
|
||||
117,
|
||||
118,
|
||||
201,
|
||||
202,
|
||||
203,
|
||||
301,
|
||||
302,
|
||||
303,
|
||||
304,
|
||||
402,
|
||||
409,
|
||||
503,
|
||||
504,
|
||||
505,
|
||||
506,
|
||||
507,
|
||||
508,
|
||||
509,
|
||||
510,
|
||||
511,
|
||||
512,
|
||||
601,
|
||||
602,
|
||||
603,
|
||||
604,
|
||||
605,
|
||||
701,
|
||||
702,
|
||||
703,
|
||||
704,
|
||||
705,
|
||||
706,
|
||||
707,
|
||||
708,
|
||||
801,
|
||||
802,
|
||||
803,
|
||||
2001,
|
||||
115
|
||||
]
|
||||
}
|
||||
]
|
||||
|
7
pom.xml
7
pom.xml
@ -48,12 +48,13 @@
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<version>3.1.0</version>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<version>3.0.0</version> <!-- 根据需要选择版本 -->
|
||||
<configuration>
|
||||
<skipTests>true</skipTests>
|
||||
<skipTests>true</skipTests> <!-- 跳过测试 -->
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
@ -20,7 +20,7 @@ public @interface DapingCache {
|
||||
String title() default "";
|
||||
|
||||
/**
|
||||
* 是否启用缓存结果
|
||||
* 是否启用缓存结果 如果来开启,将不再执行原方法,而是读取缓存的结果直接返回
|
||||
*/
|
||||
boolean isEnableCache() default true;
|
||||
}
|
||||
|
@ -78,7 +78,7 @@ public class CCKHController {
|
||||
//追溯信息
|
||||
@GetMapping("/GetScoreByHuanJie")
|
||||
@Log(title = "追溯信息根据环节获取成绩", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetScoreByHuanJie(String szqx, String month) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
|
@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.example.demo.constant.DapingCache;
|
||||
import com.example.demo.constant.Log;
|
||||
import com.example.demo.domain.QiyeName;
|
||||
import com.example.demo.domain.TsjbData;
|
||||
import com.example.demo.domain.TsjbDataAudit;
|
||||
import com.example.demo.domain.TsjbJubao;
|
||||
@ -18,7 +17,6 @@ import com.example.demo.entity.vo.MonthTimeVo;
|
||||
import com.example.demo.mapper.ClickhouseDockerMapper;
|
||||
import com.example.demo.mapper.ShipinshengchanxukeqiyeMapper;
|
||||
import com.example.demo.mapper.TsjbDataMapper;
|
||||
import com.example.demo.service.QiyeNameService;
|
||||
import com.example.demo.service.TsjbDataService;
|
||||
import com.example.demo.service.TsjbJubaoService;
|
||||
import com.example.demo.service.TsjbShuqiuService;
|
||||
@ -75,8 +73,6 @@ public class TSJBController {
|
||||
@Resource
|
||||
private TsjbDataService tsjbDataService;
|
||||
@Resource
|
||||
private QiyeNameService qiyeNameService;
|
||||
@Resource
|
||||
private ShipinshengchanxukeqiyeMapper shipinshengchanxukeqiyeMapper;
|
||||
@Resource
|
||||
private ObjectMapper objectMapper;
|
||||
@ -143,7 +139,7 @@ public class TSJBController {
|
||||
@GetMapping("/GetTouSuLvDaPing")
|
||||
@ApiOperation(value = "投诉举报(大屏演示)")
|
||||
@Log(title = "投诉举报(大屏演示)", businessType = BusinessType.SELECT)
|
||||
// @DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public ZR<List<TouSuJuBaoLv>> GetTouSuLvDaPing(String hj, String szqx, String month) {
|
||||
// String userName = BaseContext.getUserName();
|
||||
// if (Tools.isNotEmpty(userName) && userName.contains("区")) {
|
||||
@ -160,6 +156,7 @@ public class TSJBController {
|
||||
@GetMapping("/GetTouSuLvDaPingStreet")
|
||||
@ApiOperation(value = "投诉举报(大屏演示)街道")
|
||||
@Log(title = "投诉举报(大屏)街道", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public ZR<List<TouSuJuBaoLv>> GetTouSuLvDaPingStreet(String hj, String szqx, String month,String street) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
@ -172,7 +169,7 @@ public class TSJBController {
|
||||
//投诉举报
|
||||
@GetMapping("/GetScoreByHuanJie")
|
||||
@Log(title = "投诉举报根据环节获取成绩", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetScoreByHuanJie(String szqx, String month) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
@ -223,15 +220,6 @@ public class TSJBController {
|
||||
processService.init();
|
||||
}
|
||||
|
||||
// 弃用
|
||||
@GetMapping("/Qiye_init")
|
||||
@ApiOperation(value = "初始化企业")
|
||||
public void Qiye_init() {
|
||||
List<QiyeName> list = qiyeNameService.list();
|
||||
list.stream().forEach(qiyeName -> shipinshengchanxukeqiyeMapper.addQiYe(qiyeName.getToushuName()));
|
||||
// processService.init();
|
||||
}
|
||||
|
||||
@GetMapping("/clean")
|
||||
@ApiOperation(value = "清空python缓存")
|
||||
public void clean() throws Exception {
|
||||
@ -245,6 +233,7 @@ public class TSJBController {
|
||||
return R.success();
|
||||
}
|
||||
|
||||
// 测试
|
||||
@GetMapping("/cleanTest")
|
||||
public R cleanTest() {
|
||||
Page<TsjbData> pageable = Page.of(1, 10, false);
|
||||
@ -253,6 +242,7 @@ public class TSJBController {
|
||||
return R.success();
|
||||
}
|
||||
|
||||
// 测试
|
||||
@GetMapping("/cleanJuBaoTest")
|
||||
public R cleanJuBaoTest() throws Exception {
|
||||
tsjbDataService.cleanJuBaoTest();
|
||||
|
@ -334,7 +334,7 @@ public class TongJiController {
|
||||
/// 查询合格率统计信息20231021Add
|
||||
@GetMapping("/TongJi/GetTongJiHeGeLvDaPing")
|
||||
@Log(title = "抽检监测(大屏)", businessType = BusinessType.SELECT)
|
||||
// @DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public ZR<List<TongJiHeGeLv>> GetTongJiHeGeLvDaPing(String hj, String szqx, String month) {
|
||||
|
||||
// String userName = BaseContext.getUserName();
|
||||
@ -353,6 +353,7 @@ public class TongJiController {
|
||||
/// 查询合格率统计信息20231021Add
|
||||
@GetMapping("/TongJi/GetTongJiHeGeLvDaPingStreet")
|
||||
@Log(title = "抽检监测(大屏)街道", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public ZR<List<TongJiHeGeLv>> GetTongJiHeGeLvDaPingStreet(String hj, String szqx, String month,String street) {
|
||||
|
||||
// String userName = BaseContext.getUserName();
|
||||
@ -452,7 +453,7 @@ public class TongJiController {
|
||||
|
||||
@GetMapping("/CJJC/GetScoreByHuanJie")
|
||||
@Log(title = "抽检监测根据环节获取成绩", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetScoreByHuanJie(String szqx, String month) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
|
@ -69,7 +69,7 @@ public class XXZSController {
|
||||
@GetMapping("/GetZhuiSuDaPing")
|
||||
@ApiOperation(value = "信息追溯(大屏)")
|
||||
@Log(title = "信息追溯(大屏)", businessType = BusinessType.SELECT)
|
||||
// @DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetZhuiSuDaPing(String hj, String szqx, String month) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
@ -83,6 +83,7 @@ public class XXZSController {
|
||||
@GetMapping("/GetZhuiSuDaPingStreet")
|
||||
@ApiOperation(value = "信息追溯(大屏)街道")
|
||||
@Log(title = "信息追溯(大屏)街道", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetZhuiSuDaPingStreet(String hj, String szqx, String month,String street) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
@ -94,7 +95,7 @@ public class XXZSController {
|
||||
|
||||
@GetMapping("/GetScoreByHuanJie")
|
||||
@Log(title = "追溯信息根据环节获取成绩", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetScoreByHuanJie(String szqx, String month) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
|
@ -95,7 +95,7 @@ public class XZCFController {
|
||||
//统计模块-行政处罚
|
||||
@GetMapping("/GetFaShengLvDaPing")
|
||||
@Log(title = "行政处罚(大屏)", businessType = BusinessType.SELECT)
|
||||
// @DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Map<String, Object> GetFaShengLvDaPing(String hj, String szqx, String month) {
|
||||
// String userName = BaseContext.getUserName();
|
||||
// if (Tools.isNotEmpty(userName) && userName.contains("区")) {
|
||||
@ -114,6 +114,7 @@ public class XZCFController {
|
||||
//统计模块-行政处罚
|
||||
@GetMapping("/GetFaShengLvDaPingStreet")
|
||||
@Log(title = "行政处罚(大屏)街道", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Map<String, Object> GetFaShengLvDaPingStreet(String hj, String szqx, String month,String street) {
|
||||
// String userName = BaseContext.getUserName();
|
||||
// if (Tools.isNotEmpty(userName) && userName.contains("区")) {
|
||||
@ -151,7 +152,7 @@ public class XZCFController {
|
||||
|
||||
@GetMapping("/GetScoreByHuanJie")
|
||||
@Log(title = "行政处罚根据环节获取成绩", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetScoreByHuanJie(String szqx, String month) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
|
@ -59,7 +59,7 @@ public class ZFJCController {
|
||||
//统计模块-执法检查
|
||||
@GetMapping("/GetWenTiLvDaPing")
|
||||
@Log(title = "执法检查(大屏)", businessType = BusinessType.SELECT)
|
||||
// @DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetWenTiLvDaPing(String hj, String szqx, String month) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
@ -72,6 +72,7 @@ public class ZFJCController {
|
||||
//执法检查 大屏 街道
|
||||
@GetMapping("/GetWenTiLvDaPingStreet")
|
||||
@Log(title = "执法检查(大屏)街道", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetWenTiLvDaPingStreet(String hj, String szqx, String month,String street) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
@ -83,7 +84,7 @@ public class ZFJCController {
|
||||
|
||||
@GetMapping("/GetScoreByHuanJie")
|
||||
@Log(title = "执法检查据环节获取成绩", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public Object GetScoreByHuanJie(String szqx, String month) {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
|
@ -53,7 +53,7 @@ public class ZHZSController {
|
||||
@GetMapping("/GetScoreNew")
|
||||
@ApiOperation(value = "综合指数各区分数大屏,计算分数", notes = "返回各区的各个维度的分数,以及总分")
|
||||
@Log(title = "综合指数各区分数大屏,计算分数", businessType = BusinessType.SELECT)
|
||||
// @DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public R<List<DaPingScoreQX>> getCountyMapScore(String hj, String szqx, String month) throws ParseException {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
@ -71,6 +71,7 @@ public class ZHZSController {
|
||||
@GetMapping("/GetScoreNewStreet")
|
||||
@ApiOperation(value = "综合指数各街道分数大屏,计算分数", notes = "返回各区的各个维度的分数,以及总分")
|
||||
@Log(title = "综合指数各街道分数大屏,计算分数", businessType = BusinessType.SELECT)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public R<List<DaPingScoreQX>> getStreetMapScore(String hj, String szqx, String month) throws ParseException {
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
String endMonth = ObjectUtils.isEmpty(month) ? "12" : month;
|
||||
@ -96,7 +97,7 @@ public class ZHZSController {
|
||||
@GetMapping("/GetTitleScore")
|
||||
@ApiOperation(value = "计算标题分数", notes = "计算当前条件下的总分(不受区县条件影响)")
|
||||
@Log(title = "计算标题分数", businessType = BusinessType.SELECT)
|
||||
// @DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public R<BigDecimal> GetTitleScoreNew(String hj, String szqx, String month) {
|
||||
// szqx = Util.setSzqxFromUserName(szqx);
|
||||
String startMonth = ObjectUtils.isEmpty(month) ? "1" : month;
|
||||
@ -116,7 +117,7 @@ public class ZHZSController {
|
||||
//综合性指标 大屏,综合指数
|
||||
@GetMapping("/GetZHScoreDaPing")
|
||||
@Log(title = "综合性指标 大屏", businessType = BusinessType.SELECT)
|
||||
// @DapingCache(isEnableCache = true)
|
||||
@DapingCache(isEnableCache = false)
|
||||
public ZR<List<ZhData>> GetZHScoreDaPing(String szqx) {
|
||||
// szqx = Util.setSzqxFromUserName(szqx);
|
||||
String year = "2023";
|
||||
|
@ -1,30 +0,0 @@
|
||||
package com.example.demo.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @TableName QIYE_NAME
|
||||
*/
|
||||
@TableName(value = "QIYE_NAME")
|
||||
@Data
|
||||
public class QiyeName implements Serializable {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "COU")
|
||||
private Integer cou;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableField(value = "TOUSHU_NAME")
|
||||
private String toushuName;
|
||||
|
||||
@TableField(exist = false)
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
@ -10,7 +10,7 @@ import org.apache.ibatis.annotations.Update;
|
||||
* @createDate 2023-12-25 15:35:03
|
||||
* @Entity com.example.demo.domain.TsjbData
|
||||
*/
|
||||
@DS("db2")
|
||||
@DS("db3") // 自己自定义一个新的数据库的连接
|
||||
public interface ClickhouseDockerMapper {
|
||||
|
||||
@Update("${clickhouseTableSQL}")
|
||||
|
@ -1,20 +0,0 @@
|
||||
package com.example.demo.mapper;
|
||||
|
||||
import com.baomidou.dynamic.datasource.annotation.DS;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.example.demo.domain.QiyeName;
|
||||
|
||||
/**
|
||||
* @author zhuYuChen
|
||||
* @description 针对表【QIYE_NAME】的数据库操作Mapper
|
||||
* @createDate 2024-07-10 15:47:07
|
||||
* @Entity com.example.demo.domain.QiyeName
|
||||
*/
|
||||
@DS("db2")
|
||||
public interface QiyeNameMapper extends BaseMapper<QiyeName> {
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -73,7 +73,6 @@ public interface ShipinshengchanxukeqiyeMapper extends BaseMapper<Shipinshengcha
|
||||
*/
|
||||
List<XukeConVo> getQiYeSumByHjAndJiedao(@Param(Constants.WRAPPER) QueryWrapper wrapper);
|
||||
|
||||
void addQiYe(@Param("qiyeName") String qiyeName);
|
||||
}
|
||||
|
||||
|
||||
|
@ -44,7 +44,7 @@ public interface TsjbDataMapper extends BaseMapper<TsjbData> {
|
||||
List<TsjbQuHj> getTsCountByJiedaoAndHj(@Param(Constants.WRAPPER) QueryWrapper wrapper);
|
||||
|
||||
/**
|
||||
* 获取各街道各环节投诉的三级指标对应的数量
|
||||
*
|
||||
*/
|
||||
List<String> getClickhouseTableSQL();
|
||||
}
|
||||
|
@ -1,13 +0,0 @@
|
||||
package com.example.demo.service;
|
||||
|
||||
import com.example.demo.domain.QiyeName;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* @author zhuYuChen
|
||||
* @description 针对表【QIYE_NAME】的数据库操作Service
|
||||
* @createDate 2024-07-10 15:47:07
|
||||
*/
|
||||
public interface QiyeNameService extends IService<QiyeName> {
|
||||
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
package com.example.demo.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.example.demo.domain.QiyeName;
|
||||
import com.example.demo.service.QiyeNameService;
|
||||
import com.example.demo.mapper.QiyeNameMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author zhuYuChen
|
||||
* @description 针对表【QIYE_NAME】的数据库操作Service实现
|
||||
* @createDate 2024-07-10 15:47:07
|
||||
*/
|
||||
@Service
|
||||
public class QiyeNameServiceImpl extends ServiceImpl<QiyeNameMapper, QiyeName>
|
||||
implements QiyeNameService{
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -508,27 +508,44 @@ public class TsjbDataServiceImpl extends ServiceImpl<TsjbDataMapper, TsjbData>
|
||||
this.saveOrUpdateBatch(tsjbDataList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取投诉率
|
||||
*
|
||||
* @param start 开始日期
|
||||
* @param end 结束日期
|
||||
* @param ly 环节
|
||||
* @param szqx 区域名称
|
||||
* @return 返回投诉率的相关数据
|
||||
*/
|
||||
@Override
|
||||
public ZR<List<TouSuJuBaoLv>> GetTouSuLv(String start, String end, String ly, String szqx) {
|
||||
public ZR<List<TouSuJuBaoLv>> GetTouSuLv(String start, String end, String ly,String szqx) {
|
||||
// 定义日期格式
|
||||
DateTimeFormatter dateString = DateTimeFormatter.ofPattern("yyyy/M/d");
|
||||
// 解析开始日期和结束日期
|
||||
LocalDate startTime = !ObjectUtils.isEmpty(start) ? LocalDate.parse(start, dateString) : null;
|
||||
LocalDate endTime = !ObjectUtils.isEmpty(end) ? LocalDate.parse(end, dateString) : null;
|
||||
// 获取企业数量映射
|
||||
Map<String, Integer> qiYeSumMap = xukeService.getQiYeByHj(startTime, endTime, szqx);
|
||||
// 创建查询条件
|
||||
QueryWrapper<TsjbData> queryWrapper = new QueryWrapper<>();
|
||||
// 处理环节参数,如果为空则不进行替换
|
||||
ly = ObjectUtils.isEmpty(ly) ? ly : ly.replace("环节", "");
|
||||
//标签(三级指标)不为空
|
||||
// 设置查询条件
|
||||
queryWrapper.ne("WEIGHT_TAG", "")
|
||||
.eq(!ObjectUtils.isEmpty(ly), "HUANJIE", ly)
|
||||
.ne("HUANJIE", "")
|
||||
.eq(!ObjectUtils.isEmpty(szqx), "AREA_NAME", szqx)
|
||||
.eq(!ObjectUtils.isEmpty(szqx), "AREA_NAME", szqx)
|
||||
.ge(!ObjectUtils.isEmpty(startTime), "REGISTER_DATE", startTime)
|
||||
.le(!ObjectUtils.isEmpty(endTime), "REGISTER_DATE", endTime);
|
||||
// 执行查询获取投诉率数据
|
||||
List<TouSuJuBaoLv> touSuLv = tsjbDataMapper.getTouSuLv(queryWrapper);
|
||||
// 处理查询结果,计算投诉率等相关数据
|
||||
touSuLv.stream().forEach(lv -> {
|
||||
// 获取企业数量
|
||||
Integer qiyeCount = qiYeSumMap.get(lv.getHUANJIE());
|
||||
qiyeCount = ObjectUtils.isEmpty(qiyeCount) ? 0 : qiyeCount;
|
||||
lv.setQIYESHU(qiyeCount);
|
||||
// 计算投诉率
|
||||
BigDecimal tousuLv;
|
||||
if (lv.getTOUSUSHU() > lv.getQIYESHU()) {
|
||||
tousuLv = BigDecimal.valueOf(100);
|
||||
@ -538,23 +555,28 @@ public class TsjbDataServiceImpl extends ServiceImpl<TsjbDataMapper, TsjbData>
|
||||
tousuLv = NumberUtil.round(Double.valueOf(lv.getTOUSUSHU()) / Double.valueOf(lv.getQIYESHU()) * 100, 5);
|
||||
}
|
||||
lv.setWENTILV(tousuLv);
|
||||
//写入通用实体类中正向率
|
||||
// 计算正向率
|
||||
lv.setLv(BigDecimal.ONE.subtract(lv.getWENTILV()));
|
||||
//计算成绩
|
||||
// 计算成绩 (1 - 投诉率)的二十次方
|
||||
BigDecimal Score = BigDecimal.valueOf(1)
|
||||
.subtract(lv.getWENTILV().divide(BigDecimal.valueOf(100)))
|
||||
.pow(20);
|
||||
//保留三位小数
|
||||
// 保留三位小数
|
||||
lv.setScore(Score.multiply(BigDecimal.valueOf(100))
|
||||
.setScale(ToolConstant.SCALE, RoundingMode.HALF_UP));
|
||||
//三级权重的key
|
||||
// 设置三级权重的key
|
||||
lv.setWeightKey(primary + "-" + lv.getHUANJIE() + "-" + lv.getTOUSUQINGXIN());
|
||||
// 更新投诉情况字段
|
||||
lv.setTOUSUQINGXIN(lv.getHUANJIE() + "-" + lv.getTOUSUQINGXIN());
|
||||
});
|
||||
// 获取权重映射
|
||||
Map<String, BigDecimal> weightMapByPrimary = zhzsWeightService.getWeightMapByprimary(primary);
|
||||
// 计算一级分数
|
||||
ZhzsScoreVo<TouSuJuBaoLv> primaryScore = ZhzsUtil.getPrimaryScore(touSuLv, TouSuJuBaoLv.class, weightMapByPrimary);
|
||||
primaryScore.setLvList(touSuLv);
|
||||
// 四舍五入分数
|
||||
ZhzsUtil.roundZhzsScoreVoScores(primaryScore);
|
||||
// 返回结果
|
||||
return ZR.success(touSuLv, primaryScore.getWeiduScore(), primaryScore.getWeightScore(), primaryScore.getWeightAdd());
|
||||
}
|
||||
|
||||
@ -625,7 +647,7 @@ public class TsjbDataServiceImpl extends ServiceImpl<TsjbDataMapper, TsjbData>
|
||||
* @return 返回包含投诉率信息的响应对象
|
||||
*/
|
||||
@Override
|
||||
public ZR<List<TouSuJuBaoLv>> getTouSuLvDaPingStreet(String start, String end, String hj,String szqx,String street){
|
||||
public ZR<List<TouSuJuBaoLv>> getTouSuLvDaPingStreet(String start, String end, String hj, String szqx, String street) {
|
||||
// 定义日期格式解析器
|
||||
DateTimeFormatter dateString = DateTimeFormatter.ofPattern("yyyy/M/d");
|
||||
// 解析开始和结束日期
|
||||
@ -633,7 +655,7 @@ public class TsjbDataServiceImpl extends ServiceImpl<TsjbDataMapper, TsjbData>
|
||||
LocalDate endTime = !ObjectUtils.isEmpty(end) ? LocalDate.parse(end, dateString) : null;
|
||||
|
||||
// 获取特定时间和区域内的企业数量映射
|
||||
Map<String, Integer> qiYeSumMap = xukeService.getQiYeByHjAndStreet(startTime, endTime, szqx,street);
|
||||
Map<String, Integer> qiYeSumMap = xukeService.getQiYeByHjAndStreet(startTime, endTime, szqx, street);
|
||||
|
||||
// 创建查询条件
|
||||
QueryWrapper<TsjbData> queryWrapper = new QueryWrapper<>();
|
||||
@ -714,41 +736,59 @@ public class TsjbDataServiceImpl extends ServiceImpl<TsjbDataMapper, TsjbData>
|
||||
primaryScore.getWeightAdd());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取投诉率大数据分析结果
|
||||
*
|
||||
* @param start 开始日期
|
||||
* @param end 结束日期
|
||||
* @param ly 环节
|
||||
* @param szqx 所在区县
|
||||
* @return 返回包含投诉率数据分析结果的ZR对象
|
||||
*/
|
||||
@Override
|
||||
public ZR<List<TouSuJuBaoLv>> getTouSuLvDaPing(String start, String end, String ly, String szqx) {
|
||||
// 定义日期格式
|
||||
DateTimeFormatter dateString = DateTimeFormatter.ofPattern("yyyy/M/d");
|
||||
// 解析开始和结束日期
|
||||
LocalDate startTime = !ObjectUtils.isEmpty(start) ? LocalDate.parse(start, dateString) : null;
|
||||
LocalDate endTime = !ObjectUtils.isEmpty(end) ? LocalDate.parse(end, dateString) : null;
|
||||
// 初始化szqx为"普陀区"(可选:根据实际需求修改)
|
||||
// szqx = "普陀区";
|
||||
// 获取指定日期范围内企业的总数
|
||||
Map<String, Integer> qiYeSumMap = xukeService.getQiYeByHj(start, end, szqx);
|
||||
// 构建查询条件
|
||||
QueryWrapper<TsjbData> queryWrapper = new QueryWrapper<>();
|
||||
// 处理环节,如果为空则不变化,否则移除"环节"
|
||||
ly = ObjectUtils.isEmpty(ly) ? ly : ly.replace("环节", "");
|
||||
// 设置查询条件
|
||||
queryWrapper.ne("WEIGHT_TAG", "")
|
||||
.eq(!ObjectUtils.isEmpty(ly), "HUANJIE", ly)
|
||||
.ne("HUANJIE", "")
|
||||
.eq(!ObjectUtils.isEmpty(szqx), "AREA_NAME", szqx)
|
||||
.ge(!ObjectUtils.isEmpty(startTime), "REGISTER_DATE", startTime)
|
||||
.le(!ObjectUtils.isEmpty(endTime), "REGISTER_DATE", endTime);
|
||||
// 执行查询获取投诉数据
|
||||
List<TouSuJuBaoLv> touSuLv = tsjbDataMapper.getTouSuLv(queryWrapper);
|
||||
//界面显示用(投诉情形,投诉情形对应的总和)
|
||||
// 将查询结果按投诉情形分组
|
||||
Map<String, List<TouSuJuBaoLv>> lvByQingXin = touSuLv.stream().collect(Collectors.groupingBy(TouSuJuBaoLv::getTOUSUQINGXIN));
|
||||
// 处理分组后的数据,计算每种投诉情形的总投诉数
|
||||
List<TouSuJuBaoLv> result = lvByQingXin.entrySet().stream().map(entry -> {
|
||||
List<TouSuJuBaoLv> value = entry.getValue();
|
||||
int qiYeShu = value.stream().mapToInt(TouSuJuBaoLv::getTOUSUSHU).sum();
|
||||
TouSuJuBaoLv lv = new TouSuJuBaoLv();
|
||||
//目前以投诉数决定大小
|
||||
// 目前以投诉数决定大小
|
||||
lv.setTOUSUSHU(qiYeShu);
|
||||
lv.setTOUSUQINGXIN(entry.getKey());
|
||||
return lv;
|
||||
}).collect(Collectors.toList());
|
||||
//添加率,企业数和成绩(分母)
|
||||
// 添加企业数和投诉率
|
||||
touSuLv.stream().forEach(lv -> {
|
||||
// 获取企业总数
|
||||
Integer qiyeCount = qiYeSumMap.get(lv.getHUANJIE());
|
||||
qiyeCount = ObjectUtils.isEmpty(qiyeCount) ? 0 : qiyeCount;
|
||||
lv.setQIYESHU(qiyeCount);
|
||||
// 计算投诉率
|
||||
BigDecimal tousuLv;
|
||||
//投诉数比企业数还多,默认投诉率为1
|
||||
if (lv.getTOUSUSHU() > lv.getQIYESHU()) {
|
||||
tousuLv = BigDecimal.valueOf(100);
|
||||
} else if (lv.getTOUSUSHU() == 0) {
|
||||
@ -757,21 +797,26 @@ public class TsjbDataServiceImpl extends ServiceImpl<TsjbDataMapper, TsjbData>
|
||||
tousuLv = NumberUtil.round(Double.valueOf(lv.getTOUSUSHU()) / Double.valueOf(lv.getQIYESHU()) * 100, 5);
|
||||
}
|
||||
lv.setWENTILV(tousuLv);
|
||||
// 计算分数 投诉率的20次幂就是这个指标的得分
|
||||
BigDecimal Score = BigDecimal.valueOf(1)
|
||||
.subtract(lv.getWENTILV()
|
||||
.divide(BigDecimal.valueOf(100), RoundingMode.HALF_UP))
|
||||
.pow(20);
|
||||
//保留三位小数
|
||||
// 保留三位小数
|
||||
lv.setScore(Score.multiply(BigDecimal.valueOf(100))
|
||||
.setScale(ToolConstant.SCALE, RoundingMode.HALF_UP));
|
||||
//三级权重的key
|
||||
// 设置三级权重的key
|
||||
lv.setWeightKey(primary + "-" + lv.getHUANJIE() + "-" + lv.getTOUSUQINGXIN());
|
||||
lv.setTOUSUQINGXIN(lv.getTOUSUQINGXIN());
|
||||
});
|
||||
// 获取权重映射
|
||||
Map<String, BigDecimal> weightMapByprimary = zhzsWeightService.getWeightMapByPrimaAndSecon(primary, ly);
|
||||
// 计算主要分数
|
||||
ZhzsScoreVo<TouSuJuBaoLv> primaryScore = ZhzsUtil.getPrimaryScore(touSuLv, TouSuJuBaoLv.class, weightMapByprimary);
|
||||
// 将投诉数据按投诉情形分组
|
||||
Map<String, List<TouSuJuBaoLv>> tsjbLvMapByQingXin = touSuLv.stream().collect(Collectors.groupingBy(TouSuJuBaoLv::getTOUSUQINGXIN));
|
||||
List<TouSuJuBaoLv> results = new ArrayList<>();
|
||||
// 处理分组后的数据,计算每种投诉情形的总投诉数
|
||||
tsjbLvMapByQingXin.forEach((s, touSuJuBaoLvs) -> {
|
||||
Integer touSuCount = touSuJuBaoLvs.stream().map(TouSuJuBaoLv::getTOUSUSHU).reduce(0, Integer::sum);
|
||||
TouSuJuBaoLv touSuJuBaoLv = new TouSuJuBaoLv();
|
||||
@ -779,12 +824,14 @@ public class TsjbDataServiceImpl extends ServiceImpl<TsjbDataMapper, TsjbData>
|
||||
touSuJuBaoLv.setTOUSUQINGXIN(s);
|
||||
results.add(touSuJuBaoLv);
|
||||
});
|
||||
// 返回结果
|
||||
return ZR.success(results,
|
||||
primaryScore.getWeiduScore().setScale(1, RoundingMode.HALF_UP),
|
||||
primaryScore.getWeightScore(),
|
||||
primaryScore.getWeightAdd());
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public ZR<List<DaPingScoreQX>> getScoreByHuanJie(String szqx, String start, String end) {
|
||||
ZR<List<TouSuJuBaoLv>> tsjb = this.GetTouSuLv(start, end, null, szqx);
|
||||
@ -797,7 +844,7 @@ public class TsjbDataServiceImpl extends ServiceImpl<TsjbDataMapper, TsjbData>
|
||||
return ZR.success(hjScore, score);
|
||||
}
|
||||
|
||||
// todo 有bug待定
|
||||
// todo 有bug待定
|
||||
@Override
|
||||
public List<ZHZSVo> getScoreByQuAndHj(String hj, String szqx, LocalDate startTime, LocalDate endTime) {
|
||||
String hjQuery = ObjectUtils.isEmpty(hj) ? hj : hj.replace("环节", "");
|
||||
|
@ -559,7 +559,7 @@ public class XzcfDataServiceImpl extends ServiceImpl<XzcfDataMapper, XzcfData>
|
||||
|
||||
moShouSum.forEach(nameAndValueVO -> {
|
||||
XingZhengChuFaLv moShou = new XingZhengChuFaLv();
|
||||
moShou.setCHUFAQINXING(nameAndValueVO.getName());
|
||||
moShou.setCHUFAQINXING(nameAndValueVO.getName().replace(" ", ""));
|
||||
moShou.setCHUFAQIYE(nameAndValueVO.getValue());
|
||||
result.add(moShou);
|
||||
});
|
||||
|
@ -30,63 +30,6 @@ import java.util.stream.Collectors;
|
||||
*/
|
||||
public class ZhzsUtil {
|
||||
|
||||
/**
|
||||
* 根据各一级指标的通用结果,计算这个一级指标的各个三级指标的成绩和总成绩
|
||||
*
|
||||
* @param zsVoList
|
||||
* @param c list对应的class
|
||||
* @param primaryWeightMap 权重map
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
@NotNull
|
||||
public static <T extends ZSScoreVo> BigDecimal getPrimaryAndQuScore(List<T> zsVoList, Class<T> c, Map<String, BigDecimal> primaryWeightMap) {
|
||||
//求出的权重总和
|
||||
BigDecimal weightAdd = zsVoList.stream()
|
||||
.map(T::getWeight)
|
||||
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
Map<String, T> tertiaryList = zsVoList.stream().collect(Collectors.toMap(ZSScoreVo::getWeightKey, a -> a));
|
||||
//对于每个区县,不存在的三级指标,用权重map进行遍历, 少那个补充那个
|
||||
zsVoList = primaryWeightMap.keySet().stream().map(s -> {
|
||||
if (ObjectUtils.isEmpty(tertiaryList.get(s))) {
|
||||
Constructor<T> constructor;
|
||||
T zhzsVo;
|
||||
try {
|
||||
constructor = c.getConstructor();
|
||||
zhzsVo = constructor.newInstance();
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
//写入分数
|
||||
zhzsVo.setScore(ToolConstant.ONE_HUNDRED);
|
||||
zhzsVo.setLv(BigDecimal.ONE);
|
||||
//写入权重key
|
||||
zhzsVo.setWeightKey(s);
|
||||
String[] split = zhzsVo.getWeightKey().split("-");
|
||||
zhzsVo.setHUANJIE(split[1]);
|
||||
zhzsVo.setTertiaryName(split[2]);
|
||||
return zhzsVo;
|
||||
} else {
|
||||
String[] split = s.split("-");
|
||||
tertiaryList.get(s).setHUANJIE(split[1]);
|
||||
tertiaryList.get(s).setTertiaryName(split[2]);
|
||||
tertiaryList.get(s).setPrimaryName("已经找到");
|
||||
return tertiaryList.get(s);
|
||||
}
|
||||
}).map(zhzsVo -> {
|
||||
//写入权重
|
||||
zhzsVo.setWeight(primaryWeightMap.get(zhzsVo.getWeightKey()));
|
||||
//写入权重成绩
|
||||
zhzsVo.setWeightScore(zhzsVo.getScore().multiply(primaryWeightMap.get(zhzsVo.getWeightKey())));
|
||||
return zhzsVo;
|
||||
}).collect(Collectors.toList());
|
||||
//求出对应区的三级权重分
|
||||
BigDecimal weightScoreAdd = zsVoList.stream()
|
||||
.map(T::getWeightScore)
|
||||
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
BigDecimal score = weightScoreAdd.divide(weightAdd, 10, RoundingMode.HALF_UP);
|
||||
return score;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
@ -146,7 +89,7 @@ public class ZhzsUtil {
|
||||
|
||||
|
||||
/**
|
||||
* 根据各一级指标的通用结果,计算这个一级指标的各个三级指标的成绩和总成绩
|
||||
* 计算这个一级指标的各个三级指标的成绩 和 一级指标成绩
|
||||
*
|
||||
* @param zsVoList
|
||||
* @param c list对应的class
|
||||
@ -229,7 +172,6 @@ public class ZhzsUtil {
|
||||
|
||||
|
||||
/**
|
||||
* 根据各一级指标的通用结果,计算这个一级指标的每个二级指标的成绩
|
||||
*
|
||||
* @param zsVoList
|
||||
* @param c list对应的class
|
||||
@ -296,7 +238,8 @@ public class ZhzsUtil {
|
||||
|
||||
/**
|
||||
* 根据一级评分和对应的权重计算总分
|
||||
* 该方法通过反射获取一级评分对象中的每个评分字段,并根据相应的权重计算总分
|
||||
*
|
||||
* 该方法通过反射获取一级评分对象中的每个指标,并根据相应的权重计算总分
|
||||
*
|
||||
* @param primaryScore 一级评分对象,包含各个评分项的得分
|
||||
* @param zhzsPrimaryWeightByPrimary 包含每个评分项权重的映射表
|
||||
@ -355,25 +298,4 @@ public class ZhzsUtil {
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据信息信息追随的率填充zhzsAllLv实体
|
||||
*
|
||||
* @param xinXiZhuiSuLvList
|
||||
* @param zhzsalllv
|
||||
*/
|
||||
public static void setZhzsLv(List<XinXiZhuiSuLv> xinXiZhuiSuLvList, ZhzsAllLv zhzsalllv) {
|
||||
// 获取 Class 对象
|
||||
Class<?> cls = zhzsalllv.getClass();
|
||||
xinXiZhuiSuLvList.stream().forEach(xinXiZhuiSuLv -> {
|
||||
try {
|
||||
ZhzsLvEnum nowLv = ZhzsLvEnum.getLvByPinName(xinXiZhuiSuLv.getWeightKey());
|
||||
// 获取属性字段
|
||||
Field field = cls.getField(nowLv.entityName);
|
||||
// 给属性赋值
|
||||
field.set(zhzsalllv, xinXiZhuiSuLv.getWANCHENGLV());
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -48,8 +48,8 @@ logging:
|
||||
|
||||
#投诉举报清洗导出配置
|
||||
inesat:
|
||||
skipFaissInit: true
|
||||
skipFaissClean: false
|
||||
skipFaissInit: true # 跳过faiss初始化步骤(初始化+加载数据) 开启后不会重新加载缓存
|
||||
skipFaissClean: false # 跳过faiss销毁步骤 开启后不会销毁faiss缓存
|
||||
# 本机虚拟机地址
|
||||
pythonServerUrl: http://0.0.0.0:8003
|
||||
labelKeyFilename: /static/script/1229.xlsx
|
||||
|
@ -1,4 +1,4 @@
|
||||
#指定使用环境
|
||||
spring:
|
||||
profiles:
|
||||
active: dev
|
||||
active: prod
|
||||
|
@ -1,15 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.example.demo.mapper.QiyeNameMapper">
|
||||
|
||||
<resultMap id="BaseResultMap" type="com.example.demo.domain.QiyeName">
|
||||
<result property="cou" column="COU" jdbcType="INTEGER"/>
|
||||
<result property="toushuName" column="TOUSHU_NAME" jdbcType="OTHER"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
COU,TOUSHU_NAME
|
||||
</sql>
|
||||
</mapper>
|
@ -105,13 +105,6 @@
|
||||
CATER_END_TIME,AREA_ID
|
||||
</sql>
|
||||
|
||||
<insert id="addQiYe">
|
||||
INSERT
|
||||
INTO SHIPINSHENGCHANXUKEQIYE_QIYENAME_DIC
|
||||
SELECT *
|
||||
FROM SHIPINSHENGCHANXUKEQIYE_ALLDIC
|
||||
WHERE JYZMC like concat('%', #{qiyeName}, '%')
|
||||
</insert>
|
||||
|
||||
<update id="updateJieDao">
|
||||
UPDATE ${tableName}
|
||||
|
@ -18,13 +18,13 @@ var app = angular.module('app', [
|
||||
'angularjs-dropdown-multiselect'
|
||||
])
|
||||
//云上环境地址 shp地址
|
||||
// var Gaddress = "/shp"
|
||||
// var pubserver = "https://10.86.138.22/shp/";
|
||||
// var mongoApi = "https://10.86.138.22/shp/api/shipinleibie/GetMyTest"
|
||||
var Gaddress = "/shp"
|
||||
var pubserver = "https://10.86.138.22/shp/";
|
||||
var mongoApi = "https://10.86.138.22/shp/api/shipinleibie/GetMyTest"
|
||||
// 开发环境地址
|
||||
var Gaddress = "";
|
||||
var pubserver = "http://localhost:8081/";
|
||||
var mongoApi = "http://localhost:8081/api/shipinleibie/GetMyTest"
|
||||
// var Gaddress = "";
|
||||
// var pubserver = "http://localhost:8081/";
|
||||
// var mongoApi = "http://localhost:8081/api/shipinleibie/GetMyTest"
|
||||
//
|
||||
localStorage.setItem("Gaddress", Gaddress)
|
||||
localStorage.setItem("pubserver", pubserver)
|
||||
@ -819,6 +819,12 @@ app.config(function ($stateProvider, $urlRouterProvider) {
|
||||
|
||||
|
||||
/******************************************食品安全综合指数****************************************************/
|
||||
// 指数主界面
|
||||
.state('app.zhinengMain', {
|
||||
url: '/zhinengMain',
|
||||
templateUrl: 'vue/view/ZhisuMain.html',
|
||||
controller: 'ZhisuMainCtrl',
|
||||
})
|
||||
//大屏演示
|
||||
.state('app.DaPingYanShi', {
|
||||
url: '/DaPingYanShi',
|
||||
|
@ -1,7 +1,7 @@
|
||||
//路由地址 国产路由修改
|
||||
//var url22="172.28.3.129"
|
||||
// var myurl = 'https://10.86.138.22/shp'; //云上环境 shp地址
|
||||
var myurl = 'http://localhost:8081'; //开发环境
|
||||
var myurl = 'https://10.86.138.22/shp'; //云上环境 shp地址
|
||||
// var myurl = 'http://localhost:8081'; //开发环境
|
||||
// var myurl = 'https://10.86.138.22'; //4号虚拟机环境
|
||||
// var myurl = 'http://172.31.52.59:8081';
|
||||
// var myurl = 'http://localhost:5000';
|
||||
|
@ -180,6 +180,9 @@
|
||||
<script src="app/StatAnalyzeManage/controler/ChouChaKaoheCtrl.js"></script>
|
||||
<script src="app/StatAnalyzeManage/controler/TongJiHeGeLvCtrl.js"></script>
|
||||
<script src="app/StatAnalyzeManage/controler/XingZhengChuFaCtrl.js"></script>
|
||||
|
||||
<!--指数大屏-->
|
||||
<script src="vue/controller/ZhisuMainCtrl.js"></script>
|
||||
<script src="app/StatAnalyzeManage/controler/DaPingCtrl.js"></script>
|
||||
<script src="app/StatAnalyzeManage/controler/DaPingStreetCtrl.js"></script>
|
||||
|
||||
|
21
src/main/resources/public/vue/controller/ZhisuMainCtrl.js
Normal file
21
src/main/resources/public/vue/controller/ZhisuMainCtrl.js
Normal file
@ -0,0 +1,21 @@
|
||||
/// <reference path="C:\Users\Administrator\Desktop\WEI.UIPro\WEI.UIPro20160726\WEI.UIPro\WEI.UIPro\WEI.UIPro\Scripts/linq.js" />
|
||||
|
||||
|
||||
/**************************折线图******************************/
|
||||
app.controller('ZhisuMainCtrl', ['$scope', 'YPJBXXGL', '$uibModal', '$sessionStorage', '$state', '$http', '$filter', 'mainUrl', 'wyOdataNodeService', 'stConfig', '$timeout', function ($scope, YPJBXXGL, $uibModal, $sessionStorage, $state, $http, $filter, mainUrl, wyOdataNodeService, stConfig, $timeout, $uibModalInstance, item) {
|
||||
|
||||
$scope.openViveForm = function () {
|
||||
var index = layer.open({
|
||||
type: 2,
|
||||
title: false,
|
||||
closeBtn: 1,
|
||||
content: pubserver + 'daping.html#/navigation',
|
||||
area: ['320px', '195px'],
|
||||
maxmin: true
|
||||
});
|
||||
layer.full(index);
|
||||
}
|
||||
// 不打开弹窗
|
||||
// $scope.openViveForm();
|
||||
}])
|
||||
|
10
src/main/resources/public/vue/view/ZhisuMain.html
Normal file
10
src/main/resources/public/vue/view/ZhisuMain.html
Normal file
@ -0,0 +1,10 @@
|
||||
<style type="text/css">
|
||||
|
||||
</style>
|
||||
|
||||
<!--指数主界面-->
|
||||
<div>
|
||||
<iframe width="100%" height="730vh" src="./daping.html#/navigation"></iframe>
|
||||
</div>
|
||||
|
||||
|
@ -0,0 +1 @@
|
||||
.navigation-container[data-v-e2ea1f96]{max-width:1200px;margin:0 auto;padding:2rem;font-family:Helvetica Neue,Arial,sans-serif}.header[data-v-e2ea1f96]{text-align:center;margin-bottom:3rem}.title[data-v-e2ea1f96]{font-size:2.5rem;color:#2c3e50;margin-bottom:1rem;font-weight:600}.category[data-v-e2ea1f96]{margin-bottom:2.5rem}.category-title[data-v-e2ea1f96]{font-size:1.5rem;color:#2c3e50;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #eaeaea}.card-grid[data-v-e2ea1f96]{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.card[data-v-e2ea1f96]{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:1.5rem;transition:transform .3s,box-shadow .3s;text-decoration:none;color:inherit;display:flex;flex-direction:column;align-items:center;text-align:center}.card[data-v-e2ea1f96]:hover{transform:translateY(-5px);box-shadow:0 10px 15px #0000001a}.card-icon[data-v-e2ea1f96]{font-size:2.5rem;margin-bottom:1rem}.card-title[data-v-e2ea1f96]{font-size:1.1rem;font-weight:500;color:#2c3e50;margin-bottom:.5rem}.card-subtitle[data-v-e2ea1f96]{font-size:.9rem;color:#7f8c8d}@media (max-width: 768px){.card-grid[data-v-e2ea1f96]{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.navigation-container[data-v-e2ea1f96]{padding:1rem}.title[data-v-e2ea1f96]{font-size:2rem}}
|
@ -0,0 +1 @@
|
||||
import{d as i,r as d,g as _,k as s,A as c,v as o,o as n,aJ as r,aK as l}from"./runtime-core.esm-bundler-381a9959.js";import{_ as h}from"./_plugin-vue_export-helper-c27b6911.js";const t=e=>(r("data-v-e2ea1f96"),e=e(),l(),e),v={class:"navigation-container"},p=t(()=>s("div",{class:"header"},[s("h1",{class:"title"},"食品安全综合指数分析系统")],-1)),g={class:"card-container"},u={class:"category"},f=t(()=>s("h2",{class:"category-title"},"上海地图",-1)),m={class:"card-grid"},y=t(()=>s("div",{class:"card-icon"},"🗺️",-1)),k=t(()=>s("div",{class:"card-title"},"上海地图主界面",-1)),x=t(()=>s("div",{class:"card-icon"},"🏙️",-1)),M=t(()=>s("div",{class:"card-title"},"上海街道地图",-1)),N={class:"category"},S=t(()=>s("h2",{class:"category-title"},"综合指数分析",-1)),I={class:"card-grid"},b=t(()=>s("div",{class:"card-icon"},"📊",-1)),B=t(()=>s("div",{class:"card-title"},"上海市各环节食品安全综合指数",-1)),C=t(()=>s("div",{class:"card-subtitle"},"柱状图",-1)),w=t(()=>s("div",{class:"card-icon"},"📡",-1)),z=t(()=>s("div",{class:"card-title"},"上海市各区食品安全综合指数",-1)),V=t(()=>s("div",{class:"card-subtitle"},"雷达图",-1)),j=t(()=>s("div",{class:"card-icon"},"📡",-1)),A=t(()=>s("div",{class:"card-title"},"上海市各街道食品安全综合指数",-1)),D=t(()=>s("div",{class:"card-subtitle"},"雷达图",-1)),E={class:"category"},F=t(()=>s("h2",{class:"category-title"},"专业功能",-1)),J={class:"card-grid"},K=t(()=>s("div",{class:"card-icon"},"🔔",-1)),q=t(()=>s("div",{class:"card-title"},"指数智能预警",-1)),G=i({__name:"MainNavigation",setup(e){return(H,L)=>{const a=d("router-link");return n(),_("div",v,[p,s("div",g,[s("div",u,[f,s("div",m,[c(a,{to:"/shanghaimap",class:"card"},{default:o(()=>[y,k]),_:1}),c(a,{to:"/shanghaiStreetMap",class:"card"},{default:o(()=>[x,M]),_:1})])]),s("div",N,[S,s("div",I,[c(a,{to:"/shanghaimapforstage",class:"card"},{default:o(()=>[b,B,C]),_:1}),c(a,{to:"/shanghaimapfordistrict",class:"card"},{default:o(()=>[w,z,V]),_:1}),c(a,{to:"/shanghaiStreetMapForDistrict",class:"card"},{default:o(()=>[j,A,D]),_:1})])]),s("div",E,[F,s("div",J,[c(a,{to:"/zhisuzhinengyujing",class:"card"},{default:o(()=>[K,q]),_:1})])])])])}}});const Q=h(G,[["__scopeId","data-v-e2ea1f96"]]);export{Q as default};
|
1
src/main/resources/static/assets/barshow-13e7c767.js
Normal file
1
src/main/resources/static/assets/barshow-13e7c767.js
Normal file
@ -0,0 +1 @@
|
||||
import{d as c,b as i,B as d,y as f,o as u,g as m,k as s,s as n,n as _,j as x,i as p}from"./runtime-core.esm-bundler-381a9959.js";import{_ as w}from"./_plugin-vue_export-helper-c27b6911.js";const g={class:"w-8 text-xs",style:{color:"#ffffff"}},h={class:"w-10 h-4 flex flex-row justify-start rounded-md border-2 border-blue-300 bg-white"},b={class:""},v=c({__name:"barshow",props:{name:String,value:Number,color:String,max:Number},setup(e){const o=e;let a="100%",l=i();return d(()=>{const t=parseFloat(getComputedStyle(document.documentElement).fontSize);l.value.style.paddingBottom=(window.innerHeight*.7-t*22)/16+"px"}),f(o,(t,r)=>{console.log("newValueGG",t),console.log("相应的值",o),a=(o.value/o.max*100).toString()+"%",console.log("currate",a)}),(t,r)=>(u(),m("div",{class:"w-full px-2 flex flex-row pt-0",ref_key:"pt",ref:l},[s("div",g,n(e.name),1),s("div",h,[s("div",{class:_(["flex items-center text-xs",e.color]),style:x({width:p(a),color:e.color})},[s("span",b,n(e.value),1)],6)])],512))}});const B=w(v,[["__scopeId","data-v-626b36ef"]]);export{B};
|
@ -1 +0,0 @@
|
||||
.fill-red-50[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))}.fill-red-100[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity))}.fill-red-200[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity))}.fill-red-300[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity))}.fill-red-400[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity))}.fill-red-500[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.fill-red-600[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.fill-red-700[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))}.fill-red-800[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity))}.fill-red-900[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity))}.fill-green-50[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))}.fill-green-100[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity))}.fill-green-200[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity))}.fill-green-300[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(134 239 172 / var(--tw-bg-opacity))}.fill-green-400[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity))}.fill-green-500[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))}.fill-green-600[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity))}.fill-green-700[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.fill-green-800[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity))}.fill-green-900[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity))}.fill-yellow-50[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))}.fill-yellow-100[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(133 77 14 / var(--tw-bg-opacity))}.fill-yellow-200[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(254 240 138 / var(--tw-bg-opacity))}.fill-yellow-300[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(253 224 71 / var(--tw-bg-opacity))}.fill-yellow-400[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity))}.fill-yellow-500[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.fill-yellow-600[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity))}.fill-yellow-700[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity))}.fill-yellow-800[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(133 77 14 / var(--tw-bg-opacity))}.fill-yellow-900[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(113 63 18 / var(--tw-bg-opacity))}.fill-blue-50[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.fill-blue-100[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity))}.fill-blue-200[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity))}.fill-blue-300[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity))}.fill-blue-400[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity))}.fill-blue-500[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity))}.fill-blue-600[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.fill-blue-700[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity))}.fill-blue-800[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity))}.fill-blue-900[data-v-1b52aa4d]{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity))}
|
1
src/main/resources/static/assets/barshow-458bbfb5.css
Normal file
1
src/main/resources/static/assets/barshow-458bbfb5.css
Normal file
@ -0,0 +1 @@
|
||||
.fill-red-50[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))}.fill-red-100[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity))}.fill-red-200[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity))}.fill-red-300[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity))}.fill-red-400[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity))}.fill-red-500[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.fill-red-600[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.fill-red-700[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))}.fill-red-800[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity))}.fill-red-900[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity))}.fill-green-50[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))}.fill-green-100[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity))}.fill-green-200[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity))}.fill-green-300[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(134 239 172 / var(--tw-bg-opacity))}.fill-green-400[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity))}.fill-green-500[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))}.fill-green-600[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity))}.fill-green-700[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.fill-green-800[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity))}.fill-green-900[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity))}.fill-yellow-50[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))}.fill-yellow-100[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(133 77 14 / var(--tw-bg-opacity))}.fill-yellow-200[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(254 240 138 / var(--tw-bg-opacity))}.fill-yellow-300[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(253 224 71 / var(--tw-bg-opacity))}.fill-yellow-400[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity))}.fill-yellow-500[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.fill-yellow-600[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity))}.fill-yellow-700[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity))}.fill-yellow-800[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(133 77 14 / var(--tw-bg-opacity))}.fill-yellow-900[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(113 63 18 / var(--tw-bg-opacity))}.fill-blue-50[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.fill-blue-100[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity))}.fill-blue-200[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity))}.fill-blue-300[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity))}.fill-blue-400[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity))}.fill-blue-500[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity))}.fill-blue-600[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.fill-blue-700[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity))}.fill-blue-800[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(30 64 175 / var(--tw-bg-opacity))}.fill-blue-900[data-v-626b36ef]{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity))}
|
@ -1 +0,0 @@
|
||||
import{d,b as i,B as u,y as m,o as f,g as x,k as a,s as n,j as r,n as _,i as p}from"./runtime-core.esm-bundler-8a173561.js";import{_ as w}from"./_plugin-vue_export-helper-c27b6911.js";const g={class:"w-10 h-4 flex flex-row justify-start rounded-md border-2 border-blue-300 bg-white"},b={class:""},h=d({__name:"barshow",props:{name:String,value:Number,color:String,max:Number},setup(e){const o=e;let s="100%",l=i();return u(()=>{const t=parseFloat(getComputedStyle(document.documentElement).fontSize);l.value.style.paddingBottom=(window.innerHeight*.7-t*22)/16+"px"}),m(o,(t,c)=>{console.log("newValueGG",t),console.log("相应的值",o),s=(o.value/o.max*100).toString()+"%",console.log("currate",s)}),(t,c)=>(f(),x("div",{class:"w-full px-2 flex flex-row pt-0",ref_key:"pt",ref:l},[a("div",{class:"w-8 text-xs",style:r({color:e.color})},n(e.name),5),a("div",g,[a("div",{class:_(["flex items-center text-xs",e.color]),style:r({width:p(s),color:e.color})},[a("span",b,n(e.value),1)],6)])],512))}});const S=w(h,[["__scopeId","data-v-1b52aa4d"]]);export{S as B};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
*[data-v-01fbf573]{margin:0;padding:0;box-sizing:border-box}li[data-v-01fbf573]{list-style:none}@font-face{font-family:electronicFont;src:url(../font/DS-DIGIT.TTF)}html[data-v-01fbf573]{width:100%;height:100%}body[data-v-01fbf573]{font-family:Tahoma,sans-serif;margin:0;padding:0;background-repeat:no-repeat;background-color:#f5f5f7;background-size:cover;line-height:1.15;width:100%;height:100%}header[data-v-01fbf573]{position:absolute;z-index:3;padding:.125rem;position:relative;width:100%;height:8vh;background:url(../images/head_bg.png) no-repeat top center;background-size:100% 100%}header h1[data-v-01fbf573]{font-family:Montserrat,sans-serif;font-size:30px;color:#81e7ed;text-align:center;line-height:8vh}header .showTime[data-v-01fbf573]{position:absolute;top:0;right:.375rem;line-height:.9375rem;font-size:.25rem;color:#81e7ed;font-weight:600}.left[data-v-01fbf573]{display:flex;justify-content:space-between;flex-direction:column;position:absolute;z-index:3;width:32%;height:75%;margin:.5%}.right[data-v-01fbf573]{right:0%;position:absolute;z-index:3;width:32%;height:75%;margin:.5%;padding:.123rem}.mainbox[data-v-01fbf573]{position:absolute;z-index:3;width:100%;height:85%;padding:.125rem}.mainbox .column[data-v-01fbf573]{width:25%;display:flex;justify-content:space-between;flex-direction:column}.mainbox .column[data-v-01fbf573]:nth-child(2){width:50%;margin:0 .125rem;overflow:hidden}.h1[data-v-01fbf573]{font-weight:700}.alltitle[data-v-01fbf573]{color:#81e7ed;height:20px;line-height:20px;font-size:15px;position:relative;padding-left:3px;font-weight:700}.selectBox[data-v-01fbf573]{position:absolute;right:3px;width:18%;height:15px;min-height:15px}.optionBox[data-v-01fbf573]{margin-left:4px;font-size:12px}.boxall[data-v-01fbf573]{width:100%;height:100%;padding:10px;background:rgba(0,0,0,.2);position:absolute;z-index:100000}.boxall[data-v-01fbf573]:before{position:absolute;top:0;left:0;content:"";width:10px;height:10px;border-top:2px solid #02a6b5;border-left:2px solid #02a6b5;border-radius:20%}.boxall[data-v-01fbf573]:after{position:absolute;top:0;right:0;content:"";width:10px;height:10px;border-top:2px solid #02a6b5;border-right:2px solid #02a6b5;border-radius:20%}.boxall-footer[data-v-01fbf573]{position:absolute;z-index:100000;left:0;bottom:0;width:100%}.boxall-footer[data-v-01fbf573]:before{position:absolute;bottom:0;left:0;content:"";width:10px;height:10px;border-bottom:2px solid #02a6b5;border-left:2px solid #02a6b5;border-radius:20%}.boxall-footer[data-v-01fbf573]:after{position:absolute;bottom:0;right:0;content:"";width:10px;height:10px;border-bottom:2px solid #02a6b5;border-right:2px solid #02a6b5;border-radius:20%}#rule[data-v-01fbf573]{max-height:90%;overflow-y:hidden;margin-top:2%}#list p[data-v-01fbf573]{display:flex;color:#ffffffb3;font-size:.2rem;margin-bottom:.2rem}#list p span[data-v-01fbf573]{flex:1;text-align:center}.box1[data-v-01fbf573]{width:100%;height:70%;position:relative;margin-bottom:2%}.box2[data-v-01fbf573]{width:100%;height:28%;position:relative}.box3[data-v-01fbf573]{width:100%;height:70%;position:relative;margin-bottom:2%}.box4[data-v-01fbf573]{width:100%;height:29%;position:relative}.backgroundbox[data-v-01fbf573]{height:100vh;position:relative}.shanghaimap[data-v-01fbf573]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;display:flex;justify-content:center;align-items:center}.card1{position:absolute;top:10px;right:10px;width:30px;height:30px;background:transparent;border:none;display:flex;justify-content:center;align-items:center;cursor:pointer}.card-icon1{font-size:16px;color:#fff}
|
@ -1 +0,0 @@
|
||||
*[data-v-d7ff4253]{margin:0;padding:0;box-sizing:border-box}li[data-v-d7ff4253]{list-style:none}@font-face{font-family:electronicFont;src:url(../font/DS-DIGIT.TTF)}html[data-v-d7ff4253]{width:100%;height:100%}body[data-v-d7ff4253]{font-family:Tahoma,sans-serif;margin:0;padding:0;background-repeat:no-repeat;background-color:#06164a;background-size:cover;line-height:1.15;width:100%;height:100%}header[data-v-d7ff4253]{position:absolute;z-index:3;padding:.125rem;position:relative;width:100%;height:8vh;background:url(../images/head_bg.png) no-repeat top center;background-size:100% 100%}header h1[data-v-d7ff4253]{font-family:Montserrat,sans-serif;font-size:30px;color:#81e7ed;text-align:center;line-height:8vh}header .showTime[data-v-d7ff4253]{position:absolute;top:0;right:.375rem;line-height:.9375rem;font-size:.25rem;color:#81e7ed;font-weight:600}.left[data-v-d7ff4253]{display:flex;justify-content:space-between;flex-direction:column;position:absolute;z-index:3;width:32%;height:75%;margin:.5%}.right[data-v-d7ff4253]{right:0%;position:absolute;z-index:3;width:32%;height:75%;margin:.5%;padding:.123rem}.mainbox[data-v-d7ff4253]{position:absolute;z-index:3;width:100%;height:85%;padding:.125rem}.mainbox .column[data-v-d7ff4253]{width:25%;display:flex;justify-content:space-between;flex-direction:column}.mainbox .column[data-v-d7ff4253]:nth-child(2){width:50%;margin:0 .125rem;overflow:hidden}.h1[data-v-d7ff4253]{font-weight:700}.alltitle[data-v-d7ff4253]{color:#81e7ed;height:20px;line-height:20px;font-size:15px;position:relative;padding-left:3px;font-weight:700}.selectBox[data-v-d7ff4253]{position:absolute;right:3px;width:18%;height:15px;min-height:15px}.optionBox[data-v-d7ff4253]{margin-left:4px;font-size:12px}.boxall[data-v-d7ff4253]{width:100%;height:100%;padding:10px;background:rgba(0,0,0,.2);position:absolute;z-index:100000}.boxall[data-v-d7ff4253]:before{position:absolute;top:0;left:0;content:"";width:10px;height:10px;border-top:2px solid #02a6b5;border-left:2px solid #02a6b5;border-radius:20%}.boxall[data-v-d7ff4253]:after{position:absolute;top:0;right:0;content:"";width:10px;height:10px;border-top:2px solid #02a6b5;border-right:2px solid #02a6b5;border-radius:20%}.boxall-footer[data-v-d7ff4253]{position:absolute;z-index:100000;left:0;bottom:0;width:100%}.boxall-footer[data-v-d7ff4253]:before{position:absolute;bottom:0;left:0;content:"";width:10px;height:10px;border-bottom:2px solid #02a6b5;border-left:2px solid #02a6b5;border-radius:20%}.boxall-footer[data-v-d7ff4253]:after{position:absolute;bottom:0;right:0;content:"";width:10px;height:10px;border-bottom:2px solid #02a6b5;border-right:2px solid #02a6b5;border-radius:20%}#rule[data-v-d7ff4253]{max-height:90%;overflow-y:hidden;margin-top:2%}#list p[data-v-d7ff4253]{display:flex;color:#ffffffb3;font-size:.2rem;margin-bottom:.2rem}#list p span[data-v-d7ff4253]{flex:1;text-align:center}.box1[data-v-d7ff4253]{width:100%;height:70%;position:relative;margin-bottom:2%}.box2[data-v-d7ff4253]{width:100%;height:28%;position:relative}.box3[data-v-d7ff4253]{width:100%;height:70%;position:relative;margin-bottom:2%}.box4[data-v-d7ff4253]{width:100%;height:29%;position:relative}.backgroundbox[data-v-d7ff4253]{height:100vh;position:relative}.shanghaimap[data-v-d7ff4253]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;display:flex;justify-content:center;align-items:center}
|
File diff suppressed because one or more lines are too long
1
src/main/resources/static/assets/eChartsMap-1014dace.js
Normal file
1
src/main/resources/static/assets/eChartsMap-1014dace.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as o}from"./eChartsMap.vue_vue_type_script_setup_true_lang-94302b89.js";import"./index-cf1eecd5.js";import"./install-0badd932.js";import"./runtime-core.esm-bundler-381a9959.js";export{o as default};
|
@ -1 +0,0 @@
|
||||
import{_ as o}from"./eChartsMap.vue_vue_type_script_setup_true_lang-a943d1fc.js";import"./index-cf1eecd5.js";import"./install-0badd932.js";import"./runtime-core.esm-bundler-8a173561.js";export{o as default};
|
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as e}from"./eChartsMap.vue_vue_type_script_setup_true_lang-a943d1fc.js";import{d as a,g as o,A as t,o as _}from"./runtime-core.esm-bundler-8a173561.js";import{_ as s}from"./_plugin-vue_export-helper-c27b6911.js";import"./index-cf1eecd5.js";import"./install-0badd932.js";const r=a({__name:"eChartsMapbiaoqian",setup(n){return(p,c)=>(_(),o("div",null,[t(e)]))}});const u=s(r,[["__scopeId","data-v-06c69e89"]]);export{u as default};
|
||||
import{_ as e}from"./eChartsMap.vue_vue_type_script_setup_true_lang-94302b89.js";import{d as a,g as o,A as t,o as _}from"./runtime-core.esm-bundler-381a9959.js";import{_ as s}from"./_plugin-vue_export-helper-c27b6911.js";import"./index-cf1eecd5.js";import"./install-0badd932.js";const r=a({__name:"eChartsMapbiaoqian",setup(n){return(p,c)=>(_(),o("div",null,[t(e)]))}});const u=s(r,[["__scopeId","data-v-06c69e89"]]);export{u as default};
|
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{r as n}from"./router-fc971264.js";import{d as i,b as d,B as _,r as t,o as h,g as b,A as e,v as g}from"./runtime-core.esm-bundler-8a173561.js";const k=i({__name:"headMenu",props:{menuname:String},setup(l){const u=l,a=d(""),p=r=>{switch(r){case"上海设计":n.push("/shanghaimap");break;case"上海整体":n.push("/fixshanghaimap");break;case"全国地图":n.push("/chinamap");break;case"世界地图":n.push("/worldmap");break}};return _(()=>{a.value!=u.menuname,console.log("显示传递的值",a.value)}),(r,s)=>{const o=t("el-radio-button"),m=t("el-radio-group");return h(),b("div",null,[e(m,{modelValue:a.value,"onUpdate:modelValue":s[0]||(s[0]=c=>a.value=c),size:"large",onChange:p},{default:g(()=>[e(o,{label:"上海设计"}),e(o,{label:"上海整体"}),e(o,{label:"全国地图"}),e(o,{label:"世界地图"})]),_:1},8,["modelValue"])])}}});export{k as _};
|
||||
import{r as n}from"./router-fd396650.js";import{d as i,b as d,B as _,r as t,o as h,g as b,A as e,v as g}from"./runtime-core.esm-bundler-381a9959.js";const k=i({__name:"headMenu",props:{menuname:String},setup(l){const u=l,a=d(""),p=r=>{switch(r){case"上海设计":n.push("/shanghaimap");break;case"上海整体":n.push("/fixshanghaimap");break;case"全国地图":n.push("/chinamap");break;case"世界地图":n.push("/worldmap");break}};return _(()=>{a.value!=u.menuname,console.log("显示传递的值",a.value)}),(r,s)=>{const o=t("el-radio-button"),m=t("el-radio-group");return h(),b("div",null,[e(m,{modelValue:a.value,"onUpdate:modelValue":s[0]||(s[0]=c=>a.value=c),size:"large",onChange:p},{default:g(()=>[e(o,{label:"上海设计"}),e(o,{label:"上海整体"}),e(o,{label:"全国地图"}),e(o,{label:"世界地图"})]),_:1},8,["modelValue"])])}}});export{k as _};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
src/main/resources/static/assets/index-f33bd7b0.css
Normal file
1
src/main/resources/static/assets/index-f33bd7b0.css
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1154
src/main/resources/static/assets/router-fd396650.js
Normal file
1154
src/main/resources/static/assets/router-fd396650.js
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
.example-showcase .el-dropdown-link{cursor:pointer;color:#fff;display:flex;align-items:center}#tooltip{transition:all .3s ease-out}.shanghaimap{position:absolute;top:18%;left:26.5%;width:47%;height:70%;z-index:5;display:flex;justify-content:center;align-items:center}.bar-show{max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes fadeInOut{0%{opacity:0;transform:translateY(-10px)}50%{opacity:1}to{opacity:0;transform:translateY(10px)}}
|
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
.card1{position:absolute;top:10px;right:10px;width:30px;height:30px;background:transparent;border:none;display:flex;justify-content:center;align-items:center;cursor:pointer}.card-icon1{font-size:16px;color:#fff}.example-showcase .el-dropdown-link{cursor:pointer;color:#fff;display:flex;align-items:center}#tooltip{transition:all .3s ease-out}.shanghaimap{position:absolute;top:18%;left:26.5%;width:47%;height:70%;z-index:5;display:flex;justify-content:center;align-items:center}.bar-show{max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes fadeInOut{0%{opacity:0;transform:translateY(-10px)}50%{opacity:1}to{opacity:0;transform:translateY(10px)}}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
.card1{position:absolute;top:10px;right:10px;width:30px;height:30px;background:transparent;border:none;display:flex;justify-content:center;align-items:center;cursor:pointer}.card-icon1{font-size:16px;color:#fff}
|
File diff suppressed because one or more lines are too long
40
src/main/resources/static/assets/shanghaimap-41438dc4.js
Normal file
40
src/main/resources/static/assets/shanghaimap-41438dc4.js
Normal file
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
.card1{position:absolute;top:10px;right:10px;width:30px;height:30px;background:transparent;border:none;display:flex;justify-content:center;align-items:center;cursor:pointer}.card-icon1{font-size:16px;color:#fff}.example-showcase .el-dropdown-link{cursor:pointer;color:#fff;display:flex;align-items:center}#tooltip{transition:all .3s ease-out}@keyframes fadeInOut{0%{opacity:0;transform:translateY(-10px)}50%{opacity:1}to{opacity:0;transform:translateY(10px)}}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
.card1{position:absolute;top:10px;right:10px;width:30px;height:30px;background:transparent;border:none;display:flex;justify-content:center;align-items:center;cursor:pointer}.card-icon1{font-size:16px;color:#fff}.example-showcase .el-dropdown-link{cursor:pointer;color:#fff;display:flex;align-items:center}.dove{position:absolute;z-index:0}
|
@ -1 +1 @@
|
||||
import{V as s}from"./vue-draggable-resizable-2fdfe448.js";/* empty css */import"./index-cf1eecd5.js";import{d as f,b as t,B as u,g as d,A as o,v as i,o as p,k as l}from"./runtime-core.esm-bundler-8a173561.js";import{i as _}from"./install-0badd932.js";import"./runtime-dom.esm-bundler-bd76bbf7.js";import"./_plugin-vue_export-helper-c27b6911.js";const h={class:"w-screen h-screen flex justify-around items-center"},x=l("div",{class:"w-full h-full bg-green-200"},"1",-1),C=f({__name:"test",setup(v){const e=t(null),m=t(null);let n=t();const c=()=>{var r=_(n.value),a;a={title:{text:""},legend:{data:["分配预算","实际开支"]},radar:{indicator:[{name:"曾经",max:6500},{name:"沧海",max:16e3},{name:"难为水",max:3e4},{name:"除却",max:38e3},{name:"巫山",max:52e3},{name:"不是云",max:25e3}]},series:[{name:"嘿嘿",type:"radar",data:[{value:[4200,3e3,2e4,35e3,5e4,18e3],name:"分配预算"},{value:[5e3,14e3,28e3,26e3,42e3,21e3],name:"实际开支"}]}]},a&&r.setOption(a)};return u(()=>{e.value.left=-500,e.value.width=800,e.value.height=800,console.log(e.value),c()}),(r,a)=>(p(),d("div",h,[o(s,{ref_key:"test1",ref:e},{default:i(()=>[x]),_:1},512),o(s,{ref_key:"refShiPinDaLei",ref:m,style:{border:"none"}},{default:i(()=>[l("div",{class:"flex items-center justify-center w-[500px] h-[300px]",ref_key:"main1",ref:n},null,512)]),_:1},512)]))}});export{C as default};
|
||||
import{V as s}from"./vue-draggable-resizable-b9fb2b7f.js";/* empty css */import"./index-cf1eecd5.js";import{d as f,b as t,B as u,g as d,A as o,v as i,o as p,k as l}from"./runtime-core.esm-bundler-381a9959.js";import{i as _}from"./install-0badd932.js";import"./runtime-dom.esm-bundler-22744054.js";import"./_plugin-vue_export-helper-c27b6911.js";const h={class:"w-screen h-screen flex justify-around items-center"},x=l("div",{class:"w-full h-full bg-green-200"},"1",-1),C=f({__name:"test",setup(v){const e=t(null),m=t(null);let n=t();const c=()=>{var r=_(n.value),a;a={title:{text:""},legend:{data:["分配预算","实际开支"]},radar:{indicator:[{name:"曾经",max:6500},{name:"沧海",max:16e3},{name:"难为水",max:3e4},{name:"除却",max:38e3},{name:"巫山",max:52e3},{name:"不是云",max:25e3}]},series:[{name:"嘿嘿",type:"radar",data:[{value:[4200,3e3,2e4,35e3,5e4,18e3],name:"分配预算"},{value:[5e3,14e3,28e3,26e3,42e3,21e3],name:"实际开支"}]}]},a&&r.setOption(a)};return u(()=>{e.value.left=-500,e.value.width=800,e.value.height=800,console.log(e.value),c()}),(r,a)=>(p(),d("div",h,[o(s,{ref_key:"test1",ref:e},{default:i(()=>[x]),_:1},512),o(s,{ref_key:"refShiPinDaLei",ref:m,style:{border:"none"}},{default:i(()=>[l("div",{class:"flex items-center justify-center w-[500px] h-[300px]",ref_key:"main1",ref:n},null,512)]),_:1},512)]))}});export{C as default};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
const s="/assets/shiwuzhongdu-cbbab3c3.png",a="/assets/manyidu-761cd483.png",t="/assets/zhixiaodu-81f93c9a.png";export{s as _,a,t as b};
|
||||
const s="/shp/assets/shiwuzhongdu-cbbab3c3.png",a="/shp/assets/manyidu-761cd483.png",t="/shp/assets/zhixiaodu-81f93c9a.png";export{s as _,a,t as b};
|
||||
|
@ -6,15 +6,15 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<!-- <link rel="stylesheet" href="./node_modules/animate.css/animate.css"> -->
|
||||
<title>地图设计管理工具</title>
|
||||
<script type="module" crossorigin src="/assets/index-cc553660.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/assets/runtime-core.esm-bundler-8a173561.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/runtime-dom.esm-bundler-bd76bbf7.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_plugin-vue_export-helper-c27b6911.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/router-fc971264.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/index-9b033329.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_commonjsHelpers-edff4021.js">
|
||||
<link rel="stylesheet" href="/assets/index-2d4b746a.css">
|
||||
<link rel="stylesheet" href="/assets/index-e7d876d1.css">
|
||||
<script type="module" crossorigin src="/shp/assets/index-8c6e5964.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/shp/assets/runtime-core.esm-bundler-381a9959.js">
|
||||
<link rel="modulepreload" crossorigin href="/shp/assets/runtime-dom.esm-bundler-22744054.js">
|
||||
<link rel="modulepreload" crossorigin href="/shp/assets/_plugin-vue_export-helper-c27b6911.js">
|
||||
<link rel="modulepreload" crossorigin href="/shp/assets/router-fd396650.js">
|
||||
<link rel="modulepreload" crossorigin href="/shp/assets/index-aefe9e2d.js">
|
||||
<link rel="modulepreload" crossorigin href="/shp/assets/_commonjsHelpers-edff4021.js">
|
||||
<link rel="stylesheet" href="/shp/assets/index-f33bd7b0.css">
|
||||
<link rel="stylesheet" href="/shp/assets/index-e7d876d1.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
|
91
src/main/resources/static/mock/README.md
Normal file
91
src/main/resources/static/mock/README.md
Normal file
@ -0,0 +1,91 @@
|
||||
# Mock数据使用说明
|
||||
|
||||
## 文件说明
|
||||
|
||||
以下是为上海地图大屏组件创建的模拟数据文件:
|
||||
|
||||
1. `getAllCourse.json` - 总分数据
|
||||
2. `getAllData.json` - 各区域数据
|
||||
3. `getCheckMonitoringValue.json` - 抽检监测数据
|
||||
4. `getCheckAssessmentValue.json` - 抽查考核数据
|
||||
5. `getIstrativeSanctionValue.json` - 行政处罚数据
|
||||
6. `getComplaintReportValue.json` - 投诉举报数据
|
||||
7. `getInformationTracingValue.json` - 信息追溯数据
|
||||
8. `getLawEnforcementInspectionValue.json` - 执法检查数据
|
||||
9. `mockConfig.js` - Mock拦截器配置
|
||||
|
||||
## 使用方法
|
||||
|
||||
### 方法一:使用axios-mock-adapter(推荐)
|
||||
|
||||
1. 安装依赖:
|
||||
```bash
|
||||
npm install axios-mock-adapter --save-dev
|
||||
```
|
||||
|
||||
2. 在项目入口文件(如main.ts或main.js)中引入mock配置:
|
||||
```javascript
|
||||
// 仅在开发环境中启用mock
|
||||
if (process.env.NODE_ENV === 'development') {
|
||||
require('./public/mock/mockConfig.js');
|
||||
}
|
||||
```
|
||||
|
||||
### 方法二:直接修改API文件(临时使用)
|
||||
|
||||
在`src/api/SettingAPI.js`或对应的API文件中,可以临时修改API函数直接返回模拟数据,例如:
|
||||
|
||||
```javascript
|
||||
// 原API函数
|
||||
export const getAllCourse = (month, stage, district) => {
|
||||
// 临时替换为使用模拟数据
|
||||
return Promise.resolve({
|
||||
data: require('../../public/mock/getAllCourse.json').data
|
||||
});
|
||||
|
||||
// 原代码注释掉
|
||||
// return request({
|
||||
// url: '/settings/getAllCourse',
|
||||
// method: 'get',
|
||||
// params: { month, stage, district }
|
||||
// });
|
||||
};
|
||||
```
|
||||
|
||||
### 方法三:简易版本(不需要安装额外依赖)
|
||||
|
||||
创建一个简单的mock服务文件:
|
||||
|
||||
```javascript
|
||||
// src/mock/index.js
|
||||
import { getAllCourse, getAllData /* 其他API函数 */ } from '../api/SettingAPI';
|
||||
|
||||
// 劫持原函数
|
||||
const originalGetAllCourse = getAllCourse;
|
||||
const originalGetAllData = getAllData;
|
||||
// ... 其他原函数
|
||||
|
||||
// 替换为模拟数据版本
|
||||
export function enableMock() {
|
||||
window.getAllCourse = function() {
|
||||
return Promise.resolve({ data: require('../../public/mock/getAllCourse.json').data });
|
||||
};
|
||||
window.getAllData = function() {
|
||||
return Promise.resolve({ data: require('../../public/mock/getAllData.json').data });
|
||||
};
|
||||
// ... 其他API替换
|
||||
}
|
||||
|
||||
// 恢复原函数
|
||||
export function disableMock() {
|
||||
window.getAllCourse = originalGetAllCourse;
|
||||
window.getAllData = originalGetAllData;
|
||||
// ... 恢复其他API
|
||||
}
|
||||
```
|
||||
|
||||
然后在需要的地方调用`enableMock()`来启用模拟数据。
|
||||
|
||||
## 数据修改
|
||||
|
||||
您可以随时编辑JSON文件中的数据来测试不同的显示效果,所有文件都位于`public/mock/`目录下。
|
7
src/main/resources/static/mock/getAllCourse.json
Normal file
7
src/main/resources/static/mock/getAllCourse.json
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"code": 200,
|
||||
"data": {
|
||||
"msg": "success",
|
||||
"data": "85.6"
|
||||
}
|
||||
}
|
24
src/main/resources/static/mock/getAllData.json
Normal file
24
src/main/resources/static/mock/getAllData.json
Normal file
@ -0,0 +1,24 @@
|
||||
{
|
||||
"code": 200,
|
||||
"data": {
|
||||
"msg": "success",
|
||||
"data": [
|
||||
{"district": "浦东新区", "score": 87.5},
|
||||
{"district": "黄浦区", "score": 82.3},
|
||||
{"district": "徐汇区", "score": 84.9},
|
||||
{"district": "长宁区", "score": 85.2},
|
||||
{"district": "静安区", "score": 86.1},
|
||||
{"district": "普陀区", "score": 81.8},
|
||||
{"district": "虹口区", "score": 83.7},
|
||||
{"district": "杨浦区", "score": 85.0},
|
||||
{"district": "闵行区", "score": 83.5},
|
||||
{"district": "宝山区", "score": 82.2},
|
||||
{"district": "嘉定区", "score": 80.9},
|
||||
{"district": "金山区", "score": 79.5},
|
||||
{"district": "松江区", "score": 81.3},
|
||||
{"district": "青浦区", "score": 80.8},
|
||||
{"district": "奉贤区", "score": 79.7},
|
||||
{"district": "崇明区", "score": 78.6}
|
||||
]
|
||||
}
|
||||
}
|
14
src/main/resources/static/mock/getCheckAssessmentValue.json
Normal file
14
src/main/resources/static/mock/getCheckAssessmentValue.json
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"code": 200,
|
||||
"data": {
|
||||
"msg": "success",
|
||||
"score": 84.2,
|
||||
"data": [
|
||||
{"name": "食品生产企业", "hegelv": 88.5, "kaoherenci": 145},
|
||||
{"name": "食品流通企业", "hegelv": 87.2, "kaoherenci": 178},
|
||||
{"name": "餐饮服务单位", "hegelv": 83.4, "kaoherenci": 213},
|
||||
{"name": "学校食堂", "hegelv": 91.3, "kaoherenci": 92},
|
||||
{"name": "企事业单位食堂", "hegelv": 85.6, "kaoherenci": 121}
|
||||
]
|
||||
}
|
||||
}
|
17
src/main/resources/static/mock/getCheckMonitoringValue.json
Normal file
17
src/main/resources/static/mock/getCheckMonitoringValue.json
Normal file
@ -0,0 +1,17 @@
|
||||
{
|
||||
"code": 200,
|
||||
"data": {
|
||||
"msg": "success",
|
||||
"score": 86.5,
|
||||
"data": [
|
||||
{"sp_dl": "粮食及其制品", "hegelv": 92.3, "hegejianshu": 256, "zongjianshu": 277},
|
||||
{"sp_dl": "肉制品", "hegelv": 89.7, "hegejianshu": 192, "zongjianshu": 214},
|
||||
{"sp_dl": "乳制品", "hegelv": 95.2, "hegejianshu": 178, "zongjianshu": 187},
|
||||
{"sp_dl": "水产品", "hegelv": 87.4, "hegejianshu": 167, "zongjianshu": 191},
|
||||
{"sp_dl": "蔬菜水果", "hegelv": 93.1, "hegejianshu": 283, "zongjianshu": 304},
|
||||
{"sp_dl": "食用油", "hegelv": 94.8, "hegejianshu": 146, "zongjianshu": 154},
|
||||
{"sp_dl": "调味品", "hegelv": 91.5, "hegejianshu": 129, "zongjianshu": 141},
|
||||
{"sp_dl": "饮料", "hegelv": 96.2, "hegejianshu": 152, "zongjianshu": 158}
|
||||
]
|
||||
}
|
||||
}
|
14
src/main/resources/static/mock/getComplaintReportValue.json
Normal file
14
src/main/resources/static/mock/getComplaintReportValue.json
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"code": 200,
|
||||
"data": {
|
||||
"msg": "success",
|
||||
"score": 85.9,
|
||||
"data": [
|
||||
{"type": "网络渠道", "tousu": 156, "jubao": 23},
|
||||
{"type": "电话渠道", "tousu": 218, "jubao": 35},
|
||||
{"type": "现场投诉", "tousu": 97, "jubao": 12},
|
||||
{"type": "官方App", "tousu": 124, "jubao": 18},
|
||||
{"type": "微信平台", "tousu": 143, "jubao": 21}
|
||||
]
|
||||
}
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
{
|
||||
"code": 200,
|
||||
"data": {
|
||||
"msg": "success",
|
||||
"score": 82.3,
|
||||
"data": [
|
||||
{"name": "食用农产品", "value": 94.2},
|
||||
{"name": "食品添加剂", "value": 88.7},
|
||||
{"name": "食品相关产品", "value": 91.5},
|
||||
{"name": "保健食品", "value": 85.3},
|
||||
{"name": "特殊膳食食品", "value": 89.1}
|
||||
]
|
||||
}
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
{
|
||||
"code": 200,
|
||||
"data": {
|
||||
"msg": "success",
|
||||
"score": 83.7,
|
||||
"data": [
|
||||
{"chufaqinxing": "超范围经营", "chufaqiye": 28},
|
||||
{"chufaqinxing": "无证经营", "chufaqiye": 42},
|
||||
{"chufaqinxing": "标签不合规", "chufaqiye": 35},
|
||||
{"chufaqinxing": "过期食品", "chufaqiye": 19},
|
||||
{"chufaqinxing": "食品添加剂", "chufaqiye": 23},
|
||||
{"chufaqinxing": "虚假宣传", "chufaqiye": 31},
|
||||
{"chufaqinxing": "卫生条件不达标", "chufaqiye": 38}
|
||||
]
|
||||
}
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
{
|
||||
"code": 200,
|
||||
"data": {
|
||||
"msg": "success",
|
||||
"score": 86.7,
|
||||
"data": [
|
||||
{"category": "日常检查", "count": 465, "qualified": 412, "passRate": 88.6},
|
||||
{"category": "专项检查", "count": 238, "qualified": 216, "passRate": 90.8},
|
||||
{"category": "飞行检查", "count": 182, "qualified": 159, "passRate": 87.4},
|
||||
{"category": "监督抽检", "count": 324, "qualified": 297, "passRate": 91.7},
|
||||
{"category": "跟踪检查", "count": 146, "qualified": 132, "passRate": 90.4}
|
||||
]
|
||||
}
|
||||
}
|
40
src/main/resources/static/mock/mockConfig.js
Normal file
40
src/main/resources/static/mock/mockConfig.js
Normal file
@ -0,0 +1,40 @@
|
||||
// 模拟API拦截器配置
|
||||
import axios from 'axios';
|
||||
import MockAdapter from 'axios-mock-adapter';
|
||||
|
||||
// 创建一个新的mock适配器实例
|
||||
const mock = new MockAdapter(axios);
|
||||
|
||||
// 配置模拟的API响应
|
||||
// 总分数API
|
||||
mock.onGet('/api/settings/getAllCourse').reply(200, require('./getAllCourse.json').data);
|
||||
|
||||
// 各区域数据API
|
||||
mock.onGet('/api/settings/getAllData').reply(200, require('./getAllData.json').data);
|
||||
|
||||
// 六大表格相关API
|
||||
mock.onGet('/api/settings/getCheckMonitoringValue').reply(200, require('./getCheckMonitoringValue.json').data);
|
||||
mock.onGet('/api/settings/getCheckAssessmentValue').reply(200, require('./getCheckAssessmentValue.json').data);
|
||||
mock.onGet('/api/settings/getIstrativeSanctionValue').reply(200, require('./getIstrativeSanctionValue.json').data);
|
||||
mock.onGet('/api/settings/getComplaintReportValue').reply(200, require('./getComplaintReportValue.json').data);
|
||||
mock.onGet('/api/settings/getInformationTracingValue').reply(200, require('./getInformationTracingValue.json').data);
|
||||
mock.onGet('/api/settings/getLawEnforcementInspectionValue').reply(200, require('./getLawEnforcementInspectionValue.json').data);
|
||||
|
||||
// 辅助函数: 支持URL参数的模拟请求
|
||||
function mockWithParams(url, mockDataFile) {
|
||||
mock.onGet(new RegExp(url)).reply(config => {
|
||||
return [200, require(mockDataFile).data];
|
||||
});
|
||||
}
|
||||
|
||||
// 添加参数化的模拟API
|
||||
mockWithParams('/api/settings/getAllCourse\\?.*', './getAllCourse.json');
|
||||
mockWithParams('/api/settings/getAllData\\?.*', './getAllData.json');
|
||||
mockWithParams('/api/settings/getCheckMonitoringValue\\?.*', './getCheckMonitoringValue.json');
|
||||
mockWithParams('/api/settings/getCheckAssessmentValue\\?.*', './getCheckAssessmentValue.json');
|
||||
mockWithParams('/api/settings/getIstrativeSanctionValue\\?.*', './getIstrativeSanctionValue.json');
|
||||
mockWithParams('/api/settings/getComplaintReportValue\\?.*', './getComplaintReportValue.json');
|
||||
mockWithParams('/api/settings/getInformationTracingValue\\?.*', './getInformationTracingValue.json');
|
||||
mockWithParams('/api/settings/getLawEnforcementInspectionValue\\?.*', './getLawEnforcementInspectionValue.json');
|
||||
|
||||
export default mock;
|
Loading…
x
Reference in New Issue
Block a user