Index: ssts-satisfactionsurvey/src/main/java/com/forgon/disinfectsystem/satisfactionsurvey/service/SatisfactionSurveyTemplateManagerImpl.java =================================================================== diff -u -r18546 -r18722 --- ssts-satisfactionsurvey/src/main/java/com/forgon/disinfectsystem/satisfactionsurvey/service/SatisfactionSurveyTemplateManagerImpl.java (.../SatisfactionSurveyTemplateManagerImpl.java) (revision 18546) +++ ssts-satisfactionsurvey/src/main/java/com/forgon/disinfectsystem/satisfactionsurvey/service/SatisfactionSurveyTemplateManagerImpl.java (.../SatisfactionSurveyTemplateManagerImpl.java) (revision 18722) @@ -340,6 +340,13 @@ satisfactionSurveyTemplate.setFormDefinition_id(formDefinition.getId()); objectDao.saveOrUpdate(satisfactionSurveyTemplate); } + else { + //因为formDefinitionManager保存的时候items不允许为空,但满意度调查的自定义表单允许为空,所以当items为空的时候,这里要取消对应的关联,如果formDefinition不为空,则要删除 + satisfactionSurveyTemplate.setFormDefinition_id(null); + if (formDefinition.getId() != null) { + objectDao.delete(formDefinition); + } + } } catch (Exception e) { logger.error(e.getMessage()); Index: ssts-web/src/main/webapp/disinfectsystem/satisfactionsurvey/satisfactionSurveyTemplateCustomForm.js =================================================================== diff -u -r18551 -r18722 --- ssts-web/src/main/webapp/disinfectsystem/satisfactionsurvey/satisfactionSurveyTemplateCustomForm.js (.../satisfactionSurveyTemplateCustomForm.js) (revision 18551) +++ ssts-web/src/main/webapp/disinfectsystem/satisfactionsurvey/satisfactionSurveyTemplateCustomForm.js (.../satisfactionSurveyTemplateCustomForm.js) (revision 18722) @@ -19,7 +19,6 @@ /** * 获取ext对象 - * @param self_ext * @returns {*} */ getExtObj: function () { @@ -84,7 +83,6 @@ valueField: 'value', displayField: 'value', allowBlank: false, - hidden : !tBarConfig['requirement'], width: 80, editable: false, store: new customForm.extObj.data.SimpleStore({ @@ -169,9 +167,8 @@ }, { id: 'aotuColumnId', header: "删除", dataIndex: 'name', width: 60, - renderer: function (v, p, record, index) { - var str = ""; - return str; + renderer: function () { + return ""; } } ]; @@ -242,17 +239,17 @@ beforeSubmit: function () { var store = customForm.extObj.getCmp('formDefinitionItemConfigPanel').getStore(); var count = store.getCount(); - if (count === 0) { - showResult("表单元素列表不能为空!"); - return false; - } + // if (count === 0) { + // showResult("表单元素列表不能为空!"); + // return false; + // } var jsonArray = []; for (var i = 0; i < count; i++) { var record = store.getAt(i); var name = record.get('elementName'); var type = record.get('type'); var optionsJson = record.get("optionsJson"); - if ((itemTypes[3] == type || itemTypes[4] == type) && (optionsJson == "" || optionsJson == "[]")) { + if ((itemTypes[3] === type || itemTypes[4] === type) && (optionsJson === "" || optionsJson === "[]")) { showResult(name + ",元素类型[" + type + "],未设置参数值!"); return false; } @@ -281,7 +278,7 @@ method: 'GET', params: {id: id}, waitMsg: '正在加载数据,请稍候', - success: function (data, action) { + success: function (data) { var formConfig = customForm.extObj.decode(data.responseText).data; // 如果存在自定义回调函数,这里执行自定义回调函数 if (fn) { @@ -302,7 +299,7 @@ store.add(itemRecord); }); }, - failure: function (form, action) { + failure: function () { showResult("加载出错,请联系管理员!"); } }); @@ -335,11 +332,11 @@ }), cm: customForm.getCm(config), listeners: { - cellclick: function (thiz, rowIndex, columnIndex, e) { + cellclick: function (thiz, rowIndex, columnIndex) { var record = thiz.getStore().getAt(rowIndex); var type = record.get("type"); var params = record.get("optionsJson"); - if (columnIndex == 4 && (itemTypes[3] == type || itemTypes[4] == type)) { + if (columnIndex === 4 && (itemTypes[3] === type || itemTypes[4] === type)) { formDefinitionOptions.setFormDefinitionOptionsWin(params, rowIndex); } } @@ -374,7 +371,6 @@ /** * 获取ext对象 - * @param self_ext * @returns {*} */ getExtObj: function () { @@ -434,7 +430,7 @@ width: 40, menuDisabled: true, dataIndex: 'button', - renderer: function (v, p, record, index) { + renderer: function () { return ""; } }]; @@ -461,7 +457,7 @@ listeners: { render: function (p) { p.getEl().on('keypress', function (e) { - if (e.getKey() == 13) { + if (e.getKey() === 13) { formDefinitionOptions.addOptionItem(); } }) @@ -472,10 +468,10 @@ handler: function () { formDefinitionOptions.addOptionItem(); } - }] + }]; return tBar; } -} +}; // 自定义项单选或者多选弹窗类 var formDefinitionOptions = { @@ -492,7 +488,6 @@ /** * 获取ext对象 - * @param self_ext * @returns {*} */ getExtObj: function () { @@ -611,7 +606,7 @@ }), listeners: { cellclick: function (thiz, rowIndex, columnIndex, e) { - if (columnIndex == 3) { + if (columnIndex === 3) { var valueTriggerItemNames = thiz.getStore().getAt(rowIndex).get('valueTriggerItemNames'); triggerItem.openTriggerItemWin(rowIndex, valueTriggerItemNames); } @@ -694,7 +689,7 @@ orderNumber: (i + 1), valueTriggerItemNames: record.get("valueTriggerItemNames") }); - if (optionsStr != "") { + if (optionsStr !== "") { optionsStr += ", "; } optionsStr += record.get("name"); @@ -723,7 +718,6 @@ /** * 获取ext对象 - * @param self_ext * @returns {*} */ getExtObj: function () { @@ -734,14 +728,14 @@ var optionsStr = ""; var records = triggerItem.extObj.getCmp("triggerItemPanel").getSelectionModel().getSelections(); for (var i = 0, len = records.length; i < len; i++) { - if (optionsStr != "") { + if (optionsStr !== "") { optionsStr += ","; } optionsStr += records[i].data['name']; } var store = triggerItem.extObj.getCmp('itemOptionsGrid').getStore(); var record = store.getAt(rowIndex); - record.set("valueTriggerItemNames", optionsStr) + record.set("valueTriggerItemNames", optionsStr); triggerItem.extObj.getCmp("triggerItemWindow").close(); }, @@ -861,7 +855,7 @@ triggerItem.selectSaveCheck(valueTriggerItemNames, triggerItemStore, selectModel); } -} +}; function removeItem(gridId) { var gridObj = triggerItem.extObj.getCmp(gridId); Index: ssts-web/src/main/webapp/disinfectsystem/satisfactionsurvey/satisfactionSurveyTemplateForm.js =================================================================== diff -u -r18546 -r18722 --- ssts-web/src/main/webapp/disinfectsystem/satisfactionsurvey/satisfactionSurveyTemplateForm.js (.../satisfactionSurveyTemplateForm.js) (revision 18546) +++ ssts-web/src/main/webapp/disinfectsystem/satisfactionsurvey/satisfactionSurveyTemplateForm.js (.../satisfactionSurveyTemplateForm.js) (revision 18722) @@ -629,11 +629,11 @@ if (!jsonArray){ return false; } + var items = jsonArray.length > 0 ? Ext.encode(jsonArray) : ''; form.form.submit({ url : WWWROOT + '/disinfectSystem/satisfactionsurvey/satisfactionSurveyTemplateAction!saveSatisfactionSurveyTemplate.do', method : 'POST', - params : {"items" : Ext.encode(jsonArray)}, - // params : {"items" : JSON.stringify(jsonArray)}, + params : {"items" : items}, waitMsg : '正在保存数据,请稍候', waitTitle : '提交表单', success : function(form, action) {