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

408 lines
14 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

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

app.controller("SampleApproveCtrl", ['$scope', 'JCDW', 'YPJBXXGL', '$state', '$stateParams', '$sessionStorage', 'mainUrl', 'wyOdataNodeService', 'stConfig', '$timeout', function ($scope, JCDW, YPJBXXGL, $state, $stateParams, $sessionStorage, mainUrl, wyOdataNodeService, stConfig, $timeout) {
//表格中的内容
//YPJBXXGL.get(function (data) {
// $scope.myData = data.value;
// $scope.myttt = $scope.myData.length;
//})
$scope.GOjc = function (id, CYDBH) {
$state.go("app.SampleTest", { id: id, CYDBH: CYDBH });
}
//查看 修改样品信息
$scope.item = 0;
$scope.XiuGai = function (id,cyd) {
dLayer.open({
type: 2,
area: ['1200px', '700px'],
content: Gaddress + '/index.html#/SampleInspectdialog/' + id + '/' + cyd //这里content是一个URL如果你不想让iframe出现滚动条你还可以content: ['http://sentsin.com', 'no']
});
}
//任务来源
$scope.RWLYdata = ["国家食品药品监督管理总局", "上海市食品药品监督管理局"];
//检测机构
$scope.JCDWdata = [];
JCDW.get(function (data) {
// $scope.JCDWdata = data.value;
angular.forEach(data.value, function (data) {
$scope.JCDWdata.push(data.JCJGMC);
})
})
$scope.RWXZdata = ["常规监测", "专项监测", "应急监测", "能力验证", ];
//样品状态
$scope.YPZTdata = ["待送检", "已送检", "已检测", "已审核", "已批准", "审核退回", "批准退回", ];
//勾选的方法
$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.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.Cha = function () {
// alert("1");
$scope.searchSql = '';
$scope.selectList = [];
//任务编号
var rwbh = $scope.srwbh;
$sessionStorage.RWBH = rwbh;
//采样单编号
var cydbh = $scope.scydbh;
$sessionStorage.CYDBH = cydbh;
// 样品名称
var ypmc = $scope.sypmc;
$sessionStorage.YPMC = ypmc;
//r任务开始时间
var ypkssj = $scope.ypkssj;
$sessionStorage.YPKSSJ = ypkssj;
//任务结束时间
var ypjssj = $scope.ypjssj;
$sessionStorage.YPJSSJ = ypjssj;
//任务来源
var rwly = $scope.rwly1;
$sessionStorage.RWLY = rwly;
//样品状态
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 ";
// console.log($scope.searchSql);
}
if (ypmc != undefined && ypmc !='') {
$scope.searchSql = $scope.searchSql + "indexof(YPMC,'" + ypmc + "') ge 0 and ";
}
//如果任务来源不为空
if (rwly != undefined) {
$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) {
$scope.searchSql = $scope.searchSql + "JCDW eq '" + jcjg + "' and ";
}
//如果开始时间不为空
if (ypkssj != undefined) {
var Ktime = $scope.formatDate(ypkssj);
//console.log(aa);
$scope.searchSql = $scope.searchSql + "CYSJ ge '" + Ktime + "' and ";
}
if (ypjssj != undefined) {
var Jtime = $scope.formatDate(ypjssj);
$scope.searchSql = $scope.searchSql + "CYSJ le '" + Jtime + "' and ";
}
$scope.searchSql = $scope.searchSql.substring(0, $scope.searchSql.length - 4);
//增加日志20211109
addlog("样品批准管理", "查询[" + $scope.searchSql + "]")
$scope.getService($scope.tableState, $scope.searchSql);
//$scope.searchSql = '';
}
//批量批准
$scope.PLPZ = function () {
if ($scope.selectList.length > 0) {
angular.forEach($scope.selectList, function (data) {
var id = "_id eq '" + data + "'";
YPJBXXGL.getAll({ $filter: id }, function (data1) {
//console.log(angular.toJson(data1));
if (data1.value[0].YPJBZTType == 3 || data1.value[0].YPJBZTType==40) {
YPJBXXGL.update({ id: data }, { YPJBZTType: "4", YPJBZT: "已批准" }, function (data) {
// $scope.Cha();
//增加日志20211109
addlog("样品批准管理", "修改数据_批准确认[" + data + "]")
})
} else if (data1.value[0].YPJBZTType == 4) {
alert("该任务已批准")
} else {
alert("请选审核该任务")
}
})
})
$timeout(function () { $scope.Cha(); alert("批准成功"); $scope.selectList = []; }, 500);
} else {
alert("请选择你要批准的任务")
}
}
//批量退回
$scope.TuiHui = false;
$scope.PZTH = function () {
if ($scope.selectList.length > 0) {
if (confirm("确认要退回?")) {
$scope.TuiHui = true;
}
}
}
$scope.TuiOk = function () {
if ($scope.selectList.length > 0) {
angular.forEach($scope.selectList, function (data) {
var id = "_id eq '" + data + "'";
YPJBXXGL.getAll({ $filter: id }, function (data1) {
switch (data1.value[0].YPJBZTType) {
case 3:
case 4:
case 40:
YPJBXXGL.update({ id: data }, { YPJBZTType: "40", YPJBZT: "批准退回('" + $scope.tuyy + "')" }, function (data) {
// $scope.Cha();
//增加日志20211109
addlog("样品批准管理", "修改数据_批准退回[" + data + "]")
})
break;
case 1:
case 2:
case 5:
case 30:
alert("请先审批该任务")
}
})
})
$timeout(function () { $scope.Cha(); $scope.selectList = []; $scope.TuiHui = false; alert("退回成功"); }, 500);
} else {
alert("请选择你要退回的任务")
}
}
/**************************************************************************************/
//通过STMATETable 分页显示数据
//以下的参数每个控制器都要有一份
$scope.tableState = []; //这个参数后面会让每次访问服务器后进行同步返回的值赋值,作为中间值使用
$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) {
$scope.tableState = tableState;
if (!$scope.tableState.pagination.number) {
$scope.tableState.pagination.number = $scope.curpageNumber;
}
$scope.isShow = true;
console.log($scope.searchSql + "aaa");
wyOdataNodeService.getData(pubserver, '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 = tableState.count;
$scope.$broadcast('checkini');
//console.log($scope.ids);
});
};
//模板的分页选择触发操作
$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.srwbh = $sessionStorage.RWBH;
if ($scope.searchSql == '') {
$scope.searchSql = "indexof(RWBH,'" + $scope.srwbh + "') ge 0";
} else {
$scope.searchSql = $scope.searchSql + " and indexof(RWBH,'" + $scope.srwbh + "') ge 0";
}
}
//采样单不为空
if ($sessionStorage.CYDBH != undefined && $sessionStorage.CYDBH != '') {
$scope.scydbh = $sessionStorage.CYDBH;
if ($scope.searchSql == '') {
$scope.searchSql = "indexof(CYDBH,'" + $scope.scydbh + "') ge 0";
} else {
$scope.searchSql = $scope.searchSql + " and indexof(CYDBH,'" + $scope.scydbh + "') ge 0";
}
}
//样品名称不为空
if ($sessionStorage.YPMC != undefined && $sessionStorage.YPMC != '') {
$scope.sypmc = $sessionStorage.YPMC;
if ($scope.searchSql == '') {
$scope.searchSql = "indexof(YPMC,'" + $scope.sypmc + "') ge 0";
} else {
$scope.searchSql = $scope.searchSql + " and indexof(YPMC,'" + $scope.sypmc + "') ge 0";
}
}
//样品开始时间不为空
if ($sessionStorage.YPKSSJ != undefined) {
$scope.ypkssj = $sessionStorage.YPKSSJ;
var Ktime = $scope.formatDate($scope.ypkssj);
if ($scope.searchSql == '') {
$scope.searchSql = "CYSJ ge '" + Ktime + "'";
} else {
$scope.searchSql = $scope.searchSql + " and CYSJ le '" + Ktime + "'";
}
}
//样品结束时间不为空
if ($sessionStorage.YPJSSJ != undefined) {
$scope.ypjssj = $sessionStorage.YPJSSJ;
var Jtime = $scope.formatDate($scope.ypjssj);
if ($scope.searchSql == '') {
$scope.searchSql = "CYSJ ge '" + Jtime + "'";
} else {
$scope.searchSql = $scope.searchSql + " and CYSJ le '" + Jtime + "'";
}
}
//任务来源不为空
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 + "'";
}
}
}])