app.controller("SampleControlCtrl", ['$scope', 'JCDW', 'YPJBXXGL', '$state', '$stateParams', '$sessionStorage', 'mainUrl', 'wyOdataNodeService', 'stConfig', '$timeout', 'Upload', '$http', function ($scope, JCDW, YPJBXXGL, $state, $stateParams, $sessionStorage, mainUrl, wyOdataNodeService, stConfig, $timeout, Upload, $http) { $scope.GOjc = function (id, CYDBH) { //alert(id + "" + CYDBH); YPJBXXGL.getOne({ id: id }, function (data) { if (data.YPJBZTType == 1) { alert("请先送检该样品!"); } else { dLayer.open({ type: 2, area: ['1200px', '700px'], content: Gaddress + '/index.html#/SampleTestdialog/' + id + '/' + CYDBH }); } }) } //查看 修改样品信息 $scope.item = 0; $scope.XiuGai = function (id,cyd) { debugger; dLayer.open({ type: 2, area: ['1200px', '700px'], content: Gaddress + '/index.html#/SampleInspectdialog/' + id + '/' + cyd //这里content是一个URL,如果你不想让iframe出现滚动条,你还可以content: ['http://sentsin.com', 'no'] }); } $scope.RELYdata = ["国家食品药品监督管理总局", "上海市食品药品监督管理局"]; //检测机构 $scope.JCDWdata = []; JCDW.get(function (data) { angular.forEach(data.value, function (data) { $scope.JCDWdata.push(data.JCJGMC); }) }) $scope.RWXZdata = ["常规监测", "专项监测", "应急监测", "能力验证", ]; $scope.YPZTdata = ["待送检", "已送检", "已检测", "已审核", "已批准", "审核退回", "批准退回", ]; //转换时间格式 $scope.formatDate = function (day) { var cc = new Date(day); var y = cc.getFullYear(); var m = cc.getMonth() + 1; var d = cc.getDate(); if (m < 10) { m = "0" + m; } if (d < 10) { d = "0" + d; } return aa = y + "-" + m + "-" + d; } //转换时间格式 $scope.formatDateXieGang = function (day) { var cc = new Date(day); var y = cc.getFullYear(); var m = cc.getMonth() + 1; var d = cc.getDate(); if (m < 10) { m = "0" + m; } if (d < 10) { d = "0" + d; } return aa = y + "/" + m + "/" + d; } /******************查询的方法********************/ //获取当前的值 $scope.Cha = function () { // alert("1"); if ($sessionStorage.user.type == 4 || $sessionStorage.user.type == 5) { $scope.searchSql = "JCDW eq '" + $sessionStorage.user.name + "' and "; } else { $scope.searchSql = ""; //这个参数是自己组合相关的复杂查询条件 } $scope.selectList = []; //任务编号 var rwbh = $scope.crwbh; $sessionStorage.RWBH = rwbh; //采样单编号 var cydbh = $scope.cydbh; $sessionStorage.CYDBH = cydbh; // 样品名称 var ypmc = $scope.ypmc; $sessionStorage.YPMC = ypmc; //任务来源 var rwly = $scope.rwly1; $sessionStorage.RWLY = rwly; //r任务开始时间 var ypkssj = $scope.ypkssj; $sessionStorage.YPKSSJ = ypkssj; //任务结束时间 var ypjssj = $scope.ypjssj; $sessionStorage.YPJSSJ = ypjssj; //样品状态 var ypzt = $scope.ypzt; $sessionStorage.YPZT = ypzt; //任务性质 var rwxz = $scope.rwxz1; $sessionStorage.RWXZ = rwxz; //检测机构 var jcjg = $scope.jcjg; $sessionStorage.JCDW = jcjg; //如果任务编号不为空 if (rwbh != undefined && rwbh != '') { $scope.searchSql = $scope.searchSql + "indexof(RWBH,'" + rwbh + "') ge 0 and "; } //如果采样单不为空 if (cydbh != undefined && cydbh != '') { $scope.searchSql = $scope.searchSql + "indexof(CYDBH,'" + cydbh + "') ge 0 and "; } //如果样品名称不为空 if (ypmc != undefined && ypmc != '') { $scope.searchSql = $scope.searchSql + "indexof(YPMC,'" + ypmc + "') ge 0 and "; } //如果任务来源不为空 if (rwly != undefined&&rwly!='') { $scope.searchSql = $scope.searchSql + "RWLY eq '" + rwly + "' and "; } //如果样品状态不为空 if (ypzt != undefined && ypzt != '') { $scope.searchSql = $scope.searchSql + "indexof(YPJBZT,'" + ypzt + "') ge 0 and "; } //如果任务性质不为空 if (rwxz != undefined&&rwxz!='') { $scope.searchSql = $scope.searchSql + "RWXZ eq '" + rwxz + "' and "; } //检测机构不为空 if (jcjg != undefined&&jcjg!='') { $scope.searchSql = $scope.searchSql + "JCDW eq '" + jcjg + "' and "; } //开始时间结束时间不为空 if ($sessionStorage.YPKSSJ != undefined) { var Ktime = $scope.formatDateXieGang($sessionStorage.YPKSSJ); $scope.searchSql = $scope.searchSql + "ZXNY_KS ge '" + Ktime + "' and "; } //结束时间不为空 if ($sessionStorage.YPJSSJ != undefined) { var Jtime = $scope.formatDateXieGang($sessionStorage.YPJSSJ); // console.log(Jtime); $scope.searchSql = $scope.searchSql + "ZXNY_JS le '" + Jtime + "' and "; } $scope.searchSql = $scope.searchSql.substring(0, $scope.searchSql.length - 4); $scope.getService($scope.tableState, $scope.searchSql); } $scope.MyChaXun = function () { //任务编号 var rwbh = $scope.crwbh; $sessionStorage.RWBH = rwbh; //采样单编号 var cydbh = $scope.cydbh; $sessionStorage.CYDBH = cydbh; // 样品名称 var ypmc = $scope.ypmc; $sessionStorage.YPMC = ypmc; //任务来源 var rwly = $scope.rwly1; $sessionStorage.RWLY = rwly; //r任务开始时间 var ypkssj = $scope.ypkssj; $sessionStorage.YPKSSJ = ypkssj; //任务结束时间 var ypjssj = $scope.ypjssj; $sessionStorage.YPJSSJ = ypjssj; //样品状态 var ypzt = $scope.ypzt; $sessionStorage.YPZT = ypzt; //任务性质 var rwxz = $scope.rwxz1; $sessionStorage.RWXZ = rwxz; //检测机构 var jcjg = $scope.jcjg; $sessionStorage.JCDW = jcjg; var chaxunPra = { //任务编号 rwbh : $scope.crwbh, //采样单编号 cydbh : $scope.cydbh, // 样品名称 ypmc : $scope.ypmc, //任务来源 rwly : $scope.rwly1, //r任务开始时间 ypkssj : $scope.ypkssj, //任务结束时间 ypjssj : $scope.ypjssj, //样品状态 ypzt : $scope.ypzt, //任务性质 rwxz : $scope.rwxz1, //检测机构 jcjg : $scope.jcjg, } var tiaojianstr=angular.toJson(chaxunPra); //alert(tiaojianstr) //增加日志20211109 addlog("样品检验管理", "查询[" + tiaojianstr + "]") $http({ method: 'GET', url: Gaddress + '/home/GetYangPinJiBenXinXi', params: { tiaojian: tiaojianstr, pagenumber: $scope.tableState.pagination.start, pagesize: $scope.tableState.pagination.number } }).then(function successCallback(mydata) { $scope.displayed = angular.fromJson(mydata.data.data); $scope.isShow = false; //当前页面的ID号数组 $scope.ids = Enumerable.From($scope.displayed).Select(function (x) { return x._id }).ToArray(); //表格数量 $scope.myttt = mydata.data.length; $scope.tableState.count = mydata.data.length; $scope.tableState.pagination.numberOfPages = Math.ceil(mydata.data.length / $scope.curpageNumber); $scope.inputPage = tableState.pagination.numberOfPages; $scope.tableState = tableState; }, function errorCallback(response) { // 请求失败执行代码 }); } //勾选的方法 $scope.selected = []; $scope.isChecked = function (id) { return $scope.selected.indexOf(id) >= 0; }; $scope.updateSelection = function ($event, id) { var checkbox = $event.target; var checked = checkbox.checked; if (checked) { $scope.selected.push(id); } else { var idx = $scope.selected.indexOf(id); $scope.selected.splice(idx, 1); } }; /*******************复制检测项目的方法***********/ $scope.Copy = function () { if ($scope.selectList.length == 1) { if (confirm("确定复制检测项目到该任务单下未检测的样品中?")) { //console.log($scope.selectList[0]); var id = "_id eq '" + $scope.selectList[0] + "'"; YPJBXXGL.getAll({$filter: id }, function (data) { var jcxxx = []; //找到勾选的任务的检测项目数据 angular.forEach(data.value[0].JCXXX, function (data1) { // console.log(angular.toJson(data)); data1.jcz = ''; if (data1.Type == 1) { data1.Yzhen = "问题"; } else if (data1.Type == 2) { data1.Yzhen = "不作评价"; } else { data1.Yzhen = "待验证"; } jcxxx.push(data1) }) //找到相同与勾选项有相同的任务编号的所有数据 var rwbh = "RWBH eq '" + data.value[0].RWBH + "'"; YPJBXXGL.getAll({ $filter: rwbh }, function (data2) { //console.log(angular.toJson(data2)); //删掉已勾选项 //for (i = 0; i < data2.value.length; i++) { // if (data2.value[i].id == $scope.selectList[0]) { // data2.value.splice(i, 1) // } //} //增加日志20211109 addlog("样品检验管理", "修改数据_复制[" + data2 + "]") //循环 数据 将检测项目替换 angular.forEach(data2.value, function (data3) { // console.log(angular.toJson(data3)); if (data3.YPJBZTType == 1 || data3.YPJBZTType == 5) { YPJBXXGL.update({ id: data3.id }, { JCXXX: jcxxx, DisPro: [], ProPro: [], DisAndPro: [], JieGuo: '', }, function (data) { // $scope.Cha();//刷新页面 }); } }) $timeout(function () { $scope.Cha(); alert('复制成功'); $scope.selectList = []; }, 500); }) }) } } else if ($scope.selectList.length > 1) { alert("只能选择单条数据复制") } else { alert("请选一条数据")} } $scope.submit = function () { $scope.upload($scope.file); }; $scope.upload = function (file) { $scope.isShow = true; $scope.uploadImg = ""; $scope.myfile = []; $scope.fileInfo = file if (file.length > 0) { for (var i = 0; i < file.length; i++) { //下载时候字符串 var myid = new Date().valueOf(); var Filename = myid + $scope.fileInfo[i].name.substring($scope.fileInfo[i].name.lastIndexOf("."), $scope.fileInfo[i].name.length); var aa = { username: $sessionStorage.user.UserName, name: $scope.fileInfo[i].name, size: $scope.fileInfo[i].size, DownName: Filename, icon: $scope.fileInfo[i].name.substring($scope.fileInfo[i].name.lastIndexOf(".") + 1, $scope.fileInfo[i].name.length) } $scope.myfile.push(aa); Upload.upload({ //服务端接收 url: '/JCXM_Upload.ashx', //上传的同时带的参数 data: { 'username': $sessionStorage.user.UserName, "FileName": myid.toString() }, file: file[i] }).progress(function (evt) { //进度条 $scope.uploadImg = parseInt(100 * evt.loaded / evt.total) + "%"; }).success(function (data, status, headers, config) { //上传成功 alert(data.result); $scope.JiaZai(); $scope.isShow = true; //增加日志20211109 addlog("样品检验管理", "新增数据_导入" + myid.toString()) }) } } }; /**************************************************************************************/ //通过STMATETable 分页显示数据 //以下的参数每个控制器都要有一份 $scope.tableState = []; //这个参数后面会让每次访问服务器后进行同步返回的值赋值,作为中间值使用 $scope.selectList = []; //这个参数会让每次选中或者没有选中的条目直接暴露在这个值里面 if ($sessionStorage.user.type == 4 || $sessionStorage.user.type == 5) { $scope.searchSql = "JCDW eq '" + $sessionStorage.user.name + "'"; } else { $scope.searchSql = ""; //这个参数是自己组合相关的复杂查询条件 } $scope.isShow = false; //这个参数主要进行页面加载的loading显示的directive的值得操作 $scope.itemsOptions = [5, 10, 20, 50, 100, 200]; //这个参数进行分页页面上面的每页多少条的设置 $scope.curpageNumber = 10; //这个参数传递当前的每页多少条的数据 //任何动作都会触发服务端的接口 $sessionStorage.tableState = []; $scope.getService = function (tableState, ctrl) { //if ($sessionStorage.tableState!=[]) { // $scope.tableState = $sessionStorage.tableState //} else { $scope.tableState = tableState; // } if (!$scope.tableState.pagination.number) { $scope.tableState.pagination.number = $scope.curpageNumber; } $scope.isShow = true; $scope.MyChaXun(); // console.log($scope.searchSql + "aaa"); //wyOdataNodeService.getData('http://172.28.3.129:5000/', 'YPJBXXGL_DB', $scope.tableState, $scope.searchSql).then(function (data) { // $scope.displayed = data; // $scope.isShow = false; // //当前页面的ID号数组 // $scope.ids = Enumerable.From($scope.displayed).Select(function (x) { return x.id }).ToArray(); // $scope.myttt = 0000; // $scope.$broadcast('checkini'); // //console.log($scope.ids); // //console.log(angular.toJson(tableState)); // $sessionStorage.tableState = tableState; //}); }; //模板的分页选择触发操作 $scope.setPageNumber = function (pageNo) { $scope.getService($scope.tableState); } //查询参数的调用 $scope.search = function () { $scope.searchSql = [$scope.sql]; $scope.getA($scope.tableState); //约定成数字的按照前后 //日期按照前后 //字符串的模糊查询 //var sql = '$filter=EventDateTime eq DateTime'2010-12-21T10:10:19.390625'; //日期参考如下: //(EventDateTime eq DateTime'2010-12-21T10:10:19.390625' ) and (BusinessUnitCode eq '2') //var dT=dd ge 12 and dd le 33 } /**************************************************************************************/ /**********这块的内容是点击检验项目后返回重新赋值的代码********/ //任务编号不为空 if ($sessionStorage.RWBH != undefined && $sessionStorage.RWBH != '') { $scope.crwbh = $sessionStorage.RWBH; if ($scope.searchSql == '') { $scope.searchSql = "indexof(RWBH,'" + $scope.crwbh + "') ge 0"; // $scope.tableState = $sessionStorage.tableState; } else { $scope.searchSql = $scope.searchSql + " and indexof(RWBH,'" + $scope.crwbh + "') ge 0"; // $scope.tableState = $sessionStorage.tableState; } } //采样单不为空 if ($sessionStorage.CYDBH != undefined && $sessionStorage.CYDBH != '') { $scope.cydbh = $sessionStorage.CYDBH; if ($scope.searchSql == '') { $scope.searchSql = "indexof(CYDBH,'" + $scope.cydbh + "') ge 0"; } else { $scope.searchSql = $scope.searchSql + " and indexof(CYDBH,'" + $scope.cydbh + "') ge 0"; } } //样品名称不为空 if ($sessionStorage.YPMC != undefined && $sessionStorage.YPMC != '') { $scope.ypmc = $sessionStorage.YPMC; if ($scope.searchSql == '') { $scope.searchSql = "indexof(YPMC,'" + $scope.ypmc + "') ge 0"; } else { $scope.searchSql = $scope.searchSql + " and indexof(YPMC,'" + $scope.ypmc + "') ge 0"; } } //任务来源不为空 if ($sessionStorage.RWLY != undefined && $sessionStorage.RWLY!='') { $scope.rwly1 = $sessionStorage.RWLY; if ($scope.searchSql == '') { $scope.searchSql = "RWLY eq '" + $scope.rwly1 + "'" } else { $scope.searchSql =$scope.searchSql+ " and RWLY eq '" + $scope.rwly1 + "'" } } ////样品状态不为空 if ($sessionStorage.YPZT != undefined && $sessionStorage.YPZT != '') { $scope.ypzt = $sessionStorage.YPZT; if ($scope.searchSql == '') { $scope.searchSql = "indexof(YPJBZT,'" + $scope.ypzt + "') ge 0" } else { $scope.searchSql = $scope.searchSql + " and indexof(YPJBZT,'" + $scope.ypzt + "') ge 0"; } } //如果任务性质不为空 if ($sessionStorage.RWXZ != undefined && $sessionStorage.RWXZ!='') { $scope.rwxz1 = $sessionStorage.RWXZ; if ($scope.searchSql == '') { $scope.searchSql = "RWXZ eq '" + $scope.rwxz1 + "'"; } else { $scope.searchSql = $scope.searchSql + " and RWXZ eq '" + $scope.rwxz1 + "'"; } } //检测机构不为空 if ($sessionStorage.JCDW != undefined&&$sessionStorage.JCDW !='') { $scope.jcjg = $sessionStorage.JCDW; console.log($sessionStorage.JCDW); if ($scope.searchSql == '') { $scope.searchSql = "JCDW eq '" + $scope.jcjg + "'"; } else { $scope.searchSql = $scope.searchSql + " and JCDW eq '" + $scope.jcjg + "'"; } } ////样品开始时间不为空 //if ($sessionStorage.YPKSSJ != undefined) { // $scope.ypkssj = $sessionStorage.YPKSSJ; // var Ktime = $scope.formatDate($scope.ypkssj); // if ($scope.searchSql == '') { // $scope.searchSql = "ZXNY_KS ge '" + Ktime + "'"; // } else { // $scope.searchSql = $scope.searchSql + " and ZXNY_KS le '" + Ktime + "'"; // } //} ////样品结束时间不为空 //if ($sessionStorage.YPJSSJ != undefined) { // $scope.ypjssj = $sessionStorage.YPJSSJ; // var Jtime = $scope.formatDate($scope.ypjssj); // if ($scope.searchSql == '') { // $scope.searchSql = "ZXNY_JS ge '" + Jtime + "'"; // } else { // $scope.searchSql = $scope.searchSql + " and ZXNY_JS le '" + Jtime + "'"; // } //} //开始时间结束时间不为空 if ($sessionStorage.YPKSSJ != undefined) { var Ktime = $scope.formatDateXieGang($sessionStorage.YPKSSJ); $scope.searchSql = $scope.searchSql + "ZXNY_KS ge '" + Ktime + "' and "; } //结束时间不为空 if ($sessionStorage.YPJSSJ != undefined) { var Jtime = $scope.formatDateXieGang($sessionStorage.YPJSSJ); // console.log(Jtime); $scope.searchSql = $scope.searchSql + "ZXNY_JS le '" + Jtime + "' and "; } // console.log($scope.numPages); }]);