更新
This commit is contained in:
parent
c982e885b6
commit
d643900fe6
BIN
dist (2).zip
Normal file
BIN
dist (2).zip
Normal file
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<!-- <el-card class="!border-none" shadow="never">
|
||||
<el-card class="!border-none" shadow="never">
|
||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||
<el-form-item label="负责人名称" prop="name">
|
||||
<el-input
|
||||
@ -26,10 +26,11 @@
|
||||
<el-button @click="resetParams">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card> -->
|
||||
</el-card>
|
||||
<el-card class="!border-none" v-loading="pager.loading" shadow="never">
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @cell-click="handleCurrentChange">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="账号" prop="account" min-width="120" />
|
||||
<el-table-column label="头像" prop="avatar" min-width="80">
|
||||
<template #default="{ row }">
|
||||
@ -60,6 +61,15 @@
|
||||
<div class="flex mt-4 justify-end">
|
||||
<pagination v-model="pager" @change="getLists" />
|
||||
</div>
|
||||
|
||||
<template #footer>
|
||||
<div style="float: right;">
|
||||
<el-button @click="offPop">取消</el-button>
|
||||
<el-button type="primary" @click="handleCurrentChange">确定</el-button>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
</el-card>
|
||||
</div>
|
||||
</template>
|
||||
@ -81,7 +91,9 @@ const { optionsData } = useDictOptions<{
|
||||
});
|
||||
// 查询条件
|
||||
const queryParams = reactive({
|
||||
company_id: "",
|
||||
nickname:"",
|
||||
role_id:""
|
||||
|
||||
});
|
||||
const props = defineProps({
|
||||
company_id: {
|
||||
@ -89,15 +101,27 @@ const props = defineProps({
|
||||
defaults: 0,
|
||||
},
|
||||
});
|
||||
queryParams.company_id = props.company_id;
|
||||
// queryParams.company_id = props.company_id;
|
||||
|
||||
// 选中数据
|
||||
const emits = defineEmits(["customEvent"]);
|
||||
|
||||
// 选中数据
|
||||
const selectData = ref<any[]>([])
|
||||
|
||||
// 表格选择后回调事件
|
||||
const handleSelectionChange = (val: any[]) => {
|
||||
selectData.value = val.map((item) => ( {id:item.id,nickName:item.nickname} ))
|
||||
}
|
||||
const emits = defineEmits(["customEvent",'off']);
|
||||
|
||||
// 选中数据子父传递
|
||||
const handleCurrentChange = (value: any) => {
|
||||
emits("customEvent", value);
|
||||
const handleCurrentChange = () => {
|
||||
|
||||
emits("customEvent", selectData);
|
||||
};
|
||||
const offPop=()=> (
|
||||
emits("off")
|
||||
)
|
||||
|
||||
// 分页相关
|
||||
const { pager, getLists, resetParams, resetPage } = usePaging({
|
||||
|
@ -15,14 +15,14 @@
|
||||
<!-- <el-select v-model="formData.type" clearable placeholder="请输入任务类型" @change="changeTaskType" style="width:100%">
|
||||
<el-option v-for="(item, index) in roleTypeList" :key="item" :value="item.id" :label="item.name" />
|
||||
</el-select> -->
|
||||
<el-input placeholder="请输入任务名称" v-model="formData.title" />
|
||||
<el-input placeholder="请输入任务名称" v-model="formData.title" />
|
||||
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="任务下发时间" prop="cron_time">
|
||||
<el-date-picker format="YYYY/MM/DD" value-format="YYYY-MM-DD" :disabled="mode != 'add'" v-model="formData.cron_time" type="date"
|
||||
placeholder="请选择时间" style="width: 50vw;" />
|
||||
</el-form-item> -->
|
||||
|
||||
|
||||
<!-- <el-form-item
|
||||
v-if="formData.type == 32"
|
||||
label="起点"
|
||||
@ -41,8 +41,8 @@
|
||||
<el-form-item v-if="formData.type == 32" label="终点" @click="changeMap(2)" prop="extend.terminus.address">
|
||||
<el-input placeholder="请选择终点" readonly :value="formData.extend?.terminus?.address" />
|
||||
</el-form-item> -->
|
||||
<el-form-item label="负责人" prop="director_uid" @click="clickTaskAdmin">
|
||||
<el-input placeholder="请选择负责人" :disabled="mode !='add'" readonly v-model="formData.task_admin_name" />
|
||||
<el-form-item label="负责人" prop="director_uid" @click="clickTaskAdmin">
|
||||
<el-input placeholder="请选择负责人" :disabled="mode != 'add'" readonly v-model="formData.task_admin_name" />
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="阶段类型" prop="types">
|
||||
<div>
|
||||
@ -102,19 +102,19 @@
|
||||
<el-radio :label="2">显示</el-radio>
|
||||
<el-radio :label="5">隐藏</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
<el-form-item label="完成时间" prop="end_time">
|
||||
<el-date-picker format="YYYY/MM/DD" value-format="YYYY-MM-DD" :disabled="mode != 'add'" v-model="formData.end_time" type="date"
|
||||
placeholder="请选择时间" style="width: 50vw;" />
|
||||
<el-date-picker format="YYYY/MM/DD" value-format="YYYY-MM-DD" :disabled="mode != 'add'"
|
||||
v-model="formData.end_time" type="date" placeholder="请选择时间" style="width: 50vw;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="任务描述" prop="content">
|
||||
<el-input v-model="formData.content" clearable placeholder="请输入任务描述" type="textarea"
|
||||
autosize />
|
||||
<el-input v-model="formData.content" clearable placeholder="请输入任务描述" type="textarea" autosize />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<taskMap v-if="mapShow" ref="mapRef" @success="setMap" @close=""></taskMap>
|
||||
<el-dialog v-model="personnelShow" ref="personnelRef" title="选择负责人" width="60%">
|
||||
<personnelPopup @custom-event="changePersonner" :company_id="formData.company_id"></personnelPopup>
|
||||
<personnelPopup @custom-event="changePersonner" @off="personnelShow = false" :company_id="formData.company_id">
|
||||
</personnelPopup>
|
||||
</el-dialog>
|
||||
</popup>
|
||||
</div>
|
||||
@ -129,7 +129,7 @@ import {
|
||||
apiTaskTemplateDetail,
|
||||
apiTaskTypeList,
|
||||
} from "@/api/task_template";
|
||||
import {addTask,taskList,editTask} from "@/api/newTask"
|
||||
import { addTask, taskList, editTask } from "@/api/newTask"
|
||||
|
||||
|
||||
import { apiSelectList, apiCreatetaskTypeInfo } from '@/api/create_task_template'
|
||||
@ -168,14 +168,14 @@ const formData = reactive({
|
||||
status: "",
|
||||
content: "",
|
||||
// cron_time: "",//任务下发时间
|
||||
end_time:"",//任务完成时间
|
||||
end_time: "",//任务完成时间
|
||||
// stage_day_one: 0,
|
||||
// money: 0, // 一阶段金额
|
||||
// stage_day_two: 0,
|
||||
// money_two: 0, // 二阶段金额
|
||||
// money_three: 0, // 长期金额
|
||||
// types: "", //阶段类型
|
||||
director_uid: "", //任务负责人
|
||||
director_uid: [], //任务负责人
|
||||
task_admin_name: "", //任务负责人
|
||||
// recharge: "",
|
||||
// extend: {
|
||||
@ -206,9 +206,9 @@ if (route.query.company_type == 18) {
|
||||
const roleTypeList = ref('')
|
||||
|
||||
// 任务类型接口
|
||||
apiTaskTypeList({ type_value: type_value}).then((res) => {
|
||||
apiTaskTypeList({ type_value: type_value }).then((res) => {
|
||||
datalist.value = res.lists;
|
||||
roleTypeList.value=res.lists
|
||||
roleTypeList.value = res.lists
|
||||
});
|
||||
|
||||
// 表单验证
|
||||
@ -419,8 +419,13 @@ const setMap = (e: any) => {
|
||||
const personnelShow = ref(false);
|
||||
const personnelRef = shallowRef<InstanceType<typeof personnelPopup>>();
|
||||
const changePersonner = (e: any) => {
|
||||
formData.director_uid = e.id;
|
||||
formData.task_admin_name = e.nickname;
|
||||
const transformedArr = e.value.reduce((acc:any, obj:any) => {
|
||||
acc[0].push(obj.id);
|
||||
acc[1].push(obj.nickName);
|
||||
return acc;
|
||||
}, [[], []]);
|
||||
formData.director_uid = transformedArr[0];
|
||||
formData.task_admin_name = transformedArr[1].join(',');
|
||||
personnelShow.value = false;
|
||||
};
|
||||
|
||||
@ -433,11 +438,11 @@ const handleSubmit = async () => {
|
||||
await formRef.value?.validate();
|
||||
const data = { ...formData };
|
||||
|
||||
const {title,content,status,id}=data
|
||||
const { title, content, status, id } = data
|
||||
|
||||
// if (data.type != 32) data.extend = {}; // 不为三轮车任务时,过滤三轮车配置
|
||||
mode.value == "edit"
|
||||
? await editTask({title,content,status,id})
|
||||
? await editTask({ title, content, status, id })
|
||||
: await addTask(data);
|
||||
popupRef.value?.close();
|
||||
emit("success");
|
||||
@ -461,7 +466,7 @@ defineExpose({
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
.el-input__wrapper{
|
||||
.el-input__wrapper {
|
||||
width: 100% !important;
|
||||
}
|
||||
</style>
|
||||
|
Loading…
x
Reference in New Issue
Block a user