diff --git a/src/views/mdp/form/formDef/Form.vue b/src/views/mdp/form/formDef/Form.vue
index 1f51fd9..ab3c144 100644
--- a/src/views/mdp/form/formDef/Form.vue
+++ b/src/views/mdp/form/formDef/Form.vue
@@ -33,7 +33,7 @@
-
+
@@ -128,6 +128,7 @@ export default {
formFields:[],
editable:false,//是否可编辑模式
formFieldsVisible:false,
+ oldPks:'',//
}
},
methods: {
@@ -201,11 +202,6 @@ export default {
this.$notify({position:'bottom-left',showClose:true,message: '最少需要定义一个字段', type: 'error' });
return;
}
- var max=this.$refs.formFields.getMaxFields();
- if(formFields.length>max){
- this.$notify({position:'bottom-left',showClose:true,message: '最多支持'+max+'个字段', type: 'error' });
- return;
- }
this.$confirm('确认提交吗?', '提示', {}).then(() => {
this.load.edit=true
let formDef = Object.assign({}, this.editForm);
@@ -216,7 +212,7 @@ export default {
this.$refs.formFields.setPrimaryKeys();
- formFields.forEach((i,index)=>{i.seqNo=index});
+ formFields.forEach((i,index)=>{i.seq=index});
var params={formDef:formDef,formFields:formFields};
if(!this.preParamCheck(params)){
this.load.edit=false
@@ -244,8 +240,14 @@ export default {
goToFormDefIndex(){
this.$router.push({path:'/mdp/form/index'})
this.close();
+ },
+ onPksChange(pks){
+ var pksCtimeList=pks.filter(k=>k.id.indexOf('ctime')>=0)
+ if(pksCtimeList && pksCtimeList.length>1){
+ this.editForm.pks=this.oldPks;
+ this.$notify.error("创建日期最多只能选一个作为主键")
+ }
}
-
},
mounted() {
diff --git a/src/views/mdp/form/formField/Field.vue b/src/views/mdp/form/formField/Field.vue
index 16eec64..73c6366 100644
--- a/src/views/mdp/form/formField/Field.vue
+++ b/src/views/mdp/form/formField/Field.vue
@@ -3,12 +3,12 @@
- onChildChange(child,v)" @delete="onChildDelete" :sample="sample">
+ onChildChange(child,v)" @delete="onChildDelete" :sample="sample">
- onChildChange(child,v)" @delete="onChildDelete">
+ onChildChange(child,v)" @delete="onChildDelete">
@@ -145,7 +145,7 @@
-
+
@@ -316,6 +316,9 @@
this.addForm=item2;
},
+ onBkeyChange(field){
+ this.$emit('bkey-change',field)
+ }
},//end method
components: {
diff --git a/src/views/mdp/form/formField/Index.vue b/src/views/mdp/form/formField/Index.vue
index 849bc33..2bcfb49 100644
--- a/src/views/mdp/form/formField/Index.vue
+++ b/src/views/mdp/form/formField/Index.vue
@@ -32,7 +32,7 @@
- Object.assign(item,v)">
+ Object.assign(item,v)">
@@ -181,8 +181,7 @@ export default {
},
'visible':function(visible) {
if(visible==true){
-
- this.selectedFields=JSON.parse(JSON.stringify(this.formFields))
+ this.selectedFields=treeTool.translateDataToTree(this.formFields,'pid','id')
this.setPrimaryKeys();
this.$nextTick(()=>{
this.$refs.showDataRef.clearValidate();
@@ -332,27 +331,16 @@ export default {
},
- setPrimaryKeys:function( ) {
- var primaryKeys=this.primaryKeys;
- var bkeyPrefix="";
- if(primaryKeys.some(i=>i=='cuserid')){
- bkeyPrefix="1"
- }else{
- bkeyPrefix="0"
- }
-
- if(primaryKeys.some(i=>i=='deptid')){
- bkeyPrefix=bkeyPrefix+"1"
- }else{
- bkeyPrefix=bkeyPrefix+"0"
- }
- this.selectedFields.forEach(field=>{
- if(primaryKeys.some(key=>field.idCamel==key)){
- field.bkey=bkeyPrefix+"1"
+ setPrimaryKeys:function() {
+ this.primaryKeys=this.formDef.pks.split(",")
+ var allFields=this.getFieldList();
+ allFields.forEach(f=>{
+ if(this.primaryKeys.some(k=>k==f.id)){
+ f.bkey="1"
}else{
- field.bkey=bkeyPrefix+"0"
+ f.bkey="0"
}
- });
+ })
},
onTplStart(evt){
},
@@ -559,6 +547,21 @@ export default {
doChildDelete(child,idx,children){
children.splice(idx,1)
this.$emit('delete',child,idx,children)
+ },
+ onBkeyChange(field){
+ this.$emit('bkey-change',field)
+ if(field.bkey=='1'){//设为主键
+ if(!this.primaryKeys.some(k=>k==field.id)){
+ this.primaryKeys.push(field.id)
+ this.formDef.pks=this.primaryKeys.join(",")
+ }
+ }else{//取消主键
+ var idx=this.primaryKeys.findIndex(k=>k==field.id)
+ if(idx>=0){
+ this.primaryKeys.splice(idx,1)
+ this.formDef.pks=this.primaryKeys.join(",")
+ }
+ }
},
hasChild(id){
return this.hasMyChild(id,this.selectedFields)
@@ -625,6 +628,7 @@ export default {
}else{
this.selectedFields=[]
}
+ this.setPrimaryKeys();
}//end mounted
}