Merge remote-tracking branch 'origin/dev_2307' into dev_2307

dev
zjh 1 year ago
commit f5d717febd
  1. 14
      ant-design-vue-jeecg/src/views/requiremententity/RequirementEntityList.vue
  2. 4
      ant-design-vue-jeecg/src/views/requiremententity/RequirementEntityList1.vue
  3. 13
      ant-design-vue-jeecg/src/views/requirementitem/modules/RequirementItemForm.vue
  4. 229
      ant-design-vue-jeecg/src/views/task/modules/TaskForm.vue
  5. 19
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/demo/requiremententity/controller/RequirementEntityController.java
  6. 11
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/task/entity/Task.java
  7. 4
      jeecg-boot/jeecg-boot-module-system/src/main/resources/application-dev.yml

@ -94,6 +94,8 @@
<a-divider type="vertical" /> <a-divider type="vertical" />
<a @click="handleDetail(record)">详情</a> <a @click="handleDetail(record)">详情</a>
<a-divider type="vertical" /> <a-divider type="vertical" />
<a @click="fq(record.id)">废弃</a>
<a-divider type="vertical" />
<a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)"> <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
<a>删除</a> <a>删除</a>
</a-popconfirm> </a-popconfirm>
@ -113,6 +115,7 @@
import { JeecgListMixin } from '@/mixins/JeecgListMixin' import { JeecgListMixin } from '@/mixins/JeecgListMixin'
import RequirementEntityModal from './modules/RequirementEntityModal' import RequirementEntityModal from './modules/RequirementEntityModal'
import {filterMultiDictText} from '@/components/dict/JDictSelectUtil' import {filterMultiDictText} from '@/components/dict/JDictSelectUtil'
import { httpAction, getAction } from '@/api/manage'
export default { export default {
name: 'RequirementEntityList', name: 'RequirementEntityList',
@ -176,6 +179,7 @@
deleteBatch: "/requiremententity/requirementEntity/deleteBatch", deleteBatch: "/requiremententity/requirementEntity/deleteBatch",
exportXlsUrl: "/requiremententity/requirementEntity/exportXls", exportXlsUrl: "/requiremententity/requirementEntity/exportXls",
importExcelUrl: "requiremententity/requirementEntity/importExcel", importExcelUrl: "requiremententity/requirementEntity/importExcel",
fq:"/requiremententity/requirementEntity/fq",
}, },
dictOptions:{}, dictOptions:{},
@ -191,6 +195,16 @@
}, },
}, },
methods: { methods: {
fq(id){
getAction(this.url.fq,{id:id}).then((res)=>{
if (res.success) {
this.$message.success(res.message);
this.loadData();
}else{
this.$message.warning(res.message);
}
});
},
initDictConfig(){ initDictConfig(){
}, },
getSuperFieldList(){ getSuperFieldList(){

@ -9,6 +9,7 @@
> >
<div> <div>
需求描述<j-editor v-model="model.requirementDescribe" disabled/>
<span style="text-align: center;display:block;font-weight:bold;">需求名称{{tableName}}</span> <span style="text-align: center;display:block;font-weight:bold;">需求名称{{tableName}}</span>
<j-vxe-table <j-vxe-table
ref="xTable" ref="xTable"
@ -73,6 +74,8 @@
components: {}, components: {},
data() { data() {
return { return {
model: {
},
description: '抽取对象管理页面', description: '抽取对象管理页面',
tableid:'', tableid:'',
visible: false, visible: false,
@ -261,7 +264,6 @@
edit(record) { edit(record) {
this.model = Object.assign({}, record); this.model = Object.assign({}, record);
console.log(this.model) console.log(this.model)
//console.log(topicid);
this.queryParam.requirementId = this.model.id; this.queryParam.requirementId = this.model.id;
this.tableid = this.model.id; this.tableid = this.model.id;
this.tableName=this.model.requirementName; this.tableName=this.model.requirementName;

@ -22,8 +22,7 @@
dest-fields="typeId,typeName" dest-fields="typeId,typeName"
code="typename" code="typename"
:multi="multi" :multi="multi"
@input="popupCallback" @input="popupCallback"/>
/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
@ -48,11 +47,6 @@
<a-input v-model="model.requirementName" placeholder="请输入中文名称" ></a-input> <a-input v-model="model.requirementName" placeholder="请输入中文名称" ></a-input>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24">
<a-form-model-item label="需求文件" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requirementFile">
<j-upload v-model="model.requirementFile" ></j-upload>
</a-form-model-item>
</a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="需求等级" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requirementLevel"> <a-form-model-item label="需求等级" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requirementLevel">
<j-dict-select-tag type="radio" v-model="model.requirementLevel" dictCode="requirement_level" placeholder="请选择需求等级" /> <j-dict-select-tag type="radio" v-model="model.requirementLevel" dictCode="requirement_level" placeholder="请选择需求等级" />
@ -76,6 +70,11 @@
<j-editor v-model="model.requirementDescribe" /> <j-editor v-model="model.requirementDescribe" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24">
<a-form-model-item label="需求文件" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="requirementFile">
<j-upload v-model="model.requirementFile" ></j-upload>
</a-form-model-item>
</a-col>
</a-row> </a-row>
</a-form-model> </a-form-model>
</j-form-container> </j-form-container>

@ -4,28 +4,60 @@
<a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="上级任务" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upperName">
<j-popup
v-model="model.upperName"
field="upperName"
org-fields="id,task_name"
dest-fields="upperId,upperName"
code="taskname"
:multi="true"
@input="popupCallback"
/>
</a-form-model-item>
</a-col>
<!-- <a-col :span="24">-->
<!-- <a-form-model-item label="上级任务" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upperId">-->
<!-- <j-dict-select-tag v-model="model.upperId" placeholder="请选择所属上级任务"-->
<!-- :dict-code="task" style="width: 100%">-->
<!-- </j-dict-select-tag>-->
<!-- </a-form-model-item>-->
<!-- </a-col>-->
<a-col :span="24" style="display: none;">
<a-form-model-item label="上级任务" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upperId"> <a-form-model-item label="上级任务" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upperId">
<j-dict-select-tag v-model="model.upperId" placeholder="请选择所属上级任务" <a-input v-model="model.upperId" placeholder="请选择所属上级任务"></a-input>
dict-code="task,task_name,id" style="width: 100%">
</j-dict-select-tag>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="任务层级" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="level"> <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="请选择责任人"/>
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col >
<a-form-model-item label="任务层级" :labelCol="labelCol1" :wrapperCol="wrapperCol1" prop="level">
<j-dict-select-tag v-model="model.level" type="radio" style="width: 100%" dictCode="task_type_level"/> <j-dict-select-tag v-model="model.level" type="radio" style="width: 100%" dictCode="task_type_level"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> </a-row>
<a-form-model-item label="任务类型" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="typeId"> <a-row>
<j-dict-select-tag v-model="model.typeId" type="radio" style="width: 100%" <a-col >
dict-code="task_type,type_name,id"/> <a-form-model-item label="任务类型" :labelCol="labelCol1" :wrapperCol="wrapperCol1" prop="typeId">
<j-dict-select-tag v-model="model.typeId" type="radio" style="width: 100%" dict-code="task_type,type_name,id"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row>
<a-row>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="项目" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="projectId"> <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" <j-dict-select-tag
style="width: 100%" :disabled="model.typeId==null" v-model="model.projectId"
@change="fillTaskName"> placeholder="请选择项目"
dict-code="projectx,project_name,id"
style="width: 100%"
:disabled="model.typeId==null"
@change="fillTaskName" >
</j-dict-select-tag> </j-dict-select-tag>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
@ -44,84 +76,89 @@
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="模块" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="moduleId"> <a-form-model-item label="模块" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="moduleId">
<!-- <a-input v-model="model.moduleId" placeholder="请输入模块" ></a-input>--> <!-- <a-input v-model="model.moduleId" placeholder="请输入模块" modulex,module_name,id></a-input>-->
<j-dict-select-tag v-model="model.moduleId" placeholder="请选择模块" dict-code="modulex,module_name,id" <j-dict-select-tag v-model="model.moduleId" placeholder="请选择模块" :dict-code="this.modulex"
style="width: 100%"></j-dict-select-tag> style="width: 100%" @change="fillModuleName()"></j-dict-select-tag>
<a-button @click="handleAdd3" type="primary" icon="plus">新增模块</a-button>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="功能" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="functionId"> <a-form-model-item label="功能" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="functionId">
<!-- <a-input v-model="model.functionId" placeholder="请输入功能id" ></a-input>--> <!-- <a-input v-model="model.functionId" placeholder="请输入功能id" functionx,function_name,id></a-input>-->
<j-dict-select-tag v-model="model.functionId" placeholder="请选择功能" <j-dict-select-tag v-model="model.functionId" placeholder="请选择功能"
dict-code="functionx,function_name,id" :dict-code="functionx"
style="width: 100%"></j-dict-select-tag> style="width: 100%" @change="fillFunctionName()"></j-dict-select-tag>
<a-button @click="handleAdd1" type="primary" icon="plus">新增功能</a-button>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="规则" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ruleId"> <a-form-model-item label="规则" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ruleId">
<!-- <a-input v-model="model.ruleId" placeholder="请输入规则id" ></a-input>--> <!-- <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,rule_no,id" <j-dict-select-tag v-model="model.ruleId" placeholder="请选择规则" :dict-code="rulex"
style="width: 100%"></j-dict-select-tag> style="width: 100%"></j-dict-select-tag>
</a-form-model-item> <a-button @click="handleAdd2" type="primary" icon="plus">新增规则</a-button>
</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="请选择责任人"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="任务等级" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="workLevel"> <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%" />--> <!-- <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="请选择任务等级" <j-dict-select-tag v-model="model.workLevel" type="radio" placeholder="请选择任务等级" dict-code="workLevel" style="width: 100%">
dict-code="workLevel" style="width: 100%">
</j-dict-select-tag> </j-dict-select-tag>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> </a-row>
<a-form-model-item label="任务状态" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="workStatus"> <a-row>
<a-col >
<a-form-model-item label="任务状态" :labelCol="labelCol1" :wrapperCol="wrapperCol1" prop="workStatus">
<!-- <a-input-number :min="1" :max="16" v-model="model.workStatus" placeholder="请输入任务状态" style="width: 100%" />--> <!-- <a-input-number :min="1" :max="16" v-model="model.workStatus" placeholder="请输入任务状态" style="width: 100%" />-->
<j-dict-select-tag v-model="model.workStatus" type="radio" dict-code="task_work_status" <j-dict-select-tag v-model="model.workStatus" type="radio" dict-code="task_work_status"
placeholder="请选择任务状态" style="width: 100%"/> placeholder="请选择任务状态" style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row>
<a-row>
<a-col>
<a-form-model-item label="任务描述" :labelCol="labelCol2" :wrapperCol="wrapperCol2" prop="taskDescribe">
<!-- <a-input type="textarea" v-model="model.taskDescribe" :rows="2"/> -->
<j-editor v-model="model.taskDescribe"/>
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="发布时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="publishTime"> <a-form-model-item label="发布时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="publishTime">
<!-- <j-date placeholder="请选择发布时间" v-model="model.publishTime" style="width: 100%"/>--> <!-- <j-date placeholder="请选择发布时间" v-model="model.publishTime" style="width: 100%"/>-->
<a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.publishTime"/> <a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.startTime" style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="开始时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="startTime"> <a-form-model-item label="预计结束时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="expectedEndTime">
<!-- <j-date placeholder="请选择开始时间" v-model="model.startTime" style="width: 100%"/>--> <!-- <j-date placeholder="请选择预计结束时间" v-model="model.expectedEndTime" style="width: 100%"/>-->
<a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.startTime"/> <a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.expectedEndTime" style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="预计结束时间" :labelCol="labelCol" :wrapperCol="wrapperCol" <a-form-model-item label="预计时长" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="expectedDuration">
prop="expectedEndTime"> <a-input-number v-model="model.expectedDuration" placeholder="请输入预计时长" style="width: 100%"/>
<!-- <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"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="预计任务时长" :labelCol="labelCol" :wrapperCol="wrapperCol" <a-form-model-item label="实际时长" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="realDuration">
prop="expectedDuration"> <a-input-number v-model="model.realDuration" placeholder="请输入实际时长" style="width: 100%"/>
<a-input-number v-model="model.expectedDuration" placeholder="请输入预计任务时长" style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="提交时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="submitTime"> <a-form-model-item label="开始时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="startTime">
<!-- <j-date placeholder="请选择提交时间" v-model="model.submitTime" style="width: 100%"/>--> <!-- <j-date placeholder="请选择开始时间" v-model="model.startTime" style="width: 100%"/>-->
<a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.submitTime"/> <a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.startTime" style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item label="实际任务时长" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="realDuration"> <a-form-model-item label="提交时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="submitTime">
<a-input-number v-model="model.realDuration" placeholder="请输入实际任务时长" style="width: 100%"/> <!-- <j-date placeholder="请选择提交时间" v-model="model.submitTime" style="width: 100%"/>-->
<a-date-picker showTime valueFormat="YYYY-MM-DD HH:mm:ss" v-model="model.submitTime" style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="24"> <a-col :span="24">
@ -131,15 +168,11 @@
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row>
<a-col :span="24">
<a-form-model-item label="任务描述" style="width: 700px" prop="taskDescribe">
<a-input type="textarea" v-model="model.taskDescribe" :rows="2"/>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model> </a-form-model>
</j-form-container> </j-form-container>
<modulex-modal ref="modalForm3" @ok="modalFormOk"></modulex-modal>
<functionx-modal ref="modalForm1" @ok="modalFormOk"></functionx-modal>
<rulex-modal ref="modalForm2" @ok="modalFormOk"></rulex-modal>
</a-spin> </a-spin>
</template> </template>
@ -150,12 +183,23 @@ import {httpAction, getAction} from '@api/manage'
import {validateDuplicateValue} from '@/utils/util' import {validateDuplicateValue} from '@/utils/util'
import JVxeDateCell from "@comp/jeecg/JVxeTable/components/cells/JVxeDateCell"; import JVxeDateCell from "@comp/jeecg/JVxeTable/components/cells/JVxeDateCell";
import JMultiSelectTag from "@/components/dict/JMultiSelectTag" import JMultiSelectTag from "@/components/dict/JMultiSelectTag"
import TaskModal from "@views/task/modules/TaskModal.vue";
import {JeecgListMixin} from '@/mixins/JeecgListMixin'
import {mixinDevice} from "@/utils/mixin";
import modulexModal from "@views/modulex/modules/ModulexModal.vue";
import FunctionxModal from "@views/functionx/modules/FunctionxModal__Style#Drawer.vue";
import RulexModal from "@views/rulex/modules/RulexModal__Style#Drawer.vue";
export default { export default {
name: 'TaskForm', name: 'TaskForm',
mixins: [JeecgListMixin, mixinDevice],
components: { components: {
RulexModal,
FunctionxModal,
modulexModal,
TaskModal,
JVxeDateCell, JVxeDateCell,
JMultiSelectTag JMultiSelectTag,
}, },
props: { props: {
// //
@ -167,6 +211,12 @@ export default {
}, },
data() { data() {
return { return {
modulex: "modulex,module_name,id",
functionx: "functionx,function_name,id",
rulex: "rulex,rule_no,id",
task: "task,task_name,id",
value: new Date(),
model: { model: {
workLevel: 2, workLevel: 2,
workStatus: 0, workStatus: 0,
@ -175,14 +225,48 @@ export default {
expectedDuration: 1, expectedDuration: 1,
// curryUserName: '', // curryUserName: '',
}, },
// labelCol: {
// xs: {span: 24},
// sm: {span: 5},
// },
// wrapperCol: {
// xs: {span: 24},
// sm: {span: 16},
// },
labelCol: { labelCol: {
xs: {span: 24}, xs: {span: 23},
sm: {span: 5}, sm: {span: 6},
}, },
wrapperCol: { wrapperCol: {
xs: {span: 24}, xs: {span: 24},
sm: {span: 16}, sm: {span: 16},
}, },
//
labelCol1: {
xs: {span: 24},
sm: {span: 3},
},
wrapperCol1: {
xs: {span: 24},
sm: {span: 21},
},
//
labelCol2: {
xs: {span: 24},
sm: {span: 3},
},
wrapperCol2: {
xs: {span: 24},
sm: {span: 20},
},
labelCol3: {
xs: {span: 24},
sm: {span: 7},
},
wrapperCol3: {
xs: {span: 24},
sm: {span: 15},
},
confirmLoading: false, confirmLoading: false,
validatorRules: { validatorRules: {
taskName: [ taskName: [
@ -242,6 +326,9 @@ export default {
this.modelDefault = JSON.parse(JSON.stringify(this.model)); this.modelDefault = JSON.parse(JSON.stringify(this.model));
}, },
methods: { methods: {
popupCallback(value,row){
this.model = Object.assign(this.model, row);
},
handleCheckChange(data, checked, tree) { handleCheckChange(data, checked, tree) {
if (checked) { if (checked) {
this.currentNodeData.id = data.id this.currentNodeData.id = data.id
@ -255,6 +342,8 @@ export default {
} }
, ,
fillTaskName() { fillTaskName() {
this.modulex = "modulex,module_name,id,project_id='"+this.model.projectId+"'";
let that = this; let that = this;
let fillTaskName = ""; let fillTaskName = "";
let param = { let param = {
@ -280,7 +369,31 @@ export default {
} }
} }
, ,
fillLevelName(){
this.task = "task,task_name,id,level='"+this.model.level+"'";
}
,
handleAdd3: function () {
this.$refs.modalForm3.add();
this.$refs.modalForm3.title = "新增";
this.$refs.modalForm3.disableSubmit = false;
},
handleAdd1: function () {
this.$refs.modalForm1.add();
this.$refs.modalForm1.title = "新增";
this.$refs.modalForm1.disableSubmit = false;
},
handleAdd2: function () {
this.$refs.modalForm2.add();
this.$refs.modalForm2.title = "新增";
this.$refs.modalForm2.disableSubmit = false;
},
fillModuleName() {
this.functionx = "functionx,function_name,id,module_id='"+this.model.moduleId+"'";
},
fillFunctionName(){
this.rulex = "rulex,rule_no,id,function_id='"+this.model.functionId+"'";
},
// //
getProjectNum() { getProjectNum() {
const projectTime = new Date() // const projectTime = new Date() //

@ -144,6 +144,25 @@ public class RequirementEntityController extends JeecgController<RequirementEnti
} }
return Result.OK(requirementEntity); return Result.OK(requirementEntity);
} }
/**
* 废弃
*
* @param id
* @return
*/
@AutoLog(value = "废弃")
@ApiOperation(value="废弃", notes="废弃")
@GetMapping(value = "/fq")
public Result<?> fq(@RequestParam(name="id",required=true) String id) {
RequirementEntity requirementEntity = requirementEntityService.getById(id);
if(requirementEntity==null) {
return Result.error("未找到对应数据");
}else{
requirementEntity.setEntityStatus(9);
requirementEntityService.updateById(requirementEntity);
}
return Result.OK("已废弃");
}
/** /**
* 导出excel * 导出excel

@ -60,12 +60,15 @@ public class Task implements Serializable {
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期") @ApiModelProperty(value = "更新日期")
private java.util.Date updateTime; private java.util.Date updateTime;
/** /**上级任务id*/
* 上级任务id @Excel(name = "上级任务id", width = 15, dictTable = "task", dicText = "task_name", dicCode = "id")
*/ @Dict(dictTable = "task", dicText = "task_name", dicCode = "id")
@Excel(name = "上级任务id", width = 15)
@ApiModelProperty(value = "上级任务id") @ApiModelProperty(value = "上级任务id")
private java.lang.String upperId; private java.lang.String upperId;
/**上级任务*/
@Excel(name = "上级任务", width = 15)
@ApiModelProperty(value = "上级任务")
private java.lang.String upperName;
/** /**
* 中文名称 * 中文名称
*/ */

@ -141,10 +141,6 @@ spring:
username: root username: root
password: ycwl2022. password: ycwl2022.
driver-class-name: com.mysql.cj.jdbc.Driver driver-class-name: com.mysql.cj.jdbc.Driver
# url: jdbc:mysql://localhost:3306/project_management?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
# username: root
# password: "0517"
# driver-class-name: com.mysql.cj.jdbc.Driver
#redis 配置 #redis 配置
redis: redis:
database: 2 database: 2

Loading…
Cancel
Save