diff --git a/src/api/system/baseForm.js b/src/api/system/baseForm.js index d16d26a..f5f5284 100644 --- a/src/api/system/baseForm.js +++ b/src/api/system/baseForm.js @@ -4,9 +4,13 @@ function customParamsSerializer(params) { for (let key in params) { if (params.hasOwnProperty(key)) { if (Array.isArray(params[key])) { - params[key].forEach((item,index) => { - result += `${key}[${index}][key]=${item.key}&${key}[${index}][op]=${item.op}&${key}[${index}][value]=${item.value}&`; - }); + params[key].forEach((item,index) => { + if(typeof item === 'object'){ + result += `${key}[${index}][key]=${item.key}&${key}[${index}][op]=${item.op}&${key}[${index}][value]=${item.value}&`; + }else{ + result += `${key}[${index}]=${item}&`; + } + }); } else { result += `${key}=${params[key]}&`; } diff --git a/src/views/checks/index.vue b/src/views/checks/index.vue index 369ed43..c6347fe 100644 --- a/src/views/checks/index.vue +++ b/src/views/checks/index.vue @@ -2,7 +2,7 @@
- +
@@ -103,16 +103,22 @@ width: 120, prop: 'name', align: 'center' + }, + { + label: "所属街道", + width: 120, + prop: 'street', + align: 'center' }, { label: "身份证", - width: 120, + width: 180, prop: 'idcard', align: 'center' }, { label: "残疾证", - width: 120, + width: 180, prop: 'number', align: 'center' }, diff --git a/src/views/component/dialog.vue b/src/views/component/dialog.vue index 1ae2cd0..a43bd2a 100644 --- a/src/views/component/dialog.vue +++ b/src/views/component/dialog.vue @@ -42,6 +42,7 @@ export default { (() => { let dom = []; this.formInfo.filter(i => i.form_show).forEach((i, index) => { + console.log("i",i) dom.push( h( "el-form-item", @@ -73,8 +74,9 @@ export default { ...addPropsMap.get(i.edit_input), ...this.extraProps(i), placeholder: i.help, - value: this.form[i.field], + value: this.form[i.field] }, + // i.select_item && typeof i.select_item === 'object' && (toString.call(i.select_item) !== "[object Array]") ? this.findKey(i.select_item,this.form[i.field]) : attrs: { placeholder: i.help || `请填写${i.name}`, }, @@ -197,6 +199,10 @@ export default { }; }, methods: { + findKey(obj, value, compare = (a, b) => a === b) { + return Object.keys(obj).find(k => compare(parseInt(obj[k]), parseInt(value))) + }, + fileRemoveHandler(file, field) { this.file[field] = this.file[field].filter((item) => item !== file); this.file = Object.assign({}, this.file); @@ -408,6 +414,10 @@ export default { { required: true, message: `请填写${i.name}` }, ]; } + if (i.edit_input === "text" && typeof i.select_item === 'object' && Object.prototype.toString.call(i.select_item) !== '[object Array]') { + + i.edit_input = 'radio'; + } if (i.edit_input === "files") { this.form[i.field] = []; } diff --git a/src/views/component/table.vue b/src/views/component/table.vue index ac83c45..8f90246 100644 --- a/src/views/component/table.vue +++ b/src/views/component/table.vue @@ -276,7 +276,7 @@ > @@ -326,6 +326,8 @@ export default { ], }, form: [], + importForm:[], + exportForm:[], table: [], customForm: { customFormId: "", @@ -351,7 +353,7 @@ export default { Object.assign(this.select, { page: 1, page_size: 9999 }) ); if (res.data) { - let headers = this.form.map((i) => { + let headers = this.exportForm.map((i) => { return { key: i.field, title: i.name, @@ -444,6 +446,8 @@ export default { } }); this.form = fields.sort(this.handle('sort')); + + console.log("this.form",this.form) // if(res.fields && res.fields instanceof Array) { // res.fields.forEach(i => { // if (i.field) { @@ -471,11 +475,22 @@ export default { // }) // } // this.form = res.fields + this.importForm = this.form + ?.filter((i) => i.form_show&&i.list_show) + .map((i)=>{ + return i + }) + this.exportForm = this.form + ?.filter((i) => i.list_show) + .map((i)=>{ + return i + }) this.table = this.form ?.filter((i) => i.list_show) .map((i) => { let linkOb = {}; - if (i.select_item && typeof i.select_item === 'object' && (toString.call(i.select_item) !== "[object Array]")) { + if (i.edit_input==='radio'||i.edit_input==='checkbox' && i.select_item && typeof i.select_item === 'object' && Object.prototype.toString.call(i.select_item) !== '[object Array]') { + console.log("i",i.select_item) let keys = Object.keys(i.select_item) linkOb.customFn = row => { let paramMap = new Map() @@ -531,13 +546,13 @@ export default { { prop: i.field, label: i.name, - width: i.width, + width: i.width==0?120:i.width, fixed: i.is_fixed, + align: i.width==240?'left':'center' }, linkOb ); }); - console.log(this.table) this.table.unshift({ type: "index", width: 60, diff --git a/src/views/record/components/addRecord.vue b/src/views/record/components/addRecord.vue index 5f5ff85..b948942 100644 --- a/src/views/record/components/addRecord.vue +++ b/src/views/record/components/addRecord.vue @@ -12,7 +12,7 @@