projects/mes-test #132

Manually merged
gtz217 merged 281 commits from projects/mes-test into projects/mes 2023-11-30 09:11:34 +08:00
26 changed files with 201 additions and 377 deletions
Showing only changes of commit 50a75dcb74 - Show all commits

View File

@ -31,9 +31,6 @@ VUE_CLI_BABEL_TRANSPILE_MODULES = true
# 多租户的开关 # 多租户的开关
VUE_APP_TENANT_ENABLE = true VUE_APP_TENANT_ENABLE = true
# 验证码的开关
VUE_APP_CAPTCHA_ENABLE = true
# 文档的开关 # 文档的开关
VUE_APP_DOC_ENABLE = true VUE_APP_DOC_ENABLE = true

View File

@ -14,9 +14,6 @@ VUE_CLI_BABEL_TRANSPILE_MODULES = true
# 多租户的开关 # 多租户的开关
VUE_APP_TENANT_ENABLE = true VUE_APP_TENANT_ENABLE = true
# 验证码的开关
VUE_APP_CAPTCHA_ENABLE = true
# 文档的开关 # 文档的开关
VUE_APP_DOC_ENABLE = true VUE_APP_DOC_ENABLE = true

View File

@ -28,9 +28,6 @@ VUE_APP_APP_NAME ='yudao-admin'
# 多租户的开关 # 多租户的开关
VUE_APP_TENANT_ENABLE = true VUE_APP_TENANT_ENABLE = true
# 验证码的开关
VUE_APP_CAPTCHA_ENABLE = true
# 文档的开关 # 文档的开关
VUE_APP_DOC_ENABLE = false VUE_APP_DOC_ENABLE = false

View File

@ -15,9 +15,6 @@ PUBLIC_PATH = 'http://static.yudao.iocoder.cn/'
# 多租户的开关 # 多租户的开关
VUE_APP_TENANT_ENABLE = true VUE_APP_TENANT_ENABLE = true
# 验证码的开关
VUE_APP_CAPTCHA_ENABLE = true
# 文档的开关 # 文档的开关
VUE_APP_DOC_ENABLE = false VUE_APP_DOC_ENABLE = false

View File

@ -17,9 +17,6 @@ VUE_APP_APP_NAME ='/admin-ui-vue2/'
# 多租户的开关 # 多租户的开关
VUE_APP_TENANT_ENABLE = true VUE_APP_TENANT_ENABLE = true
# 验证码的开关
VUE_APP_CAPTCHA_ENABLE = true
# 文档的开关 # 文档的开关
VUE_APP_DOC_ENABLE = true VUE_APP_DOC_ENABLE = true

View File

@ -18,6 +18,15 @@ export function deliveryProgressPage(data) {
}) })
} }
// 获取订单列表
export function listOrderList(query) {
return request({
url: '/extend/delivery-log/listOrderList',
method: 'get',
params: query
})
}
// 获取发货进度分页 // 获取发货进度分页
export function deliveryLogDetPage(data) { export function deliveryLogDetPage(data) {
return request({ return request({

View File

@ -196,4 +196,8 @@ input, textarea{
margin-right: 8px; margin-right: 8px;
vertical-align: middle; vertical-align: middle;
} }
// 抽屉head区域---end // 抽屉head区域---end
// 弹出框上下分布去掉label的padding-bottom
.el-form--label-top .el-form-item__label {
padding: 0;
}

View File

@ -187,19 +187,6 @@ export function getTenantEnable() {
return process.env.VUE_APP_TENANT_ENABLE || true; return process.env.VUE_APP_TENANT_ENABLE || true;
} }
/**
* 获得验证码功能是否开启
*/
export function getCaptchaEnable() {
if (process.env.VUE_APP_CAPTCHA_ENABLE === "true") {
return true;
}
if (process.env.VUE_APP_CAPTCHA_ENABLE === "false") {
return false;
}
return process.env.VUE_APP_CAPTCHA_ENABLE || true;
}
/** /**
* 获得文档是否开启 * 获得文档是否开启
*/ */

View File

@ -2,23 +2,23 @@
* @Author: zwq * @Author: zwq
* @Date: 2021-11-18 14:16:25 * @Date: 2021-11-18 14:16:25
* @LastEditors: DY * @LastEditors: DY
* @LastEditTime: 2023-11-24 18:20:26 * @LastEditTime: 2023-11-28 14:09:09
* @Description: * @Description:
--> -->
<template> <template>
<el-drawer <el-drawer
:visible.sync="visible" :visible.sync="visible"
:show-close="false" :show-close="false"
:wrapper-closable="false" :wrapper-closable="true"
class="drawer" class="drawer"
size="50%"> size="50%">
<small-title slot="title" :no-padding="true"> <small-title slot="title" :no-padding="true">
{{ '预使用主原料信息' }} {{ '工单名称:' + dataForm.name }}
</small-title> </small-title>
<div class="content"> <div class="content">
<div style="height: 10vh"> <!-- <div style="height: 10vh">
<div style="font-size: 18px;">工单名{{ dataForm.name }}</div> <div style="font-size: 18px;">工单名{{ dataForm.name }}</div>
</div> </div> -->
<div class="attr-list"> <div class="attr-list">
<small-title <small-title
@ -30,7 +30,7 @@
<div class="action_btn"> <div class="action_btn">
<template> <template>
<span style="display: inline-block;"> <span style="display: inline-block;">
<el-button type="text" @click="addNew()" icon="el-icon-plus">添加</el-button> <el-button type="text" @click="addNew()" icon="el-icon-plus">新增</el-button>
</span> </span>
</template> </template>
</div> </div>
@ -55,9 +55,9 @@
@pagination="getList" /> @pagination="getList" />
</div> </div>
<div class="drawer-body__footer"> <!-- <div class="drawer-body__footer">
<el-button type="primary" @click="goback()">关闭</el-button> <el-button type="primary" @click="goback()">关闭</el-button>
</div> </div> -->
</div> </div>
<attr-add <attr-add

View File

@ -13,7 +13,7 @@
</el-col> </el-col>
<el-col :span='8'> <el-col :span='8'>
<el-form-item label="产品名称" prop="planProductId"> <el-form-item label="产品名称" prop="planProductId">
<el-select v-model="dataForm.planProductId" placeholder="请选择产品" style="width: 100%;" @change="selectProduct"> <el-select v-model="dataForm.planProductId" placeholder="请选择产品" style="width: 100%;" filterable @change="selectProduct">
<el-option <el-option
v-for="item in productList" v-for="item in productList"
:key="item.id" :key="item.id"
@ -175,6 +175,7 @@ export default {
planQuantity: 0, planQuantity: 0,
processFlowId: '', processFlowId: '',
materialMethod: 1, materialMethod: 1,
triggerOrigin: 1,
priority: '', priority: '',
productLineIds: [], productLineIds: [],
type: '', type: '',

View File

@ -1,7 +1,7 @@
<template> <template>
<el-dialog <el-dialog
:visible.sync="visible" :visible.sync="visible"
:width="'35%'" :width="'50%'"
:append-to-body="true" :append-to-body="true"
:close-on-click-modal="false" :close-on-click-modal="false"
class="dialog"> class="dialog">
@ -17,73 +17,92 @@
ref="dataForm" ref="dataForm"
:model="dataForm" :model="dataForm"
:rules="dataRule" :rules="dataRule"
label-width="100px" label-width="80px"
@keyup.enter.native="dataFormSubmit()"> @keyup.enter.native="dataFormSubmit()">
<el-form-item label="原料" prop="material"> <el-row :gutter="20">
<el-select <el-col :span="12">
v-model="dataForm.material" <el-form-item label="原料" prop="material">
filterable <el-select
style="width: 100%" v-model="dataForm.material"
placeholder="请选择原料"> filterable
<el-option style="width: 100%"
v-for="dict in getDictDatas('material')" placeholder="请选择原料">
:key="dict.value" <el-option
:label="dict.label" v-for="dict in getDictDatas('material')"
:value="dict.value" /> :key="dict.value"
</el-select> :label="dict.label"
</el-form-item> :value="dict.value" />
<el-form-item label="来源" prop="origin"> </el-select>
<el-select </el-form-item>
v-model="dataForm.origin" </el-col>
filterable <el-col :span="12">
style="width: 100%" <el-form-item label="来源" prop="origin">
placeholder="请选择来源"> <el-select
<el-option v-model="dataForm.origin"
v-for="dict in originList" filterable
:key="dict.value" style="width: 100%"
:label="dict.label" placeholder="请选择来源">
:value="dict.value" /> <el-option
</el-select> v-for="dict in originList"
</el-form-item> :key="dict.value"
<el-form-item label="供应商" prop="supplierId"> :label="dict.label"
<el-select :value="dict.value" />
v-model="dataForm.supplierId" </el-select>
filterable </el-form-item>
style="width: 100%" </el-col>
placeholder="请选择供应商"> </el-row>
<el-option <el-row :gutter="20">
v-for="dict in supplierList" <el-col :span="12">
:key="dict.id" <el-form-item label="供应商" prop="supplierId">
:label="dict.name" <el-select
:value="dict.id" /> v-model="dataForm.supplierId"
</el-select> filterable
</el-form-item> style="width: 100%"
<el-form-item label="批次号" prop="batch"> placeholder="请选择供应商">
<el-input <el-option
v-model="dataForm.batch" v-for="dict in supplierList"
clearable :key="dict.id"
placeholder="请输入批次号" /> :label="dict.name"
</el-form-item> :value="dict.id" />
<el-form-item label="数量" prop="num"> </el-select>
<el-input-number </el-form-item>
v-model="dataForm.num" </el-col>
clearable <el-col :span="12">
style="width: 100%" <el-form-item label="批次号" prop="batch">
placeholder="请输入数量" /> <el-input
</el-form-item> v-model="dataForm.batch"
<el-form-item label="单位" prop="unit"> clearable
<el-select placeholder="请输入批次号" />
v-model="dataForm.unit" </el-form-item>
filterable </el-col>
style="width: 100%" </el-row>
placeholder="请选择单位"> <el-row :gutter="20">
<el-option <el-col :span="12">
v-for="dict in getDictDatas('unit_dict')" <el-form-item label="数量" prop="num">
:key="dict.value" <el-input-number
:label="dict.label" v-model="dataForm.num"
:value="dict.value" /> clearable
</el-select> controls-position="right"
</el-form-item> style="width: 100%"
placeholder="请输入数量" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="单位" prop="unit">
<el-select
v-model="dataForm.unit"
filterable
style="width: 100%"
placeholder="请选择单位">
<el-option
v-for="dict in getDictDatas('unit_dict')"
:key="dict.value"
:label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form> </el-form>
<el-row style="text-align: right"> <el-row style="text-align: right">

View File

@ -13,7 +13,7 @@
<method-btn <method-btn
v-if="tableBtn.length" v-if="tableBtn.length"
slot="handleBtn" slot="handleBtn"
:width="300" :width="350"
label="操作" label="操作"
:method-list="tableBtn" :method-list="tableBtn"
@clickBtn="handleClick" /> @clickBtn="handleClick" />
@ -57,7 +57,8 @@ import {
getCoreWOPage, getCoreWOPage,
deleteCoreWO, deleteCoreWO,
statusChange, statusChange,
getConOrderList getConOrderList,
getCoreWOList
} from '@/api/base/coreWorkOrder'; } from '@/api/base/coreWorkOrder';
@ -66,19 +67,26 @@ const tableProps = [
prop: 'createTime', prop: 'createTime',
label: '创建时间', label: '创建时间',
filter: parseTime, filter: parseTime,
'show-overflow-tooltip': true minWidth: 150,
showOverflowtooltip: true
}, },
{ {
prop: 'name', prop: 'name',
label: '工单名称' label: '工单名称',
minWidth: 120,
showOverflowtooltip: true
}, },
{ {
prop: 'code', prop: 'code',
label: '工单编码' label: '工单编码',
minWidth: 150,
showOverflowtooltip: true
}, },
{ {
prop: 'workers', prop: 'workers',
label: '负责人' label: '负责人',
minWidth: 100,
showOverflowtooltip: true
}, },
{ {
prop: 'priority', prop: 'priority',
@ -88,7 +96,7 @@ const tableProps = [
{ {
prop: 'triggerOrigin', prop: 'triggerOrigin',
label: '来源', label: '来源',
filter: (val) => ['', 'MES', 'ERP'][val] filter: (val) => ['', 'MES-手动', 'MES-订单下发', 'ERP'][val]
}, },
{ {
prop: 'status', prop: 'status',
@ -98,15 +106,19 @@ const tableProps = [
{ {
prop: 'planFinishTime', prop: 'planFinishTime',
label: '计划完成时间', label: '计划完成时间',
filter: parseTime filter: parseTime,
minWidth: 150,
showOverflowtooltip: true
}, },
{ {
prop: 'planQuantity', prop: 'planQuantity',
label: '计划生产数量' label: '计划生产数量',
minWidth: 120,
}, },
{ {
prop: 'actualQuantity', prop: 'actualQuantity',
label: '实际生产数量' label: '实际生产数量',
minWidth: 120,
} }
]; ];
@ -251,6 +263,16 @@ export default {
].filter((v)=>v), ].filter((v)=>v),
tableData: [], tableData: [],
formConfig: [ formConfig: [
// {
// type: 'select',
// label: '',
// placeholder: '',
// param: 'name',
// defaultSelect: '',
// selectOptions: [],
// allowCreate: true,
// filterable: true
// },
{ {
type: 'input', type: 'input',
label: '工单名称', label: '工单名称',
@ -308,9 +330,20 @@ export default {
this.listQuery.name = this.$route.query.workOrderName; this.listQuery.name = this.$route.query.workOrderName;
this.formConfig[0].defaultSelect = this.$route.query.workOrderName; this.formConfig[0].defaultSelect = this.$route.query.workOrderName;
} }
// this.getWorkOrder()
this.getDataList() this.getDataList()
}, },
methods: { methods: {
getWorkOrder() {
getCoreWOList().then(res => {
this.formConfig[0].selectOptions = res.data.map(item => {
return {
name: item.name,
id: item.name
}
})
})
},
refreshWorkOrder(val) { refreshWorkOrder(val) {
console.log(val) console.log(val)
if (val) { if (val) {

View File

@ -3,7 +3,7 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span='6'> <el-col :span='6'>
<el-form-item label="订单名" prop="orderId"> <el-form-item label="订单名" prop="orderId">
<el-select v-model="form.orderId" placeholder="请选择" style="width: 100%;"> <el-select v-model="form.orderId" placeholder="请选择" style="width: 100%;" filterable>
<el-option <el-option
v-for="item in orderList" v-for="item in orderList"
:key="item.id" :key="item.id"
@ -39,7 +39,7 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span='6'> <el-col :span='6'>
<el-form-item label="发货负责人" prop="deliveryPersonId"> <el-form-item label="发货负责人" prop="deliveryPersonId">
<el-select v-model="form.deliveryPersonId" placeholder="请选择" style="width: 100%;"> <el-select v-model="form.deliveryPersonId" placeholder="请选择" style="width: 100%;" filterable>
<el-option <el-option
v-for="item in personList" v-for="item in personList"
:key="item.id" :key="item.id"
@ -75,9 +75,8 @@
</el-form> </el-form>
</template> </template>
<script> <script>
import { orderList } from '@/api/base/orderManage'
import { getWorkerList } from '@/api/base/worker' import { getWorkerList } from '@/api/base/worker'
import { deliveryLogCreate, deliveryLogUpdate, getDeliveryLog } from '@/api/base/delivery' import { deliveryLogCreate, deliveryLogUpdate, getDeliveryLog, listOrderList } from '@/api/base/delivery'
export default { export default {
name: 'AddOrUpdate', name: 'AddOrUpdate',
data() { data() {
@ -116,7 +115,7 @@ export default {
} }
}, },
getSelectList() { getSelectList() {
orderList().then(res => { listOrderList().then(res => {
this.orderList = res.data || [] this.orderList = res.data || []
}) })
getWorkerList().then(res => { getWorkerList().then(res => {

View File

@ -1,7 +1,7 @@
<template> <template>
<el-form ref="form" :rules="rules" label-width="100px" :model="form"> <el-form ref="form" :rules="rules" label-width="100px" :model="form">
<el-form-item label="关联表名" prop="plcId"> <el-form-item label="关联表名" prop="plcId">
<el-select v-model="form.plcId" placeholder="请选择" style="width: 100%;"> <el-select v-model="form.plcId" placeholder="请选择" style="width: 100%;" filterable>
<el-option <el-option
v-for="item in plcList" v-for="item in plcList"
:key="item.id" :key="item.id"

View File

@ -3,7 +3,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="能源类型" prop="typeId"> <el-form-item label="能源类型" prop="typeId">
<el-select v-model="form.typeId" placeholder="请选择" style="width: 100%;"> <el-select v-model="form.typeId" placeholder="请选择" style="width: 100%;" filterable>
<el-option <el-option
v-for="item in energyListType" v-for="item in energyListType"
:key="item.id" :key="item.id"

View File

@ -15,7 +15,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="能源类型" prop="energyTypeId"> <el-form-item label="能源类型" prop="energyTypeId">
<el-select v-model="form.energyTypeId" placeholder="请选择" style="width: 100%;" @change="toggleType"> <el-select v-model="form.energyTypeId" placeholder="请选择" style="width: 100%;" filterable @change="toggleType">
<el-option <el-option
v-for="item in this.energyTypeList" v-for="item in this.energyTypeList"
:key="item.id" :key="item.id"

View File

@ -27,7 +27,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="能源类型" prop="energyTypeId"> <el-form-item label="能源类型" prop="energyTypeId">
<el-select v-model="form.energyTypeId" placeholder="请选择" style="width: 100%;"> <el-select v-model="form.energyTypeId" placeholder="请选择" style="width: 100%;" filterable>
<el-option <el-option
v-for="item in energyListType" v-for="item in energyListType"
:key="item.id" :key="item.id"

View File

@ -10,7 +10,7 @@
ref="drawer" ref="drawer"
:visible.sync="visible" :visible.sync="visible"
:show-close="false" :show-close="false"
:wrapper-closable="false" :wrapper-closable="isdetail"
class="drawer" class="drawer"
size="60%"> size="60%">
<small-title slot="title" :no-padding="true"> <small-title slot="title" :no-padding="true">
@ -85,6 +85,19 @@
placeholder="选择巡检时间" /> placeholder="选择巡检时间" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item label="数据来源" prop="origin">
<el-select
v-model="dataForm.origin"
filterable
:disabled="isdetail"
style="width: 100%"
placeholder="请选择数据来源">
<el-option key="1" label="手动" :value="1" />
<el-option key="2" label="自动" :value="2" />
</el-select>
</el-form-item>
</el-col>
</el-row> </el-row>
<el-form-item label="巡检内容"> <el-form-item label="巡检内容">
<base-table <base-table
@ -102,12 +115,9 @@
</el-form> </el-form>
<div class="drawer-body__footer"> <div v-if="!isdetail" class="drawer-body__footer">
<el-button type="primary" @click="goback()">{{ isdetail ? '关闭' : '取消' }}</el-button> <el-button type="primary" @click="goback()">取消</el-button>
<!-- <el-button v-if="isdetail" type="primary" @click="goEdit()"> <el-button type="primary" @click="dataFormSubmit()">确定</el-button>
编辑
</el-button> -->
<el-button v-if="!isdetail" type="primary" @click="dataFormSubmit()">确定</el-button>
</div> </div>
</el-drawer> </el-drawer>
</template> </template>
@ -174,6 +184,7 @@ export default {
actualTime: undefined, actualTime: undefined,
responsible: undefined, responsible: undefined,
description: undefined, description: undefined,
origin: undefined,
files: [] files: []
}, },
list: [], list: [],
@ -227,15 +238,6 @@ export default {
return this.$refs.dataForm.resetFields(args); return this.$refs.dataForm.resetFields(args);
}, },
initData() { initData() {
this.dataForm = {
id: undefined,
configId: undefined,
equipmentId: undefined,
actualTime: undefined,
responsible: undefined,
description: undefined,
files: []
}
this.list = [] this.list = []
this.file = '' this.file = ''
this.fileName = '' this.fileName = ''

View File

@ -1,148 +0,0 @@
<template>
<el-dialog
:visible.sync="visible"
:width="'35%'"
:append-to-body="true"
:close-on-click-modal="false"
class="dialog">
<template #title>
<slot name="title">
<div class="titleStyle">
{{ !dataForm.id ? '新增' : '编辑' }}
</div>
</slot>
</template>
<el-form
ref="dataForm"
:model="dataForm"
:rules="dataRule"
label-width="100px"
@keyup.enter.native="dataFormSubmit()">
<el-form-item label="备品备件" prop="sparePartId">
<el-select
v-model="dataForm.sparePartId"
filterable
style="width: 100%"
placeholder="请选择备品备件">
<el-option
v-for="dict in partList"
:key="dict.id"
:label="dict.name"
:value="dict.id" />
</el-select>
</el-form-item>
</el-form>
<el-row style="text-align: right">
<el-button @click="visible = false">取消</el-button>
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
</el-row>
</el-dialog>
</template>
<script>
import {
createConfigDet,
getSparePartList
} from '@/api/equipment/base/spare-parts/config';
export default {
props: {
configId: {
type: String,
default: '',
},
},
data() {
return {
visible: false,
dataForm: {
id: undefined,
sparePartId: ''
},
partList: [],
dataRule: {
sparePartId: [{ required: true, message: '备品备件不能为空', trigger: 'change' }]
},
};
},
mounted() {
this.getDict()
},
methods: {
async getDict() {
const res = await getSparePartList()
this.partList = res.data
},
init(id) {
this.dataForm.id = id || '';
this.visible = true;
// this.$nextTick(() => {
// this.$refs['dataForm'].resetFields();
// if (this.dataForm.id) {
// getCoreProductAttr({
// id: this.dataForm.id
// }).then((res) => {
// const { name, value } = res.data;
// this.dataForm.name = name;
// this.dataForm.value = value;
// });
// }
// });
},
//
dataFormSubmit() {
this.$refs['dataForm'].validate((valid) => {
if (valid) {
//
// if (this.dataForm.id) {
// updateCoreProductAttr({
// ...this.dataForm,
// productId: this.productId,
// }).then((response) => {
// this.$modal.msgSuccess('');
// this.visible = false;
// this.$emit('refreshDataList');
// });
// return;
// }
//
createConfigDet({
...this.dataForm,
configId: this.configId,
}).then((response) => {
this.$modal.msgSuccess('新增成功');
this.visible = false;
this.$emit('refreshDataList');
});
}
});
},
},
};
</script>
<style scoped>
.dialog >>> .el-dialog__body {
padding: 30px 24px;
}
.dialog >>> .el-dialog__header {
font-size: 16px;
color: rgba(0, 0, 0, 0.85);
font-weight: 500;
padding: 13px 24px;
border-bottom: 1px solid #e9e9e9;
}
.dialog >>> .el-dialog__header .titleStyle::before {
content: '';
display: inline-block;
width: 4px;
height: 16px;
background-color: #0b58ff;
border-radius: 1px;
margin-right: 8px;
position: relative;
top: 2px;
}
</style>

View File

@ -93,7 +93,7 @@ export default {
tableProps: [ tableProps: [
{ prop: 'configName', label: '配置名称' }, { prop: 'configName', label: '配置名称' },
{ prop: 'equipmentName', label: '设备名称' }, { prop: 'equipmentName', label: '设备名称' },
// { prop: 'lineName', label: '' }, { prop: 'origin', label: '数据来源', filter: (val) => ['', '手动', '自动'][val] },
// { prop: 'sectionName', label: '' }, // { prop: 'sectionName', label: '' },
{ prop: 'actualTime', label: '实际巡检时间', filter: parseTime }, { prop: 'actualTime', label: '实际巡检时间', filter: parseTime },
// { prop: 'maintenanceDetail', label: '' }, // { prop: 'maintenanceDetail', label: '' },

View File

@ -15,7 +15,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="班组组长" prop="leaderId"> <el-form-item label="班组组长" prop="leaderId">
<el-select v-model="form.leaderId" placeholder="请选择" style="width: 100%;" @change="selectLeader"> <el-select v-model="form.leaderId" placeholder="请选择" style="width: 100%;" filterable @change="selectLeader">
<el-option <el-option
v-for="item in workerList" v-for="item in workerList"
:key="item.id" :key="item.id"

View File

@ -80,13 +80,6 @@
<!-- 表单 --> <!-- 表单 -->
<div class="form-cont"> <div class="form-cont">
<el-tabs
class="form"
v-model="loginForm.loginType"
style="float: none">
<el-tab-pane label="账号密码登录" name="uname"></el-tab-pane>
<el-tab-pane label="短信验证码登录" name="sms"></el-tab-pane>
</el-tabs>
<div style=""> <div style="">
<el-form <el-form
ref="loginForm" ref="loginForm"
@ -106,7 +99,7 @@
</el-input> </el-input>
</el-form-item> </el-form-item>
<!-- 账号密码登录 --> <!-- 账号密码登录 -->
<div v-if="loginForm.loginType === 'uname'"> <div>
<el-form-item prop="username"> <el-form-item prop="username">
<el-input <el-input
v-model="loginForm.username" v-model="loginForm.username"
@ -139,56 +132,6 @@
</el-checkbox> </el-checkbox>
</div> </div>
<!-- 短信验证码登录 -->
<div v-if="loginForm.loginType === 'sms'">
<el-form-item prop="mobile">
<el-input
v-model="loginForm.mobile"
type="text"
auto-complete="off"
placeholder="请输入手机号">
<!-- <svg-icon
slot="prefix"
icon-class="phone"
class="el-input__icon input-icon" /> -->
</el-input>
</el-form-item>
<el-form-item prop="mobileCode">
<el-input
v-model="loginForm.mobileCode"
type="text"
auto-complete="off"
placeholder="短信验证码"
class="sms-login-mobile-code-prefix"
@keyup.enter.native="handleLogin">
<!-- <template>
<svg-icon
slot="prefix"
icon-class="password"
class="el-input__icon input-icon" />
</template> -->
<template slot="suffix">
<span
v-if="mobileCodeTimer <= 0"
class="getMobileCode"
@click="getSmsCode"
style="
cursor: pointer;
color: #0b58ff;
font-size: calc(12 * 0.12vh);
line-height: calc(54 * 0.12vh);
padding-right: calc(10 * 0.12vh);
">
获取验证码
</span>
<span v-if="mobileCodeTimer > 0" class="getMobileCode">
{{ mobileCodeTimer }}秒后可重新获取
</span>
</template>
</el-input>
</el-form-item>
</div>
<!-- 下方的登录按钮 --> <!-- 下方的登录按钮 -->
<el-form-item <el-form-item
id="button-form-item" id="button-form-item"
@ -227,13 +170,6 @@
</div> </div>
</div> </div>
</div> </div>
<!-- 图形验证码 -->
<Verify
ref="verify"
:captcha-type="'blockPuzzle'"
:img-size="{ width: '400px', height: '200px' }"
@success="handleLogin" />
</div> </div>
</template> </template>
@ -241,7 +177,7 @@
import { sendSmsCode, socialAuthRedirect } from '@/api/login'; import { sendSmsCode, socialAuthRedirect } from '@/api/login';
import { getTenantIdByName } from '@/api/system/tenant'; import { getTenantIdByName } from '@/api/system/tenant';
import { SystemUserSocialTypeEnum } from '@/utils/constants'; import { SystemUserSocialTypeEnum } from '@/utils/constants';
import { getCaptchaEnable, getTenantEnable } from '@/utils/ruoyi'; import { getTenantEnable } from '@/utils/ruoyi';
import { import {
getPassword, getPassword,
getRememberMe, getRememberMe,
@ -269,7 +205,7 @@ export default {
data() { data() {
return { return {
codeUrl: '', codeUrl: '',
captchaEnable: true, captchaEnable: false,
tenantEnable: true, tenantEnable: true,
mobileCodeTimer: 0, mobileCodeTimer: 0,
loginForm: { loginForm: {
@ -347,8 +283,6 @@ export default {
} }
}); });
} }
//
this.captchaEnable = getCaptchaEnable();
// //
this.redirect = this.$route.query.redirect this.redirect = this.$route.query.redirect
? decodeURIComponent(this.$route.query.redirect) ? decodeURIComponent(this.$route.query.redirect)
@ -360,15 +294,7 @@ export default {
}, },
methods: { methods: {
getCode() { getCode() {
// this.handleLogin({});
if (!this.captchaEnable) {
this.handleLogin({});
return;
}
//
//
this.$refs.verify.show();
}, },
getCookie() { getCookie() {
const username = getUsername(); const username = getUsername();
@ -522,4 +448,7 @@ export default {
top: 22%; top: 22%;
} }
} }
.form-cont {
padding-top: 40px;
}
</style> </style>

View File

@ -6,7 +6,7 @@
<el-input v-model="form.name"></el-input> <el-input v-model="form.name"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="工单名称" prop="workOrderId" v-if='isBind'> <el-form-item label="工单名称" prop="workOrderId" v-if='isBind'>
<el-select v-model="form.workOrderId" placeholder="请选择" style="width: 100%;" @change="getWorkOrderMsg"> <el-select v-model="form.workOrderId" placeholder="请选择" style="width: 100%;" filterable @change="getWorkOrderMsg">
<el-option <el-option
v-for="item in workOrderList" v-for="item in workOrderList"
:key="item.id" :key="item.id"

View File

@ -18,7 +18,7 @@
</el-col> </el-col>
<el-col :span='6'> <el-col :span='6'>
<el-form-item label="产品名称" prop="planProductId"> <el-form-item label="产品名称" prop="planProductId">
<el-select v-model="form.planProductId" placeholder="请选择" style="width: 100%;"> <el-select v-model="form.planProductId" placeholder="请选择" style="width: 100%;" filterable>
<el-option <el-option
v-for="item in productList" v-for="item in productList"
:key="item.id" :key="item.id"
@ -39,7 +39,7 @@
</el-col> </el-col>
<el-col :span='6'> <el-col :span='6'>
<el-form-item label="客户" prop="customerId"> <el-form-item label="客户" prop="customerId">
<el-select v-model="form.customerId" placeholder="请选择" style="width: 100%;" clearable> <el-select v-model="form.customerId" placeholder="请选择" style="width: 100%;" clearable filterable>
<el-option <el-option
v-for="item in customerList" v-for="item in customerList"
:key="item.id" :key="item.id"
@ -82,7 +82,7 @@
</el-col> </el-col>
<el-col :span='6'> <el-col :span='6'>
<el-form-item label="关联工艺" prop="processFlowId"> <el-form-item label="关联工艺" prop="processFlowId">
<el-select v-model="form.processFlowId" placeholder="请选择" style="width: 100%;" clearable @change="processFlowIdChange"> <el-select v-model="form.processFlowId" placeholder="请选择" style="width: 100%;" clearable filterable @change="processFlowIdChange">
<el-option <el-option
v-for="item in processFlowList" v-for="item in processFlowList"
:key="item.id" :key="item.id"

View File

@ -154,7 +154,7 @@ export default {
}, },
tableProps, tableProps,
list: [], list: [],
tableH: this.tableHeight(315), tableH: this.tableHeight(305),
total: 0, total: 0,
tableBtn: [ tableBtn: [
this.$auth.hasPermi('base:order-completion-monitoring:orderDet') this.$auth.hasPermi('base:order-completion-monitoring:orderDet')
@ -215,7 +215,7 @@ export default {
components: { MonitoringRingCharts }, components: { MonitoringRingCharts },
mounted() { mounted() {
window.addEventListener('resize', () => { window.addEventListener('resize', () => {
this.tableH = this.tableHeight(315) this.tableH = this.tableHeight(305)
}) })
let start = moment().subtract(30, 'days').format('yyyy-MM-DD') let start = moment().subtract(30, 'days').format('yyyy-MM-DD')
let end = moment().format('yyyy-MM-DD') let end = moment().format('yyyy-MM-DD')
@ -347,6 +347,9 @@ export default {
.el-tabs__item { .el-tabs__item {
color: rgba(0, 0, 0, 0.45); color: rgba(0, 0, 0, 0.45);
} }
.searchBarBox {
margin-bottom: 0;
}
.boxTitle { .boxTitle {
display: inline-block; display: inline-block;
font-size: 16px; font-size: 16px;

View File

@ -256,10 +256,11 @@ export default {
}, },
mounted() { mounted() {
if (this.$route.query.woIdString) { if (this.$route.query.woIdString) {
console.log(this.$route.query.woIdString); console.log(this.$route.query.woIdString)
this.queryParams.workOrderIdList = [this.$route.query.woIdString] this.queryParams.workOrderIdList = this.$route.query.woIdString.split(',')
// this.queryParams.workOrderIdList = [this.$route.query.woIdString]
// let arr =[] // let arr =[]
this.searchBarFormConfig[0].defaultSelect = [this.$route.query.woIdString] this.searchBarFormConfig[0].defaultSelect = this.$route.query.woIdString.split(',')
console.log(this.searchBarFormConfig[0].defaultSelect); console.log(this.searchBarFormConfig[0].defaultSelect);
} }
// if (this.$route.params.startTime && this.$route.params.endTime) { // if (this.$route.params.startTime && this.$route.params.endTime) {