Commit ddfff236 authored by Scott Sun's avatar Scott Sun

Merge branch 'master' of http://gitlab.topibd.net/scott.sun/scott

parents ea6417a0 6007b550
...@@ -56,13 +56,11 @@ var GUI = gui_piug.newGui(gui_piug.__dirname); ...@@ -56,13 +56,11 @@ var GUI = gui_piug.newGui(gui_piug.__dirname);
var PAR = {}; var PAR = {};
if ($.par) { PAR = $.par } else if ($.hasOwnProperty('script_parameter')) { PAR = JSON.parse($.script_parameter); } if ($.par) { PAR = $.par } else if ($.hasOwnProperty('script_parameter')) { PAR = JSON.parse($.script_parameter); }
if (mode === "aimdfm") { if (mode === "aimdfm") {
var database = require("topsin.database"); IKM.crud("updateRow", {
database.addConnection($.conf.database_conf, "DFM"); table: "pdm_aimdfm_task",
var QDfm = database.query("DFM"); data: { current_process_title: $.process_title },
$.QDfm = QDfm; where: { id: $.task_id }
if ($.conf.product_type == "aimdfm") { })
QDfm.updateRow({ table: "pdm_aimdfm_task", data: { current_process_title: $.process_title }, where: { id: $.task_id } });
}
} }
var Status = 'ok'; var Status = 'ok';
var resultData = []; var resultData = [];
...@@ -94,55 +92,13 @@ try { ...@@ -94,55 +92,13 @@ try {
} }
// 主体 // 主体
var stepList = GEN.getStepList({job:job}) // 工作step列表 var stepList = GEN.getStepList({job:job}) // 工作step列表
stepList = stepList.filter(function(step){ stepList = stepList.filter(function(step){
var reg = new RegExp(par.step,"ig"); var reg = new RegExp(par.step,"ig");
return reg.test(step); return reg.test(step);
}) })
var verification = function(size) {
return size <= 500
}
var drills = getLayer({layer_type:"drill",name:"drl"})
stepList.forEach(function(step) {
GEN.openStep({ job: job, name: step });
GEN.clearLayers(); //清除层显示
GEN.affectedLayer({ mode: 'all', affected: 'no' }); //设置影响层全部不影响
GEN.COM("sel_options,clear_mode=clear_after,display_mode=all_layers,area_inout=inside,area_select=select,select_mode=standard,area_touching_mode=exclude");
GEN.units({ type: par.units }); //单位初始化
GEN.zoomHome(); //窗口显示回到原始位置
GEN.selClearFeature()
drills.forEach(function(drl) {
GEN.workLayer({name:drl,display_number:2,clear_before:'yes'})
var sys = GEN.getLayerSymsHist({job:Job,step:'net',layer:drl,units:'mm'})
var includesys = [];
// r700":{"symbol":"r700","line":"0","pad":"400","arc":"0","size":"700"},
Object.keys(sys).forEach(function(key){
var symbolinfo = sys[key];
if(!symbolinfo.size && symbolinfo.width){
symbolinfo.size = symbolinfo.width > symbolinfo.height ? symbolinfo.width : symbolinfo.height;
}
if(symbolinfo.size){
symbolinfo.size = symbolinfo.size - 0;
if(verification(symbolinfo.size)){
includesys.push(symbolinfo.symbol)
}
}
})
if(includesys.length){
GEN.selectByFilter({include_syms:includesys.join(";")})
if(GEN.getSelectCount()>0){
GEN.COM("cur_atr_set,attribute=.drill,option=via")
GEN.COM("sel_change_atr,mode=add")
}
}
})
})
...@@ -157,7 +113,11 @@ try { ...@@ -157,7 +113,11 @@ try {
// 结尾返回 固定写法 // 结尾返回 固定写法
var Return = "Done" var Return = "Done"
if (mode === "aimdfm") { if (mode === "aimdfm") {
$.QDfm.updateRow({ table: "pdm_aimdfm_task", data: { progress: 100 }, where: { id: $.task_id } }); IKM.crud("updateRow", {
table: "pdm_aimdfm_task",
data: { progress: 100 },
where: { id: $.task_id }
})
var tmperr = { type: "info", title: "操作完成, 请注意检查!" } var tmperr = { type: "info", title: "操作完成, 请注意检查!" }
if (GEN.hasError()) { if (GEN.hasError()) {
Status = 'error'; Status = 'error';
...@@ -177,8 +137,8 @@ try { ...@@ -177,8 +137,8 @@ try {
return (mode === "aimdfm") ? { status: Status, result_data: resultData } : "Error"; return (mode === "aimdfm") ? { status: Status, result_data: resultData } : "Error";
} }
// 获取层别
// func (Object) ([]string)
function getLayer(props){ // 获取层 function getLayer(props){ // 获取层
if (!props) { if (!props) {
return return
...@@ -191,11 +151,18 @@ function getLayer(props){ // 获取层 ...@@ -191,11 +151,18 @@ function getLayer(props){ // 获取层
var info = matrix[b]; var info = matrix[b];
var ret = true; var ret = true;
for (var key in props) { for (var key in props) {
if (!Array.isArray(props[key])) { if (info[key]) {
props[key] = [props[key]] if(/string/ig.test(typeof props[key])){
} var reg = new RegExp(props[key],"ig")
if (info[key] && props[key].indexOf(info[key]) < 0) { if(!reg.test(info[key])){
ret = false ret = false
}
}
if(/function/ig.test(typeof props[key])){
if(!props[key](info[key])){
ret = false
}
}
} }
} }
if (ret) { if (ret) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment