生产管理问题修改

dev-scheduling
zhangdi 3 weeks ago
parent 6af824ad26
commit beb42a2d14
  1. 10
      src/api/logisticsManagement/siteBasic.js
  2. 124
      src/views/logisticsManagement/siteBasic.vue
  3. 1
      src/views/productionManagement/beforeAndAfterPlating/afterPlating.vue
  4. 88
      src/views/productionManagement/beforeAndAfterPlating/components/afterPlatingEntryDialog.vue
  5. 124
      src/views/productionManagement/beforeAndAfterPlating/components/beforePlatingBoundDialog.vue
  6. 55
      src/views/productionManagement/beforeAndAfterPlating/components/beforePlatingEntryDialog.vue

@ -26,3 +26,13 @@ export const getLocationLis = (current, size, params) => {
},
});
};
// 更新站点状态 /station/update
export const stationUpdate = (data) => {
return request({
url: '/blade-desk/station/update',
method: 'post',
data: data,
});
};

@ -8,6 +8,7 @@
v-model:page="page"
ref="crud"
@row-del="rowDel"
@row-update="rowUpdate"
@search-change="searchChange"
@search-reset="searchReset"
@selection-change="selectionChange"
@ -15,21 +16,32 @@
@size-change="sizeChange"
@refresh-change="refreshChange"
@on-load="onLoad"
:before-open="beforeOpenFn"
>
<template #menu-left> </template>
<template #menu-left>
<!-- <el-button type="danger" @click="delFn">删除</el-button> -->
</template>
<template #menu-right> </template>
<template #menu="{ row }"> </template>
<template #menu="scope">
<el-button v-if="scope.row.stationStatus == '0'" type="text" @click="handleEdit(scope.row)"
>占用</el-button
>
<el-button v-if="scope.row.stationStatus == '1'" type="text" @click="handleEdit(scope.row)"
>闲置</el-button
>
</template>
<template #stationStatus="scope">
<el-tag v-if="scope.row.stationStatus == '0'" type="success">空闲</el-tag>
<el-tag v-if="scope.row.stationStatus == '1'" type="danger">占用</el-tag>
<el-tag v-if="scope.row.stationStatus == '0'" type="success" @click="handleEdit(row)"></el-tag>
<el-tag v-if="scope.row.stationStatus == '1'" type="danger" @click="handleEdit(row)">占用</el-tag>
</template>
<template #stationPosition="scope"> {{ scope.row.stationPosition }} </template>
</avue-crud>
</basic-container>
</template>
<script>
import { getStationList } from '@/api/logisticsManagement/siteBasic';
import { getStationList,stationUpdate } from '@/api/logisticsManagement/siteBasic';
export default {
components: {},
data() {
@ -63,7 +75,7 @@ export default {
delBtn: false,
editBtnText: '修改',
labelWidth: 120,
menuWidth: 80,
menuWidth: 60,
dialogWidth: 900,
dialogClickModal: false,
searchEnter: true,
@ -81,11 +93,19 @@ export default {
searchGutter: 24,
searchSpan: 6,
menuAlign: 'left',
menu: false,
menu: true,
gridBtn: false,
searchMenuPosition: 'right',
align: 'center',
column: [
{
label: '站点区域',
prop: 'stationRegion',
search: false,
sortable: true,
span: 12,
display: false,
},
{
label: '作业中心',
prop: 'wcName',
@ -102,13 +122,13 @@ export default {
span: 12,
filterable: true,
hide: true,
type: "select",
dicUrl:"/api/blade-desk/BA/WorkCenter/listForSelect",
searchOrder: 17,
type: 'select',
dicUrl: '/api/blade-desk/BA/WorkCenter/listForSelect',
props: {
label: 'wcName',
value:'id'
}
value: 'id',
},
},
{
label: '站点名称',
@ -116,6 +136,7 @@ export default {
search: true,
sortable: true,
span: 12,
searchOrder: 19,
},
{
label: '站点码',
@ -123,6 +144,15 @@ export default {
search: true,
sortable: true,
span: 12,
searchOrder: 20,
},
{
label: '站点楼层',
prop: 'stationPosition',
search: true,
sortable: true,
span: 12,
searchOrder: 18,
},
{
label: '站点状态',
@ -131,23 +161,26 @@ export default {
sortable: true,
span: 12,
type: 'select',
display: false,
searchOrder: 16,
dicData: [
{
label: '占用',
value: 1,
},
{
label: '闲',
label: '闲',
value: 0,
},
],
},
{
label: '站点位置',
prop: 'stationPosition',
label: '更新时间',
prop: 'updateTime',
search: true,
sortable: true,
span: 12,
display: false,
},
],
},
@ -156,6 +189,67 @@ export default {
};
},
methods: {
// /
handleEdit(row) {
//
const newStatus = row.stationStatus == '0' ? '1' : '0';
const statusText = newStatus == '0' ? '闲置' : '占用';
this.$confirm(`确定将站点 "${row.stationName}" 设置为${statusText}状态?`, {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
row.stationStatus = Number(newStatus);
//
stationUpdate(row).then(() => {
this.$message.success('状态修改成功');
this.onLoad(this.page, this.query);
}).catch(err => {
this.$message.error('状态修改失败');
console.error(err);
});
}).catch(() => {
//
});
},
beforeOpenFn(done, type, loading) {
if (type == 'edit') {
this.form.wcId = this.form.wcId + '';
}
done();
},
delFn() {
if (this.selectionList.length <= 0) {
this.$message.error('请选择要删除的行');
return;
}
// 2. stationStatus == '1'
const hasOccupiedData = this.selectionList.some(item => item.stationStatus == '1');
if (hasOccupiedData) {
this.$message.warning('只能删除闲置状态的站点,请先释放占用的站点');
return;
}
// 3.
this.$confirm('确定将选择数据删除?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
})
.then(() => {
// 4.
const ids = this.selectionList.map(item => item.id).join(',');
// remove(ids).then(() => {
// this.$message.success('');
// this.onLoad(this.page, this.query);
// this.selectionClear();
// });
})
.catch(() => {
//
});
},
rowSave(row, done, loading) {
// addPersonAbility(row).then(
// () => {

@ -169,6 +169,7 @@ export default {
this.showDialog = false;
this.boundDialog = false;
this.afterBoundDialog = false;
this.onLoad(this.page,this.query)
},
tabPositionChange(value, event) {
this.option.column = columnData[this.tabPosition];

@ -31,57 +31,43 @@
v-loading="tableLoading"
>
<el-table-column type="selection" fixed></el-table-column>
<el-table-column label="单号" prop="paCode" align="center"></el-table-column>
<el-table-column label="车间订单" prop="woCode" align="center">
<template #header>
<span><i style="color: red">*</i>车间订单</span>
</template>
<el-table-column label="移交类型" prop="paCode" align="center" width="120">
<template #default="scope">
<el-form-item
:prop="`beforePlatingEntryData[${scope.$index}].woCode`"
:rules="formRules.woCode"
>
<el-input v-model="scope.row.woCode" placeholder="请输入车间订单"></el-input>
</el-form-item>
<el-input v-model="scope.row.woCode" placeholder="请输入"></el-input>
</template>
</el-table-column>
<el-table-column label="批单号" prop="batchNo" align="center"></el-table-column>
<el-table-column label="流程卡号" prop="cardNo" align="center"></el-table-column>
<el-table-column label="入库班组/供应商" prop="tsName" width="200" align="center">
</el-table-column>
<el-table-column label="入库工序号" prop="orders" align="center"> </el-table-column>
<el-table-column label="入库工序名称" prop="ppsName" align="center"> </el-table-column>
<el-table-column label="下序号" prop="nextOrders" align="center"> </el-table-column>
<el-table-column label="下序名称" prop="nextPpsName" align="center"> </el-table-column>
<el-table-column label="下序班组/供应商" prop="nextTsName" width="200" align="center">
</el-table-column>
<el-table-column label="入库数量" prop="quantity" align="center"> </el-table-column>
<el-table-column label="入库人员" prop="userName" align="center">
<el-table-column label="转交部门" prop="paCode" align="center" width="100">
<template #header>
<span><i style="color: red">*</i>入库人员</span>
</template>
<template #default="scope">
<el-form-item
:prop="`beforePlatingEntryData[${scope.$index}].userName`"
:rules="formRules.userName"
>
<el-input v-model="scope.row.userName"></el-input>
</el-form-item>
<span><i style="color: red">*</i>转交部门</span>
</template>
</el-table-column>
<el-table-column label="入库时间" prop="createTime" align="center">
<template #header>
<span><i style="color: red">*</i>入库时间</span>
</template>
<template #default="scope">
<el-form-item
:prop="`beforePlatingEntryData[${scope.$index}].createTime`"
:rules="formRules.createTime"
>
<el-input v-model="scope.row.createTime"></el-input>
</el-form-item>
</template>
<el-table-column label="下级B号" prop="paCode" align="center" width="120">
</el-table-column>
<el-table-column label="下级B号名称" prop="paCode" align="center" width="120">
</el-table-column>
<el-table-column label="单号" prop="paCode" align="center" width="120"> </el-table-column>
<el-table-column label="车间订单" prop="woCode" align="center" width="100">
</el-table-column>
<el-table-column label="批次号" prop="batchNo" align="center" width="120"></el-table-column>
<el-table-column
label="流程卡号"
prop="cardNo"
align="center"
width="120"
></el-table-column>
<el-table-column label="出库班组/供应商" prop="teamCode" width="200" align="center">
</el-table-column>
<el-table-column label="出库工序号" prop="processCode" align="center" width="100">
</el-table-column>
<el-table-column label="出库工序名称" prop="ppsName" align="center" width="120">
</el-table-column>
<el-table-column label="下序号" prop="nextOrders" align="center" width="120">
</el-table-column>
<el-table-column label="下序名称" prop="nextPpsName" align="center" width="120">
</el-table-column>
<el-table-column label="下序班组/供应商" prop="nextTsName" width="200" align="center">
</el-table-column>
<el-table-column label="出库数量" prop="quantity" align="center"> </el-table-column>
</el-table>
</el-form>
@ -204,20 +190,22 @@ export default {
const { _select, ...validData } = row; //
return validData;
});
this.sunmitLoading =true
this.sunmitLoading = true;
//
try {
savePlateAroundPlateAfterEnter(this.form.beforePlatingEntryData).then(res => {
savePlateAroundPlateAfterEnter(this.form.beforePlatingEntryData)
.then(res => {
this.$message.success('提交成功');
this.closeDialog();
this.$emit('submitSuccess', submitData);
this.sunmitLoading =false
}).catch(err=>{
this.sunmitLoading =false
this.sunmitLoading = false;
})
.catch(err => {
this.sunmitLoading = false;
});
} catch (err) {
console.error('提交失败:', err);
this.sunmitLoading =false
this.sunmitLoading = false;
}
});
},

@ -32,22 +32,9 @@
height="500px"
>
<el-table-column type="selection" fixed></el-table-column>
<el-table-column label="移交类型" prop="paCode" align="center">
<template #default="scope">
<el-input v-model="scope.row.woCode" placeholder="请输入"></el-input>
</template>
</el-table-column>
<el-table-column label="转交部门" prop="paCode" align="center" width="100">
<template #header>
<span><i style="color: red">*</i>转交部门</span>
</template>
</el-table-column>
<el-table-column label="下级B号" prop="paCode" align="center"> </el-table-column>
<el-table-column label="下级B号名称" prop="paCode" align="center" width="120">
</el-table-column>
<el-table-column label="单号" prop="paCode" align="center"> </el-table-column>
<el-table-column label="车间订单" prop="woCode" align="center" width="100">
<template #header>
<!-- <el-table-column label="单号" prop="paCode" align="center" width="200"></el-table-column> -->
<el-table-column label="车间订单" prop="woCode" align="center" width="200">
<!-- prop="woCode"<template #header>
<span><i style="color: red">*</i>车间订单</span>
</template>
<template #default="scope">
@ -57,47 +44,25 @@
>
<el-input v-model="scope.row.woCode" placeholder="请输入车间订单"></el-input>
</el-form-item>
</template>
</el-table-column>
<el-table-column label="批单号" prop="batchNo" align="center"></el-table-column>
<el-table-column label="流程卡号" prop="cardNo" align="center"></el-table-column>
<el-table-column label="出库班组/供应商" prop="tsName" width="200" align="center">
</template> -->
</el-table-column>
<el-table-column label="出库工序号" prop="orders" align="center" width="100">
<el-table-column label="批次号" prop="batchNo" align="center" width="200"></el-table-column>
<el-table-column
label="流程卡号"
prop="cardNo"
align="center"
width="200"
></el-table-column>
<el-table-column label="入库班组/供应商" prop="teamCode" width="200" align="center">
</el-table-column>
<el-table-column label="出库工序名称" prop="ppsName" align="center" width="120">
<el-table-column label="入库工序号" prop="processCode" align="center"> </el-table-column>
<el-table-column label="入库工序名称" prop="processName" align="center" width="200">
</el-table-column>
<el-table-column label="下序号" prop="nextOrders" align="center"> </el-table-column>
<el-table-column label="下序名称" prop="nextPpsName" align="center"> </el-table-column>
<el-table-column label="下序班组/供应商" prop="nextTsName" width="200" align="center">
</el-table-column>
<el-table-column label="出库数量" prop="quantity" align="center"> </el-table-column>
<el-table-column label="出库人员" prop="userName" align="center" width="100">
<template #header>
<span><i style="color: red">*</i>出库人员</span>
</template>
<template #default="scope">
<el-form-item
:prop="`beforePlatingEntryData[${scope.$index}].userName`"
:rules="formRules.userName"
>
<el-input v-model="scope.row.userName"></el-input>
</el-form-item>
</template>
</el-table-column>
<el-table-column label="出库时间" prop="createTime" align="center" width="100">
<template #header>
<span><i style="color: red">*</i>出库时间</span>
</template>
<template #default="scope">
<el-form-item
:prop="`beforePlatingEntryData[${scope.$index}].createTime`"
:rules="formRules.createTime"
>
<el-input v-model="scope.row.createTime"></el-input>
</el-form-item>
</template>
<el-table-column label="下序号" prop="nextProcessCode" align="center"> </el-table-column>
<el-table-column label="下序名称" prop="processName" align="center"> </el-table-column>
<el-table-column label="下序班组/供应商" prop="nextTeamCode" width="200" align="center">
</el-table-column>
<el-table-column label="入库数量" prop="inQuantity" align="center"> </el-table-column>
</el-table>
</el-form>
@ -151,27 +116,6 @@ export default {
trigger: 'submit',
},
],
woCode: [
{
required: true,
message: '请输入',
trigger: 'blur',
},
],
userName: [
{
required: true,
message: '请输入',
trigger: 'blur',
},
],
createTime: [
{
required: true,
message: '请输入',
trigger: 'blur',
},
],
},
};
},
@ -185,7 +129,8 @@ export default {
this.tableLoading = true;
getBeforePlatOutCardNo({ cardNo: this.cardNo })
.then(res => {
this.form.beforePlatingEntryData = res.data;
this.form.beforePlatingEntryData.push(res.data);
this.tableLoading = false;
})
.catch(err => {
this.tableLoading = false;
@ -224,7 +169,15 @@ export default {
//
try {
savePlateAroundPlateFrontIssue(this.form.beforePlatingEntryData)
let query = [];
this.form.beforePlatingEntryData.forEach(item => {
query.push({
wpId: item.wpId,
tsId: item.teamId,
ocId: item.ocId ? item.ocId : null,
});
});
savePlateAroundPlateFrontIssue(query)
.then(res => {
this.$message.success('提交成功');
this.closeDialog();
@ -249,4 +202,21 @@ export default {
};
</script>
<style></style>
<style lang="scss" scoped>
//
:deep(.el-table .el-form-item) {
margin-bottom: 0; //
}
//
:deep(.el-form-item__error) {
font-size: 12px;
white-space: nowrap;
z-index: 10;
background: #fff;
padding: 2px 4px;
border: 1px solid #f56c6c;
border-radius: 4px;
}
</style>

@ -32,8 +32,8 @@
:height="tableHeight"
>
<el-table-column type="selection" fixed></el-table-column>
<el-table-column label="单号" prop="paCode" align="center" width="200"></el-table-column>
<el-table-column label="车间订单" align="center" width="200">
<!-- <el-table-column label="单号" prop="paCode" align="center" width="200"></el-table-column> -->
<el-table-column label="车间订单" prop="woCode" align="center" width="200">
<!-- prop="woCode"<template #header>
<span><i style="color: red">*</i>车间订单</span>
</template>
@ -53,26 +53,25 @@
align="center"
width="200"
></el-table-column>
<el-table-column label="入库班组/供应商" prop="tsName" width="200" align="center">
<el-table-column label="入库班组/供应商" prop="teamCode" width="200" align="center">
</el-table-column>
<el-table-column label="入库工序号" prop="orders" align="center"> </el-table-column>
<el-table-column label="入库工序名称" prop="ppsName" align="center" width="200">
<el-table-column label="入库工序号" prop="processCode" align="center"> </el-table-column>
<el-table-column label="入库工序名称" prop="processName" align="center" width="200">
</el-table-column>
<el-table-column label="下序号" prop="nextOrders" align="center"> </el-table-column>
<el-table-column label="下序名称" prop="nextPpsName" align="center"> </el-table-column>
<el-table-column label="下序班组/供应商" prop="nextTsName" width="200" align="center">
<el-table-column label="下序号" prop="nextProcessCode" align="center"> </el-table-column>
<el-table-column label="下序名称" prop="processName" align="center"> </el-table-column>
<el-table-column label="下序班组/供应商" prop="nextTeamCode" width="200" align="center">
</el-table-column>
<el-table-column label="入库数量" prop="quantity" align="center"> </el-table-column>
<el-table-column label="入库人员" prop="userName" align="center" width="200">
<el-table-column label="入库数量" prop="inQuantity" align="center"> </el-table-column>
<!-- <el-table-column label="入库人员" prop="userName" align="center" width="200">
<template #header>
<span><i style="color: red">*</i>入库人员</span>
</template>
<template #default="scope">
<el-form-item
:prop="`beforePlatingEntryData[${scope.$index}].userName`"
:rules="formRules.userName"
:prop="`beforePlatingEntryData[${scope.$index}].userId`"
:rules="formRules.userId"
>
<!-- <el-input v-model="scope.row.userName"></el-input> -->
<el-select
filterable
clearable
@ -98,7 +97,6 @@
:prop="`beforePlatingEntryData[${scope.$index}].createTime`"
:rules="formRules.createTime"
>
<!-- <el-input v-model="scope.row.createTime"></el-input> -->
<el-date-picker
v-model="scope.row.createTime"
type="datetime"
@ -108,7 +106,7 @@
></el-date-picker>
</el-form-item>
</template>
</el-table-column>
</el-table-column> -->
</el-table>
</el-form>
@ -165,21 +163,6 @@ export default {
trigger: 'submit',
},
],
userId: [
{
required: true,
message: '请选择',
trigger: 'blur',
},
],
createTime: [
{
required: true,
message: '请输入',
trigger: 'blur',
},
],
},
};
},
@ -268,12 +251,20 @@ export default {
// hrTypeBool: 0- 1-
try {
savePlateAroundPlateFrontEnter(this.form.beforePlatingEntryData)
let query = [];
this.form.beforePlatingEntryData.forEach(item => {
query.push({
wpId: item.wpId,
tsId: item.teamId,
ocId: item.ocId ? item.ocId : null,
});
});
savePlateAroundPlateFrontEnter(query)
.then(res => {
this.sunmitLoading = false;
this.$message.success('提交成功');
this.closeDialog();
this.$emit('submitSuccess', submitData);
// this.$emit('submitSuccess', submitData);
})
.catch(err => {
this.sunmitLoading = false;

Loading…
Cancel
Save