Commit f8011745 authored by 赵汉亭's avatar 赵汉亭

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

parents 59294cf7 33b9b37b
import request from '@/utils/request'
// 查询工厂列表
export function listFactory(query) {
return request({
url: '/md/mdfactory/list',
method: 'get',
params: query
})
}
// 查询工厂详细
export function getFactory(factoryId) {
return request({
url: '/md/mdfactory/' + factoryId,
method: 'get'
})
}
// 新增工厂
export function addFactory(data) {
return request({
url: '/md/mdfactory',
method: 'post',
data: data
})
}
// 修改工厂
export function updateFactory(data) {
return request({
url: '/md/mdfactory',
method: 'put',
data: data
})
}
// 删除工厂
export function delFactory(factoryId) {
return request({
url: '/md/mdfactory/' + factoryId,
method: 'delete'
})
}
import request from '@/utils/request'
// 查询【请填写功能名称】列表
export function listQuantity(query) {
return request({
url: '/md/quantity/list',
method: 'get',
params: query
})
}
// 查询【请填写功能名称】详细
export function getQuantity(brandOrderQuantityId) {
return request({
url: '/md/quantity/' + brandOrderQuantityId,
method: 'get'
})
}
// 新增【请填写功能名称】
export function addQuantity(data) {
return request({
url: '/md/quantity',
method: 'post',
data: data
})
}
// 修改【请填写功能名称】
export function updateQuantity(data) {
return request({
url: '/md/quantity',
method: 'put',
data: data
})
}
// 删除【请填写功能名称】
export function delQuantity(brandOrderQuantityId) {
return request({
url: '/md/quantity/' + brandOrderQuantityId,
method: 'delete'
})
}
//商品id下拉框
export function listAllbrand(){
return request({
url: '/mes/md/quantity/listBrand',
method: 'get'
})
}
// 查询品牌列表
export function listBrand(query) {
  return request({
    url: '/md/quantity/listBrand',
    method: 'get',
    params: query
  })
}
\ No newline at end of file
import request from '@/utils/request'
// 查询销售单位转换列表
export function listUnit(query) {
return request({
url: '/md/unit/list',
method: 'get',
params: query
})
}
// 查询销售单位转换详细
export function getUnit(itemId) {
return request({
url: '/md/unit/' + itemId,
method: 'get'
})
}
// 新增销售单位转换
export function addUnit(data) {
return request({
url: '/md/unit',
method: 'post',
data: data
})
}
// 修改销售单位转换
export function updateUnit(data) {
return request({
url: '/md/unit',
method: 'put',
data: data
})
}
// 删除销售单位转换
export function delUnit(itemId) {
return request({
url: '/md/unit/' + itemId,
method: 'delete'
})
}
import request from '@/utils/request'
// 查询尺码组列表
export function listGroup(query) {
return request({
url: '/md/group/list',
method: 'get',
params: query
})
}
// 查询尺码组详细
export function getGroup(sizeGroupId) {
return request({
url: '/md/group/' + sizeGroupId,
method: 'get'
})
}
// 新增尺码组
export function addGroup(data) {
return request({
url: '/md/group',
method: 'post',
data: data
})
}
// 修改尺码组
export function updateGroup(data) {
return request({
url: '/md/group',
method: 'put',
data: data
})
}
// 删除尺码组
export function delGroup(sizeGroupId) {
return request({
url: '/md/group/' + sizeGroupId,
method: 'delete'
})
}
import request from '@/utils/request'
// 查询尺码组明细列表
export function listItem(query) {
return request({
url: '/md/item/list',
method: 'get',
params: query
})
}
// 查询尺码组明细详细
export function getItem(sizeGroupItemId) {
return request({
url: '/md/item/' + sizeGroupItemId,
method: 'get'
})
}
// 新增尺码组明细
export function addItem(data) {
return request({
url: '/md/item',
method: 'post',
data: data
})
}
// 修改尺码组明细
export function updateItem(data) {
return request({
url: '/md/item',
method: 'put',
data: data
})
}
// 删除尺码组明细
export function delItem(sizeGroupItemId) {
return request({
url: '/md/item/' + sizeGroupItemId,
method: 'delete'
})
}
import request from '@/utils/request'
// 查询【请填写功能名称】列表
export function listVisit(query) {
return request({
url: '/md/visit/list',
method: 'get',
params: query
})
}
// 查询【请填写功能名称】详细
export function getVisit(brandVisitId) {
return request({
url: '/md/visit/' + brandVisitId,
method: 'get'
})
}
// 新增【请填写功能名称】
export function addVisit(data) {
return request({
url: '/md/visit',
method: 'post',
data: data
})
}
// 修改【请填写功能名称】
export function updateVisit(data) {
return request({
url: '/md/visit',
method: 'put',
data: data
})
}
// 删除【请填写功能名称】
export function delVisit(brandVisitId) {
return request({
url: '/md/visit/' + brandVisitId,
method: 'delete'
})
}
// 查询品牌列表
export function listBrand(query) {
  return request({
    url: '/md/visit/listBrand',
    method: 'get',
params: query
  })
}
\ No newline at end of file
import request from '@/utils/request'
// 查询工作单元列表
export function listWorkunit(query) {
return request({
url: '/md/workunit/list',
method: 'get',
params: query
})
}
// 查询工作单元详细
export function getWorkunit(workunitId) {
return request({
url: '/md/workunit/' + workunitId,
method: 'get'
})
}
// 新增工作单元
export function addWorkunit(data) {
return request({
url: '/md/workunit',
method: 'post',
data: data
})
}
// 修改工作单元
export function updateWorkunit(data) {
return request({
url: '/md/workunit',
method: 'put',
data: data
})
}
// 删除工作单元
export function delWorkunit(workunitId) {
return request({
url: '/md/workunit/' + workunitId,
method: 'delete'
})
}
<template>
<el-dialog
title="工厂选择"
v-if="showFlag"
:visible.sync="showFlag"
:modal="false"
width="80%"
center
>
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="68px"
>
<el-form-item label="工厂编码" prop="factoryCode">
<el-input
v-model="queryParams.factoryCode"
placeholder="请输入工厂编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工厂名称" prop="factoryName">
<el-input
v-model="queryParams.factoryName"
placeholder="请输入工厂名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否启用" prop="enableFlag">
<el-select
v-model="queryParams.enableFlag"
placeholder="请选择是或否"
clearable
>
<el-option
v-for="dict in dict.type.sys_yes_no"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table
v-loading="loading"
:data="brandList"
@current-change="handleCurrent"
@row-dblclick="handleRowDbClick"
>
<el-table-column width="50" align="center">
<template v-slot="scope">
<el-radio
v-model="selectedFactoryId"
:label="scope.row.factoryId"
@change="handleRowChange(scope.row)"
>{{ "" }}</el-radio
>
</template>
</el-table-column>
<el-table-column label="工厂编码" align="center" prop="factoryCode" />
<el-table-column label="工厂名称" align="center" prop="factoryName" />
<el-table-column label="是否启用" align="center" prop="enableFlag" >
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_yes_no" :value="scope.row.enableFlag"/>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="remark" />
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="confirmSelect">确 定</el-button>
<el-button @click="showFlag = false">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { listFactory } from "@/api/mes/md/factory";
export default {
name: "MdFactorySelectSingle",
components: {},
dicts: ['sys_yes_no'],
data() {
return {
showFlag: false,
// 选中数组
selectedFactoryId: undefined,
selectedRows: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 品牌表格数据
brandList: [],
// // 品牌名称
// brandName: undefined,
defaultProps: {
children: "children",
label: "label",
},
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
factoryCode: null,
factoryName: null,
enableFlag: null,
},
};
},
created() {
this.getList();
},
methods: {
/** 查询工厂列表 */
getList() {
this.loading = true;
listFactory(this.queryParams).then((response) => {
this.brandList = response.rows;
this.total = response.total;
this.loading = false;
});
},
/** 搜索按钮操作 */
handleQuery() {
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
handleCurrent(row) {
if (row) {
this.selectedRows = row;
}
},
// 单选选中数据
handleRowChange(row) {
if (row) {
this.selectedRows = row;
}
},
//双击选中
handleRowDbClick(row) {
if (row) {
this.selectedRows = row;
this.$emit("onSelected", this.selectedRows);
this.showFlag = false;
}
},
//确定选中
confirmSelect() {
if (this.selectedFactoryId == null || this.selectedFactoryId == 0) {
this.$notify({
title: "提示",
type: "warning",
message: "请至少选择一条数据!",
});
return;
}
this.$emit("onSelected", this.selectedRows);
this.showFlag = false;
},
},
};
</script>
<template>
<div class="page-header">
<div class="page-title">
<slot />
</div>
<div class="page-buttons">
<el-button size="mini" type="default" @click="pageBack">返回</el-button>
<slot name="buttons" />
</div>
</div>
</template>
<script>
export default {
data() {
return {};
},
methods: {
pageBack() {
this.$router.go(-1);
},
},
};
</script>
<style lang="scss">
.page-header {
background: #fff;
padding: 10px 0 7px;
box-shadow: 0 2px 3px #e3e3e3;
.page-buttons {
padding: 0 20px;
}
.page-title {
margin: 0;
font-size: 18px;
text-align: center;
font-weight: 600;
}
}
</style>
<template>
<div class="page-wrapper">
<el-scrollbar style="padding: 10px 0;" :style="{ height: scrollHeight }">
<slot />
</el-scrollbar>
</div>
</template>
<script>
export default {
data() {
return {};
},
computed: {
scrollHeight() {
return "calc(100vh - 70px - 83px)";
},
},
};
</script>
<style lang="scss" scoped>
.page-wrapper {
}
</style>
<template>
<el-dialog
title="尺码组选择"
v-if="showFlag"
:visible.sync="showFlag"
:modal="false"
width="80%"
center
>
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="90px"
>
<el-form-item label="尺码组编码" prop="sizeGroupCode">
<el-input
v-model="queryParams.sizeGroupCode"
placeholder="请输入尺码组编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="尺码组名称" prop="sizeGroupName">
<el-input
v-model="queryParams.sizeGroupName"
placeholder="请输入尺码组名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="尺码组类型" prop="sizeType">
<el-select
v-model="queryParams.sizeType"
placeholder="请选择尺码组类型"
clearable
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="是否启用" prop="enableFlag">
<el-input
v-model="queryParams.enableFlag"
placeholder="请输入是否启用"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table
v-loading="loading"
:data="brandList"
@current-change="handleCurrent"
@row-dblclick="handleRowDbClick"
>
<el-table-column width="50" align="center">
<template v-slot="scope">
<el-radio
v-model="selectedGroupId"
:label="scope.row.sizeGroupId"
@change="handleRowChange(scope.row)"
>{{ "" }}</el-radio
>
</template>
</el-table-column>
<el-table-column label="尺码组id" align="center" prop="sizeGroupId" />
<el-table-column label="尺码组编码" align="center" prop="sizeGroupCode" />
<el-table-column label="尺码组名称" align="center" prop="sizeGroupName" />
<el-table-column label="尺码组类型" align="center" prop="sizeType" >
<template slot-scope="scope">
<dict-tag :options="dict.type.size_type" :value="scope.row.sizeType"/>
</template>
</el-table-column>
<el-table-column label="是否启用" align="center" prop="enableFlag" />
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="confirmSelect">确 定</el-button>
<el-button @click="showFlag = false">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { listGroup } from "@/api/mes/md/sizeGroup";
export default {
name: "MdSizeGroupSelectSingle",
components: {},
dicts: ['size_type'],
data() {
return {
showFlag: false,
// 选中数组
selectedGroupId: undefined,
selectedRows: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 尺码组表格数据
brandList: [],
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
sizeGroupCode: null,
sizeGroupName: null,
sizeType: null,
enableFlag: null,
},
};
},
created() {
this.getList();
},
methods: {
/** 查询尺码组列表 */
getList() {
this.loading = true;
listGroup(this.queryParams).then((response) => {
this.brandList = response.rows;
this.total = response.total;
this.loading = false;
});
},
/** 搜索按钮操作 */
handleQuery() {
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
handleCurrent(row) {
if (row) {
this.selectedRows = row;
}
},
// 单选选中数据
handleRowChange(row) {
if (row) {
this.selectedRows = row;
}
},
//双击选中
handleRowDbClick(row) {
if (row) {
this.selectedRows = row;
this.$emit("onSelected", this.selectedRows);
this.showFlag = false;
}
},
//确定选中
confirmSelect() {
if (this.selectedGroupId == null || this.selectedGroupId == 0) {
this.$notify({
title: "提示",
type: "warning",
message: "请至少选择一条数据!",
});
return;
}
this.$emit("onSelected", this.selectedRows);
this.showFlag = false;
},
},
};
</script>
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
:modal= false :modal= false
width="80%" width="80%"
center center
append-to-body
> >
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
<el-row> <el-row>
......
...@@ -35,9 +35,12 @@ ...@@ -35,9 +35,12 @@
</el-form> </el-form>
<el-table v-loading="loading" :data="colorList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="colorList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="50" align="center" /> <el-table-column type="selection" width="50" align="center" />
<el-table-column label="颜色编码" width = "120" align="center" key="colorCode" prop="colorCode" v-if="columns[0].visible" > <el-table-column label="颜色编码" width = "200" align="center" key="colorCode" prop="colorCode" v-if="columns[0].visible" >
<template slot-scope="scope">
<el-color-picker :value="scope.row.colorCode"></el-color-picker>
</template>
</el-table-column> </el-table-column>
<el-table-column label="颜色名称" min-width="120" align="left" key="colorName" prop="colorName" v-if="columns[1].visible" :show-overflow-tooltip="true" /> <el-table-column label="颜色名称" align="left" key="colorName" prop="colorName" v-if="columns[1].visible" :show-overflow-tooltip="true" />
</el-table> </el-table>
<pagination <pagination
......
...@@ -19,6 +19,10 @@ import './permission' // permission control ...@@ -19,6 +19,10 @@ import './permission' // permission control
import { getDicts } from "@/api/system/dict/data"; import { getDicts } from "@/api/system/dict/data";
import { getConfigKey } from "@/api/system/config"; import { getConfigKey } from "@/api/system/config";
import { parseTime, resetForm, addDateRange, selectDictLabel, selectDictLabels, handleTree } from "@/utils/ruoyi"; import { parseTime, resetForm, addDateRange, selectDictLabel, selectDictLabels, handleTree } from "@/utils/ruoyi";
import PageTitle from '@/components/Page/PageTitle.vue'
import PageWrapper from '@/components/Page/PageWrapper.vue'
// 分页组件 // 分页组件
import Pagination from "@/components/Pagination"; import Pagination from "@/components/Pagination";
// 自定义表格工具组件 // 自定义表格工具组件
...@@ -54,6 +58,8 @@ Vue.prototype.download = download ...@@ -54,6 +58,8 @@ Vue.prototype.download = download
Vue.prototype.handleTree = handleTree Vue.prototype.handleTree = handleTree
// 全局组件挂载 // 全局组件挂载
Vue.component('PageWrapper', PageWrapper)
Vue.component('PageTitle', PageTitle)
Vue.component('DictTag', DictTag) Vue.component('DictTag', DictTag)
Vue.component('Pagination', Pagination) Vue.component('Pagination', Pagination)
Vue.component('RightToolbar', RightToolbar) Vue.component('RightToolbar', RightToolbar)
......
...@@ -266,12 +266,11 @@ ...@@ -266,12 +266,11 @@
@click="handleBrandSelect" @click="handleBrandSelect"
></el-button> ></el-button>
</el-input> </el-input>
</el-form-item>
<BrandSelect <BrandSelect
ref="brSelect" ref="brSelect"
@onSelected="onBrandSelected" @onSelected="onBrandSelected"
></BrandSelect> ></BrandSelect>
</el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
...@@ -475,6 +474,7 @@ export default { ...@@ -475,6 +474,7 @@ export default {
this.form = { this.form = {
brandContactId: null, brandContactId: null,
brandId: null, brandId: null,
brandName: null,
contactName: null, contactName: null,
contactNameEn: null, contactNameEn: null,
contactPhone: null, contactPhone: null,
...@@ -483,7 +483,7 @@ export default { ...@@ -483,7 +483,7 @@ export default {
position: null, position: null,
mailbox: null, mailbox: null,
remark: null, remark: null,
enableFlag: null, enableFlag: "Y",
createBy: null, createBy: null,
createTime: null, createTime: null,
updateBy: null, updateBy: null,
......
This diff is collapsed.
This diff is collapsed.
...@@ -72,7 +72,11 @@ ...@@ -72,7 +72,11 @@
<el-table v-loading="loading" :data="colorList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="colorList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="颜色主键id" align="center" prop="colorId" /> <el-table-column label="颜色主键id" align="center" prop="colorId" />
<el-table-column label="颜色编码" align="center" prop="colorCode" /> <el-table-column label="颜色编码" align="center" prop="colorCode" >
<template slot-scope="scope">
<el-color-picker :value="scope.row.colorCode"></el-color-picker>
</template>
</el-table-column>
<el-table-column label="颜色名称" align="center" prop="colorName" /> <el-table-column label="颜色名称" align="center" prop="colorName" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
...@@ -106,7 +110,8 @@ ...@@ -106,7 +110,8 @@
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="颜色编码" prop="colorCode"> <el-form-item label="颜色编码" prop="colorCode">
<el-input v-model="form.colorCode" placeholder="请输入颜色编码" /> <!-- <el-input v-model="form.colorCode" placeholder="请输入颜色编码" />-->
<el-color-picker v-model="form.colorCode"></el-color-picker>
</el-form-item> </el-form-item>
<el-form-item label="颜色名称" prop="colorName"> <el-form-item label="颜色名称" prop="colorName">
<el-input v-model="form.colorName" placeholder="请输入颜色名称" /> <el-input v-model="form.colorName" placeholder="请输入颜色名称" />
......
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="工厂编码" prop="factoryCode">
<el-input
v-model="queryParams.factoryCode"
placeholder="请输入工厂编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工厂名称" prop="factoryName">
<el-input
v-model="queryParams.factoryName"
placeholder="请输入工厂名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否启用" prop="enableFlag">
<el-select v-model="queryParams.enableFlag" placeholder="请选择是或否" clearable>
<el-option
v-for="dict in dict.type.sys_yes_no"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['md:factory:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['md:factory:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['md:factory:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['md:factory:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="factoryList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column label="工厂id" align="center" prop="factoryId" />-->
<el-table-column label="工厂编码" align="center" prop="factoryCode" />
<el-table-column label="工厂名称" align="center" prop="factoryName" />
<el-table-column label="是否启用" align="center" prop="enableFlag" >
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_yes_no" :value="scope.row.enableFlag"/>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['md:factory:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['md:factory:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改工厂对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="工厂编码" prop="factoryCode">
<el-input v-model="form.factoryCode" placeholder="请输入工厂编码" />
</el-form-item>
<el-form-item label="工厂名称" prop="factoryName">
<el-input v-model="form.factoryName" placeholder="请输入工厂名称" />
</el-form-item>
<el-form-item label="是否启用" prop="enableFlag">
<el-select v-model="form.enableFlag" placeholder="请选择是或否">
<el-option
v-for="dict in dict.type.sys_yes_no"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listFactory, getFactory, delFactory, addFactory, updateFactory } from "@/api/mes/md/factory";
export default {
name: "Factory",
dicts:['sys_yes_no'],
data() {
return {
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 工厂表格数据
factoryList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
factoryCode: null, factoryName: null, enableFlag: null, },
// 表单参数
form: {},
// 表单校验
rules: {
}
};
},
created() {
this.getList();
},
methods: {
/** 查询工厂列表 */
getList() {
this.loading = true;
listFactory(this.queryParams).then(response => {
this.factoryList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
factoryId: null, factoryCode: null, factoryName: null, enableFlag: null, remark: null, createBy: null, createTime: null, updateBy: null, updateTime: null };
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.factoryId)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加工厂";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const factoryId = row.factoryId || this.ids
getFactory(factoryId).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改工厂";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.factoryId != null) {
updateFactory(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addFactory(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const factoryIds = row.factoryId || this.ids;
this.$modal.confirm('是否确认删除工厂编号为"' + factoryIds + '"的数据项?').then(function() {
return delFactory(factoryIds);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('md/factory/export', {
...this.queryParams
}, `factory_${new Date().getTime()}.xlsx`)
}
}
};
</script>
<!--产品正反面颜色-->
<template>
<div class="app-container">
<el-row :gutter="10" class="mb8" v-if="optType !='view'">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['mes:md:faceColor:add']"
>新增</el-button>
<ColorSelect ref="colorSelect" @onSelected="onColorSelected" > </ColorSelect>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['mes:md:faceColor:remove']"
>删除</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="faceColorList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="排序号" align="center" prop="sortOrder" />
<el-table-column label="颜色编码" align="center" prop="colorCode">
<template slot-scope="scope">
<el-color-picker :value="scope.row.colorCode"></el-color-picker>
</template>
</el-table-column>
<el-table-column label="颜色名称" align="center" prop="colorName" />
<el-table-column label="覆盖率(单位%)" align="center" prop="coverageRate" :show-overflow-tooltip="true" />
<!-- <el-table-column label="创建人" align="center" prop="createBy" />
<el-table-column label="创建时间" align="center" prop="createTime" />
<el-table-column label="修改人" align="center" prop="updateBy" />
<el-table-column label="修改时间" align="center" prop="updateTime" />-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" v-if="optType !='view'">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['mes:md:faceColor:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['mes:md:faceColor:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改产品颜色关系对话框 -->
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="排序号" prop="sortOrder">
<el-input v-model="form.sortOrder" type="number" placeholder="请输入排序号" />
</el-form-item>
<el-form-item label="颜色编码" prop="colorCode">
<el-input v-model="form.colorCode" readonly placeholder="请输入颜色" />
</el-form-item>
<el-form-item label="颜色名称" prop="colorName">
<el-input v-model="form.colorName" readonly placeholder="请输入颜色" />
</el-form-item>
<el-form-item label="覆盖率(单位%)" prop="coverageRate">
<el-input v-model="form.coverageRate" type="textarea" placeholder="请输入覆盖率" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listFaceColor, getFaceColor, delFaceColor, addFaceColor, updateFaceColor } from "@/api/mes/md/faceColor";
import ColorSelect from "@/components/colorSelect/index.vue";
//import faceColor from "@/views/mes/md/product/components/faceColor.vue";
export default {
name: "FaceColor",
components: { ColorSelect },
data() {
return {
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 产品BOM关系表格数据
faceColorList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
itemId: this.itemId,
colorId: null,
mdFaceColorId: null,
colorName: null,
colorCode: null,
face: 'back',
coverageRate: null,
sortOrder: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
/*quantity: [
{ required: true, message: "物料使用比例不能为空", trigger: "blur" }
]*/
}
};
},
props: {
optType: undefined,
itemId: undefined
},
created() {
this.getList();
},
methods: {
/** 查询产品颜色关系列表 */
getList() {
this.loading = true;
listFaceColor(this.queryParams).then(response => {
this.faceColorList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
itemId: null,
colorId: null,
mdFaceColorId: null,
colorName: null,
colorCode: null,
coverageRate: null,
sortOrder: null,
face: "back",
createBy: null,
createTime: null,
updateBy: null,
updateTime: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.mdFaceColorId)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.$refs.colorSelect.showFlag = true;
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const mdFaceColorId = row.mdFaceColorId || this.ids
getFaceColor(mdFaceColorId).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改产品颜色";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
updateFaceColor(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const mdFaceColorIds = row.mdFaceColorId || this.ids;
this.$modal.confirm('是否确认删除产品BOM关系编号为"' + mdFaceColorIds + '"的数据项?').then(function() {
return delFaceColor(mdFaceColorIds);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
//物料选择弹出框
onColorSelected(obj){
debugger;
this.form.itemId = this.itemId;
if(obj != undefined && obj != null){
obj.forEach(element => {
//this.form.itemId = element.itemId;
this.form.colorId = element.colorId;
this.form.colorName = element.colorName;
this.form.colorCode = element.colorCode;
this.form.face = 'back';
var retFlag = false;
const idx = this.faceColorList.findIndex(itm => itm.colorId == element.colorId)
if (idx > -1) {
this.$modal.msgError("新增颜色失败,颜色已存在");
return
}
addFaceColor(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.getList();
});
});
}
}
}
};
</script>
<!--产品基本信息--> <!--产品基本信息-->
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form ref="form" :model="form" :rules="rules" label-width="120px"> <el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="产品计量单位" prop="productUnit"> <el-form-item label="产品代号" prop="productNo">
<el-input v-model="form.productUnit" maxlength="64" v-if="optType == 'view'"/> <el-input v-model="form.productNo" placeholder="请输入产品代号" />
<el-input v-model="form.productUnit" placeholder="请输入产品计量单位" maxlength="64" v-else/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="产品有效起始日期" prop="productStartDate">
<el-input v-model="form.productStartDate" type="date" placeholder="请输入产品有效起始日期"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="样品编号" prop="productSampleCode">
<el-input v-model="form.productSampleCode" maxlength="64" v-if="optType == 'view'"/>
<el-input v-model="form.productSampleCode" placeholder="样品编号" maxlength="64" v-else/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="品牌名称" prop="brandName"> <el-form-item label="英文名称" prop="productEnglishName">
<el-input v-model="form.brandName" maxlength="64" v-if="optType == 'view'"/> <el-input
<el-input v-model="form.brandName" placeholder="请输入品牌名称" maxlength="64" v-else/> v-model="form.productEnglishName"
placeholder="请输入英文名称"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="产品类型" prop="productType"> <el-form-item label="计量单位" prop="unitOfMeasure">
<el-input v-model="form.productType" maxlength="64" v-if="optType == 'view'"/> <el-input
<el-input v-model="form.productType" placeholder="请输入产品类型" maxlength="64" v-else/> v-model="form.unitOfMeasure"
placeholder="请输入计量单位"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="尺码组id" prop="productSizeGroupId"> <el-form-item label="品牌" prop="brandId">
<el-input v-model="form.productSizeGroupId" maxlength="64" v-if="optType == 'view'"/> <el-input
<el-input v-model="form.productSizeGroupId" placeholder="请输入尺码组id" maxlength="64" v-else/> v-model="form.brandName"
disabled
placeholder="请选择品牌"
>
<el-button
icon="el-icon-search"
slot="append"
@click="openBrandSelected"
/>
</el-input>
<BrandSelect ref="BrandSelectRef" @onSelected="onBrandSelected" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="工厂名称" prop="factoryName"> <el-form-item label="尺码组id" prop="sizeGroupId">
<el-input v-model="form.factoryName" maxlength="64" v-if="optType == 'view'"/> <el-input
<el-input v-model="form.factoryName" placeholder="请输入工厂名称" maxlength="64" v-else/> v-model="form.sizeGroupName"
disabled
placeholder="请输入尺码组"
>
<el-button
icon="el-icon-search"
slot="append"
@click="openSizeGroupSelect"
/>
</el-input>
<SizeGroupSelect
ref="SizeGroupSelectRef"
@onSelected="onSizeGroupSelect"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="版面" prop="productLayout"> <el-form-item label="版面" prop="layout">
<el-select v-model="form.productLayout" placeholder="请选择任务分组"> <el-select v-model="form.layout" placeholder="请选择版面">
<el-option <el-option
v-for="dict in dict.type.product_layout" v-for="dict in dict.type.product_layout"
:key="dict.value" :key="dict.value"
...@@ -60,24 +72,29 @@ ...@@ -60,24 +72,29 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-form-item label="产品代号" prop="productNo"> <el-col :span="12">
<el-input v-model="form.productNo" maxlength="64" v-if="optType == 'view'"/> <el-form-item label="有效开始日期" prop="expirationDateStart">
<el-input v-model="form.productNo" placeholder="请输入产品代号" maxlength="64" v-else/> <el-date-picker
</el-form-item> clearable
</el-col> v-model="form.expirationDateStart"
</el-row> type="date"
<el-row> value-format="yyyy-MM-dd"
<el-col :span="8"> placeholder="请选择有效开始日期"
<el-form-item label="英文名称" prop="productEnglishName"> >
<el-input v-model="form.productEnglishName" maxlength="64" v-if="optType == 'view'"/> </el-date-picker>
<el-input v-model="form.productEnglishName" placeholder="请输入英文名称" maxlength="64" v-else/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="12">
<el-form-item label="客户料号" prop="customerMaterialCode"> <el-form-item label="有效结束日期" prop="expirationDateEnd">
<el-input v-model="form.customerMaterialCode" maxlength="64" v-if="optType == 'view'"/> <el-date-picker
<el-input v-model="form.customerMaterialCode" placeholder="请输入客户料号" maxlength="64" v-else/> clearable
v-model="form.expirationDateEnd"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择有效结束日期"
>
</el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -86,12 +103,13 @@ ...@@ -86,12 +103,13 @@
</template> </template>
<script> <script>
import {getInfo} from "@/api/mes/md/baseInfo"; import { getInfo } from "@/api/mes/md/baseInfo";
import BrandSelect from "@/components/brandSelect/single.vue";
import SizeGroupSelect from "@/components/SizeGroupSelect/index.vue";
export default { export default {
name: "BaseInfo", name: "BaseInfo",
dicts: ['product_layout'], dicts: ["product_layout"],
components: { }, components: { BrandSelect, SizeGroupSelect },
data() { data() {
return { return {
// 遮罩层 // 遮罩层
...@@ -116,45 +134,47 @@ export default { ...@@ -116,45 +134,47 @@ export default {
}, },
// 表单参数 // 表单参数
form: { form: {
baseInfoId:'', itemId: "",
productUnit:'', productNo: "",
productStartDate:'', productEnglishName: "",
productSampleCode:'', unitOfMeasure: "",
brandName:'', expirationDateStart: "",
productType:'', expirationDateEnd: "",
productSizeGroupId:'', brandId: "",
factoryName:'', brandName: "",
productLayout:'', sizeGroupId: "",
productNo:'', sizeGroupName: "",
productEnglishName:'', layout: "",
customerMaterialCode:'',
}, },
// 表单校验 // 表单校验
rules: { rules: {
/*quantity: [ /*quantity: [
{ required: true, message: "物料使用比例不能为空", trigger: "blur" } { required: true, message: "物料使用比例不能为空", trigger: "blur" }
]*/ ]*/
} },
}; };
}, },
props: { props: {
optType: undefined, optType: undefined,
itemId: undefined itemId: {
type: Number | undefined,
default: undefined,
},
}, },
created() { created() {
this.getBaseInfo(); this.getBaseInfo();
}, },
methods: { methods: {
//获取基本信息表单数据 //获取基本信息表单数据
async getBaseInfoData(){ async getBaseInfoData() {
await this.submitForm() await this.submitForm();
return this.form return this.form;
}, },
getBaseInfo(){ getBaseInfo() {
getInfo(this.itemId).then(res=>{ getInfo(this.itemId).then((res) => {
Object.assign(this.form,res.data) Object.assign(this.form, res.data);
}) });
}, },
// 取消按钮 // 取消按钮
...@@ -166,17 +186,16 @@ export default { ...@@ -166,17 +186,16 @@ export default {
reset() { reset() {
this.form = { this.form = {
itemId: this.itemId, itemId: this.itemId,
productUnit:null, productNo: "",
productStartDate: null, productEnglishName: "",
productSampleCode: null, unitOfMeasure: "",
brandName: null, expirationDateStart: "",
productType: null, expirationDateEnd: "",
productSizeGroupId: null, brandId: "",
factoryName: null, brandName: "",
productLayout: null, sizeGroupId: "",
productNo: null, sizeGroupName: "",
productEnglishName: null, layout: "",
customerMaterialCode: null
}; };
this.resetForm("form"); this.resetForm("form");
}, },
...@@ -184,6 +203,24 @@ export default { ...@@ -184,6 +203,24 @@ export default {
async submitForm() { async submitForm() {
return await this.$refs["form"].validate(); return await this.$refs["form"].validate();
}, },
openSizeGroupSelect() {
this.$refs["SizeGroupSelectRef"].showFlag = true;
},
onSizeGroupSelect(row) {
if (row != undefined && row != null) {
this.form.sizeGroupId = row.sizeGroupId;
this.form.sizeGroupName = row.sizeGroupName;
}
},
openBrandSelected() {
this.$refs["BrandSelectRef"].showFlag = true;
},
onBrandSelected(row) {
if (row != undefined && row != null) {
this.form.brandId = row.brandId;
this.form.brandName = row.brandName;
} }
},
},
}; };
</script> </script>
...@@ -30,8 +30,17 @@ ...@@ -30,8 +30,17 @@
<el-table v-loading="loading" :data="faceColorList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="faceColorList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="排序号" align="center" prop="sortOrder" /> <el-table-column label="排序号" align="center" prop="sortOrder" />
<el-table-column label="颜色" align="center" prop="colorName" /> <el-table-column label="颜色编码" align="center" prop="colorCode">
<template slot-scope="scope">
<el-color-picker :value="scope.row.colorCode"></el-color-picker>
</template>
</el-table-column>
<el-table-column label="颜色名称" align="center" prop="colorName" />
<el-table-column label="覆盖率(单位%)" align="center" prop="coverageRate" :show-overflow-tooltip="true" /> <el-table-column label="覆盖率(单位%)" align="center" prop="coverageRate" :show-overflow-tooltip="true" />
<!-- <el-table-column label="创建人" align="center" prop="createBy" />
<el-table-column label="创建时间" align="center" prop="createTime" />
<el-table-column label="修改人" align="center" prop="updateBy" />
<el-table-column label="修改时间" align="center" prop="updateTime" />-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" v-if="optType !='view'"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" v-if="optType !='view'">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
...@@ -64,9 +73,12 @@ ...@@ -64,9 +73,12 @@
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px"> <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="排序号" prop="sortOrder"> <el-form-item label="排序号" prop="sortOrder">
<el-input v-model="form.sortOrder" placeholder="请输入排序号" /> <el-input v-model="form.sortOrder" type="number" placeholder="请输入排序号" />
</el-form-item> </el-form-item>
<el-form-item label="颜色" prop="colorName"> <el-form-item label="颜色编码" prop="colorCode">
<el-input v-model="form.colorCode" readonly placeholder="请输入颜色" />
</el-form-item>
<el-form-item label="颜色名称" prop="colorName">
<el-input v-model="form.colorName" readonly placeholder="请输入颜色" /> <el-input v-model="form.colorName" readonly placeholder="请输入颜色" />
</el-form-item> </el-form-item>
<el-form-item label="覆盖率(单位%)" prop="coverageRate"> <el-form-item label="覆盖率(单位%)" prop="coverageRate">
...@@ -118,7 +130,8 @@ export default { ...@@ -118,7 +130,8 @@ export default {
colorId: null, colorId: null,
mdFaceColorId: null, mdFaceColorId: null,
colorName: null, colorName: null,
face: null, colorCode: null,
face: 'front',
coverageRate: null, coverageRate: null,
sortOrder: null, sortOrder: null,
}, },
...@@ -161,6 +174,7 @@ export default { ...@@ -161,6 +174,7 @@ export default {
colorId: null, colorId: null,
mdFaceColorId: null, mdFaceColorId: null,
colorName: null, colorName: null,
colorCode: null,
coverageRate: null, coverageRate: null,
sortOrder: null, sortOrder: null,
face: "front", face: "front",
...@@ -232,7 +246,14 @@ export default { ...@@ -232,7 +246,14 @@ export default {
//this.form.itemId = element.itemId; //this.form.itemId = element.itemId;
this.form.colorId = element.colorId; this.form.colorId = element.colorId;
this.form.colorName = element.colorName; this.form.colorName = element.colorName;
this.form.colorCode = element.colorCode;
this.form.face = 'front';
var retFlag = false; var retFlag = false;
const idx = this.faceColorList.findIndex(itm => itm.colorId == element.colorId)
if (idx > -1) {
this.$modal.msgError("新增颜色失败,颜色已存在");
return
}
addFaceColor(this.form).then(response => { addFaceColor(this.form).then(response => {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.getList(); this.getList();
......
...@@ -10,18 +10,9 @@ ...@@ -10,18 +10,9 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['md:factory:add']" v-hasPermi="['md:factory:add']"
>新增</el-button> >新增</el-button
</el-col> >
<el-col :span="1.5"> <FactorySelect ref="FactorySelectRef" @onSelected="onFactorySelect" />
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['md:factory:edit']"
>修改</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
...@@ -32,7 +23,8 @@ ...@@ -32,7 +23,8 @@
:disabled="multiple" :disabled="multiple"
@click="handleDelete" @click="handleDelete"
v-hasPermi="['md:factory:remove']" v-hasPermi="['md:factory:remove']"
>删除</el-button> >删除</el-button
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
...@@ -42,68 +34,102 @@ ...@@ -42,68 +34,102 @@
size="mini" size="mini"
@click="handleExport" @click="handleExport"
v-hasPermi="['md:factory:export']" v-hasPermi="['md:factory:export']"
>导出</el-button> >导出</el-button
>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="factoryList" @selection-change="handleSelectionChange"> <el-table
v-loading="loading"
:data="factoryList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column label="产品工厂id" align="center" prop="productFactoryId" /> <!-- <el-table-column label="产品工厂id" align="center" prop="productFactoryId" />
<el-table-column label="产品id" align="center" prop="itemId" />--> <el-table-column label="产品id" align="center" prop="itemId" />-->
<el-table-column label="工厂编码" align="center" prop="factoryCode" /> <!-- <el-table-column
<el-table-column label="工厂名称" align="center" prop="factoryName" /> label="工厂id"
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> align="center"
prop="factoryId"
width="100"
/>-->
<!-- <el-table-column
label="工厂编码"
align="center"
prop="factoryCode"
width="100"
/>-->
<el-table-column
label="工厂名称"
align="center"
prop="factoryName"
width="120"
/>
<!-- <el-table-column
label="创建人"
align="center"
prop="createBy"
width="100"
/>
<el-table-column
label="创建时间"
align="center"
prop="createTime"
width="180"
/>
<el-table-column
label="修改人"
align="center"
prop="updateBy"
width="120"
/>
<el-table-column
label="修改时间"
align="center"
prop="updateTime"
width="180"
/>-->
<el-table-column label="操作" align="center" width="90">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['md:factory:edit']"
>修改</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['md:factory:remove']" v-hasPermi="['md:factory:remove']"
>删除</el-button> >删除</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination <pagination
v-show="total>0" v-show="total > 0"
:total="total" :total="total"
:page.sync="queryParams.pageNum" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改产品工厂配置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="工厂编码" prop="factoryCode">
<el-input v-model="form.factoryCode" placeholder="请输入工厂编码" />
</el-form-item>
<el-form-item label="工厂名称" prop="factoryName">
<el-input v-model="form.factoryName" placeholder="请输入工厂名称" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { listFactory, getFactory, delFactory, addFactory, updateFactory } from "@/api/mes/md/productFactory"; import {
listFactory,
getFactory,
delFactory,
addFactory,
updateFactory,
} from "@/api/mes/md/productFactory";
import FactorySelect from "@/components/FactorySelect/index.vue";
export default { export default {
name: "Factory", name: "Factory",
components: { FactorySelect },
data() { data() {
return { return {
// 遮罩层 // 遮罩层
...@@ -129,19 +155,30 @@ export default { ...@@ -129,19 +155,30 @@ export default {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
itemId: this.itemId, itemId: this.itemId,
factoryId: null,
factoryCode: null, factoryCode: null,
factoryName: null factoryName: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
}, },
// 表单参数 // 表单参数
form: {}, form: {
factoryName: "",
factoryId: "",
factoryCode: "",
},
// 表单校验 // 表单校验
rules: { rules: {},
}
}; };
}, },
props:{ props: {
optType: undefined, optType: undefined,
itemId:null itemId: {
type: Number | undefined,
default: undefined,
},
}, },
created() { created() {
this.getList(); this.getList();
...@@ -150,7 +187,7 @@ export default { ...@@ -150,7 +187,7 @@ export default {
/** 查询产品工厂配置列表 */ /** 查询产品工厂配置列表 */
getList() { getList() {
this.loading = true; this.loading = true;
listFactory(this.queryParams).then(response => { listFactory(this.queryParams).then((response) => {
this.factoryList = response.rows; this.factoryList = response.rows;
this.total = response.total; this.total = response.total;
this.loading = false; this.loading = false;
...@@ -166,8 +203,13 @@ export default { ...@@ -166,8 +203,13 @@ export default {
this.form = { this.form = {
productFactoryId: null, productFactoryId: null,
itemId: null, itemId: null,
factoryId: null,
factoryCode: null, factoryCode: null,
factoryName: null factoryName: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
}; };
this.resetForm("form"); this.resetForm("form");
}, },
...@@ -183,63 +225,53 @@ export default { ...@@ -183,63 +225,53 @@ export default {
}, },
// 多选框选中数据 // 多选框选中数据
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.productFactoryId) this.ids = selection.map((item) => item.productFactoryId);
this.single = selection.length!==1 this.single = selection.length !== 1;
this.multiple = !selection.length this.multiple = !selection.length;
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
this.reset(); this.$refs["FactorySelectRef"].showFlag = true;
this.open = true;
this.title = "添加产品工厂配置";
}, },
/** 修改按钮操作 */
handleUpdate(row) { onFactorySelect(row) {
this.reset(); if (row != null && row != undefined) {
const productFactoryId = row.productFactoryId || this.ids this.form.factoryId = row.factoryId;
getFactory(productFactoryId).then(response => { this.form.factoryName = row.factoryName;
this.form = response.data;
this.open = true;
this.title = "修改产品工厂配置";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.productFactoryId != null) {
updateFactory(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
this.form.itemId = this.itemId this.form.itemId = this.itemId
addFactory(this.form).then(response => { addFactory(this.form).then((response) => {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList(); this.getList();
}); });
} }
}
});
}, },
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const productFactoryIds = row.productFactoryId || this.ids; const productFactoryIds = row.productFactoryId || this.ids;
this.$modal.confirm('是否确认删除产品工厂配置编号为"' + productFactoryIds + '"的数据项?').then(function() { this.$modal
.confirm(
'是否确认删除产品工厂配置编号为"' + productFactoryIds + '"的数据项?'
)
.then(function () {
return delFactory(productFactoryIds); return delFactory(productFactoryIds);
}).then(() => { })
.then(() => {
this.getList(); this.getList();
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}).catch(() => {}); })
.catch(() => {});
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
this.download('md/factory/export', { this.download(
...this.queryParams "md/factory/export",
}, `factory_${new Date().getTime()}.xlsx`) {
} ...this.queryParams,
} },
`factory_${new Date().getTime()}.xlsx`
);
},
},
}; };
</script> </script>
...@@ -46,7 +46,6 @@ ...@@ -46,7 +46,6 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="印张长度(cm)" prop="sheetLength"> <el-form-item label="印张长度(cm)" prop="sheetLength">
<!-- <el-input v-model="form.sheetLength" placeholder="请输入印张长度(单位cm)" />-->
<el-input v-model="form.sheetLength" type="number" :precision="2" placeholder="请输入印张长度(单位cm)"/> <el-input v-model="form.sheetLength" type="number" :precision="2" placeholder="请输入印张长度(单位cm)"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -99,7 +98,11 @@ export default { ...@@ -99,7 +98,11 @@ export default {
columnDoubleBlade: '', columnDoubleBlade: '',
dispatchMultiple: '', dispatchMultiple: '',
sheetLength: '', sheetLength: '',
sheetWidth: '' sheetWidth: '',
createBy: '',
createTime: '',
updateBy: '',
updateTime: ''
}, },
// 表单校验 // 表单校验
rules: { rules: {
...@@ -145,7 +148,11 @@ export default { ...@@ -145,7 +148,11 @@ export default {
columnDoubleBlade: null, columnDoubleBlade: null,
dispatchMultiple: null, dispatchMultiple: null,
sheetLength: null, sheetLength: null,
sheetWidth: null sheetWidth: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null
}; };
this.resetForm("form"); this.resetForm("form");
}, },
......
<!--采购信息-->
<template>
<div class="app-container">
<!-- 添加或修改销售单位转换对话框 -->
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-row>
<el-col :span="8">
<el-form-item label="销售单位" label-width="100px" prop="saleUnit">
<el-input v-model="form.saleUnit" placeholder="请输入销售单位" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="销售换算值" label-width="100px" prop="saleConversionValue">
<el-input v-model="form.saleConversionValue" type="number" :precision="2" placeholder="请输入销售换算值" />
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</template>
<script>
import { getUnit } from "@/api/mes/md/saleUnit";
export default {
name: "Unit",
data() {
return {
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 销售单位转换表格数据
unitList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
itemId: this.itemId,
saleUnit: null,
saleConversionValue: null
},
// 表单参数
form: {
itemId: '',
saleUnit: '',
saleConversionValue: ''
},
// 表单校验
rules: {
itemId: [
{ required: true, message: "产品ID不能为空", trigger: "blur" }
], }
};
},
props: {
optType: undefined,
itemId: {
type: Number | undefined,
default: undefined,
},
},
created() {
this.getSaleUnit();
},
methods: {
//获取基本信息表单数据
async getSaleUnitFormData() {
await this.submitForm();
return this.form;
},
getSaleUnit() {
getUnit(this.itemId).then((res) => {
Object.assign(this.form, res.data);
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
itemId: this.itemId,
saleUnit: null,
saleConversionValue: null
};
this.resetForm("form");
},
/** 提交按钮 */
async submitForm() {
return await this.$refs["form"].validate();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
}
};
</script>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -131,7 +131,7 @@ ...@@ -131,7 +131,7 @@
default-expand-all default-expand-all
:tree-props="{children: 'children', hasChildren: 'hasChildren'}" :tree-props="{children: 'children', hasChildren: 'hasChildren'}"
> >
<el-table-column label="工单编码" width="180" prop="workorderCode" > <el-table-column label="样品编码" width="180" prop="proofing_apply_no" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
...@@ -141,7 +141,7 @@ ...@@ -141,7 +141,7 @@
>{{scope.row.workorderCode}}</el-button> >{{scope.row.workorderCode}}</el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="工单名称" width="200" align="center" prop="workorderName" :show-overflow-tooltip="true"/> <el-table-column label="产品名称" width="200" align="center" prop="productName" :show-overflow-tooltip="true"/>
<el-table-column label="工单类型" align="center" prop="workorderType" > <el-table-column label="工单类型" align="center" prop="workorderType" >
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.mes_workorder_type" :value="scope.row.workorderType"/> <dict-tag :options="dict.type.mes_workorder_type" :value="scope.row.workorderType"/>
......
This diff is collapsed.
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