The Week Code - Issue #1

The Week Code (简称:WeC)是浙工大ACM集训队(http://acm.zjut.edu.cn/onlinejudge/ )和 CoderPai 联合推出的每周专题练习赛。我们会将 ACM 集训队内部的训练小专题拿出来和大家一起分享。如果你有什么问题都可以加入QQ讨论群(294609183)一起讨论学习,而且,我们每周都会在微信公众号中公布题解。

本周推送的五题具体知识点如下:

  • hash+后缀数组
  • 链表
  • 堆+模拟
  • 栈的问题
  • 树状数组

做题链接:https://cn.vjudge.net/contest/158212


如果觉得内容有用,帮助多多分享哦 :)

长按或者扫描如下二维码,关注 “CoderPai” 微信号(coderpai)。添加底部的 coderpai 小助手,小助手会拉你进AI实战群。

如果你想加入基础算法讨论群,请加QQ群:294609183

PS D:\22、吴恩达-深度学习\coursera-deep-learning-specialization-master\coursera-deep-learning-specialization-master\C1 - Neural Networks and Deep Learning\Week 3\Planar data classification with one hidden layer> pip install sklearn Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Collecting sklearn Downloading https://pypi.tuna.tsinghua.edu.cn/packages/46/1c/395a83ee7b2d2ad7a05b453872053d41449564477c81dc356f720b16eac4/sklearn-0.0.post12.tar.gz (2.6 kB) Installing build dependencies ... done Getting requirements to build wheel ... error error: subprocess-exited-with-error × Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> [15 lines of output] The 'sklearn' PyPI package is deprecated, use 'scikit-learn' rather than 'sklearn' for pip commands. Here is how to fix this error in the main use cases: - use 'pip install scikit-learn' rather than 'pip install sklearn' - replace 'sklearn' by 'scikit-learn' in your pip requirements files (requirements.txt, setup.py, setup.cfg, Pipfile, etc ...) - if the 'sklearn' package is used by one of your dependencies, it would be great if you take some time to track which package uses 'sklearn' instead of 'scikit-learn' and report it to their issue tracker - as a last resort, set the environment variable SKLEARN_ALLOW_DEPRECATED_SKLEARN_PACKAGE_INSTALL=True to avoid this error More information is available at https://github.com/scikit-learn/sklearn-pypi-package [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. error: subprocess-exited-with-error × Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> See above for output. note: This error originates from a subprocess, and is likely not a problem with pip.
04-01
#!/usr/bin/perl -w ##########################程式信息########################## #脚本名称:防焊开窗优化程式(solder_dfm.pl) #开发人员:欣强电子电脑室(唐伟) #开发时间:2017年8月1#版本信息:Ver_A.1.0 (A:制前规则变更,外部变更或升级;1.0:脚本基带版本号,内部变更或升级) #修改信息:当前版本(Ver_A.1.0),首次开发测试,暂无版本变更信息 ##########################程式信息########################## ##########################提示代码########################## my $panel_bp_101 = "错误代码:101,当前用户没有执行权限,请联系系统管理员!"; my $panel_bp_102 = "错误代码:102,请打开料号后再执行程式!"; my $panel_bp_103 = "错误代码:103,请在打开Step再执行程式!"; my $panel_bp_104 = "错误代码:104,参数不可有空数值!"; my $panel_bp_105 = "错误代码:105,请选择当前料号的工作层!"; my $panel_bp_106 = "错误代码:106,请选择对比料号的对比层!"; my $panel_bp_107 = "错误代码:107,对比料号Step没有创建profile,无法执行profile范围比对!"; my $panel_bp_108 = "错误代码:108,脚本注册失败,无法获取系统管理员权限!"; ##########################提示代码########################## #库及包的调取 use lib "$ENV{GENESIS_DIR}/$ENV{GENESIS_EDIR}/all/perl"; use Genesis; use Tk; use Tk::Tree; use Tk::PNG; use Tk::Bitmap; use Tk::LabFrame; use Tk::LabEntry; use strict; use Encode; use encoding &#39;utf-8&#39;; use Date::Calc qw(Delta_Days); use POSIX qw(strftime); use warnings; use Time::Piece; use Date::Calc qw(Delta_Days); require &#39;shellwords.pl&#39;; ##########################初始化########################## my $f = new Genesis; #new my $version = &#39;A.1.0(测试版)&#39;; #定义版本号 #获取系统时间 my $date = strftime("%Y年%m月%d日",localtime()); #日期(年--日) my $time = strftime("%H时%M分%S秒", localtime(time)); #时间(时--秒) #获取当前系统,主机名,用户组,用户名 my $Sys_name = &GetUserSymtem(); #系统名 my $Hostname = $ENV{HOST}; #主机名 my $User_group = &GetUserGroup(); #用户组 my $Username = &GetUserName(); #用户名 my $User_prive = &GetUserPrive(); #用户权限 #获取当前工作软件环境(默认获取Incam环境变量) my $Soft_path = $ENV{INCAM_PRODUCT}; #获取当前工作料号及step my $JOB = $ENV{JOB}; #料号 my $STEP = $ENV{STEP}; #Step ##########################初始化########################## #tk界面 my $mw = MainWindow->new(-background => "#CDD2E4"); my ($lVer,$Font,$ImgPath); $ImgPath = "$ENV{GENESIS_DIR}/sys/scripts/solder/icon"; chomp($ImgPath); if ($Sys_name =~ /Win/) { #系统权限 $lVer = "Windows"; $Font = "楷体 10"; } elsif ($Sys_name =~ /Linux/) { #获取系统名 $lVer = `cat /etc/issue | head -n 1`; chomp($lVer); $Font = "Ukai 10"; } else { $lVer = "Other OS"; $Font = "SimSun 10"; } if ($User_prive <= 10) { $mw->withdraw; &MessageDialogWarn("$panel_bp_101"); exit(0); } unless ($JOB) { #料号下执行权限 $mw->withdraw; &MessageDialogWarn("$panel_bp_102"); exit(0); } unless ($STEP) { #料号Step下执行权限 $mw->withdraw; &MessageDialogWarn("$panel_bp_103"); exit(0); } ##########################权限控制######################### #######################定义全局变量######################### my $Job_Path; #获取料号路径 if (defined $Soft_path) { $Job_Path = $f->COM("get_job_path,job=$JOB"); #InCAM } else { $Job_Path = `$ENV{GENESIS_DIR}/e$ENV{GENESIS_VER}/misc/dbutil path jobs $JOB`;chomp $Job_Path; #Genesis2000 } my $next_code = "iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAACXBIWXMAAAsSAAALEgHS3X78AAAANklEQVQokWNgGAjwn4GBwZpUDSRp+s9Aoqb/DHg0MeLQgA7g6piIsNGGFCeR5AeSQomkeMALAJpZEs3h4b2/AAAAAElFTkSuQmCC"; my $Week = localtime->week; # my $images_path = "$ImgPath/icon"; # my ($tmopt,$gxopt,$Smdopt,$lbcyjz) = (1,2,2,2); #初始参数 my ($tmopt,$gxopt,$Smdopt,$lbcyjz) = (0.2,2,2.5,2); #初始参数 my $do_type = &#39;type_auto1&#39;; my $l_message = undef; my $message = ""; my $mess = ""; my $event_id = undef; my ($Smd_opt_ftsz,$Cov_opt_ftsz,$Suf_opt_ftsz,$Suf_opt_yjsz,$jdzs,$jdzsjdz); #######################定义全局变量######################### ##########################料号数据######################### $f->DO_INFO("-t MATRIX -d ROW -e $JOB/matrix"); my ($info_ref,@maska,@signa,@mask,@sign); for (my $i = 0 ; $i < @{$f->{doinfo}{gROWname}} ; $i++) { $info_ref = { name => @{$f->{doinfo}{gROWname}}[$i], layer_type => @{$f->{doinfo}{gROWlayer_type}}[$i], context => @{$f->{doinfo}{gROWcontext}}[$i], polarity => @{$f->{doinfo}{gROWpolarity}}[$i], side => @{$f->{doinfo}{gROWside}}[$i], }; if ($info_ref->{context} eq "board" && $info_ref->{layer_type} eq "solder_mask" ) { push(@maska,$info_ref->{name}); } elsif ($info_ref->{context} eq "board" && $info_ref->{layer_type} eq "signal" && ($info_ref->{side} eq "top" || $info_ref->{side} eq "bottom")) { push(@signa,$info_ref->{name}); } } ##########################料号数据######################### ##################### #主窗口设置 my $logo1 = $mw->Photo(-format => &#39;png&#39;,-file => "$ImgPath/twei_logo.png"); my $logo2 = $mw->Photo(-format => &#39;png&#39;,-file => "$ImgPath/solder_dfm.png"); my $logo3 = $mw->Photo(-format => &#39;png&#39;,-file => "$ImgPath/ncc.png"); my $gwidth = 635; my $gheight = 350; if ($Sys_name =~ /Linux/) { $gheight = 380; } my $px = int(($mw->screenwidth() - $gwidth) / 2); my $py = int(($mw->screenheight() - $gheight - 20) / 2); $mw->geometry("${gwidth}x${gheight}+$px+$py"); $mw->resizable(0,0); $mw->bind("Escape", sub{exit}); $mw->title("防焊墓碑优化程式(开源免费无限制)"." 版本:$version --BpSystem"); # $mw->iconbitmap("$ImgPath/ncc.ico"); if ($Sys_name =~ /Linux/) { $mw->iconimage($logo3); } else { $mw->iconbitmap("$ImgPath/ncc.ico"); } my $LabelFrame = $mw->Frame( -relief => &#39;ridge&#39;, -background => "#CDD2E4", ) ->pack(-fill => &#39;x&#39;); my $LabelLogo1 = $LabelFrame->Label( -image => $logo1, -anchor => &#39;w&#39;, -bg => "#CDD2E4", )->pack(-side => "left",-expand => 1); my $LabelText2 = $LabelFrame->Label( -text => " 开源时间:2019-12-17\n开发人员:一阵寒风\n微信号码:358143105", -bg => "#CDD2E4", -font => $Font, -fg => "#2f4f4f")->pack(-side => "left",-expand => 1); my $LabelLogo3 = $LabelFrame->Label( -image => $logo2, -anchor => &#39;w&#39;, -bg => "#CDD2E4" )->pack(-side => "left",-expand => 1); my $msgbar = $mw->Label( -borderwidth => 2, -relief => &#39;ridge&#39;, -bg => "#CDD2E4" )->pack(-side => &#39;top&#39;, -fill => &#39;x&#39;); my $messbs = " 当前主机:$Hostname 用户组:$User_group 用户名:$Username 用户权限:$User_prive "; my $event_idmse = undef; $msgbar->Label( -textvariable => \$messbs, -font=>$Font, -bg => "#CDD2E4" )->pack(-fill => &#39;x&#39;); $event_idmse = $mw->repeat(300, \&scroll); my $FrameMain = $mw->LabFrame( -label=>&#39;参数调整区:&#39;, -foreground => "red", -font => $Font, -borderwidth => 2, -relief => &#39;ridge&#39;, -background => "#CDD2E4", ) ->pack(-fill => &#39;both&#39;); my $SubFrameMain = $FrameMain->Frame(-background => "#CDD2E4",) ->pack(-fill => &#39;both&#39;); ###################################################################################### my $SubFrameL = $SubFrameMain->LabFrame( -label=>&#39;运行级别:&#39;, -foreground => "red", -font => $Font, -borderwidth => 2, -relief => &#39;ridge&#39;, -background => "#CDD2E4", ) ->pack(-fill => &#39;both&#39;); my $main = $SubFrameL->Frame(-bg => "#CDD2E4",)->pack(-side => "top",-fill => &#39;both&#39;,-expand => 1); my $optionFrame = $main->Frame(-bg => "#CDD2E4",)->pack(-fill => &#39;both&#39;,-expand => 1); my $sle = $optionFrame->Radiobutton( -background => "#CDD2E4", -text => "整板制作", -font => $Font, -value => &#39;type_auto1&#39;, -variable => \$do_type, )->pack(-side=>&#39;left&#39;,-expand => 1); my $i = 0; while ($i < scalar(@maska)) { $f->INFO(entity_type => &#39;layer&#39;,entity_path => "$JOB/$STEP/$maska[$i]"); if ($f->{doinfo}{gSIDE} eq "top") { my $sle1 = $optionFrame->Radiobutton( -background => "#CDD2E4", -text => "顶层制作", -font => $Font, -value => &#39;type_auto2&#39;, -variable => \$do_type, )->pack(-side=>&#39;left&#39;,-expand => 1); my $sle2 = $optionFrame->Radiobutton( -background => "#CDD2E4", -text => "顶层自选", -font => $Font, -value => &#39;type_auto3&#39;, -variable => \$do_type, )->pack(-side=>&#39;left&#39;,-expand => 1); } else { my $sle1 = $optionFrame->Radiobutton( -background => "#CDD2E4", -text => "底层制作", -font => $Font, -value => &#39;type_auto4&#39;, -variable => \$do_type, )->pack(-side=>&#39;left&#39;,-expand => 1); my $sle2 = $optionFrame->Radiobutton( -background => "#CDD2E4", -text => "底层自选", -font => $Font, -value => &#39;type_auto5&#39;, -variable => \$do_type, )->pack(-side=>&#39;left&#39;,-expand => 1); } $i++ } my $select_frm = $SubFrameMain->LabFrame( -label =>"参数设置:单位(mil),均为单边数值,自行调整最优的参数,\"()\"内为推荐参数范围", -borderwidth => 2, -background => "#CDD2E4", -fg => "red", -relief => &#39;ridge&#39;, -font => $Font, )->pack(-side=>&#39;top&#39;,-fill=>&#39;both&#39;); my $show_check = $select_frm->Frame( -background => "#CDD2E4", -borderwidth =>2, -height => 20, )->pack(-side=>&#39;top&#39;,-fill=>&#39;both&#39;); my $thick_board = $show_check->LabEntry( -label => &#39;铜面SMD开窗值(0/1.0):&#39;, -labelBackground => &#39;#CDD2E4&#39;, -labelFont => $Font, -textvariable => \$tmopt, -bg => &#39;white&#39;, -width => 15, -relief=>&#39;ridge&#39;, -state=>"normal", -labelPack => [qw/-side left -anchor w/], )-> grid(-row => &#39;0&#39;, -column => &#39;0&#39;); my $update = $show_check->LabEntry( -label => &#39;SMD最小盖线值(0/2.0):&#39;, -labelBackground => &#39;#CDD2E4&#39;, -labelFont => $Font, -textvariable => \$gxopt, -bg => &#39;white&#39;, -width => 15, -relief=>&#39;ridge&#39;, -state=>"normal", -labelPack => [qw/-side left -anchor w/], )-> grid(-row => &#39;1&#39;, -column => &#39;0&#39;); my $updated = $show_check->Label(-text => &#39; &#39;,-bg =>&#39;#CDD2E4&#39;)->grid(-row => &#39;0&#39;, -column => &#39;1&#39;); my $updatee = $show_check->Label(-text => &#39; &#39;,-bg =>&#39;#CDD2E4&#39;)->grid(-row => &#39;1&#39;, -column => &#39;1&#39;); my $updats = $show_check->LabEntry( -label => &#39;标准SMD开窗值(2/3.0):&#39;, -labelBackground => &#39;#CDD2E4&#39;, -labelFont => $Font, -textvariable => \$Smdopt, -bg => &#39;white&#39;, -width => 15, -relief=>&#39;ridge&#39;, -state=>"normal", -labelPack => [qw/-side left -anchor w/], )-> grid(-row => &#39;0&#39;, -column => &#39;2&#39;); my $updath = $show_check->LabEntry( -label => &#39;SMD接铜圆角值(0/2.0):&#39;, -labelBackground => &#39;#CDD2E4&#39;, -labelFont => $Font, -textvariable => \$lbcyjz, -bg => &#39;white&#39;, -width => 15, -relief=>&#39;ridge&#39;, -state=>"normal", -labelPack => [qw/-side left -anchor w/], )-> grid(-row => &#39;1&#39;, -column => &#39;2&#39;); my $button_frm = $mw->Frame(-background => "#CDD2E4",-borderwidth =>10,-height => 20)->pack(-anchor=>&#39;e&#39;,-fill=>&#39;both&#39;); my $create_button = $button_frm->Button( -text => &#39;执行&#39;, -command => sub {&appy}, -width => 8, -bg=>&#39;#A1AEE1&#39;, -font=> $Font, -height=> 1, )->pack(-side=>&#39;left&#39;,-expand => 1,); my $exit_button = $button_frm->Button( -text => &#39;取消&#39;, -command => sub {exit;}, -width => 8, -bg=>&#39;#A1AEE1&#39;, -font=> $Font, -height=> 1, )->pack(-side=>&#39;left&#39;,-expand => 1,); my $help_button = $button_frm->Button( -text => &#39;帮助&#39;, -command => \&helps, -width => 8, -bg=>&#39;#A1AEE1&#39;, -font=> $Font, -height=> 1, )->pack(-side=>&#39;left&#39;,-expand => 1,); ###################################################################################### my $msgarea = $mw->Label(-borderwidth => 2, -relief => &#39;ridge&#39;,-bg => "#7B7E89",-font=>$Font)->pack(-side => &#39;bottom&#39;, -fill => &#39;x&#39;); my $next = $mw->Photo(-data=>$next_code, -format=>&#39;png&#39;); $msgarea->Label(-image=>$next,-bg => "white")->pack(-side=>&#39;left&#39;,-expand => 1); $msgarea->Label(-textvariable => \$mess,-font=>$Font,-bg => "#7B7E89",-fg => "white")->pack(-side =>&#39;left&#39;,-expand => 1); $event_id = $mw->repeat(300, \&timeout); MainLoop; #主程序 sub appy { if (scalar(@maska) == 2) { if ($do_type eq &#39;type_auto1&#39;) { @mask = @maska; @sign = @signa; } elsif ($do_type eq &#39;type_auto2&#39; or $do_type eq &#39;type_auto3&#39;) { @mask = ($maska[0]); @sign = ($signa[0]); } elsif ($do_type eq &#39;type_auto4&#39; or $do_type eq &#39;type_auto5&#39;) { @mask = ($maska[1]); @sign = ($signa[1]); } } elsif (scalar(@maska) == 1) { if ($do_type eq &#39;type_auto1&#39;) { @mask = @maska; $f->INFO(entity_type => &#39;layer&#39;,entity_path => "$JOB/$STEP/$maska[0]"); my $cjx = $f->{doinfo}{gSIDE}; foreach my $a(@signa) { $f->INFO(entity_type => &#39;layer&#39;,entity_path => "$JOB/$STEP/$a"); if ($f->{doinfo}{gSIDE} eq $cjx) { @sign = ($a); } } } elsif ($do_type eq &#39;type_auto2&#39; or $do_type eq &#39;type_auto3&#39;) { @mask = @maska; foreach my $b(@signa) { $f->INFO(entity_type => &#39;layer&#39;,entity_path => "$JOB/$STEP/$b"); if ($f->{doinfo}{gSIDE} eq "top") { @sign = ($b); } } } elsif ($do_type eq &#39;type_auto4&#39; or $do_type eq &#39;type_auto5&#39;) { @mask = @maska; foreach my $c(@signa) { $f->INFO(entity_type => &#39;layer&#39;,entity_path => "$JOB/$STEP/$c"); if ($f->{doinfo}{gSIDE} eq "bottom") { @sign = ($c); } } } } if ($tmopt eq "" || $gxopt eq "" || $Smdopt eq "" || $lbcyjz eq "") { &MessageDialogWarn("$panel_bp_104"); return; } $mw->iconify; $Smd_opt_ftsz = $Smdopt*2 + 1.2; $Cov_opt_ftsz = $gxopt*2 + 0.15; $Suf_opt_ftsz = $tmopt*2 - 0.1; $Suf_opt_yjsz = $tmopt*1; $f->COM ("units,type=inch"); my $a = 0; while ($a < scalar(@mask)) { &ClearLayer(); $f->VOF; &WorkLayer("$mask[$a].bk"); $f->COM ("sel_delete"); $f->VON; &DelectLay( "$mask[$a].tmp", "$mask[$a].tmps", "$mask[$a].tmpp", "$mask[$a].tmppt", "$mask[$a].tmppd", "$mask[$a].tmpos", "$mask[$a].ds", "$mask[$a].tmppp", "$mask[$a].tmpppd", "$mask[$a].tmppp+++", "$mask[$a].smd", "$mask[$a].smds" ); &WorkLayer("$mask[$a]"); &CopyLay("$mask[$a].bk","no",0); &WorkLayer("$sign[$a]"); my $selcct_fe; if ($do_type eq &#39;type_auto1&#39; or $do_type eq &#39;type_auto2&#39; or $do_type eq &#39;type_auto4&#39;) { $selcct_fe = &SelAttCopy(".smd",0,0); } elsif ($do_type eq &#39;type_auto3&#39; or $do_type eq &#39;type_auto5&#39;) { &do_arec; last; } if ($selcct_fe != 0){ &CopyLay("$mask[$a].tmp","no",0); &WorkLayer("$mask[$a].tmp"); &CopyLay("$mask[$a].tmpp","no",0); &CopyLay("$mask[$a].smd","no",0); } else { last; } &WorkLayer("$sign[$a]"); &CopyLay("$mask[$a].tmppp","no",0); &WorkLayer("$mask[$a].tmpp"); if ($tmopt <= 0) { $jdzs = ($tmopt + $gxopt) * 2; $jdzsjdz = abs($jdzs); } else { $jdzs = 0.1; $jdzsjdz = 0; } &CopyLay("$mask[$a].tmppp","yes",$jdzs); &WorkLayer("$mask[$a].tmppp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_resize,size=$Cov_opt_ftsz,corner_ctl=no"); &WorkLayer("$mask[$a].tmpp"); &CopyLay("$mask[$a].tmppp","yes",$Suf_opt_ftsz); &WorkLayer("$mask[$a].tmppp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_resize,size=-1.5,corner_ctl=no"); &CopyLay("$mask[$a].tmpppd","no",0); $f->COM ("sel_surf2outline,width=1.5"); &WorkLayer("$mask[$a].tmpppd"); &CopyLay("$mask[$a].tmppp","no",0); &WorkLayer("$mask[$a].tmpp"); $f->COM ("sel_resize,size=$Smd_opt_ftsz,corner_ctl=no"); &CopyLay("$mask[$a].tmppt","no",0); &WorkLayer("$mask[$a].tmppp"); &CopyLay("$mask[$a].tmpp","yes",0); &CopyLay("$mask[$a].tmppt","yes",10); &WorkLayer("$mask[$a].tmppt"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); &CopyLay("$mask[$a].tmpp","no",0); &WorkLayer("$mask[$a].tmpp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_resize,size=-$lbcyjz,corner_ctl=no"); &CopyLay("$mask[$a].tmppd","no",0); $f->COM ("sel_surf2outline,width=$lbcyjz"); &WorkLayer("$mask[$a].tmppd"); &CopyLay("$mask[$a].tmpp","no",0); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); &WorkLayer("$mask[$a].tmpp"); $f->COM ("fill_params,type=solid,origin_type=datum,solid_type=fill,std_type=line,min_brush=2,use_arcs=yes,symbol=,dx=0.1,dy=0.1,std_angle=45,std_line_width=10,std_step_dist=50,std_indent=odd,break_partial=yes,cut_prims=no,outline_draw=no,outline_width=0,outline_invert=no"); $f->COM ("sel_fill"); $f->COM ("sel_contourize,accuracy=0.1,break_to_islands=yes,clean_hole_size=3,clean_hole_mode=x_and_y"); &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_resize,size=-0.5,corner_ctl=no"); &WorkLayer("$mask[$a].tmpp"); $f->COM ("sel_ref_feat,layers=$mask[$a].tmp,use=filter,mode=disjoint,pads_as=shape,f_types=line\;pad\;surface\;arc\;text,polarity=positive\;negative,include_syms=,exclude_syms="); my $selcct_com3 = $f->{COMANS}; if ($selcct_com3 != 0){ $f->COM ("sel_delete"); } $f->COM ("sel_ref_feat,layers=$mask[$a].tmp,use=filter,mode=cover,pads_as=shape,f_types=line\;pad\;surface\;arc\;text,polarity=positive\;negative,include_syms=,exclude_syms="); my $selcct_com2 = $f->{COMANS}; if ($selcct_com2 != 0){ $f->COM ("sel_delete"); } &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_resize,size=$Smd_opt_ftsz,corner_ctl=no"); &CopyLay("$mask[$a].tmpos","no",-$lbcyjz); $f->COM ("sel_resize,size=-$lbcyjz,corner_ctl=no"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_surf2outline,width=$lbcyjz"); &WorkLayer("$mask[$a].tmpos"); &CopyLay("$mask[$a].tmp","no",0); &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); &WorkLayer("$mask[$a].tmpp"); &CopyLay("$mask[$a].tmp","yes",0.5); &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_resize,size=0.4,corner_ctl=no"); &WorkLayer("$mask[$a]"); &CopyLay("$mask[$a].ds","no",0); &WorkLayer("$mask[$a].ds"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); &WorkLayer("$mask[$a].smd"); $f->COM ("sel_resize,size=$tmopt,corner_ctl=no"); $f->COM ("sel_resize,size=$Suf_opt_yjsz,corner_ctl=no"); &CopyLay("$mask[$a].smds","no",-1); $f->COM ("sel_resize,size=-1,corner_ctl=no"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_surf2outline,width=1"); &WorkLayer("$mask[$a].smds"); &CopyLay("$mask[$a].smd","no",0); &WorkLayer("$mask[$a].smd"); &CopyLay("$mask[$a].tmp","yes",0); &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("cur_atr_reset"); $f->COM ("cur_atr_set,attribute=.solder_defined"); $f->COM ("sel_change_atr,mode=add"); $f->COM ("cur_atr_reset"); $f->COM ("sel_ref_feat,layers=$mask[$a].ds,use=filter,mode=disjoint,pads_as=shape,f_types=line\;pad\;surface\;arc\;text,polarity=positive\;negative,include_syms=,exclude_syms="); my $selcct_com1 = $f->{COMANS}; if ($selcct_com1 != 0){ $f->COM ("sel_delete"); } $f->COM ("sel_ref_feat,layers=$mask[$a].ds,use=filter,mode=cover,pads_as=shape,f_types=line\;pad\;surface\;arc\;text,polarity=positive\;negative,include_syms=,exclude_syms="); $f->COM ("get_select_count"); my $selcct_com = $f->{COMANS}; if ($selcct_com != 0){ $f->COM ("sel_delete"); } &CopyLay("$mask[$a]","yes",0); $f->COM ("display_layer,name=$mask[$a].bk,display=yes,number=1"); $f->COM ("display_layer,name=$mask[$a],display=yes,number=2"); $f->COM ("work_layer,name=$mask[$a]"); &DelectLay( "$mask[$a].tmp", "$mask[$a].tmps", "$mask[$a].tmpp", "$mask[$a].tmppt", "$mask[$a].tmppd", "$mask[$a].tmpos", "$mask[$a].ds", "$mask[$a].tmppp", "$mask[$a].tmpppd", "$mask[$a].tmppp+++", "$mask[$a].smd", "$mask[$a].smds" ); $a++ } $mw->withdraw; &MessageDialoginfo("脚本运行完成,请认真核对备份层!"); exit; } sub do_arec { while (1) { $f->COM ("filter_reset,filter_name=popup"); $f->COM ("sel_clear_feat"); $f->COM ("clear_highlight"); $f->COM ("filter_set,filter_name=popup,update_popup=yes,feat_types=pad"); $f->COM ("filter_atr_set,filter_name=popup,condition=yes,attribute=.smd"); $f->COM ("filter_highlight"); $f->COM ("display_layer,name=$mask[$a],display=yes,number=2"); $f->MOUSE("r Please SELECT weizhi"); my @MOUSEANS=$f->{MOUSEANS}; my ($x1,$y1,$x2,$y2)=split /\s+/,$f->{MOUSEANS}; $f->COM("filter_area_strt"); $f->COM("filter_area_xy,x=$x1,y=$y1"); $f->COM("filter_area_xy,x=$x2,y=$y2"); $f->COM("filter_area_end,layer=,filter_name=popup,operation=select,area_type=rectangle,inside_area=yes,intersect_area=no"); $f->COM ("get_select_count"); my $selcct_fea = $f->{COMANS}; if ($selcct_fea != 0) { &CopyLay("$mask[$a].tmp","no",0); &WorkLayer("$mask[$a].tmp"); &CopyLay("$mask[$a].tmpp","no",0); &CopyLay("$mask[$a].smd","no",0); } else { $f->COM ("clear_highlight"); $f->COM ("filter_reset,filter_name=popup"); last; } &WorkLayer("$sign[$a]"); $f->COM("filter_reset,filter_name=popup"); $f->COM("filter_area_strt"); $f->COM("filter_area_xy,x=$x1,y=$y1"); $f->COM("filter_area_xy,x=$x2,y=$y2"); $f->COM("filter_area_end,layer=,filter_name=popup,operation=select,area_type=rectangle,inside_area=yes,intersect_area=yes"); &CopyLay("$mask[$a].tmppp","no",0); &WorkLayer("$mask[$a].tmpp"); if ($tmopt <= 0) { $jdzs = ($tmopt + $gxopt) * 2; $jdzsjdz = abs($jdzs); } else { $jdzs = 0.1; $jdzsjdz = 0; } &CopyLay("$mask[$a].tmppp","yes",$jdzs); &WorkLayer("$mask[$a].tmppp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_resize,size=$Cov_opt_ftsz,corner_ctl=no"); &WorkLayer("$mask[$a].tmpp"); &CopyLay("$mask[$a].tmppp","yes",$Suf_opt_ftsz); &WorkLayer("$mask[$a].tmppp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_resize,size=-1.5,corner_ctl=no"); &CopyLay("$mask[$a].tmpppd","no",0); $f->COM ("sel_surf2outline,width=1.5"); &WorkLayer("$mask[$a].tmpppd"); &CopyLay("$mask[$a].tmppp","no",0); $f->COM ("display_layer,name=$mask[$a].tmpp,display=yes,number=1"); $f->COM ("work_layer,name=$mask[$a].tmpp"); &WorkLayer("$mask[$a].tmpp"); $f->COM ("sel_resize,size=$Smd_opt_ftsz,corner_ctl=no"); &CopyLay("$mask[$a].tmppt","no",0); &WorkLayer("$mask[$a].tmppp"); &CopyLay("$mask[$a].tmpp","yes",0); &CopyLay("$mask[$a].tmppt","yes",10); &WorkLayer("$mask[$a].tmppt"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); &CopyLay("$mask[$a].tmpp","no",0); &WorkLayer("$mask[$a].tmpp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_resize,size=-$lbcyjz,corner_ctl=no"); &CopyLay("$mask[$a].tmppd","no",0); $f->COM ("sel_surf2outline,width=$lbcyjz"); &WorkLayer("$mask[$a].tmppd"); &CopyLay("$mask[$a].tmpp","no",0); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); &WorkLayer("$mask[$a].tmpp"); $f->COM ("fill_params,type=solid,origin_type=datum,solid_type=fill,std_type=line,min_brush=2,use_arcs=yes,symbol=,dx=0.1,dy=0.1,std_angle=45,std_line_width=10,std_step_dist=50,std_indent=odd,break_partial=yes,cut_prims=no,outline_draw=no,outline_width=0,outline_invert=no"); $f->COM ("sel_fill"); $f->COM ("sel_contourize,accuracy=0.1,break_to_islands=yes,clean_hole_size=3,clean_hole_mode=x_and_y"); &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_resize,size=-0.5,corner_ctl=no"); &WorkLayer("$mask[$a].tmpp"); $f->COM ("sel_ref_feat,layers=$mask[$a].tmp,use=filter,mode=disjoint,pads_as=shape,f_types=line\;pad\;surface\;arc\;text,polarity=positive\;negative,include_syms=,exclude_syms="); my $selcct_com3a = $f->{COMANS}; if ($selcct_com3a != 0){ $f->COM ("sel_delete"); } $f->COM ("sel_ref_feat,layers=$mask[$a].tmp,use=filter,mode=cover,pads_as=shape,f_types=line\;pad\;surface\;arc\;text,polarity=positive\;negative,include_syms=,exclude_syms="); my $selcct_com2a = $f->{COMANS}; if ($selcct_com2a != 0){ $f->COM ("sel_delete"); } &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_resize,size=$Smd_opt_ftsz,corner_ctl=no"); &CopyLay("$mask[$a].tmpos","no",-$lbcyjz); $f->COM ("sel_resize,size=-$lbcyjz,corner_ctl=no"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_surf2outline,width=$lbcyjz"); &WorkLayer("$mask[$a].tmpos"); &CopyLay("$mask[$a].tmp","no",0); &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); &WorkLayer("$mask[$a].tmpp"); &CopyLay("$mask[$a].tmp","yes",0.5); &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_resize,size=0.4,corner_ctl=no"); &WorkLayer("$mask[$a]"); &CopyLay("$mask[$a].ds","no",0); &WorkLayer("$mask[$a].ds"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); &WorkLayer("$mask[$a].smd"); $f->COM ("sel_resize,size=$tmopt,corner_ctl=no"); $f->COM ("sel_resize,size=$Suf_opt_yjsz,corner_ctl=no"); &CopyLay("$mask[$a].smds","no",-1); $f->COM ("sel_resize,size=-1,corner_ctl=no"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes"); $f->COM ("sel_surf2outline,width=1"); &WorkLayer("$mask[$a].smds"); &CopyLay("$mask[$a].smd","no",0); &WorkLayer("$mask[$a].smd"); &CopyLay("$mask[$a].tmp","yes",0); &WorkLayer("$mask[$a].tmp"); $f->COM ("sel_cont_resize,accuracy=0.1,break_to_islands=yes,island_size=0,hole_size=0,drill_filter=no,corner_ctl=yes "); $f->COM ("cur_atr_reset"); $f->COM ("cur_atr_set,attribute=.solder_defined"); $f->COM ("sel_change_atr,mode=add"); $f->COM ("cur_atr_reset"); $f->COM ("sel_ref_feat,layers=$mask[$a].ds,use=filter,mode=disjoint,pads_as=shape,f_types=line\;pad\;surface\;arc\;text,polarity=positive\;negative,include_syms=,exclude_syms="); my $selcct_com1a = $f->{COMANS}; if ($selcct_com1a != 0){ $f->COM ("sel_delete"); } $f->COM ("sel_ref_feat,layers=$mask[$a].ds,use=filter,mode=cover,pads_as=shape,f_types=line\;pad\;surface\;arc\;text,polarity=positive\;negative,include_syms=,exclude_syms="); $f->COM ("get_select_count"); my $selcct_coma = $f->{COMANS}; if ($selcct_coma != 0){ $f->COM ("sel_delete"); } $f->COM ("sel_copy_other,dest=layer_name,target_layer=$mask[$a],invert=yes,dx=0,dy=0,size=0,x_anchor=0,y_anchor=0,rotation=0,mirror=none"); &CopyLay("$mask[$a]","yes",0); $f->COM ("display_layer,name=$sign[$a],display=yes,number=1"); $f->COM ("display_layer,name=$mask[$a],display=yes,number=2"); $f->COM ("work_layer,name=$sign[$a]"); &DelectLay( "$mask[$a].tmp", "$mask[$a].tmps", "$mask[$a].tmpp", "$mask[$a].tmppt", "$mask[$a].tmppd", "$mask[$a].tmpos", "$mask[$a].ds", "$mask[$a].tmppp", "$mask[$a].tmpppd", "$mask[$a].tmppp+++", "$mask[$a].smd", "$mask[$a].smds" ); $f->COM ("clear_highlight"); $f->COM ("filter_reset,filter_name=popup"); } } ##########################函数区########################## sub SelAttCopy { #属性选择 my ($attribute,$text,$option,$tolay,$invert,$size) = @_; $f->COM("filter_reset,filter_name=popup"); $f->COM ("filter_set,filter_name=popup,update_popup=yes,feat_types=pad"); $f->COM("filter_atr_set,filter_name=popup,condition=yes,attribute=$attribute,text=$text,option=$option"); $f->COM("filter_area_strt"); $f->COM("filter_area_end,layer=,filter_name=popup,operation=select,area_type=none,inside_area=no,intersect_area=no"); $f->COM("get_select_count"); my $selShul = $f->{COMANS}; return $selShul; } sub CopyLay { #复制层 my ($target_layer,$invert,$size) = @_; $f->COM("sel_copy_other,dest=layer_name,target_layer=$target_layer,invert=$invert,dx=0,dy=0,size=$size,x_anchor=0,y_anchor=0,rotation=0,mirror=none"); } sub DelectLay { #删除层(接收多个参数) $f->VOF(); foreach(@_){ $f->COM("delete_layer,layer=$_"); } $f->VON(); } sub WorkLayer { #工作层 my $WorkLay = shift; $f->COM("affected_layer,mode=all,affected=no"); $f->COM("clear_layers"); $f->COM("filter_reset,filter_name=popup"); $f->COM("display_layer,name=$WorkLay,display=yes,number=1"); $f->COM("work_layer,name=$WorkLay"); } sub ClearLayer { #层初始化 my $WorkLay = shift; $f->COM("affected_layer,mode=all,affected=no"); $f->COM("clear_layers"); $f->COM("filter_reset,filter_name=popup"); } sub helps { my $mw = MainWindow->new( -title =>"关于脚本",-background => "#CDD2E4"); $mw->geometry("560x680+800+100"); $mw->resizable(0,0); $mw->update; # if ($Sys_name =~ /Linux/) { # $mw->iconimage($logo3); # } else { # $mw->iconbitmap("$ImgPath/ncc.ico"); # } my $helps_log = $mw->Photo(&#39;info&#39;,-file => "$ImgPath/hp.xpm"); $mw ->Label(-image => $helps_log, -border => 1, -relief => &#39;solid&#39;,)->pack(-side => &#39;top&#39;,-padx => 1,-pady => 1); $mw->Label( -text => "注意事项及免责申明\n". "1.参数设置部分需根据本厂的具体工艺要求合理设置,特殊要求可视情况定制,\n". "2.使用推荐范围内的参数,综合管控及细节处理效果更佳,\n". "3.脚本运行不干涉防焊层,直接以负片的形式做出,请在运行脚本后再做塞孔处理,\n". "4.请认真核对备份层,以免造成未知错误对您产生影响,\n". "5.脚本可以提升效率及品质但不能替代人的作用,可信赖脚本但不可依赖,\n". "6.对于使用本脚本产生任何不良影响与脚本制作者无关,\n". "7.如您继续使用此脚本表示您已接受以上所有条款!\n", -font => &#39;宋体 10&#39;, -background => "#CDD2E4" )->pack(-side => &#39;top&#39;,); $mw->Label( -text => "技术在于碰撞,欢迎大家批评指教,望大家共同努力共同进步!", -fg => &#39;blue&#39;, -font => &#39;宋体 10&#39;, -background => "#CDD2E4", )->pack(-side => &#39;top&#39;,); $mw->Button( -text => &#39;确定&#39;,-command => sub {$mw->destroy;}, -width => 8, -font=> &#39;宋体 10&#39;, -height=> 1, -background => "#A1AEE1" )->pack(-side => &#39;right&#39;, -padx => 12, -pady => 12); $mw->Label( -text => "\n\n Copyright © 2017 Twei Tang. All rights reserved ", -fg => &#39;red&#39;, -font => &#39;宋体 10&#39;, -background => "#CDD2E4", )->pack(-side => &#39;right&#39;,); MainLoop; } sub scroll { $messbs = substr($messbs, 1) . substr($messbs, 0, 1); } sub timeout { $mess = strftime("当前时间: %Y-%m-%d %H:%M:%S 第"."$Week"."周 当前系统: $lVer",localtime()); } sub GetUserSymtem { #获取系统名 my $Sys; if ($^O =~ /linux/) { $Sys = "Linux"; } elsif ($^O =~ /MSWin32/) { $Sys = "Windows"; } else { $Sys = "其它"; } return $Sys; } sub GetUserGroup { #获取用户组 $f->COM(&#39;get_user_group&#39;); return $f->{COMANS}; } sub GetUserName { #获取用户名 $f->COM(&#39;get_user_name&#39;); return $f->{COMANS}; } sub GetUserPrive { #获取用户权限 $f->COM(&#39;get_user_priv&#39;); my @priv = split(/\s+/,$f->{COMANS}); return $priv[0]; } sub MessageDialog { #提示信息窗口 my $title = shift; my $icon = shift; my $type = shift; my $message = shift; $mw->messageBox( -icon => $icon, -message => $message, -title =>$title, ($Sys_name =~ /Linux/) ? (-font => $Font, -background => &#39;#EDECEB&#39;, -bg => &#39;#CDD2E4&#39;, -wraplength => &#39;7i&#39;,-type => $type) : (-type => $type) ); return $type; } sub MessageDialogError { #错误提示窗口 $mw->withdraw; &MessageDialog(&#39;错误提示&#39;,&#39;error&#39;,&#39;ok&#39;,shift); exit; } sub MessageDialogWarn { #警告信息窗口 &MessageDialog(&#39;警告信息&#39;,&#39;error&#39;,&#39;ok&#39;,shift); } sub MessageDialoginfo { #操作信息窗口 &MessageDialog(&#39;操作信息&#39;,&#39;info&#39;,&#39;ok&#39;,shift); } ##########################函数区########################## 注意:这个是使用perl语言的TK GUI写的代码,请你把他变为activeperl TKX GUI的代码,要求实现的功能一模一样,不能添加新的库文件,我懒得添加
07-14
{"openapi":"3.1.0","info":{"title":"Auto FA Task Center","version":"0.1.0"},"paths":{"/jobs/":{"get":{"tags":["Jobs"],"summary":"Read Jobs","operationId":"read_jobs_jobs__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Job"},"type":"array","title":"Response Read Jobs Jobs Get"}}}}}}},"/jobs/remove/":{"post":{"tags":["Jobs"],"summary":"Remove Job Use Id","operationId":"remove_job_use_id_jobs_remove__post","parameters":[{"name":"job_id","in":"query","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"boolean","title":"Response Remove Job Use Id Jobs Remove Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/jobs/Add/update_machine_states":{"post":{"tags":["Jobs"],"summary":"Add Update Machine States Job","operationId":"add_update_machine_states_job_jobs_Add_update_machine_states_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_add_update_machine_states_job_jobs_Add_update_machine_states_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/jobs/Add/down_load_unit_test_detail":{"post":{"tags":["Jobs"],"summary":"Add Down Load Unit Test Detail Job","operationId":"add_down_load_unit_test_detail_job_jobs_Add_down_load_unit_test_detail_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_add_down_load_unit_test_detail_job_jobs_Add_down_load_unit_test_detail_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/":{"get":{"tags":["Scheduler"],"summary":"App Stage","operationId":"app_stage__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/start_auto_run":{"get":{"tags":["Scheduler"],"summary":"App Start","operationId":"app_start_start_auto_run_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/pause_auto_run":{"get":{"tags":["Scheduler"],"summary":"App Pause","operationId":"app_pause_pause_auto_run_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/stop_auto_run":{"get":{"tags":["Scheduler"],"summary":"App Stop","operationId":"app_stop_stop_auto_run_get","parameters":[{"name":"wait","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Wait"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/records?system_fail={system_fail}":{"post":{"tags":["Records"],"summary":"Get Fail Records","operationId":"get_fail_records_records_system_fail__system_fail__post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationTypeFilterDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UnitTestDetail"},"type":"array","title":"Response Get Fail Records Records System Fail System Fail Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/records/":{"post":{"tags":["Records"],"summary":"Get Fail Records","operationId":"get_fail_records_records__post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationTypeFilterDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UnitTestDetail"},"type":"array","title":"Response Get Fail Records Records Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/records/download?system_fail={system_fail}":{"post":{"tags":["Records"],"summary":"Get Fail Records","operationId":"get_fail_records_records_download_system_fail__system_fail__post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationTypeFilterDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/records/download":{"post":{"tags":["Records"],"summary":"Get Fail Records","operationId":"get_fail_records_records_download_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationTypeFilterDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/records/delete":{"post":{"tags":["Records"],"summary":"Delete Fail Records","operationId":"delete_fail_records_records_delete_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationTypeFilterDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"integer","title":"Response Delete Fail Records Records Delete Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/records/Add":{"post":{"tags":["Records"],"summary":"Add Records","operationId":"add_records_records_Add_post","requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UnitTestDetail"},"type":"array","title":"Records"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UnitTestDetail"},"type":"array","title":"Response Add Records Records Add Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fa_items/Add":{"post":{"tags":["FA_Items"],"summary":"Fa Items Add","operationId":"fa_items_add_fa_items_Add_post","requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/FailFAItem"},"type":"array","title":"Fail Items"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"boolean","title":"Response Fa Items Add Fa Items Add Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/fa_items/read":{"post":{"tags":["FA_Items"],"summary":"Fa Items Read","operationId":"fa_items_read_fa_items_read_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/FailFAItem"},"type":"array","title":"Response Fa Items Read Fa Items Read Post"}}}}}}},"/fa_items/import":{"post":{"tags":["FA_Items"],"summary":"Import Mapping List","operationId":"import_mapping_list_fa_items_import_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/FailFAItem"},"type":"array","title":"Response Import Mapping List Fa Items Import Post"}}}}}}},"/dt_items/read":{"post":{"tags":["DT_Items"],"summary":"Dt Items Read","operationId":"dt_items_read_dt_items_read_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ErrorCode"},"type":"array","title":"Response Dt Items Read Dt Items Read Post"}}}}}}},"/dt_items/Add":{"post":{"tags":["DT_Items"],"summary":"Dt Items Add","operationId":"dt_items_add_dt_items_Add_post","requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ErrorCode"},"type":"array","title":"Dt Items"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"boolean","title":"Response Dt Items Add Dt Items Add Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/dt_items/import":{"post":{"tags":["DT_Items"],"summary":"Import Mapping List","operationId":"import_mapping_list_dt_items_import_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ErrorCode"},"type":"array","title":"Response Import Mapping List Dt Items Import Post"}}}}}}},"/machine_states/":{"post":{"tags":["MachineState"],"summary":"Get Machine States","operationId":"get_machine_states_machine_states__post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MachineStateFilterDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/MachineStateDataQuery"},"type":"array","title":"Response Get Machine States Machine States Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/jobs/Add/down_load_raw_data_for_tossing":{"post":{"tags":["Jobs"],"summary":"Add Down Load Raw Data For Tossing Job","operationId":"add_down_load_raw_data_for_tossing_job_jobs_Add_down_load_raw_data_for_tossing_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_add_down_load_raw_data_for_tossing_job_jobs_Add_down_load_raw_data_for_tossing_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/jobs/Add/down_load_raw_data_for_auto_jmp":{"post":{"tags":["Jobs"],"summary":"Add Down Load Raw Data For Auto Jmp Job","operationId":"add_down_load_raw_data_for_auto_jmp_job_jobs_Add_down_load_raw_data_for_auto_jmp_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_add_down_load_raw_data_for_auto_jmp_job_jobs_Add_down_load_raw_data_for_auto_jmp_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/raw_data_headers":{"get":{"tags":["InsightRawData"],"summary":"Read Raw Data Headers","operationId":"read_raw_data_headers_raw_data_headers_get","parameters":[{"name":"skip","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Skip"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/InsightRawDataResponse"},"title":"Response Read Raw Data Headers Raw Data Headers Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/raw_data":{"get":{"tags":["InsightRawData"],"summary":"Read Raw Data","operationId":"read_raw_data_raw_data_get","parameters":[{"name":"skip","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Skip"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/tossing":{"post":{"tags":["Tossing"],"summary":"Get Tossing","description":"获取所有ExchangeUser","operationId":"get_tossing_tossing_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StationTypeFilterDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"Body_add_down_load_raw_data_for_auto_jmp_job_jobs_Add_down_load_raw_data_for_auto_jmp_post":{"properties":{"trigger":{"$ref":"#/components/schemas/IntervalTriggerArgs"},"data_setting":{"$ref":"#/components/schemas/DownLoadRawDataJobSettingForTossing"}},"type":"object","required":["trigger","data_setting"],"title":"Body_add_down_load_raw_data_for_auto_jmp_job_jobs_Add_down_load_raw_data_for_auto_jmp_post"},"Body_add_down_load_raw_data_for_tossing_job_jobs_Add_down_load_raw_data_for_tossing_post":{"properties":{"trigger":{"$ref":"#/components/schemas/IntervalTriggerArgs"},"data_setting":{"$ref":"#/components/schemas/DownLoadRawDataJobSettingForTossing"}},"type":"object","required":["trigger","data_setting"],"title":"Body_add_down_load_raw_data_for_tossing_job_jobs_Add_down_load_raw_data_for_tossing_post"},"Body_add_down_load_unit_test_detail_job_jobs_Add_down_load_unit_test_detail_post":{"properties":{"trigger":{"$ref":"#/components/schemas/IntervalTriggerArgs"},"data_setting":{"$ref":"#/components/schemas/TestUnitDetailsJobSetting"}},"type":"object","required":["trigger","data_setting"],"title":"Body_add_down_load_unit_test_detail_job_jobs_Add_down_load_unit_test_detail_post"},"Body_add_update_machine_states_job_jobs_Add_update_machine_states_post":{"properties":{"trigger":{"$ref":"#/components/schemas/IntervalTriggerArgs"},"data_setting":{"$ref":"#/components/schemas/HiveMachineStateJobSetting"}},"type":"object","required":["trigger","data_setting"],"title":"Body_add_update_machine_states_job_jobs_Add_update_machine_states_post"},"CutTimeWeekOffset":{"properties":{"D1":{"type":"integer","title":"D1","default":0},"D2":{"type":"integer","title":"D2","default":0},"D3":{"type":"integer","title":"D3","default":0},"D4":{"type":"integer","title":"D4","default":0},"D5":{"type":"integer","title":"D5","default":0},"D6":{"type":"integer","title":"D6","default":0},"D7":{"type":"integer","title":"D7","default":0}},"type":"object","title":"CutTimeWeekOffset"},"DownLoadRawDataJobSettingForTossing":{"properties":{"setting_index":{"type":"integer","title":"Setting Index","default":0},"ReportCommand":{"type":"string","title":"Reportcommand","default":"DownLoadRawData"},"report_id":{"type":"string","title":"Report Id","default":""},"FixedStartTime":{"type":"string","format":"date-time","title":"Fixedstarttime"},"FixedEndTime":{"type":"string","format":"date-time","title":"Fixedendtime"},"StartHourAnchor":{"type":"string","enum":["Start","End"],"title":"Starthouranchor","default":"Start"},"StartHourOffset":{"type":"integer","title":"Starthouroffset","default":0},"EndHourOffset":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Endhouroffset"},"shift_hour":{"type":"integer","title":"Shift Hour","default":7},"shift_week_offset":{"$ref":"#/components/schemas/ShiftWeekOffset"},"cut_time_week_offset":{"$ref":"#/components/schemas/CutTimeWeekOffset"},"SITE":{"type":"string","title":"Site","default":"LZSH"},"SITENAME":{"items":{"type":"string"},"type":"array","title":"Sitename","default":[]},"PROJECT":{"type":"string","title":"Project","default":""},"PROJECT_CODE":{"type":"string","title":"Project Code","default":"D48"},"STATIONTYPE":{"items":{"type":"string"},"type":"array","title":"Stationtype","default":[]},"product_code":{"items":{"type":"string"},"type":"array","title":"Product Code","default":[]},"station_type_list":{"items":{"items":{"type":"string"},"type":"array"},"type":"array","title":"Station Type List","default":[]},"line_list":{"items":{"type":"string"},"type":"array","title":"Line List","default":[]},"mail_recipients":{"$ref":"#/components/schemas/ReportRecipients","default":{"bcc":["Xiaoze.Wang@luxsan-ict.cn","Nan1.Chen@luxsan-ict.cn"]}},"parametricType":{"items":{"$ref":"#/components/schemas/ParametricType"},"type":"array","title":"Parametrictype","default":[]},"attributes":{"items":{"type":"string"},"type":"array","title":"Attributes","default":[]},"modules":{"items":{"type":"string"},"type":"array","title":"Modules","default":[]}},"type":"object","required":["shift_week_offset","cut_time_week_offset"],"title":"DownLoadRawDataJobSettingForTossing"},"ErrorCode":{"properties":{"Error_ID":{"type":"string","title":"Error Id","default":""},"Station":{"type":"string","title":"Station"},"Error_description":{"type":"string","title":"Error Description"},"Error_type":{"type":"string","title":"Error Type"},"Component":{"type":"string","title":"Component"},"Sub_Component":{"type":"string","title":"Sub Component"},"Error_Index":{"type":"integer","title":"Error Index"},"Action_Index":{"type":"integer","title":"Action Index"},"RiskLevel":{"type":"string","enum":["High","Medium","Low"],"title":"Risklevel","default":"Low"},"ICT_DRI":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ict Dri","default":""},"Allie_DRI":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Allie Dri","default":""},"Code":{"type":"string","title":"Code"},"category":{"type":"string","title":"Category"},"Error_description_ch":{"type":"string","title":"Error Description Ch"},"Issue_description":{"type":"string","title":"Issue Description"},"Root_cause":{"type":"string","title":"Root Cause"},"Analysis_step":{"type":"string","title":"Analysis Step"},"Short_term":{"type":"string","title":"Short Term"},"Long_term":{"type":"string","title":"Long Term"},"Action":{"type":"string","title":"Action"},"images_count":{"type":"integer","title":"Images Count"}},"type":"object","required":["Station","Error_description","Error_type","Component","Sub_Component","Error_Index","Action_Index","Code","category","Error_description_ch","Issue_description","Root_cause","Analysis_step","Short_term","Long_term","Action","images_count"],"title":"ErrorCode"},"FactoryMetricsFilterData":{"properties":{"station_type":{"items":{"type":"string"},"type":"array","title":"Station Type"},"line_type":{"items":{"type":"string"},"type":"array","title":"Line Type"},"product":{"items":{"type":"string"},"type":"array","title":"Product"},"site":{"items":{"type":"string"},"type":"array","title":"Site"},"apple_code":{"items":{"type":"string"},"type":"array","title":"Apple Code"}},"type":"object","title":"FactoryMetricsFilterData"},"FailFAItem":{"properties":{"failItemId":{"type":"string","title":"Failitemid","default":""},"equipmentType":{"type":"string","title":"Equipmenttype","default":""},"displayName":{"type":"string","title":"Displayname","default":""},"MainPart":{"type":"string","title":"Mainpart","default":""},"SmallPart":{"type":"string","title":"Smallpart","default":""},"test":{"type":"string","title":"Test","default":""},"message":{"type":"string","title":"Message","default":""},"RiskLevel":{"type":"string","enum":["High","Medium","Low"],"title":"Risklevel","default":"Low"},"ICT_DRI":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ict Dri","default":""},"Allie_DRI":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Allie Dri","default":""},"image_count":{"type":"integer","title":"Image Count","default":0},"NG":{"type":"string","title":"Ng","default":""},"OK":{"type":"string","title":"Ok","default":""},"Issue_description":{"type":"string","title":"Issue Description","default":""},"Analysis_step":{"type":"string","title":"Analysis Step","default":""},"Root_cause":{"type":"string","title":"Root Cause","default":""},"Short_term":{"type":"string","title":"Short Term","default":""},"Long_term":{"type":"string","title":"Long Term","default":""},"Action":{"type":"string","title":"Action","default":""}},"type":"object","title":"FailFAItem"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HiveMachineStateJobSetting":{"properties":{"setting_index":{"type":"integer","title":"Setting Index","default":0},"ReportCommand":{"type":"string","title":"Reportcommand","default":"HiveMachineState"},"StartHourOffset":{"type":"integer","title":"Starthouroffset","default":0},"EndHourOffset":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Endhouroffset"},"shift_hour":{"type":"integer","title":"Shift Hour","default":7},"shift_week_offset":{"$ref":"#/components/schemas/ShiftWeekOffset"},"cut_time_week_offset":{"$ref":"#/components/schemas/CutTimeWeekOffset"},"kind":{"type":"string","enum":["MACHINESTATE","ERRORDATA","MACHINEDATA"],"title":"Kind","default":"MACHINESTATE"},"filter_data":{"$ref":"#/components/schemas/FactoryMetricsFilterData"}},"type":"object","required":["shift_week_offset","cut_time_week_offset","filter_data"],"title":"HiveMachineStateJobSetting"},"InitStation":{"properties":{"id":{"type":"integer","title":"Id"},"active":{"type":"boolean","title":"Active"},"last_updated_at":{"type":"string","format":"date-time","title":"Last Updated At"},"last_updated_by":{"type":"string","title":"Last Updated By"},"authorized":{"type":"boolean","title":"Authorized"},"publisher_id":{"type":"string","title":"Publisher Id"},"product":{"type":"string","title":"Product"},"build_type":{"type":"string","title":"Build Type"},"site":{"type":"string","title":"Site"},"building":{"type":"string","title":"Building"},"line":{"type":"string","title":"Line"},"line_name":{"type":"string","title":"Line Name","default":""},"line_type":{"type":"string","title":"Line Type"},"station_type":{"type":"string","title":"Station Type"},"vendor":{"type":"string","title":"Vendor"},"sequence":{"type":"integer","title":"Sequence"},"instance":{"type":"integer","title":"Instance"},"ip_address":{"type":"string","title":"Ip Address"},"registered_mac_addresses":{"type":"string","title":"Registered Mac Addresses"},"mac_addresses_non_usb":{"type":"string","title":"Mac Addresses Non Usb"},"mac_addresses_usb":{"type":"string","title":"Mac Addresses Usb"},"gateway_ip_address":{"type":"string","title":"Gateway Ip Address"},"rfid":{"type":"string","title":"Rfid"},"groundhog_id":{"type":"string","title":"Groundhog Id"},"station_id":{"type":"string","title":"Station Id","default":""},"entity":{"type":"string","title":"Entity","default":""}},"type":"object","required":["id","active","last_updated_at","last_updated_by","authorized","publisher_id","product","build_type","site","building","line","line_type","station_type","vendor","sequence","instance","ip_address","registered_mac_addresses","mac_addresses_non_usb","mac_addresses_usb","gateway_ip_address","rfid","groundhog_id"],"title":"InitStation"},"InsightModuleDataResponse":{"properties":{"ModuleName":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"title":"Modulename","default":""},"SerialNumber":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"title":"Serialnumber","default":""},"Vendor":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"title":"Vendor","default":""},"InfoCode":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"title":"Infocode","default":""},"LotCode":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"title":"Lotcode","default":""},"DateCode":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"title":"Datecode","default":""},"PartNumber":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"title":"Partnumber","default":""}},"type":"object","title":"InsightModuleDataResponse"},"InsightRawDataResponse":{"properties":{"SeriesID":{"type":"string","title":"Seriesid"},"Site":{"type":"string","title":"Site","default":"PGPD"},"Product":{"type":"string","title":"Product","default":"D48"},"SerialNumber":{"type":"string","title":"Serialnumber","default":"C7CHDF004FR0000NBC"},"SpecialBuildName":{"anyOf":[{"type":"string"},{"type":"number"}],"title":"Specialbuildname","default":""},"SpecialBuildDescription":{"anyOf":[{"type":"string"},{"type":"number"}],"title":"Specialbuilddescription","default":""},"UnitNumber":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"title":"Unitnumber","default":""},"StationID":{"type":"string","title":"Stationid","default":"PGPD_F03-4FGC-25_1_MMV"},"Line":{"type":"string","title":"Line","default":""},"StationType":{"type":"string","title":"Stationtype","default":""},"StationInstanceNumber":{"type":"integer","title":"Stationinstancenumber","default":0},"TestPassFailStatus":{"type":"string","title":"Testpassfailstatus","default":"PASS"},"StartTime":{"type":"string","format":"date-time","title":"Starttime","default":"45695.111875"},"EndTime":{"type":"string","format":"date-time","title":"Endtime","default":"45695.1118865741"},"Version":{"anyOf":[{"type":"string"},{"type":"number"}],"title":"Version","default":"BZ-03.41-01.02-03.21-NN.NN"},"ListOfFailingTests":{"anyOf":[{"type":"string"},{"type":"number"}],"title":"Listoffailingtests","default":""},"test_data":{"items":{"$ref":"#/components/schemas/InsightRawDataTestDataResponse"},"type":"array","title":"Test Data"},"module":{"items":{"$ref":"#/components/schemas/InsightModuleDataResponse"},"type":"array","title":"Module"}},"type":"object","required":["test_data","module"],"title":"InsightRawDataResponse"},"InsightRawDataTestDataResponse":{"properties":{"KeyType":{"type":"string","enum":["PARAMETRIC","ATTRIBUTE","HEADER","MODULE"],"title":"Keytype","default":"PARAMETRIC"},"KeyName":{"type":"string","title":"Keyname","default":""},"Value":{"type":"number","title":"Value","default":0}},"type":"object","title":"InsightRawDataTestDataResponse"},"IntervalTriggerArgs":{"properties":{"weeks":{"type":"integer","title":"Weeks","default":0},"days":{"type":"integer","title":"Days","default":0},"hours":{"type":"integer","title":"Hours","default":0},"minutes":{"type":"integer","title":"Minutes","default":0},"seconds":{"type":"integer","title":"Seconds","default":0},"start_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}],"title":"Start Date"},"end_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}],"title":"End Date"},"timezone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Timezone","default":"Asia/Shanghai"},"jitter":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Jitter"}},"type":"object","title":"IntervalTriggerArgs"},"Job":{"properties":{"id":{"type":"string","title":"Id"},"next_run_time":{"type":"string","format":"date-time","title":"Next Run Time"},"state":{"type":"object","title":"State"}},"type":"object","required":["id","next_run_time"],"title":"Job"},"MachineStateDataQuery":{"properties":{"message_id":{"type":"string","title":"Message Id"},"kind":{"type":"string","title":"Kind","default":"MACHINESTATE"},"station_type":{"type":"string","title":"Station Type"},"machine_state":{"type":"integer","title":"Machine State"},"state_change_time":{"type":"string","format":"date-time","title":"State Change Time"},"code":{"anyOf":[{"type":"string"},{"type":"number"}],"title":"Code"},"error_message":{"anyOf":[{"type":"string"},{"type":"number"}],"title":"Error Message"},"sub_station":{"anyOf":[{"type":"string"},{"type":"number"}],"title":"Sub Station","default":""},"error_id":{"type":"string","title":"Error Id","default":""},"publisher_id":{"type":"string","title":"Publisher Id"},"is_closed":{"type":"boolean","title":"Is Closed","default":false},"next_message_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Message Id"},"next_state_change_time":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Next State Change Time"},"state_start_time":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"State Start Time"},"state_end_time":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"State End Time"},"state_duration_time":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"State Duration Time"},"state_duration_minute":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"State Duration Minute"},"station":{"$ref":"#/components/schemas/InitStation"},"error_detail":{"anyOf":[{"$ref":"#/components/schemas/ErrorCode"},{"type":"null"}]}},"type":"object","required":["message_id","station_type","machine_state","state_change_time","code","error_message","publisher_id","station"],"title":"MachineStateDataQuery"},"MachineStateFilterDict":{"properties":{"station_type":{"items":{"type":"string"},"type":"array","title":"Station Type"},"machine_state":{"items":{"type":"integer"},"type":"array","title":"Machine State"},"state_duration_time":{"prefixItems":[{"type":"integer"},{"type":"integer"}],"type":"array","maxItems":2,"minItems":2,"title":"State Duration Time","default":[0,999999]},"start_time":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Start Time"},"end_time":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"End Time"}},"type":"object","title":"MachineStateFilterDict"},"ParametricType":{"properties":{"stationType":{"type":"string","title":"Stationtype","default":""},"overlayVersion":{"items":{"type":"string"},"type":"array","title":"Overlayversion","default":[]},"overlayVersionAll":{"type":"boolean","title":"Overlayversionall","default":true},"keys":{"items":{"type":"string"},"type":"array","title":"Keys","default":[]}},"type":"object","title":"ParametricType"},"ReportRecipients":{"properties":{"to":{"anyOf":[{"items":{"type":"string","format":"email"},"type":"array"},{"type":"null"}],"title":"To"},"cc":{"anyOf":[{"items":{"type":"string","format":"email"},"type":"array"},{"type":"null"}],"title":"Cc"},"bcc":{"anyOf":[{"items":{"type":"string","format":"email"},"type":"array"},{"type":"null"}],"title":"Bcc"}},"type":"object","title":"ReportRecipients"},"ShiftWeekOffset":{"properties":{"D1":{"type":"integer","title":"D1","default":0},"D2":{"type":"integer","title":"D2","default":0},"D3":{"type":"integer","title":"D3","default":0},"D4":{"type":"integer","title":"D4","default":0},"D5":{"type":"integer","title":"D5","default":0},"D6":{"type":"integer","title":"D6","default":0},"D7":{"type":"integer","title":"D7","default":0}},"type":"object","title":"ShiftWeekOffset"},"StationTypeFilterDict":{"properties":{"station_type":{"items":{"type":"string"},"type":"array","title":"Station Type"},"start_time":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Start Time"},"end_time":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"End Time"},"isSystem_fail":{"type":"boolean","title":"Issystem Fail","default":false}},"type":"object","required":["station_type"],"title":"StationTypeFilterDict"},"TestUnitDetailsJobSetting":{"properties":{"setting_index":{"type":"integer","title":"Setting Index","default":0},"ReportCommand":{"type":"string","title":"Reportcommand","default":"TestUnitDetails"},"report_id":{"type":"string","title":"Report Id","default":""},"StartHourAnchor":{"type":"string","enum":["Start","End"],"title":"Starthouranchor","default":"Start"},"StartHourOffset":{"type":"integer","title":"Starthouroffset","default":0},"EndHourOffset":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Endhouroffset"},"SITENAME":{"items":{"type":"string"},"type":"array","title":"Sitename"},"PROJECT_CODE":{"items":{"type":"string"},"type":"array","title":"Project Code"},"shift_hour":{"type":"integer","title":"Shift Hour","default":7},"shift_week_offset":{"$ref":"#/components/schemas/ShiftWeekOffset"},"cut_time_week_offset":{"$ref":"#/components/schemas/CutTimeWeekOffset"},"station_type_list":{"items":{"type":"string"},"type":"array","title":"Station Type List"},"line_list":{"items":{"type":"string"},"type":"array","title":"Line List"},"site":{"items":{"type":"string"},"type":"array","title":"Site"},"result_type":{"type":"string","enum":["MultiPass","FirstPass"],"title":"Result Type","default":"MultiPass"},"result":{"items":{"type":"string","enum":["PASS","FAIL","RETEST"]},"type":"array","title":"Result"}},"type":"object","required":["shift_week_offset","cut_time_week_offset"],"title":"TestUnitDetailsJobSetting"},"UnitTestDetail":{"properties":{"subSubTest":{"type":"string","title":"Subsubtest"},"masked":{"type":"boolean","title":"Masked"},"highlightTestId":{"type":"string","title":"Highlighttestid","default":""},"localFolderId":{"type":"string","title":"Localfolderid","default":""},"failItemId":{"type":"string","title":"Failitemid","default":""},"displayName":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Displayname","default":""},"configurationCode":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"title":"Configurationcode","default":""},"lineName":{"type":"string","title":"Linename"},"siteName":{"type":"string","title":"Sitename"},"productAssembly":{"type":"string","title":"Productassembly"},"units":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"title":"Units","default":""},"equipmentId":{"type":"string","title":"Equipmentid"},"equipmentType":{"type":"string","title":"Equipmenttype"},"parentBuild":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Parentbuild","default":""},"Name":{"type":"string","title":"Name"},"Result":{"type":"string","title":"Result"},"subTest":{"type":"string","title":"Subtest"},"lock":{"type":"boolean","title":"Lock","default":false},"testEndTime":{"type":"string","format":"date-time","title":"Testendtime"},"startTime":{"type":"string","format":"date-time","title":"Starttime"},"value":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"title":"Value","default":""},"childBuild":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Childbuild","default":""},"mfgYearWeek":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"title":"Mfgyearweek","default":""},"isSecured":{"type":"boolean","title":"Issecured"},"test":{"type":"string","title":"Test"},"fixtureId":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"title":"Fixtureid","default":""},"hashedSerialNumber":{"type":"string","title":"Hashedserialnumber"},"overlayVersion":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Overlayversion","default":""},"lowerLimit":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"title":"Lowerlimit","default":""},"message":{"type":"string","title":"Message","default":""},"headId":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"title":"Headid","default":""},"productCode":{"type":"string","title":"Productcode"},"productName":{"type":"string","title":"Productname","default":""},"qualifier":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Qualifier","default":""},"upperLimit":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"null"}],"title":"Upperlimit","default":""},"isSystem_fail":{"type":"boolean","title":"Issystem Fail","default":true}},"type":"object","required":["subSubTest","masked","lineName","siteName","productAssembly","equipmentId","equipmentType","Name","Result","subTest","testEndTime","startTime","isSecured","test","hashedSerialNumber","productCode"],"title":"UnitTestDetail"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
05-31
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值