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

762 lines
28 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.

/// <reference path="C:\Users\Administrator\Desktop\WEI.UIPro\WEI.UIPro20160726\WEI.UIPro\WEI.UIPro\WEI.UIPro\Scripts/linq.js" />
/**************************折线图******************************/
app.controller('TSJBCtrl', ['$scope', 'YPJBXXGL', '$uibModal', '$sessionStorage', '$state', '$http', '$filter', 'mainUrl', 'wyOdataNodeService', 'stConfig', '$timeout', 'Upload', function ($scope, YPJBXXGL, $uibModal, $sessionStorage, $state, $http, $filter, mainUrl, wyOdataNodeService, stConfig, $timeout, Upload, $uibModalInstance, item) {
$scope.complaintType = [
"发生食源性疾病",
"腐败变质",
"存在异物",
"发现病媒生物",
"环境卫生",
"销售过期食品",
"虚假宣传",
"无证经营",
"没有准时送达",
"标签不规范",
"超范围经营",
"假冒伪劣",
"人员管理不规范",
"原料处理不当",
"无生产日期",
"感官异常",
"无检验检疫证明",
"售卖活禽",
"预包装食品未封口",
"未设置临保专区",
"原料使用不当",
"储存不规范",
"违规加药",
"餐饮具清洗消毒不洁",
"核辐射区生产的食品",
"包装使用不当",
"不正当竞争",
"无法使用卡券"
]
$scope.huanjie = ["销售环节", "生产环节", "餐饮环节"];
var OldThreeData;
//新增加的20230527
//修改数据方法
$scope.ValueEdit = function (item) {
// console.log('新方法的值', item);
//OldThreeData = item;
$scope.FormTitle = '数据审核'
$scope.FormData = item;
if (item.COMPLAINT_TYPE !== '') {
var complaintTypeIndex = $scope.complaintType.indexOf(item.COMPLAINT_TYPE);
if (complaintTypeIndex !== -1) {
document.getElementById("ID").selectedIndex = complaintTypeIndex + 1;
} else {
document.getElementById("ID").selectedIndex = 0;
}
} else {
document.getElementById("ID").selectedIndex = 0;
}
if (item.HUANJIE !== '') {
var huanJieIndex = $scope.huanjie.indexOf(item.HUANJIE);
if (huanJieIndex !== -1) {
document.getElementById("huanjie").selectedIndex = huanJieIndex + 1;
} else {
document.getElementById("huanjie").selectedIndex = 0;
}
} else {
document.getElementById("huanjie").selectedIndex = 0;
}
}
//修改数据方法
$scope.ValueAdd = function () {
//console.log('新方法的值', item);
//OldThreeData = item;
$scope.FormTitle = '新增参数值'
console.log('add_item', item);
$scope.FormData = {
"ID": 0,
"JCDL": "",
"JCYL": "",
"JCXIAOLEI": "",
"JCXILEI": "",
"REMARK": ""
};
}
//替换方法
$scope.PiLiangTiHuan = function () {
//新的打开替换的方法
dLayer.open({
type: 2,
area: ['1200px', '700px'],
content: '../tihuan_zhonghe.html'
});
}
$scope.SaveData = function () {
//UpdateData
$scope.FormData.newComplaintType = document.getElementById("ID").value;
$scope.FormData.auditUser = $scope.auditUser
if ($scope.FormData.ID == 0) {
console.log('新增' + $scope.FormData.ID);
$http.get('./TSJB/AddData?data=' + JSON.stringify($scope.FormData), {}).success(function (res) {
console.log('获取结果', res);
dLayer.msg("新增完成")
$scope.ChaXun();
})
} else if ($scope.FormData.ID == 0) {
$http.post('./TSJB/UpdateDataPending', $scope.FormData)
.then(function (response) {
console.log('获取结果', response.data);
dLayer.msg("审核完成");
// $scope.ChaXun();
})
.catch(function (error) {
console.error('发生错误', error);
});
} else {
$http.post('./TSJB/UpdateData', $scope.FormData)
.then(function (response) {
console.log('获取结果', response.data);
dLayer.msg("审核完成");
$scope.ChaXun();
})
.catch(function (error) {
console.error('发生错误', error);
});
}
//$http.get('./JCXMNEW/UpdateData?data=' + JSON.stringify($scope.FormData), {}).success(function (res) {
// console.log('获取结果', res);
// dLayer.msg("修改完成")
//})
}
$scope.UpdateDataPending = function () {
//UpdateData
$scope.FormData.newComplaintType = document.getElementById("ID").value;
$scope.FormData.auditUser = $scope.auditUser;
$http.post('./TSJB/UpdateDataPending', $scope.FormData)
.then(function (response) {
console.log('获取结果', response.data);
dLayer.msg("审核待定");
$scope.ChaXun();
})
.catch(function (error) {
console.error('发生错误', error);
});
}
$scope.TongJi = function () {
dLayer.open({
type: 2,
area: ['800px', '650px'],
content: ['../JCXMNEW_TongJiTu.html', 'no'] //这里content是一个URL如果你不想让iframe出现滚动条你还可以content: ['http://sentsin.com', 'no']
});
}
$scope.myttt = "等待查询结果";
//todo
$scope.Myjson = [
{"type": 1, "mytext": "工单编号", "PY": "CASE_ID"},
{"type": 1, "mytext": "投诉类型", "PY": "COMPLAINT_TYPE"},
{"type": 1, "mytext": "所属区划", "PY": "AREA_NAME"},
{"type": 1, "mytext": "审核状态", "PY": "STATUS"},
{"type": 1, "mytext": "登记时间", "PY": "REGISTER_DATE"},
{"type": 1, "mytext": "环节", "PY": "HUANJIE"},
{"type": 1, "mytext": "案件类型", "PY": "INFOTYPE"},
{"type": 1, "mytext": "数据来源", "PY": "DATA_SOURCE"},
{"type": 1, "mytext": "网络or线下", "PY": "SALE_MODE"},
];
//、定性值、限量值、限量值单位、检测值、检测值单位、判定
$scope.Myjson1 = [
{"myvalue": 1, "mytext": "等于"},
{"myvalue": 7, "mytext": "不等于"},
{"myvalue": 2, "mytext": "包含"},
{"myvalue": 8, "mytext": "不包含"},
{"myvalue": 3, "mytext": "大于"},
{"myvalue": 4, "mytext": "小于"},
{"myvalue": 5, "mytext": "大于等于"},
{"myvalue": 6, "mytext": "小于等于"},
]
var shipinleibieshuju = {};
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;
}
//console.log(aa);
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);
//$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.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.TJTable = Enumerable.From($scope.TJTable).ToArray();
}
}
//删除条件
$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 "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 "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;
//抽样方式
case "HUANJIE":
$scope.RELYdata = [
{"mytext": "生产环节", "PY": "GJZJ"},
{"mytext": "餐饮环节", "PY": "GJZJ"},
{"mytext": "销售环节", "PY": "GJZJ"},
];
$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.wherestr = "";
$scope.ChaXun = function () {
var wherestr = angular.toJson($scope.TJTable);
if ($scope.TJTable.length <= 0) {
wherestr = "";
}
wherestr = wherestr.replace('+', '%2B');
console.log($scope.tableState.pagination.start)
console.log("分页查询")
console.log(wherestr);
$scope.wherestr = wherestr;
// $scope.tableState.pagination.start = 0;
$scope.getService($scope.tableState, null);
//增加日志20211109
addlog("投诉举报SQL查询", "查询[" + wherestr + "]")
}
$("#delete").hide();
$("#delete2").hide();
$("#tihuan").hide();
var Uname = sessionStorage.getItem('userName');
if (Uname == 'yushenghao') {
$("#delete").show();
$("#delete2").show();
$("#tihuan").show();
}
//直接导出数据的方法
//todo
//导出文档
$scope.ExportAll = function () {
debugger;
if (!tableState.pagination.number) {
tableState.pagination.number = $scope.curpageNumber;
}
// tableState.pagination.number = pageNo;
window.location.href = './TSJB/export?wherestr=' + $scope.wherestr + '&page=' + tableState.pagination.start + '&limit=' + tableState.pagination.number;
//window.location.href = './PageCache/GenExportResult?name=限量值数据&strsql=select SPXL,JCXM,MIN,MAX,DW from xlz';
}
//
//查询审核数
$scope.selectAuditCount = function () {
$http.get('./TSJB/selectAuditCount?auditName=' + $scope.auditUser)
.then(function (response) {
var msg = $scope.auditUser + '在今天审核了' + response.data.data + '条数据';
layer.msg(msg);
// dLayer.msg($scope.auditUser, '在今天审核了', response.data, '条数据');
})
.catch(function (error) {
debugger;
console.error('发生错误', error);
});
}
//导入文档
$scope.ImportAll = function (file) {
debugger;
//下载时候字符串
var myid = new Date().valueOf();
$scope.uploadImg = "";
$scope.isShow = true;
console.log('checkinok!!!')
Upload.upload({
//服务端接收
url: '/TSJB/Import',
//上传的同时带的参数
data: {'username': $sessionStorage.user.UserName, "FileName": myid.toString(), module: 'TSJB'},
file: file[0]
}).progress(function (evt) {
//进度条
$scope.uploadImg = parseInt(100 * evt.loaded / evt.total) + "%";
}).success(function (data, status, headers, config) {
//上传成功
alert("导入成功!");
$scope.ChaXun();
$scope.isShow = false;
//增加日志20211109
addlog("投诉举报管理", "数据_导入" + myid.toString())
})
}
/**************************************************************************************/
//通过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, 500, 1000]; //这个参数进行分页页面上面的每页多少条的设置
$scope.curpageNumber = 10; //这个参数传递当前的每页多少条的数据
$scope.getService = function (tableState, ctrl) {
//if (!wherestr || !wherestr) {
// wherestr = "";
//}
if (!tableState.pagination.number) {
tableState.pagination.number = $scope.curpageNumber;
}
console.log($scope.wherestr);
$http.get('./TSJB/page?wherestr=' + $scope.wherestr + '&page=' + tableState.pagination.start + '&limit=' + tableState.pagination.number, {}).success(function (res) {
// console.log('获取结果', res);
$scope.displayed = res.data.records;
$scope.totalData = res.data.total;
$scope.qiyeshuliang = res.qiyetotal;
$scope.isShow = false;
//当前页面的ID号数组
//$scope.ids = Enumerable.From($scope.displayed).Select(function (x) { return x._id }).ToArray();
//表格数量
$scope.myttt = res.data.total;
tableState.count = res.data.total;
tableState.pagination.numberOfPages = Math.ceil(res.data.total / $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);
}
//新的删除操作20230828单独删除SQLSERVER的数据
//SQLDeleteOne
$scope.SQLDeleteOne = function (id) {
dLayer.confirm('您确定删除编号[' + id + "]的单条数据信息?", {
btn: ['确定', '取消'] //按钮
}, function (index) {
console.log('Execute');
dLayer.close(index);
$http.get('/JCXMNEW/RemoveData?id=' + id).success(function (mydata) {
//curLayer.msg('删除成功,请刷新!');
dLayer.alert("删除成功,请刷新!");
})
}, function () {
dLayer.msg('操作取消')
return;
})
}
/**************************************************************************************/
$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.JYXM = [];
}])