更新
This commit is contained in:
parent
f6b3f2f323
commit
461bd6ba85
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-08-22 14:57:50
|
* @Date: 2022-08-22 14:57:50
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-13 14:33:51
|
* @LastEditTime: 2023-01-06 14:57:22
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
@ -276,7 +276,7 @@ img {
|
|||||||
&:focus,
|
&:focus,
|
||||||
&:hover {
|
&:hover {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
background-color: mix(#000, $--color-primary, 15%);
|
background-color: mix(#fff, $--color-primary, 15%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
> .el-menu-item.is-active,
|
> .el-menu-item.is-active,
|
||||||
@ -318,7 +318,7 @@ img {
|
|||||||
transition: width .3s;
|
transition: width .3s;
|
||||||
}
|
}
|
||||||
&__brand {
|
&__brand {
|
||||||
background-color: #409eff;
|
background-color: rgba(0, 21, 41, 1);
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -478,12 +478,16 @@ img {
|
|||||||
&:focus,
|
&:focus,
|
||||||
&:hover {
|
&:hover {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
background-color: #2863af;
|
background-color: rgba(11, 88, 255, 1);
|
||||||
|
.aui-sidebar__menu-icon-son{
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.el-menu,
|
.el-menu,
|
||||||
.el-submenu.is-opened {
|
.el-submenu.is-opened {
|
||||||
background-color: #0b253f;
|
background-color: rgba(11, 37, 63, 1);
|
||||||
}
|
}
|
||||||
.el-menu-item.is-active,
|
.el-menu-item.is-active,
|
||||||
.el-submenu.is-active > .el-submenu__title {
|
.el-submenu.is-active > .el-submenu__title {
|
||||||
@ -521,6 +525,16 @@ img {
|
|||||||
color: inherit !important;
|
color: inherit !important;
|
||||||
transition: font-size .3s;
|
transition: font-size .3s;
|
||||||
}
|
}
|
||||||
|
&__menu-icon-son {
|
||||||
|
display: inline-block;
|
||||||
|
vertical-align: middle;
|
||||||
|
width: 8px !important;
|
||||||
|
margin: 0 10px;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 8px;
|
||||||
|
color: inherit !important;
|
||||||
|
transition: font-size 0.3s;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -592,20 +606,17 @@ img {
|
|||||||
}
|
}
|
||||||
& > .el-tabs__item {
|
& > .el-tabs__item {
|
||||||
height: $content--tabs-header-height;
|
height: $content--tabs-header-height;
|
||||||
padding: 0 15px;
|
|
||||||
line-height: $content--tabs-header-height;
|
|
||||||
border: 0;
|
border: 0;
|
||||||
color: $--color-text-regular;
|
padding: 0 10px;
|
||||||
|
color: rgba(89, 89, 89, 1);
|
||||||
&:focus,
|
&:focus,
|
||||||
&:hover,
|
&:hover,
|
||||||
&.is-active {
|
&.is-active {
|
||||||
color: $--color-text-primary;
|
|
||||||
background-color: $--background-color-base;
|
|
||||||
&:after {
|
&:after {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
> .el-icon-close {
|
> .el-icon-close {
|
||||||
color: $--color-text-primary;
|
color: rgba(255, 255, 255, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&:after {
|
&:after {
|
||||||
@ -619,11 +630,20 @@ img {
|
|||||||
background-color: $--color-primary;
|
background-color: $--color-primary;
|
||||||
}
|
}
|
||||||
+ .el-tabs__item {
|
+ .el-tabs__item {
|
||||||
margin-left: 1px;
|
margin-left: 5px;
|
||||||
|
height: 24px;
|
||||||
|
font-size: 12px;
|
||||||
|
line-height: 24px;
|
||||||
|
border-radius: 5px;
|
||||||
|
background-color: rgba(239, 239, 239, 1);
|
||||||
|
&.is-active {
|
||||||
|
color: rgba(255, 255, 255, 1);
|
||||||
|
background-color: rgba(62, 142, 247, 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
> .el-icon-close {
|
> .el-icon-close {
|
||||||
width: 14px;
|
width: 14px;
|
||||||
margin-left: 15px;
|
margin-left: 6px;
|
||||||
color: $--color-text-secondary;
|
color: $--color-text-secondary;
|
||||||
}
|
}
|
||||||
> i.icon {
|
> i.icon {
|
||||||
|
@ -5,10 +5,10 @@ $base--line-height: 1.15;
|
|||||||
$navbar--height: 50px;
|
$navbar--height: 50px;
|
||||||
|
|
||||||
// Sidebar
|
// Sidebar
|
||||||
$sidebar--width: 230px;
|
$sidebar--width: 248px;
|
||||||
$sidebar--width-fold: 64px;
|
$sidebar--width-fold: 64px;
|
||||||
$sidebar--background-color-dark: #001529;
|
$sidebar--background-color-dark: rgba(0, 21, 41, 1);
|
||||||
$sidebar--text-color-dark: #ffffff;
|
$sidebar--text-color-dark: rgba(255, 255, 255, 1);
|
||||||
$sidebar--menu-item-height: 48px;
|
$sidebar--menu-item-height: 48px;
|
||||||
|
|
||||||
// Content
|
// Content
|
||||||
|
13
src/icons/svg/椭圆形.svg
Normal file
13
src/icons/svg/椭圆形.svg
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg width="8px" height="8px" viewBox="0 0 8 8" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<title>椭圆形</title>
|
||||||
|
<g id="页面" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
|
<g id="最新参考" transform="translate(-32.000000, -131.000000)" stroke="#FFFFFF">
|
||||||
|
<g id="编组-8备份-17" transform="translate(0.000000, 112.000000)">
|
||||||
|
<g id="编组" transform="translate(32.000000, 16.000000)">
|
||||||
|
<circle id="椭圆形" cx="4" cy="7" r="3.5"></circle>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 686 B |
12
src/icons/svg/组织管理.svg
Normal file
12
src/icons/svg/组织管理.svg
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg width="30px" height="30px" viewBox="0 0 20 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<title>组织管理</title>
|
||||||
|
<g id="页面" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
|
<g id="icon" transform="translate(-415.000000, -372.000000)" fill="#ffffff" fill-rule="nonzero">
|
||||||
|
<g id="组织管理" transform="translate(415.000000, 372.000000)">
|
||||||
|
<rect id="矩形" opacity="0" x="0" y="0" width="30" height="30"></rect>
|
||||||
|
<path d="M19.7622702,15.3266872 L18.6600278,15.3266872 L18.6600278,12.4263704 C18.6600278,12.1201573 18.4117931,11.8719225 18.10558,11.8719225 L12.5544479,11.8719225 L12.5544479,10.3366564 L15.3266872,10.3366564 C15.6329003,10.3366564 15.8811351,10.0884216 15.8811351,9.78220852 L15.8811351,4.79217768 C15.8811351,4.48596458 15.6329003,4.23772981 15.3266872,4.23772981 L8.67331278,4.23772981 C8.36709967,4.23772981 8.1188649,4.48596458 8.1188649,4.79217768 L8.1188649,9.78220852 C8.1188649,10.0884216 8.36709967,10.3366564 8.67331278,10.3366564 L11.4455521,10.3366564 L11.4455521,11.8719225 L5.93544919,11.8719225 C5.62945248,11.8719224 5.38130732,12.1198194 5.38100132,12.425816 L5.37767463,15.3266872 L4.23772981,15.3266872 C3.93151671,15.3266872 3.68328194,15.574922 3.68328194,15.8811351 L3.68328194,19.2078223 C3.68328194,19.5140354 3.93151671,19.7622702 4.23772981,19.7622702 L7.56441703,19.7622702 C7.87063014,19.7622702 8.1188649,19.5140354 8.1188649,19.2078223 L8.1188649,15.8811351 C8.1188649,15.574922 7.87063014,15.3266872 7.56441703,15.3266872 L6.48657037,15.3266872 L6.48934261,12.9808183 L11.4455521,12.9808183 L11.4455521,15.3266872 L10.3366564,15.3266872 C10.0304433,15.3266872 9.78220852,15.574922 9.78220852,15.8811351 L9.78220852,19.2078223 C9.78220852,19.5140354 10.0304433,19.7622702 10.3366564,19.7622702 L13.6633436,19.7622702 C13.9695567,19.7622702 14.2177915,19.5140354 14.2177915,19.2078223 L14.2177915,15.8811351 C14.2177915,15.574922 13.9695567,15.3266872 13.6633436,15.3266872 L12.5544479,15.3266872 L12.5544479,12.9808183 L17.5511321,12.9808183 L17.5511321,15.3266872 L16.435583,15.3266872 C16.1293699,15.3266872 15.8811351,15.574922 15.8811351,15.8811351 L15.8811351,19.2078223 C15.8811351,19.5140354 16.1293699,19.7622702 16.435583,19.7622702 L19.7622702,19.7622702 C20.0684833,19.7622702 20.3167181,19.5140354 20.3167181,19.2078223 L20.3167181,15.8811351 C20.3167181,15.574922 20.0684833,15.3266872 19.7622702,15.3266872 Z M9.22776065,5.34662555 L14.7722394,5.34662555 L14.7722394,9.22776065 L9.22776065,9.22776065 L9.22776065,5.34662555 Z M7.00996916,18.6533744 L4.79217768,18.6533744 L4.79217768,16.435583 L7.00996916,16.435583 L7.00996916,18.6533744 Z M13.1088957,18.6533744 L10.8911043,18.6533744 L10.8911043,16.435583 L13.1088957,16.435583 L13.1088957,18.6533744 Z M19.2078223,18.6533744 L16.9900308,18.6533744 L16.9900308,16.435583 L19.2078223,16.435583 L19.2078223,18.6533744 Z" id="形状"></path>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3.0 KiB |
@ -34,10 +34,6 @@ export const moduleRoutes = {
|
|||||||
children: [
|
children: [
|
||||||
{ path: '/home', component: () => import('@/views/modules/home'), name: 'home', meta: { title: '首页', isTab: true } },
|
{ path: '/home', component: () => import('@/views/modules/home'), name: 'home', meta: { title: '首页', isTab: true } },
|
||||||
|
|
||||||
{ path: '/echart-line', component: () => import('@/views/spc-chart/echart-line'), name: 'echart-line', meta: { title: 'spc折线', isTab: true } },
|
|
||||||
{ path: '/echart-3line', component: () => import('@/views/spc-chart/echart-3line'), name: 'echart-3line', meta: { title: 'spc3折线', isTab: true } },
|
|
||||||
{ path: '/echart-2line', component: () => import('@/views/spc-chart/echart-2line'), name: 'echart-2line', meta: { title: 'spc2折线', isTab: true } },
|
|
||||||
|
|
||||||
// 基础信息
|
// 基础信息
|
||||||
{ path: '/productType', component: () => import('@/views/spc-basic/productType'), name: 'productType', meta: { title: '产品类型', isTab: true } },
|
{ path: '/productType', component: () => import('@/views/spc-basic/productType'), name: 'productType', meta: { title: '产品类型', isTab: true } },
|
||||||
{ path: '/productList', component: () => import('@/views/spc-basic/productList'), name: 'productList', meta: { title: '产品列表', isTab: true } },
|
{ path: '/productList', component: () => import('@/views/spc-basic/productList'), name: 'productList', meta: { title: '产品列表', isTab: true } },
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: zwq
|
||||||
|
* @Date: 2022-08-22 14:57:51
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2023-01-06 15:34:54
|
||||||
|
* @Description:
|
||||||
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-submenu v-if="menu.children && menu.children.length >= 1" :index="menu.id" :popper-append-to-body="false">
|
<el-submenu v-if="menu.children && menu.children.length >= 1" :index="menu.id" :popper-append-to-body="false">
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
@ -7,7 +14,8 @@
|
|||||||
<sub-menu v-for="item in menu.children" :key="item.id" :menu="item"></sub-menu>
|
<sub-menu v-for="item in menu.children" :key="item.id" :menu="item"></sub-menu>
|
||||||
</el-submenu>
|
</el-submenu>
|
||||||
<el-menu-item v-else :index="menu.id" @click="gotoRouteHandle(menu.id)">
|
<el-menu-item v-else :index="menu.id" @click="gotoRouteHandle(menu.id)">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon" aria-hidden="true"><use :xlink:href="`#${menu.icon}`"></use></svg>
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true"><use xlink:href="#椭圆形"></use></svg>
|
||||||
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon" aria-hidden="true"><use :xlink:href="`#${menu.icon}`"></use></svg> -->
|
||||||
<span>{{ menu.name }}</span>
|
<span>{{ menu.name }}</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
</template>
|
</template>
|
||||||
|
@ -21,36 +21,51 @@
|
|||||||
<span>产品管理</span>
|
<span>产品管理</span>
|
||||||
</template>
|
</template>
|
||||||
<el-menu-item index="productType" @click="$router.push({ name: 'productType' })">
|
<el-menu-item index="productType" @click="$router.push({ name: 'productType' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-zonghe"></use>
|
<use xlink:href="#icon-zonghe"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">产品类型</span>
|
<span slot="title">产品类型</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="productList" @click="$router.push({ name: 'productList' })">
|
<el-menu-item index="productList" @click="$router.push({ name: 'productList' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-log"></use></svg>
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
|
</svg>
|
||||||
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-log"></use></svg> -->
|
||||||
<span slot="title">产品列表</span>
|
<span slot="title">产品列表</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
</el-submenu>
|
</el-submenu>
|
||||||
<el-menu-item index="factoryManage" @click="$router.push({ name: 'factoryManage' })">
|
<el-menu-item index="factoryManage" @click="$router.push({ name: 'factoryManage' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-config"></use></svg>
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
|
</svg>
|
||||||
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-config"></use></svg> -->
|
||||||
<span slot="title">工厂管理</span>
|
<span slot="title">工厂管理</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-submenu index="process">
|
<el-submenu index="process">
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-config"></use>
|
<use xlink:href="#组织管理"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span>过程管理</span>
|
<span>过程管理</span>
|
||||||
</template>
|
</template>
|
||||||
<el-menu-item index="processType" @click="$router.push({ name: 'processType' })">
|
<el-menu-item index="processType" @click="$router.push({ name: 'processType' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-zonghe"></use>
|
<use xlink:href="#icon-zonghe"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">工序类型</span>
|
<span slot="title">工序类型</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="processDefine" @click="$router.push({ name: 'processDefine' })">
|
<el-menu-item index="processDefine" @click="$router.push({ name: 'processDefine' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-zonghe"></use>
|
<use xlink:href="#icon-zonghe"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">工序定义</span>
|
<span slot="title">工序定义</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
@ -62,50 +77,42 @@
|
|||||||
<el-submenu index="Machine">
|
<el-submenu index="Machine">
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-config"></use>
|
<use xlink:href="#icon-zonghe"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span>机台管理</span>
|
<span>机台管理</span>
|
||||||
</template>
|
</template>
|
||||||
<el-menu-item index="siteManage" @click="$router.push({ name: 'siteManage' })">
|
<el-menu-item index="siteManage" @click="$router.push({ name: 'siteManage' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-zonghe"></use>
|
<use xlink:href="#icon-zonghe"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">站点管理</span>
|
<span slot="title">站点管理</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="machineManage" @click="$router.push({ name: 'machineManage' })">
|
<el-menu-item index="machineManage" @click="$router.push({ name: 'machineManage' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-zonghe"></use>
|
<use xlink:href="#icon-zonghe"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">机台管理</span>
|
<span slot="title">机台管理</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
</el-submenu>
|
</el-submenu>
|
||||||
<el-menu-item index="toolsType" @click="$router.push({ name: 'toolsType' })">
|
<el-menu-item index="toolsType" @click="$router.push({ name: 'toolsType' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-zonghe"></use></svg>
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
|
</svg>
|
||||||
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-zonghe"></use></svg> -->
|
||||||
<span slot="title">量具管理</span>
|
<span slot="title">量具管理</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="unitList" @click="$router.push({ name: 'unitList' })">
|
<el-menu-item index="unitList" @click="$router.push({ name: 'unitList' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-log"></use></svg>
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
<span slot="title">计量单位管理</span>
|
<use xlink:href="#椭圆形"></use>
|
||||||
</el-menu-item>
|
|
||||||
</el-submenu>
|
|
||||||
<el-submenu index="spc">
|
|
||||||
<template slot="title">
|
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
|
||||||
<use xlink:href="#icon-shoucang"></use>
|
|
||||||
</svg>
|
</svg>
|
||||||
<span>SPC</span>
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-log"></use></svg> -->
|
||||||
</template>
|
<span slot="title">计量单位管理</span>
|
||||||
<el-menu-item index="echart-line" @click="$router.push({ name: 'echart-line' })">
|
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-tubiao"></use></svg>
|
|
||||||
<span slot="title">spc折线</span>
|
|
||||||
</el-menu-item>
|
|
||||||
<el-menu-item index="echart-2line" @click="$router.push({ name: 'echart-2line' })">
|
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-tubiao"></use></svg>
|
|
||||||
<span slot="title">spc2折线</span>
|
|
||||||
</el-menu-item>
|
|
||||||
<el-menu-item index="echart-line" @click="$router.push({ name: 'echart-3line' })">
|
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#icon-tubiao"></use></svg>
|
|
||||||
<span slot="title">spc3折线</span>
|
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
</el-submenu>
|
</el-submenu>
|
||||||
<el-submenu index="quality">
|
<el-submenu index="quality">
|
||||||
@ -116,15 +123,27 @@
|
|||||||
<span>质量规划</span>
|
<span>质量规划</span>
|
||||||
</template>
|
</template>
|
||||||
<el-menu-item index="controlGraph" @click="$router.push({ name: 'controlGraph' })">
|
<el-menu-item index="controlGraph" @click="$router.push({ name: 'controlGraph' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#控制中心"></use></svg>
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
|
</svg>
|
||||||
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#控制中心"></use></svg> -->
|
||||||
<span slot="title">控制图形</span>
|
<span slot="title">控制图形</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="controlRatio" @click="$router.push({ name: 'controlRatio' })">
|
<el-menu-item index="controlRatio" @click="$router.push({ name: 'controlRatio' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#控制中心"></use></svg>
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
|
</svg>
|
||||||
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#控制中心"></use></svg> -->
|
||||||
<span slot="title">控制系数</span>
|
<span slot="title">控制系数</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="interpretationScheme" @click="$router.push({ name: 'interpretationScheme' })">
|
<el-menu-item
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#方案管理"></use></svg>
|
index="interpretationScheme"
|
||||||
|
@click="$router.push({ name: 'interpretationScheme' })"
|
||||||
|
>
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
|
</svg>
|
||||||
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon"><use xlink:href="#方案管理"></use></svg> -->
|
||||||
<span slot="title">判读方案</span>
|
<span slot="title">判读方案</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
</el-submenu>
|
</el-submenu>
|
||||||
@ -135,34 +154,49 @@
|
|||||||
</svg>
|
</svg>
|
||||||
<span>过程检验</span>
|
<span>过程检验</span>
|
||||||
</template>
|
</template>
|
||||||
<el-menu-item index="generalOperation" @click="$router.push({ name: 'generalOperation' })">
|
<el-menu-item
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
index="generalOperation"
|
||||||
|
@click="$router.push({ name: 'generalOperation' })"
|
||||||
|
>
|
||||||
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-log"></use>
|
<use xlink:href="#icon-log"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">通用作业</span>
|
<span slot="title">通用作业</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-submenu index="Metrological">
|
<el-submenu index="Metrological">
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-log"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span>计量分析</span>
|
<span>计量分析</span>
|
||||||
</template>
|
</template>
|
||||||
<el-menu-item index="XbarRGraph" @click="$router.push({ name: 'XbarRGraph' })">
|
<el-menu-item index="XbarRGraph" @click="$router.push({ name: 'XbarRGraph' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-tubiao"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">均值极差控制图</span>
|
<span slot="title">均值极差控制图</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="XbarSGraph" @click="$router.push({ name: 'XbarSGraph' })">
|
<el-menu-item index="XbarSGraph" @click="$router.push({ name: 'XbarSGraph' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-tubiao"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">均值标准差控制图</span>
|
<span slot="title">均值标准差控制图</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="XMRGraph" @click="$router.push({ name: 'XMRGraph' })">
|
<el-menu-item index="XMRGraph" @click="$router.push({ name: 'XMRGraph' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-tubiao"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">单值移动极差控制图</span>
|
<span slot="title">单值移动极差控制图</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
@ -170,31 +204,43 @@
|
|||||||
<el-submenu index="Counting">
|
<el-submenu index="Counting">
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-log"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span>计数分析</span>
|
<span>计数分析</span>
|
||||||
</template>
|
</template>
|
||||||
<el-menu-item index="CGraph" @click="$router.push({ name: 'CGraph' })">
|
<el-menu-item index="CGraph" @click="$router.push({ name: 'CGraph' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-tubiao"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">C图</span>
|
<span slot="title">C图</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="UGraph" @click="$router.push({ name: 'UGraph' })">
|
<el-menu-item index="UGraph" @click="$router.push({ name: 'UGraph' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-tubiao"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">U图</span>
|
<span slot="title">U图</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="NPGraph" @click="$router.push({ name: 'NPGraph' })">
|
<el-menu-item index="NPGraph" @click="$router.push({ name: 'NPGraph' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-tubiao"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">NP图</span>
|
<span slot="title">NP图</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
<el-menu-item index="PGraph" @click="$router.push({ name: 'PGraph' })">
|
<el-menu-item index="PGraph" @click="$router.push({ name: 'PGraph' })">
|
||||||
<svg class="icon-svg aui-sidebar__menu-icon">
|
<!-- <svg class="icon-svg aui-sidebar__menu-icon">
|
||||||
<use xlink:href="#icon-tubiao"></use>
|
<use xlink:href="#icon-tubiao"></use>
|
||||||
|
</svg> -->
|
||||||
|
<svg class="icon-svg aui-sidebar__menu-icon-son" aria-hidden="true">
|
||||||
|
<use xlink:href="#椭圆形"></use>
|
||||||
</svg>
|
</svg>
|
||||||
<span slot="title">P图</span>
|
<span slot="title">P图</span>
|
||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
|
@ -2,14 +2,16 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-15 10:22:53
|
* @Date: 2022-09-15 10:22:53
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-01 10:23:29
|
* @LastEditTime: 2022-12-16 15:25:39
|
||||||
* @Description: C图
|
* @Description: C图
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never" class="aui-card--fill">
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
<query-form
|
<query-form
|
||||||
|
ref="queryForm"
|
||||||
:page-name="'缺陷数图'"
|
:page-name="'缺陷数图'"
|
||||||
:data-form="dataForm"
|
:data-form="dataForm"
|
||||||
|
:groupTypeShow="true"
|
||||||
@getDataList="getDataList"
|
@getDataList="getDataList"
|
||||||
@rawData="rawData"
|
@rawData="rawData"
|
||||||
@exportHandle="exportHandle"
|
@exportHandle="exportHandle"
|
||||||
@ -17,6 +19,10 @@
|
|||||||
<el-row :gutter="6" v-if="chartVisible">
|
<el-row :gutter="6" v-if="chartVisible">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<chart-line
|
<chart-line
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="拼命加载中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
ref="CGraph"
|
ref="CGraph"
|
||||||
:chartLineName="'CGraph'"
|
:chartLineName="'CGraph'"
|
||||||
:yName="'缺陷数'"
|
:yName="'缺陷数'"
|
||||||
@ -36,6 +42,10 @@ export default {
|
|||||||
mixins: [processPage],
|
mixins: [processPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
dataForm: {
|
||||||
|
groupType: 1,
|
||||||
|
},
|
||||||
|
loading: true,
|
||||||
urlOptions: {
|
urlOptions: {
|
||||||
exportUrl: "/basic/unit/export",
|
exportUrl: "/basic/unit/export",
|
||||||
},
|
},
|
||||||
@ -47,25 +57,48 @@ export default {
|
|||||||
queryForm,
|
queryForm,
|
||||||
chartLine,
|
chartLine,
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.queryForm.getArr();
|
||||||
|
});
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 获取数据列表
|
// 获取数据列表
|
||||||
getDataList() {
|
getDataList() {
|
||||||
|
this.$refs.queryForm.$refs["dataForm"].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/CGraphTest")
|
.post("/processInspection/CGraph", {
|
||||||
|
...this.dataForm,
|
||||||
|
})
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
|
this.loading = false;
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
|
this.loading = false;
|
||||||
this.dataList = res.data;
|
this.dataList = res.data;
|
||||||
|
if (this.dataList.list.length > 0) {
|
||||||
this.chartVisible = true;
|
this.chartVisible = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.CGraph.initChartLine();
|
this.$refs.CGraph.initChartLine();
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
this.chartVisible = false;
|
||||||
|
this.$message({
|
||||||
|
message: "没有发现数据",
|
||||||
|
type: "warning",
|
||||||
|
});
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
|
});
|
||||||
},
|
},
|
||||||
rawData() {
|
rawData() {
|
||||||
console.log("原始数据");
|
console.log("原始数据");
|
||||||
|
@ -2,14 +2,16 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-15 10:22:53
|
* @Date: 2022-09-15 10:22:53
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-01 10:23:34
|
* @LastEditTime: 2022-12-16 15:27:52
|
||||||
* @Description: NP图
|
* @Description: NP图
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never" class="aui-card--fill">
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
<query-form
|
<query-form
|
||||||
|
ref="queryForm"
|
||||||
:page-name="'NP图'"
|
:page-name="'NP图'"
|
||||||
:data-form="dataForm"
|
:data-form="dataForm"
|
||||||
|
:groupTypeShow="true"
|
||||||
@getDataList="getDataList"
|
@getDataList="getDataList"
|
||||||
@rawData="rawData"
|
@rawData="rawData"
|
||||||
@exportHandle="exportHandle"
|
@exportHandle="exportHandle"
|
||||||
@ -17,6 +19,10 @@
|
|||||||
<el-row :gutter="6" v-if="chartVisible">
|
<el-row :gutter="6" v-if="chartVisible">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<chart-line
|
<chart-line
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="拼命加载中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
ref="CGraph"
|
ref="CGraph"
|
||||||
:chartLineName="'CGraph'"
|
:chartLineName="'CGraph'"
|
||||||
:yName="'缺陷数'"
|
:yName="'缺陷数'"
|
||||||
@ -36,6 +42,10 @@ export default {
|
|||||||
mixins: [processPage],
|
mixins: [processPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
dataForm: {
|
||||||
|
groupType: 1,
|
||||||
|
},
|
||||||
|
loading: true,
|
||||||
urlOptions: {
|
urlOptions: {
|
||||||
exportUrl: "/basic/unit/export",
|
exportUrl: "/basic/unit/export",
|
||||||
},
|
},
|
||||||
@ -47,25 +57,48 @@ export default {
|
|||||||
queryForm,
|
queryForm,
|
||||||
chartLine,
|
chartLine,
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.queryForm.getArr();
|
||||||
|
});
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 获取数据列表
|
// 获取数据列表
|
||||||
getDataList() {
|
getDataList() {
|
||||||
|
this.$refs.queryForm.$refs["dataForm"].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/NPGraphTest")
|
.post("/processInspection/NPGraph", {
|
||||||
|
...this.dataForm,
|
||||||
|
})
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
|
this.loading = false;
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
|
this.loading = false;
|
||||||
this.dataList = res.data;
|
this.dataList = res.data;
|
||||||
|
if (this.dataList.list.length > 0) {
|
||||||
this.chartVisible = true;
|
this.chartVisible = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.CGraph.initChartLine();
|
this.$refs.CGraph.initChartLine();
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
this.chartVisible = false;
|
||||||
|
this.$message({
|
||||||
|
message: "没有发现数据",
|
||||||
|
type: "warning",
|
||||||
|
});
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
|
});
|
||||||
},
|
},
|
||||||
rawData() {
|
rawData() {
|
||||||
console.log("原始数据");
|
console.log("原始数据");
|
||||||
|
@ -2,14 +2,16 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-15 10:22:53
|
* @Date: 2022-09-15 10:22:53
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-01 10:23:38
|
* @LastEditTime: 2022-12-16 15:27:58
|
||||||
* @Description: P图
|
* @Description: P图
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never" class="aui-card--fill">
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
<query-form
|
<query-form
|
||||||
|
ref="queryForm"
|
||||||
:page-name="'NP图'"
|
:page-name="'NP图'"
|
||||||
:data-form="dataForm"
|
:data-form="dataForm"
|
||||||
|
:groupTypeShow="true"
|
||||||
@getDataList="getDataList"
|
@getDataList="getDataList"
|
||||||
@rawData="rawData"
|
@rawData="rawData"
|
||||||
@exportHandle="exportHandle"
|
@exportHandle="exportHandle"
|
||||||
@ -17,6 +19,10 @@
|
|||||||
<el-row :gutter="6" v-if="chartVisible">
|
<el-row :gutter="6" v-if="chartVisible">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<chart-line
|
<chart-line
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="拼命加载中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
ref="CGraph"
|
ref="CGraph"
|
||||||
:chartLineName="'CGraph'"
|
:chartLineName="'CGraph'"
|
||||||
:yName="'缺陷率'"
|
:yName="'缺陷率'"
|
||||||
@ -36,6 +42,10 @@ export default {
|
|||||||
mixins: [processPage],
|
mixins: [processPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
dataForm: {
|
||||||
|
groupType: 1,
|
||||||
|
},
|
||||||
|
loading: true,
|
||||||
urlOptions: {
|
urlOptions: {
|
||||||
exportUrl: "/basic/unit/export",
|
exportUrl: "/basic/unit/export",
|
||||||
},
|
},
|
||||||
@ -47,25 +57,48 @@ export default {
|
|||||||
queryForm,
|
queryForm,
|
||||||
chartLine,
|
chartLine,
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.queryForm.getArr();
|
||||||
|
});
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 获取数据列表
|
// 获取数据列表
|
||||||
getDataList() {
|
getDataList() {
|
||||||
|
this.$refs.queryForm.$refs["dataForm"].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/PGraphTest")
|
.post("/processInspection/PGraph", {
|
||||||
|
...this.dataForm,
|
||||||
|
})
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
|
this.loading = false;
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
|
this.loading = false;
|
||||||
this.dataList = res.data;
|
this.dataList = res.data;
|
||||||
|
if (this.dataList.list.length > 0) {
|
||||||
this.chartVisible = true;
|
this.chartVisible = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.CGraph.initChartLine();
|
this.$refs.CGraph.initChartLine();
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
this.chartVisible = false;
|
||||||
|
this.$message({
|
||||||
|
message: "没有发现数据",
|
||||||
|
type: "warning",
|
||||||
|
});
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
|
});
|
||||||
},
|
},
|
||||||
rawData() {
|
rawData() {
|
||||||
console.log("原始数据");
|
console.log("原始数据");
|
||||||
|
@ -2,14 +2,16 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-15 10:22:53
|
* @Date: 2022-09-15 10:22:53
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-01 10:23:43
|
* @LastEditTime: 2022-12-16 15:28:04
|
||||||
* @Description: U图
|
* @Description: U图
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never" class="aui-card--fill">
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
<query-form
|
<query-form
|
||||||
|
ref="queryForm"
|
||||||
:page-name="'U图'"
|
:page-name="'U图'"
|
||||||
:data-form="dataForm"
|
:data-form="dataForm"
|
||||||
|
:groupTypeShow="true"
|
||||||
@getDataList="getDataList"
|
@getDataList="getDataList"
|
||||||
@rawData="rawData"
|
@rawData="rawData"
|
||||||
@exportHandle="exportHandle"
|
@exportHandle="exportHandle"
|
||||||
@ -17,6 +19,10 @@
|
|||||||
<el-row :gutter="6" v-if="chartVisible">
|
<el-row :gutter="6" v-if="chartVisible">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<chart-line
|
<chart-line
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="拼命加载中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
ref="CGraph"
|
ref="CGraph"
|
||||||
:chartLineName="'CGraph'"
|
:chartLineName="'CGraph'"
|
||||||
:yName="'单位缺陷'"
|
:yName="'单位缺陷'"
|
||||||
@ -36,6 +42,10 @@ export default {
|
|||||||
mixins: [processPage],
|
mixins: [processPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
dataForm: {
|
||||||
|
groupType: 1,
|
||||||
|
},
|
||||||
|
loading: true,
|
||||||
urlOptions: {
|
urlOptions: {
|
||||||
exportUrl: "/basic/unit/export",
|
exportUrl: "/basic/unit/export",
|
||||||
},
|
},
|
||||||
@ -47,25 +57,48 @@ export default {
|
|||||||
queryForm,
|
queryForm,
|
||||||
chartLine,
|
chartLine,
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.queryForm.getArr();
|
||||||
|
});
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 获取数据列表
|
// 获取数据列表
|
||||||
getDataList() {
|
getDataList() {
|
||||||
|
this.$refs.queryForm.$refs["dataForm"].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/UGraphTest")
|
.post("/processInspection/UGraph", {
|
||||||
|
...this.dataForm,
|
||||||
|
})
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
|
this.loading = false;
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
this.dataList = res.data;
|
this.dataList = res.data;
|
||||||
|
this.loading = false;
|
||||||
|
if (this.dataList.list.length > 0) {
|
||||||
this.chartVisible = true;
|
this.chartVisible = true;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.CGraph.initChartLine();
|
this.$refs.CGraph.initChartLine();
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
this.chartVisible = false;
|
||||||
|
this.$message({
|
||||||
|
message: "没有发现数据",
|
||||||
|
type: "warning",
|
||||||
|
});
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
|
});
|
||||||
},
|
},
|
||||||
rawData() {
|
rawData() {
|
||||||
console.log("原始数据");
|
console.log("原始数据");
|
||||||
|
@ -2,12 +2,13 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-15 10:23:42
|
* @Date: 2022-09-15 10:23:42
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-11-29 16:26:58
|
* @LastEditTime: 2022-12-16 15:31:18
|
||||||
* @Description: 单值-移动极差 控制图
|
* @Description: 单值-移动极差 控制图
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never" class="aui-card--fill">
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
<query-form
|
<query-form
|
||||||
|
ref="queryForm"
|
||||||
:page-name="'单值-移动极差控制图'"
|
:page-name="'单值-移动极差控制图'"
|
||||||
:data-form="dataForm"
|
:data-form="dataForm"
|
||||||
@getDataList="getDataList"
|
@getDataList="getDataList"
|
||||||
@ -17,9 +18,13 @@
|
|||||||
<el-row :gutter="6" v-if="chartVisible">
|
<el-row :gutter="6" v-if="chartVisible">
|
||||||
<el-col :span="19">
|
<el-col :span="19">
|
||||||
<chart-line
|
<chart-line
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="拼命加载中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
ref="XMRGraph"
|
ref="XMRGraph"
|
||||||
:chartLineName="'XMRGraph'"
|
:chartLineName="'XMRGraph'"
|
||||||
:lineIndex='2'
|
:lineIndex="2"
|
||||||
:title="chartTitle"
|
:title="chartTitle"
|
||||||
:y-name1="yName1"
|
:y-name1="yName1"
|
||||||
:y-name2="yName2"
|
:y-name2="yName2"
|
||||||
@ -42,7 +47,10 @@
|
|||||||
:key="index + 'xbar'"
|
:key="index + 'xbar'"
|
||||||
class="rightDiv"
|
class="rightDiv"
|
||||||
>
|
>
|
||||||
{{ key }}<span style="float:right">{{ val.length?val: parseFloat(val).toFixed(4) }}</span>
|
{{ key
|
||||||
|
}}<span style="float:right">{{
|
||||||
|
val.length ? val : parseFloat(val).toFixed(4)
|
||||||
|
}}</span>
|
||||||
</div>
|
</div>
|
||||||
</el-collapse-item>
|
</el-collapse-item>
|
||||||
<el-collapse-item title="移动极差数值" name="1">
|
<el-collapse-item title="移动极差数值" name="1">
|
||||||
@ -51,7 +59,10 @@
|
|||||||
:key="index + 'rcl'"
|
:key="index + 'rcl'"
|
||||||
class="rightDiv"
|
class="rightDiv"
|
||||||
>
|
>
|
||||||
{{ key }}<span style="float:right">{{ val.length?val: parseFloat(val).toFixed(4) }}</span>
|
{{ key
|
||||||
|
}}<span style="float:right">{{
|
||||||
|
val.length ? val : parseFloat(val).toFixed(4)
|
||||||
|
}}</span>
|
||||||
</div>
|
</div>
|
||||||
</el-collapse-item>
|
</el-collapse-item>
|
||||||
<el-collapse-item title="waring:" name="2">
|
<el-collapse-item title="waring:" name="2">
|
||||||
@ -72,6 +83,8 @@ export default {
|
|||||||
mixins: [processPage],
|
mixins: [processPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
dataForm: {},
|
||||||
|
loading: true,
|
||||||
urlOptions: {
|
urlOptions: {
|
||||||
exportUrl: "/basic/unit/export",
|
exportUrl: "/basic/unit/export",
|
||||||
},
|
},
|
||||||
@ -87,18 +100,32 @@ export default {
|
|||||||
queryForm,
|
queryForm,
|
||||||
chartLine,
|
chartLine,
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.queryForm.getArr();
|
||||||
|
});
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 获取数据列表
|
// 获取数据列表
|
||||||
getDataList() {
|
getDataList() {
|
||||||
|
this.$refs.queryForm.$refs["dataForm"].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/XMRGraphTest")
|
.post("/processInspection/XMRGraph", {
|
||||||
|
...this.dataForm,
|
||||||
|
})
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
|
this.loading = false;
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
|
this.loading = false;
|
||||||
this.dataList = res.data;
|
this.dataList = res.data;
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
// this.rightList.push({
|
// this.rightList.push({
|
||||||
@ -153,6 +180,7 @@ export default {
|
|||||||
});
|
});
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
|
});
|
||||||
},
|
},
|
||||||
rawData() {
|
rawData() {
|
||||||
console.log("原始数据");
|
console.log("原始数据");
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-15 10:22:12
|
* @Date: 2022-09-15 10:22:12
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-12 16:40:23
|
* @LastEditTime: 2022-12-16 15:31:07
|
||||||
* @Description: 均值极差控制图
|
* @Description: 均值极差控制图
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -18,6 +18,10 @@
|
|||||||
<el-row :gutter="6" v-if="chartVisible">
|
<el-row :gutter="6" v-if="chartVisible">
|
||||||
<el-col :span="19">
|
<el-col :span="19">
|
||||||
<chart-line
|
<chart-line
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="拼命加载中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
ref="chartRef"
|
ref="chartRef"
|
||||||
:chartLineName="'XbarRGraph'"
|
:chartLineName="'XbarRGraph'"
|
||||||
:lineIndex="0"
|
:lineIndex="0"
|
||||||
@ -79,6 +83,8 @@ export default {
|
|||||||
mixins: [processPage],
|
mixins: [processPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
dataForm: {},
|
||||||
|
loading: true,
|
||||||
urlOptions: {
|
urlOptions: {
|
||||||
exportUrl: "/basic/unit/export",
|
exportUrl: "/basic/unit/export",
|
||||||
},
|
},
|
||||||
@ -102,15 +108,24 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
// 获取数据列表
|
// 获取数据列表
|
||||||
getDataList() {
|
getDataList() {
|
||||||
|
this.$refs.queryForm.$refs["dataForm"].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/XbarRGraphTest")
|
.post("/processInspection/XbarRGraph", {
|
||||||
|
...this.dataForm,
|
||||||
|
})
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
|
this.loading = false;
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
|
this.loading = false;
|
||||||
this.dataList = res.data;
|
this.dataList = res.data;
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
// this.rightList.push({
|
// this.rightList.push({
|
||||||
@ -165,6 +180,7 @@ export default {
|
|||||||
});
|
});
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
|
});
|
||||||
},
|
},
|
||||||
rawData() {
|
rawData() {
|
||||||
console.log("原始数据");
|
console.log("原始数据");
|
||||||
|
@ -2,12 +2,13 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-15 10:22:53
|
* @Date: 2022-09-15 10:22:53
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-11-29 16:26:47
|
* @LastEditTime: 2022-12-16 15:31:13
|
||||||
* @Description: 均值标准差控制图
|
* @Description: 均值标准差控制图
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never" class="aui-card--fill">
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
<query-form
|
<query-form
|
||||||
|
ref="queryForm"
|
||||||
:page-name="'均值标准差控制图'"
|
:page-name="'均值标准差控制图'"
|
||||||
:data-form="dataForm"
|
:data-form="dataForm"
|
||||||
@getDataList="getDataList"
|
@getDataList="getDataList"
|
||||||
@ -17,9 +18,13 @@
|
|||||||
<el-row :gutter="6" v-if="chartVisible">
|
<el-row :gutter="6" v-if="chartVisible">
|
||||||
<el-col :span="19">
|
<el-col :span="19">
|
||||||
<chart-line
|
<chart-line
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="拼命加载中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
ref="chart1Ref"
|
ref="chart1Ref"
|
||||||
:chartLineName="'XbarSGraph'"
|
:chartLineName="'XbarSGraph'"
|
||||||
:lineIndex='1'
|
:lineIndex="1"
|
||||||
:title="chartTitle"
|
:title="chartTitle"
|
||||||
:y-name1="yName1"
|
:y-name1="yName1"
|
||||||
:y-name2="yName2"
|
:y-name2="yName2"
|
||||||
@ -42,7 +47,10 @@
|
|||||||
:key="index + 'xbar'"
|
:key="index + 'xbar'"
|
||||||
class="rightDiv"
|
class="rightDiv"
|
||||||
>
|
>
|
||||||
{{ key }}<span style="float:right">{{ val.length?val: parseFloat(val).toFixed(4) }}</span>
|
{{ key
|
||||||
|
}}<span style="float:right">{{
|
||||||
|
val.length ? val : parseFloat(val).toFixed(4)
|
||||||
|
}}</span>
|
||||||
</div>
|
</div>
|
||||||
</el-collapse-item>
|
</el-collapse-item>
|
||||||
<el-collapse-item title="标准差数值" name="1">
|
<el-collapse-item title="标准差数值" name="1">
|
||||||
@ -51,7 +59,10 @@
|
|||||||
:key="index + 'scl'"
|
:key="index + 'scl'"
|
||||||
class="rightDiv"
|
class="rightDiv"
|
||||||
>
|
>
|
||||||
{{ key }}<span style="float:right">{{ val.length?val: parseFloat(val).toFixed(4) }}</span>
|
{{ key
|
||||||
|
}}<span style="float:right">{{
|
||||||
|
val.length ? val : parseFloat(val).toFixed(4)
|
||||||
|
}}</span>
|
||||||
</div>
|
</div>
|
||||||
</el-collapse-item>
|
</el-collapse-item>
|
||||||
<el-collapse-item title="waring:" name="2">
|
<el-collapse-item title="waring:" name="2">
|
||||||
@ -72,6 +83,8 @@ export default {
|
|||||||
mixins: [processPage],
|
mixins: [processPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
dataForm: {},
|
||||||
|
loading: true,
|
||||||
urlOptions: {
|
urlOptions: {
|
||||||
exportUrl: "/basic/unit/export",
|
exportUrl: "/basic/unit/export",
|
||||||
},
|
},
|
||||||
@ -87,18 +100,32 @@ export default {
|
|||||||
queryForm,
|
queryForm,
|
||||||
chartLine,
|
chartLine,
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.queryForm.getArr();
|
||||||
|
});
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 获取数据列表
|
// 获取数据列表
|
||||||
getDataList() {
|
getDataList() {
|
||||||
|
this.$refs.queryForm.$refs["dataForm"].validate((valid) => {
|
||||||
|
if (!valid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/XbarSGraphTest")
|
.post("/processInspection/XbarSGraph", {
|
||||||
|
...this.dataForm,
|
||||||
|
})
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.dataList = [];
|
this.dataList = [];
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
|
this.loading = false;
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
|
this.loading = false;
|
||||||
this.dataList = res.data;
|
this.dataList = res.data;
|
||||||
this.rightList = [];
|
this.rightList = [];
|
||||||
// this.rightList.push({
|
// this.rightList.push({
|
||||||
@ -153,6 +180,7 @@ export default {
|
|||||||
});
|
});
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
|
});
|
||||||
},
|
},
|
||||||
rawData() {
|
rawData() {
|
||||||
console.log("原始数据");
|
console.log("原始数据");
|
||||||
|
@ -109,7 +109,7 @@ export default {
|
|||||||
},
|
},
|
||||||
formatter: (e) => {
|
formatter: (e) => {
|
||||||
let alarmInfo = ''
|
let alarmInfo = ''
|
||||||
e[0].data.sRule.forEach(item=>{
|
e[0].data.sRule?.forEach(item=>{
|
||||||
alarmInfo += this.ruleList[item - 1]+'<br/>'
|
alarmInfo += this.ruleList[item - 1]+'<br/>'
|
||||||
})
|
})
|
||||||
return `
|
return `
|
||||||
@ -572,6 +572,8 @@ export default {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
console.log(this.mrGraphEntity)
|
||||||
|
console.log(this.lowLine[this.lineIndex].rules)
|
||||||
this.mrGraphEntity.list?.forEach((item, index) => {
|
this.mrGraphEntity.list?.forEach((item, index) => {
|
||||||
if (item[this.lowLine[this.lineIndex].rules].length) {
|
if (item[this.lowLine[this.lineIndex].rules].length) {
|
||||||
option.visualMap[1].pieces.push({
|
option.visualMap[1].pieces.push({
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-11-18 14:16:25
|
* @Date: 2021-11-18 14:16:25
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-13 13:43:23
|
* @LastEditTime: 2023-01-06 14:30:12
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -40,12 +40,23 @@
|
|||||||
<el-checkbox
|
<el-checkbox
|
||||||
v-if="item.fType === 2"
|
v-if="item.fType === 2"
|
||||||
v-model="scope.row[item.prop]"
|
v-model="scope.row[item.prop]"
|
||||||
|
:class="
|
||||||
|
scope.row[item.prop] === '0'? 'redbg'
|
||||||
|
: ''
|
||||||
|
"
|
||||||
true-label="1"
|
true-label="1"
|
||||||
false-label="0"
|
false-label="0"
|
||||||
/>
|
/>
|
||||||
<el-input
|
<el-input
|
||||||
v-else
|
v-else
|
||||||
v-model="scope.row[item.prop]"
|
v-model="scope.row[item.prop]"
|
||||||
|
:class="
|
||||||
|
(item.usl < scope.row[item.prop] ||
|
||||||
|
scope.row[item.prop] < item.lsl) &&
|
||||||
|
!(item.label === '取样时间' || item.label === '样本号' || item.label === '批次号')
|
||||||
|
? 'redFont'
|
||||||
|
: ''
|
||||||
|
"
|
||||||
size="small"
|
size="small"
|
||||||
clearable
|
clearable
|
||||||
:readonly="
|
:readonly="
|
||||||
@ -124,22 +135,26 @@ export default {
|
|||||||
label: "样本号",
|
label: "样本号",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
prop: "sampleTime",
|
prop: "sampleTime1",
|
||||||
label: "取样时间",
|
label: "取样时间",
|
||||||
},
|
},
|
||||||
{
|
// {
|
||||||
prop: "batchNum",
|
// prop: "batchNum",
|
||||||
label: "批次号",
|
// label: "批次号",
|
||||||
},
|
// },
|
||||||
];
|
];
|
||||||
this.featuresList.forEach((item) => {
|
this.featuresList.forEach((item) => {
|
||||||
let obj = {
|
let obj = {
|
||||||
prop: item.name,
|
prop: item.name,
|
||||||
label: item.name,
|
label: item.name,
|
||||||
fType: item.type,
|
fType: item.type,
|
||||||
|
lsl: item.lsl,
|
||||||
|
usl: item.usl,
|
||||||
};
|
};
|
||||||
this.tableProps.push(obj);
|
this.tableProps.push(obj);
|
||||||
this.dataList[0][item.name] = this.workingProcedureName;
|
this.dataList[0][item.name] = this.workingProcedureName
|
||||||
|
? this.workingProcedureName
|
||||||
|
: item.workingProcedureName;
|
||||||
this.dataList[1][item.name] = { 1: "计量型", 2: "计数型" }[item.type];
|
this.dataList[1][item.name] = { 1: "计量型", 2: "计数型" }[item.type];
|
||||||
this.dataList[2][item.name] = item.lsl;
|
this.dataList[2][item.name] = item.lsl;
|
||||||
this.dataList[3][item.name] = item.usl;
|
this.dataList[3][item.name] = item.usl;
|
||||||
@ -154,18 +169,16 @@ export default {
|
|||||||
getInfluxdb() {
|
getInfluxdb() {
|
||||||
this.$http
|
this.$http
|
||||||
.post(
|
.post(
|
||||||
`/processInspection/inspectionSheet/getFluxParamList?inspectionSheetId=${this.inspectionSheetId}`
|
`/processInspection/inspectionSheet/getFluxParamList3?inspectionSheetId=${this.inspectionSheetId}`
|
||||||
)
|
)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
res.data.forEach((item) => {
|
res.data.forEach((item) => {
|
||||||
item.sampleTime = this.formatDateTime(item.sampleTime);
|
item.sampleTime1 = this.formatDateTime(item.sampleTime);
|
||||||
// item.events.forEach((item1) => {
|
item.sampleParamList.forEach((item1) => {
|
||||||
// item[item1.argName] = item1.argValue;
|
item[item1.argName] = item1.argValue;
|
||||||
// });
|
});
|
||||||
Object.assign(item, JSON.parse(item.jsonData));
|
|
||||||
this.dataList.push(item);
|
this.dataList.push(item);
|
||||||
});
|
});
|
||||||
this.dataList.concat(res.data);
|
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
},
|
},
|
||||||
@ -184,14 +197,13 @@ export default {
|
|||||||
sampleNumber: sampleNum,
|
sampleNumber: sampleNum,
|
||||||
sampleTime: new Date(),
|
sampleTime: new Date(),
|
||||||
batchNum: this.batchNum,
|
batchNum: this.batchNum,
|
||||||
events: [],
|
sampleParamList: [],
|
||||||
};
|
};
|
||||||
this.featuresList.forEach((item) => {
|
this.featuresList.forEach((item) => {
|
||||||
let obj1 = {
|
let obj1 = {
|
||||||
time: new Date(),
|
workingProcedureName: this.workingProcedureName
|
||||||
inspectionSheetId: this.inspectionSheetId,
|
? this.workingProcedureName
|
||||||
sampleNumber: sampleNum,
|
: item.workingProcedureName,
|
||||||
transationId: "",
|
|
||||||
};
|
};
|
||||||
if (item.type === 1) {
|
if (item.type === 1) {
|
||||||
obj1.argName = item.name;
|
obj1.argName = item.name;
|
||||||
@ -200,13 +212,13 @@ export default {
|
|||||||
obj1.argName = item.name;
|
obj1.argName = item.name;
|
||||||
obj1.argValue = 1;
|
obj1.argValue = 1;
|
||||||
}
|
}
|
||||||
obj.events.push(obj1);
|
obj.sampleParamList.push(obj1);
|
||||||
});
|
});
|
||||||
// obj.jsonData = JSON.stringify(obj.jsonData);
|
// obj.jsonData = JSON.stringify(obj.jsonData);
|
||||||
arr.push(obj);
|
arr.push(obj);
|
||||||
}
|
}
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/inspectionSheet/saveFluxParamList2", arr)
|
.post("/processInspection/inspectionSheet/saveFluxParamList3", arr)
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
@ -220,28 +232,28 @@ export default {
|
|||||||
Submit() {
|
Submit() {
|
||||||
let arr = JSON.parse(JSON.stringify(this.dataList.slice(7)));
|
let arr = JSON.parse(JSON.stringify(this.dataList.slice(7)));
|
||||||
arr.forEach((item) => {
|
arr.forEach((item) => {
|
||||||
(item.workingProcedureName = this.workingProcedureName),
|
(item.workingProcedureName = this.workingProcedureName), (item.sampleParamList = []);
|
||||||
(item.sampleTime = new Date(item.sampleTime));
|
|
||||||
item.events=[]
|
|
||||||
this.featuresList.forEach((item1) => {
|
this.featuresList.forEach((item1) => {
|
||||||
let obj1 = {
|
let obj1 = {
|
||||||
time: new Date(item.sampleTime),
|
workingProcedureName: this.workingProcedureName
|
||||||
inspectionSheetId: this.inspectionSheetId,
|
? this.workingProcedureName
|
||||||
sampleNumber: item.sampleNumber,
|
: item1.workingProcedureName,
|
||||||
transationId: "",
|
|
||||||
};
|
};
|
||||||
obj1.argName = item1.name;
|
obj1.argName = item1.name;
|
||||||
obj1.argValue = item[item1.name];
|
obj1.argValue = item[item1.name];
|
||||||
item.events.push(obj1);
|
item.sampleParamList.push(obj1);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/inspectionSheet/saveFluxParamList2", arr)
|
.post("/processInspection/inspectionSheet/saveFluxParamList3", arr)
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
this.init();
|
this.init();
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$emit("refreshDataForm", this.inspectionSheetId);
|
||||||
|
});
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
},
|
},
|
||||||
@ -272,3 +284,12 @@ export default {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.redFont >>> .el-input__inner {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
.redbg >>> .el-checkbox__inner {
|
||||||
|
background: red;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-11-18 14:16:25
|
* @Date: 2021-11-18 14:16:25
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-09 08:59:32
|
* @LastEditTime: 2022-12-28 09:45:02
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -71,8 +71,9 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
init() {
|
init() {
|
||||||
|
this.dataList.splice(0,this.dataList.length)
|
||||||
this.featuresList.forEach((item) => {
|
this.featuresList.forEach((item) => {
|
||||||
item.workingProcedureName = this.workingProcedureName;
|
item.workingProcedureName = this.workingProcedureName?this.workingProcedureName:item.workingProcedureName
|
||||||
});
|
});
|
||||||
this.dataList = JSON.parse(JSON.stringify(this.featuresList));
|
this.dataList = JSON.parse(JSON.stringify(this.featuresList));
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-11-18 14:16:25
|
* @Date: 2021-11-18 14:16:25
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-12 11:32:04
|
* @LastEditTime: 2022-12-28 09:25:04
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -304,7 +304,7 @@ export default {
|
|||||||
dataRule: {
|
dataRule: {
|
||||||
productId: [{ required: true, message: "产品不能为空", trigger: "change" }],
|
productId: [{ required: true, message: "产品不能为空", trigger: "change" }],
|
||||||
inspectionStage: [{ required: true, message: "检验阶段不能为空", trigger: "change" }],
|
inspectionStage: [{ required: true, message: "检验阶段不能为空", trigger: "change" }],
|
||||||
workingProcedureId: [{ required: true, message: "工序不能为空", trigger: "change" }],
|
//workingProcedureId: [{ required: true, message: "工序不能为空", trigger: "change" }],
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@ -343,7 +343,7 @@ export default {
|
|||||||
if (this.dataForm.id) {
|
if (this.dataForm.id) {
|
||||||
this.workingProcedureName = this.optionArr.arr4.find((item) => {
|
this.workingProcedureName = this.optionArr.arr4.find((item) => {
|
||||||
return item.workingProcedureId === this.dataForm.workingProcedureId;
|
return item.workingProcedureId === this.dataForm.workingProcedureId;
|
||||||
}).workingProcedureName;
|
})?.workingProcedureName;
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.detailTable.init();
|
this.$refs.detailTable.init();
|
||||||
});
|
});
|
||||||
@ -358,20 +358,29 @@ export default {
|
|||||||
},
|
},
|
||||||
setDataForm() {
|
setDataForm() {
|
||||||
this.detailLoading = true;
|
this.detailLoading = true;
|
||||||
const obj = {
|
|
||||||
inspectionStage: this.dataForm.inspectionStage,
|
|
||||||
productId: this.dataForm.productId,
|
|
||||||
workingProcedureId: this.dataForm.workingProcedureId,
|
|
||||||
};
|
|
||||||
|
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/inspectionSheet/getInspectionSheetFeaturesList", obj)
|
.post(
|
||||||
|
`/processInspection/inspectionSheet/getInspectionSheetFeaturesList?productId=${
|
||||||
|
this.dataForm.productId
|
||||||
|
}${
|
||||||
|
this.dataForm.inspectionStage ? "&inspectionStage=" + this.dataForm.inspectionStage : ""
|
||||||
|
}${
|
||||||
|
this.dataForm.workingProcedureId
|
||||||
|
? "&workingProcedureId=" + this.dataForm.workingProcedureId
|
||||||
|
: ""
|
||||||
|
}`
|
||||||
|
)
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.featuresList = [];
|
this.featuresList = [];
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
this.featuresList = res.data;
|
this.featuresList = res.data;
|
||||||
|
if (this.featuresTableVisible) {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.featuresTable.init();
|
||||||
|
});
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
this.dataForm.inspectionStage = String(this.dataForm.inspectionStage);
|
this.dataForm.inspectionStage = String(this.dataForm.inspectionStage);
|
||||||
|
123
src/views/process-inspection/components/interpretationScheme.vue
Normal file
123
src/views/process-inspection/components/interpretationScheme.vue
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: zwq
|
||||||
|
* @Date: 2021-11-18 14:16:25
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2022-12-16 09:28:44
|
||||||
|
* @Description:
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<el-dialog title="选择分析判读方案" :visible.sync="visible">
|
||||||
|
<el-checkbox-group v-model="checkList">
|
||||||
|
<el-checkbox
|
||||||
|
style="width:100%;font-size:20px;margin:8px 5px"
|
||||||
|
v-for="(item,index) in ruleArr"
|
||||||
|
:key="item.number"
|
||||||
|
:label="index"
|
||||||
|
>{{ item.ruleKey.split("x")[0] }}
|
||||||
|
<el-input
|
||||||
|
v-show="item.ruleKey.split('x').length >= 2"
|
||||||
|
v-model="item.arg1"
|
||||||
|
style="width:60px"
|
||||||
|
></el-input>
|
||||||
|
{{ item.ruleKey.split("x")[1] }}
|
||||||
|
<el-input
|
||||||
|
v-show="item.ruleKey.split('x').length >= 3"
|
||||||
|
v-model="item.arg2"
|
||||||
|
style="width:60px"
|
||||||
|
></el-input>
|
||||||
|
{{ item.ruleKey.split("x")[2] }}
|
||||||
|
</el-checkbox>
|
||||||
|
</el-checkbox-group>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="visible = false">取消</el-button>
|
||||||
|
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
checkList: [],
|
||||||
|
ruleArr: [
|
||||||
|
{
|
||||||
|
number: 1,
|
||||||
|
ruleKey: "规则一:有1点落在三倍标准差以外",
|
||||||
|
arg1: null,
|
||||||
|
arg2: null,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 2,
|
||||||
|
ruleKey: "规则二:连续x点落在管制中心线同一侧",
|
||||||
|
arg1: 6,
|
||||||
|
arg2: null,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 3,
|
||||||
|
ruleKey: "规则三:连续x点持续上升或下降",
|
||||||
|
arg1: 6,
|
||||||
|
arg2: null,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 4,
|
||||||
|
ruleKey: "规则四:连续x点交替上下跳动",
|
||||||
|
arg1: 14,
|
||||||
|
arg2: null,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 5,
|
||||||
|
ruleKey: "规则五:连续x点中有x点落在中心线同侧两倍标准差以外",
|
||||||
|
arg1: 3,
|
||||||
|
arg2: 2,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 6,
|
||||||
|
ruleKey: "规则六:连续x点中有x点落在中心线同侧一倍标准差以外",
|
||||||
|
arg1: 5,
|
||||||
|
arg2: 4,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 7,
|
||||||
|
ruleKey: "规则七:连续x点落在中心线两侧的一倍标准差以内",
|
||||||
|
arg1: 15,
|
||||||
|
arg2: null,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 8,
|
||||||
|
ruleKey: "规则八:连续x点落在中心线两侧但未在一倍标准差以内",
|
||||||
|
arg1: 8,
|
||||||
|
arg2: null,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 9,
|
||||||
|
ruleKey: "规则九:落在规格线以外",
|
||||||
|
arg1: null,
|
||||||
|
arg2: null,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
number: 10,
|
||||||
|
ruleKey: "规则十:CPK小于目标值",
|
||||||
|
arg1: null,
|
||||||
|
arg2: null,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
init() {
|
||||||
|
this.visible = true;
|
||||||
|
},
|
||||||
|
dataFormSubmit(){
|
||||||
|
let interpretationScheme = []
|
||||||
|
this.checkList.forEach(item=>{
|
||||||
|
interpretationScheme.push(this.ruleArr[item])
|
||||||
|
})
|
||||||
|
this.visible = false;
|
||||||
|
this.$emit('setScheme',interpretationScheme)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
@ -2,19 +2,22 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-15 10:44:29
|
* @Date: 2022-09-15 10:44:29
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-12 16:42:27
|
* @LastEditTime: 2023-01-06 15:21:11
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-row :gutter="6" style="background-color:#e6f7ff;margin:-20px;padding-top:10px;margin-bottom:0">
|
<div>
|
||||||
|
<el-row
|
||||||
|
:gutter="6"
|
||||||
|
style="background-color:#e6f7ff;margin:-20px;padding-top:10px;margin-bottom:0"
|
||||||
|
>
|
||||||
<el-form ref="dataForm" :model="dataForm" :rules="rules" size="small" label-width="80px">
|
<el-form ref="dataForm" :model="dataForm" :rules="rules" size="small" label-width="80px">
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="检验时间" prop="field101">
|
<el-form-item label="检验时间" prop="time">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
type="daterange"
|
type="daterange"
|
||||||
v-model="dataForm.field101"
|
v-model="dataForm.time"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
value-format="yyyy-MM-dd"
|
|
||||||
:style="{ width: '100%' }"
|
:style="{ width: '100%' }"
|
||||||
start-placeholder="开始日期"
|
start-placeholder="开始日期"
|
||||||
end-placeholder="结束日期"
|
end-placeholder="结束日期"
|
||||||
@ -43,66 +46,68 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="检验类型" prop="field103">
|
<el-form-item label="产品" prop="productId">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="dataForm.field103"
|
v-model="dataForm.productId"
|
||||||
|
placeholder="请选择产品"
|
||||||
|
@change="getWorkingprocedureByProductId"
|
||||||
|
filterable
|
||||||
|
clearable
|
||||||
|
:style="{ width: '100%' }"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in optionArr.arr0"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.id"
|
||||||
|
:disabled="item.disabled"
|
||||||
|
></el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="检验类型" prop="inspectionStage">
|
||||||
|
<el-select
|
||||||
|
v-model="dataForm.inspectionStage"
|
||||||
|
@change="getFeaturesList()"
|
||||||
placeholder="请选择检验类型"
|
placeholder="请选择检验类型"
|
||||||
filterable
|
filterable
|
||||||
clearable
|
clearable
|
||||||
:style="{ width: '100%' }"
|
:style="{ width: '100%' }"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="(item, index) in field103Options"
|
v-for="item in inspectionStageArr"
|
||||||
:key="index"
|
:key="item.name"
|
||||||
:label="item.label"
|
:label="item.name"
|
||||||
:value="item.value"
|
:value="item.value"
|
||||||
:disabled="item.disabled"
|
|
||||||
></el-option>
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="产品" prop="productId">
|
<el-form-item label="工序" prop="workingProcedureId">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="dataForm.productId"
|
v-model="dataForm.workingProcedureId"
|
||||||
placeholder="请选择产品"
|
@change="$forceUpdate(), getFeaturesList()"
|
||||||
|
placeholder="请选择工序"
|
||||||
filterable
|
filterable
|
||||||
clearable
|
clearable
|
||||||
:style="{ width: '100%' }"
|
:style="{ width: '100%' }"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="(item, index) in optionArr.arr0"
|
v-for="item in optionArr.arr4"
|
||||||
:key="index"
|
:key="item.workingProcedureId"
|
||||||
:label="item.name"
|
:label="item.workingProcedureName"
|
||||||
:value="item.id"
|
:value="item.workingProcedureId"
|
||||||
:disabled="item.disabled"
|
:disabled="item.disabled"
|
||||||
></el-option>
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="工艺流程" prop="field105">
|
<el-form-item label="特性" prop="productFeaturesId">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="dataForm.field105"
|
v-model="dataForm.productFeaturesId"
|
||||||
placeholder="请选择工艺流程"
|
|
||||||
filterable
|
|
||||||
clearable
|
|
||||||
:style="{ width: '100%' }"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="(item, index) in optionArr.arr1"
|
|
||||||
:key="index"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
:disabled="item.disabled"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="6">
|
|
||||||
<el-form-item label="特性" prop="field106">
|
|
||||||
<el-select
|
|
||||||
v-model="dataForm.field106"
|
|
||||||
placeholder="请选择特性"
|
placeholder="请选择特性"
|
||||||
filterable
|
filterable
|
||||||
clearable
|
clearable
|
||||||
@ -118,16 +123,25 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6" v-if="!groupTypeShow">
|
||||||
<el-form-item label="样本大小" prop="field111">
|
<el-form-item label="样本大小" prop="sampleSize">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
v-model="dataForm.field111"
|
v-model="dataForm.sampleSize"
|
||||||
placeholder="样本大小"
|
placeholder="样本大小"
|
||||||
:step="1"
|
:step="1"
|
||||||
></el-input-number>
|
></el-input-number>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="6" v-if="groupTypeShow">
|
||||||
|
<el-form-item label="分组" prop="groupType">
|
||||||
|
<el-radio-group v-model="dataForm.groupType">
|
||||||
|
<el-radio :label="1">年</el-radio>
|
||||||
|
<el-radio :label="2">月</el-radio>
|
||||||
|
<el-radio :label="3">日</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="groupTypeShow ? 6 : 12">
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button size="small" @click="getDataList()">
|
<el-button size="small" @click="getDataList()">
|
||||||
<svg class="icon-svg"><use xlink:href="#icon-sousuo"></use></svg>
|
<svg class="icon-svg"><use xlink:href="#icon-sousuo"></use></svg>
|
||||||
@ -143,12 +157,24 @@
|
|||||||
</svg>
|
</svg>
|
||||||
导出
|
导出
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button v-if="!groupTypeShow" size="small" type="primary" @click="showScheme()">
|
||||||
|
<svg class="icon-svg"><use xlink:href="#方案管理"></use></svg>
|
||||||
|
配置分析方案
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
<!-- 弹窗, 新增 / 修改 -->
|
||||||
|
<interpretationScheme
|
||||||
|
v-if="SchemeVisible"
|
||||||
|
ref="Scheme"
|
||||||
|
@setScheme="setScheme"
|
||||||
|
></interpretationScheme>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
import interpretationScheme from "./components/interpretationScheme";
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
pageName: {
|
pageName: {
|
||||||
@ -163,13 +189,19 @@ export default {
|
|||||||
return {};
|
return {};
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
groupTypeShow: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
interpretationScheme,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
optionArrUrl: [
|
SchemeVisible: false,
|
||||||
"/basic/product/page",
|
inspectionStageArr: [],
|
||||||
"/basic/workingProcedure/page",
|
optionArrUrl: ["/basic/product/page"],
|
||||||
],
|
|
||||||
optionArr: {},
|
optionArr: {},
|
||||||
rules: {
|
rules: {
|
||||||
productId: [
|
productId: [
|
||||||
@ -179,37 +211,61 @@ export default {
|
|||||||
trigger: "change",
|
trigger: "change",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
field106: [
|
productFeaturesId: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请选择特性",
|
message: "请选择特性",
|
||||||
trigger: "change",
|
trigger: "change",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
time: [
|
||||||
field103Options: [
|
|
||||||
{
|
{
|
||||||
label: "进货检验",
|
required: true,
|
||||||
value: 1,
|
message: "请选择检验时间",
|
||||||
},
|
trigger: "change",
|
||||||
{
|
|
||||||
label: "过程检验",
|
|
||||||
value: 2,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "成品检验",
|
|
||||||
value: 3,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "出货检验",
|
|
||||||
value: 4,
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created(){
|
created() {},
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
|
getWorkingprocedureByProductId(val) {
|
||||||
|
this.dataForm.inspectionStage = "";
|
||||||
|
this.dataForm.workingProcedureId = "";
|
||||||
|
this.getWorkingprocedureArr(val);
|
||||||
|
this.getFeaturesList();
|
||||||
|
},
|
||||||
|
getWorkingprocedureArr(val) {
|
||||||
|
if (val) {
|
||||||
|
const obj = this.optionArr.arr0.find((item) => {
|
||||||
|
return item.id === val;
|
||||||
|
});
|
||||||
|
const obj1 = { 1: "进货检验", 2: "过程检验", 3: "成品检验", 4: "出货检验" };
|
||||||
|
const inspectionStage = obj.inspectionStage.split(",");
|
||||||
|
this.inspectionStageArr = [];
|
||||||
|
inspectionStage.forEach((item) => {
|
||||||
|
this.inspectionStageArr.push({
|
||||||
|
value: item,
|
||||||
|
name: obj1[item],
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.$http
|
||||||
|
.get(`/basic/productWorkingprocedureRelation/getWorkingprocedureByProductId/${val}`)
|
||||||
|
.then(({ data: res }) => {
|
||||||
|
if (res.code !== 0) {
|
||||||
|
return this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
this.$set(this.optionArr, "arr4", res.data);
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
} else {
|
||||||
|
this.inspectionStageArr = [];
|
||||||
|
this.$set(this.optionArr, "arr2", []);
|
||||||
|
this.$set(this.optionArr, "arr4", []);
|
||||||
|
}
|
||||||
|
},
|
||||||
getArr() {
|
getArr() {
|
||||||
this.optionArrUrl.forEach((item, index) => {
|
this.optionArrUrl.forEach((item, index) => {
|
||||||
this.$http
|
this.$http
|
||||||
@ -228,20 +284,47 @@ export default {
|
|||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
});
|
});
|
||||||
|
},
|
||||||
|
getFeaturesList() {
|
||||||
|
this.$set(this.dataForm, 'productFeaturesId', '')
|
||||||
this.$http
|
this.$http
|
||||||
.post("/processInspection/inspectionSheet/getInspectionSheetFeaturesList")
|
.post(
|
||||||
|
`/processInspection/inspectionSheet/getInspectionSheetFeaturesList?productId=${
|
||||||
|
this.dataForm.productId
|
||||||
|
}${
|
||||||
|
this.dataForm.inspectionStage ? "&inspectionStage=" + this.dataForm.inspectionStage : ""
|
||||||
|
}${
|
||||||
|
this.dataForm.workingProcedureId
|
||||||
|
? "&workingProcedureId=" + this.dataForm.workingProcedureId
|
||||||
|
: ""
|
||||||
|
}`
|
||||||
|
)
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
this.$set(this.optionArr, 'arr2', []);
|
this.$set(this.optionArr, "arr2", []);
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
this.$set(this.optionArr, 'arr2', res.data);
|
this.$set(this.optionArr, "arr2", res.data);
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
},
|
},
|
||||||
getDataList() {
|
getDataList() {
|
||||||
|
console.log(this.dataForm)
|
||||||
|
(this.dataForm.begin =
|
||||||
|
this.dataForm.time && this.dataForm.time.length > 0 ? this.dataForm.time[0] : ""),
|
||||||
|
(this.dataForm.end =
|
||||||
|
this.dataForm.time && this.dataForm.time.length > 0 ? this.dataForm.time[1] : ""),
|
||||||
this.$emit("getDataList");
|
this.$emit("getDataList");
|
||||||
},
|
},
|
||||||
|
showScheme() {
|
||||||
|
this.SchemeVisible = true;
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.Scheme.init();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
setScheme(interpretationScheme) {
|
||||||
|
this.dataForm.interpretationScheme = interpretationScheme;
|
||||||
|
},
|
||||||
rawData() {
|
rawData() {
|
||||||
this.$emit("rawData");
|
this.$emit("rawData");
|
||||||
},
|
},
|
||||||
|
@ -2,13 +2,14 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-11-18 14:16:25
|
* @Date: 2021-11-18 14:16:25
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-08-24 16:10:47
|
* @LastEditTime: 2023-01-03 11:35:26
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-dialog title="绑定机台" :visible.sync="visible">
|
<el-dialog title="绑定机台" :visible.sync="visible">
|
||||||
<el-transfer
|
<el-transfer
|
||||||
v-model="machineArr"
|
v-model="machineArr"
|
||||||
|
:titles="['总机台列表', '绑定机台列表']"
|
||||||
:props="{
|
:props="{
|
||||||
key: 'id',
|
key: 'id',
|
||||||
label: 'name',
|
label: 'name',
|
||||||
@ -38,6 +39,8 @@ export default {
|
|||||||
setDataForm() {
|
setDataForm() {
|
||||||
if (this.dataForm.machineId) {
|
if (this.dataForm.machineId) {
|
||||||
this.machineArr = this.dataForm.machineId.split(",");
|
this.machineArr = this.dataForm.machineId.split(",");
|
||||||
|
}else{
|
||||||
|
this.machineArr = []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
init(id) {
|
init(id) {
|
||||||
@ -60,6 +63,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
getArr() {
|
getArr() {
|
||||||
|
this.platArr.splice(0,this.platArr.length)
|
||||||
this.$http
|
this.$http
|
||||||
.get("/basic/machine/page", {
|
.get("/basic/machine/page", {
|
||||||
params: {
|
params: {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-09-01 15:42:34
|
* @Date: 2022-09-01 15:42:34
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-12 15:44:25
|
* @LastEditTime: 2023-01-06 15:29:29
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -12,6 +12,20 @@
|
|||||||
<div slot="header" style="color:#409eff;text-align:center">
|
<div slot="header" style="color:#409eff;text-align:center">
|
||||||
工序列表
|
工序列表
|
||||||
</div>
|
</div>
|
||||||
|
<el-collapse v-model="activeName" @change="processTypeClick" accordion>
|
||||||
|
<el-collapse-item
|
||||||
|
v-for="(item, index) in processTypeArr"
|
||||||
|
:key="index"
|
||||||
|
:title="item.name"
|
||||||
|
:name="index"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="拼命加载中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
|
>
|
||||||
|
<div v-if="processArr.length > 0">
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in processArr"
|
v-for="(item, index) in processArr"
|
||||||
:key="index"
|
:key="index"
|
||||||
@ -21,6 +35,16 @@
|
|||||||
>
|
>
|
||||||
{{ item.name }}
|
{{ item.name }}
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
<el-empty
|
||||||
|
v-else
|
||||||
|
:image-size="50"
|
||||||
|
description="此类型下无工序"
|
||||||
|
style="padding:0;"
|
||||||
|
></el-empty>
|
||||||
|
</div>
|
||||||
|
</el-collapse-item>
|
||||||
|
</el-collapse>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="21">
|
<el-col :span="21">
|
||||||
@ -189,10 +213,13 @@ export default {
|
|||||||
return {
|
return {
|
||||||
dataList: [],
|
dataList: [],
|
||||||
processArr: [],
|
processArr: [],
|
||||||
|
processTypeArr: [],
|
||||||
|
activeName: "",
|
||||||
processId: "",
|
processId: "",
|
||||||
graph: "",
|
graph: "",
|
||||||
type: "grid",
|
type: "grid",
|
||||||
selectCell: "",
|
selectCell: "",
|
||||||
|
loading: false,
|
||||||
editDrawer: false,
|
editDrawer: false,
|
||||||
editTitle: "",
|
editTitle: "",
|
||||||
form: {},
|
form: {},
|
||||||
@ -321,7 +348,7 @@ export default {
|
|||||||
},
|
},
|
||||||
getArr() {
|
getArr() {
|
||||||
this.$http
|
this.$http
|
||||||
.get("/basic/workingProcedure/page", {
|
.get("/basic/workingProcedureType/page", {
|
||||||
params: {
|
params: {
|
||||||
page: 1,
|
page: 1,
|
||||||
limit: 500,
|
limit: 500,
|
||||||
@ -331,7 +358,7 @@ export default {
|
|||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
this.processArr = res.data.list;
|
this.processTypeArr = res.data.list;
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
},
|
},
|
||||||
@ -351,6 +378,20 @@ export default {
|
|||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
},
|
},
|
||||||
|
//点击工序类型
|
||||||
|
processTypeClick(val) {
|
||||||
|
this.processArr = [];
|
||||||
|
if (val === 0 || val) {
|
||||||
|
this.loading = true;
|
||||||
|
this.$http
|
||||||
|
.post(`/basic/workingProcedure/listByType/${this.processTypeArr[val].id}`)
|
||||||
|
.then(({ data: res }) => {
|
||||||
|
this.loading = false;
|
||||||
|
this.processArr = res;
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
}
|
||||||
|
},
|
||||||
setNode() {
|
setNode() {
|
||||||
let nodes = [];
|
let nodes = [];
|
||||||
this.dataList.forEach((item) => {
|
this.dataList.forEach((item) => {
|
||||||
@ -672,7 +713,9 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
|
if (this.graph) {
|
||||||
this.graph.dispose();
|
this.graph.dispose();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
@ -688,7 +731,7 @@ export default {
|
|||||||
.btn {
|
.btn {
|
||||||
background-color: #5bdeff;
|
background-color: #5bdeff;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 20px;
|
padding: 10px;
|
||||||
color: white;
|
color: white;
|
||||||
cursor: move;
|
cursor: move;
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-11-18 14:16:25
|
* @Date: 2021-11-18 14:16:25
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-09-07 15:45:24
|
* @LastEditTime: 2023-01-06 15:25:05
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -14,7 +14,7 @@
|
|||||||
>
|
>
|
||||||
<el-card class="box-card">
|
<el-card class="box-card">
|
||||||
<div slot="header" class="clearfix">
|
<div slot="header" class="clearfix">
|
||||||
<el-steps :active="active" align-center finish-status="success">
|
<el-steps :active="active" align-center finish-status="success" process-status="finish">
|
||||||
<el-step title="基础信息"></el-step>
|
<el-step title="基础信息"></el-step>
|
||||||
<el-step title="工艺流程"></el-step>
|
<el-step title="工艺流程"></el-step>
|
||||||
<el-step title="产品特性"></el-step>
|
<el-step title="产品特性"></el-step>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-11-18 14:16:25
|
* @Date: 2021-11-18 14:16:25
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-09-07 10:49:27
|
* @LastEditTime: 2023-01-06 14:16:17
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -80,12 +80,26 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="SPC" prop="isSpc">
|
<el-form-item label="SPC" prop="isSpc">
|
||||||
<el-input v-model="fourDataForm.isSpc" placeholder="SPC"></el-input>
|
<el-select
|
||||||
|
v-model="fourDataForm.isSpc"
|
||||||
|
:style="{ width: '100%' }"
|
||||||
|
readonly
|
||||||
|
placeholder="请选择是否SPC"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in SPCArr"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.value"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="分析图形" prop="controlGraphId">
|
<el-form-item label="分析图形" prop="controlGraphId">
|
||||||
<el-select
|
<el-select
|
||||||
|
:disabled="fourDataForm.type === 2"
|
||||||
v-model="fourDataForm.controlGraphId"
|
v-model="fourDataForm.controlGraphId"
|
||||||
placeholder="请选择分析图形"
|
placeholder="请选择分析图形"
|
||||||
clearable
|
clearable
|
||||||
@ -103,6 +117,7 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="样本大小" prop="sampleSize">
|
<el-form-item label="样本大小" prop="sampleSize">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
|
:disabled="fourDataForm.type === 2"
|
||||||
v-model="fourDataForm.sampleSize"
|
v-model="fourDataForm.sampleSize"
|
||||||
placeholder="样本大小"
|
placeholder="样本大小"
|
||||||
></el-input-number>
|
></el-input-number>
|
||||||
@ -133,6 +148,7 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="小数位数" prop="decimalPlaces">
|
<el-form-item label="小数位数" prop="decimalPlaces">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
|
:disabled="fourDataForm.type === 2"
|
||||||
v-model="fourDataForm.decimalPlaces"
|
v-model="fourDataForm.decimalPlaces"
|
||||||
placeholder="小数位数"
|
placeholder="小数位数"
|
||||||
></el-input-number>
|
></el-input-number>
|
||||||
@ -145,22 +161,35 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="LSL" prop="lsl">
|
<el-form-item label="LSL" prop="lsl">
|
||||||
<el-input-number v-model="fourDataForm.lsl" placeholder="LSL"></el-input-number>
|
<el-input-number
|
||||||
|
:disabled="fourDataForm.type === 2"
|
||||||
|
v-model="fourDataForm.lsl"
|
||||||
|
placeholder="LSL"
|
||||||
|
></el-input-number>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="SL" prop="sl">
|
<el-form-item label="SL" prop="sl">
|
||||||
<el-input-number v-model="fourDataForm.sl" placeholder="SL"></el-input-number>
|
<el-input-number
|
||||||
|
:disabled="fourDataForm.type === 2"
|
||||||
|
v-model="fourDataForm.sl"
|
||||||
|
placeholder="SL"
|
||||||
|
></el-input-number>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="USL" prop="usl">
|
<el-form-item label="USL" prop="usl">
|
||||||
<el-input-number v-model="fourDataForm.usl" placeholder="USL"></el-input-number>
|
<el-input-number
|
||||||
|
:disabled="fourDataForm.type === 2"
|
||||||
|
v-model="fourDataForm.usl"
|
||||||
|
placeholder="USL"
|
||||||
|
></el-input-number>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="目标CPK" prop="targetCpk">
|
<el-form-item label="目标CPK" prop="targetCpk">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
|
:disabled="fourDataForm.type === 2"
|
||||||
v-model="fourDataForm.targetCpk"
|
v-model="fourDataForm.targetCpk"
|
||||||
placeholder="目标CPK"
|
placeholder="目标CPK"
|
||||||
></el-input-number>
|
></el-input-number>
|
||||||
@ -169,6 +198,7 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="目标PPK" prop="targetPpk">
|
<el-form-item label="目标PPK" prop="targetPpk">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
|
:disabled="fourDataForm.type === 2"
|
||||||
v-model="fourDataForm.targetPpk"
|
v-model="fourDataForm.targetPpk"
|
||||||
placeholder="目标PPK"
|
placeholder="目标PPK"
|
||||||
></el-input-number>
|
></el-input-number>
|
||||||
@ -225,6 +255,16 @@ export default {
|
|||||||
value: 1,
|
value: 1,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
SPCArr: [
|
||||||
|
{
|
||||||
|
name: "否",
|
||||||
|
value: 0,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "是",
|
||||||
|
value: 1,
|
||||||
|
},
|
||||||
|
],
|
||||||
defectLevelArr: [
|
defectLevelArr: [
|
||||||
{
|
{
|
||||||
name: "致命缺陷",
|
name: "致命缺陷",
|
||||||
@ -245,6 +285,10 @@ export default {
|
|||||||
dataRule: {
|
dataRule: {
|
||||||
code: [{ required: true, message: "编码不能为空", trigger: "blur" }],
|
code: [{ required: true, message: "编码不能为空", trigger: "blur" }],
|
||||||
name: [{ required: true, message: "名称不能为空", trigger: "blur" }],
|
name: [{ required: true, message: "名称不能为空", trigger: "blur" }],
|
||||||
|
sampleSize: [
|
||||||
|
{ required: true, message: "样本大小不能为空", trigger: "blur" },
|
||||||
|
{ pattern: /^([2-9]|[1-2]d|3[0-5])$/, message: "范围在2-35", trigger: "blur" },
|
||||||
|
],
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
@ -2,14 +2,20 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-11-18 14:16:25
|
* @Date: 2021-11-18 14:16:25
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-12-13 16:00:33
|
* @LastEditTime: 2023-01-03 14:06:12
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div v-if="workingProcedure.length && productFeaturesOptions.length">
|
<div v-if="workingProcedure.length && productFeaturesOptions.length">
|
||||||
<el-tabs @tab-click="tabClick">
|
<el-tabs @tab-click="tabClick">
|
||||||
<el-tab-pane label="控制矩阵">
|
<el-tab-pane
|
||||||
|
v-loading="loading"
|
||||||
|
element-loading-text="保存中"
|
||||||
|
element-loading-spinner="el-icon-loading"
|
||||||
|
element-loading-background="rgba(0, 0, 0, 0.8)"
|
||||||
|
label="控制矩阵"
|
||||||
|
>
|
||||||
<el-button style="float:right" size="small" type="primary" @click="deleteFeatures()">
|
<el-button style="float:right" size="small" type="primary" @click="deleteFeatures()">
|
||||||
<svg class="icon-svg"><use xlink:href="#icon-新建"></use></svg>
|
<svg class="icon-svg"><use xlink:href="#icon-新建"></use></svg>
|
||||||
保存
|
保存
|
||||||
@ -81,9 +87,17 @@
|
|||||||
<span>{{ scope.row.isSpc === 1 ? "是" : "否" }}</span>
|
<span>{{ scope.row.isSpc === 1 ? "是" : "否" }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="controlGraphName" align="center" label="分析图形"></el-table-column>
|
<el-table-column
|
||||||
|
prop="controlGraphName"
|
||||||
|
align="center"
|
||||||
|
label="分析图形"
|
||||||
|
></el-table-column>
|
||||||
<el-table-column prop="sampleSize" align="center" label="样本大小"></el-table-column>
|
<el-table-column prop="sampleSize" align="center" label="样本大小"></el-table-column>
|
||||||
<el-table-column prop="samplingFrequency" align="center" label="抽样频率"></el-table-column>
|
<el-table-column
|
||||||
|
prop="samplingFrequency"
|
||||||
|
align="center"
|
||||||
|
label="抽样频率"
|
||||||
|
></el-table-column>
|
||||||
<el-table-column prop="unitName" align="center" label="单位"></el-table-column>
|
<el-table-column prop="unitName" align="center" label="单位"></el-table-column>
|
||||||
<el-table-column prop="decimalPlaces" align="center" label="小数位数"></el-table-column>
|
<el-table-column prop="decimalPlaces" align="center" label="小数位数"></el-table-column>
|
||||||
<el-table-column prop="specifications" align="center" label="规格"></el-table-column>
|
<el-table-column prop="specifications" align="center" label="规格"></el-table-column>
|
||||||
@ -130,10 +144,7 @@
|
|||||||
ref="fourAddOrUpdate"
|
ref="fourAddOrUpdate"
|
||||||
@refreshFourDataList="getFourDataList"
|
@refreshFourDataList="getFourDataList"
|
||||||
></four-add-or-update>
|
></four-add-or-update>
|
||||||
<four-history
|
<four-history v-if="productFeaturesHisVisible" ref="productFeaturesHisRef"></four-history>
|
||||||
v-if="productFeaturesHisVisible"
|
|
||||||
ref="productFeaturesHisRef"
|
|
||||||
></four-history>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -166,6 +177,7 @@ export default {
|
|||||||
setBatchInsert: [],
|
setBatchInsert: [],
|
||||||
inspectionStage: 0,
|
inspectionStage: 0,
|
||||||
dataListLoading: false,
|
dataListLoading: false,
|
||||||
|
loading: false,
|
||||||
productFeaturesHisVisible: false,
|
productFeaturesHisVisible: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@ -176,6 +188,7 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
init(index) {
|
init(index) {
|
||||||
this.dataListLoading = false;
|
this.dataListLoading = false;
|
||||||
|
this.loading = false;
|
||||||
this.inspectionStage = parseInt(index);
|
this.inspectionStage = parseInt(index);
|
||||||
this.productFeaturesList.splice(0, this.productFeaturesList.length);
|
this.productFeaturesList.splice(0, this.productFeaturesList.length);
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
@ -229,9 +242,12 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
deleteFeatures() {
|
deleteFeatures() {
|
||||||
|
this.loading = true;
|
||||||
this.workingProcedure.forEach((item, index) => {
|
this.workingProcedure.forEach((item, index) => {
|
||||||
this.$http
|
this.$http
|
||||||
.delete(`/basic/featuresStageProcedureRelation/deleteByStageProcedure?inspectionStage=${this.inspectionStage}&productId=${this.productId}&workingProcedureId=${item.workingProcedureId}`)
|
.delete(
|
||||||
|
`/basic/featuresStageProcedureRelation/deleteByStageProcedure?inspectionStage=${this.inspectionStage}&productId=${this.productId}&workingProcedureId=${item.workingProcedureId}`
|
||||||
|
)
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
@ -247,6 +263,7 @@ export default {
|
|||||||
this.$http
|
this.$http
|
||||||
.post("/basic/featuresStageProcedureRelation/batchInsert", [...this.setBatchInsert])
|
.post("/basic/featuresStageProcedureRelation/batchInsert", [...this.setBatchInsert])
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
|
this.loading = false;
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user