|
@@ -1,37 +1,42 @@
|
|
<template>
|
|
<template>
|
|
<dialog-base ref="baseDialog" title="周转申请">
|
|
<dialog-base ref="baseDialog" title="周转申请">
|
|
<view class="list-container">
|
|
<view class="list-container">
|
|
- <view ><text style="margin: 0 0 0 5rpx;">请选择周转类型</text></view>
|
|
|
|
|
|
+ <view><text style="margin: 0 0 0 5rpx;">请选择周转类型</text></view>
|
|
<view class="btn uni-row">
|
|
<view class="btn uni-row">
|
|
<view v-for="(item,index) in turnoverType"
|
|
<view v-for="(item,index) in turnoverType"
|
|
:class="{ 'middle-btn': true, 'active': item.dictValue == curDayworkItem.turnoverType }"
|
|
:class="{ 'middle-btn': true, 'active': item.dictValue == curDayworkItem.turnoverType }"
|
|
- @click="selectTurnoverType(item)"><text class="label" style="font-size: 30rpx;">{{item.dictLabel}}</text></view>
|
|
|
|
|
|
+ @click="selectTurnoverType(item)"><text class="label"
|
|
|
|
+ style="font-size: 30rpx;">{{item.dictLabel}}</text></view>
|
|
</view>
|
|
</view>
|
|
- <view class="" style="margin: 0 20rpx 20rpx 0;width: 88%;" >
|
|
|
|
- <uni-section title="请选择下序工段" title-font-size="32rpx" style="margin: 0 0 0 -16rpx;" v-if="curDayworkItem.turnoverType == '1'">
|
|
|
|
- <uni-data-select v-model="curDayworkItem.deptId" :localdata="insideDepts" @change="handleChangeInside"
|
|
|
|
- :clear="false"
|
|
|
|
|
|
+ <view class="" style="margin: 0 20rpx 20rpx 0;width: 88%;">
|
|
|
|
+ <uni-section title="请选择下序工段" title-font-size="32rpx" style="margin: 0 0 0 -16rpx;"
|
|
|
|
+ v-if="curDayworkItem.turnoverType == '1'">
|
|
|
|
+ <uni-data-select v-model="curDayworkItem.deptId" :localdata="insideDepts"
|
|
|
|
+ @change="handleChangeInside" :clear="false"
|
|
style="margin: 0 0 0 16rpx;outline: 2rpx solid #999999;border-radius: 10rpx;"></uni-data-select>
|
|
style="margin: 0 0 0 16rpx;outline: 2rpx solid #999999;border-radius: 10rpx;"></uni-data-select>
|
|
</uni-section>
|
|
</uni-section>
|
|
- <uni-section title="请选择下序工段" title-font-size="32rpx" style="margin: 0 0 0 -16rpx;" v-if="curDayworkItem.turnoverType == '2'">
|
|
|
|
- <uni-data-select v-model="curDayworkItem.deptId" :localdata="outsideDepts" @change="handleChangeOutside"
|
|
|
|
- :clear="false"
|
|
|
|
|
|
+ <uni-section title="请选择下序工段" title-font-size="32rpx" style="margin: 0 0 0 -16rpx;"
|
|
|
|
+ v-if="curDayworkItem.turnoverType == '2'">
|
|
|
|
+ <uni-data-select v-model="curDayworkItem.deptId" :localdata="outsideDepts"
|
|
|
|
+ @change="handleChangeOutside" :clear="false"
|
|
style="margin: 0 0 0 16rpx;outline: 2rpx solid #999999;border-radius: 10rpx;"></uni-data-select>
|
|
style="margin: 0 0 0 16rpx;outline: 2rpx solid #999999;border-radius: 10rpx;"></uni-data-select>
|
|
</uni-section>
|
|
</uni-section>
|
|
</view>
|
|
</view>
|
|
- <view >
|
|
|
|
- <text style="margin: 0 0 0 5rpx;">请选择您摆放位置</text>
|
|
|
|
|
|
+ <view v-if="curDayworkItem.turnoverType != '3'">
|
|
|
|
+ <text style=" margin: 0 0 0 5rpx;">请选择您摆放位置</text>
|
|
</view>
|
|
</view>
|
|
<view class="turnArea uni-row" v-if="curDayworkItem.turnoverType == '1'">
|
|
<view class="turnArea uni-row" v-if="curDayworkItem.turnoverType == '1'">
|
|
<view v-for="(item,index) in turnAreaList" class="btn">
|
|
<view v-for="(item,index) in turnAreaList" class="btn">
|
|
<view :class="{ 'middle-btn': true, 'active': handleTurnoverDoor(item) }"
|
|
<view :class="{ 'middle-btn': true, 'active': handleTurnoverDoor(item) }"
|
|
- @click="selectTurnoverDoor(item)"><text class="label" style="font-size: 30rpx;">{{item.code}}</text></view>
|
|
|
|
|
|
+ @click="selectTurnoverDoor(item)"><text class="label"
|
|
|
|
+ style="font-size: 30rpx;">{{item.code}}</text></view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="turnArea uni-row" v-if="curDayworkItem.turnoverType == '2'">
|
|
<view class="turnArea uni-row" v-if="curDayworkItem.turnoverType == '2'">
|
|
<view v-for="(item,index) in turnoverArea" class="btn">
|
|
<view v-for="(item,index) in turnoverArea" class="btn">
|
|
<view :class="{ 'middle-btn': true, 'active': handleTurnoverDoor(item) }"
|
|
<view :class="{ 'middle-btn': true, 'active': handleTurnoverDoor(item) }"
|
|
- @click="selectTurnoverDoorOutside(item)"><text class="label" style="font-size: 30rpx;">{{item.code}}</text></view>
|
|
|
|
|
|
+ @click="selectTurnoverDoorOutside(item)"><text class="label"
|
|
|
|
+ style="font-size: 30rpx;">{{item.code}}</text></view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
@@ -58,7 +63,8 @@
|
|
import {
|
|
import {
|
|
getDayWorkItemList,
|
|
getDayWorkItemList,
|
|
saveDayWorkItem,
|
|
saveDayWorkItem,
|
|
- turnover
|
|
|
|
|
|
+ turnover,
|
|
|
|
+ turnoverOutsource
|
|
} from '@/api/business/dayWorkItem.js'
|
|
} from '@/api/business/dayWorkItem.js'
|
|
import {
|
|
import {
|
|
getDeptList
|
|
getDeptList
|
|
@@ -125,16 +131,18 @@
|
|
function init() {
|
|
function init() {
|
|
getDictInfoByType('daywork_turnover_type').then(res => {
|
|
getDictInfoByType('daywork_turnover_type').then(res => {
|
|
turnoverType.value = res.data;
|
|
turnoverType.value = res.data;
|
|
- getTurnoverByWorkshop({ deptId: store.curDeptDetails.deptId }).then(res => {
|
|
|
|
|
|
+ getTurnoverByWorkshop({
|
|
|
|
+ deptId: store.curDeptDetails.deptId
|
|
|
|
+ }).then(res => {
|
|
turnoverArea.value = res.data;
|
|
turnoverArea.value = res.data;
|
|
})
|
|
})
|
|
})
|
|
})
|
|
getDayWorkItemList({
|
|
getDayWorkItemList({
|
|
dayworkId: dayworkInfo.value.id,
|
|
dayworkId: dayworkInfo.value.id,
|
|
userId: store.userInfo.userId,
|
|
userId: store.userInfo.userId,
|
|
- lotId:dayworkInfo.value.lotId,
|
|
|
|
- isWasteRecycling:dayworkInfo.value.isWasteRecycling,
|
|
|
|
- processStepNumber:dayworkInfo.value.currentProcess.processStepNumber
|
|
|
|
|
|
+ lotId: dayworkInfo.value.lotId,
|
|
|
|
+ isWasteRecycling: dayworkInfo.value.isWasteRecycling,
|
|
|
|
+ processStepNumber: dayworkInfo.value.currentProcess.processStepNumber
|
|
}).then(res => {
|
|
}).then(res => {
|
|
curDayworkItem.value = {
|
|
curDayworkItem.value = {
|
|
...res.rows[0],
|
|
...res.rows[0],
|
|
@@ -145,9 +153,9 @@
|
|
getDeptList({
|
|
getDeptList({
|
|
tenantId: store.tenantId,
|
|
tenantId: store.tenantId,
|
|
productionPlanDetailId: store.planDetails.id,
|
|
productionPlanDetailId: store.planDetails.id,
|
|
- lotId:dayworkInfo.value.lotId,
|
|
|
|
- isWasteRecycling:dayworkInfo.value.isWasteRecycling,
|
|
|
|
- isAmend:dayworkInfo.value.isAmend
|
|
|
|
|
|
+ lotId: dayworkInfo.value.lotId,
|
|
|
|
+ isWasteRecycling: dayworkInfo.value.isWasteRecycling,
|
|
|
|
+ isAmend: dayworkInfo.value.isAmend
|
|
}).then(res => {
|
|
}).then(res => {
|
|
for (let i = 0; i < res.data.length; i++) {
|
|
for (let i = 0; i < res.data.length; i++) {
|
|
deptList.value = res.data;
|
|
deptList.value = res.data;
|
|
@@ -166,8 +174,8 @@
|
|
})
|
|
})
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- console.log(insideDepts.value)
|
|
|
|
- console.log(outsideDepts.value)
|
|
|
|
|
|
+ console.log(insideDepts.value)
|
|
|
|
+ console.log(outsideDepts.value)
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
|
|
@@ -204,68 +212,112 @@
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- function handleConfirm() {
|
|
|
|
- //console.log(dayworkInfo.value)
|
|
|
|
|
|
+ function handleConfirmOutsource() {
|
|
curDayworkItem.value.id = null;
|
|
curDayworkItem.value.id = null;
|
|
- curDayworkItem.value.status = curDayworkItem.value.turnoverType == '1' ? '7' : '4';
|
|
|
|
curDayworkItem.value.startTime = timestampToTime(new Date());
|
|
curDayworkItem.value.startTime = timestampToTime(new Date());
|
|
curDayworkItem.value.endTime = timestampToTime(new Date());
|
|
curDayworkItem.value.endTime = timestampToTime(new Date());
|
|
curDayworkItem.value.technologicalProcessId = dayworkInfo.value.technologicalProcessId;
|
|
curDayworkItem.value.technologicalProcessId = dayworkInfo.value.technologicalProcessId;
|
|
curDayworkItem.value.dayworkId = dayworkInfo.value.id;
|
|
curDayworkItem.value.dayworkId = dayworkInfo.value.id;
|
|
curDayworkItem.value.productionPlanDetailId = dayworkInfo.value.productionPlanDetailId;
|
|
curDayworkItem.value.productionPlanDetailId = dayworkInfo.value.productionPlanDetailId;
|
|
|
|
+ curDayworkItem.value.status = '4';
|
|
if (!store.tenantId) {
|
|
if (!store.tenantId) {
|
|
curDayworkItem.value.tenantId = store.userInfo.tenantId;
|
|
curDayworkItem.value.tenantId = store.userInfo.tenantId;
|
|
} else {
|
|
} else {
|
|
curDayworkItem.value.tenantId = store.tenantId;
|
|
curDayworkItem.value.tenantId = store.tenantId;
|
|
}
|
|
}
|
|
- // 过滤出周转位置的数组,并转换成字符串
|
|
|
|
- const newArray = selection.value.map((item) => {
|
|
|
|
- if (item.code) {
|
|
|
|
- return item.code;
|
|
|
|
- } else if (item.dictLabel) {
|
|
|
|
- return item.dictLabel;
|
|
|
|
|
|
+ curDayworkItem.value.turnoverArea = "外协周转";
|
|
|
|
+
|
|
|
|
+ /**** 此处暂时为硬编码,170000为外协部门编码,根据编码查询信息 ***/
|
|
|
|
+ curDayworkItem.value.deptCode = 170000;
|
|
|
|
+
|
|
|
|
+ close();
|
|
|
|
+ turnoverOutsource(curDayworkItem.value).then(res => {
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
+ uni.showToast({
|
|
|
|
+ icon: 'success',
|
|
|
|
+ title: '操作成功'
|
|
|
|
+ });
|
|
|
|
+ emit('reflushDaywork');
|
|
} else {
|
|
} else {
|
|
- return null;
|
|
|
|
|
|
+ uni.showToast({
|
|
|
|
+ icon: 'none',
|
|
|
|
+ title: '操作失败'
|
|
|
|
+ });
|
|
}
|
|
}
|
|
})
|
|
})
|
|
- if (curDayworkItem.value.turnoverType == '1') {
|
|
|
|
- curDayworkItem.value.place = newArray.join('、');
|
|
|
|
- curDayworkItem.value.turnoverArea = "车间内周转看place字段";
|
|
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ function handleConfirm() {
|
|
|
|
+ if (curDayworkItem.value.turnoverType == '3') {
|
|
|
|
+ handleConfirmOutsource();
|
|
} else {
|
|
} else {
|
|
- curDayworkItem.value.turnoverArea = newArray.join('、');
|
|
|
|
- }
|
|
|
|
- // curDayworkItem.value.dayworkId = store.dayworkInfo.id;
|
|
|
|
- // 设置周转下一个车间名
|
|
|
|
- for (let i = 0; i < deptList.value.length; i++) {
|
|
|
|
- if (deptList.value[i].deptId == curDayworkItem.value.deptId) {
|
|
|
|
- curDayworkItem.value.deptName = deptList.value[i].deptName;
|
|
|
|
|
|
+ //console.log(dayworkInfo.value)
|
|
|
|
+ curDayworkItem.value.id = null;
|
|
|
|
+ curDayworkItem.value.status = curDayworkItem.value.turnoverType == '1' ? '7' : '4';
|
|
|
|
+ curDayworkItem.value.startTime = timestampToTime(new Date());
|
|
|
|
+ curDayworkItem.value.endTime = timestampToTime(new Date());
|
|
|
|
+ curDayworkItem.value.technologicalProcessId = dayworkInfo.value.technologicalProcessId;
|
|
|
|
+ curDayworkItem.value.dayworkId = dayworkInfo.value.id;
|
|
|
|
+ curDayworkItem.value.productionPlanDetailId = dayworkInfo.value.productionPlanDetailId;
|
|
|
|
+ if (!store.tenantId) {
|
|
|
|
+ curDayworkItem.value.tenantId = store.userInfo.tenantId;
|
|
|
|
+ } else {
|
|
|
|
+ curDayworkItem.value.tenantId = store.tenantId;
|
|
}
|
|
}
|
|
- }
|
|
|
|
- // console.log(curDayworkItem.value);
|
|
|
|
- // console.log(dayworkInfo.value)
|
|
|
|
- if (!handleValidate(curDayworkItem.value)) {
|
|
|
|
- uni.showToast({
|
|
|
|
- icon: "none",
|
|
|
|
- title: '请选择完整信息'
|
|
|
|
- });
|
|
|
|
- } else {
|
|
|
|
- close();
|
|
|
|
- turnover(curDayworkItem.value).then(res => {
|
|
|
|
- if (res.code === 200) {
|
|
|
|
- uni.showToast({
|
|
|
|
- icon: 'success',
|
|
|
|
- title: '操作成功'
|
|
|
|
- });
|
|
|
|
- emit('reflushDaywork');
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ // 过滤出周转位置的数组,并转换成字符串
|
|
|
|
+ const newArray = selection.value.map((item) => {
|
|
|
|
+ if (item.code) {
|
|
|
|
+ return item.code;
|
|
|
|
+ } else if (item.dictLabel) {
|
|
|
|
+ return item.dictLabel;
|
|
} else {
|
|
} else {
|
|
- uni.showToast({
|
|
|
|
- icon: 'none',
|
|
|
|
- title: '操作失败'
|
|
|
|
- });
|
|
|
|
|
|
+ return null;
|
|
}
|
|
}
|
|
})
|
|
})
|
|
|
|
+ if (curDayworkItem.value.turnoverType == '1') {
|
|
|
|
+ curDayworkItem.value.place = newArray.join('、');
|
|
|
|
+ curDayworkItem.value.turnoverArea = "车间内周转看place字段";
|
|
|
|
+ } else {
|
|
|
|
+ curDayworkItem.value.turnoverArea = newArray.join('、');
|
|
|
|
+ }
|
|
|
|
+ // curDayworkItem.value.dayworkId = store.dayworkInfo.id;
|
|
|
|
+ // 设置周转下一个车间名
|
|
|
|
+ for (let i = 0; i < deptList.value.length; i++) {
|
|
|
|
+ if (deptList.value[i].deptId == curDayworkItem.value.deptId) {
|
|
|
|
+ curDayworkItem.value.deptName = deptList.value[i].deptName;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ // console.log(curDayworkItem.value);
|
|
|
|
+ // console.log(dayworkInfo.value)
|
|
|
|
+ if (!handleValidate(curDayworkItem.value)) {
|
|
|
|
+ uni.showToast({
|
|
|
|
+ icon: "none",
|
|
|
|
+ title: '请选择完整信息'
|
|
|
|
+ });
|
|
|
|
+ } else {
|
|
|
|
+ close();
|
|
|
|
+ turnover(curDayworkItem.value).then(res => {
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
+ uni.showToast({
|
|
|
|
+ icon: 'success',
|
|
|
|
+ title: '操作成功'
|
|
|
|
+ });
|
|
|
|
+ emit('reflushDaywork');
|
|
|
|
+ } else {
|
|
|
|
+ uni.showToast({
|
|
|
|
+ icon: 'none',
|
|
|
|
+ title: '操作失败'
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ // emit('confirm');
|
|
}
|
|
}
|
|
- // emit('confirm');
|
|
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
function handleChangeInside() {
|
|
function handleChangeInside() {
|
|
@@ -281,11 +333,10 @@
|
|
}
|
|
}
|
|
})
|
|
})
|
|
}
|
|
}
|
|
-
|
|
|
|
- function handleChangeOutside(){
|
|
|
|
|
|
+
|
|
|
|
+ function handleChangeOutside() {
|
|
//console.log(curDayworkItem.value.deptId)
|
|
//console.log(curDayworkItem.value.deptId)
|
|
}
|
|
}
|
|
-
|
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style lang="scss">
|
|
<style lang="scss">
|