|
|
@ -40,12 +40,11 @@ |
|
|
|
:disabled="isEdit" |
|
|
|
:disabled="isEdit" |
|
|
|
:options="mapState.hospitalList" |
|
|
|
:options="mapState.hospitalList" |
|
|
|
@select="handleCourierUserSearch" |
|
|
|
@select="handleCourierUserSearch" |
|
|
|
@change="handleCreateSendOrderTask" |
|
|
|
|
|
|
|
/> |
|
|
|
/> |
|
|
|
<ASelect v-model:value="mapState.mapData.sendOrderTaskType" |
|
|
|
<ASelect v-model:value="mapState.mapData.sendOrderTaskType" |
|
|
|
style="width: 30%" |
|
|
|
style="width: 30%" |
|
|
|
:disabled="isEdit" |
|
|
|
:disabled="isEdit" |
|
|
|
@change="handleCreateSendOrderTask" |
|
|
|
@change="mapState.mapData.sendOrderTaskType && formClearValidate('sendOrderId')" |
|
|
|
> |
|
|
|
> |
|
|
|
<ASelectOption key="0">普通任务</ASelectOption> |
|
|
|
<ASelectOption key="0">普通任务</ASelectOption> |
|
|
|
<ASelectOption key="1">交接任务</ASelectOption> |
|
|
|
<ASelectOption key="1">交接任务</ASelectOption> |
|
|
@ -512,6 +511,31 @@ |
|
|
|
immediate: true, |
|
|
|
immediate: true, |
|
|
|
deep: true |
|
|
|
deep: true |
|
|
|
}); |
|
|
|
}); |
|
|
|
|
|
|
|
watch([() => mapState.mapData.sendOrderId, () => mapState.mapData.sendOrderTaskType], |
|
|
|
|
|
|
|
([sendOrderIdValue,sendOrderTaskTypeValue], [sendOrderIdOldValue, sendOrderTaskTypeOldValue]) => { |
|
|
|
|
|
|
|
if (!sendOrderIdValue || !sendOrderTaskTypeValue) return; |
|
|
|
|
|
|
|
if (isEmpty(mapState.mapData.mapTask)) { |
|
|
|
|
|
|
|
mapState.mapData.mapTask.push({ |
|
|
|
|
|
|
|
name: '系统创建:发单任务', |
|
|
|
|
|
|
|
hospitalId: sendOrderIdValue, |
|
|
|
|
|
|
|
taskType: sendOrderTaskTypeValue, |
|
|
|
|
|
|
|
orgId: '', |
|
|
|
|
|
|
|
orgName: ~~sendOrderTaskTypeValue ? '' : '等待收样员设置!', |
|
|
|
|
|
|
|
sort: 1, |
|
|
|
|
|
|
|
fileId: [], |
|
|
|
|
|
|
|
key: buildUUID() |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
const mapTask = mapState.mapData.mapTask |
|
|
|
|
|
|
|
.filter(item => item.taskType == sendOrderTaskTypeOldValue) |
|
|
|
|
|
|
|
.find(item => item.sort == 1); |
|
|
|
|
|
|
|
mapTask && Object.assign(mapTask, { |
|
|
|
|
|
|
|
hospitalId: sendOrderIdValue, |
|
|
|
|
|
|
|
taskType: sendOrderTaskTypeValue |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
handleMapPointGenerate(); |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
/** 处理切换操作面板 */ |
|
|
|
/** 处理切换操作面板 */ |
|
|
|
function toggleOperatePanel() { |
|
|
|
function toggleOperatePanel() { |
|
|
@ -560,31 +584,6 @@ |
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** 处理创建首个发单任务 */ |
|
|
|
|
|
|
|
function handleCreateSendOrderTask() { |
|
|
|
|
|
|
|
if (!mapState.mapData.sendOrderId || !mapState.mapData.sendOrderTaskType) return; |
|
|
|
|
|
|
|
if (isEmpty(mapState.mapData.mapTask)) { |
|
|
|
|
|
|
|
mapState.mapData.mapTask.push({ |
|
|
|
|
|
|
|
name: '系统创建:发单任务', |
|
|
|
|
|
|
|
hospitalId: mapState.mapData.sendOrderId, |
|
|
|
|
|
|
|
taskType: mapState.mapData.sendOrderTaskType, |
|
|
|
|
|
|
|
orgId: '', |
|
|
|
|
|
|
|
orgName: ~~mapState.mapData.sendOrderTaskType ? '' : '等待收样员设置!', |
|
|
|
|
|
|
|
sort: 1, |
|
|
|
|
|
|
|
fileId: [], |
|
|
|
|
|
|
|
key: buildUUID() |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
const mapTask = mapState.mapData.mapTask.filter(item => |
|
|
|
|
|
|
|
item.taskType == mapState.mapData.sendOrderTaskType).find(item => item.sort == 1); |
|
|
|
|
|
|
|
mapTask && Object.assign(mapTask, { |
|
|
|
|
|
|
|
hospitalId: mapState.mapData.sendOrderId, |
|
|
|
|
|
|
|
taskType: mapState.mapData.sendOrderTaskType |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
handleMapPointGenerate(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** 处理起点收样员数据 */ |
|
|
|
/** 处理起点收样员数据 */ |
|
|
|
function handleCourierUserData(value) { |
|
|
|
function handleCourierUserData(value) { |
|
|
|
const courierUserMap = mapState.courierUserList.find(item => item.value == value); |
|
|
|
const courierUserMap = mapState.courierUserList.find(item => item.value == value); |
|
|
@ -592,6 +591,7 @@ |
|
|
|
mapState.mapData.courierUserName = courierUserMap.label; |
|
|
|
mapState.mapData.courierUserName = courierUserMap.label; |
|
|
|
mapState.mapData.courierLng = courierUserMap.mapLng; |
|
|
|
mapState.mapData.courierLng = courierUserMap.mapLng; |
|
|
|
mapState.mapData.courierLat = courierUserMap.mapLat; |
|
|
|
mapState.mapData.courierLat = courierUserMap.mapLat; |
|
|
|
|
|
|
|
drawMapNavigate(mapState.mapData.mapLogisticPoint); |
|
|
|
} else notification.warn({ |
|
|
|
} else notification.warn({ |
|
|
|
message: '查找不到起点数据,请检查起点!', |
|
|
|
message: '查找不到起点数据,请检查起点!', |
|
|
|
duration: 2 |
|
|
|
duration: 2 |
|
|
@ -601,8 +601,9 @@ |
|
|
|
/** 处理打开任务配置 */ |
|
|
|
/** 处理打开任务配置 */ |
|
|
|
async function handleOpenMapTask() { |
|
|
|
async function handleOpenMapTask() { |
|
|
|
await formElRef.value.validate(); |
|
|
|
await formElRef.value.validate(); |
|
|
|
if(!mapState.mapData.mapTask.filter(item => |
|
|
|
if(!mapState.mapData.mapTask |
|
|
|
item.taskType == mapState.mapData.sendOrderTaskType).find(item => item.sort == 1)) { |
|
|
|
.filter(item => item.taskType == mapState.mapData.sendOrderTaskType) |
|
|
|
|
|
|
|
.find(item => item.sort == 1)) { |
|
|
|
notification.error({ |
|
|
|
notification.error({ |
|
|
|
message: '致命错误', |
|
|
|
message: '致命错误', |
|
|
|
description: `检测到任务列表中首个${~~mapState.mapData.sendOrderTaskType ? '普通' : '交接'}任务对应发单数据错误,请联系开发人员!`, |
|
|
|
description: `检测到任务列表中首个${~~mapState.mapData.sendOrderTaskType ? '普通' : '交接'}任务对应发单数据错误,请联系开发人员!`, |
|
|
@ -665,6 +666,11 @@ |
|
|
|
return cloneDeep(mapState.mapData); |
|
|
|
return cloneDeep(mapState.mapData); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** 获取部件表单数据 */ |
|
|
|
|
|
|
|
function formClearValidate(fields: string[] | string) { |
|
|
|
|
|
|
|
return formElRef.value.clearValidate(fields); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** 绘制地图导航路线 */ |
|
|
|
/** 绘制地图导航路线 */ |
|
|
|
function drawMapNavigate(points: Recordable[] = []) { |
|
|
|
function drawMapNavigate(points: Recordable[] = []) { |
|
|
|
points = points.filter(item => item.lng && item.lat); |
|
|
|
points = points.filter(item => item.lng && item.lat); |
|
|
|