2025-06-27 10:04:22 +08:00

2354 lines
100 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var data;
var tiaojian;
var tiaojian2;
app.controller('JianCeXiangMuCtrl', ['$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.YiBuCalc = function () {
var wherestr = angular.toJson($scope.TJTable);
var wherestr2 = angular.toJson($scope.TJTable2);
$scope.wherestr = wherestr;
$scope.wherestr2 = wherestr2;
if ($scope.wherestr.length<=0 || $scope.wherestr2 <=0) {
alert("请输入相应的污染物数据库查询条件以及消费量的相关查询条件,并且一定在污染库增加一条检测信息!");
return;
}
//增加日志20211109
addlog("小类评估", "查询[" + wherestr + "||" + wherestr2 + "]")
layui.use('table', function () {
var table = layui.table;
// 监听导出按钮的点击事件
$('#exportBtn').click(function(){
// 将数据导出为Excel格式
var curTableHead=['食品大类','食品亚类','食品品种','食品细类','件数','检测值平均','检测值最大','人数','消费量平均g/d','消费量最大值g/d','消费量均方差g/d','体重平均值kg','消费量P95','暴露量平均值','暴露量最大值','暴露量P95','ADI比值%'];
var curTableData=[]
$scope.myTableData.forEach(function(item,index,arr){
curTableData.push({
"spdl":item.spdl.toString(),
"spyl":item.spyl.toString(),
"sppz":item.sppz.toString(),
"spxl":item.spxl.toString(),
"ypxx_count":item.ypxx_count.toString(),
"ypxx_avg":item.ypxx_avg.toString(),
"ypxx_max":item.ypxx_max.toString(),
"renyuan_count":item.renyuan_count.toString(),
"xfl_avg":item.xfl_avg.toString(),
"xfl_max":item.xfl_max.toString(),
"xfl_stdev":item.xfl_stdev.toString(),
"xfl_tz_avg":item.xfl_tz_avg.toString(),
"xfl_p95":item.xfl_p95.toString(),
"bll_avg":item.bll_avg.toString(),
"bll_max":item.bll_max.toString(),
"bll_p95":item.bll_p95.toString(),
"bll_adi":item.bll_adi.toString()
});
})
table.exportFile(curTableHead, curTableData, 'xls','风险评估分析结果(细类)');
});
table.render({
elem: '#test'
, url: Gaddress + "/fengxianpinggu/GetFengXianResult"
, where: {
wherestr: $scope.wherestr
, wherestr2: $scope.wherestr2
, nianfen: ''
,leixing:'SP_XL'
, num: 1
}
, parseData: function (res) { //res 即为原始返回的数据
$scope.myPageData = res.dataPage;
$scope.myTableData = res.dataTable;
//console.log($scope.myPageData);
//$scope.danweiNew = '';
//$scope.danweiNew = $scope.myPageData.danwei;
//data = res.dataPage;
da = 1; //这个奇葩的参数设置是为了后面的显示判断,先留着,后面去掉
//console.log('reseres',res)
return {
"code": res.code,
"data": res.dataTable //解析数据列表
};
}
//, width: 1000
, height: 330
, cols: [[
{ field: 'spdl', width: 120, align: 'center', fixed: 'left', title: '食品大类', sort: true }
, { field: 'spyl', width: 120, align: 'center', fixed: 'left', title: '食品亚类', sort: true }
, { field: 'sppz', width: 120, align: 'center', fixed: 'left', title: '食品品种', sort: true }
, { field: 'sp_xl', width: 120, align: 'center', fixed: 'left', title: '食品细类', sort: true }
, { field: 'ypxx_count', width: 180, align: 'right', title: '件数', sort: true }
, { field: 'ypxx_avg', width: 180, align: 'right', title: '检测值平均', sort: true }
, { field: 'ypxx_max', width: 180, align: 'right', title: '检测值最大', sort: true }
, { field: 'renyuan_count', width: 180, align: 'right', title: '人数', sort: true }
, { field: 'xfl_avg', width: 180, align: 'right', title: '消费量平均g/d', sort: true }
, { field: 'xfl_max', width: 180, align: 'right', title: '消费量最大值g/d', sort: true }
, { field: 'xfl_p95', width: 180, align: 'right', title: '消费量P95g/d', sort: true }
, { field: 'xfl_tz_avg', width: 180, align: 'right', title: '体重平均值kg', sort: true }
, { field: 'bll_avg', width: 180, align: 'right', title: '暴露量平均值', sort: true }
, { field: 'bll_max', width: 180, align: 'right', title: '暴露量最大值', sort: true }
, { field: 'bll_p95', width: 180, align: 'right', title: '暴露量P95', sort: true }
, { field: 'bll_adi', width: 180, align: 'right', title: 'ADI比值%', sort: true }
]]
, page: false
});
});
$timeout(function () {
$scope.yanchi();
//$scope.nianfenZheXianTu(1);
}, 3000);
}
$scope.GOjc = function (id, CYDBH) {
//$state.go("app.SampleTest", { id: id, CYDBH: CYDBH });
dLayer.open({
type: 2,
area: ['1200px', '700px'],
content: '../index.html#/SampleTestdialog/' + id + '/' + CYDBH
});
}
$scope.myttt = "等待查询结果";
$scope.Myjson = [
{ "type": 1, "mytext": "抽样单编号", "PY": "CYDBH" },
{ "type": 1, "mytext": "任务编号", "PY": "RWBH" },
{ "type": 1, "mytext": "流水号", "PY": "LSH" },
{ "type": 1, "mytext": "任务来源", "PY": "RWLY" },
{ "type": 1, "mytext": "任务类型", "PY": "RWLX" },
{ "type": 1, "mytext": "任务性质", "PY": "RWXZ" },
{ "type": 1, "mytext": "被抽样人信息(名称)", "PY": "BCYRMC" },
{ "type": 1, "mytext": "任务年份", "PY": "RWNF" },
{ "type": 1, "mytext": "执行年月", "PY": "ZXNY" },
//-----------新食品分类----------------------------
{ "type": 1, "mytext": "食品大类", "PY": "SP_DL" },
{ "type": 1, "mytext": "食品亚类", "PY": "SP_YL" },
{ "type": 1, "mytext": "食品品种", "PY": "SP_PZ" },
{ "type": 1, "mytext": "食品小类", "PY": "SP_XL" },
//-------------------------------------------------
//-----------原食品分类----------------------------
{ "type": 1, "mytext": "原食品分类", "PY": "OldYPFL" },
//-------------------------------------------------------
{ "type": 1, "mytext": "区域类型", "PY": "QYLX" },
{ "type": 1, "mytext": "地址(市)", "PY": "DZ_S" },
{ "type": 1, "mytext": "地址(区(县))", "PY": "DZ_QX" },
{ "type": 1, "mytext": "地址(街道(镇)", "PY": "DZ_Z" },
{ "type": 1, "mytext": "地址(弄)", "PY": "DZ_N" },
{ "type": 1, "mytext": "地址(号)", "PY": "DZ_H" },
{ "type": 1, "mytext": "地址(室)", "PY": "DZ_S1" },
{ "type": 1, "mytext": "连贯地址", "PY": "BCYDWMC" },
{ "type": 1, "mytext": "法人代表", "PY": "FRDB" },
{ "type": 1, "mytext": "年销售额", "PY": "NXSE" },
{ "type": 1, "mytext": "营业执照号", "PY": "YYZZH" },
{ "type": 1, "mytext": "联系人", "PY": "LXR1" },
{ "type": 1, "mytext": "经营许可证", "PY": "JYXKZ" },
{ "type": 1, "mytext": "电话", "PY": "DH1" },
{ "type": 1, "mytext": "传真", "PY": "CZ" },
{ "type": 1, "mytext": "邮编", "PY": "YX" },
{ "type": 1, "mytext": "抽样地点", "PY": "CYDD" },
{ "type": 1, "mytext": "抽样地点类型", "PY": "CYDDLX" },
{ "type": 1, "mytext": "样品来源", "PY": "YPLY" },
{ "type": 1, "mytext": "样品属性", "PY": "YPSX" },
{ "type": 1, "mytext": "样品类型", "PY": "YPLX" },
{ "type": 1, "mytext": "样品名称", "PY": "YPMC" },
{ "type": 1, "mytext": "商标", "PY": "SB" },
{ "type": 1, "mytext": "生产/ 加工\n购进日期", "PY": "SCJGGJRQ" },
{ "type": 1, "mytext": "规格型号", "PY": "GGXH" },
{ "type": 1, "mytext": "样品批号", "PY": "YPPH" },
{ "type": 1, "mytext": "保质期", "PY": "BZQ" },
{ "type": 1, "mytext": "执行标准/技术文件", "PY": "ZXBZ" },
{ "type": 1, "mytext": "质量等级", "PY": "ZLDJ" },
{ "type": 1, "mytext": "生产许可证编号", "PY": "SCXKZBH" },
{ "type": 1, "mytext": "单价", "PY": "DJ" },
{ "type": 1, "mytext": "是否出口", "PY": "SFCK" },
{ "type": 1, "mytext": "抽样基数/批量", "PY": "CYJS" },
{ "type": 1, "mytext": "抽样数量(含备样)", "PY": "CYSL" },
{ "type": 1, "mytext": "备样数量", "PY": "BYSL" },
{ "type": 1, "mytext": "样品形态", "PY": "YPXT" },
{ "type": 1, "mytext": "包装分类", "PY": "BZFL" },
{ "type": 1, "mytext": "生产者名称", "PY": "SCZMC" },
{ "type": 1, "mytext": "生产者地址_省", "PY": "SCZDZ_S" },
{ "type": 1, "mytext": "生产者地址_市", "PY": "SCZDZ_s" },
{ "type": 1, "mytext": "生产者地址_区县", "PY": "SCZDZ_Q" },
{ "type": 1, "mytext": "生产者地址", "PY": "SCZDZ" },
{ "type": 1, "mytext": "联系电话", "PY": "LXDH" },
{ "type": 1, "mytext": "(标称)样品储存条件", "PY": "YPCCTJ" },
{ "type": 1, "mytext": "寄、送样品截止日期", "PY": "YPJZRQ" },
{ "type": 1, "mytext": "寄送样品地址", "PY": "JSYPDZ" },
{ "type": 1, "mytext": "抽样样品包装", "PY": "CYYPBZ" },
{ "type": 1, "mytext": "抽样方式", "PY": "CYFS" },
{ "type": 1, "mytext": "抽样单位信息(单位名称)", "PY": "CYDWMC" },
{ "type": 1, "mytext": "抽样单位信息(地址)", "PY": "CYDWDZ" },
{ "type": 1, "mytext": "抽样单位信息(联系人)", "PY": "CYDWLXR" },
{ "type": 1, "mytext": "抽样单位信息(电话)", "PY": "CYDWDH" },
{ "type": 1, "mytext": "抽样单位信息(传真)", "PY": "CYDWCZ" },
{ "type": 1, "mytext": "抽样单位信息(邮编)", "PY": "CYDWYB" },
{ "type": 1, "mytext": "备注", "PY": "QT" },
{ "type": 1, "mytext": "被抽样单位签名", "PY": "BCYDWQM" },
{ "type": 1, "mytext": "被抽样单位签名时间", "PY": "BCYDWSJ" },
{ "type": 1, "mytext": "抽样人", "PY": "CYRQM" },
{ "type": 1, "mytext": "抽样单位", "PY": "CYDW" },
{ "type": 1, "mytext": "抽样人签名时间", "PY": "CYSJ" },
{ "type": 1, "mytext": "检测机构", "PY": "JCDW" },
{ "type": 0, "mytext": "----以下样品检验信息----", "PY": "1" },
{ "type": 2, "mytext": "检测项目", "PY": "JCXM" },
{ "type": 2, "mytext": "检测标准", "PY": "JCBZ" },
{ "type": 2, "mytext": "评价标准", "PY": "PJBZ" },
{ "type": 2, "mytext": "检测方法", "PY": "JCFF" },
{ "type": 2, "mytext": "方法名称", "PY": "FFMC" },
{ "type": 2, "mytext": "定性值", "PY": "ffjcx" },
{ "type": 2, "mytext": "定性值单位", "PY": "ffjcxDW" },
{ "type": 2, "mytext": "定量值", "PY": "ffdlx" },
{ "type": 2, "mytext": "定量值单位", "PY": "ffdlxDW" },
{ "type": 2, "mytext": "限量值", "PY": "xlz" },
{ "type": 2, "mytext": "限量值单位", "PY": "xlzDW" },
{ "type": 2, "mytext": "检测值", "PY": "jcz" },
{ "type": 2, "mytext": "检测值单位", "PY": "jczDW" },
{ "type": 2, "mytext": "单项判定", "PY": "Yzhen" },
{ "type": 2, "mytext": "备注", "PY": "QT" },
{ "type": 0, "mytext": "----以下样品检验结果信息----", "PY": "1" },
{ "type": 2, "mytext": "检测结果", "PY": "JieGuo" },
];
//、定性值、、、、限量值、限量值单位、检测值、检测值单位、判定
$scope.Myjson1 = [
{ "myvalue": 1, "mytext": "等于" },
{ "myvalue": 7, "mytext": "不等于" },
{ "myvalue": 2, "mytext": "包含" },
{ "myvalue": 8, "mytext": "不包含" },
{ "myvalue": 3, "mytext": "大于" },
{ "myvalue": 4, "mytext": "小于" },
{ "myvalue": 5, "mytext": "大于等于" },
{ "myvalue": 6, "mytext": "小于等于" },
]
var shipinleibieshuju = [];
//加载所有 的食品分类
var shipinleibieshuju = {};
$http.get(mongoApi, {}).success(function (Ldata) {
//alert(Ldata.Data.name);
shipinleibieshuju = angular.fromJson(Ldata.Data.name);
});
function add0(m) { return m < 10 ? '0' + m : m }
function format(shijianchuo) {
//shijianchuo是整数否则要parseInt转换
var time = new Date(shijianchuo);
var y = time.getFullYear();
var m = time.getMonth() + 1;
var d = time.getDate();
//var h = time.getHours();
//var mm = time.getMinutes();
//var s = time.getSeconds();
return y + '/' + add0(m) + '/' + add0(d);// + ' ' + add0(h) + ':' + add0(mm) + ':' + add0(s);
}
/***********************样品综合查询**************************/
//添加条件
$scope.TJTable = [];
$scope.RWLYSHOW = false;
$scope.SouSuoShow = true;
$scope.addTJ = function (tjtype) {
if ($scope.TJTable.length <= 0) {
tjtype = "";
}
if (!$scope.isdate) {
var str = $("#dept").val();
if (str != "? undefined:undefined ?") {
$scope.mytxt = str;
}
var aa = {
"lianjietype": tjtype,
"CXTJPY": $scope.mysel.PY,
"CXTJ": $scope.mysel.mytext,
"CXLX": $scope.mysel1.mytext,
"CXLXid": $scope.mysel1.myvalue,
"CXNR": $scope.mytxt,
}
if (aa.CXTJ == "选择" || aa.CXLX == "选择" || (str == "" && $scope.RWLYSHOW)) {
return;
}
var myll = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == aa.CXTJ && x.CXLX == aa.CXLX && x.CXNR == aa.CXNR }).ToArray();
if (myll.length > 0) {
alert("您已经添加过此条件");
} else {
$scope.TJTable.push(aa);
}
} else {
var kaishishijian = format($scope.datebegin);
var jieshushijian = format($scope.dateend);
var aa1 = {
"lianjietype": tjtype,
"CXTJPY": $scope.mysel.mytext == "执行年月" ? "ZXNY_KS" : $scope.mysel.PY,
"CXTJ": $scope.mysel.mytext == "执行年月" ? "执行年月开始" : $scope.mysel.mytext,
"CXLX": "大于等于",
"CXLXid": 5,
"CXNR": kaishishijian,
}
var aa2 = {
"lianjietype": "and",
"CXTJPY": $scope.mysel.mytext == "执行年月" ? "ZXNY_JS" : $scope.mysel.PY,
"CXTJ": $scope.mysel.mytext == "执行年月" ? "执行年月结束" : $scope.mysel.mytext,
"CXLX": "小于等于",
"CXLXid": 6,
"CXNR": jieshushijian,
}
$scope.TJTable.push(aa1);
$scope.TJTable.push(aa2);
}
}
//删除条件
$scope.deleteTJ = function (index) {
var aa = $scope.TJTable.indexOf(index);
$scope.TJTable.splice(aa, 1);
}
//改变事件
$scope.MyjsonChange = function () {
$scope.RELYdata = [];
$scope.myselpublic = undefined;
$scope.mytxt = "";
switch ($scope.mysel.PY) {
/////////////////////////////////////////////////最新食品分类(以2016年为准)//////////////////////////////////////////////////
case "JCXM":
$scope.RELYdata = [];
//$scope.jcxmLX = JSON.parse(mydata);
var jc = $scope.GetAllJXCM;
// var cTime = document.getElementById("usertype");
for (var i = 0; i < jc.length; i++) {
var a = jc[i].JCYL;
for (var j = 0; j < a.length; j++) {
var b = a[j].JCXMXIAOLEI;
for (var k = 0; k < b.length; k++) {
var c = b[k].JCXM;
for (var f = 0; f < c.length; f++) {
//$("#dept").append("<option value='" + c[f].name + "'>" + c[f].name + "</option>");
//$scope.str.push();
$scope.RELYdata.push({ "mytext": "" + c[f].name + "", "PY": "SHZJ" })
//jsonarray.push(arr);
}
}
}
}
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
case "SP_DL":
$scope.RELYdata = [];
var dldata = Enumerable.From(shipinleibieshuju).Select(function (a) { return a.spdlName }).ToArray();
$scope.RELYdata.push({ "mytext": "" + dldata[0] + "", "PY": "GJZJ" })
for (var i1 = 1; i1 < dldata.length; i1++) {
$scope.RELYdata.push({ "mytext": "" + dldata[i1] + "", "PY": "SHZJ" })
}
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
case "SP_YL":
$scope.RELYdata = [];
//查看是否已选择 食品大类
var shangjixinxi1 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品大类" }).FirstOrDefault();
if (shangjixinxi1) {
var yldatas = Enumerable.From(shipinleibieshuju).Where(function (x) { return x.spdlName == shangjixinxi1.CXNR }).Select(function (a) { return a.spylName }).ToArray();
for (var i2 = 0; i2 < yldatas.length; i2++) {
var yldata = Enumerable.From(yldatas[i2]).Select(function (a) { return a.spylName }).ToArray();
for (var i3 = 0; i3 < yldata.length; i3++) {
$scope.RELYdata.push({ "mytext": "" + yldata[i3] + "", "PY": "SHZJ" })
}
}
} else {
var yldatas = Enumerable.From(shipinleibieshuju).Select(function (a) { return a.spylName }).ToArray();
for (var i2 = 0; i2 < yldatas.length; i2++) {
var yldata = Enumerable.From(yldatas[i2]).Select(function (a) { return a.spylName }).ToArray();
for (var i3 = 0; i3 < yldata.length; i3++) {
$scope.RELYdata.push({ "mytext": "" + yldata[i3] + "", "PY": "SHZJ" })
}
}
}
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
case "SP_PZ":
$scope.RELYdata = [];
//查看是否已选择 食品大类
var shangjixinxi2 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品大类" }).FirstOrDefault();
//查看是否已选择 食品亚类
var shangjixinxi3 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品亚类" }).FirstOrDefault();
var yldatas = Enumerable.From(shipinleibieshuju).ToArray();
if (shangjixinxi2) {
yldatas = Enumerable.From(yldatas).Where(function (x) { return x.spdlName == shangjixinxi2.CXNR }).Select(function (a) { return a.spylName }).ToArray();
} else {
yldatas = Enumerable.From(yldatas).Select(function (a) { return a.spylName }).ToArray();
}
for (var i2 = 0; i2 < yldatas.length; i2++) {
var zldatas = Enumerable.From(yldatas[i2]).Where(function (a) { return !shangjixinxi3 ? true : a.spylName == shangjixinxi3.CXNR }).Select(function (a) { return a.spzlName }).ToArray();
for (var i3 = 0; i3 < zldatas.length; i3++) {
var zldata = Enumerable.From(zldatas[i3]).Select(function (a) { return a.spzlNames }).ToArray();
for (var i4 = 0; i4 < zldata.length; i4++) {
$scope.RELYdata.push({ "mytext": "" + zldata[i4] + "", "PY": "SHZJ" })
}
}
}
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
case "SP_XL":
$scope.RELYdata = [];
//查看是否已选择 食品大类
var shangjixinxi2 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品大类" }).FirstOrDefault();
//查看是否已选择 食品亚类
var shangjixinxi3 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品亚类" }).FirstOrDefault();
//查看是否已选择 食品品种
var shangjixinxi4 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品品种" }).FirstOrDefault();
var yldatas = Enumerable.From(shipinleibieshuju).Where(function (x) { return !shangjixinxi2 ? true : x.spdlName == shangjixinxi2.CXNR }).Select(function (a) { return a.spylName }).ToArray();
for (var i2 = 0; i2 < yldatas.length; i2++) {
var zldatas = Enumerable.From(yldatas[i2]).Where(function (a) { return !shangjixinxi3 ? true : a.spylName == shangjixinxi3.CXNR }).Select(function (a) { return a.spzlName }).ToArray();
for (var i3 = 0; i3 < zldatas.length; i3++) {
var xldatas = Enumerable.From(zldatas[i3]).Where(function (a) { return !shangjixinxi4 ? true : a.spzlNames == shangjixinxi4.CXNR }).Select(function (a) { return a.spxlNames }).ToArray();
for (var i4 = 0; i4 < xldatas.length; i4++) {
for (var i5 = 0; i5 < xldatas[i4].length; i5++) {
$scope.RELYdata.push({ "mytext": "" + xldatas[i4][i5] + "", "PY": "SHZJ" })
}
}
}
}
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
case "ZXNY":
$scope.isdate = true;
$scope.RWLYSHOW = false;
$scope.SouSuoShow = false;
break;
case "SCJGGJRQ":
$scope.isdate = true;
$scope.RWLYSHOW = false;
$scope.SouSuoShow = false;
break;
case "YPJZRQ":
$scope.isdate = true;
$scope.RWLYSHOW = false;
$scope.SouSuoShow = false;
break;
case "BCYDWSJ":
$scope.isdate = true;
$scope.RWLYSHOW = false;
$scope.SouSuoShow = false;
break;
case "CYSJ":
$scope.isdate = true;
$scope.RWLYSHOW = false;
$scope.SouSuoShow = false;
break;
//任务来源
case "RWLY":
$scope.RELYdata = [
{ "mytext": "国家食品药品监督管理总局", "PY": "GJZJ" },
{ "mytext": "上海市食品药品监督管理局", "PY": "SHZJ" },
{ "mytext": "上海市市场监督管理局", "PY": "GJZJ" },
{ "mytext": "国家市场监督管理总局", "PY": "GJZJ" },
];
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
//检测类型
case "RWLX":
$scope.RELYdata = [
{ "mytext": "风险监测", "PY": "GJZJ" },
{ "mytext": "监督抽检", "PY": "SHZJ" },
{ "mytext": "评价性抽检", "PY": "SHZJ" },
];
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
//抽样方式
case "CYFS":
$scope.RELYdata = [
{ "mytext": "无菌抽样", "PY": "GJZJ" },
{ "mytext": "非无菌抽样", "PY": "SHZJ" }
];
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
//样品型态
case "YPXT":
$scope.RELYdata = [
{ "mytext": "固体", "PY": "GJZJ" },
{ "mytext": "半固体", "PY": "SHZJ" },
{ "mytext": "液体", "PY": "SHZJ" },
{ "mytext": "气体", "PY": "SHZJ" }
];
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
case "JieGuo":
//合格,不合格,问题,不作评价,不合格 / 问题
$scope.RELYdata = [
{ "mytext": "合格", "PY": "GJZJ" },
{ "mytext": "不合格", "PY": "SHZJ" },
{ "mytext": "不作评价", "PY": "SHZJ" },
{ "mytext": "问题", "PY": "SHZJ" },
{ "mytext": "不合格/问题", "PY": "SHZJ" }
];
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
//常规监测、专项监测、应急监测、监督抽检/专项抽检、应急抽检、常规抽检
case "RWXZ":
$scope.RELYdata = [
{ "mytext": "常规监测", "PY": "GJZJ" },
{ "mytext": "专项监测", "PY": "SHZJ" },
{ "mytext": "应急监测", "PY": "SHZJ" },
{ "mytext": "监督抽检", "PY": "SHZJ" },
{ "mytext": "专项抽检", "PY": "SHZJ" },
{ "mytext": "应急抽检", "PY": "SHZJ" },
{ "mytext": "常规抽检", "PY": "SHZJ" },
];
$scope.isdate = false;
$scope.RWLYSHOW = true;
$scope.SouSuoShow = false;
break;
default:
$scope.isdate = false;
$scope.RWLYSHOW = false;
$scope.SouSuoShow = true;
}
$timeout(function () {
$("#dept").trigger("chosen:updated");
}, 100, false);
}
/////*******************总的查询*****************/
$scope.ChaXun = function () {
var wherestr = angular.toJson($scope.TJTable);
if ($scope.TJTable.length <= 0) {
wherestr = "";
}
wherestr = wherestr.replace('+', '%2B');
$scope.wherestr = wherestr;
$scope.tableState.pagination.start = 0;
$scope.getService($scope.tableState, null);
}
$scope.ChaXun2 = function () {
var wherestr = angular.toJson($scope.TJTable);
if ($scope.TJTable.length <= 0) {
wherestr = "";
}
$scope.wherestr = wherestr;
$scope.tableState.pagination.start = 0;
$scope.getService2($scope.tableState, null);
}
$scope.DaoChu = function () {
var wherestr = angular.toJson($scope.TJTable);
//$http.get(Gaddress + '/home/GetTaMadeZuHeChaXun_DAOCHU?wherestr=' + wherestr,{}).success(function (mydata) {
// alert("导出成功");
// return mydata;
//})
window.location.href = '/home/GetTaMadeZuHeChaXun_DAOCHU?wherestr=' + wherestr;
}
/**************************************************************************************/
//通过STMATETable 分页显示数据
//以下的参数每个控制器都要有一份
tableState = { counrt: 0, pagination: { start: 0 }, search: {}, sort: {} }; //这个参数后面会让每次访问服务器后进行同步返回的值赋值,作为中间值使用
$scope.selectList = []; //这个参数会让每次选中或者没有选中的条目直接暴露在这个值里面
$scope.searchSql = ""; //这个参数是自己组合相关的复杂查询条件
$scope.isShow = false; //这个参数主要进行页面加载的loading显示的directive的值得操作
$scope.itemsOptions = [5, 10, 20, 50, 100, 200]; //这个参数进行分页页面上面的每页多少条的设置
$scope.curpageNumber = 10; //这个参数传递当前的每页多少条的数据
//任何动作都会触发服务端的接口
$scope.getService = function (tableState, ctrl) {
if (!tableState.pagination.number) {
tableState.pagination.number = $scope.curpageNumber;
}
$http.get(Gaddress + '/home/GetTaMadeZuHeChaXun?wherestr=' + $scope.wherestr + '&tiaoguo=' + tableState.pagination.start + '&huoqu=' + tableState.pagination.number, {}).success(function (mydata) {
$scope.displayed = mydata.MYJsonDB;
$scope.zongxiangcishu = mydata.MYZongXiangCi;
$scope.isShow = false;
//当前页面的ID号数组
$scope.ids = Enumerable.From($scope.displayed).Select(function (x) { return x._id }).ToArray();
//计算当前界面 项次数合计
$scope.xiangciheji = Enumerable.From($scope.displayed).Select(function (x) { return x.JCXXX.length }).Sum();
//表格数量
$scope.myttt = mydata.MYCount;
tableState.count = mydata.MYCount;
tableState.pagination.numberOfPages = Math.ceil(mydata.MYCount / $scope.curpageNumber);
$scope.inputPage = tableState.pagination.numberOfPages;
$scope.tableState = tableState;
$scope.$broadcast('checkini');
})
};
$scope.getService2 = function (tableState, ctrl) {
//if (!wherestr || !wherestr) {
// wherestr = "";
//}
if (!tableState.pagination.number) {
tableState.pagination.number = $scope.curpageNumber;
}
$http.get(Gaddress + '/home/GetTaMadeZuHeChaXun?wherestr=' + $scope.wherestr + '&tiaoguo=' + tableState.pagination.start + '&huoqu=' + tableState.pagination.number, {}).success(function (mydata) {
$scope.displayed = mydata.MYJsonDB;
$scope.zongxiangcishu = mydata.MYZongXiangCi;
$scope.isShow = false;
//当前页面的ID号数组
$scope.ids = Enumerable.From($scope.displayed).Select(function (x) { return x._id }).ToArray();
//计算当前界面 项次数合计
$scope.xiangciheji = Enumerable.From($scope.displayed).Select(function (x) { return x.JCXXX.length }).Sum();
//表格数量
$scope.myttt = mydata.MYCount;
tableState.count = mydata.MYCount;
tableState.pagination.numberOfPages = Math.ceil(mydata.MYCount / $scope.curpageNumber);
$scope.inputPage = tableState.pagination.numberOfPages;
$scope.tableState = tableState;
$scope.$broadcast('checkini');
})
};
//模板的分页选择触发操作
$scope.setPageNumber = function (pageNo) {
tableState.pagination.number = pageNo;
$scope.getService($scope.tableState, null);
}
//查询参数的调用
$scope.search = function () {
$scope.searchSql = [$scope.sql];
$scope.getA($scope.tableState);
}
/**************************************************************************************/
$scope.XiuGai = function (id, cyd) {
//$state.go("app.SampleInspect", { id: id, CYDBH: '' });
dLayer.open({
type: 2,
area: ['1200px', '700px'],
content: '../index.html#/SampleInspectdialog/' + id + "//" //这里content是一个URL如果你不想让iframe出现滚动条你还可以content: ['http://sentsin.com', 'no']
});
}
$scope.items = 0;
$scope.open = function (YPBH) {
$scope.items = YPBH;
var modalInstance = $uibModal.open({
animation: true,
backdrop: false, // 不让点击背景关闭系统
templateUrl: 'app/model/modalTemplate.html',
controller: 'uibModalInstanceCtrl',
size: 'lg',
//windowTopClass:'dialog'
resolve: {
items: function () {
return $scope.items;
}
}
});
modalInstance.result.then(
function (nclose) { $scope.returnData = nclose },
function (ndismiss) { $scope.returnData = ndismiss }
)
}
$scope.Myjson2 = [
{ "type": 1, "mytext": "任务编号", "PY": "RenWuBianHao" }
, { "type": 1, "mytext": "人员编号", "PY": "RenYuanBianHao" }
, { "type": 1, "mytext": "年龄", "PY": "NianLing" }
, { "type": 1, "mytext": "性别", "PY": "XingBie" }
, { "type": 1, "mytext": "民族", "PY": "MinZu" }
, { "type": 1, "mytext": "身高", "PY": "ShenGao_CM_" }
, { "type": 1, "mytext": "体重", "PY": "TiZhong_GongJin_" }
, { "type": 1, "mytext": "所属区", "PY": "SuoShuQu" }
, { "type": 1, "mytext": "街道", "PY": "JieDao" }
, { "type": 1, "mytext": "来源", "PY": "LaiYuan" }
, { "type": 1, "mytext": "社区", "PY": "SheQu" }
, { "type": 1, "mytext": "学校", "PY": "XueXiao_YiYuan" }
, { "type": 1, "mytext": "文化程度", "PY": "WenHuaChengDu" }
, { "type": 1, "mytext": "调查年份", "PY": "DiaoChaNianFen" }
, { "type": 1, "mytext": "食品PDA编号", "PY": "ShiPinFDABianHao" }
, { "type": 1, "mytext": "食品级别", "PY": "ShiPinJiBie" }
, { "type": 1, "mytext": "食品大类", "PY": "ShiPinDaLei" }
, { "type": 1, "mytext": "食品亚类", "PY": "ShiPinYaLei" }
, { "type": 1, "mytext": "食品品种", "PY": "ShiPinPinZhong" }
, { "type": 1, "mytext": "食品细类", "PY": "ShiPinXiaoLei" }
, { "type": 1, "mytext": "食物名称", "PY": "ShiWuMingChen" }
, { "type": 1, "mytext": "消费量", "PY": "XiaoFeiLiang_G_D_" }
];
$scope.Myjson12 = [
{ "myvalue": 1, "mytext": "等于" },
{ "myvalue": 7, "mytext": "不等于" },
{ "myvalue": 2, "mytext": "包含" },
{ "myvalue": 8, "mytext": "不包含" },
{ "myvalue": 3, "mytext": "大于" },
{ "myvalue": 4, "mytext": "小于" },
{ "myvalue": 5, "mytext": "大于等于" },
{ "myvalue": 6, "mytext": "小于等于" },
];
//////--------------------消费量---------------------------------------------------------
//添加条件
$scope.TJTable2 = [];
$scope.RWLYSHOW2 = false;
$scope.SouSuoShow2 = true;
$scope.addTJ2 = function (tjtype) {
if ($scope.TJTable2.length <= 0) {
tjtype = "";
}
if (!$scope.isdate2) {
if ($scope.myselpublic2 != undefined) {
$scope.mytxt2 = $scope.myselpublic2.mytext;
}
var aa = {
"lianjietype": tjtype,
"CXTJPY": $scope.mysel2.PY,
"CXTJ": $scope.mysel2.mytext,
"CXLX": $scope.mysel12.mytext,
"CXLXid": $scope.mysel12.myvalue,
"CXNR": $scope.mytxt2,
}
if (aa.CXTJ == "选择" || aa.CXLX == "选择" || ($scope.myselpublic2 ? $scope.myselpublic2.mytext == "选择" : true && $scope.RWLYSHOW2)) {
return;
}
var myll = Enumerable.From($scope.TJTable2).Where(function (x) { return x.CXTJ == aa.CXTJ && x.CXLX == aa.CXLX && x.CXNR == aa.CXNR }).ToArray();
if (myll.length > 0) {
alert("您已经添加过此条件");
} else {
$scope.TJTable2.push(aa);
//$scope.TJTable = Enumerable.From($scope.TJTable).ToArray();
// console.log(angular.toJson($scope.TJTable));
}
} else {
var kaishishijian = format($scope.datebegin);
var jieshushijian = format($scope.dateend);
var aa1 = {
"lianjietype": tjtype,
"CXTJPY": $scope.mysel2.mytext == "执行年月" ? "ZXNY_KS" : $scope.mysel2.PY,
"CXTJ": $scope.mysel2.mytext == "执行年月" ? "执行年月开始" : $scope.mysel2.mytext,
"CXLX": "大于等于",
"CXLXid": 5,
"CXNR": kaishishijian,
}
var aa2 = {
"lianjietype": "and",
"CXTJPY": $scope.mysel2.mytext == "执行年月" ? "ZXNY_JS" : $scope.mysel2.PY,
"CXTJ": $scope.mysel2.mytext == "执行年月" ? "执行年月结束" : $scope.mysel2.mytext,
"CXLX": "小于等于",
"CXLXid": 6,
"CXNR": jieshushijian,
}
$scope.TJTable2.push(aa1);
$scope.TJTable2.push(aa2);
//$scope.TJTable = Enumerable.From($scope.TJTable).ToArray();
}
}
//删除条件
$scope.deleteTJ2 = function (index) {
var aa = $scope.TJTable2.indexOf(index);
$scope.TJTable2.splice(aa, 1);
}
//改变事件
$scope.MyjsonChange2 = function () {
$scope.RELYdata2 = [];
$scope.myselpublic2 = undefined;
$scope.mytxt2 = "";
switch ($scope.mysel2.PY) {
/////////////////////////////////////////////////最新食品分类(以2016年为准)//////////////////////////////////////////////////
case "ShiPinDaLei":
$scope.RELYdata2 = [];
var dldata = Enumerable.From(shipinleibieshuju).Select(function (a) { return a.spdlName }).ToArray();
$scope.RELYdata2.push({ "mytext": "" + dldata[0] + "", "PY": "GJZJ" })
for (var i1 = 1; i1 < dldata.length; i1++) {
$scope.RELYdata2.push({ "mytext": "" + dldata[i1] + "", "PY": "SHZJ" })
}
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
case "ShiPinYaLei":
$scope.RELYdata2 = [];
var shangjixinxi1 = Enumerable.From($scope.TJTable2).Where(function (x) { return x.CXTJ == "食品大类" }).FirstOrDefault();
if (shangjixinxi1) {
var yldatas = Enumerable.From(shipinleibieshuju).Where(function (x) { return x.spdlName == shangjixinxi1.CXNR }).Select(function (a) { return a.spylName }).ToArray();
for (var i2 = 0; i2 < yldatas.length; i2++) {
var yldata = Enumerable.From(yldatas[i2]).Select(function (a) { return a.spylName }).ToArray();
for (var i3 = 0; i3 < yldata.length; i3++) {
$scope.RELYdata2.push({ "mytext": "" + yldata[i3] + "", "PY": "SHZJ" })
}
}
} else {
var yldatas = Enumerable.From(shipinleibieshuju).Select(function (a) { return a.spylName }).ToArray();
for (var i2 = 0; i2 < yldatas.length; i2++) {
var yldata = Enumerable.From(yldatas[i2]).Select(function (a) { return a.spylName }).ToArray();
for (var i3 = 0; i3 < yldata.length; i3++) {
$scope.RELYdata2.push({ "mytext": "" + yldata[i3] + "", "PY": "SHZJ" })
}
}
}
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
case "ShiPinPinZhong":
$scope.RELYdata2 = [];
//查看是否已选择 食品大类
var shangjixinxi2 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品大类" }).FirstOrDefault();
//查看是否已选择 食品亚类
var shangjixinxi3 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品亚类" }).FirstOrDefault();
var yldatas = Enumerable.From(shipinleibieshuju).ToArray();
if (shangjixinxi2) {
yldatas = Enumerable.From(yldatas).Where(function (x) { return x.spdlName == shangjixinxi2.CXNR }).Select(function (a) { return a.spylName }).ToArray();
} else {
yldatas = Enumerable.From(yldatas).Select(function (a) { return a.spylName }).ToArray();
}
for (var i2 = 0; i2 < yldatas.length; i2++) {
var zldatas = Enumerable.From(yldatas[i2]).Where(function (a) { return !shangjixinxi3 ? true : a.spylName == shangjixinxi3.CXNR }).Select(function (a) { return a.spzlName }).ToArray();
for (var i3 = 0; i3 < zldatas.length; i3++) {
var zldata = Enumerable.From(zldatas[i3]).Select(function (a) { return a.spzlNames }).ToArray();
for (var i4 = 0; i4 < zldata.length; i4++) {
$scope.RELYdata2.push({ "mytext": "" + zldata[i4] + "", "PY": "SHZJ" })
}
}
}
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
case "ShiPinXiaoLei":
$scope.RELYdata2 = [];
//查看是否已选择 食品大类
var shangjixinxi2 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品大类" }).FirstOrDefault();
//查看是否已选择 食品亚类
var shangjixinxi3 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品亚类" }).FirstOrDefault();
//查看是否已选择 食品品种
var shangjixinxi4 = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "食品品种" }).FirstOrDefault();
var yldatas = Enumerable.From(shipinleibieshuju).Where(function (x) { return !shangjixinxi2 ? true : x.spdlName == shangjixinxi2.CXNR }).Select(function (a) { return a.spylName }).ToArray();
for (var i2 = 0; i2 < yldatas.length; i2++) {
var zldatas = Enumerable.From(yldatas[i2]).Where(function (a) { return !shangjixinxi3 ? true : a.spylName == shangjixinxi3.CXNR }).Select(function (a) { return a.spzlName }).ToArray();
for (var i3 = 0; i3 < zldatas.length; i3++) {
var xldatas = Enumerable.From(zldatas[i3]).Where(function (a) { return !shangjixinxi4 ? true : a.spzlNames == shangjixinxi4.CXNR }).Select(function (a) { return a.spxlNames }).ToArray();
for (var i4 = 0; i4 < xldatas.length; i4++) {
for (var i5 = 0; i5 < xldatas[i4].length; i5++) {
$scope.RELYdata2.push({ "mytext": "" + xldatas[i4][i5] + "", "PY": "SHZJ" })
}
}
}
}
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
////////////////////////////////////////////////////////////////////////////////////////////////////////////
case "ZXNY":
$scope.isdate2 = true;
$scope.RWLYSHOW2 = false;
$scope.SouSuoShow2 = false;
break;
case "SCJGGJRQ":
$scope.isdate2 = true;
$scope.RWLYSHOW2 = false;
$scope.SouSuoShow2 = false;
break;
case "YPJZRQ":
$scope.isdate2 = true;
$scope.RWLYSHOW2 = false;
$scope.SouSuoShow2 = false;
break;
case "BCYDWSJ":
$scope.isdate2 = true;
$scope.RWLYSHOW2 = false;
$scope.SouSuoShow2 = false;
break;
case "CYSJ":
$scope.isdate2 = true;
$scope.RWLYSHOW2 = false;
$scope.SouSuoShow2 = false;
break;
//任务来源
case "RWLY":
$scope.RELYdata2 = [
{ "mytext": "国家食品药品监督管理总局", "PY": "GJZJ" },
{ "mytext": "上海市食品药品监督管理局", "PY": "SHZJ" }
];
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
//检测类型
case "RWLX":
$scope.RELYdata2 = [
{ "mytext": "风险监测", "PY": "GJZJ" },
{ "mytext": "监督抽检", "PY": "SHZJ" },
];
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
//抽样方式
case "CYFS":
$scope.RELYdata2 = [
{ "mytext": "无菌抽样", "PY": "GJZJ" },
{ "mytext": "非无菌抽样", "PY": "SHZJ" }
];
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
//样品型态
case "YPXT":
$scope.RELYdata2 = [
{ "mytext": "固体", "PY": "GJZJ" },
{ "mytext": "半固体", "PY": "SHZJ" },
{ "mytext": "液体", "PY": "SHZJ" },
{ "mytext": "气体", "PY": "SHZJ" }
];
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
case "JieGuo":
//合格,不合格,问题,不作评价,不合格 / 问题
$scope.RELYdata2 = [
{ "mytext": "合格", "PY": "GJZJ" },
{ "mytext": "不合格", "PY": "SHZJ" },
{ "mytext": "不作评价", "PY": "SHZJ" },
{ "mytext": "问题", "PY": "SHZJ" },
{ "mytext": "不合格/问题", "PY": "SHZJ" }
];
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
//常规监测、专项监测、应急监测、监督抽检
case "RWXZ":
$scope.RELYdata2 = [
{ "mytext": "常规监测", "PY": "GJZJ" },
{ "mytext": "专项监测", "PY": "SHZJ" },
{ "mytext": "应急监测", "PY": "SHZJ" },
{ "mytext": "监督抽检", "PY": "SHZJ" },
];
$scope.isdate2 = false;
$scope.RWLYSHOW2 = true;
$scope.SouSuoShow2 = false;
break;
default:
$scope.isdate2 = false;
$scope.RWLYSHOW2 = false;
$scope.SouSuoShow2 = true;
}
}
var da = 0;//延迟功能判断
$scope.danweiNew = "mg/kgbw/d";
$scope.jcxm = {
a: ''
};
$("#data").hide();
$("#daochu").hide();
$("#nianfen").hide();
$("#baobiao").hide();
$scope.jiancexiangmuName = "";
//数据加载显示,明显要弃用
//$scope.btn_clcik = function () {
// var wherestr = angular.toJson($scope.TJTable);
// if ($scope.TJTable.length <= 0) {
// wherestr = "";
// }
// $scope.wherestr = wherestr;
// //增加日志20211109
// addlog("小类评估", "查询[" + wherestr + "]")
// var te = JSON.parse(wherestr);
// console.log(te);
// for (var i = 0; i < te.length; i++) {
// if (te[i].CXTJPY == 'JCXM') {
// $scope.jiancexiangmuName = te[i].CXNR;
// $("#title1").html("");
// $("#title1").html("(" + te[i].CXNR + ")风险评估分析结果(小类)");
// $("#title2").html("");
// $("#title2").html("(" + te[i].CXNR + ")风险评估分析结果(小类)");
// }
// }
// var wherestr2 = angular.toJson($scope.TJTable2);
// if ($scope.TJTable2.length <= 0) {
// wherestr2 = "";
// }
// $scope.wherestr2 = wherestr2;
// console.log($scope.wherestr2);
// layui.use('table', function () {
// var table = layui.table;
// table.render({
// elem: '#test'
// , url: '/home/GetJiance3'
// , where: {
// wherestr: $scope.wherestr
// , wherestr2: $scope.wherestr2
// , num: 1
// }
// , parseData: function (res) { //res 即为原始返回的数据
// $scope.myPageData = res.datPage;
// console.log($scope.myPageData);
// $scope.danweiNew = '';
// $scope.danweiNew = $scope.myPageData.danwei;
// data = res.data;
// da = 1;
// return {
// "code" : res.code,
// "data": res.data.dataTable //解析数据列表
// };
// }
// , width: 1000
// , height: 330
// , cols: [[
// { field: 'shipingdalei', width: 120, align: 'center', fixed: 'left', title: '食品大类', sort: true }
// , { field: 'shipingyalei', width: 120, align: 'center', fixed: 'left', title: '食品亚类', sort: true }
// , { field: 'shipingpinzhong', width: 120, align: 'center', fixed: 'left', title: '食品品种', sort: true }
// , { field: 'shipingxiaolei', width: 120, align: 'center', fixed: 'left', title: '食品小类', sort: true }
// , { field: 'jianshu', width: 180,align:'right', title: '件数', sort: true }
// , { field: 'jiancezhipingjun', width: 180,align:'right', title: '检测值平均', sort: true }
// , { field: 'jiancezhizuida', width: 180,align:'right', title: '检测值最大', sort: true }
// , { field: 'renshu', width: 180,align:'right', title: '人数', sort: true }
// , { field: 'xiaofeiliangpingjun', width: 180,align:'right', title: '消费量平均g/d', sort: true }
// , { field: 'xiaofeiliangzuidazhi', width: 180,align:'right', title: '消费量最大值g/d', sort: true }
// , { field: 'xiaofeiliangP', width: 180,align:'right', title: '消费量P95g/d', sort: true }
// , { field: 'tizhongpingjunzhi', width: 180,align:'right', title: '体重平均值kg', sort: true }
// , { field: 'baoluliangqingjunzhi', width: 180,align:'right', title: '暴露量平均值', sort: true }
// , { field: 'baoluliangzuidazhi', width: 180,align:'right', title: '暴露量最大值', sort: true }
// , { field: 'baoluliangP', width: 180,align:'right', title: '暴露量P95', sort: true }
// , { field: 'zhanbi', width: 180,align:'right', title: 'ADI比值%', sort: true }
// ]]
// , page: false
// });
// });
// $timeout(function () {
// $scope.yanchi();
// //$scope.nianfenZheXianTu(1);
// }, 3000);
//}
//延迟判断功能
$scope.yanchi = function () {
if (da == 1) {
$("#data").show(); //查询的页面数据信息做成了一个table,纯粹没用
$("#daochu").show(); //导出按钮的显示隐藏,这里是显示,纯粹没有
$("#nianfen").show(); //年份按钮的显示隐藏,这里是显示,纯粹没用
//alert('1')
//$scope.nianfenZheXianTu(1); //也不搞个注释,传个1是啥子意思? 看到了,是看要不要网络加载数据
$scope.nianfenLineChart(); //新的方法折线图表的展示方法
$scope.baoluliang();
$scope.baoluliangADI();
da = 2;
} else {
$timeout(function () {
$scope.yanchi();
}, 3000);
}
}
//全屏数据展示
$scope.quanping = function () {
layui.use('table', function () {
console.log('myTablData', $scope.mytableData);
var table2 = layui.table;
table2.render({
elem: '#test2'
, data: $scope.myTableData
, limit: $scope.myTableData.length
,id : 'test22'
, width: 1000
, height: 500
, cols: [[
{ field: 'spdl', width: 120, align: 'center', fixed: 'left', title: '食品大类', sort: true }
, { field: 'spyl', width: 120, align: 'center', fixed: 'left', title: '食品亚类', sort: true }
, { field: 'sppz', width: 120, align: 'center', fixed: 'left', title: '食品品种', sort: true }
, { field: 'sp_xl', width: 120, align: 'center', fixed: 'left', title: '食品细类', sort: true }
, { field: 'ypxx_count', width: 120,align:'right', title: '件数', sort: true }
, { field: 'ypxx_avg', width: 120,align:'right', title: '检测值平均', sort: true }
, { field: 'ypxx_max', width: 120,align:'right', title: '检测值最大', sort: true }
, { field: 'renyuan_count', width: 120,align:'right', title: '人数', sort: true }
, { field: 'xfl_avg', width: 180,align:'right', title: '消费量平均g/d', sort: true }
, { field: 'xfl_max', width: 180,align:'right', title: '消费量最大值g/d', sort: true }
, { field: 'xfl_p95', width: 180,align:'right', title: '消费量P95g/d', sort: true }
, { field: 'xfl_tz_avg', width: 180,align:'right', title: '体重平均值kg', sort: true }
, { field: 'bll_avg', width: 180,align:'right', title: '暴露量平均值', sort: true }
, { field: 'bll_max', width: 180,align:'right', title: '暴露量最大值', sort: true }
, { field: 'bll_p95', width: 180,align:'right', title: '暴露量P95', sort: true }
, { field: 'bll_adi', width: 180,align:'right', title: 'ADI比值%', sort: true }
]]
});
$timeout(function () {
table2.reload('test22');
}, 3000);
});
}
//不合格率
$scope.buhegelv = function () {
console.log('sdfsdfsdTJTJTJTJT', $scope.TJTable, $scope.TJTable2)
var wherestr = angular.toJson($scope.TJTable);
//var wherestr2 = angular.toJson($scope.TJTable2);
$scope.wherestr = wherestr;
//$scope.wherestr2 = wherestr2;
if ($scope.TJTable.length <= 0 || $scope.TJTable2.length<=0) {
alert("请输入相应的污染物数据库查询条件以及消费量的相关查询条件,并且一定在污染库增加一条检测信息!");
return false;
}
layui.use('table', function () {
var table = layui.table;
table.render({
elem: '#buhegelv'
, url: '/home/buhegelv'
, where: {
wherestr: $scope.wherestr,
num:1
}
, parseData: function (res) { //res 即为原始返回的数据
return {
"code": res.code,
"data": res.data //解析数据列表
};
}
, width: 550
, height: 330
, cols: [[
{ field: 'SPXL', width: 100, align: 'center', title: '食品细类', sort: true }
, { field: 'JCXM', width: 100, align: 'center', title: '检测项目', sort: true }
, { field: 'count', width: 90, align: 'center', title: '总件数', sort: true }
, { field: 'no', width: 110, align: 'center', title: '不合格件数', sort: true }
, { field: 'lv', width: 120, align: 'right', title: '不合格率(%)', sort: true }
]]
, page: false
});
});
}
//$scope.buhegelv();
//不合格率导出
$scope.BHGLDC = function () {
window.location.href = '/home/BHGLDC';
}
//ADI比值前三值
$scope.ADI3 = function () {
$scope.ADIQ3 = Enumerable.From($scope.myTableData).OrderByDescending(function (x) { return x.bll_adi }).Take(3).ToArray();
console.log($scope.ADIQ3);
}
//大类,亚类,品种等统计的统一方法新编写20211129,解决了前端统一查询的问题,注意使用了linqjs和jinqjs两个组件组合使用,因为linqjs不能够leftjoin和groupby,而jinqjs不能够orderbyDecendant两个方法
$scope.leixingtongji = function (title,field) {
//$("#shiwuTitle").html("食品大类");
/////====================测试===================
//console.log('所有数据', $scope.myTableData);
//console.log('筛选数据', Enumerable.From($scope.myTableData).Where("$.spdl==null").ToArray());
//var tempD
var changeRowData_renyuan_count = function (row) {
var curRowRenShu = 0;ata1 = new jinqJs()
// .from($scope.myTableData)
// .groupBy(field).sum("ypxx_count", "renyuan_count", "bll_avg", "bll_adi")
// .select([{ text: "name", field: field }])
//console.log(tempData1)
//return;
//////====================测试结束===============================
$("#shiwuTitle").html(title);
var na = "";
if ($scope.jiancexiangmuName != "") {
na = "(" + $scope.jiancexiangmuName + ")";
}
//$("#fengxianName").html("风险评估" + na + "大类");
$("#fengxianName").html("风险评估" + na + title);
//更换是null值得方法
if (row.bll_avg != null) { //如果不是空,就要判断是否超过总人数
if (row.renyuan_count > $scope.myPageData.renshu_count) {
curRowRenShu = $scope.myPageData.renshu_count; //超过就是总人数的数量即可
} else {
curRowRenShu = row.renyuan_count; //没有超过就是当前的计算值得人数
}
} else {
curRowRenShu = 0;
}
return curRowRenShu;
}
var changeRowData_bll_avg = function (row) {
return (row.bll_avg == null ? 0 : row.bll_avg.toFixed(6));
}
var changeRowData_bll_adi = function (row) {
return (row.bll_adi == null ? 0 : row.bll_adi.toFixed(6));
}
var tempData = new jinqJs()
.from($scope.myTableData)
.groupBy(field).sum("ypxx_count", "renyuan_count", "bll_avg", "bll_adi")
.select([
{ text: "name", field: field },
{ text: "jianshu", field: "ypxx_count" },
{ text: "renshu", value: changeRowData_renyuan_count },
{ text: "baoluliangqingjunzhi", value: changeRowData_bll_avg },
{ text: "zhanbi", value: changeRowData_bll_adi }
])
$scope.Data = Enumerable.From(tempData).OrderByDescending("t=>t.zhanbi").ToArray();
console.log('daleidata', $scope.Data)
}
//大类
$scope.Data = [];
$scope.daleiOld = function () {
$("#shiwuTitle").html("食品大类");
console.log("大类调试", $scope.jiancexiangmuName)
var na = "";
if ($scope.jiancexiangmuName !="") {
na = "(" + $scope.jiancexiangmuName + ")";
}
$("#fengxianName").html("风险评估" + na + "(大类)");
$scope.Data = [];
var data = $scope.myTableData;
var dalei = "";
var jianshu = 0;
var baoluliangqingjunzhi = 0;
var zhanbi = 0;
var renshu = 0;
for (var i = 0; i < data.length; i++) {
if (i == 0) {
dalei = data[i].spdl;
jianshu = data[i].ypxx_count * 1;
baoluliangqingjunzhi = data[i].bll_avg * 1;
zhanbi = data[i].bll_adi * 1;
if (data.length == 1) {
var dT = {
"name": "" + data[i].spdl + "",
"jianshu": "" + data[i].ypxx_count + "",
"renshu": "" + data[i].renyuan_count + "",
"baoluliangqingjunzhi": "" + data[i].bll_avg.toFixed(6) + "",
"zhanbi": "" + data[i].bll_adi.toFixed(2) + ""
};
$scope.Data.push(dT);
}
} else {
var dd = data[i].spdl;
if (dalei == dd) {
//dalei = data[i].shipingdalei;
jianshu = jianshu + (data[i].ypxx_count*1);
baoluliangqingjunzhi = baoluliangqingjunzhi + (data[i].bll_avg*1);
zhanbi = zhanbi + (data[i].bll_adi * 1);
if (data[i].renyuan_count * 1 != 0) {
renshu = data[i].renyuan_count;
}
//renshu = renshu + (data[i].renshu * 1);
} else {
var dT = {
"name": "" + dalei + "",
"jianshu": "" + jianshu + "",
"renshu": "" + renshu + "",
"baoluliangqingjunzhi": "" + baoluliangqingjunzhi.toFixed(6) + "",
"zhanbi": "" + zhanbi.toFixed(2) + ""
};
$scope.Data.push(dT);
dalei = dd;
jianshu = data[i].ypxx_count * 1;
baoluliangqingjunzhi = data[i].bll_avg * 1;
zhanbi = data[i].bll_adi * 1;
renshu = data[i].renyuan_count * 1;
}
if (i ==( data.length - 1)) {
var dT = {
"name": "" + dalei + "",
"jianshu": "" + jianshu + "",
"renshu": "" + renshu + "",
"baoluliangqingjunzhi": "" + baoluliangqingjunzhi.toFixed(6) + "",
"zhanbi": "" + zhanbi.toFixed(2) + ""
};
$scope.Data.push(dT);
}
//console.log(dd);
}
}
console.log($scope.Data);
}
//亚类
$scope.yalei = function () {
$("#shiwuTitle").html("食品亚类");
var na = "";
if ($scope.jiancexiangmuName != "") {
na = "(" + $scope.jiancexiangmuName + ")";
}
$("#fengxianName").html("风险评估" + na + "(亚类)");
$scope.Data = [];
var data = $scope.myTableData;
var yalei = "";
var jianshu = 0;
var baoluliangqingjunzhi = 0;
var zhanbi = 0;
var renshu = 0;
for (var i = 0; i < data.length; i++) {
if (i == 0) {
yalei = data[i].spyl;
jianshu = data[i].ypxx_count * 1;
baoluliangqingjunzhi = data[i].bll_avg * 1;
zhanbi = data[i].bll_adi * 1;
if (data.length == 1) {
var dT = {
"name": "" + data[i].spyl + "",
"jianshu": "" + data[i].ypxx_count + "",
"renshu": "" + data[i].renyuan_count + "",
"baoluliangqingjunzhi": "" + data[i].bll_avg.toFixed(6) + "",
"zhanbi": "" + data[i].bll_adi.toFixed(2) + ""
};
$scope.Data.push(dT);
}
} else {
var dd = data[i].spyl;
if (yalei == dd) {
//dalei = data[i].shipingdalei;
jianshu = jianshu + (data[i].ypxx_count * 1);
baoluliangqingjunzhi = baoluliangqingjunzhi + (data[i].bll_avg * 1);
zhanbi = zhanbi + (data[i].bll_adi * 1);
if (data[i].renshu * 1 != 0) {
renshu = data[i].renyuan_count;
}
//renshu = renshu + (data[i].renshu * 1);
} else {
var dT = {
"name": "" + yalei + "",
"jianshu": "" + jianshu + "",
"renshu": "" + renshu + "",
"baoluliangqingjunzhi": "" + baoluliangqingjunzhi.toFixed(6) + "",
"zhanbi": "" + zhanbi.toFixed(2) + ""
};
$scope.Data.push(dT);
yalei = dd;
jianshu = data[i].ypxx_count * 1;
baoluliangqingjunzhi = data[i].bll_avg * 1;
zhanbi = data[i].bll_adi * 1;
renshu = data[i].renyuan_count * 1;
}
if (i == data.length - 1) {
var dT = {
"name": "" + yalei + "",
"jianshu": "" + jianshu + "",
"renshu": "" + renshu + "",
"baoluliangqingjunzhi": "" + baoluliangqingjunzhi.toFixed(6) + "",
"zhanbi": "" + zhanbi.toFixed(2) + ""
};
$scope.Data.push(dT);
}
//console.log(dd);
}
}
console.log($scope.Data);
}
//品种
$scope.pinzhong = function () {
$("#shiwuTitle").html("食品品种");
var na = "";
if ($scope.jiancexiangmuName != "") {
na = "(" + $scope.jiancexiangmuName + ")";
}
$("#fengxianName").html("风险评估" + na + "(品种)");
$scope.Data = [];
var data = $scope.myTableData;
var pinzhong = "";
var jianshu = 0;
var baoluliangqingjunzhi = 0;
var zhanbi = 0;
var renshu = 0;
for (var i = 0; i < data.length; i++) {
if (i == 0) {
pinzhong = data[i].sppz;
jianshu = data[i].ypxx_count * 1;
baoluliangqingjunzhi = data[i].bll_avg * 1;
zhanbi = data[i].bll_adi * 1;
if (data.length == 1) {
var dT = {
"name": "" + data[i].sppz + "",
"jianshu": "" + data[i].ypxx_count + "",
"renshu": "" + data[i].renyuan_count + "",
"baoluliangqingjunzhi": "" + data[i].bll_avg.toFixed(6) + "",
"zhanbi": "" + data[i].bll_adi.toFixed(2) + ""
};
$scope.Data.push(dT);
}
} else {
var dd = data[i].sppz;
if (pinzhong == dd) {
//dalei = data[i].shipingdalei;
debugger;
console.log(data[i].ypxx_count * 1)
console.log(jianshu)
jianshu = jianshu + (data[i].ypxx_count * 1);
baoluliangqingjunzhi = baoluliangqingjunzhi + (data[i].bll_avg * 1);
zhanbi = zhanbi + (data[i].bll_adi * 1);
if (data[i].renyuan_count * 1 != 0) {
renshu = data[i].renyuan_count;
}
//renshu = renshu + (data[i].renshu * 1);
} else {
var dT = {
"name": "" + pinzhong + "",
"jianshu": "" + jianshu + "",
"renshu": "" + renshu + "",
"baoluliangqingjunzhi": "" + baoluliangqingjunzhi.toFixed(6) + "",
"zhanbi": "" + zhanbi.toFixed(2) + ""
};
$scope.Data.push(dT);
pinzhong = dd;
jianshu = data[i].ypxx_count * 1;
baoluliangqingjunzhi = data[i].bll_avg * 1;
zhanbi = data[i].bll_adi * 1;
renshu = data[i].renyuan_count * 1;
}
if (i == data.length - 1) {
var dT = {
"name": "" + pinzhong + "",
"jianshu": "" + jianshu + "",
"renshu": "" + renshu + "",
"baoluliangqingjunzhi": "" + baoluliangqingjunzhi.toFixed(6) + "",
"zhanbi": "" + zhanbi.toFixed(2) + ""
};
$scope.Data.push(dT);
}
//console.log(dd);
}
}
console.log($scope.Data);
}
//导出
$scope.excel = function(){
window.location.href = '/home/JCXM_excel?wherestr=' + $scope.wherestr + '&wherestr2=' + $scope.wherestr2 + '&num=1';
}
$scope.str = [];
//显示所有检测项目
$scope.show = function () {
$http.get(Gaddress + '/home/GetAllJXCM', {}).success(function (mydata) {
//$scope.jcxmLX = JSON.parse(mydata);
$scope.GetAllJXCM = JSON.parse(mydata);
// var cTime = document.getElementById("usertype");
})
}
$scope.show();
layui.use('element', function () {
var element = layui.element;
//layui.element.init();
});
$scope.ok = function () {
$uibModalInstance.close(); //close方法会将参数值回调返回。
};
$scope.cancel = function () {
$uibModalInstance.dismiss('cancel'); //关闭模态框,也会执行回调。
};
//年份操作
$scope.btn_nianfen = function () {
$scope.nianfenData = [];
var niafen_data = $scope.ZheXianTudata;
console.log('nianfen_data',niafen_data);
var nianfen = Enumerable.From(niafen_data).Distinct(function (x) { return x.nianfen }).Select(function (x) { return x.nianfen }).OrderBy().ToArray();
var nianfen = ['2005', '2006', '2007', '2008', '2009', '2010', '2011', '2012', '2013', '2014', '2015', '2016', '2017', '2018', '2019', '2020', '2021']
console.log(nianfen);
for (var i = 0; i < nianfen.length; i++) {
$scope.nianfenData.push({ "nianfen": "" + nianfen[i] + "" });
}
}
//根据年份查询数据
$scope.btn_data = function (nianfen) {
//alert(nianfen);
var a = "#nianfenData" + nianfen;
layui.use('table', function () {
var table = layui.table;
table.render({
elem: a
, url: Gaddress + '/fengxianpinggu/GetFengXianResult'
, where: {
wherestr: $scope.wherestr
, wherestr2: $scope.wherestr2
, nianfen: nianfen
, num: 1
}
, parseData: function (res) { //res 即为原始返回的数据
debugger;
$scope.nianfenPGData = res.dataTable;
console.log("按年分的表格信息",res.dataTable);
$("#td1" + nianfen + "").empty()
$("#td1" + nianfen + "").append("食品大类:" + res.dataPage.shipindalei_count);
$("#td2" + nianfen + "").empty()
$("#td2" + nianfen + "").append("食品品种:" + res.dataPage.shipinpinzhong_count);
$("#td3" + nianfen + "").empty()
$("#td3" + nianfen + "").append("食品亚类:" + res.dataPage.shipinyalei_count);
$("#td4" + nianfen + "").empty()
$("#td4" + nianfen + "").append("食品细类:" + res.dataPage.shipinxiaolei_count);
$("#td5" + nianfen + "").empty()
$("#td5" + nianfen + "").append("抽检件数合计:" + res.dataPage.choujianjianshu_count);
$("#td6" + nianfen + "").empty()
$("#td6" + nianfen + "").append("消费量调查人数:" + res.dataPage.renshu_count);
$("#td7" + nianfen + "").empty()
$("#td7" + nianfen + "").append("暴露总量:" + res.dataPage.baoluzongliang);
$("#td8" + nianfen + "").empty()
$("#td8" + nianfen + "").append("健康指导值:" + res.dataPage.jiankangzhidaozhi);
$("#td9" + nianfen + "").empty()
$("#td9" + nianfen + "").append("单位:" + res.dataPage.danwei);
$("#td10" + nianfen + "").empty()
$("#td10" + nianfen + "").append("暴露量ADI比值" + res.dataPage.baoluliangbizhi + "%");
return {
"code": res.code,
"data": res.dataTable //解析数据列表
};
}
, width: 1150
, height: 300
, cols: [[
{ field: 'spdl', width: 120, align: 'center', fixed: 'left', title: '食品大类', sort: true }
, { field: 'spyl', width: 120, align: 'center', fixed: 'left', title: '食品亚类', sort: true }
, { field: 'sppz', width: 120, align: 'center', fixed: 'left', title: '食品品种', sort: true }
, { field: 'sp_xl', width: 120, align: 'center', fixed: 'left', title: '食品细类', sort: true }
, { field: 'ypxx_count', width: 180,align:'right', title: '件数', sort: true }
, { field: 'ypxx_avg', width: 180,align:'right', title: '检测值平均', sort: true }
, { field: 'ypxx_max', width: 180,align:'right', title: '检测值最大', sort: true }
, { field: 'renyuan_count', width: 180,align:'right', title: '人数', sort: true }
, { field: 'xfl_avg', width: 180,align:'right', title: '消费量平均g/d', sort: true }
, { field: 'xfl_max', width: 180,align:'right', title: '消费量最大值g/d', sort: true }
, { field: 'xfl_p95', width: 180,align:'right', title: '消费量P95g/d', sort: true }
, { field: 'xfl_tz_avg', width: 180,align:'right', title: '体重平均值kg', sort: true }
, { field: 'bll_avg', width: 180,align:'right', title: '暴露量平均值', sort: true }
, { field: 'bll_max', width: 180,align:'right', title: '暴露量最大值', sort: true }
, { field: 'bll_p95', width: 180,align:'right', title: '暴露量P95', sort: true }
, { field: 'bll_adi', width: 180, align: 'right', title: 'ADI比值(%)', sort: true }
]]
, page: false
});
});
}
//年份折线图
$scope.nianfenZheXianTu = function (aaa) {
//alert('test1',aaa)
var XData = ['2007', '2008', '2009', '2010', '2011', '2012', '2013', '2014', '2015', '2016', '2017', '2018', '2019'];
var YData = ["0.000314", "0.017787", "0.001765", "0.001289", "0.001846", "0.000113", "0.002834", "0.003015", "0.004373", "0.002099", "0.00149", "0.001297", "0.001238"];
var zhidao = 0.036;
if (aaa == 0) {
console.log($scope.ZheXianTudata);
if ($scope.ZheXianTudata != null) {
zhidao = $scope.myPageData.jiankangzhidaozhi;
XData = [];
YData = [];
for (var i = 0; i < $scope.ZheXianTudata.length; i++) {
XData.push($scope.ZheXianTudata[i].nianfen);
YData.push($scope.ZheXianTudata[i].sum);
}
}
var ti = '各年份全人群平均暴露量(' + $scope.danweiNew + '';
var zhexiantu = echarts.init(document.getElementById("zhexiantu"));
var option = {
title: {
text: ti,
left: 'center',
},
/* 线条颜色,可设置多个颜色 */
color: ['#ffa82f'],
/* 图像四周边距设置 */
grid: {
left: 70,
top: 30,
right: 20,
bottom: 80
},
/* 图例说明 */
//legend: {
// // 图例排项 vertical-"竖向"; horizontal-"横向"
// orient: 'horizontal',
// // 图例组件离容器左侧的距离
// right: 60,
// top: 0,
// //图例文字的样式
// textStyle: {
// color: '#6ab2ec',
// },
// // 与series中每个name一一对应
// data: ['暴露量平均值总和']
//},
/* 鼠标悬浮时显示数据 */
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
}
},
xAxis: {
type: 'category',
data: XData,
//设置轴线的属性
axisLine: {
lineStyle: {
color: '#6ab2ec',
}
},
//调整x轴的lable
axisLabel: {
textStyle: {
fontSize: 15 // 让字体变小
}
}
},
yAxis: {
type: 'value',
// 控制网格线是否显示
splitLine: {
show: true,
// 改变轴线颜色
lineStyle: {
// 使用深浅的间隔色
color: ['#132a6e']
}
},
//设置轴线的属性
axisLine: {
lineStyle: {
color: '#6ab2ec',
}
},
axisLabel: {
textStyle: {
fontSize: 15 // 让字体变小
}
}
},
/* 数据配置,若有多条折线则在数组中追加{name: , data: } */
series: [{
name: '暴露量平均值总和',
data: YData,
type: 'line',
symbol: 'circle',
// 设置折点大小
symbolSize: 10,
// 设置为光滑曲线
smooth: true,
markLine: {
silent: true,
lineStyle: {
normal: {
color: 'red' // 这儿设置安全基线颜色
}
},
data: [{
yAxis: zhidao
}],
label: {
normal: {
formatter: '安全\n基线' // 这儿设置安全基线
}
},
},
}, ]
};
zhexiantu.setOption(option);
}else{
$http.get(Gaddress + '/home/GetJiance5?wherestr=' + $scope.wherestr + '&wherestr2=' + $scope.wherestr2 + '&num=1', {}).success(function (mydata) {
//$("#baobiao").show();
$scope.ZheXianTudata = mydata.data;
console.log('zhexiantudata', $scope.ZheXianTudata);
$scope.nianfenZheXianTu(0);
})
}
}
//增加的方法,将有查询条件的年份的数据从返回的结果里面挑选过滤出来
$scope.checkZXNF = function (resData) {
console.log('$scope.TJTable', $scope.TJTable);
//先获取是否有执行年份的判断条件
let arrZXNF = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ =="执行年月开始" }).ToArray();
let startYear,endYear
console.log('arrZXNF', arrZXNF);
console.log('arrZXNF.length', arrZXNF.length);
//console.log('arrZXNF.count');
if (arrZXNF.length > 0) {
let data_startYear = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "执行年月开始" && x.CXLX == "大于等于" }).FirstOrDefault();
let data_endYear = Enumerable.From($scope.TJTable).Where(function (x) { return x.CXTJ == "执行年月结束" && x.CXLX == "小于等于" }).FirstOrDefault();
if (data_startYear != null && data_endYear != null) {
startYear = data_startYear.CXNR.split('/')[0];
endYear = data_endYear.CXNR.split('/')[0]
}
console.log("分解出来的两个年份", startYear, endYear);
let curYears = [];
//开始进行年份的筛选
for (var i = startYear; i <= endYear; i++) {
curYears.push(i + '');
}
console.log("完成的年份列表", curYears);
//下面模拟一下操作
let curRes = [
{
"name": "2005",
"value": 0
},
{
"name": "2006",
"value": 0
},
{
"name": "2007",
"value": 0
},
{
"name": "2008",
"value": 0
},
{
"name": "2009",
"value": 0
},
{
"name": "2010",
"value": 0
},
{
"name": "2011",
"value": 0
},
{
"name": "2012",
"value": 0
},
{
"name": "2013",
"value": 0.000231
},
{
"name": "2014",
"value": 0.000302
},
{
"name": "2015",
"value": 0.00028
},
{
"name": "2016",
"value": 0.000257
},
{
"name": "2017",
"value": 0.000161
},
{
"name": "2018",
"value": 0.000094
},
{
"name": "2019",
"value": 0.000158
},
{
"name": "2020",
"value": 0.000127
},
{
"name": "2021",
"value": 0.000093
}
];
let filterRes = Enumerable.From(resData).Where(function (x) { return curYears.indexOf(x.name) >= 0 }).ToArray();
console.log('filterRes', filterRes);
return filterRes
} else {
return resData;
}
}
//年份折线图新的内容图表
$scope.nianfenLineChart = function () {
//axios.get(mainUrl.replace('{{SPDL}}', this.selDaLei).replace('{{JCXM}}', this.selProject)).then((res) => { })
var zhidao=0.036
let mainUrl = 'http://192.168.0.251/FengXianPingGu/GetNianFenBaoLuLiang?wherestr=[';
XData =[], YData=[];
//mainUrl = mainUrl + '{"lianjietype":"and","CXTJPY":"JCXM","CXTJ":"检测项目","CXLX":"等于","CXLXid":1,"CXNR":"{{JCXM}}"}]';
mainUrl = Gaddress + '/FengXianPingGu/GetNianFenBaoLuLiang?wherestr=' +$scope.wherestr;
console.log(mainUrl);
$http.get(mainUrl).then(function (res) {
console.log("网络传回来的数据", res.data.data);
//增加一个处理如果有开始时间和结束时间的判断的方法,把不需要的时间给去除,其他暂时保留:
//先从现有判断里面分析是否有日期间隔
//如果有就查询条件加上把选择的日期调用出来
let filterData=$scope.checkZXNF(res.data.data)
XData = Enumerable.From(filterData).Select("$.name").Take(1000).ToArray();
YData = Enumerable.From(filterData).Select("$.value").Take(1000).ToArray();
SetChart();
})
const SetChart = function () {
console.log("XDATA_YDATA", XData,YData)
//if ($scope.ZheXianTudata != null) {
// zhidao = $scope.myPageData.jiankangzhidaozhi;
// //XData = [];
// //YData = [];
// for (var i = 0; i < $scope.ZheXianTudata.length; i++) {
// XData.push($scope.ZheXianTudata[i].nianfen);
// YData.push($scope.ZheXianTudata[i].sum);
// }
//}
var ti = '各年份全人群平均暴露量(' + $scope.danweiNew + '';
var zhexiantu = echarts.init(document.getElementById("zhexiantu"));
var option = {
title: {
text: ti,
left: 'center',
},
/* 线条颜色,可设置多个颜色 */
color: ['#ffa82f'],
/* 图像四周边距设置 */
grid: {
left: 70,
top: 30,
right: 20,
bottom: 80
},
/* 鼠标悬浮时显示数据 */
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
}
},
xAxis: {
type: 'category',
data: XData,
//设置轴线的属性
axisLine: {
lineStyle: {
color: '#6ab2ec',
}
},
//调整x轴的lable
axisLabel: {
textStyle: {
fontSize: 15 // 让字体变小
}
}
},
yAxis: {
type: 'value',
// 控制网格线是否显示
splitLine: {
show: true,
// 改变轴线颜色
lineStyle: {
// 使用深浅的间隔色
color: ['#132a6e']
}
},
//设置轴线的属性
axisLine: {
lineStyle: {
color: '#6ab2ec',
}
},
axisLabel: {
textStyle: {
fontSize: 15 // 让字体变小
}
}
},
/* 数据配置,若有多条折线则在数组中追加{name: , data: } */
series: [{
name: '暴露量平均值总和',
data: YData,
type: 'line',
symbol: 'circle',
// 设置折点大小
symbolSize: 10,
// 设置为光滑曲线
smooth: true,
markLine: {
silent: true,
lineStyle: {
normal: {
color: 'red' // 这儿设置安全基线颜色
}
},
data: [{
yAxis: zhidao
}],
label: {
normal: {
formatter: '安全\n基线' // 这儿设置安全基线
}
},
},
},]
};
zhexiantu.setOption(option);
}
}
//暴露量平均值前5 柱状图
$scope.baoluliang = function () {
console.log('sfsdff');
var x = ['茶叶', '苹果', '西瓜', '橙', '梨'];
var y = ['0.001829', '0.000395', '0.000219', '0.000108', '0.000096', ];
if ($scope.myTableData != null) {
x = [];
y = [];
//var dT = $scope.myTableData;
var arrRes = Enumerable.From($scope.myTableData).OrderByDescending("x=>x.bll_avg").Take(5).ToArray();
for (var i = 0; i < arrRes.length; i++) {
x.push(arrRes[i].sp_xl);
y.push(arrRes[i].bll_avg);
}
}
console.log('barData',x,y);
// 基于准备好的dom初始化echarts实例
//var myChart = echarts.init(document.getElementById('zhuzhuangtu'));
var dom = document.getElementById("zhuzhuangtu");
var myChart = echarts.init(dom);
var app = {};
option = null;
app.title = '暴露量平均值';
option = {
title: {
text: '暴露量平均值',
left: 'center'
},
color: ['#3398DB'],
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
}
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: [
{
type: 'category',
data: x,
axisTick: {
alignWithLabel: true
}
}
],
yAxis: [
{
type: 'value'
}
],
series: [
{
name: '暴露量平均值',
type: 'bar',
barWidth: '60%',
data: y
}
]
};
;
if (option && typeof option === "object") {
myChart.setOption(option, true);
}
}
//暴露量ADI占比前5 柱状图
$scope.baoluliangADI = function () {
var x = ['茶叶', '苹果', '西瓜', '橙', '梨'];
var y = ['51.08', '10.97', '6.08', '3', '2.67', ];
if ($scope.myTableData != null) {
//var dT = $scope.myTableData;
x = [];
y = [];
var arrRes = Enumerable.From($scope.myTableData).OrderByDescending("x=>x.bll_adi").Take(5).ToArray();
for (var i = 0; i < arrRes.length; i++) {
x.push(arrRes[i].sp_xl);
y.push(arrRes[i].bll_adi);
}
}
// 基于准备好的dom初始化echarts实例
//var myChart = echarts.init(document.getElementById('zhuzhuangtu'));
var dom = document.getElementById("zhuzhuangtuADI");
var myChart = echarts.init(dom);
var app = {};
option = null;
app.title = '暴露量ADI占比';
option = {
title: {
text: '暴露量ADI占比',
left: 'center',
color: '#ffa82f'
},
color: ['#3398DB'],
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
}
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: [
{
type: 'category',
data: x,
axisTick: {
alignWithLabel: true
}
}
],
yAxis: [
{
type: 'value'
}
],
series: [
{
name: '暴露量ADI占比',
type: 'bar',
barWidth: '60%',
data: y
}
]
};
;
if (option && typeof option === "object") {
myChart.setOption(option, true);
}
}
$scope.nianfenZheXianTu(0);
$scope.baoluliang();
$scope.baoluliangADI();
$scope.JYXM = [];
//获取mongodb数据替换sqlserver数据 检验项目 分类替换
$scope.tihuan = function () {
$http.get(Gaddress + '/home/GetAllJXCM', {}).success(function (mydata) {
var i = 1;
var data = JSON.parse(mydata);
for(var i = 0;i<data.length;i++){
var dataj = data[i].JCYL;
for (var j = 0; j < dataj.length; j++) {
var datak = dataj[j].JCXMXIAOLEI;
for (var k = 0; k < datak.length; k++) {
var datal = datak[k].JCXM;
for (var l = 0; l < datal.length; l++) {
var jianyanxiangmu = {
"JCDL": data[i].JCDL,
"JCYL": dataj[j].name,
"JCXL": datak[k].name,
"JCXM": datal[l].name
}
$scope.JYXM.push(jianyanxiangmu);
}
}
}
}
})
$timeout(function () {
for (var i = 0; i < $scope.JYXM.length; i++) {
$http({
method: "post",
data: {
list: $scope.JYXM[i]
},
url: '/home/tiHuanJYXM'
}).success(function (data) {
console.log(data);
});
}
alert("成功");
}, 5000);
}
//单项判定赋值 不合格-1合格0
$scope.danXiangPanDing = function () {
$http.get(Gaddress + '/home/danXiangPanDing', {}).success(function (mydata) {
})
}
}])
app.controller('testCtrl', ['$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.tiao = tiaojian;
$scope.tiao2 = tiaojian2;
//window.parent.bottom.location.reload();
//注意:折叠面板 依赖 element 模块,否则无法进行功能性操作
layui.use('element', function () {
var element = layui.element;
layui.element.init();
});
// alert("123");
//$("#showData").empty();
$scope.nianfenData = [];
var niafen_data = data.data;
var nianfen = Enumerable.From(niafen_data).Distinct(function (x) { return x.nianfen }).Select(function (x) { return x.nianfen }).OrderBy().ToArray();
console.log(nianfen);
for (var i = 0; i < nianfen.length; i++) {
$scope.nianfenData.push({ "nianfen": "" + nianfen[i] + ""});
}
//$scope.btn_data = function (nianfen) {
// //alert(nianfen);
// var a = "#nianfenData" + nianfen;
// layui.use('table', function () {
// var table = layui.table;
// table.render({
// elem: a
// , url: '/home/GetFengXianResult'
// , where: {
// wherestr: tiaojian
// , wherestr2: tiaojian2
// , nianfen: nianfen
// }
// , parseData: function (res) { //res 即为原始返回的数据
// $scope.nianfenPGData = res.dataTable;
// console.log($scope.nianfenPGData);
// //$("#nianfenPGData" + nianfen + "").append("");
// var str = "抽检件数合计:" + res.dataPage.choujianjianshu_count + " || 暴露平均值总和:" + res.dataPage.baoluzongliang + " || 健康指导值:" + res.dataPage.jiankangzhidaozhi + " || 单位:" + res.dataPage.danwei + "";
// $("#nianfenPGData" + nianfen + "").append(str);
// return {
// "code" : res.code,
// "data": res.dataTable //解析数据列表
// };
// }
// , width: 1150
// , height: 300
// , cols: [[
// { field: 'spdl', width: 180,align:'right', title: '食品大类', sort: true }
// , { field: 'spyl', width: 180,align:'right', title: '食品亚类', sort: true }
// , { field: 'sppz', width: 180,align:'right', title: '食品品种', sort: true }
// , { field: 'sp_xl', width: 180,align:'right', title: '食品小类', sort: true }
// , { field: 'ypxx_count', width: 180,align:'right', title: '件数', sort: true }
// , { field: 'ypxx_avg', width: 180,align:'right', title: '检测值平均', sort: true }
// , { field: 'ypxx_max', width: 180,align:'right', title: '检测值最大', sort: true }
// , { field: 'renyuan_count', width: 180,align:'right', title: '人数', sort: true }
// , { field: 'xfl_avg', width: 180,align:'right', title: '消费量平均g/d', sort: true }
// , { field: 'xfl_max', width: 180,align:'right', title: '消费量最大值g/d', sort: true }
// , { field: 'xfl_p95', width: 180,align:'right', title: '消费量P95g/d', sort: true }
// , { field: 'xfl_tz_avg', width: 180,align:'right', title: '体重平均值kg', sort: true }
// , { field: 'bll_avg', width: 180,align:'right', title: '暴露量平均值', sort: true }
// , { field: 'bll_max', width: 180,align:'right', title: '暴露量最大值', sort: true }
// , { field: 'bll_p95', width: 180,align:'right', title: '暴露量P95', sort: true }
// , { field: 'bll_adi', width: 180,align:'right', title: 'ADI比值', sort: true }
// ]]
// , page: false
// });
// });
//}
}])