diff --git a/src/api/casm/quality.js b/src/api/casm/quality.js
index 9ac4daf..b295447 100644
--- a/src/api/casm/quality.js
+++ b/src/api/casm/quality.js
@@ -42,3 +42,10 @@ export function delQuality(id) {
method: 'delete'
})
}
+// 获取合格率
+export function qualitystandardRate() {
+ return request({
+ url: '/casm/qualitystandardRate',
+ method: 'get'
+ })
+}
diff --git a/src/api/home.js b/src/api/home.js
index 9338895..5767dad 100644
--- a/src/api/home.js
+++ b/src/api/home.js
@@ -3,7 +3,7 @@ import request from '@/utils/request'
// 获取首页数据
export function getHomeDeviceInfoVO() {
return request({
- url: '/home',
+ url: '/casm/device/getHomeDeviceInfo',
method: 'get'
})
}
\ No newline at end of file
diff --git a/src/assets/iconfont/iconfont.css b/src/assets/iconfont/iconfont.css
new file mode 100644
index 0000000..4126905
--- /dev/null
+++ b/src/assets/iconfont/iconfont.css
@@ -0,0 +1,23 @@
+@font-face {
+ font-family: "iconfont"; /* Project id 4503445 */
+ src: url('iconfont.woff2?t=1712819070350') format('woff2'),
+ url('iconfont.woff?t=1712819070350') format('woff'),
+ url('iconfont.ttf?t=1712819070350') format('truetype');
+}
+
+.iconfont {
+ font-family: "iconfont" !important;
+ font-size: 16px;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+
+.icon-shengchanxiaoshuai:before {
+ content: "\e612";
+}
+
+.icon-zhinengjiaju:before {
+ content: "\e61c";
+}
+
diff --git a/src/assets/iconfont/iconfont.ttf b/src/assets/iconfont/iconfont.ttf
new file mode 100644
index 0000000..77182c7
Binary files /dev/null and b/src/assets/iconfont/iconfont.ttf differ
diff --git a/src/assets/iconfont/iconfont.woff b/src/assets/iconfont/iconfont.woff
new file mode 100644
index 0000000..0ed21eb
Binary files /dev/null and b/src/assets/iconfont/iconfont.woff differ
diff --git a/src/assets/iconfont/iconfont.woff2 b/src/assets/iconfont/iconfont.woff2
new file mode 100644
index 0000000..9e309de
Binary files /dev/null and b/src/assets/iconfont/iconfont.woff2 differ
diff --git a/src/assets/images/frj.png b/src/assets/images/frj.png
new file mode 100644
index 0000000..f1285ee
Binary files /dev/null and b/src/assets/images/frj.png differ
diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
index 42fffdf..9ff0b35 100644
--- a/src/layout/components/AppMain.vue
+++ b/src/layout/components/AppMain.vue
@@ -2,11 +2,14 @@
@@ -27,7 +30,7 @@ const tagsViewStore = useTagsViewStore()
overflow: hidden;
}
-.fixed-header + .app-main {
+.fixed-header+.app-main {
padding-top: 50px;
}
@@ -37,7 +40,7 @@ const tagsViewStore = useTagsViewStore()
min-height: calc(100vh - 84px);
}
- .fixed-header + .app-main {
+ .fixed-header+.app-main {
padding-top: 84px;
}
}
@@ -65,4 +68,3 @@ const tagsViewStore = useTagsViewStore()
border-radius: 3px;
}
-
diff --git a/src/main.js b/src/main.js
index 68a8e5c..29d7d99 100644
--- a/src/main.js
+++ b/src/main.js
@@ -56,19 +56,22 @@ import {
CanvasRenderer
} from 'echarts/renderers'
import {
- PieChart
+ PieChart,LineChart
} from 'echarts/charts'
import {
TitleComponent,
TooltipComponent,
- LegendComponent
+ LegendComponent,
+ GridComponent
} from 'echarts/components'
use([
CanvasRenderer,
- PieChart,
TitleComponent,
TooltipComponent,
- LegendComponent
+ LegendComponent,
+ GridComponent,
+ PieChart,
+ LineChart,
]);
diff --git a/src/views/device/device/index.vue b/src/views/device/device/index.vue
index c8203a2..bc95dfa 100644
--- a/src/views/device/device/index.vue
+++ b/src/views/device/device/index.vue
@@ -1,55 +1,63 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
+
-
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
- {{tLang('common','搜索')}}
- {{tLang('common','重置')}}
+ {{ tLang('common', '搜索') }}
+ {{ tLang('common', '重置') }}
- {{ $t('common.新增') }}
+ {{
+ $t('common.新增') }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
@@ -100,62 +109,67 @@
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
@@ -223,19 +237,19 @@ let rules = ref({
})
// 列显隐信息
const columns = ref([
- { key: 0, label: proxy.tLang('device',`设备名称`), visible: true },
- { key: 1, label: proxy.tLang('device',`设备编码`), visible: true },
- { key: 2, label: proxy.tLang('device',`设备类型`), visible: true },
- { key: 3, label:proxy.tLang('device',`车间名称`) , visible: true },
- { key: 4, label:proxy.tLang('device',`产线名称`) , visible: false },
- { key: 5, label:proxy.tLang('device',`保养周期`) , visible: false },
- { key: 5, label:proxy.tLang('device',`供货商名称`) , visible: false },
- { key: 5, label:proxy.tLang('device',`供货商联络人`) , visible: false },
- { key: 5, label:proxy.tLang('device',`生产厂家`) , visible: false },
- { key: 5, label:proxy.tLang('device',`联系电话`) , visible: false },
- { key: 5, label:proxy.tLang('device',`品牌`) , visible: false },
- { key: 5, label:proxy.tLang('device',`设备型号`) , visible: false },
- { key: 5, label:proxy.tLang('device',`备注`) , visible: false },
+ { key: 0, label: proxy.tLang('device', `设备名称`), visible: true },
+ { key: 1, label: proxy.tLang('device', `设备编码`), visible: true },
+ { key: 2, label: proxy.tLang('device', `设备类型`), visible: true },
+ { key: 3, label: proxy.tLang('device', `车间名称`), visible: true },
+ { key: 4, label: proxy.tLang('device', `产线名称`), visible: false },
+ { key: 5, label: proxy.tLang('device', `保养周期`), visible: false },
+ { key: 5, label: proxy.tLang('device', `供货商名称`), visible: false },
+ { key: 5, label: proxy.tLang('device', `供货商联络人`), visible: false },
+ { key: 5, label: proxy.tLang('device', `生产厂家`), visible: false },
+ { key: 5, label: proxy.tLang('device', `联系电话`), visible: false },
+ { key: 5, label: proxy.tLang('device', `品牌`), visible: false },
+ { key: 5, label: proxy.tLang('device', `设备型号`), visible: false },
+ { key: 5, label: proxy.tLang('device', `备注`), visible: false },
]);
/** 查询设备信息列表 */
function getList() {
@@ -316,7 +330,7 @@ function handleInfo(row) {
function handleAdd() {
reset();
open.value = true;
- title.value = proxy.tLang('common','添加') + ' ' + proxy.tLang('device','设备信息');
+ title.value = proxy.tLang('common', '添加') + ' ' + proxy.tLang('device', '设备信息');
}
/** 修改按钮操作 */
function handleUpdate(row) {
@@ -325,7 +339,7 @@ function handleUpdate(row) {
getDevice(id).then(response => {
form.value = response.data;
open.value = true;
- title.value = proxy.tLang('common','修改') + ' ' + proxy.tLang('device','设备信息');
+ title.value = proxy.tLang('common', '修改') + ' ' + proxy.tLang('device', '设备信息');
});
}
/** 提交按钮 */
@@ -334,13 +348,13 @@ function submitForm() {
if (valid) {
if (form.value.id != null) {
updateDevice(form.value).then(response => {
- proxy.$modal.msgSuccess(proxy.tLang('common','修改成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '修改成功'));
open.value = false;
getList();
});
} else {
addDevice(form.value).then(response => {
- proxy.$modal.msgSuccess(proxy.tLang('common','新增成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '新增成功'));
open.value = false;
getList();
});
@@ -351,11 +365,11 @@ function submitForm() {
/** 删除按钮操作 */
function handleDelete(row) {
const id = row.id || ids.value;
- proxy.$modal.confirm(proxy.tLang('tip','确定删除选中记录?') + ` [${id}]`).then(function () {
+ proxy.$modal.confirm(proxy.tLang('tip', '确定删除选中记录?') + ` [${id}]`).then(function () {
return delDevice(id);
}).then(() => {
getList();
- proxy.$modal.msgSuccess(proxy.tLang('common','删除成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '删除成功'));
}).catch(() => { });
}
/** 导出按钮操作 */
@@ -378,4 +392,12 @@ onMounted(() => {
.demo-form-inlinee :deep(.el-select) {
--el-select-width: 220px;
}
+
+.pagination {
+ width: 100%;
+ margin: 10px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
diff --git a/src/views/index.vue b/src/views/index.vue
index 93d9bb4..85f9bdd 100644
--- a/src/views/index.vue
+++ b/src/views/index.vue
@@ -1,53 +1,298 @@
-
-
-
-
+
+
+
+
+ 员工总数:200人
+
+
+
+
+ 产出进度:60%
+
+
+
+
+
+
+
+
+
+
![]()
+
设备编号:{{ item.deviceCode }}
+
+
+
+ - 工作人员:{{ item.userName }}
+ - 加工信息:{{ item.productionCode }}
+ - 产量:{{item.output}}/{{ item.planOutput }}
+ - 稼动率:{{ item.activation }}
+
+
+
+
+
+
+
+
-
\ No newline at end of file
diff --git a/src/views/produce/index.vue b/src/views/produce/index.vue
index 851842e..36a9ed8 100644
--- a/src/views/produce/index.vue
+++ b/src/views/produce/index.vue
@@ -2,56 +2,62 @@
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
+
-
+
+ value-format="YYYY-MM-DD hh:mm:ss" :placeholder="tLang('common', '请选择') + tLang('produce', '开始时间')">
-
+
+ value-format="YYYY-MM-DD hh:mm:ss" :placeholder="tLang('common', '请选择') + tLang('produce', '结束时间')">
-
+
- {{tLang('common','搜索')}}
- {{tLang('common','重置')}}
+ {{ tLang('common', '搜索') }}
+ {{ tLang('common', '重置') }}
{{tLang('common','新增')}}
+ v-hasPermi="['casm:produce:add']">{{ tLang('common', '新增') }}
{{tLang('common','修改')}}
+ v-hasPermi="['casm:produce:edit']">{{ tLang('common', '修改') }}
{{tLang('common','删除')}}
+ v-hasPermi="['casm:produce:remove']">{{ tLang('common', '删除') }}
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
+
-
+
-
+
@@ -71,8 +74,12 @@
-
+
@@ -119,14 +126,14 @@ let total = ref(0)
let productionLineRelationList = ref([])
// 列显隐信息
const columns = ref([
- { key: 0, label: proxy.tLang('product','产品编码'), visible: true },
- { key: 1, label: proxy.tLang('product','针号'), visible: true },
- { key: 2, label: proxy.tLang('product','面线信息'), visible: true },
- { key: 3, label: proxy.tLang('product','底线信息'), visible: true },
- { key: 4, label: proxy.tLang('product','梭芯信息'), visible: true },
- { key: 5, label: proxy.tLang('product','排序'), visible: true },
- { key: 6, label: proxy.tLang('product','最小值'), visible: true },
- { key: 7, label: proxy.tLang('product','最大值'), visible: true },
+ { key: 0, label: proxy.tLang('product', '产品编码'), visible: true },
+ { key: 1, label: proxy.tLang('product', '针号'), visible: true },
+ { key: 2, label: proxy.tLang('product', '面线信息'), visible: true },
+ { key: 3, label: proxy.tLang('product', '底线信息'), visible: true },
+ { key: 4, label: proxy.tLang('product', '梭芯信息'), visible: true },
+ { key: 5, label: proxy.tLang('product', '排序'), visible: true },
+ { key: 6, label: proxy.tLang('product', '最小值'), visible: true },
+ { key: 7, label: proxy.tLang('product', '最大值'), visible: true },
// { key: 8, label: proxy.tLang('product','类型'), visible: true },
]);
@@ -167,7 +174,7 @@ function resetQuery() {
function handleAdd() {
reset();
open.value = true;
- title.value = proxy.tLang('common','添加') + ' '+proxy.tLang('product','针号');
+ title.value = proxy.tLang('common', '添加') + ' ' + proxy.tLang('product', '针号');
}
/**详情按钮操作 */
@@ -183,13 +190,13 @@ function submitForm(propform) {
if (propform.id != null) {
updateProductionLineRelation(propform).then(response => {
- proxy.$modal.msgSuccess(proxy.tLang('common','修改成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '修改成功'));
open.value = false;
getList();
});
} else {
addProductionLineRelation(propform).then(response => {
- proxy.$modal.msgSuccess(proxy.tLang('common','新增成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '新增成功'));
open.value = false;
getList();
});
@@ -229,18 +236,18 @@ function handleUpdate(row) {
getProductionLineRelation(id).then(response => {
form.value = response.data;
open.value = true;
- title.value = proxy.tLang('common','修改') + ' ' + proxy.tLang('product','针号');
+ title.value = proxy.tLang('common', '修改') + ' ' + proxy.tLang('product', '针号');
});
}
/** 删除按钮操作 */
function handleDelete(row) {
const id = row.id || ids.value;
- proxy.$modal.confirm(proxy.tLang('tip','确定删除选中记录?') + ` [${id}]`).then(function () {
+ proxy.$modal.confirm(proxy.tLang('tip', '确定删除选中记录?') + ` [${id}]`).then(function () {
return delProductionLineRelation(id);
}).then(() => {
getList();
- proxy.$modal.msgSuccess(proxy.tLang('common','删除成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '删除成功'));
}).catch(() => { });
}
onMounted(() => {
@@ -248,4 +255,12 @@ onMounted(() => {
})
-
+
diff --git a/src/views/product/product/index.vue b/src/views/product/product/index.vue
index 9467096..c11fc00 100644
--- a/src/views/product/product/index.vue
+++ b/src/views/product/product/index.vue
@@ -45,9 +45,7 @@
- {{ tLang('product', '查看')
- }}
- {{ tLang('product', '下载')
+ {{ tLang('product', '下载')
}}
@@ -69,14 +67,19 @@
-
+
+
-
+
diff --git a/src/views/product/working/index.vue b/src/views/product/working/index.vue
index 6cda69b..ff8b94f 100644
--- a/src/views/product/working/index.vue
+++ b/src/views/product/working/index.vue
@@ -1,43 +1,45 @@
-
-
+
+
-
-
+
+
- {{tLang('common','搜索')}}
- {{tLang('common','重置')}}
+ {{ tLang('common', '搜索') }}
+ {{ tLang('common', '重置') }}
{{tLang('common','新增')}}
+ v-hasPermi="['product:working:add']">{{ tLang('common', '新增') }}
{{tLang('common','修改')}}
+ v-hasPermi="['product:working:edit']">{{ tLang('common', '修改') }}
{{tLang('common','删除')}}
+ v-hasPermi="['product:working:remove']">{{ tLang('common', '删除') }}
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
+
@@ -95,13 +101,13 @@ let total = ref(0)
let procedureList = ref([])
// 列显隐信息
const columns = ref([
- { key: 0, label:proxy.tLang('product','产品编码') , visible: true },
- { key: 1, label:proxy.tLang('product','第几针') , visible: true },
- { key: 2, label:proxy.tLang('product','步骤') , visible: true },
- { key: 3, label:proxy.tLang('product','最小值') , visible: true },
- { key: 4, label:proxy.tLang('product','最大值') , visible: true },
- { key: 5, label:proxy.tLang('product','排序') , visible: true },
- { key: 6, label:proxy.tLang('product','备注') , visible: true },
+ { key: 0, label: proxy.tLang('product', '产品编码'), visible: true },
+ { key: 1, label: proxy.tLang('product', '第几针'), visible: true },
+ { key: 2, label: proxy.tLang('product', '步骤'), visible: true },
+ { key: 3, label: proxy.tLang('product', '最小值'), visible: true },
+ { key: 4, label: proxy.tLang('product', '最大值'), visible: true },
+ { key: 5, label: proxy.tLang('product', '排序'), visible: true },
+ { key: 6, label: proxy.tLang('product', '备注'), visible: true },
]);
let infoDialog = ref(false)
@@ -140,7 +146,7 @@ function resetQuery() {
function handleAdd() {
reset();
open.value = true;
- title.value = proxy.tLang('common','添加') + ' ' + proxy.tLang('product','缝纫次数');
+ title.value = proxy.tLang('common', '添加') + ' ' + proxy.tLang('product', '缝纫次数');
}
@@ -150,13 +156,13 @@ function handleAdd() {
function submitForm(propform) {
if (propform.id != null) {
updateProcedure(propform).then(response => {
- proxy.$modal.msgSuccess(proxy.tLang('common','修改成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '修改成功'));
open.value = false;
getList();
});
} else {
addProcedure(propform).then(response => {
- proxy.$modal.msgSuccess(proxy.tLang('common','新增成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '新增成功'));
open.value = false;
getList();
});
@@ -191,18 +197,18 @@ function handleUpdate(row) {
getProcedure(id).then(response => {
form.value = response.data;
open.value = true;
- title.value = proxy.tLang('common','修改') + ' ' + proxy.tLang('product','缝纫次数');
+ title.value = proxy.tLang('common', '修改') + ' ' + proxy.tLang('product', '缝纫次数');
});
}
/** 删除按钮操作 */
function handleDelete(row) {
const id = row.id || ids.value;
- proxy.$modal.confirm(proxy.tLang('tip','确定删除选中记录?') + ` [${id}]`).then(function () {
+ proxy.$modal.confirm(proxy.tLang('tip', '确定删除选中记录?') + ` [${id}]`).then(function () {
return delProcedure(id);
}).then(() => {
getList();
- proxy.$modal.msgSuccess(proxy.tLang('common','删除成功'));
+ proxy.$modal.msgSuccess(proxy.tLang('common', '删除成功'));
}).catch(() => { });
}
onMounted(() => {
@@ -210,4 +216,12 @@ onMounted(() => {
})
-
+
diff --git a/src/views/quality/index.vue b/src/views/quality/index.vue
index 4f40bba..f14b567 100644
--- a/src/views/quality/index.vue
+++ b/src/views/quality/index.vue
@@ -49,12 +49,12 @@
-
+
-
+
@@ -90,7 +90,7 @@
{{ parseTime(scope.row.endtime, '{y}-{m}-{d} {hh}:{mm}:{ss}') }}
-
+
-
+
@@ -118,7 +122,7 @@
-
\ No newline at end of file
+
\ No newline at end of file