var data; var tiaojian; var tiaojian2; app.controller('JianCeXiangMuCtrl2', ['$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_PZ' , 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: '消费量P95(g/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(""); //$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; } } //$scope.btn_click = function () { // var wherestr = angular.toJson($scope.TJTable2); // if ($scope.TJTable2.length <= 0) { // wherestr = ""; // } // $scope.wherestr2 = wherestr; // $scope.getService2(); //} //$scope.getService2 = function () { // $http.get(Gaddress + '/home/GetMyXiaoFeiLiangData?wherestr=' + $scope.wherestr2, {}).success(function (mydata) { // alert(JSON.stringify(mydata)); // $scope.MyXiaoFeiLiangData = mydata; // }) //}; 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 + "]") console.log($scope.wherestr); var te = JSON.parse(wherestr); 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: 2 } , parseData: function (res) { //res 即为原始返回的数据 $scope.MyXiaoFeiLiangData = res.data; console.log($scope.MyXiaoFeiLiangData); $scope.danweiNew = ''; $scope.danweiNew = $scope.MyXiaoFeiLiangData.danwei; data = res.data; da = 1; return { "code": res.code, "data": res.data.data //解析数据列表 }; } , 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: 180,align:'right', 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: '消费量P95(g/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(); $("#daochu").show(); $("#nianfen").show(); //$scope.nianfenZheXianTu(1); //这个老的也不用了 //一样的修改 $scope.nianfenLineChart(); //新的方法折线图表的展示方法 $scope.baoluliang(); $scope.baoluliangADI(); da = 2; } else { $timeout(function () { $scope.yanchi(); }, 3000); } } //全屏数据展示 $scope.quanping = function () { layui.use('table', function () { var table = layui.table; table.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: '消费量P95(g/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 () { table.reload('test22'); }, 3000); }); } //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("食品大类"); $("#shiwuTitle").html(title); var na = ""; if ($scope.jiancexiangmuName != "") { na = "(" + $scope.jiancexiangmuName + ")"; } //$("#fengxianName").html("风险评估" + na + "大类"); $("#fengxianName").html("风险评估" + na + title); //更换是null值得方法 var changeRowData_renyuan_count = function (row) { var curRowRenShu = 0; 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.dalei = function () { $("#shiwuTitle").html("食品大类"); var na = ""; if ($scope.jiancexiangmuName != "") { na = "(" + $scope.jiancexiangmuName + ")"; } $("#fengxianName").html("风险评估" + na + "(大类)"); $scope.Data = []; var data = $scope.MyXiaoFeiLiangData.data; 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].shipingdalei; jianshu = data[i].jianshu * 1; baoluliangqingjunzhi = data[i].baoluliangqingjunzhi * 1; zhanbi = data[i].zhanbi * 1; if (data.length == 1) { var dT = { "name": "" + data[i].shipingdalei + "", "jianshu": "" + data[i].jianshu + "", "renshu": "" + data[i].renshu + "", "baoluliangqingjunzhi": "" + data[i].baoluliangqingjunzhi.toFixed(6) + "", "zhanbi": "" + data[i].zhanbi.toFixed(2) + "" }; $scope.Data.push(dT); } } else { var dd = data[i].shipingdalei; if (dalei == dd) { //dalei = data[i].shipingdalei; jianshu = jianshu + (data[i].jianshu * 1); baoluliangqingjunzhi = baoluliangqingjunzhi + (data[i].baoluliangqingjunzhi * 1); zhanbi = zhanbi + (data[i].zhanbi * 1); if (data[i].renshu * 1 != 0) { renshu = data[i].renshu; } //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].jianshu * 1; baoluliangqingjunzhi = data[i].baoluliangqingjunzhi * 1; zhanbi = data[i].zhanbi * 1; renshu = data[i].renshu * 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.MyXiaoFeiLiangData.data; 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].shipingyalei; jianshu = data[i].jianshu * 1; baoluliangqingjunzhi = data[i].baoluliangqingjunzhi * 1; zhanbi = data[i].zhanbi * 1; if (data.length == 1) { var dT = { "name": "" + data[i].shipingyalei + "", "jianshu": "" + data[i].jianshu + "", "renshu": "" + data[i].renshu + "", "baoluliangqingjunzhi": "" + data[i].baoluliangqingjunzhi.toFixed(6) + "", "zhanbi": "" + data[i].zhanbi.toFixed(2) + "" }; $scope.Data.push(dT); } } else { var dd = data[i].shipingyalei; if (yalei == dd) { //dalei = data[i].shipingdalei; jianshu = jianshu + (data[i].jianshu * 1); baoluliangqingjunzhi = baoluliangqingjunzhi + (data[i].baoluliangqingjunzhi * 1); zhanbi = zhanbi + (data[i].zhanbi * 1); if (data[i].renshu * 1 != 0) { renshu = data[i].renshu; } //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].jianshu * 1; baoluliangqingjunzhi = data[i].baoluliangqingjunzhi * 1; zhanbi = data[i].zhanbi * 1; renshu = data[i].renshu * 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.excel = function () { window.location.href = '/home/JCXM_excel?wherestr=' + $scope.wherestr + '&wherestr2=' + $scope.wherestr2 + '&num=2' ; } $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; 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: Gaddress + '/fengxianpinggu/GetFengXianResult' , where: { wherestr: $scope.wherestr , wherestr2: $scope.wherestr2 , nianfen: nianfen ,leixing:'SP_PZ' , num: 2 } , parseData: function (res) { //res 即为原始返回的数据 $scope.nianfenPGData = res.data; //console.log($scope.nianfenPGData); $("#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("-"); $("#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: '消费量P95(g/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) { 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"]; if (aaa == 0) { console.log($scope.ZheXianTudata); if ($scope.ZheXianTudata != null) { 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 }, ] }; zhexiantu.setOption(option); } else { $http.get(Gaddress + '/home/GetJiance5?wherestr=' + $scope.wherestr + '&wherestr2=' + $scope.wherestr2 + '&num=2', {}).success(function (mydata) { //$("#baobiao").show(); $scope.ZheXianTudata = mydata.data; $scope.nianfenZheXianTu(0); }) } } //以下三个方法是新的人员统计折线图的方法,用前面的yanchi里面调用nianfenLineChart来调用,只要更换访问的LeiXing即可 //增加的方法,将有查询条件的年份的数据从返回的结果里面挑选过滤出来 $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; } } var zhidao = 0.036 //年份折线图新的内容图表 $scope.nianfenLineChart = function () { //axios.get(mainUrl.replace('{{SPDL}}', this.selDaLei).replace('{{JCXM}}', this.selProject)).then((res) => { }) //var zhidao = 0.036 let mainUrl = ''; XData = [], YData = []; //mainUrl = mainUrl + '{"lianjietype":"and","CXTJPY":"JCXM","CXTJ":"检测项目","CXLX":"等于","CXLXid":1,"CXNR":"{{JCXM}}"}]'; mainUrl = Gaddress + '/FengXianPingGu/GetNianFenBaoLuLiang?wherestr=' + $scope.wherestr + '&LeiXing=sp_pz'; 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) 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 () { var x = ['大米', '茶叶', '鲜蛋', '畜肉', '茶饮料']; var y = ['0.001829', '0.000395', '0.000219', '0.000108', '0.000096', ]; if ($scope.myTableData != null) { x = []; y = []; //var dT = $scope.MyXiaoFeiLiangData.data; 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].sppz); y.push(arrRes[i].bll_avg); } } // 基于准备好的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.MyXiaoFeiLiangData.data; 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].sppz); 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.test = function () { console.log("123"); // 指定图表的配置项和数据 } $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) { cnsole.log(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/GetJiance4' // , where: { // wherestr: tiaojian // , wherestr2: tiaojian2 // , nianfen: nianfen // , num: 2 // } // , parseData: function (res) { //res 即为原始返回的数据 // $scope.nianfenPGData = res.data; // console.log($scope.nianfenPGData); // //$("#nianfenPGData" + nianfen + "").append(""); // var str = "抽检件数合计:" + res.data.jianshu + " || 暴露平均值总和:" + res.data.sum + " || 健康指导值:" + res.data.zhidao + " || 单位:" + res.data.danwei + ""; // $("#nianfenPGData" + nianfen + "").append(str); // return { // "code": res.code, // "data": res.data.data //解析数据列表 // }; // } // , width: 1150 // , height: 300 // , cols: [[ // { field: 'shipingdalei', width: 180,align:'right', title: '食品大类', sort: true } // , { field: 'shipingyalei', width: 180,align:'right', title: '食品亚类', sort: true } // , { field: 'shipingpinzhong', width: 180,align:'right', title: '食品品种', sort: true } // , { field: 'shipingxiaolei', width: 180,align:'right', 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: '消费量P95(g/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 // }); // }); //} //$http.get(Gaddress + '/home/GetJiance4?wherestr=' + $scope.tiao + '&wherestr2=' + $scope.tiao2, {}).success(function (mydata) { // $scope.nianfenData = []; // var niafen_data = mydata; // var nianfen = Enumerable.From(mydata.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++) { // var data1 = Enumerable.From(mydata.data).Where(function (x) { return x.nianfen == nianfen[i] }).ToArray(); // //console.log($scope.nianfenData); // $scope.nianfenData.push({ "nianfen": "" + nianfen[i] + "", "data": data1, "show": false }); // } // console.log($scope.nianfenData); //}) //$scope.show = function ($index) { // $scope.nianfenData[$index].show = !$scope.nianfenData[$index].show; //} }])