1116 lines
44 KiB
JavaScript
1116 lines
44 KiB
JavaScript
|
||
app.controller("SampleTestCtrl", ['$scope','$http', 'JCBZ', 'YPJBXXGL', 'PJBZ', 'JLDW', '$state', '$stateParams', '$uibModal', 'DWHS', "$timeout", "$sessionStorage", function ($scope,$http, JCBZ, YPJBXXGL, PJBZ, JLDW, $state, $stateParams, $uibModal, DWHS, $timeout, $sessionStorage) {
|
||
|
||
//alert($stateParams.id);
|
||
|
||
|
||
$scope.close = function () {
|
||
//var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
|
||
//parent.layer.close(index); //再执行关闭
|
||
closelayer();
|
||
}
|
||
|
||
|
||
//*******************表格中的内容**********************/
|
||
$scope.cydbh = $stateParams.CYDBH;
|
||
var CYDBH = "_id eq '" + $stateParams.id + "'";
|
||
|
||
// console.log(CYDBH);
|
||
$scope.jcxmData = [];
|
||
|
||
|
||
$http.get(Gaddress + "/home/JYXM?$filter=" + CYDBH, {}).success(function (data) {
|
||
debugger;
|
||
$scope.rwbh = data.value[0].RWBH;
|
||
angular.forEach(data.value[0].JCXXX, function (data1) {
|
||
debugger;
|
||
console.log(angular.toJson(data1));
|
||
// alert(data1.roleId);
|
||
var xiaolei = data1.JCXL == "" || data1.JCXL == undefined ? data1.JCPZ : data1.JCXL;
|
||
var jczdwstr = "";
|
||
try {
|
||
jczdwstr = data1.jczDW == '' || data1.jczDW == undefined ? data1.ffjcxDW : data1.jczDW;
|
||
} catch (e) {
|
||
jczdwstr = data1.ffjcxDW;
|
||
}
|
||
var dd = {
|
||
roleName: data1.roleName,
|
||
roleId: data1.roleId,
|
||
JCXL: xiaolei,
|
||
JCYL: data1.JCYL,
|
||
JCDL: data1.JCDL,
|
||
id: data1.roleId,
|
||
JCXM: data1.roleName,
|
||
JCFF: data1.JCFF,
|
||
JCBZ: data1.JCBZ,
|
||
ffjcx: data1.ffjcx,
|
||
ffdlx: data1.ffdlx,
|
||
ffjcxDW: data1.ffjcxDW,
|
||
jczDW: jczdwstr,
|
||
ffdlxDW: data1.ffdlxDW,
|
||
jcz: data1.jcz,
|
||
Yzhen: data1.Yzhen,
|
||
JCMC: data1.JCMC,
|
||
PJBZ: data1.PJBZ,
|
||
bzz: data1.bzz,
|
||
bzzdw: data1.bzzdw,
|
||
Type: data1.Type,
|
||
|
||
}
|
||
$scope.jcxmData.push(dd);
|
||
|
||
|
||
//console.log(angular.toJson($scope.jcxmData));
|
||
})
|
||
// $scope.DisPro = data.value[0].DisPro;//给不合格项目赋值
|
||
// $scope.ProPro = data.value[0].ProPro;//给问题项目赋值
|
||
// $scope.DisAndPro = data.value[0].DisAndPro;//给不合格/问题项目赋值
|
||
////$scope.OkPro = data.value[0].JCXXX[0].OkPro;//给合格项目赋值
|
||
$scope.JieGuo = data.value[0].JieGuo//给总结果赋值
|
||
});
|
||
|
||
//var dd = '';
|
||
// YPJBXXGL.getAll({ $filter: CYDBH }, function (data) {
|
||
// // console.log(angular.toJson(data));
|
||
// $scope.rwbh = data.value[0].RWBH;
|
||
// debugger;
|
||
// //因为改为了表格结构,之前是树状,导致JCXXX属性为空,看明天需求
|
||
// angular.forEach(data.value[0].JCXXX, function (data1) {
|
||
// // console.log(angular.toJson(data1));
|
||
// // alert(data1.roleId);
|
||
// var xiaolei = data1.JCXL == "" || data1.JCXL == undefined ? data1.JCPZ : data1.JCXL;
|
||
// var jczdwstr = "";
|
||
// try {
|
||
// jczdwstr = data1.jczDW == '' || data1.jczDW == undefined ? data1.ffjcxDW : data1.jczDW;
|
||
// } catch (e) {
|
||
// jczdwstr = data1.ffjcxDW;
|
||
// }
|
||
// var dd = {
|
||
// roleName: data1.roleName,
|
||
// roleId: data1.roleId,
|
||
// JCXL: xiaolei,
|
||
// JCYL: data1.JCYL,
|
||
// JCDL: data1.JCDL,
|
||
// id: data1.roleId,
|
||
// JCXM: data1.roleName,
|
||
// JCFF: data1.JCFF,
|
||
// JCBZ: data1.JCBZ,
|
||
// ffjcx: data1.ffjcx,
|
||
// ffdlx: data1.ffdlx,
|
||
// ffjcxDW: data1.ffjcxDW,
|
||
// jczDW:jczdwstr,
|
||
// ffdlxDW: data1.ffdlxDW,
|
||
// jcz: data1.jcz,
|
||
// Yzhen: data1.Yzhen,
|
||
// JCMC: data1.JCMC,
|
||
// PJBZ: data1.PJBZ,
|
||
// bzz: data1.bzz,
|
||
// bzzdw: data1.bzzdw,
|
||
// Type: data1.Type,
|
||
//
|
||
// }
|
||
// $scope.jcxmData.push(dd);
|
||
//
|
||
//
|
||
//
|
||
// //console.log(angular.toJson($scope.jcxmData));
|
||
// })
|
||
// $scope.DisPro = data.value[0].DisPro;//给不合格项目赋值
|
||
// $scope.ProPro = data.value[0].ProPro;//给问题项目赋值
|
||
// $scope.DisAndPro = data.value[0].DisAndPro;//给不合格/问题项目赋值
|
||
// ////$scope.OkPro = data.value[0].JCXXX[0].OkPro;//给合格项目赋值
|
||
// $scope.JieGuo = data.value[0].JieGuo//给总结果赋值
|
||
//
|
||
//
|
||
// // $scope.jcxmData = Enumerable.From($scope.jcxmData).OrderBy("$.JCXM").ToArray();
|
||
//
|
||
// });
|
||
|
||
|
||
|
||
|
||
|
||
|
||
//勾选的方法
|
||
$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);
|
||
}
|
||
// console.log($scope.selected);
|
||
};
|
||
|
||
|
||
///点击操作按钮 绑定选择框中的值
|
||
var jcxm = '';
|
||
$scope.Alldata = [];//检测项目中的所有数据
|
||
$scope.AlldataPJ = [];//评价项目中的所有数据
|
||
$scope.wocao = [];
|
||
|
||
$scope.CaoZuo = function () {
|
||
|
||
//每次操作清空值
|
||
$scope.bzlx = '';
|
||
$scope.bzbh = '';
|
||
$scope.bzmc = '';
|
||
$scope.jcff = '';
|
||
|
||
$scope.pjbzlx = '';
|
||
$scope.pjbzbh = '';
|
||
$scope.pjbzmc = '';
|
||
$scope.pjsplb = '';
|
||
$scope.wocao = [];
|
||
|
||
$scope.BZLXdata = []; //检测标准类型
|
||
$scope.PJBZLXdata = [];//评价标准类型
|
||
if ($scope.selected.length == 1) {
|
||
|
||
//找检测项目
|
||
var XM = Enumerable.From($scope.jcxmData).Where(function (x) { return x.roleId == $scope.selected[0] }).ToArray();
|
||
var jcxm = XM[0].roleName;
|
||
|
||
//找到检测标准库中标准名称下检测项目下的name==检测项目的数据
|
||
var a = "BZMC.JCXM.name eq '" + jcxm + "'";
|
||
JCBZ.getAll({ $filter: a }, function (data) {
|
||
$scope.Alldata = data.value;
|
||
|
||
angular.forEach(data.value, function (data1) {
|
||
|
||
$scope.BZLXdata.push(data1.BZLB);
|
||
|
||
})
|
||
var dd = Enumerable.From($scope.BZLXdata).Distinct().ToArray();//去重复
|
||
$scope.BZLXdata = dd;
|
||
})
|
||
|
||
//找到评价标准库中标准名称下检测项目下的name==检测项目的数据
|
||
PJBZ.getAll({ $filter: a }, function (data) {
|
||
$scope.AlldataPJ = data.value;
|
||
angular.forEach(data.value, function (data1) {
|
||
//只有当该标准时已批准状态才能添加
|
||
// alert(data1.BZLB);
|
||
$scope.PJBZLXdata.push(data1.BZLB);
|
||
|
||
})
|
||
|
||
var cc = Enumerable.From($scope.PJBZLXdata).Distinct().ToArray();//去重复
|
||
$scope.PJBZLXdata = cc;
|
||
|
||
|
||
})
|
||
|
||
|
||
//绑定在文本框上的值
|
||
$scope.pjxm = jcxm;
|
||
$scope.jcxm = jcxm;
|
||
// $scope.selected = [];
|
||
} else if ($scope.selected.length > 1) { alert('只能选择单条数据') }
|
||
else { alert('请选择你要操作的数据') }
|
||
}
|
||
|
||
|
||
//标准类型 change事件 找编号
|
||
$scope.zhaoBH = function () {
|
||
|
||
$scope.BZBHdata = []; //标准编号
|
||
var bh = Enumerable.From($scope.Alldata).Where(function (x) { return x.BZLB == $scope.bzlx }).ToArray();
|
||
|
||
|
||
angular.forEach(bh, function (data) {
|
||
//只有当该标准时已批准状态才能添加
|
||
if (data.BZMC[0].statetype == 2) {
|
||
$scope.BZBHdata.push(data.BH);
|
||
}
|
||
|
||
})
|
||
// console.log(angular.toJson($scope.BZBHdata));
|
||
}
|
||
|
||
//标准编号 change事件 找名称
|
||
$scope.zhaoMC = function () {
|
||
$scope.BZMCdata = []; //标准名称
|
||
var bh = Enumerable.From($scope.Alldata).Where(function (x) { return x.BH == $scope.bzbh }).ToArray();
|
||
$scope.BZMCdata = [bh[0].BZMC[0].name];
|
||
|
||
|
||
|
||
|
||
}
|
||
|
||
//检测方法 change 事件 找方法
|
||
$scope.zhaoJCFF = function () {
|
||
$scope.JCFFdata = []; //检测方法
|
||
var bh = Enumerable.From($scope.Alldata).Where(function (x) { return x.BH == $scope.bzbh }).ToArray();
|
||
// console.log(angular.toJson($scope.Alldata));
|
||
|
||
|
||
// var woqu = bh[0].BZMC[0].JCXM[0].FFXU;
|
||
var woqu1=Enumerable.From(bh[0].BZMC[0].JCXM).Where(function (x) { return x.name == $scope.jcxm }).ToArray();
|
||
angular.forEach(woqu1[0].FFXU, function (data) {
|
||
$scope.JCFFdata.push(data.ffxh);
|
||
})
|
||
}
|
||
|
||
/*****************评价标准联级菜单******************/
|
||
//评价标准类型 change事件 找编号
|
||
$scope.zhaoPJBH = function () {
|
||
$scope.PJBZBHdata = [];//评价标准编号
|
||
|
||
var bh = Enumerable.From($scope.AlldataPJ).Where(function (x) { return x.BZLB == $scope.pjbzlx }).ToArray();
|
||
|
||
angular.forEach(bh, function (data) {
|
||
//只有当该标准时已批准状态才能添加
|
||
if (data.BZMC[0].statetype == 2) {
|
||
$scope.PJBZBHdata.push(data.BH);
|
||
}
|
||
})
|
||
}
|
||
|
||
|
||
// 标准编号 change事件 找标准名称
|
||
$scope.zhaoPJMC = function () {
|
||
$scope.PJBZMCdata = [];//评价标准名称
|
||
var bh = Enumerable.From($scope.AlldataPJ).Where(function (x) { return x.BH == $scope.pjbzbh }).ToArray();
|
||
$scope.PJBZMCdata = [bh[0].BZMC[0].name];
|
||
|
||
$scope.wocao.PJBZ = $scope.pjbzbh;
|
||
}
|
||
|
||
|
||
//评价项目 change事件 找食品类别
|
||
$scope.zhaoPJSPLB = function () {
|
||
$scope.PJSPLBdata = [];//评价食品类别
|
||
var bh = Enumerable.From($scope.AlldataPJ).Where(function (x) { return x.BH == $scope.pjbzbh }).ToArray();
|
||
|
||
var woqu = bh[0].BZMC[0].JCXM;
|
||
// console.log(angular.toJson(woqu));
|
||
var cc = Enumerable.From(woqu).Where(function (x) { return x.name == $scope.pjxm }).ToArray();
|
||
console.log(angular.toJson(cc));
|
||
angular.forEach(cc[0].XM, function (data1) {
|
||
// console.log(data1.SPLB);
|
||
$scope.PJSPLBdata.push(data1.SPLB);
|
||
})
|
||
}
|
||
|
||
|
||
|
||
// 检测方法change 事件 显示表格中的数据
|
||
|
||
$scope.XianShi = function () {
|
||
var bh = Enumerable.From($scope.Alldata).Where(function (x) { return x.BH == $scope.bzbh }).ToArray();
|
||
//var aa = bh[0].BZMC[0].JCXM[0];
|
||
|
||
var cc=Enumerable.From(bh[0].BZMC[0].JCXM).Where(function (x) { return x.name == $scope.jcxm }).ToArray();
|
||
|
||
var bb = Enumerable.From(cc[0].FFXU).Where(function (x) { return x.ffxh == $scope.jcff.trim() }).FirstOrDefault();//trim() 去空格
|
||
$scope.wocao = bb;
|
||
|
||
$scope.wocao.JCBZ = $scope.bzbh;
|
||
|
||
}
|
||
|
||
//食品类别 change事件 找限量值和单位
|
||
$scope.zhaoXL = function () {
|
||
var bh = Enumerable.From($scope.AlldataPJ).Where(function (x) { return x.BH == $scope.pjbzbh }).ToArray();
|
||
var ee = bh[0].BZMC[0].JCXM;
|
||
// console.log(angular.toJson(ee));
|
||
|
||
var cc = Enumerable.From(ee).Where(function (x) { return x.name == $scope.pjxm }).ToArray();
|
||
//console.log(angular.toJson(cc[0].XM));
|
||
var bb = Enumerable.From(cc[0].XM).Where(function (x) { return x.SPLB == $scope.pjsplb.trim() }).ToArray();//trim() 去空格
|
||
|
||
switch (bb[0].zType) {
|
||
case "大于":
|
||
$scope.wocao.XL = ">" + bb[0].XL;
|
||
break;
|
||
case "大于等于":
|
||
$scope.wocao.XL = "≥" + bb[0].XL;
|
||
break;
|
||
|
||
case "小于":
|
||
$scope.wocao.XL = "<" + bb[0].XL;
|
||
break;
|
||
case "小于等于":
|
||
$scope.wocao.XL = "≤" + bb[0].XL;
|
||
break;
|
||
default:
|
||
$scope.wocao.XL = bb[0].XL;
|
||
break;
|
||
}
|
||
$scope.wocao.XLDW = bb[0].XLDW;
|
||
|
||
|
||
|
||
|
||
|
||
|
||
}
|
||
|
||
//点击添加值
|
||
$scope.AddZhi = false;
|
||
$scope.Add = function () {
|
||
if ($scope.AddZhi == false) {
|
||
$scope.AddZhi = true;
|
||
} else { $scope.AddZhi = false }
|
||
}
|
||
|
||
//单位值
|
||
$scope.JldwData = [];
|
||
|
||
JLDW.get(function (data) {
|
||
// console.log(angular.toJson(data));
|
||
|
||
angular.forEach(data.value, function (data1) {
|
||
$scope.JldwData.push(data1.JLDW);
|
||
|
||
})
|
||
|
||
$scope.JldwData.sort();
|
||
})
|
||
|
||
//点击OK 添加限量值到表格
|
||
$scope.QueDing = function () {
|
||
if ($scope.selected.length > 0) {
|
||
angular.forEach($scope.selected, function (data) {
|
||
angular.forEach($scope.jcxmData, function (data1) {
|
||
|
||
if (data1.id == data) {
|
||
if ($scope.AddBzz == "不得检出") {
|
||
data1.bzz = $scope.AddBzz;
|
||
data1.bzzdw = $scope.mbjldw;
|
||
data1.Yzhen = "问题";
|
||
data1.Type = 1;
|
||
} else {
|
||
data1.bzz = "≤" + $scope.AddBzz;
|
||
data1.bzzdw = $scope.mbjldw;
|
||
data1.Yzhen = "问题";
|
||
data1.Type = 1;
|
||
}
|
||
}
|
||
})
|
||
})
|
||
|
||
//console.log(angular.toJson($scope.jcxmData));
|
||
$scope.selected = [];
|
||
} else {
|
||
alert("请选择你要添加值的项")
|
||
}
|
||
|
||
}
|
||
|
||
|
||
//获取随机7位数
|
||
function getnum() {
|
||
var Num = "";
|
||
for (var i = 0; i < 7; i++) {
|
||
Num += Math.floor(Math.random() * 10);
|
||
}
|
||
return parseInt(Num);
|
||
|
||
}
|
||
|
||
|
||
//点击确定 给表格项赋值
|
||
$scope.Ok = function () {
|
||
|
||
// console.log(angular.toJson($scope.wocao));
|
||
if ($scope.selected.length == 1) {
|
||
angular.forEach($scope.selected, function (data) {
|
||
|
||
|
||
var iii = 0;
|
||
for (i = 0; i < $scope.jcxmData.length; i++) { //找到选中的数据在表格中的位置
|
||
if ($scope.jcxmData[i].id == data) {
|
||
iii = i;
|
||
}
|
||
}
|
||
|
||
//找到表格中与选中是相同ID的数据
|
||
var dataID = Enumerable.From($scope.jcxmData).Where(function (x) { return x.id == data }).ToArray();
|
||
if ($scope.wocao.XLDW != $scope.wocao.ffdlxDW && $scope.wocao.XLDW!=undefined) { //判断选择的检测标准和评价标准单位是否一致 不一致则需要转换成一致
|
||
var yjldw = "YJLDW eq '" + $scope.wocao.XLDW + "'";//把限量单位转换成线性单位
|
||
// console.log(angular.toJson($scope.jcxmData[i]));
|
||
|
||
DWHS.getAll({ $filter: yjldw }, function (data) {
|
||
//通过选择的限量单位找到单位换算库中有能与线性单位换算的数据
|
||
var mbj = Enumerable.From(data.value).Where(function (x) { return x.MBJLDW == $scope.wocao.ffdlxDW }).ToArray();
|
||
if (mbj.length > 0) {
|
||
//如果是区间 将min 和 max 值改变
|
||
if ($scope.wocao.XL.toString().indexOf("i") > -1) {
|
||
|
||
var min = parseFloat($scope.wocao.XL.substring($scope.wocao.XL.indexOf(":") + 1, $scope.wocao.XL.indexOf("/")));
|
||
var max = parseFloat($scope.wocao.XL.substring($scope.wocao.XL.indexOf("/") + 5, $scope.wocao.XL.length));
|
||
|
||
var XL = $scope.wocao.XL.replace(min, min * mbj[0].HSGX);
|
||
var XL1 = XL.replace(max, max * mbj[0].HSGX);
|
||
dataID[0].bzz = XL1;
|
||
dataID[0].bzzdw = $scope.wocao.ffdlxDW;
|
||
} else if ($scope.wocao.XL.toString().indexOf("M") > -1) {//如果是微生物采样
|
||
//找m
|
||
var m = $scope.wocao.XL.substring($scope.wocao.XL.indexOf("m") + 2, $scope.wocao.XL.indexOf("M") - 1);
|
||
//找M
|
||
var M = $scope.wocao.XL.substring($scope.wocao.XL.indexOf("M") + 2, $scope.wocao.XL.length);
|
||
|
||
var Fmxl= $scope.wocao.XL.substring(0, $scope.wocao.XL.indexOf("m") + 2);
|
||
|
||
var Lmxl = $scope.wocao.XL.substring($scope.wocao.XL.indexOf("M") - 1, $scope.wocao.XL.indexOf("M") + 2);
|
||
|
||
// var FMxl = $scope.wocao.XL.substring(0, $scope.wocao.XL.indexOf("M") + 2);
|
||
var XL = Fmxl + m * mbj[0].HSGX + Lmxl + M * mbj[0].HSGX;
|
||
// console.log(XL);
|
||
dataID[0].bzz = XL;
|
||
dataID[0].bzzdw = $scope.wocao.ffdlxDW;
|
||
} else {//如果是标准值
|
||
// dataID[0].bzz = $scope.wocao.XL * mbj[0].HSGX;
|
||
// dataID[0].bzzdw = $scope.wocao.ffdlxDW;
|
||
dataID[0].bzz = $scope.wocao.XL.substring(0, 1) + $scope.wocao.XL.substring(1, $scope.wocao.XL.length) * mbj[0].HSGX;
|
||
dataID[0].bzzdw = $scope.wocao.ffdlxDW;
|
||
}
|
||
|
||
|
||
} else {
|
||
alert("限量单位无法换算");
|
||
dataID[0].bzz = $scope.wocao.XL;
|
||
dataID[0].bzzdw = $scope.wocao.XLDW;
|
||
}
|
||
|
||
|
||
})
|
||
|
||
|
||
} else if ($scope.wocao.XLDW == "undefined") {
|
||
|
||
dataID[0].bzz = '';
|
||
dataID[0].bzzdw = '';
|
||
} else {
|
||
dataID[0].bzz = $scope.wocao.XL;
|
||
dataID[0].bzzdw = $scope.wocao.XLDW;
|
||
}
|
||
$timeout(function (x) {
|
||
dataID[0].JCBZ = $scope.wocao.JCBZ;
|
||
dataID[0].JCFF = $scope.wocao.ffxh;
|
||
dataID[0].ffjcx = $scope.wocao.ffjcx;
|
||
dataID[0].ffjcxDW = $scope.wocao.ffjcxDW;
|
||
dataID[0].ffdlx = $scope.wocao.ffdlx;
|
||
dataID[0].ffdlxDW = $scope.wocao.ffdlxDW;
|
||
dataID[0].JCMC = $scope.wocao.ffmc;
|
||
dataID[0].PJBZ = $scope.wocao.PJBZ;
|
||
|
||
dataID[0].Yzhen = "待验证";
|
||
dataID[0].jcz = "";
|
||
// console.log(angular.toJson(dataID));
|
||
//如果是分级采样 需要多展示n-1条数据
|
||
if (dataID[0].bzz.toString().indexOf("M") > -1) {
|
||
var aa = dataID[0].bzz;
|
||
|
||
//找 n
|
||
var n = parseInt(aa.substring(aa.indexOf(":") + 1, aa.indexOf("/")));
|
||
|
||
//获取选择的数据的基础信息
|
||
var roleName = dataID[0].roleName;
|
||
var jcxl = dataID[0].JCXL;
|
||
var jcyl = dataID[0].JCYL;
|
||
var jcdl = dataID[0].JCDL;
|
||
var jcxm = dataID[0].JCXM;
|
||
//添加n-1条数据
|
||
for (r = 0; r < n - 1; r++) {
|
||
var cc = {
|
||
roleName: roleName,
|
||
roleId: "XM" + getnum(),
|
||
id: "XM" + getnum(),
|
||
JCXL: jcxl,
|
||
JCYL: jcyl,
|
||
JCDL: jcdl,
|
||
JCXM: jcxm,
|
||
JCFF: $scope.wocao.ffxh,
|
||
JCBZ:$scope.wocao.JCBZ,
|
||
ffjcx: $scope.wocao.ffjcx,
|
||
ffjcxDW: $scope.wocao.ffjcxDW,
|
||
ffdlx: $scope.wocao.ffdlx,
|
||
ffdlxDW: $scope.wocao.ffdlxDW,
|
||
JCMC: $scope.wocao.ffmc,
|
||
PJBZ:$scope.wocao.PJBZ,
|
||
bzz: dataID[0].bzz,
|
||
bzzdw: dataID[0].bzzdw,
|
||
// Yzhen: "待验证",
|
||
jcz: "",
|
||
}
|
||
|
||
//在表格i+1处添加 n-1 条数据
|
||
|
||
$scope.jcxmData.splice(iii + 1, 0, cc);
|
||
// $scope.jcxmData.push(cc);
|
||
// console.log(angular.toJson($scope.jcxmData));
|
||
}
|
||
}
|
||
|
||
}, 1000)
|
||
|
||
|
||
|
||
})
|
||
$scope.selected = [];
|
||
// console.log(angular.toJson($scope.jcxmData));
|
||
}
|
||
//
|
||
|
||
else if ($scope.selected.length > 1) { alert('只能选择单条数据') }
|
||
else { alert('请选择你要操作的数据') }
|
||
|
||
}
|
||
|
||
|
||
//表格 验证事件
|
||
$scope.YanZhen = function (id, jcz) {
|
||
|
||
var index = 0;
|
||
var bzz = "";
|
||
//通过id找到页面中正在验证的数据
|
||
for (i = 0; i < $scope.jcxmData.length; i++) {
|
||
if ($scope.jcxmData[i].id == id) {
|
||
index = i;
|
||
bzz = $scope.jcxmData[i].bzz;
|
||
|
||
}
|
||
}
|
||
|
||
$scope.test1 = bzz;
|
||
|
||
//如果没有限量值 则默认为不作评价
|
||
if (bzz == undefined || bzz == "" || bzz == "/" ) {
|
||
$scope.jcxmData[index].Yzhen = "不作评价";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else if (bzz == "不得检出") {//如果是限量值是不得检出 那除了ND都是不合格
|
||
if ($scope.jcxmData[index].Type == 1) {
|
||
if (jcz == "ND") {
|
||
$scope.jcxmData[index].Yzhen = "合格";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else {
|
||
$scope.jcxmData[index].Yzhen = "问题";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
} else {
|
||
if (jcz == "ND") {
|
||
$scope.jcxmData[index].Yzhen = "合格";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else {
|
||
$scope.jcxmData[index].Yzhen = "不合格";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
}
|
||
|
||
} else {
|
||
//验证分两大类 如果是ND就是合格 否则细分 输入值 区间 分级采样 3中情况
|
||
if (jcz == "ND" && bzz.toString().indexOf("M")==-1) {
|
||
|
||
$scope.jcxmData[index].Yzhen = "合格";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
|
||
} else {
|
||
var ee = parseFloat(jcz);
|
||
//如果是区间
|
||
if (bzz.toString().indexOf("min") > -1) {
|
||
//找min 和max
|
||
var min = parseFloat(bzz.substring(bzz.indexOf(":") + 1, bzz.indexOf("/")));
|
||
var max = parseFloat(bzz.substring(bzz.indexOf("/") + 5, bzz.length));
|
||
|
||
|
||
switch ($scope.jcxmData[index].Yzhen) {
|
||
case "待验证":
|
||
case "合格":
|
||
case "不合格":
|
||
if ((min < ee && ee < max) || (min == ee || max == ee)) {
|
||
$scope.jcxmData[index].Yzhen = "合格";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else if (min > ee || ee > max) {
|
||
$scope.jcxmData[index].Yzhen = "不合格";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else {
|
||
$scope.jcxmData[index].Yzhen = "待验证";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
}
|
||
|
||
//如果不参与判定
|
||
if ($scope.jcxmData[index].Type == 2) {
|
||
$scope.jcxmData[index].Yzhen = "不作评价";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
|
||
}
|
||
}
|
||
//如果是分级采样 只显示第一项的验证值
|
||
else if (bzz.toString().indexOf("M") > -1) {
|
||
//先对$scope.jcxmData通过JCXM去重复
|
||
var WYan = Enumerable.From($scope.jcxmData).Distinct("$.JCXM").ToArray();
|
||
angular.forEach(WYan, function (data) {
|
||
//循环去重复的表格找到与表格中JCXM相同的项
|
||
var Same = Enumerable.From($scope.jcxmData).Where(function (x) { return x.JCXM == data.JCXM }).ToArray();
|
||
|
||
//如果Same的length>1说明是分级采样
|
||
if (Same.length > 1) {
|
||
|
||
var bzz = Same[0].bzz;
|
||
//找c
|
||
var c = parseFloat(bzz.substring(bzz.indexOf("c") + 2, bzz.indexOf("m") - 1));
|
||
//找m
|
||
var m = parseFloat(bzz.substring(bzz.indexOf("m") + 2, bzz.indexOf("M") - 1));
|
||
//找M
|
||
var M = parseFloat(bzz.substring(bzz.indexOf("M") + 2, bzz.length));
|
||
|
||
//当标准都是 c=0 m=0时
|
||
if (c == 0 && m == 0) {
|
||
var AllJcz = [];
|
||
//取出Same中所有的检测值
|
||
for (i = 0; i < Same.length; i++) {
|
||
AllJcz.push(Same[i].jcz);
|
||
}
|
||
if (AllJcz.indexOf("") == -1) {
|
||
var nd = Enumerable.From(AllJcz).Where(function (x) { return x != "ND" }).ToArray();
|
||
if (nd.length > 0) {
|
||
Same[0].Yzhen = "不合格";
|
||
} else {
|
||
Same[0].Yzhen = "合格";
|
||
}
|
||
} else {
|
||
Same[0].Yzhen="待验证"
|
||
}
|
||
} else {
|
||
switch (Same[0].Yzhen) {
|
||
case "待验证":
|
||
case "合格":
|
||
case "不合格":
|
||
var AllJcz = [];
|
||
//取出Same中所有的检测值
|
||
for (i = 0; i < Same.length; i++) {
|
||
AllJcz.push(Same[i].jcz);
|
||
}
|
||
//console.log(angular.toJson(AllJcz));
|
||
//当所有的值都存在时有判断 否则为待验证
|
||
if (AllJcz.indexOf("") == -1) {
|
||
|
||
//如果存在大于或等于M的值时 为不合格
|
||
var Bu = Enumerable.From(AllJcz).Where(function (x) { return x > M || x == M }).ToArray();
|
||
if (Bu.length > 0) {
|
||
Same[0].Yzhen = "不合格";
|
||
} else {
|
||
//否则 看小于m值的个数大于或等于c 为合格 否则为不合格
|
||
var XiaoC = Enumerable.From(AllJcz).Where(function (x) { return x < m || x == m || x == "ND" }).ToArray();
|
||
|
||
if (XiaoC.length > c || XiaoC.length == c) {
|
||
Same[0].Yzhen = "合格";
|
||
} else {
|
||
Same[0].Yzhen = "不合格";
|
||
}
|
||
}
|
||
} else {
|
||
Same[0].Yzhen = "待验证";
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
|
||
|
||
|
||
|
||
}
|
||
})
|
||
|
||
//如果不参与判定
|
||
if ($scope.jcxmData[index].Type == 2) {
|
||
$scope.jcxmData[index].Yzhen = "不作评价";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
|
||
}
|
||
}
|
||
//如果是文本框
|
||
else {
|
||
// console.log($scope.jcxmData[index]);
|
||
if ($scope.jcxmData[index].Type == 1) {
|
||
|
||
if ($scope.jcxmData[index].bzz.substring(1, $scope.jcxmData[index].bzz.length) > ee || $scope.jcxmData[index].bzz.substring(1, $scope.jcxmData[index].bzz.length)==ee) {
|
||
$scope.jcxmData[index].Yzhen = "合格";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
|
||
else {
|
||
$scope.jcxmData[index].Yzhen = "问题";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
} else if ($scope.jcxmData[index].Type == 2) {
|
||
$scope.jcxmData[index].Yzhen = "不作评价";
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
|
||
} else {
|
||
switch (bzz.substring(0, 1)) {
|
||
case "<":
|
||
if (bzz.substring(1, bzz.length) > ee) {
|
||
$scope.jcxmData[index].Yzhen = "合格"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else if (bzz.substring(1, bzz.length) < ee) {
|
||
$scope.jcxmData[index].Yzhen = "不合格"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else {
|
||
$scope.jcxmData[index].Yzhen = "待验证"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
break;
|
||
case "≤":
|
||
if (bzz.substring(1, bzz.length) > ee || bzz.substring(1, bzz.length) == ee) {
|
||
$scope.jcxmData[index].Yzhen = "合格"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else if (bzz.substring(1, bzz.length) < ee) {
|
||
$scope.jcxmData[index].Yzhen = "不合格"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else {
|
||
$scope.jcxmData[index].Yzhen = "待验证"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
break;
|
||
case ">":
|
||
if (bzz.substring(1, bzz.length) > ee) {
|
||
$scope.jcxmData[index].Yzhen = "不合格"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else if (bzz.substring(1, bzz.length) < ee) {
|
||
$scope.jcxmData[index].Yzhen = "合格"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else {
|
||
$scope.jcxmData[index].Yzhen = "待验证"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
break;
|
||
|
||
case "≥":
|
||
if (bzz.substring(1, bzz.length) > ee || bzz.substring(1, bzz.length) == ee) {
|
||
$scope.jcxmData[index].Yzhen = "不合格"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else if (bzz.substring(1, bzz.length) < ee) {
|
||
$scope.jcxmData[index].Yzhen = "合格"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
} else {
|
||
$scope.jcxmData[index].Yzhen = "待验证"
|
||
$scope.jcxmData[index].jcz = jcz;
|
||
}
|
||
break;
|
||
}
|
||
|
||
//if ($scope.jcxmData[index].bzz.substring(1, $scope.jcxmData[index].bzz.length) > ee || $scope.jcxmData[index].bzz.substring(1, $scope.jcxmData[index].bzz.length) == ee) {
|
||
// $scope.jcxmData[index].Yzhen = "合格"
|
||
// $scope.jcxmData[index].jcz = jcz;
|
||
//} else if ($scope.jcxmData[index].bzz.substring(1, $scope.jcxmData[index].bzz.length) < ee) {
|
||
|
||
// $scope.jcxmData[index].Yzhen = "不合格"
|
||
// $scope.jcxmData[index].jcz = jcz;
|
||
//} else {
|
||
// $scope.jcxmData[index].Yzhen = "待验证"
|
||
// $scope.jcxmData[index].jcz = jcz;
|
||
//}
|
||
}
|
||
|
||
|
||
|
||
}
|
||
|
||
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
|
||
|
||
|
||
|
||
//验证结果确认
|
||
$scope.Save = function (index, myid, myjcz, myffjcxDW) {
|
||
YPJBXXGL.getAll({ $filter: CYDBH }, function (data) {
|
||
if ((data.value[0].YPJBZTType == 4) && ($sessionStorage.user.type == 4 || $sessionStorage.user.type == 5)) {
|
||
alert("该样品已批准 无法更改");
|
||
//$scope.WoDiu = false;
|
||
} else {
|
||
if ($scope.jcxmData.length > 0) {
|
||
$http({
|
||
method: 'post',
|
||
url: Gaddress + '/home/gengxinjiancezhi',
|
||
params: { myid: myid, myjcz: myjcz, myffjcxDW: myffjcxDW }
|
||
}).then(function successCallback(mydata) {
|
||
alert(mydata.data.message)
|
||
});
|
||
|
||
|
||
|
||
/***********样品结果的综合判定*************/
|
||
$scope.DisPro = []; //不合格的项目
|
||
$scope.ProPro = []; //问题项目
|
||
$scope.DisAndPro = []; //不做评价项目
|
||
//不合格的项目
|
||
var dis = Enumerable.From($scope.jcxmData).Where(function (x) { return x.Yzhen == "不合格" }).ToArray();
|
||
angular.forEach(dis, function (data1) {
|
||
var aa = {
|
||
jcxm: data1.JCXM,
|
||
jcz: data1.jcz,
|
||
jczdw: data1.ffjcxDW,
|
||
|
||
}
|
||
$scope.DisPro.push(aa);
|
||
|
||
// console.log(angular.toJson($scope.DisPro));
|
||
})
|
||
|
||
//问题项目
|
||
var pro = Enumerable.From($scope.jcxmData).Where(function (x) { return x.Yzhen == "问题" }).ToArray();
|
||
angular.forEach(pro, function (data1) {
|
||
var bb = {
|
||
jcxm: data1.JCXM,
|
||
jcz: data1.jcz,
|
||
jczdw: data1.ffjcxDW,
|
||
|
||
}
|
||
$scope.ProPro.push(bb);
|
||
|
||
})
|
||
|
||
//不做评价项目
|
||
var dis_pro = Enumerable.From($scope.jcxmData).Where(function (x) { return x.Yzhen == "不作评价" }).ToArray();
|
||
angular.forEach(dis_pro, function (data1) {
|
||
var cc = {
|
||
jcxm: data1.JCXM,
|
||
jcz: data1.jcz,
|
||
jczdw: data1.ffjcxDW,
|
||
|
||
}
|
||
$scope.DisAndPro.push(cc);
|
||
})
|
||
|
||
console.log($scope.DisAndPro);
|
||
var AllJcz1 = Enumerable.From($scope.jcxmData).Where(function (x) { return x.jcz == "" || x.jcz == "undefined" }).ToArray();
|
||
if (AllJcz1.length > 0) {
|
||
$scope.JieGuo = "待验证";
|
||
} else {
|
||
if ($scope.DisPro.length != 0 && $scope.ProPro.length == 0) {
|
||
$scope.JieGuo = "不合格"
|
||
} else if ($scope.ProPro.length != 0 && $scope.DisPro.length != 0) {
|
||
$scope.JieGuo = "不合格/问题"
|
||
|
||
} else if ($scope.ProPro.length != 0) {
|
||
$scope.JieGuo = "问题"
|
||
} else if ($scope.DisAndPro.length == $scope.jcxmData.length) {
|
||
$scope.JieGuo = "不作评价"
|
||
} else {
|
||
$scope.JieGuo = "合格"
|
||
}
|
||
}
|
||
|
||
//保存数据 更新数据库
|
||
if (confirm('确定保存')) {
|
||
// console.log(angular.toJson($scope.jcxmData));
|
||
YPJBXXGL.update({ id: $stateParams.id },
|
||
{
|
||
JCXXX: $scope.jcxmData,
|
||
DisPro: $scope.DisPro,
|
||
ProPro: $scope.ProPro,
|
||
DisAndPro: $scope.DisAndPro,
|
||
JieGuo: $scope.JieGuo,
|
||
}, function (data) { $scope.shuF5(); })
|
||
}
|
||
|
||
|
||
//如果是页面最底端的保存 index==undefined时 页面跳转 改变样品状态
|
||
if (index == undefined) {
|
||
|
||
var AllJcz1 = Enumerable.From($scope.jcxmData).Where(function (x) { return x.jcz == "" || x.jcz == "undefined" }).ToArray();
|
||
|
||
// console.log(angular.toJson(dd));
|
||
if (AllJcz1.length > 0) {
|
||
alert("还有为未检测的项,无法审核");
|
||
} else {
|
||
if (data.value[0].YPJBZTType == 5) {
|
||
// alert("OK");
|
||
data.value[0].YPJBZTType = 2;
|
||
data.value[0].YPJBZT = "已检测"
|
||
}
|
||
YPJBXXGL.update({ id: $stateParams.id }, { YPJBZTType: data.value[0].YPJBZTType, YPJBZT: data.value[0].YPJBZT, YPPJXX: $scope.JieGuo, }, function (data) {
|
||
})
|
||
}
|
||
}
|
||
} else { alert("该任务没有检测项目") }
|
||
}
|
||
})
|
||
|
||
}
|
||
|
||
|
||
|
||
//***********删除检测项************/
|
||
$scope.DeletePro = function () {
|
||
if ($scope.selected.length > 0) {
|
||
if (confirm("确定要删除该检测项?")) {
|
||
var CYD = "_id eq '" + $stateParams.id + "'";
|
||
//先找到页面中的数据
|
||
YPJBXXGL.getAll({ $filter: CYD }, function (data1) {
|
||
//循环选择要删除的id
|
||
for (r = 0; r < $scope.selected.length; r++) {
|
||
//console.log($scope.selected[r]);
|
||
//循环当前页面中的JCXXX找到其roleId==选择要删除的id 然后删除
|
||
for (i = 0; i < data1.value[0].JCXXX.length; i++) {
|
||
if (data1.value[0].JCXXX[i].roleId == $scope.selected[r]) {
|
||
data1.value[0].JCXXX.splice(i, 1);
|
||
}
|
||
}
|
||
}
|
||
//更新数据库
|
||
YPJBXXGL.update({ id: data1.value[0].id }, { JCXXX: data1.value[0].JCXXX }, function (data2) {
|
||
$scope.shuF5();
|
||
$scope.selected = [];
|
||
})
|
||
var userName = sessionStorage.getItem('userName');
|
||
$http.post('/home/sqlshanchu', { "ids": $scope.selected, "userName": userName }).success(function (mydata) {
|
||
alert(mydata.data.message);
|
||
})
|
||
|
||
})
|
||
|
||
}
|
||
|
||
|
||
|
||
}
|
||
else { alert("请选择你要删除的项目") }
|
||
}
|
||
|
||
|
||
//************添加检测项目***********/
|
||
$scope.AddPro = function () {
|
||
var modalInstance = $uibModal.open({
|
||
animation: true,
|
||
backdrop: false, // 不让点击背景关闭系统
|
||
templateUrl: 'app/model/modalJCBZ_Select.html',
|
||
controller: 'modalRWDZ_JCXMSelectCtrl',
|
||
size: 'lg',
|
||
//windowTopClass:'dialog'
|
||
resolve: {
|
||
items: function () {
|
||
return $scope.items;
|
||
}
|
||
}
|
||
});
|
||
modalInstance.result.then(
|
||
function (nclose) {
|
||
$scope.myData = nclose;
|
||
|
||
YPJBXXGL.getAll({ $filter: CYDBH }, function (data) {
|
||
|
||
angular.forEach($scope.myData, function (data1) {
|
||
|
||
//如果当前页面不存在 添加的项 才往页面中添加
|
||
var Cunzai = Enumerable.From(data.value[0].JCXXX).Where(function (x) { return x.roleName == data1.roleName }).ToArray();
|
||
|
||
if (Cunzai.length == 0) {
|
||
|
||
//往JCXXX中添加数据
|
||
data.value[0].JCXXX.push(data1);
|
||
console.log(angular.toJson(data.value[0].JCXXX));
|
||
} else { "该项目已存在" }
|
||
|
||
})
|
||
//修改数据库
|
||
YPJBXXGL.update({ id: $stateParams.id }, { JCXXX: data.value[0].JCXXX }, function (data1) {
|
||
$scope.shuF5();
|
||
$scope.selected = [];
|
||
})
|
||
|
||
})
|
||
|
||
},
|
||
function (ndismiss) { $scope.returnData = ndismiss }
|
||
)
|
||
}
|
||
|
||
|
||
/**************不参与评价********************/
|
||
$scope.BuCan = function () {
|
||
if ($scope.selected.length > 0) {
|
||
angular.forEach($scope.selected, function (data) {
|
||
// console.log(angular.toJson($scope.jcxmData));
|
||
|
||
for (i = 0; i < $scope.jcxmData.length; i++) {
|
||
if ($scope.jcxmData[i].id == data) {
|
||
$scope.jcxmData[i].Yzhen = "不作评价";
|
||
$scope.jcxmData[i].Type = 2;
|
||
}
|
||
}
|
||
})
|
||
$scope.selected = [];
|
||
} else { alert("请选择不参与判定的项目") }
|
||
|
||
}
|
||
/*************刷新的方法************/
|
||
|
||
$scope.shuF5 = function () {
|
||
|
||
$scope.jcxmData = [];
|
||
var dd = '';
|
||
YPJBXXGL.getAll({ $filter: CYDBH }, function (data) {
|
||
angular.forEach(data.value[0].JCXXX, function (data1) {
|
||
// console.log(angular.toJson(data1));
|
||
var xiaolei = data1.JCXL == "" || data1.JCXL == undefined ? data1.JCPZ : data1.JCXL;
|
||
var dd = {
|
||
roleName: data1.roleName,
|
||
roleId: data1.roleId,
|
||
JCXL: xiaolei,
|
||
JCYL: data1.JCYL,
|
||
JCDL: data1.JCDL,
|
||
id: data1.roleId,
|
||
JCXM: data1.roleName,
|
||
JCFF: data1.JCFF,
|
||
JCBZ: data1.JCBZ,
|
||
ffjcx: data1.ffjcx,
|
||
ffdlx: data1.ffdlx,
|
||
ffjcxDW: data1.ffjcxDW,
|
||
ffdlxDW: data1.ffdlxDW,
|
||
jcz: data1.jcz,
|
||
//jczbz: data1.jczbz,
|
||
Yzhen: data1.Yzhen,
|
||
JCMC: data1.JCMC,
|
||
PJBZ: data1.PJBZ,
|
||
bzz: data1.bzz,
|
||
bzzdw: data1.bzzdw,
|
||
Type: data1.Type,
|
||
|
||
}
|
||
$scope.jcxmData.push(dd);
|
||
})
|
||
|
||
$scope.DisPro = data.value[0].DisPro;
|
||
$scope.ProPro = data.value[0].ProPro;
|
||
$scope.DisAndPro = data.value[0].DisAndPro;
|
||
//$scope.OkPro = data.value[0].OkPro;
|
||
$scope.JieGuo = data.value[0].JieGuo
|
||
|
||
|
||
});
|
||
|
||
|
||
// $scope.jcxmData = Enumerable.From($scope.jcxmData).OrderBy("$.JCXM").ToArray();
|
||
|
||
|
||
}
|
||
|
||
/**************返回到上级页面****************/
|
||
|
||
$scope.Return = function () {
|
||
//$state.go("app.SampleControl");
|
||
closelayer();
|
||
}
|
||
}]);
|
||
|
||
|