Commit 27ce9f14 authored by chenzj's avatar chenzj

Merge branch 'dev' of http://git.local.topsunit.com/mes/mes-ui into dev

parents e6e96c17 63f6ed3f
......@@ -59,6 +59,14 @@ export function dofinish(workorderId){
})
}
export function doCheckToolNum(workorderId){
return request({
url: '/mes/pro/workorder/checkToolNum',
data: {'workorderIds' : workorderId},
method: 'post'
})
}
//单个完成工单,将草稿->已确认
export function confirmedWorkorder(workorderId){
return request({
......
......@@ -31,7 +31,7 @@
<svg-icon slot="prefix" icon-class="password" class="el-input__icon input-icon"/>
</el-input>
</el-form-item>
<el-form-item prop="code" v-if="captchaOnOff">
<!-- <el-form-item prop="code" v-if="captchaOnOff">
<el-input
v-model="loginForm.code"
auto-complete="off"
......@@ -44,7 +44,7 @@
<div class="login-code">
<img :src="codeUrl" @click="getCode" class="login-code-img"/>
</div>
</el-form-item>
</el-form-item>-->
<el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">记住密码</el-checkbox>
<el-form-item style="width:100%;">
<el-button
......@@ -86,8 +86,8 @@ export default {
return {
codeUrl: "",
loginForm: {
username: "admin",
password: "000000",
username: "",
password: "",
rememberMe: false,
code: "",
uuid: ""
......@@ -103,7 +103,7 @@ export default {
},
loading: false,
// 验证码开关
captchaOnOff: true,
captchaOnOff: false,
// 注册开关
register: false,
redirect: undefined
......@@ -118,7 +118,7 @@ export default {
}
},
created() {
this.getCode();
//this.getCode();
this.getCookie();
},
mounted() {
......
......@@ -16,15 +16,6 @@
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="计量单位" prop="unitOfMeasure">
<el-input
v-model="form.unitOfMeasure"
placeholder="请输入计量单位"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="品牌" prop="brandId">
<el-input
......@@ -73,7 +64,7 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="8">
<el-form-item label="有效开始日期" prop="expirationDateStart">
<el-date-picker
clearable
......@@ -85,7 +76,7 @@
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="8">
<el-form-item label="有效结束日期" prop="expirationDateEnd">
<el-date-picker
clearable
......
......@@ -53,6 +53,15 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品牌名称" prop="brandName">
<el-input
v-model="queryParams.brandName"
placeholder="请输入物料名称"
clearable
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
......@@ -111,14 +120,13 @@
>转正式产品</el-button
>
</el-col>
<!-- <el-col :span="1.5">
<el-col :span="1.5">
<el-button
type="info"
plain
icon="el-icon-upload2"
size="mini"
@click="handleImport"
v-hasPermi="['mes:md:mditem:import']"
>导入</el-button>
</el-col>
<el-col :span="1.5">
......@@ -128,9 +136,8 @@
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['mes:md:mditem:export']"
>导出</el-button>
</el-col>-->
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
......@@ -179,6 +186,15 @@
v-if="columns[1].visible"
:show-overflow-tooltip="true"
/>
<el-table-column
label="品牌名称"
min-width="120"
align="left"
key="brandName"
prop="brandName"
v-if="columns[1].visible"
:show-overflow-tooltip="true"
/>
<el-table-column
label="规格型号"
align="left"
......@@ -296,32 +312,13 @@
<el-dialog :title="title" :visible.sync="open" width="960px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="8">
<el-col :span="12">
<el-form-item label="物料编码" prop="itemCode">
<el-input
v-model="form.itemCode"
readonly="readonly"
maxlength="64"
v-if="optType == 'view'"
/>
<el-input
v-model="form.itemCode"
placeholder="物料编码"
maxlength="64"
v-else
/>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label-width="80">
<el-switch
v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)"
v-if="optType != 'view'"
>
</el-switch>
</el-form-item>
</el-col>
<el-col :span="12">
......@@ -738,7 +735,7 @@ export default {
// 部门名称
itemTypeName: undefined,
//自动生成物料编码标识
autoGenFlag: false,
autoGenFlag: true,
// 日期范围
dateRange: [],
//单位列表
......@@ -872,7 +869,7 @@ export default {
optType: undefined,
remark: undefined,
};
this.autoGenFlag = false;
this.autoGenFlag = true;
this.resetForm("form");
},
/** 搜索按钮操作 */
......@@ -907,6 +904,7 @@ export default {
handleAdd() {
this.reset();
this.getTreeselect();
this.handleAutoGenChange(true)
if (this.queryParams.itemTypeId != 0) {
this.form.itemTypeId = this.queryParams.itemTypeId;
}
......@@ -1006,7 +1004,7 @@ export default {
{
...this.queryParams,
},
`user_${new Date().getTime()}.xlsx`
`md_item_${new Date().getTime()}.xlsx`
);
},
/** 导入按钮操作 */
......@@ -1046,7 +1044,6 @@ export default {
},
//自动生成物料编码
handleAutoGenChange(autoGenFlag) {
debugger;
if (autoGenFlag) {
genCode("ITEM_CODE").then((response) => {
this.form.itemCode = response;
......
......@@ -66,6 +66,15 @@
@click="handleDelete"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
plain
icon="el-icon-upload2"
size="mini"
@click="handleImport"
>导入</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
......@@ -80,8 +89,16 @@
<el-table v-loading="loading" :data="groupList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="尺码组id" align="center" prop="sizeGroupId" />
<el-table-column label="尺码组编码" align="center" prop="sizeGroupCode" />
<el-table-column label="尺码组编码" align="center" prop="sizeGroupCode" >
<template slot-scope="scope">
<el-button
size="mini"
type="text"
@click="handleView(scope.row)"
>{{ scope.row.sizeGroupCode }}</el-button
>
</template>
</el-table-column>
<el-table-column label="尺码组名称" align="center" prop="sizeGroupName" />
<el-table-column label="尺码组类型" align="center" prop="sizeType" >
<template slot-scope="scope">
......@@ -169,12 +186,55 @@
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
<!-- 尺码组导入对话框 -->
<el-dialog
:title="upload.title"
:visible.sync="upload.open"
width="400px"
append-to-body
>
<el-upload
ref="upload"
:limit="1"
accept=".xlsx, .xls"
:headers="upload.headers"
:action="upload.url + '?updateSupport=' + upload.updateSupport"
:disabled="upload.isUploading"
:on-progress="handleFileUploadProgress"
:on-success="handleFileSuccess"
:auto-upload="false"
drag
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
<div class="el-upload__tip text-center" slot="tip">
<div class="el-upload__tip" slot="tip">
<el-checkbox v-model="upload.updateSupport" />
是否更新已经存在的用户数据
</div>
<span>仅允许导入xls、xlsx格式文件。</span>
<el-link
type="primary"
:underline="false"
style="font-size: 12px; vertical-align: baseline"
@click="importTemplate"
>下载模板</el-link
>
</div>
</el-upload>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFileForm">确 定</el-button>
<el-button @click="upload.open = false">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listGroup, getGroup, delGroup, addGroup, updateGroup } from "@/api/mes/md/sizeGroup";
import SizeGroupItem from './item/index.vue'
import { getToken } from "@/utils/auth";
export default {
name: "Group",
dicts:['size_type','sys_yes_no'],
......@@ -208,6 +268,21 @@ export default {
sizeType: null,
enableFlag: null,
},
// 用户导入参数
upload: {
// 是否显示弹出层(用户导入)
open: false,
// 弹出层标题(用户导入)
title: "",
// 是否禁用上传
isUploading: false,
// 是否更新已经存在的用户数据
updateSupport: 0,
// 设置上传的请求头部
headers: { Authorization: "Bearer " + getToken() },
// 上传的地址
url: process.env.VUE_APP_BASE_API + "/md/group/importData",
},
// 表单参数
form: {},
// 表单校验
......@@ -261,6 +336,17 @@ export default {
this.open = true;
this.title = "添加尺码组";
},
// 查询明细按钮操作
handleView(row) {
this.reset();
const sizeGroupId = row.sizeGroupId || this.ids
getGroup(sizeGroupId).then((response) => {
this.form = response.data;
this.open = true;
this.title = "查看尺码组";
this.optType = "view";
});
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
......@@ -301,6 +387,41 @@ export default {
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导入按钮操作 */
handleImport() {
this.upload.title = "尺码组导入";
this.upload.open = true;
},
/** 下载模板操作 */
importTemplate() {
this.download(
"md/group/importTemplate",
{},
`group_${new Date().getTime()}.xlsx`
);
},
// 文件上传中处理
handleFileUploadProgress(event, file, fileList) {
this.upload.isUploading = true;
},
// 文件上传成功处理
handleFileSuccess(response, file, fileList) {
this.upload.open = false;
this.upload.isUploading = false;
this.$refs.upload.clearFiles();
this.$alert(
"<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
response.msg +
"</div>",
"导入结果",
{ dangerouslyUseHTMLString: true }
);
this.getList();
},
// 提交上传文件
submitFileForm() {
this.$refs.upload.submit();
},
/** 导出按钮操作 */
handleExport() {
this.download('md/group/export', {
......
......@@ -113,16 +113,7 @@
<el-row>
<el-col :span="12">
<el-form-item label="车间编码" prop="workshopCode">
<el-input v-model="form.workshopCode" placeholder="请输入车间编码" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label-width="80">
<el-switch v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view'">
</el-switch>
<el-input v-model="form.workshopCode" placeholder="请输入车间编码" readonly="readonly"/>
</el-form-item>
</el-col>
</el-row>
......@@ -293,6 +284,7 @@ export default {
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.handleAutoGenChange(true);
this.open = true;
this.title = "添加车间";
this.optType = "add";
......
......@@ -208,7 +208,7 @@
<el-dialog :title="title" :visible.sync="open" width="960px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="8">
<el-col :span="12">
<el-form-item label="工作站编号" prop="workstationCode">
<el-input
v-model="form.workstationCode"
......@@ -216,18 +216,6 @@
/>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label-width="80">
<el-switch
v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)"
v-if="optType != 'view'"
>
</el-switch>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="工作站名称" prop="workstationName">
<el-input
......@@ -635,6 +623,7 @@ export default {
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.handleAutoGenChange(true);
this.getWorkshops();
this.open = true;
this.title = "添加工作站";
......
......@@ -82,7 +82,14 @@
<el-table v-loading="loading" :data="workunitList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column label="工作单元ID" align="center" prop="workunitId" />-->
<el-table-column label="工作单元编码" align="center" prop="workunitCode" />
<el-table-column label="工作单元编码" align="center" prop="workunitCode">
<template slot-scope="scope">
<el-button
type="text"
@click="handleView(scope.row)"
>{{scope.row.workunitCode}}</el-button>
</template>
</el-table-column>
<el-table-column label="工作站" align="center" prop="workstationName" />
<el-table-column label="工作单元名称" align="center" prop="workunitName" />
<el-table-column label="是否启用" align="center" prop="enableFlag" >
......@@ -124,7 +131,7 @@
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-row>
<el-col :span="20">
<el-form-item label="工作站" label-width="100px" prop="workstationName">
<el-form-item label="工作站" label-width="120px" prop="workstationName">
<el-input v-model="form.workstationName" placeholder="请输入工作站" >
<el-button slot="append" icon="el-icon-search" @click="handleWorkstationSelect"></el-button>
</el-input>
......@@ -133,31 +140,22 @@
</el-col>
</el-row>
<el-row>
<el-col :span="16">
<el-form-item label="工作单元编码" label-width="100px" prop="workunitCode">
<el-input v-model="form.workunitCode" placeholder="请输入工作单元编码" />
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label-width="80">
<el-switch v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view'">
</el-switch>
<el-col :span="20">
<el-form-item label="工作单元编码" label-width="120px" prop="workunitCode">
<el-input v-model="form.workunitCode" placeholder="请输入工作单元编码" readonly="readonly"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="20">
<el-form-item label="工作单元名称" label-width="100px" prop="workunitName">
<el-form-item label="工作单元名称" label-width="120px" prop="workunitName">
<el-input v-model="form.workunitName" placeholder="请输入工作单元名称" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="20">
<el-form-item label="是否启用">
<el-form-item label="是否启用" label-width="120px">
<el-radio-group v-model="form.enableFlag" disabled v-if="optType=='view'">
<el-radio
v-for="dict in dict.type.sys_yes_no"
......@@ -177,7 +175,7 @@
</el-row>
<el-row>
<el-col :span="20">
<el-form-item label="备注" label-width="100px" prop="remark">
<el-form-item label="备注" label-width="120px" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
</el-col>
......@@ -240,10 +238,19 @@ export default {
workunitCode: '',
workstation: '',
workunitName: '',
enableFlag: '',
enableFlag: 'Y',
},
// 表单校验
rules: {
workstationName: [
{ required: true, message: "工作站不能为空", trigger: "blur" }
],
workunitName: [
{ required: true, message: "工作单元名称不能为空", trigger: "blur" }
],
workunitCode: [
{ required: true, message: "工作单元编码不能为空", trigger: "blur" }
],
}
};
},
......@@ -273,7 +280,7 @@ export default {
workunitCode: '',
workstation: '',
workunitName: '',
enableFlag: '',
enableFlag: 'Y',
}
this.autoGenFlag = false;
this.resetForm("form");
......@@ -297,6 +304,7 @@ export default {
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.handleAutoGenChange(true);
this.open = true;
this.title = "添加工作单元";
},
......
......@@ -17,16 +17,17 @@
/>
</el-form-item> -->
<el-form-item label="状态" prop="status">
<el-select
v-model="queryParams.status"
<el-select value="['','']"
v-model="queryParams.statusArr"
clearable
placeholder="请选择状态"
multiple="true"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
v-for="dict in dict.type.mes_order_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
>
</el-option>
</el-select>
......@@ -171,6 +172,17 @@
>生成任务单</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-plus"
size="mini"
@click="handleToolNumCheck"
v-hasPermi="['mes:pro:workorder:dofinish']"
>工装量具齐套检查</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
......@@ -312,6 +324,12 @@
width="100px"
prop="batchCode"
/>
<el-table-column
label="编排单号"
align="center"
width="100px"
prop="arrangeCode"
/>
<el-table-column label="客户编码" align="center" prop="clientCode" />
<el-table-column
label="客户名称"
......@@ -685,6 +703,7 @@ import {
addWorkorder,
updateWorkorder,
dofinish,
doCheckToolNum
} from "@/api/mes/pro/workorder";
import { addProtaskList } from "@/api/mes/pro/protask";
import Workorderbom from "./bom/bom.vue";
......@@ -699,7 +718,7 @@ import { getToken } from "@/utils/auth";
export default {
name: "Workorder",
dicts: ["mes_order_status", "mes_workorder_sourcetype", "mes_workorder_type"],
dicts: ["mes_order_status", "mes_workorder_sourcetype", "mes_workorder_type", "mes_order_status"],
components: {
Treeselect,
ItemSelect,
......@@ -770,19 +789,8 @@ export default {
requestDate: null,
parentId: null,
ancestors: null,
status: "PREPARE",
statusArr: ["PREPARE","CONFIRMED"],
},
// 表单状态
options: [
{ value: "PREPARE", label: "待确认" },
{ value: "CONFIRMED", label: "已确认" },
{ value: "APPROVING", label: "审批中" },
{ value: "APPROVED", label: "已审批" },
{ value: "FINISHED", label: "已完成" },
{ value: "TASKGENERATED", label: "已生成任务单" },
{ value: "ISSUEGENERATED", label: "已生成领料单" },
{ value: "PRODUCIONG", label: "生产中" },
],
// 表单参数
form: {},
// 表单校验
......@@ -1077,6 +1085,19 @@ export default {
})
.catch(() => {});
},
handleToolNumCheck(){
this.$modal
.confirm("是否检查刀具模版齐套?")
.then(() => {
const ids = this.selectedRows.map((v) => v.workorderId);
return doCheckToolNum(ids);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("已齐套");
})
.catch(() => {});
},
handleSelectProduct() {
this.$refs.itemSelect.showFlag = true;
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment