|
|
@@ -19,7 +19,10 @@
|
|
|
</van-nav-bar>
|
|
|
<div class="mode">
|
|
|
<div class="mode-input-box">
|
|
|
- <div class="mode-input-text">请扫描盲收任务号</div>
|
|
|
+ <div class="mode-input-text">
|
|
|
+ <div>请扫描盲收任务号</div>
|
|
|
+ <div class="mode-task" @click="createTask">创建盲收任务</div>
|
|
|
+ </div>
|
|
|
<van-field class="mode-input" ref="taskNoRef"
|
|
|
:style="taskNo!==''?'border: 2px solid #07c160':''" clearable v-model="taskNo"
|
|
|
placeholder="请扫描盲收任务号"
|
|
|
@@ -62,6 +65,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<task-list ref="taskListRef" @selectMode="_selectMode" />
|
|
|
+ <owner ref="ownerRef" @onOwner="onOwner" />
|
|
|
</div>
|
|
|
</template>
|
|
|
<script setup>
|
|
|
@@ -69,10 +73,13 @@ import { androidFocus, getHeader, goBack, scanError, scanSuccess } from '@/utils
|
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
|
import { onMounted, onUnmounted, ref } from 'vue'
|
|
|
import { closeListener, openListener, scanInit } from '@/utils/keydownListener.js'
|
|
|
-import { getBlindTask, getBlindTaskList, getMovingTask, setBlindTaskMode } from '@/api/blind/index.ts'
|
|
|
+import { createBlindTask, getBlindTask, getBlindTaskList, getMovingTask, setBlindTaskMode } from '@/api/blind/index.ts'
|
|
|
import { showConfirmDialog, showToast } from 'vant'
|
|
|
import TaskList from '@/views/inbound/blindCollection/components/TaskList.vue'
|
|
|
import { closeLoading, showLoading } from '@/utils/loading.ts'
|
|
|
+import Owner from '@/components/Owner.vue'
|
|
|
+import { useStore } from '@/store/modules/user.ts'
|
|
|
+const store = useStore()
|
|
|
const route = useRoute()
|
|
|
const router = useRouter()
|
|
|
//任务号
|
|
|
@@ -92,6 +99,7 @@ try {
|
|
|
}catch (error) {
|
|
|
router.push('/login')
|
|
|
}
|
|
|
+const warehouse = store.warehouse
|
|
|
onUnmounted(() => {
|
|
|
closeListener()
|
|
|
})
|
|
|
@@ -130,27 +138,21 @@ const _getBlindTask=()=>{
|
|
|
return
|
|
|
}
|
|
|
taskModel.value={}
|
|
|
- let url=getBlindTask,data={taskNo:taskNo.value},type=0
|
|
|
+ let url=getBlindTask,data={taskNo:taskNo.value}
|
|
|
showLoading()
|
|
|
url(data).then(res=>{
|
|
|
scanSuccess()
|
|
|
taskModel.value=res.data
|
|
|
//盲收任务
|
|
|
if(res.message=='找不到此盲收任务'){
|
|
|
- if(taskNo.value.startsWith("P")) {
|
|
|
- taskModel.value={
|
|
|
- typeCode:undefined,
|
|
|
- code:taskNo.value,
|
|
|
- warehouseCode:undefined,
|
|
|
- ownerCode:undefined
|
|
|
- }
|
|
|
- showToast({duration:5000,message:'该任务未绑定模式,请选择模式!'})
|
|
|
- return
|
|
|
- }else {
|
|
|
- taskModel.value={}
|
|
|
- showToast({duration:5000,message:'找不到此盲收任务'})
|
|
|
- return
|
|
|
+ taskModel.value={
|
|
|
+ typeCode:undefined,
|
|
|
+ code:taskNo.value,
|
|
|
+ warehouseCode:warehouse,
|
|
|
+ ownerCode:undefined
|
|
|
}
|
|
|
+ showToast({duration:5000,message:'该任务未绑定模式,请选择模式!'})
|
|
|
+ return
|
|
|
}else if(res.data && res.data.type){
|
|
|
link(res.data.code,res.data.typeCode)
|
|
|
closeLoading()
|
|
|
@@ -169,8 +171,10 @@ const modeMap={
|
|
|
5:'按箱清点+分货',
|
|
|
}
|
|
|
//设置盲收任务类型
|
|
|
+const selectType=ref(0)
|
|
|
+const ownerItem=ref({})
|
|
|
const onSelect=(type)=>{
|
|
|
-
|
|
|
+ selectType.value=type
|
|
|
if(taskNo.value===''){
|
|
|
showToast({duration:5000,message:'请先扫描盲收任务号'})
|
|
|
return
|
|
|
@@ -179,13 +183,19 @@ const onSelect=(type)=>{
|
|
|
showToast({duration:5000,message:'未检测到任务,请检查任务号是否正确!'})
|
|
|
return
|
|
|
}
|
|
|
- const {typeCode,code,warehouseCode,ownerCode}=taskModel.value
|
|
|
+ const {typeCode,code,warehouseCode,ownerCode,ownerName}=taskModel.value
|
|
|
+ if(ownerCode==undefined){
|
|
|
+ ownerItem.value={}
|
|
|
+ ownerRef.value?.show(1)
|
|
|
+ return
|
|
|
+ }
|
|
|
if(typeCode){
|
|
|
link(code,typeCode)
|
|
|
return
|
|
|
}
|
|
|
+// 《${ownerName ?? ownerItem.value.name}》
|
|
|
showConfirmDialog({
|
|
|
- title: '温馨提示',
|
|
|
+ title:`温馨提示`,
|
|
|
message:
|
|
|
`是否将盲收任务:${taskNo.value},设置为:${modeMap[type]}`,
|
|
|
})
|
|
|
@@ -229,6 +239,39 @@ const onClickRight = () => {
|
|
|
})
|
|
|
|
|
|
};
|
|
|
+const ownerRef=ref(null)
|
|
|
+const onOwner=(item,type)=>{
|
|
|
+ if(type==1){
|
|
|
+ ownerItem.value=item
|
|
|
+ taskModel.value.ownerCode=item.code
|
|
|
+ onSelect(selectType.value)
|
|
|
+ }else if(type==2){
|
|
|
+ showConfirmDialog({
|
|
|
+ title:`创建盲收任务`,
|
|
|
+ message:
|
|
|
+ `货主:《${item.name}》--是否创建盲收任务?`,
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ const params={
|
|
|
+ type:'盲收',
|
|
|
+ warehouseCode:warehouse,
|
|
|
+ ownerCode:item.code,
|
|
|
+ }
|
|
|
+ showLoading()
|
|
|
+ createBlindTask(params).then(res=>{
|
|
|
+ taskNo.value=res.data
|
|
|
+ _getBlindTask()
|
|
|
+ closeLoading()
|
|
|
+ }).catch(err=>{
|
|
|
+ closeLoading()
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+const createTask=()=>{
|
|
|
+ ownerRef.value?.show(2)
|
|
|
+}
|
|
|
|
|
|
</script>
|
|
|
<style scoped lang="sass">
|
|
|
@@ -236,10 +279,18 @@ const onClickRight = () => {
|
|
|
.mode-input-box
|
|
|
padding: 10px 5px
|
|
|
.mode-input-text
|
|
|
+ display: flex
|
|
|
+ justify-content: space-between
|
|
|
+ align-items: center
|
|
|
font-size: 18px
|
|
|
font-weight: bold
|
|
|
margin: 10px 0
|
|
|
-
|
|
|
+ padding: 5px 0
|
|
|
+ .mode-task
|
|
|
+ color: #0077ff
|
|
|
+ font-size: 14px
|
|
|
+ text-decoration: underline
|
|
|
+ justify-content: right
|
|
|
.mode-input
|
|
|
background: #eff0f2
|
|
|
padding: 10px 20px
|
|
|
@@ -278,4 +329,5 @@ const onClickRight = () => {
|
|
|
font-size: 14px
|
|
|
color: #666
|
|
|
|
|
|
+
|
|
|
</style>
|