Browse Source

2025-07-31 基础数据调整

master
fengyuan_yang 6 months ago
parent
commit
29286fa61e
  1. 6
      src/api/base/site.js
  2. 5
      src/api/chooselist/chooselist.js
  3. 65
      src/utils/ajax.js
  4. 159
      src/utils/excel-util.js
  5. 484
      src/views/modules/base/buInformation.vue
  6. 1304
      src/views/modules/base/factoryInformation.vue
  7. 525
      src/views/modules/base/workCenter.vue
  8. 2
      src/views/modules/common/Chooselist_eam.vue
  9. 10
      src/views/modules/shopOrder/productionReport/productionLineOperatorRegistration.vue
  10. 8
      src/views/modules/sys/user.vue

6
src/api/base/site.js

@ -179,3 +179,9 @@ export const uploadSOPFile= data => createAPI(`/base/uploadSOPFile`,'post',data)
export const sopFileEdit= data => createAPI(`/base/sopFileEdit`,'post',data)
export const getRoleUserList = data => createAPI(`/base/getRoleUserList`,'post',data)
export const queryBuInformation = data => createAPI(`/base/queryBuInformation`,'post',data)
export const buSave = data => createAPI(`/base/buSave`,'post',data)
export const buEdit = data => createAPI(`/base/buEdit`,'post',data)

5
src/api/chooselist/chooselist.js

@ -1,8 +1,11 @@
import { createAPI } from "@/utils/httpRequest.js";
export const getChooselist = data => createAPI(`/chooselist/getChooselist/${data.tagNo}`,'get',data)
export const getChooselistData = data => createAPI(`/chooselist/getChooselistData`,'post',data)
export const getChooselistEam = data => createAPI(`/chooselist/getChooselist/${data.tagNo}`,'get',data)
export const getChooselistDataEam = data => createAPI(`/chooselist/getChooselistData`,'post',data)
export const verifyData = data => createAPI(`/chooselist/verifyData`,'post',data)

65
src/utils/ajax.js

@ -0,0 +1,65 @@
import Vue from "vue";
import axios from 'axios';
const qs = require('qs');
var apiServer = (process.env.NODE_ENV !== 'production' && process.env.OPEN_PROXY ? '/proxyApi/' : window.SITE_CONFIG.baseUrl);
var http = axios.create({
timeout: 10000,
headers: {},
transformRequest: data => {
if (typeof data === 'object') {
return qs.stringify(data, { arrayFormat: 'brackets' });
}
return data;
}
});
export default {
axios: http,
$post(url, data, callback, error) {
// 添加 headers 配置项
const config = {
headers: {
'Content-Type': 'application/json;charset=UTF-8',
'token': Vue.cookie.get('token')
}
};
let p = http.post(apiServer +url, JSON.stringify(data), config);
if (callback) {
p.then(res => {
callback(res);
})
}
if (error) {
p.catch(err => {
error(err);
});
}
return p;
},
file:(url, data, succ, err )=>{
let requestUrl = apiServer + url;
var xhr = new XMLHttpRequest();
xhr.open('POST', requestUrl, true);
xhr.responseType = "blob";
xhr.withCredentials = true;
xhr.setRequestHeader("X-API", "true");
xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
xhr.setRequestHeader("token", Vue.cookie.get('token') );
xhr.onreadystatechange = function (e) {
if (xhr.readyState === 4) {
if (xhr.status === 200) {
succ(xhr.response)
} else {
var fr = new FileReader();
fr.onload = function(e) {
var text = fr.result;
console.log(text);
err ? err(text) : alert("请求发生错误:" + text)
};
fr.readAsText(xhr.response);
}
}
};
xhr.send(data);
},
apiServer: apiServer
};

159
src/utils/excel-util.js

@ -0,0 +1,159 @@
import XLSX from "xlsx";
import ajax from '@/utils/ajax'
import {
Message
} from 'element-ui';
const excelHeaderName = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"];
/**
* excel导出默认选项
*/
const exportOptionDefault = {
url: "",//*必填,导出请求地址
tableRef: undefined,//#1组合必填 导出数据对应列信息,el-table引用
columnMapping: undefined,//#1组合必填 自定义导出列映射
fileName: "export.xlsx",//导出文件名
params: {},//导出请求参数
rowFetcher: res => {//从请求结果中获取导出行的方式,默认取请求结果中的data作为导出数据
return (res || {data: []}).data;
},
columnFormatter: [],//需要格式化的列
mergeSetting: {
refs: [], //检测需要合并的数据列属性名
columns: [] //检测需要合并后,要合并的列,以第一条数据为准合并
},
dropColumns: [],//导出时需要过滤掉的列
};
let HEADERS = [];
for (let i =0;i< 200;i++) {
let c = parseInt(i / 26);
let m = i % 26;
HEADERS.push((c > 0 ? excelHeaderName[c - 1] : "") + excelHeaderName[m]);
}
let validOption = opt => {
let option = Object.assign({}, opt);
if (!option.url) {
throw new Error("request url is required.");
}
if (!option.tableRef && !option.columnMapping) {
throw new Error("element table ref object or columnMapping is required.");
}
if (option.rowFetcher != undefined && typeof option.rowFetcher != "function") {
throw new Error("rowFetcher must be a function with one param.");
}
}
let getMergeSetting = (data, s, allCols) => {
let refCols = s.refs;
let mcols = s.columns;
let mergeList = [];
let refRow = data[0];
let mergeSetting = {
s: 0,
e: 0
};
for (let i = 0; i < data.length; i++) {
let same = refCols.map(c => data[i][c] === refRow[c]).filter(r => !!r).length == refCols.length;
if (!same) {
mergeSetting.e > mergeSetting.s && (mergeList.push(mergeSetting));
refRow = data[i];
mergeSetting = {
s: i,
e: i
};
} else {
i > mergeSetting.e && (mergeSetting.e = i);
i == data.length - 1 && (mergeList.push(mergeSetting));
}
}
let setting = [];
mergeList.forEach(e => {
mcols.forEach(c => {
let ci = allCols.indexOf(c);
setting.push({
s: {
r: e.s + 1,
c: ci
},
e: {
r: e.e + 1,
c: ci
}
});
});
});
return setting;
}
let setStyle = (ws, s) => {}
let getColSetting = (mapping,dropColums) => {
let columns = [];
for (let i = 0; i < mapping.length; i++) {
let c = mapping[i];
if (dropColums.indexOf(c.columnProp) == -1) {
columns.push({
property: c.columnProp || c.property,
label: c.columnLabel,
type: "default"
});
}
}
return {
columns: columns
};
}
let export2Excel = opt => {
validOption(opt);
let options = Object.assign({}, exportOptionDefault, opt);
let expColSetting = !!options.tableRef ? options.tableRef : getColSetting(options.columnMapping, options.dropColumns);
ajax.$post(options.url, options.params, resp => {
if (resp.status !== 200) {
Message.error({
message: resp.description
});
}
let rows = !!resp.data.rows?options.rowFetcher(resp).rows:resp.data.page.list;
var columns = [
[]
];
var keys = [];
let formaters = new Array();
expColSetting.columns.forEach(column => {
if (!!column.label && column.type === "default") {
columns[0].push(column.label);
keys.push(column.property);
let formater = options.columnFormatter.find(f => !!f[column.property] && typeof f[column.property] == 'function');
!!formater && (formaters[column.property] = formater[column.property]);
}
});
rows.forEach(o => {
let list = [];
keys.forEach(k => {
let formater = formaters[k];
if (!!formater) {
list.push(formater(o[k]));
} else {
list.push(o[k]);
}
});
columns.push(list);
});
const ws = XLSX.utils.aoa_to_sheet(columns);
if (!!options.mergeSetting && !!options.mergeSetting.refs && options.mergeSetting.refs.length > 0) {
let merges = getMergeSetting(rows, options.mergeSetting, keys);
ws["!merges"] = merges;
setStyle(ws, merges);
}
// console.log(ws);
const wb = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(wb, ws, options.fileName.replace(/\.xlsx/, ""));
XLSX.writeFile(wb, options.fileName);
});
}
export default {
exportTable: export2Excel
}

484
src/views/modules/base/buInformation.vue

@ -0,0 +1,484 @@
<template>
<div class="mod-config">
<el-form :inline="true" label-position="top" label-width="100px">
<el-form-item :label="'工厂编码'">
<el-input v-model="searchData.site" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'BU编码'">
<el-input v-model="searchData.buNo" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'BU名称'">
<el-input v-model="searchData.buDesc" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="' '">
<el-button v-if="!authSearch" @click="getDataList()" type="primary" style="margin-left: 2px">查询</el-button>
<el-button v-if="!authSave" @click="addModal()" type="primary" style="margin-left: 5px">新增</el-button>
<el-button @click="exportExcel()" type="primary" style="margin-left: 2px">{{'导出'}}</el-button>
</el-form-item>
</el-form>
<el-table
:height="height"
:data="dataList"
border
style="width: 100%;">
<el-table-column
v-for="(item,index) in columnList" :key="index"
:sortable="item.columnSortable"
:prop="item.columnProp"
:header-align="item.headerAlign"
:show-overflow-tooltip="item.showOverflowTooltip"
:align="item.align"
:fixed="item.fixed==''?false:item.fixed"
:min-width="item.columnWidth"
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden">{{scope.row[item.columnProp]}}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
<el-table-column
fixed="right"
header-align="center"
align="center"
width="80"
label="操作">
<template slot-scope="scope">
<el-link style="cursor: pointer" v-if="!authUpdate" @click="updateModal(scope.row)">编辑</el-link>
</template>
</el-table-column>
</el-table>
<el-pagination
style="margin-top: 0px"
@size-change="sizeChangeHandle"
@current-change="currentChangeHandle"
:current-page="pageIndex"
:page-sizes="[20, 50, 100, 200, 500]"
:page-size="pageSize"
:total="totalPage"
layout="total, sizes, prev, pager, next, jumper">
</el-pagination>
<el-dialog title="BU信息" :close-on-click-modal="false" v-drag :visible.sync="modalFlag" width="530px">
<el-form :inline="true" label-position="top" :rules="rules" style="margin-left: 7px;margin-top: -5px;">
<el-form-item prop="site">
<span v-if="modalData.flag === '1'" slot="label" @click="getBaseList(93)"><a herf="#">工厂编码</a></span>
<span v-else slot="label">工厂编码</span>
<el-input v-model="modalData.site" @change="siteChange(93)" :disabled="modalDisableFlag" style="width: 120px"></el-input>
</el-form-item>
<el-form-item label="工厂名称">
<el-input v-model="modalData.siteName" disabled style="width: 200px"></el-input>
</el-form-item>
<el-form-item label="是否在用" prop="active">
<el-select v-model="modalData.active" style="width: 100px">
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
</el-select>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :rules="rules" :model="modalData" style="margin-left: 7px">
<el-form-item label="BU编码" prop="buNo">
<el-input v-model="modalData.buNo" style="width: 120px"></el-input>
</el-form-item>
<el-form-item label="BU名称" prop="buDesc">
<el-input v-model="modalData.buDesc" style="width: 200px"></el-input>
</el-form-item>
</el-form>
<el-footer style="height:35px;margin-top: 15px;text-align:center">
<el-button type="primary" @click="saveData()">保存</el-button>
<el-button type="primary" @click="modalFlag = false">关闭</el-button>
</el-footer>
</el-dialog>
<!-- 动态列 -->
<column v-if="visible" ref="column" @refreshData="getTableUserColumn" v-drag></column>
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
</div>
</template>
<script>
import column from "@/views/modules/common/column"
import {
queryBuInformation,
buSave,
buEdit,
} from "@/api/base/site.js"
import {
getTableDefaultListLanguage,
getTableUserListLanguage,
} from "@/api/table.js"
import Chooselist from '@/views/modules/common/Chooselist_eam'
import {verifyData} from "@/api/chooselist/chooselist.js"
import excel from "@/utils/excel-util.js"
let functionId = '100001004'
export default {
name: "buInformation",
components: {
column,
Chooselist
},
data() {
return {
menuId: this.$route.meta.menuId,
tagNo: '',
exportName: "BU信息" + this.dayjs().format('YYYYMMDDHHmmss'),
visible: false,
height: 200,
pageIndex: 1,
pageSize: 20,
totalPage: 0,
queryTable: {
functionId: this.$route.meta.menuId,
tableId: "100001004Table",
languageCode: this.$i18n.locale
},
queryTableUser: {
userId: this.$store.state.user.name,
functionId: this.$route.meta.menuId,
tableId: "100001004Table",
status: true,
languageCode: this.$i18n.locale
},
searchData: {
site: '',
buNo: '',
buDesc: '',
page: 1,
limit: 10,
},
modalData: {
flag: '',
site: '',
siteName: '',
buNo: '',
buDesc: '',
active: '',
},
dataList: [],
columnList: [
{
userId: this.$store.state.user.name,
functionId: 100001004,
serialNumber: '100001004TableSite',
tableId: "100001004Table",
tableName: "BU信息表",
columnProp: "site",
headerAlign: "center",
align: "left",
columnLabel: "工厂编码",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 100
},
{
userId: this.$store.state.user.name,
functionId: 100001004,
serialNumber: '100001004TableSiteName',
tableId: "100001004Table",
tableName: "BU信息表",
columnProp: "siteName",
headerAlign: "center",
align: "left",
columnLabel: "工厂名称",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 200
},
{
userId: this.$store.state.user.name,
functionId: 100001004,
serialNumber: '100001004TableBuNo',
tableId: "100001004Table",
tableName: "BU信息表",
columnProp: "buNo",
headerAlign: "center",
align: "left",
columnLabel: "BU编码",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 100
},
{
userId: this.$store.state.user.name,
functionId: 100001004,
serialNumber: '100001004TableBuDesc',
tableId: "100001004Table",
tableName: "BU信息表",
columnProp: "buDesc",
headerAlign: "center",
align: "left",
columnLabel: "BU名称",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 200
},
{
userId: this.$store.state.user.name,
functionId: 100001004,
serialNumber: '100001004TableActive',
tableId: "100001004Table",
tableName: "BU信息表",
columnProp: "active",
headerAlign: "center",
align: "center",
columnLabel: "是否在用",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 80
},
],
rules:{
site:[
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
buNo:[
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
buDesc:[
{
required: true,
message: ' ',
trigger: ['blur','change']
}
],
active:[
{
required: true,
message: ' ',
trigger: ['blur','change']
}
]
},
authSearch: false,
authUpdate: false,
authSave: false,
modalFlag: false,
modalDisableFlag: true,
}
},
mounted() {
this.$nextTick(() => {
this.height = window.innerHeight - 150
})
},
created () {
this.getDataList()
//
this.getButtonAuthData()
this.getTableUserColumn()
},
methods: {
//
sizeChangeHandle (val) {
this.pageSize = val
this.pageIndex = 1
this.getDataList()
},
//
currentChangeHandle (val) {
this.pageIndex = val
this.getDataList()
},
//
getDataList () {
this.searchData.limit = this.pageSize
this.searchData.page = this.pageIndex
queryBuInformation(this.searchData).then(({data}) => {
if (data.code === 0) {
this.dataList = data.page.list
this.pageIndex = data.page.currPage
this.pageSize = data.page.pageSize
this.totalPage = data.page.totalCount
}
})
},
//
addModal () {
this.modalData = {
flag: '1',
site: '',
siteName: '',
buNo: '',
buDesc: '',
active: 'Y',
}
this.modalDisableFlag = false
this.modalFlag = true
},
//
updateModal (row) {
this.modalData = {
flag: '2',
...row
}
this.modalDisableFlag = true
this.modalFlag = true
},
//
saveData () {
if (this.modalData.site == null || this.modalData.site === '') {
this.$message.warning('请选择工厂!')
return
}
if (this.modalData.buNo == null || this.modalData.buNo === '') {
this.$message.warning('请输入BU编码!')
return
}
if (this.modalData.buDesc == null || this.modalData.buDesc === '') {
this.$message.warning('请输入BU名称!')
return
}
if (this.modalData.flag === '1') {
buSave(this.modalData).then(({data}) => {
if (data && data.code === 0) {
this.siteFlag = false
this.getDataList()
this.$message.success('操作成功')
} else {
this.$message.error(data.msg)
}
})
} else {
buEdit(this.modalData).then(({data}) => {
if (data && data.code === 0) {
this.getDataList()
this.modalFlag = false
this.$message.success('操作成功')
} else {
this.$message.error(data.msg)
}
})
}
},
// site
siteChange (tagNo) {
let tempData = {
tagno: tagNo,
conditionSql: " and SiteID = '" + this.modalData.site + "'"
}
verifyData(tempData).then(({data}) => {
if (data && data.code === 0) {
if (data.baseListData.length > 0) {
this.modalData.site = data.baseListData[0].SiteID
this.modalData.siteName = data.baseListData[0].SiteName
} else {
this.modalData.siteName = ''
}
}
})
},
getBaseData (val) {
this.$nextTick(() => {
if (this.tagNo === 93) {
this.modalData.site = val.SiteID
this.modalData.siteName = val.SiteName
}
})
},
//
getBaseList (val) {
this.tagNo = val
this.$nextTick(() => {
let strVal = ""
if (val === 93){
strVal = this.modalData.site
}
this.$refs.baseList.init(val,strVal)
})
},
//
getButtonAuthData () {
let searchFlag = this.isAuth(this.menuId + ":search")
let saveFlag = this.isAuth(this.menuId + ":save")
let updateFlag = this.isAuth(this.menuId + ":update")
//
this.authSearch = !searchFlag
this.authSave = !saveFlag
this.authUpdate = !updateFlag
},
//
getTableUserColumn () {
getTableUserListLanguage(this.queryTableUser).then(({data}) => {
if (data.rows.length > 0) {
this.columnList = data.rows
} else {
this.getColumnList()
}
})
},
// tableDefault
getColumnList() {
getTableDefaultListLanguage(this.queryTable).then(({data}) => {
if (data.rows.length > 0) {
this.columnList = data.rows
}
})
},
async exportExcel() {
this.searchData.limit = -1
this.searchData.page = 1
excel.exportTable({
url: "/base/queryBuInformation",
columnMapping: this.columnList,//table
mergeSetting: [],//
params: this.searchData,
fileName: this.exportName+".xlsx",
rowFetcher: res => res.data,
columnFormatter: [],
dropColumns: [],//dropColumns: ["netWeight"]
})
},
},
}
</script>
<style>
</style>

1304
src/views/modules/base/factoryInformation.vue
File diff suppressed because it is too large
View File

525
src/views/modules/base/workCenter.vue

@ -2,7 +2,7 @@
<div class="mod-config">
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: -5px;">
<el-form-item :label="labels.workCenterNo">
<el-input v-model="modelData.workCenterNo" readonly style="width: 130px"></el-input>
<el-input v-model="modelData.workCenterNo" readonly style="width: 130px"></el-input>
<el-button @click="getData()" type="primary" style="margin-left: 2px;margin-top: 0px">{{buttons.search}}</el-button>
</el-form-item>
<el-form-item :label="labels.workCenterDesc">
@ -13,7 +13,7 @@
</el-form-item>
<el-form-item :label="labels.active">
<el-input v-model="modelData.active" readonly style="width: 40px"></el-input>
<el-button @click="addModal()" type="primary" :disabled = "authAdd" style="margin-left: 2px;margin-top: 0px">{{buttons.add}}</el-button>
<el-button @click="addModal()" type="primary" :disabled="authAdd" style="margin-left: 2px">{{buttons.add}}</el-button>
<download-excel
:fields="fields()"
:data="exportData"
@ -44,6 +44,7 @@
</download-excel>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" >
<el-tab-pane :label="labels.base" name="first">
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: 0px;">
@ -131,13 +132,13 @@
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden"> {{scope.row[item.columnProp]}}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
style="width: 100px; height: 80px"/></span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
<el-dialog :title="labels.dataList" :close-on-click-modal="false" v-drag :visible.sync="modelFlag2" width="680px" >
<el-table
height="400"
@ -168,26 +169,37 @@
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden"> {{scope.row[item.columnProp]}}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
style="width: 100px; height: 80px"/></span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
</el-table>
<el-footer style="height:40px;margin-top: 20px;text-align:center">
<el-footer style="height:40px;margin-top: 20px;text-align:center">
<el-button type="primary" @click="modelFlag2 = false">{{buttons.close}}</el-button>
</el-footer>
</el-dialog>
<el-dialog :title="labels.workCenter" :close-on-click-modal="false" v-drag :visible.sync="modelFlag" width="619px" >
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="BU" prop="bu">
<el-select v-model="modelData2.bu" placeholder="请选择" :disabled="modelInputFlag" style="width: 130px">
<el-option
v-for = "i in userBuList"
:key = "i.buNo"
:label = "i.sitename"
:value = "i.buNo">
<span style="float: left;width: 100px">{{ i.sitename }}</span>
<span style="float: right; color: #8492a6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; font-size: 11px;width: 60px">
{{ i.buDesc }}
</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item :label="labels.workCenterNo">
<el-input v-model="modelData2.workCenterNo" style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
<el-input v-model="modelData2.workCenterNo" :disabled="modelInputFlag" style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
</el-form-item>
<el-form-item :label="labels.workCenterDesc">
<el-input v-model="modelData2.workCenterDesc" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="labels.site">
<el-input v-model="modelData2.site" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="labels.active">
<el-select filterable v-model="modelData2.active" style="width: 130px">
<el-option label="Y" value="Y"></el-option>
@ -195,7 +207,7 @@
</el-select>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form :inline="true" label-position="top" style="margin-left: 7px">
<el-form-item :label="labels.workCenterType">
<el-select filterable v-model="modelData2.workCenterType" style="width: 130px">
<el-option :label="labels.inner" value="内部"></el-option>
@ -203,8 +215,8 @@
</el-select>
</el-form-item>
<el-form-item >
<span slot="label" style="" @click="getBaseList(25)"><a herf="#">{{labels.proLineNo}}</a></span>
<el-input v-model="modelData2.proLineNo" @change="getProLineNo" style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
<span slot="label" style="" @click="getBaseList(501)"><a herf="#">{{labels.proLineNo}}</a></span>
<el-input v-model="modelData2.proLineNo" @change="proLineChange(501)" style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
</el-form-item>
<el-form-item :label="labels.productionLineDesc">
<el-input v-model="modelData2.productionLineDesc" disabled style="width: 130px"></el-input>
@ -216,7 +228,7 @@
</el-select>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form :inline="true" label-position="top" style="margin-left: 7px">
<el-form-item :label="labels.createdDate">
<el-date-picker
style="width: 130px"
@ -235,15 +247,16 @@
</el-select>
</el-form-item>
</el-form>
<el-footer style="height:40px;margin-top: 20px;text-align:center">
<el-button type="primary" @click="ModelSave()">{{buttons.save}}</el-button>
<el-footer style="height:35px;margin-top: 15px;text-align:center">
<el-button type="primary" @click="modelSave()">{{buttons.save}}</el-button>
<el-button type="primary" @click="modelFlag = false">{{buttons.close}}</el-button>
</el-footer>
</el-dialog>
<el-dialog :title="labels.resource" :close-on-click-modal="false" v-drag :visible.sync="modelFlag3" width="460px" >
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item :label="labels.workCenterNo">
<el-input v-model="modelData3.workCenterNo" disabled style="width: 130px" ></el-input>
<el-input v-model="modelData3.workCenterNo" disabled style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="labels.site">
<el-input v-model="modelData3.site" disabled style="width: 130px"></el-input>
@ -251,7 +264,7 @@
</el-form>
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: 0px;">
<el-form-item :label="labels.resourceID">
<el-input v-model="modelData3.resourceID" :disabled="model3InputFlag" style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
<el-input v-model="modelData3.resourceID" :disabled="model3InputFlag" style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
</el-form-item>
<el-form-item :label="labels.resourceDesc">
<el-input v-model="modelData3.resourceDesc" style="width: 130px"></el-input>
@ -271,8 +284,8 @@
</el-select>
</el-form-item>
<el-form-item>
<span slot="label" style="" @click="getBaseList(91)"><a herf="#">{{labels.calendarID}}</a></span>
<el-input v-model="modelData3.calendarID" style="width: 130px"></el-input>
<span slot="label" style="" @click="getBaseList(502)"><a herf="#">{{labels.calendarID}}</a></span>
<el-input v-model="modelData3.calendarID" style="width: 130px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: 0px;">
@ -285,6 +298,7 @@
<el-button type="primary" @click="modelFlag3 = false">{{buttons.close}}</el-button>
</el-footer>
</el-dialog>
<el-dialog :title="labels.partNo2" :close-on-click-modal="false" v-drag :visible.sync="partFlag" width="630px" >
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item :label="labels.partNo">
@ -461,25 +475,20 @@
<el-input v-model="this.fileName" disabled placeholder="文件名称" style="width: 391px"></el-input>
</el-form-item>
</el-form>
<el-footer style="height:30px;margin-top: 3px;text-align:center">
<el-footer style="height:30px;margin-top: 3px;text-align:center">
<el-button type="primary" @click="updateSopFile">保存</el-button>
<el-button type="primary" @click="closeUploadFileEditVisible()">{{buttons.close}}</el-button>
</el-footer>
</el-dialog>
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
</div>
</template>
<script>
import {
saveTableDefaultList,
getTableDefaultListLanguage,
getTableUserListLanguage,
removerDefault,
removerUser
} from "@/api/table.js"
import {
getWorkCenterData,
@ -492,16 +501,12 @@ import {
setResourceFlag,
sopFileListSearch,
deleteSOPFile,
}from "@/api/base/site.js"
import {
searchPartNoData,
} from "@/api/base/site.js"
import Chooselist from '@/views/modules/common/Chooselist'
import {
searchFunctionButtonList,
} from "@/api/sysLanguage.js"
}from "@/api/base/site.js"
import {getSiteAndBuByUserName} from "@/api/qc/qc.js"
import Chooselist from '@/views/modules/common/Chooselist_eam'
import {verifyData} from "@/api/chooselist/chooselist.js"
import {searchFunctionButtonList} from "@/api/sysLanguage.js"
import {uploadSOPFile,sopFileEdit} from "../../../api/base/site";
var functionId='103004';
@ -527,20 +532,19 @@ export default {
status: true,
languageCode: this.$i18n.locale
},
labels: {
workCenterNo:'加工中心编码:',
workCenterDesc:'名称:',
site:'工厂编号:',
active:'是否在用:',
workCenterNo:'加工中心编码',
workCenterDesc:'加工中心名称',
site:'工厂编号',
active:'是否在用',
base:'基本信息',
workCenterType:'加工中心类型:',
proLineNo:'生产线编码:',
productionLineDesc:'生产线名称:',
canCreateNewRollFlag:'是否可以创建新卷:',
createdDate:'新增日期:',
remark:'备注:',
needSetupFlag:'生产是否需要调机:',
workCenterType:'加工中心类型',
proLineNo:'生产线编码',
productionLineDesc:'生产线名称',
canCreateNewRollFlag:'是否可以创建新卷',
createdDate:'新增日期',
remark:'备注',
needSetupFlag:'生产是否需要调机',
partInvolved:'涉及产品',
dataList:'数据表',
workCenter:'加工中心',
@ -548,18 +552,18 @@ export default {
outer:'外部',
chooseDate:'选择日期',
resource:'机台维护',
resourceID:'机台编码:',
resourceDesc:'机台名称:',
efficiency:'效率:',
utilization:'利用率:',
calendarID:'工作日历编码:',
partNo:'物料编码:',
resourceID:'机台编码',
resourceDesc:'机台名称',
efficiency:'效率',
utilization:'利用率',
calendarID:'工作日历编码',
partNo:'物料编码',
partNo2:'物料编码',
partDescription:'物料名称:',
createDate:'新增日期:',
umid:'计量单位:',
configurationTemplateID:'客户名称:',
remark2:'客户产品料号:',
partDescription:'物料名称',
createDate:'新增日期',
umid:'计量单位',
configurationTemplateID:'客户名称',
remark2:'客户产品料号',
resource2:'机台',
do:'操作',
error:'错误',
@ -654,8 +658,8 @@ export default {
height: 200,
modelFlag3:false,
modelFlag2:false,
modelFlag:false,
modelInputFlag:true,
modelFlag: false,
modelInputFlag: true,
fileName:'',
uploadSOPFlag:false,
uploadSOPEditFlag:false,
@ -703,19 +707,20 @@ export default {
user:this.$store.state.user.name,
},
modelData2: {
add:'',
workCenterNo:'',
workCenterDesc:'',
site:'',
active:'',
workCenterType:'',
proLineNo:'',
productionLineDesc:'',
canCreateNewRollFlag:'',
createdDate:'',
remark:'',
needSetupFlag:'',
user:this.$store.state.user.name,
bu: '',
add: '',
workCenterNo: '',
workCenterDesc: '',
site: '',
active: '',
workCenterType: '',
proLineNo: '',
productionLineDesc: '',
canCreateNewRollFlag: '',
createdDate: '',
remark: '',
needSetupFlag: '',
user: this.$store.state.user.name,
},
modelData3:{
workCenterNo:'',
@ -733,9 +738,8 @@ export default {
dataList:[],
dataList2:[],
dataList3:[],
userBuList: [],
dataListLoading: false,
columnList: [
{
userId: this.$store.state.user.name,
@ -1344,17 +1348,26 @@ export default {
menuId: this.$route.meta.menuId,
}
},
mounted() {
this.$nextTick(() => {
this.height = window.innerHeight - 225;
})
},
created() {
this.first()
//
this.getButtonAuthData()
// site bu
this.getSiteAndBuByUserName()
this.getMultiLanguageList() //
this.getTableUserColumn('103004Table',1)
this.getTableUserColumn('103004Table2',2)
this.getTableUserColumn('103004Table3',3)
},
watch: {
'$route' (to, from) {
if(localStorage.getItem('workCenterNo')!=undefined){
this.jump();
}
},
modelData2: {
deep: true,
handler: function (newV, oldV) {
@ -1370,114 +1383,127 @@ export default {
}
},
},
methods: {
editResource(){
if(this.currentRow2==null){
// bu
getSiteAndBuByUserName () {
let tempData = {
username: this.$store.state.user.name,
}
getSiteAndBuByUserName(tempData).then(({data}) => {
if (data.code === 0) {
this.userBuList = data.rows
}
})
},
editResource () {
if (this.currentRow2 == null) {
this.$alert(this.labels.resourceIn,this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
this.modelData3={
workCenterNo:this.modelData.workCenterNo,
site:this.modelData.site,
resourceID:this.currentRow2.resourceID,
resourceDesc:this.currentRow2.resourceDesc,
efficiency:this.currentRow2.efficiency,
utilization:this.currentRow2.utilization,
active:this.currentRow2.active,
calendarID:this.currentRow2.calendarID,
remark:this.currentRow2.remark,
add:1,
};
this.model3InputFlag=true;
this.modelFlag3=true;
this.modelData3 = {
workCenterNo: this.modelData.workCenterNo,
site: this.modelData.site,
resourceID: this.currentRow2.resourceID,
resourceDesc: this.currentRow2.resourceDesc,
efficiency: this.currentRow2.efficiency,
utilization: this.currentRow2.utilization,
active: this.currentRow2.active,
calendarID: this.currentRow2.calendarID,
remark: this.currentRow2.remark,
add: 1,
}
this.model3InputFlag = true
this.modelFlag3 = true
},
addResource(){
if(this.modelData.workCenterNo==''||this.modelData.workCenterNo==null){
addResource () {
if (this.modelData.workCenterNo == null || this.modelData.workCenterNo === '') {
this.$alert(this.labels.workCenterNoChoose,this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
this.modelData3={
workCenterNo:this.modelData.workCenterNo,
site:this.modelData.site,
resourceID:'',
resourceDesc:'',
efficiency:'',
utilization:'',
active:'Y',
calendarID:'',
remark:'',
add:0,
};
this.model3InputFlag=false;
this.modelFlag3=true;
this.modelData3 = {
workCenterNo: this.modelData.workCenterNo,
site: this.modelData.site,
resourceID: '',
resourceDesc: '',
efficiency: '',
utilization: '',
active: 'Y',
calendarID: '',
remark: '',
add: 0,
}
this.model3InputFlag = false
this.modelFlag3 = true
},
ResourceSave(){
if(this.modelData3.resourceID==''||this.modelData3.resourceID==null){
ResourceSave () {
if (this.modelData3.resourceID === '' || this.modelData3.resourceID == null) {
this.$alert(this.labels.resourceIDIn,this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
if(this.modelData3.resourceDesc==''||this.modelData3.resourceDesc==null){
if (this.modelData3.resourceDesc === '' || this.modelData3.resourceDesc == null) {
this.$alert(this.labels.resourceDescIn,this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
if(this.modelData3.efficiency==''||this.modelData3.efficiency==null){
if (this.modelData3.efficiency === '' || this.modelData3.efficiency == null) {
this.$alert(this.labels.efficiencyIn,this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
if(this.modelData3.utilization==''||this.modelData3.utilization==null){
if (this.modelData3.utilization === '' || this.modelData3.utilization == null) {
this.$alert(this.labels.utilizationIn,this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
if(this.modelData3.active==''||this.modelData3.active==null){
if (this.modelData3.active === '' || this.modelData3.active == null) {
this.$alert(this.labels.activeIn,this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
if(this.modelData3.calendarID==''||this.modelData3.calendarID==null){
if (this.modelData3.calendarID === '' || this.modelData3.calendarID == null) {
this.$alert(this.labels.calendarIDIn,this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
saveResource(this.modelData3).then(({data}) => {
if (data && data.code == 200) {
if (data && data.code === 200) {
this.modelFlag3 = false
getWorkCenterDataDetail(this.modelData).then(({data}) => {
this.dataList2 = data.rows2;
this.dataList2 = data.rows2
})
this.$message.success(this.labels.doYes)
} else {
this.$alert(data.msg, this.labels.error, {
confirmButtonText: this.labels.true
})
this.$message.error(data.msg)
}
})
},
setResource(){
if(this.currentRow2==null){
setResource () {
if (this.currentRow2 == null) {
this.$alert(this.labels.resourceIn, this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
let msg=this.labels.virturlFlagAsk1;
if(this.currentRow2.virturlFlag=='Y'){
msg=this.labels.virturlFlagAsk2;
let msg = this.labels.virturlFlagAsk1
if (this.currentRow2.virturlFlag==='Y') {
msg = this.labels.virturlFlagAsk2
}
this.$confirm(msg, this.labels.point, {
confirmButtonText: this.labels.true,
@ -1487,7 +1513,7 @@ export default {
setResourceFlag(this.currentRow2).then(({data}) => {
if (data && data.code == 200) {
getWorkCenterDataDetail(this.modelData).then(({data}) => {
this.dataList2 = data.rows2;
this.dataList2 = data.rows2
})
this.$message.success(this.labels.doYes)
} else {
@ -1721,32 +1747,37 @@ export default {
})
})
},
getBaseData(val){
if (this.tagNo === 25){
getBaseData (val) {
if (this.tagNo === 501) {
this.modelData2.proLineNo = val.ProLineNo
this.modelData2.productionLineDesc = val.ProLineDesc
}
if (this.tagNo === 91){
if (this.tagNo === 502) {
this.modelData3.calendarID = val.CalendarID
}
},
//
getBaseList(val){
this.tagNo = val
this.$nextTick(() => {
let strVal = "";
if (val === 25){
let strVal = ""
if (val === 501) {
strVal = this.modelData2.proLineNo
}
if (val === 91){
if (val === 502) {
strVal = this.modelData3.calendarID
}
this.$refs.baseList.init(val,strVal)
})
},
clickData2(row){
this.currentRow2 = JSON.parse(JSON.stringify(row));
clickData2 (row) {
this.currentRow2 = JSON.parse(JSON.stringify(row))
},
jumpCalendar(){
jumpCalendar () {
if(this.currentRow2==null){
this.$alert(this.labels.resourceIn, this.labels.error, {
confirmButtonText: this.labels.true
@ -1770,132 +1801,131 @@ export default {
partNo:this.currentRow.partNo
}
searchPartNoData(inData).then(({data}) => {
if (data.rows.length==0){
if (data.rows.length === 0) {
this.$alert(this.labels.partNot, this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
}
this.partData = data.rows[0];
this.partFlag=true;
this.partData = data.rows[0]
this.partFlag = true
})
},
first(){
if(localStorage.getItem('workCenterNo')!=undefined){
this.jump();
first () {
if (localStorage.getItem('workCenterNo') !== undefined) {
this.jump()
}
},
getData(){
let inData={
user:this.$store.state.user.name
getData () {
let inData = {
user: this.$store.state.user.name
}
getWorkCenterData(inData).then(({data}) => {
this.dataList3 = data.rows;
this.modelFlag2=true;
this.dataList3 = data.rows
this.modelFlag2 = true
})
},
jump(){
let data=JSON.parse(localStorage.getItem('workCenterNo'));
localStorage.removeItem('workCenterNo');
jump () {
let data = JSON.parse(localStorage.getItem('workCenterNo'))
localStorage.removeItem('workCenterNo')
getWorkCenterData(data).then(({data}) => {
this.dataList3 = data.rows;
this.modelData=data.rows[0];
this.dataList3 = data.rows
this.modelData = data.rows[0]
getWorkCenterDataDetail(this.modelData).then(({data}) => {
this.dataList2 = data.rows2;
this.dataList = data.rows1;
this.dataList2 = data.rows2
this.dataList = data.rows1
})
})
},
clickData(row){
this.currentRow = JSON.parse(JSON.stringify(row));
clickData (row) {
this.currentRow = JSON.parse(JSON.stringify(row))
},
addModal(){
this.modelData2={
add:'',
workCenterNo:'',
workCenterDesc:'',
site:this.$store.state.user.site,
active:'',
workCenterType:'',
proLineNo:'',
productionLineDesc:'',
canCreateNewRollFlag:'',
createdDate:'',
remark:'',
needSetupFlag:'',
user:this.$store.state.user.name,
},
this.modelData2.add=0;
this.modelInputFlag=false;
this.modelData2.active='Y';
this.modelData2.canCreateNewRollFlag='Y';
this.modelData2.needSetupFlag='Y';
this.modelData2.workCenterType='内部',
this.modelData2.createdDate=new Date();
this.modelFlag=true;
addModal () {
this.modelData2 = {
add: '',
bu: this.userBuList[0].buNo,
workCenterNo: '',
workCenterDesc: '',
site: '',
active: '',
workCenterType: '',
proLineNo: '',
productionLineDesc: '',
canCreateNewRollFlag: '',
createdDate: '',
remark: '',
needSetupFlag: '',
user: this.$store.state.user.name,
}
this.modelData2.add = 0
this.modelInputFlag = false
this.modelData2.active = 'Y'
this.modelData2.canCreateNewRollFlag = 'Y'
this.modelData2.needSetupFlag = 'Y'
this.modelData2.workCenterType = '内部'
this.modelData2.createdDate = new Date()
this.modelFlag = true
},
editModel(row){
this.modelData2=JSON.parse(JSON.stringify(row));
this.modelData2.add=1;
this.modelInputFlag=true;
this.modelFlag=true;
editModel (row) {
this.modelData2 = {
...row,
bu: row.site + '_' + row.buNo,
add: 1,
user: this.$store.state.user.name
}
this.modelInputFlag = true
this.modelFlag = true
},
ModelSave(){
if(this.modelData2.workCenterNo==''||this.modelData2.workCenterNo==null){
this.$alert(this.labels.workCenterNoIn, this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
modelSave () {
if (this.modelData2.bu === '' || this.modelData2.bu == null) {
this.$message.warning('请选择BU!')
return
}
if(this.modelData2.workCenterDesc==''||this.modelData2.workCenterDesc==null){
this.$alert(this.labels.workCenterDescIn, this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
if (this.modelData2.workCenterNo === '' || this.modelData2.workCenterNo == null) {
this.$message.warning('请输入加工中心编码!')
return
}
if(this.modelData2.site==''||this.modelData2.site==null){
this.$alert(this.labels.siteIn, this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
if (this.modelData2.workCenterDesc === '' || this.modelData2.workCenterDesc == null) {
this.$message.warning('请输入加工中心名称!')
return
}
if(this.modelData2.createdDate==''||this.modelData2.createdDate==null){
this.$alert(this.labels.createdDateIn, this.labels.error, {
confirmButtonText: this.labels.true
})
return false;
if (this.modelData2.createdDate === '' || this.modelData2.createdDate == null) {
this.$message.warning('请选择新增日期!')
return
}
this.modelData2.user=this.$store.state.user.name;
saveWorkCenterData(this.modelData2).then(({data}) => {
if (data && data.code == 200) {
if (data && data.code === 0) {
this.modelFlag = false
this.getData();
this.getData()
this.$message.success(this.labels.doYes)
} else {
this.$alert(data.msg, this.labels.error, {
confirmButtonText: this.labels.true
})
this.$message.error(data.msg)
}
})
},
deleteData(row){
this.$confirm( this.labels.workCenterDeleteAsk, this.labels.point, {
deleteData (row) {
this.$confirm( this.labels.workCenterDeleteAsk, this.labels.point, {
confirmButtonText: this.labels.true,
cancelButtonText: this.labels.cancel,
type: 'warning'
}).then(() => {
let inData = {
site: row.site,
buNo: row.buNo,
workCenterNo: row.workCenterNo,
site:row.site
}
deleteWorkCenterData(inData).then(({data}) => {
if (data && data.code == 200) {
if (data && data.code === 0) {
this.modelFlag = false
this.getData();
this.getData()
this.$message.success( this.labels.doYes)
} else {
this.$alert(data.msg, this.labels.error, {
@ -1905,6 +1935,7 @@ export default {
})
})
},
tableHanddle(row){
this.modelData=row;
this.modelFlag2=false;
@ -1913,21 +1944,25 @@ export default {
this.dataList = data.rows1;
})
},
getProLineNo(){
let inData={
site : this.$store.state.user.site,
proLineNo : this.modelData2.proLineNo
// 线
proLineChange (tagNo) {
let tempData = {
tagno: tagNo,
conditionSql: " and ProLineNo = '" + this.modelData2.proLineNo + "'" + " and site = '" + this.modelData2.bu.split('_')[0] + "'"
}
getProLineNoDetail(inData).then(({data}) => {
let outList = data.rows
if (outList.length>0){
this.modelData2.productionLineDesc=outList[0].proLineDesc;
this.modelData2=JSON.parse(JSON.stringify(this.modelData2));
}else {
this.modelData2.productionLineDesc='';
verifyData(tempData).then(({data}) => {
if (data && data.code === 0) {
if (data.baseListData.length > 0) {
this.modelData2.proLineNo = data.baseListData[0].ProLineNo
this.modelData2.productionLineDesc = data.baseListData[0].ProLineDesc
} else {
this.modelData2.productionLineDesc = ''
}
}
})
},
//excel
createExportData() {
@ -2071,21 +2106,9 @@ export default {
// this.showDefault = true
}
})
},
},
created() {
this.first();
//
this.getButtonAuthData();
//
this.getMultiLanguageList()//
this.getTableUserColumn('103004Table',1)
this.getTableUserColumn('103004Table2',2)
this.getTableUserColumn('103004Table3',3)
}
}
</script>

2
src/views/modules/common/Chooselist_eam.vue

@ -228,7 +228,7 @@ export default {
}
if (this.tagNo <= 500 && this.tagNo !== 93 && this.tagNo !== 201) {
if (this.param7) {
sql += " and site in (select site from eam_access_site where username = '" + this.param7 + "') " + " and (site + '-' + bu_no) in (select (a.site + '-' + a.bu_no) from AccessBu as a left join eam_access_site as b on a.site = b.site and a.username = b.username where a.username = '" + this.param7 + "')"
sql += " and site in (select site from eam_access_site where username = '" + this.param7 + "') " + " and bu_no in (select bu_no from AccessBu where username = '" + this.param7 + "')"
}
}
if (this.tagNo > 500 && this.tagNo < 1000) {

10
src/views/modules/shopOrder/productionReport/productionLineOperatorRegistration.vue

@ -99,11 +99,11 @@
</el-form>
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item >
<span slot="label" style="" @click="getBaseList(91)"><a herf="#">{{labels.calendarID}}</a></span>
<el-input v-model="modelData.calendarID" style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
<span slot="label" style="" @click="getBaseList(502)"><a herf="#">{{labels.calendarID}}</a></span>
<el-input v-model="modelData.calendarID" style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
</el-form-item>
<el-form-item :label="labels.efficiency">
<el-input v-model="modelData.efficiency" type="number" style="width: 130px"></el-input>
<el-input v-model="modelData.efficiency" type="number" style="width: 130px"></el-input>
</el-form-item>
</el-form>
<el-footer style="height:40px;margin-top: 20px;text-align:center">
@ -481,7 +481,7 @@ export default {
this.modelData.workCenterNo = val.WorkCenterNo
this.modelData.workCenterDesc = val.WorkCenterDesc
}
if (this.tagNo === 91){
if (this.tagNo === 502){
this.modelData.calendarID = val.CalendarID
}
},
@ -493,7 +493,7 @@ export default {
if (val === 24){
strVal = this.modelData.workCenterNo
}
if (val === 91){
if (val === 502){
strVal = this.modelData.calendarID
}
this.$refs.baseList.init(val,strVal)

8
src/views/modules/sys/user.vue

@ -13,7 +13,7 @@
<el-button v-if="isAuth('sys:user:save')" :disabled="this.showButton" type="primary" @click="siteAuthorize()"> {{ buttons.factoryAuthorization || '工厂授权' }}</el-button>
<el-button v-if="isAuth('sys:user:save')" :disabled="this.showButton" type="primary" @click="buAuthorize()">{{ buttons.buAuthorization || 'BU授权' }}</el-button>
<el-button v-if="isAuth('sys:user:save')" :disabled="this.showButton" type="primary" @click="deptAuthorize()">{{ buttons.deptAuthorization || '部门授权' }}</el-button>
<el-button v-if="isAuth('sys:user:save')" :disabled="this.showButton" type="primary" @click="businessRoleAuthorize()">{{ buttons.businessRoleAuthorization || '角色授权' }}</el-button>
<el-button v-if="isAuth('sys:user:save')" :disabled="this.showButton" type="primary" @click="businessRoleAuthorize()">{{ buttons.businessRoleAuthorization || '岗位角色' }}</el-button>
</el-form-item>
</el-form>
@ -556,7 +556,7 @@ export default {
factoryAuthorization: '工厂授权',
buAuthorization: 'BU授权',
deptAuthorization: '部门授权',
businessRoleAuthorization: '角色授权',
businessRoleAuthorization: '岗位角色',
createTime: '创建时间',
username: '用户账号',
userDisplay: '用户名',
@ -1033,9 +1033,9 @@ export default {
})
},
// ========================== ==========================
// ========================== ==========================
//
//
businessRoleAuthorize () {
this.businessRoleData = {
site: '',

Loading…
Cancel
Save