var data; var tiaojian; var tiaojian2; app.controller('PesticidePingGuCtrl', ['$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 startTime = format($scope.startTime); var endTime = format($scope.endTime); var pesticideNameList = $scope.pesticideNameList; 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 + "]") var te = JSON.parse(wherestr); for (var i = 0; i < te.length; i++) { //alert(wherestr[i].CXNR); if (te[i].CXTJPY == 'JCXM') { $("#title1").html(""); $("#title1").html("(" + te[i].CXNR + ")风险评估分析结果(大类)"); $("#title2").html(""); $("#title2").html("(" + te[i].CXNR + ")风险评估分析结果(大类)"); } } 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 , num: 1 , nianfen: "" , leixing: 'SP_DL' } , parseData: function (res) { //res 即为原始返回的数据 $scope.myPageData = res.dataPage; $scope.myTableData = res.dataTable; da = 1; //这个奇葩的参数设置是为了后面的显示判断,先留着,后面去掉 //console.log('reseres',res) return { "code": res.code, "data": res.dataTable //解析数据列表 }; } //, width: 1300 , height: 330 , cols: [[ {field: 'spdl', width: 150, 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: 150, align: 'right', title: '消费量平均(g/d)', sort: true} , {field: 'xfl_max', width: 150, align: 'right', title: '消费量最大值(g/d)', sort: true} , {field: 'xfl_p95', width: 150, align: 'right', title: '消费量P95(g/d)', sort: true} , {field: 'xfl_tz_avg', width: 150, align: 'right', title: '体重平均值(kg)', sort: true} , {field: 'bll_avg', width: 150, align: 'right', title: '暴露量平均值', sort: true} , {field: 'bll_max', width: 150, align: 'right', title: '暴露量最大值', sort: true} , {field: 'bll_p95', width: 150, align: 'right', title: '暴露量P95', sort: true} , {field: 'bll_adi', width: 150, 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": 2, "mytext": "包含"}, {"myvalue": 8, "mytext": "不包含"}, {"myvalue": 3, "mytext": "大于"}, {"myvalue": 4, "mytext": "小于"}, {"myvalue": 5, "mytext": "大于等于"}, {"myvalue": 6, "mytext": "小于等于"}, ] // 样品信息农药的全部字段 $scope.ypxxNyFields = [ {"type": 1, "mytext": "结果判定", "PY": "YZHEN"}, {"type": 1, "mytext": "被抽样人信息名称", "PY": "BCYRMC"}, {"type": 1, "mytext": "抽样地点类型", "PY": "CYDDLX"}, {"type": 1, "mytext": "被抽样单位地址", "PY": "BCYDWMC"}, {"type": 1, "mytext": "被抽样单位省市自治区", "PY": "DZ_S"}, {"type": 1, "mytext": "被抽样单位县市区", "PY": "DZ_QX"}, {"type": 1, "mytext": "被抽样单位地区市州盟", "PY": "DZSZM"}, {"type": 1, "mytext": "抽样单位所在省份", "PY": "CYDWSZSF"}, {"type": 1, "mytext": "生产许可证号", "PY": "SCXKZBH"}, {"type": 1, "mytext": "营业执照号", "PY": "YYZZH"}, {"type": 1, "mytext": "许可证号", "PY": "JYXKZ"}, {"type": 1, "mytext": "网络平台名称", "PY": "WLPTMC"}, {"type": 1, "mytext": "网络平台营业执照号", "PY": "WLPTYYZZH"}, {"type": 1, "mytext": "样品名称", "PY": "YPMC"}, {"type": 1, "mytext": "食品大类", "PY": "SP_DL"}, {"type": 1, "mytext": "食品品种", "PY": "SP_PZ"}, {"type": 1, "mytext": "食品细类", "PY": "SP_XL"}, {"type": 1, "mytext": "食品亚类", "PY": "SP_YL"}, {"type": 1, "mytext": "抽样人签名时间", "PY": "CYSJ"}, {"type": 1, "mytext": "检测机构", "PY": "JCDW"}, {"type": 1, "mytext": "检测项目", "PY": "JCXM"}, {"type": 1, "mytext": "检验结果", "PY": "JCZ"}, {"type": 1, "mytext": "检测值单位", "PY": "JCZDW"}, {"type": 1, "mytext": "检验依据", "PY": "JCBZ"}, {"type": 1, "mytext": "判定依据", "PY": "PJBZ"}, {"type": 1, "mytext": "检出限", "PY": "FFJCX"}, {"type": 1, "mytext": "检出限单位", "PY": "FFJCXDW"}, {"type": 1, "mytext": "最小允许限", "PY": "ZXYXX"}, {"type": 1, "mytext": "最小允许限单位", "PY": "ZXYXXDW"}, {"type": 1, "mytext": "最大允许限", "PY": "ZDYXX"}, {"type": 1, "mytext": "最大允许限单位", "PY": "ZDYXXDW"}, {"type": 1, "mytext": "年度", "PY": "ND2"}, {"type": 1, "mytext": "更新时间2", "PY": "GXSJ2"}, {"type": 1, "mytext": "当量浓度", "PY": "Equivalent"}, ]; $scope.yZhenList = [ {"mytext": "合格", "PY": "GJZJ"}, {"mytext": "不合格", "PY": "SHZJ"}, {"mytext": "不作评价", "PY": "SHZJ"}, {"mytext": "问题", "PY": "SHZJ"}, {"mytext": "不合格/问题", "PY": "SHZJ"} ]; //获取全部农药数组 $http.get(Gaddress + '/LJPingGu/getPesticideList', {}) .then(function (response) { // 成功时的回调 $scope.pesticideList = response.data.data; }, function (error) { // 失败时的回调 console.error('Error:', error); }); //获取全部蔬菜数组 $http.get(Gaddress + '/LJPingGu/getVegetablesList', {}) .then(function (response) { // 成功时的回调 $scope.vegetablesList = response.data.data; debugger; }, function (error) { // 失败时的回调 console.error('Error:', error); }); //改变事件 $scope.MyjsonChange = function () { $scope.RELYdata = []; $scope.myselpublic = undefined; $scope.mytxt = ""; switch ($scope.mysel.PY) { /////////////////////////////////////////////////最新食品分类(以2016年为准)////////////////////////////////////////////////// case "JCXM": $scope.RELYdata = []; var pesticideList = $scope.pesticideList; for (var i = 0; i < jc.pesticideList; i++) { $scope.RELYdata.push({"mytext": "" + c[f].name + "", "PY": "SHZJ"}) } $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 "CYSJ": $scope.isdate = true; $scope.RWLYSHOW = false; $scope.SouSuoShow = false; break; default: $scope.isdate = false; $scope.RWLYSHOW = false; $scope.SouSuoShow = true; } $timeout(function () { $("#dept").trigger("chosen:updated"); }, 100, false); } 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; } } var da = 0;//延迟功能判断 $scope.danweiNew = "mg/kgbw/d"; $scope.jcxm = { a: '' }; $("#data").hide(); $("#daochu").hide(); $("#nianfen").hide(); $("#baobiao").hide(); //数据加载显示 $scope.btn_clcik = function () { var wherestr = angular.toJson($scope.TJTable); if ($scope.TJTable.length <= 0) { wherestr = ""; } $scope.wherestr = wherestr; console.log($scope.wherestr); //增加日志20211109 addlog("大类评估", "查询[" + wherestr + "]") var te = JSON.parse(wherestr); for (var i = 0; i < te.length; i++) { //alert(wherestr[i].CXNR); if (te[i].CXTJPY == 'JCXM') { $("#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: 4 } , 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: 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 }); }); $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); } //导出 $scope.excel = function () { window.location.href = '/home/JCXM_excel?wherestr=' + $scope.wherestr + '&wherestr2=' + $scope.wherestr2 + '&num=4'; } $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: '/home/GetJiance4' , where: { wherestr: $scope.wherestr , wherestr2: $scope.wherestr2 , nianfen: nianfen , num: 4 } , parseData: function (res) { //res 即为原始返回的数据 $scope.nianfenPGData = res.data; //console.log($scope.nianfenPGData); $("#td1" + nianfen + "").empty() $("#td1" + nianfen + "").append("食品大类:" + res.data.dalei); $("#td2" + nianfen + "").empty() $("#td2" + nianfen + "").append("-"); $("#td3" + nianfen + "").empty() $("#td3" + nianfen + "").append("-"); $("#td4" + nianfen + "").empty() $("#td4" + nianfen + "").append("-"); $("#td5" + nianfen + "").empty() $("#td5" + nianfen + "").append("抽检件数合计:" + res.data.jianshu); $("#td6" + nianfen + "").empty() $("#td6" + nianfen + "").append("消费量调查人数:" + res.data.renshu); $("#td7" + nianfen + "").empty() $("#td7" + nianfen + "").append("暴露总量:" + res.data.sum); $("#td8" + nianfen + "").empty() $("#td8" + nianfen + "").append("健康指导值:" + res.data.zhidao); $("#td9" + nianfen + "").empty() $("#td9" + nianfen + "").append("单位:" + res.data.danwei); $("#td10" + nianfen + "").empty() $("#td10" + nianfen + "").append("暴露量ADI比值:" + res.data.bizhi); return { "code": res.code, "data": res.data.data //解析数据列表 }; } //, width: 1150 , cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增 , height: 300 , cols: [[ {field: 'shipingdalei', width: 120, align: 'center', fixed: 'left', 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 }); }); } //年份折线图----laofang老方法!! $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=4', {}).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_dl'; 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; console.log('查询前数据', $scope.myTableData); var arrRes = Enumerable.From($scope.myTableData).OrderByDescending("x=>x.bll_avg").Take(5).ToArray(); console.log('查询后数据arrRes', arrRes); for (var i = 0; i < arrRes.length; i++) { x.push(arrRes[i].spdl); 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].spdl); 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/GetFengXianResult' , where: { wherestr: tiaojian , wherestr2: tiaojian2 , nianfen: nianfen , leixing: 'SP_DL' , num: 2 } , 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: '消费量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 }); }); } }])