|
|
@ -8,8 +8,8 @@ |
|
|
|
<div class="app-container"> |
|
|
|
<div class="app-container"> |
|
|
|
<!-- 搜索工作栏 --> |
|
|
|
<!-- 搜索工作栏 --> |
|
|
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> |
|
|
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> |
|
|
|
<el-form-item label="任务名" prop="name"> |
|
|
|
<el-form-item label="任务名" prop="taskCateId"> |
|
|
|
<el-input v-model="queryParams.name" placeholder="请输入" clearable @keyup.enter.native="handleQuery"/> |
|
|
|
<el-input v-model="queryParams.taskCateId" placeholder="请输入" clearable @keyup.enter.native="handleQuery"/> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="资源名" prop="resources"> |
|
|
|
<el-form-item label="资源名" prop="resources"> |
|
|
|
<el-input v-model="queryParams.resources" placeholder="请输入" clearable @keyup.enter.native="handleQuery"/> |
|
|
|
<el-input v-model="queryParams.resources" placeholder="请输入" clearable @keyup.enter.native="handleQuery"/> |
|
|
@ -65,8 +65,16 @@ |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="作物数量" align="center" prop="cropNum" /> |
|
|
|
<el-table-column label="作物数量" align="center" prop="cropNum" /> |
|
|
|
<el-table-column label="任务名" align="center" prop="name" /> |
|
|
|
<el-table-column label="任务名" align="center" prop="taskCateId" > |
|
|
|
<el-table-column label="任务内容" align="center" prop="content" /> |
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
|
|
<span> {{cateOneList.find(t=>t.id == scope.row.taskCateId ).name}} </span> |
|
|
|
|
|
|
|
</template> |
|
|
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
|
|
<el-table-column label="任务内容" align="center" prop="taskCateName" > |
|
|
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
|
|
<span> {{cateTwoList.find(t=>t.id == scope.row.taskCateName ).name}} </span> |
|
|
|
|
|
|
|
</template> |
|
|
|
|
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="需要的资源" align="center" prop="resources" /> |
|
|
|
<el-table-column label="需要的资源" align="center" prop="resources" /> |
|
|
|
<el-table-column label="工时" align="center" prop="workingHours" /> |
|
|
|
<el-table-column label="工时" align="center" prop="workingHours" /> |
|
|
|
|
|
|
|
|
|
|
@ -164,13 +172,30 @@ |
|
|
|
<el-form-item label="作物数量" prop="cropNum"> |
|
|
|
<el-form-item label="作物数量" prop="cropNum"> |
|
|
|
<el-input v-model="form.cropNum" placeholder="请输入"/> |
|
|
|
<el-input v-model="form.cropNum" placeholder="请输入"/> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="任务名" prop="name"> |
|
|
|
|
|
|
|
<el-input v-model="form.name" placeholder="请输入" /> |
|
|
|
<el-form-item label="任务类型" prop="taskCateId"> |
|
|
|
</el-form-item> |
|
|
|
<el-select v-model="form.taskCateId" placeholder="请选择" @change="changeCateOne"> |
|
|
|
<el-form-item label="任务内容" prop="content"> |
|
|
|
<el-option |
|
|
|
<editor v-model="form.content" :min-height="192"/> |
|
|
|
v-for="item in cateOneList" |
|
|
|
|
|
|
|
:key="item.id" |
|
|
|
|
|
|
|
:label="item.name" |
|
|
|
|
|
|
|
:value="item.id"> |
|
|
|
|
|
|
|
{{item.name}} |
|
|
|
|
|
|
|
</el-option> |
|
|
|
|
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item label="任务内容" prop="taskCateName"> |
|
|
|
|
|
|
|
<el-select v-model="form.taskCateName" placeholder="请选择"> |
|
|
|
|
|
|
|
<el-option |
|
|
|
|
|
|
|
v-for="item in cateTwoList" |
|
|
|
|
|
|
|
:key="item.id" |
|
|
|
|
|
|
|
:label="item.name" |
|
|
|
|
|
|
|
:value="item.id"> |
|
|
|
|
|
|
|
{{item.name}} |
|
|
|
|
|
|
|
</el-option> |
|
|
|
|
|
|
|
</el-select> |
|
|
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
|
|
<div v-for="(item,index) in resourceTypeList" :key="index"> |
|
|
|
<div v-for="(item,index) in resourceTypeList" :key="index"> |
|
|
|
<el-form-item label="资源选择"> |
|
|
|
<el-form-item label="资源选择"> |
|
|
@ -194,10 +219,10 @@ |
|
|
|
<imageUpload v-model="form.images"/> |
|
|
|
<imageUpload v-model="form.images"/> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="任务开始时间" prop="planStartTime"> |
|
|
|
<el-form-item label="任务开始时间" prop="planStartTime"> |
|
|
|
<el-date-picker clearable v-model="form.planStartTime" type="date" value-format="timestamp" placeholder="选择" /> |
|
|
|
<el-date-picker clearable v-model="form.planStartTime" type="datetime" value-format="timestamp" placeholder="选择" /> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="任务结束时间" prop="planEndTime"> |
|
|
|
<el-form-item label="任务结束时间" prop="planEndTime"> |
|
|
|
<el-date-picker clearable v-model="form.planEndTime" type="date" value-format="timestamp" placeholder="选择" /> |
|
|
|
<el-date-picker clearable v-model="form.planEndTime" type="datetime" value-format="timestamp" placeholder="选择" /> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="优先级" prop="weight"> |
|
|
|
<el-form-item label="优先级" prop="weight"> |
|
|
|
<el-input v-model="form.weight" placeholder="请输入优先级" /> |
|
|
|
<el-input v-model="form.weight" placeholder="请输入优先级" /> |
|
|
@ -219,6 +244,7 @@ import { getResourcePage } from "@/api/farm/resource"; |
|
|
|
import { getProjectPage} from "@/api/farm/project"; |
|
|
|
import { getProjectPage} from "@/api/farm/project"; |
|
|
|
import { getCropPage} from "@/api/farm/crop"; |
|
|
|
import { getCropPage} from "@/api/farm/crop"; |
|
|
|
import { getResourceTypePage} from "@/api/farm/resourceType"; |
|
|
|
import { getResourceTypePage} from "@/api/farm/resourceType"; |
|
|
|
|
|
|
|
import { getTaskCatePage} from "@/api/farm/taskCate" |
|
|
|
import { getCpUserPage} from "@/api/system/cpUser" |
|
|
|
import { getCpUserPage} from "@/api/system/cpUser" |
|
|
|
import { values } from 'min-dash'; |
|
|
|
import { values } from 'min-dash'; |
|
|
|
|
|
|
|
|
|
|
@ -251,8 +277,8 @@ export default { |
|
|
|
queryParams: { |
|
|
|
queryParams: { |
|
|
|
pageNo: 1, |
|
|
|
pageNo: 1, |
|
|
|
pageSize: 10, |
|
|
|
pageSize: 10, |
|
|
|
name: null, |
|
|
|
taskCateId: null, |
|
|
|
content: null, |
|
|
|
taskCateName: null, |
|
|
|
resources: null, |
|
|
|
resources: null, |
|
|
|
images: null, |
|
|
|
images: null, |
|
|
|
weight: null, |
|
|
|
weight: null, |
|
|
@ -267,11 +293,10 @@ export default { |
|
|
|
rules: { |
|
|
|
rules: { |
|
|
|
projectId: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
projectId: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
mainPerson: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
mainPerson: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
executorPerson: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
|
|
|
|
cropId: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
cropId: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
cropNum: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
cropNum: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
name: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
taskCateId: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
content: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
taskCateName: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
workingHours: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
workingHours: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
planStartTime: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
planStartTime: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
planEndTime: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
|
planEndTime: [{ required: true, message: "不能为空", trigger: "blur" }], |
|
|
@ -292,7 +317,14 @@ export default { |
|
|
|
|
|
|
|
|
|
|
|
cpUserList:[], |
|
|
|
cpUserList:[], |
|
|
|
selectExecutorPerson:[], |
|
|
|
selectExecutorPerson:[], |
|
|
|
executorPerson:[] |
|
|
|
executorPerson:[], |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
taskCateAllList:[], //未组装的 |
|
|
|
|
|
|
|
taskCateList:[], //组装好的 |
|
|
|
|
|
|
|
selectTaskCateList: [],//选择的 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cateOneList:[], |
|
|
|
|
|
|
|
cateTwoList:[], |
|
|
|
|
|
|
|
|
|
|
|
}; |
|
|
|
}; |
|
|
|
}, |
|
|
|
}, |
|
|
@ -302,8 +334,33 @@ export default { |
|
|
|
this.getProjectList(); |
|
|
|
this.getProjectList(); |
|
|
|
this.getCpUserList(); |
|
|
|
this.getCpUserList(); |
|
|
|
this.getCropList(); |
|
|
|
this.getCropList(); |
|
|
|
|
|
|
|
this.getTaskCateList(); |
|
|
|
}, |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
methods: { |
|
|
|
|
|
|
|
getTaskCateList(){ |
|
|
|
|
|
|
|
getTaskCatePage({ |
|
|
|
|
|
|
|
pageNo: 1, |
|
|
|
|
|
|
|
pageSize: 100 |
|
|
|
|
|
|
|
}).then(res=>{ |
|
|
|
|
|
|
|
this.taskCateList = res.data.list; |
|
|
|
|
|
|
|
this.taskCateAllList = res.data.list; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let catefilterList = this.taskCateList.filter(t => t.parentId == 0); |
|
|
|
|
|
|
|
this.cateOneList = catefilterList; |
|
|
|
|
|
|
|
this.cateTwoList = this.taskCateList.filter(t => t.parentId != 0); |
|
|
|
|
|
|
|
let cateFirstList = []; |
|
|
|
|
|
|
|
catefilterList.forEach(one => { |
|
|
|
|
|
|
|
let cateSecondList = []; |
|
|
|
|
|
|
|
this.taskCateList.forEach(two =>{ |
|
|
|
|
|
|
|
if (one.id == two.parentId) { |
|
|
|
|
|
|
|
cateSecondList.push({value: two.id, label: two.name}) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
cateFirstList.push({value: one.id, label: one.name, children: cateSecondList}) |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
this.taskCateList = cateFirstList; |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
}, |
|
|
|
getCpUserList(){ |
|
|
|
getCpUserList(){ |
|
|
|
getCpUserPage({ |
|
|
|
getCpUserPage({ |
|
|
|
pageNo: 1, |
|
|
|
pageNo: 1, |
|
|
@ -333,7 +390,6 @@ export default { |
|
|
|
getResourcePage({ |
|
|
|
getResourcePage({ |
|
|
|
pageNo: 1, |
|
|
|
pageNo: 1, |
|
|
|
pageSize: 10, |
|
|
|
pageSize: 10, |
|
|
|
name: null, |
|
|
|
|
|
|
|
}).then(res=>{ |
|
|
|
}).then(res=>{ |
|
|
|
this.resourceList = res.data.list; |
|
|
|
this.resourceList = res.data.list; |
|
|
|
this.getList(); |
|
|
|
this.getList(); |
|
|
@ -442,8 +498,8 @@ export default { |
|
|
|
reset() { |
|
|
|
reset() { |
|
|
|
this.form = { |
|
|
|
this.form = { |
|
|
|
id: undefined, |
|
|
|
id: undefined, |
|
|
|
name: undefined, |
|
|
|
taskCateId: undefined, |
|
|
|
content: undefined, |
|
|
|
taskCateName: undefined, |
|
|
|
resources: undefined, |
|
|
|
resources: undefined, |
|
|
|
images: undefined, |
|
|
|
images: undefined, |
|
|
|
planStartTime: undefined, |
|
|
|
planStartTime: undefined, |
|
|
@ -456,8 +512,6 @@ export default { |
|
|
|
executorPerson: undefined, |
|
|
|
executorPerson: undefined, |
|
|
|
workingHours: undefined |
|
|
|
workingHours: undefined |
|
|
|
}; |
|
|
|
}; |
|
|
|
this.executorPerson = undefined, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.resetForm("form"); |
|
|
|
this.resetForm("form"); |
|
|
|
}, |
|
|
|
}, |
|
|
|
/** 搜索按钮操作 */ |
|
|
|
/** 搜索按钮操作 */ |
|
|
@ -497,16 +551,16 @@ export default { |
|
|
|
this.form.images = imagesArr; |
|
|
|
this.form.images = imagesArr; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if(response.data.executorPerson != null){ |
|
|
|
|
|
|
|
let executorArr = JSON.parse(response.data.executorPerson); |
|
|
|
let executorArr = JSON.parse(response.data.executorPerson); |
|
|
|
this.form.executorPerson = executorArr; |
|
|
|
this.form.executorPerson = executorArr; |
|
|
|
} |
|
|
|
this.executorPerson = executorArr; |
|
|
|
this.open = true; |
|
|
|
this.open = true; |
|
|
|
this.title = "修改农场任务"; |
|
|
|
this.title = "修改农场任务"; |
|
|
|
}); |
|
|
|
}); |
|
|
|
}, |
|
|
|
}, |
|
|
|
/** 提交按钮 */ |
|
|
|
/** 提交按钮 */ |
|
|
|
submitForm() { |
|
|
|
submitForm() { |
|
|
|
|
|
|
|
console.log("提交按钮", this.form); |
|
|
|
this.$refs["form"].validate(valid => { |
|
|
|
this.$refs["form"].validate(valid => { |
|
|
|
if (!valid) { |
|
|
|
if (!valid) { |
|
|
|
return; |
|
|
|
return; |
|
|
@ -587,6 +641,18 @@ export default { |
|
|
|
}, |
|
|
|
}, |
|
|
|
delR(row){ |
|
|
|
delR(row){ |
|
|
|
console.log("删除", row); |
|
|
|
console.log("删除", row); |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
changeTaskCate(row){ |
|
|
|
|
|
|
|
let selectArr = row; |
|
|
|
|
|
|
|
this.taskCateAllList.forEach(item =>{ |
|
|
|
|
|
|
|
selectArr.forEach(id =>{ |
|
|
|
|
|
|
|
if(item.value == id){ |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
changeCateOne(row){ |
|
|
|
|
|
|
|
this.cateTwoList = this.taskCateAllList.filter(t => t.parentId == row); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
}; |
|
|
|