提交 e3572d54 编写于 作者: guangjun.yang's avatar guangjun.yang

Merge branch 'dev-completedCtr-20191109' into release

* dev-completedCtr-20191109:
  完成度控制去掉权限判断
  教培项目编辑项目基本信息提交新增字段
  教培项目中选择项目组件添加学习时长控制
...@@ -272,9 +272,9 @@ ...@@ -272,9 +272,9 @@
<el-tab-pane v-if="idType != 2" label="设定行政范围" name="first"> <el-tab-pane v-if="idType != 2" label="设定行政范围" name="first">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col class="rim" :span="12"> <el-col class="rim" :span="12">
<!-- <!--
:load="loadNode" :load="loadNode"
lazy lazy
default-expand-all default-expand-all
@check-change="checkUpdate" @check-change="checkUpdate"
--> -->
...@@ -432,8 +432,8 @@ ...@@ -432,8 +432,8 @@
@selection-change="selectionChangeDepartment" @selection-change="selectionChangeDepartment"
:row-key="getRowKeysDepartment" :row-key="getRowKeysDepartment"
> >
<el-table-column <el-table-column
type="selection" type="selection"
width="55" width="55"
:reserve-selection="true" :reserve-selection="true"
:selectable="selectableTableList2" :selectable="selectableTableList2"
...@@ -512,9 +512,9 @@ ...@@ -512,9 +512,9 @@
@select-all="selectAllPerson" @select-all="selectAllPerson"
@select="selectPerson" @select="selectPerson"
> >
<el-table-column <el-table-column
type="selection" type="selection"
width="55" width="55"
:selectable="selectableTableList" :selectable="selectableTableList"
></el-table-column> ></el-table-column>
<el-table-column prop="name" label="人员名称" align="center"></el-table-column> <el-table-column prop="name" label="人员名称" align="center"></el-table-column>
...@@ -606,7 +606,7 @@ ...@@ -606,7 +606,7 @@
</div> </div>
<el-dialog title :visible.sync="dialogShow" width="40%" center> <el-dialog title :visible.sync="dialogShow" width="40%" center>
<p class="dialog-p">设定范围数据已经被其他管理员修改,是否强制提交进行覆盖</p> <p class="dialog-p">设定范围数据已经被其他管理员修改,是否强制提交进行覆盖</p>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button type="default" size="small" @click="dialogShow = false">取消</el-button> <el-button type="default" size="small" @click="dialogShow = false">取消</el-button>
<el-button type="primary" size="small" @click="coverData()">确定</el-button> <el-button type="primary" size="small" @click="coverData()">确定</el-button>
...@@ -756,6 +756,14 @@ ...@@ -756,6 +756,14 @@
>{{tag.name}}</el-tag> >{{tag.name}}</el-tag>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="学习时长控制:" class="time-contrl">
<el-col :span="10">
<el-radio-group class="el-time-ctr" v-model="formComponent.courseRequire" :disabled="projectStatus == 3 || projectStatus == 4 || projectStatus == 5 || projectStatus == 6">
<el-radio :label="1">是(则项目中各课程须达到课程配置中的观看时长要求才允许通过)</el-radio>
<el-radio :label="0"></el-radio>
</el-radio-group>
</el-col>
</el-form-item>
<el-form-item label="配置证书:"> <el-form-item label="配置证书:">
<el-col :span="10"> <el-col :span="10">
<el-radio-group class="el-configure" v-model="formComponent.configure" :disabled="projectStatus == 3 || projectStatus == 4 || projectStatus == 5 || projectStatus == 6"> <el-radio-group class="el-configure" v-model="formComponent.configure" :disabled="projectStatus == 3 || projectStatus == 4 || projectStatus == 5 || projectStatus == 6">
...@@ -871,10 +879,20 @@ export default { ...@@ -871,10 +879,20 @@ export default {
callback(); callback();
} }
}; };
let checkNormalInt = (rule, value, callback) => {
const val = parseFloat(value);
const isInteger = Number.isInteger(val);
// if((isInteger && val > 0) || checkNeedRule(val)){
if( !value || (isInteger && val >= 0 && val <= 100) ){
callback()
}else{
callback(new Error(`请输入0~100正整数`))
}
}
return { return {
idTypeValue: 1, idTypeValue: 1,
idTypeProject: '', idTypeProject: '',
projectId: null, projectId: null,
peopleLevel: null, peopleLevel: null,
//面包屑 //面包屑
...@@ -1035,7 +1053,8 @@ export default { ...@@ -1035,7 +1053,8 @@ export default {
formComponent: { formComponent: {
component: [], component: [],
configure: 2, configure: 2,
certificate: "" certificate: "",
courseRequire: 0, //0:不控制 1:按课程时长配置要求
}, },
tagsComponent: [], tagsComponent: [],
projectStatus: "", projectStatus: "",
...@@ -1121,7 +1140,10 @@ export default { ...@@ -1121,7 +1140,10 @@ export default {
], ],
certificate: [ certificate: [
{ required: true, message: "请选择证书", trigger: "change" } { required: true, message: "请选择证书", trigger: "change" }
] ],
visitTime: [
{required: false, trigger: "change", validator: checkNormalInt,}
],
}, },
rules: { rules: {
projectName: [ projectName: [
...@@ -1324,6 +1346,7 @@ export default { ...@@ -1324,6 +1346,7 @@ export default {
this.setEditData(editData); this.setEditData(editData);
this.idTypeProject = res.data.projectData.idType; this.idTypeProject = res.data.projectData.idType;
this.projectStatus = res.data.projectData.projectStatus; this.projectStatus = res.data.projectData.projectStatus;
this.formComponent.courseRequire = res.data.projectData.courseRequire || 0;
// this.status4Flag = res.data.projectData.status4Flag; // this.status4Flag = res.data.projectData.status4Flag;
if (this.projectStatus == 1) { if (this.projectStatus == 1) {
this.showStorage = true; this.showStorage = true;
...@@ -1389,6 +1412,7 @@ export default { ...@@ -1389,6 +1412,7 @@ export default {
//编辑 //编辑
projectModel.id = this.formData.id; projectModel.id = this.formData.id;
projectModel.projectStatus = this.projectStatus; projectModel.projectStatus = this.projectStatus;
projectModel.courseRequire = this.formComponent.courseRequire; //课程完成度控制
for (let i = 0; i < attachmentModel.length; i++) { for (let i = 0; i < attachmentModel.length; i++) {
attachmentModel[i].portalProjectId = this.formData.id; attachmentModel[i].portalProjectId = this.formData.id;
} }
...@@ -1506,6 +1530,7 @@ export default { ...@@ -1506,6 +1530,7 @@ export default {
status: this.projectStatus, status: this.projectStatus,
certificateType: this.formExam.certificateType, certificateType: this.formExam.certificateType,
getCertificateRule: [], getCertificateRule: [],
courseRequire: this.formComponent.courseRequire,
}; };
// console.log('排序后',vm.tagsComponent,'param',param); // console.log('排序后',vm.tagsComponent,'param',param);
if(this.formComponent.configure == 1) { if(this.formComponent.configure == 1) {
...@@ -1525,7 +1550,7 @@ export default { ...@@ -1525,7 +1550,7 @@ export default {
rangeMin: ruleData[o].rangeMin, rangeMin: ruleData[o].rangeMin,
} }
} }
} }
// 1.单证书无规则 // 1.单证书无规则
else { else {
if(this.formComponent.certificate != '' && this.formComponent.certificate != null) { if(this.formComponent.certificate != '' && this.formComponent.certificate != null) {
...@@ -1799,7 +1824,7 @@ export default { ...@@ -1799,7 +1824,7 @@ export default {
//移动到选择项目组件 //移动到选择项目组件
//console.log(res); //console.log(res);
let statusMove = this.scopeStatus(res.data.status); let statusMove = this.scopeStatus(res.data.status);
if(statusMove === 0) { if(statusMove === 0) {
this.active++; this.active++;
this.stepData = [false, false, true]; this.stepData = [false, false, true];
this.tagDrop(); this.tagDrop();
...@@ -1813,7 +1838,7 @@ export default { ...@@ -1813,7 +1838,7 @@ export default {
}); });
} }
}); });
// } // }
// else { // else {
// //没有选择范围 // //没有选择范围
// vm.$message({ // vm.$message({
...@@ -1856,7 +1881,7 @@ export default { ...@@ -1856,7 +1881,7 @@ export default {
if (res.code == "000000") { if (res.code == "000000") {
//移动到选择项目组件 //移动到选择项目组件
let statusMove = this.scopeStatus(res.data.status); let statusMove = this.scopeStatus(res.data.status);
if(statusMove === 0) { if(statusMove === 0) {
this.active++; this.active++;
this.stepData = [false, false, true]; this.stepData = [false, false, true];
this.tagDrop(); this.tagDrop();
...@@ -2204,7 +2229,7 @@ export default { ...@@ -2204,7 +2229,7 @@ export default {
//重构归并树 //重构归并树
let checkedTree = operationData.getSimpleCheckedNodes(this.$refs.tree.store); let checkedTree = operationData.getSimpleCheckedNodes(this.$refs.tree.store);
let halfCheckedTree = this.$refs.tree.getHalfCheckedKeys() let halfCheckedTree = this.$refs.tree.getHalfCheckedKeys()
let allSelectedKeys = operationData.setSelectedKeys(checkedTree,halfCheckedTree); let allSelectedKeys = operationData.setSelectedKeys(checkedTree,halfCheckedTree);
//重构内容 //重构内容
this.allSelectedKeys = allSelectedKeys; this.allSelectedKeys = allSelectedKeys;
...@@ -2219,7 +2244,7 @@ export default { ...@@ -2219,7 +2244,7 @@ export default {
let checkedTree = operationData.getSimpleCheckedNodes(this.$refs.tree.store); let checkedTree = operationData.getSimpleCheckedNodes(this.$refs.tree.store);
let halfCheckedTree = this.$refs.tree.getHalfCheckedKeys() let halfCheckedTree = this.$refs.tree.getHalfCheckedKeys()
let allSelectedKeys = operationData.setSelectedKeys(checkedTree,halfCheckedTree); let allSelectedKeys = operationData.setSelectedKeys(checkedTree,halfCheckedTree);
vm.allSelectedKeys = allSelectedKeys; vm.allSelectedKeys = allSelectedKeys;
//重构内容 //重构内容
return allSelectedKeys; return allSelectedKeys;
}, },
...@@ -2668,7 +2693,7 @@ export default { ...@@ -2668,7 +2693,7 @@ export default {
scope += unionScope[i] + "|"; scope += unionScope[i] + "|";
} }
} }
scope = scope.substring(0, scope.length - 1); scope = scope.substring(0, scope.length - 1);
console.log("scope people", scope); console.log("scope people", scope);
return scope; return scope;
...@@ -2712,7 +2737,7 @@ export default { ...@@ -2712,7 +2737,7 @@ export default {
let searchForm = this.formPerson; let searchForm = this.formPerson;
if ( if (
searchForm.hospitalName === "" && searchForm.hospitalName === "" &&
searchForm.doctorName === "" searchForm.doctorName === ""
) { ) {
this.searchPeopleType = ''; this.searchPeopleType = '';
this.getPeople(); this.getPeople();
...@@ -3067,7 +3092,7 @@ export default { ...@@ -3067,7 +3092,7 @@ export default {
updateCount(index) { updateCount(index) {
if(vm.formExam.exam[index].examCount) { if(vm.formExam.exam[index].examCount) {
vm.formExam.exam[index].examCount = parseInt(vm.formExam.exam[index].examCount); vm.formExam.exam[index].examCount = parseInt(vm.formExam.exam[index].examCount);
if(!Number.isInteger(vm.formExam.exam[index].examCount)){ if(!Number.isInteger(vm.formExam.exam[index].examCount)){
vm.formExam.exam[index].examCount = ''; vm.formExam.exam[index].examCount = '';
} }
if(vm.formExam.exam[index].examCount <= 0) { if(vm.formExam.exam[index].examCount <= 0) {
...@@ -3123,7 +3148,7 @@ export default { ...@@ -3123,7 +3148,7 @@ export default {
}, },
updateMin(index) { updateMin(index) {
vm.baseCheck(index); vm.baseCheck(index);
if(!Number.isInteger(vm.formExam.exam[index].rangeMin)){ if(!Number.isInteger(vm.formExam.exam[index].rangeMin)){
vm.formExam.exam[index].rangeMin = ''; vm.formExam.exam[index].rangeMin = '';
return; return;
} }
...@@ -3138,7 +3163,7 @@ export default { ...@@ -3138,7 +3163,7 @@ export default {
}, },
updateMax(index) { updateMax(index) {
vm.baseCheck(index); vm.baseCheck(index);
if(!Number.isInteger(vm.formExam.exam[index].rangeMax)){ if(!Number.isInteger(vm.formExam.exam[index].rangeMax)){
// console.log('只能整数'); // console.log('只能整数');
vm.formExam.exam[index].rangeMax = ''; vm.formExam.exam[index].rangeMax = '';
return; return;
...@@ -3473,7 +3498,7 @@ export default { ...@@ -3473,7 +3498,7 @@ export default {
let typeStatus = 0; let typeStatus = 0;
if(intersect.length > 0) { if(intersect.length > 0) {
typeStatus = 1; typeStatus = 1;
} }
// let = this.$refs.multipleTable.selection // let = this.$refs.multipleTable.selection
console.log(selection,setList,selectList); console.log(selection,setList,selectList);
if(setList.length > 0) { if(setList.length > 0) {
...@@ -3526,7 +3551,7 @@ export default { ...@@ -3526,7 +3551,7 @@ export default {
let typeStatus = 0; let typeStatus = 0;
if(intersect.length > 0) { if(intersect.length > 0) {
typeStatus = 1; typeStatus = 1;
} }
console.log(selection,setList,selectList); console.log(selection,setList,selectList);
if(setList.length > 0) { if(setList.length > 0) {
let req = { let req = {
...@@ -3874,9 +3899,23 @@ export default { ...@@ -3874,9 +3899,23 @@ export default {
position: absolute; position: absolute;
z-index: 999; z-index: 999;
} }
.el-time-ctr{
.el-radio{
display: block;
padding: 10px 0;
}
}
.el-configure { .el-configure {
width: 200px; width: 200px;
} }
.time-contrl{
.el-input__inner{
padding-right: 0;
}
.el-input-group__append{
padding: 0 8px;
}
}
} }
} }
</style> </style>
\ No newline at end of file
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册