班组组织增加跨位修改

排产确认几个页面使用统一工序转码
工厂日历修改
master
xiaoning 10 months ago
parent 9df0783351
commit 6cfecc8bf9

@ -9,6 +9,7 @@ export function getCdAll() {return request({url: '/sygdpc/getCdAll', method: 'ge
export function saveGxcd(data) {return request({url: '/sygdpc/saveGxcd', method: 'post', data})}
export function removeGxcd(data) {return request({url: '/sygdpc/removeGxcd', method: 'post', data})}
export function getSbcnAll() {return request({url: '/sygdpc/getSbcnAll', method: 'get'})}
export function getGxDict() {return request({url: '/sygdpc/getGxDict', method: 'get'})}
export function saveSbcn(data) {return request({url: '/sygdpc/saveSbcn', method: 'post',data})}
export function removeSbcn(data) {return request({url: '/sygdpc/remove', method: 'post',data})}

@ -72,10 +72,6 @@ export default {
weeks() {
var month=this.current.getMonth() + 1;
var year=this.current.getFullYear();
// if (this.current.getDate()>=20){
// month=this.current.getMonth() + 2;
// if (month==1){year=year+1}
// }
if (!this.years.includes(year+'')&&this.flag){
this.$message.warning("请生成"+this.nextYear+"年度工厂日历!");
}else {
@ -88,6 +84,11 @@ export default {
},
created() {
this.initList();
// this.current=new Date(Date.UTC(2027, 11, 18))
if (this.current.getDate()>=20){
this.current.setMonth(this.current.getMonth() + 1);
this.current = new Date(this.current);
}
},
methods: {
@ -123,22 +124,17 @@ export default {
}
},
isHidden(date){
// let today = new Date(Date.UTC(2024, 5, 21));
// let today = new Date(Date.UTC(2024, 5, 18));
let today = new Date();
var lastDay;
if (today.getDate()<21){
//1.21
lastDay= new Date(today.getFullYear(), today.getMonth()+1, 1);
return !(date < today);
}else {
//2.21
lastDay= new Date(today.getFullYear(), today.getMonth()+2, 1);
var lastDay= new Date(today.getFullYear(), today.getMonth()+1, 1);
return !(date < lastDay);
}
return !(
date < lastDay
);
},
getCurDate() {
var date = new Date();
var year = this.current.getFullYear();
var month = this.current.getMonth() + 1; // getMonth() returns a zero-based value (0-11)
if (month < 10) {
@ -178,6 +174,7 @@ export default {
},
getMonthData(year, month) {
let weeks = [];
let firstDay = new Date(year, month - 1, 1); //
let lastDayOfCurrentMonth = new Date(year, month, 0); //
let lastDayOfPrevMonth = new Date(year, month - 1, 0); //

@ -33,7 +33,7 @@
</template>
<script>
import {getCdAll,saveGxcd,removeGxcd} from '@/api/jhzx/pc'
import {getCdAll,saveGxcd,removeGxcd,getGxDict} from '@/api/jhzx/pc'
export default {
name:'GxCD',
props:{
@ -45,11 +45,12 @@ export default {
data(){
return {
gxCDList:[],
gxList:[],
gxCDtableColumn:[
{ type: 'checkbox', width: 50 },
{type: 'seq', width: 60, title: '序号'},
{ field: 'gx', title: '工序', width: 150,
editRender: { name: "input" },
editRender: { name: '$select', options:[], props: {clearable: true}},
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', },
},
@ -63,6 +64,16 @@ export default {
},
created() {
this.getList()
getGxDict().then((res)=>{
res.data.forEach(item=>{
// this.gxList.push({label:item.name,value:item.code})
this.gxList.push({label:item.name,value:item.name})
})
const xGridGx = this.$refs.xGridGx
const gx = xGridGx.getColumnByField('gx')
gx.editRender.options = this.gxList
})
},
methods:{
getList(){
@ -70,6 +81,14 @@ export default {
this.gxCDList = res.data
})
},
formatterGx({cellValue}){
// for (let i = 0; i < this.gxList.length; i++) {
// if (this.gxList[i].value===cellValue){
// return this.gxList[i].label
// }
// }
return cellValue
},
add(){
this.$refs.xGridGx.insertAt({},-1)
},

@ -33,7 +33,7 @@
</template>
<script>
import {getSbcnAll, saveSbcn, removeSbcn} from '@/api/jhzx/pc'
import {getSbcnAll, saveSbcn, removeSbcn, getGxDict} from '@/api/jhzx/pc'
export default {
name:'Sbcn',
props:{
@ -45,11 +45,12 @@ export default {
data(){
return {
sbcnList:[],
gxList:[],
sbcnColumn:[
{ type: 'checkbox', width: 50 },
{type: 'seq', width: 60, title: '序号', },
{ field: '_工序', title: '工序', width: 150,
editRender: { name: "input" },
editRender: { name: '$select', options:[], props: {clearable: true}},
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', },
},
@ -99,6 +100,15 @@ export default {
},
created() {
this.getList()
getGxDict().then((res)=>{
res.data.forEach(item=>{
// this.gxList.push({label:item.name,value:item.code})
this.gxList.push({label:item.name,value:item.name})
})
const xGridSbcn = this.$refs.xGridSbcn
const gx = xGridSbcn.getColumnByField('_工序')
gx.editRender.options = this.gxList
})
},
methods:{
getList(){

@ -295,7 +295,7 @@
<el-row style="float: right;margin-right: 5px;">
<el-button size="small" type="success" v-show="modalShow>1" @click="preModal" plain>上一步</el-button>
<el-button size="small" type="success" v-show="modalShow<5" @click="nextModal" plain>下一步</el-button>
<el-button size="small" type="success" v-show="modalShow==5"@click="paichan" plain>完成</el-button>
<el-button size="small" type="success" v-show="modalShow==5"@click="paichan" plain>排产</el-button>
</el-row>
</el-row>
<el-row>

@ -38,7 +38,7 @@
<el-button style="margin: 1px;" type="primary" icon="el-icon-search">查询</el-button>
<el-button style="margin: 1px" type="success" @click="handleAddYhxx"></el-button>
<el-button style="margin: 1px" type="warning" @click="handleUpdateYhxx"></el-button>
<el-button style="margin: 1px" type="danger" @click="handleDeleteYhxx"></el-button>
<el-button style="margin: 1px" type="danger" @click="handleDeleteYhxx"></el-button>
</div>
</div>
@ -47,23 +47,30 @@
:show-overflow-tooltip="true"
:data="c_yhxxTableData.slice((currentPage-1)*pageSize,currentPage*pageSize)"
height="calc(100% - 60px - 35px)"
:header-cell-style="{ textAlign: 'center' }"
:cell-style="{ textAlign: 'center' }"
width="100%"
:border="true"
highlight-current-row
@current-change="handleYhxxCurrentChange"
@header-click="showFilter"
>
<el-table-column label="" property="checked" min-width="40">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.checked" />
</template>
</el-table-column>
<!-- <el-table-column label="" property="checked" min-width="40">-->
<!-- <template slot-scope="scope">-->
<!-- <el-checkbox v-model="scope.row.checked" />-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="序号" type="index" />
<el-table-column label="班组编码" property="resourcesCode" />
<el-table-column label="班组名称" property="resourcesName" />
<el-table-column label="是否资源" property="resource" />
<el-table-column label="所属工厂" property="factoryName" />
<el-table-column label="所属车间" property="workshopName" />
<el-table-column label="所属跨位" width="100px">
<template slot-scope="scope">
{{ getKwName(scope.row.kw) }}
</template>
</el-table-column>
<el-table-column label="所属产线" property="productionLineName" />
<el-table-column label="组织类型" property="resourcesType" />
<el-table-column label="外部对照码" property="comparisonCode" />
@ -106,6 +113,17 @@
<span style="width: 110px;display:inline-block;">所属车间</span>
<el-input v-model="updateData.workshopName" placeholder="" style="width: 250px;" />
</el-row>
<el-row>
<span style="width: 110px;display:inline-block;">所属跨位</span>
<el-select v-model="updateData.kw" clearable placeholder="跨位" style="width: 250px;">
<el-option
v-for="item in kwList"
:key="item.bm"
:label="item.bmsm"
:value="item.bm"
/>
</el-select>
</el-row>
<el-row>
<span style="width: 110px;display:inline-block;">所属产线</span>
<el-input v-model="updateData.productionLineName" placeholder="" style="width: 250px;" />
@ -207,6 +225,7 @@ export default {
defaultHeight: {
height: '100%'
},
kwList:[],
inputDisabled:true,
activeGzzxxTabName: 'gzzxx',
dm_depart: [],
@ -264,7 +283,12 @@ export default {
this.bzryTableData = response.data
})
})
const dict= window.localStorage.getItem("QGKW");
this.kwList=JSON.parse(dict);
this.kwList=this.kwList.filter(item => {
if (item.bm >4)
return true
})
},
methods: {
showFilter(column) {
@ -332,7 +356,6 @@ export default {
}
this.dialogVisible = true
this.dialogTitle = '修改班组信息'
console.log(this.selectYhxx)
this.updateData = JSON.parse(JSON.stringify(this.selectYhxx))
this.inputDisabled=true;
},
@ -346,6 +369,23 @@ export default {
})
},
handleDeleteYhxx() {
if (!this.selectYhxx.resourcesCode) {
this.$message({ message: '请选择要删除的班组!', type: 'error' })
return
}
let resultList = JSON.parse(JSON.stringify(this.selectYhxx))
this.$confirm('此操作将删除该班组, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
del([resultList]).then(response => {
this.yhxxTableData = this.yhxxTableData.filter(t => !(t.resourcesCode === this.selectYhxx.resourcesCode))
this.$message({ message: '删除班组信息成功!', type: 'success' })
})
})
},
handleDeleteYhxx1() {
let resultList = this.yhxxTableData.filter(data => {
return data.checked
})
@ -376,10 +416,10 @@ export default {
}
},
getDepartName(depart_code) {
for (const i in this.dm_depart) {
if (this.dm_depart[i].depart_code === depart_code) {
return this.dm_depart[i].depart_name
getKwName(bm) {
for (const i in this.kwList) {
if (this.kwList[i].bm === bm) {
return this.kwList[i].bmsm
}
}
return ''

@ -8,7 +8,7 @@
<el-form-item label="工序名称:">
<el-select v-model="request.gx" placeholder="工序名称" clearable>
<el-option
v-for="item in gxOptions"
v-for="item in gxList"
:key="item.value"
:value="item.value"
:label="item.label"
@ -96,6 +96,7 @@ import {
deleteJgry
} from "@/api/sjzx/sbryWH";
import {emSbjbbZM, getBMMCBM} from "@/api/sjzx/sbwxjhWH";
import {getGxDict} from "@/api/jhzx/pc";
export default {
name: "SbjgryWH",
data() {
@ -103,6 +104,7 @@ export default {
request: {
gx: "",
},
gxList:[],
list: [],
height: "500px",
tableColumn: [
@ -116,7 +118,7 @@ export default {
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', },
},
{ field: 'gx', title: '工序', width: 160,formatter:['dictFormat','PCGX'],
{ field: 'gx', title: '工序', width: 160,
editRender: {
name: "$select",
options: [],
@ -239,7 +241,6 @@ export default {
filterRender: { name: 'FilterCombination', },
},
],
gxOptions: [],
departmentOptions: [],
options: [],
sbmcOptions: [],
@ -254,7 +255,7 @@ export default {
this.initgxList();
this.getBMMCBM();
this.emSbjbbZM("bmbm");
this.getGxList();
},
methods: {
@ -266,6 +267,17 @@ export default {
}
});
},
getGxList(){
getGxDict().then((res)=>{
res.data.forEach(item=>{
// this.gxList.push({label:item.name,value:item.code})
this.gxList.push({label:item.name,value:item.name})
})
const tableRef = this.$refs.tableRef
const gx = tableRef.getColumnByField('gx')
gx.editRender.options = this.gxList
})
},
//
emSbjbbZM(params) {
emSbjbbZM({
@ -293,27 +305,16 @@ export default {
});
},
initgxList(){
const dict=window.localStorage.getItem( 'PCGX');
const ztDict=window.localStorage.getItem( 'YGZT');
const gzDict=window.localStorage.getItem( 'RYGX');
const gxList =JSON.parse(dict)
const ztList =JSON.parse(ztDict)
const gzList =JSON.parse(gzDict)
this.$nextTick(() => {
const tableRef = this.$refs.tableRef;
const gx = tableRef.getColumnByField("gx");
const zt = tableRef.getColumnByField("zt");
const gz = tableRef.getColumnByField("gz");
const testList = [];
const ztList1 = [];
const gzList1 = [];
for (let i = 0; i < gxList.length; i++) {
const temp = {
label: gxList[i].bmsm,
value: gxList[i].bm,
};
testList.push(temp);
}
for (let i = 0; i < ztList.length; i++) {
const temp = {
label: ztList[i].bmsm,
@ -328,8 +329,6 @@ export default {
};
gzList1.push(temp);
}
this.gxOptions= testList;
gx.editRender.options = testList;
zt.editRender.options = ztList1;
gz.editRender.options = gzList1;
});

Loading…
Cancel
Save