|
|
|
@ -5,8 +5,15 @@ |
|
|
|
|
<a-row> |
|
|
|
|
<a-col :span="24"> |
|
|
|
|
<a-form-model-item label="上级任务" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upperName"> |
|
|
|
|
<j-popup v-model="model.upperTaskName" field="upperTaskName" org-fields="id,task_name" |
|
|
|
|
dest-fields="upperId,upperTaskName" code="taskname" :multi="true" @input="popupCallback" /> |
|
|
|
|
<j-popup |
|
|
|
|
v-model="model.upperTaskName" |
|
|
|
|
field="upperTaskName" |
|
|
|
|
org-fields="id,task_name" |
|
|
|
|
dest-fields="upperId,upperTaskName" |
|
|
|
|
code="taskname" |
|
|
|
|
:multi="true" |
|
|
|
|
@input="popupCallback" |
|
|
|
|
/> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
|
<!-- <a-col :span="24">--> |
|
|
|
@ -24,8 +31,7 @@ |
|
|
|
|
<a-col :span="24"> |
|
|
|
|
<a-form-model-item label="任务等级" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="workLevel"> |
|
|
|
|
<!-- <a-input-number :min="1" :max="16" v-model="model.workLevel" placeholder="请输入任务等级" style="width: 100%" />--> |
|
|
|
|
<j-dict-select-tag v-model="model.workLevel" type="radio" placeholder="请选择任务等级" dict-code="workLevel" |
|
|
|
|
style="width: 100%"> |
|
|
|
|
<j-dict-select-tag v-model="model.workLevel" type="radio" placeholder="请选择任务等级" dict-code="workLevel" style="width: 100%"> |
|
|
|
|
</j-dict-select-tag> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
|
|
|
|
@ -56,8 +62,13 @@ |
|
|
|
|
<a-row> |
|
|
|
|
<a-col :span="24"> |
|
|
|
|
<a-form-model-item label="项目" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="projectId"> |
|
|
|
|
<j-dict-select-tag v-model="model.projectId" placeholder="请选择项目" dict-code="projectx,project_name,id" |
|
|
|
|
style="width: 100%" :disabled="model.typeId == null" @change="fillTaskName"> |
|
|
|
|
<j-dict-select-tag |
|
|
|
|
v-model="model.projectId" |
|
|
|
|
placeholder="请选择项目" |
|
|
|
|
dict-code="projectx,project_name,id" |
|
|
|
|
style="width: 100%" |
|
|
|
|
:disabled="model.typeId==null" |
|
|
|
|
@change="fillTaskName" > |
|
|
|
|
</j-dict-select-tag> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
@ -67,29 +78,32 @@ |
|
|
|
|
<!-- autocomplete="on" --> |
|
|
|
|
<!-- :disabled="model.typeId==null">--> |
|
|
|
|
<!-- </a-input>--> |
|
|
|
|
<a-textarea v-model="model.taskName" placeholder="请输入中文名称" autocomplete="on" |
|
|
|
|
:disabled="model.typeId == null" auto-size /> |
|
|
|
|
<a-textarea v-model="model.taskName" |
|
|
|
|
placeholder="请输入中文名称" |
|
|
|
|
autocomplete="on" |
|
|
|
|
:disabled="model.typeId==null" |
|
|
|
|
auto-size /> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
|
<a-col :span="24"> |
|
|
|
|
<a-form-model-item label="责任人" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="managerUsers"> |
|
|
|
|
<j-multi-select-tag type="list_multi" v-model="model.managerUsers" dictCode="sys_user,realname,id" |
|
|
|
|
placeholder="请选择责任人" /> |
|
|
|
|
<j-multi-select-tag type="list_multi" v-model="model.managerUsers" dictCode="sys_user,realname,id" placeholder="请选择责任人"/> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
|
<a-col :span="24"> |
|
|
|
|
<a-form-model-item label="模块" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="moduleId"> |
|
|
|
|
<!-- <a-input v-model="model.moduleId" placeholder="请输入模块" modulex,module_name,id></a-input>--> |
|
|
|
|
<j-dict-select-tag v-model="model.moduleId" placeholder="请选择模块" :dict-code="this.modulex" style="width: 80%" |
|
|
|
|
@change="fillModuleName()"></j-dict-select-tag> |
|
|
|
|
<j-dict-select-tag v-model="model.moduleId" placeholder="请选择模块" :dict-code="this.modulex" |
|
|
|
|
style="width: 80%" @change="fillModuleName()"></j-dict-select-tag> |
|
|
|
|
<a-button @click="handleAdd3" type="primary" icon="plus" style="width: 20%;"></a-button> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
|
<a-col :span="24"> |
|
|
|
|
<a-form-model-item label="功能" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="functionId"> |
|
|
|
|
<!-- <a-input v-model="model.functionId" placeholder="请输入功能id" functionx,function_name,id></a-input>--> |
|
|
|
|
<j-dict-select-tag v-model="model.functionId" placeholder="请选择功能" :dict-code="functionx" style="width: 80%" |
|
|
|
|
@change="fillFunctionName()"></j-dict-select-tag> |
|
|
|
|
<j-dict-select-tag v-model="model.functionId" placeholder="请选择功能" |
|
|
|
|
:dict-code="functionx" |
|
|
|
|
style="width: 80%" @change="fillFunctionName()"></j-dict-select-tag> |
|
|
|
|
<a-button @click="handleAdd1(model.moduleId)" type="primary" icon="plus" style="width: 20%;" ></a-button> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
@ -98,8 +112,7 @@ |
|
|
|
|
<!-- <a-input v-model="model.ruleId" placeholder="请输入规则id" rulex,rule_no,id></a-input>--> |
|
|
|
|
<j-dict-select-tag v-model="model.ruleId" placeholder="请选择规则" :dict-code="rulex" |
|
|
|
|
style="width: 80%"></j-dict-select-tag> |
|
|
|
|
<a-button @click="handleAdd2(model.functionId, model.moduleId)" type="primary" icon="plus" |
|
|
|
|
style="width: 20%;"></a-button> |
|
|
|
|
<a-button @click="handleAdd2(model.functionId,model.moduleId)" type="primary" icon="plus" style="width: 20%;"></a-button> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
|
</a-row> |
|
|
|
@ -130,14 +143,13 @@ |
|
|
|
|
<a-col :span="24"> |
|
|
|
|
<a-form-model-item label="预计结束时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="expectedEndTime"> |
|
|
|
|
<!-- <j-date placeholder="请选择预计结束时间" v-model="model.expectedEndTime" style="width: 100%"/>--> |
|
|
|
|
<a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.expectedEndTime" |
|
|
|
|
style="width: 100%" /> |
|
|
|
|
<a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.expectedEndTime" style="width: 100%"/> |
|
|
|
|
|
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
|
<a-col :span="24"> |
|
|
|
|
<a-form-model-item label="预计时长" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="expectedDuration"> |
|
|
|
|
<a-input-number v-model="model.expectedDuration" placeholder="请输入预计时长" style="width: 100%" @blur="expectedDuration()"/> |
|
|
|
|
<a-input-number v-model="model.expectedDuration" placeholder="请输入预计时长" style="width: 100%"/> |
|
|
|
|
</a-form-model-item> |
|
|
|
|
</a-col> |
|
|
|
|
<a-col :span="24"> |
|
|
|
@ -314,8 +326,7 @@ export default { |
|
|
|
|
// queryTaskTypeById: "/taskType/taskType/queryById", |
|
|
|
|
fillTaskName: "/task/task/fillTaskName", |
|
|
|
|
list: "/task/task/list", |
|
|
|
|
listtasktype: '/taskType/taskType/getTypeMap', |
|
|
|
|
expectedDuration: '/task/task/estimateTime' |
|
|
|
|
listtasktype: '/taskType/taskType/getTypeMap' |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -332,16 +343,6 @@ export default { |
|
|
|
|
this.tasktype() |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
expectedDuration() { |
|
|
|
|
|
|
|
|
|
let param = { |
|
|
|
|
startTime: this.model.startTime, |
|
|
|
|
expectedDuration: this.model.expectedDuration, |
|
|
|
|
} |
|
|
|
|
getAction(this.url. expectedDuration, param).then((res) => { |
|
|
|
|
this.model.expectedEndTime=res.result |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
tasktype() { |
|
|
|
|
getAction(this.url.listtasktype).then((res) => { |
|
|
|
|
const data = res.result; |
|
|
|
@ -504,12 +505,11 @@ export default { |
|
|
|
|
flex-wrap:wrap; |
|
|
|
|
align-items: baseline; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.B{ |
|
|
|
|
width: 10%; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
::v-deep .ant-radio-group{ |
|
|
|
|
width: 85%; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
</style> |
|
|
|
|