Commit 2eadf178 authored by unknown's avatar unknown
Browse files

eldropdown

parent d68a3569
Showing with 393 additions and 3 deletions
+393 -3
MWF.xApplication.process.FormDesigner.Module = MWF.xApplication.process.FormDesigner.Module || {};
MWF.xDesktop.requireApp("process.FormDesigner", "Module.$ElElement", null, false);
MWF.xApplication.process.FormDesigner.Module.Eldropdown = MWF.FCEldropdown = new Class({
Extends: MWF.FC$ElElement,
Implements: [Options, Events],
options: {
"style": "default",
"propertyPath": "../x_component_process_FormDesigner/Module/Eldropdown/eldropdown.html"
},
_initModuleType: function(){
this.className = "Eldropdown";
this.moduleType = "element";
this.moduleName = "eldropdown";
},
_createElementHtml: function(){
var html = "<el-dropdown";
html += " :type=\"selectType\"";
html += " :size=\"size\"";
html += " :prefix-icon=\"prefixIcon\"";
html += " :range-separator=\"rangeSeparator\"";
html += " readonly";
html += " :placeholder=\"id\"";
html += " :start-placeholder=\"id\"";
html += " :end-placeholder=\"id\"";
if (this.json.elProperties){
Object.keys(this.json.elProperties).forEach(function(k){
if (this.json.elProperties[k]) html += " "+k+"=\""+this.json.elProperties[k]+"\"";
}, this);
}
html += " :style=\"elStyles\">";
if (this.json.vueSlot) html += this.json.vueSlot;
html += "</el-dropdown>";
return html;
},
_createCopyNode: function(){
this.copyNode = new Element("div", {
"styles": this.css.moduleNodeShow
});
this.copyNode.addEvent("selectstart", function(){
return false;
});
},
_getCopyNode: function(){
if (!this.copyNode) this._createCopyNode();
this.copyNode.setStyle("display", "inline-block");
return this.copyNode;
},
setPropertyName: function(){
// if (this.json.name){
// var input = this.node.getElement("input");
// if (input) input.set("value", this.json.name);
// }
},
setPropertyId: function(){
// if (!this.json.name){
// var input = this.node.getElement("input");
// if (input) input.set("value", this.json.id);
// }
}
});
{
"moduleNodeMove": {
"border-radius": "5px",
"border": "1px solid #ffa200",
"overflow": "hidden",
"margin": "3px",
"-webkit-user-select": "none",
"-moz-user-select": "none",
"position": "absolute",
"z-index": 10002,
"opacity": 0.7,
"cursor": "move",
"height": "26px",
"line-height": "26px",
"padding": "0 10px",
"display": "block"
},
"moduleNodeShow": {
"border": "1px solid #333",
"margin": "3px",
"-webkit-user-select": "none",
"-moz-user-select": "none",
"position": "static",
"top": "auto",
"left": "auto",
"width": "18px",
"height": "2px",
"opacity": 0.5,
"display": "inline-block",
"background": "#ffa200"
},
"moduleNode": {
"border-radius": "5px",
"border-top": "1px dashed #999",
"border-left": "1px dashed #999",
"border-right": "1px dashed #999",
"border-bottom": "1px dashed #999",
"overflow": "hidden",
"cursor": "pointer",
"margin": "3px",
"-webkit-user-select": "none",
"-moz-user-select": "none",
"position": "static",
"top": "auto",
"left": "auto",
"opacity": 1,
"display": "inline-block"
},
"moduleNodeError": {
"border-radius": "5px",
"border-top": "1px dashed #999",
"border-left": "1px dashed #999",
"border-right": "1px dashed #999",
"border-bottom": "1px dashed #999",
"height": "40px",
"width": "200px",
"overflow": "hidden",
"cursor": "pointer",
"margin": "3px",
"-webkit-user-select": "none",
"-moz-user-select": "none",
"position": "static",
"top": "auto",
"left": "auto",
"opacity": 1,
"display": "inline-block"
},
"buttonIcon": {
"height": "26px",
"cursor": "pointer",
"border": "0px",
"margin": "0px"
}
}
o2web/source/x_component_process_FormDesigner/Module/Eldropdown/default/icon/copy1.png

692 Bytes

o2web/source/x_component_process_FormDesigner/Module/Eldropdown/default/icon/delete1.png

794 Bytes

o2web/source/x_component_process_FormDesigner/Module/Eldropdown/default/icon/move1.png

707 Bytes

<div style="background-color: #FFF; overflow: hidden">
<div title="{{$.lp.base}}" class="MWFTab">
<table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
<tr>
<td class="editTableTitle">{{$.lp.id}}:</td>
<td class="editTableValue"><input type="text" name="id" value="text{$.id}" class="editTableInput"/></td>
</tr>
<tr>
<td class="editTableTitle">{{$.lp.name}}:</td>
<td class="editTableValue"><input type="text" name="name" value="text{$.name}" class="editTableInput"/></td>
</tr>
</table>
<table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
<tr>
<td class="editTableTitle">{{$.lp.placement}}:</td>
<td class="editTableValue">
<input type="radio" name="placement" value="top" text{($.placement==='top')?'checked':''}/>{{$.lp.top}}
<input type="radio" name="placement" value="top-start" text{($.placement==='top-start')?'checked':''}/>{{$.lp.topStart}}
<input type="radio" name="placement" value="top-end" text{($.placement==='top-end')?'checked':''}/>{{$.lp.no}}
<input type="radio" name="placement" value="bottom" text{($.placement==='bottom')?'checked':''}/>{{$.lp.no}}
<input type="radio" name="placement" value="bottom-start" text{($.placement==='bottom-start')?'checked':''}/>{{$.lp.no}}
<input type="radio" name="placement" value="bottom-end" text{(!$.placement || $.placement==='bottom-end')?'checked':''}/>{{$.lp.yes}}
</td>
</tr>
<tr>
<td class="editTableTitle">{{$.lp.disabled}}:</td>
<td class="editTableValue">
<input type="radio" name="disabled" value="true" text{($.disabled)?'checked':''}/>{{$.lp.yes}}
<input type="radio" name="disabled" value="false" text{(!$.disabled)?'checked':''}/>{{$.lp.no}}
</td>
</tr>
<tr>
<td class="editTableTitle">{{$.lp.editable}}:</td>
<td class="editTableValue">
<input type="radio" name="editable" value="true" text{($.editable)?'checked':''}/>{{$.lp.yes}}
<input type="radio" name="editable" value="false" text{(!$.editable)?'checked':''}/>{{$.lp.no}}
</td>
</tr>
<tr>
<td class="editTableTitle">{{$.lp.clearable}}:</td>
<td class="editTableValue">
<input type="radio" name="clearable" value="true" text{($.clearable)?'checked':''}/>{{$.lp.yes}}
<input type="radio" name="clearable" value="false" text{(!$.clearable)?'checked':''}/>{{$.lp.no}}
</td>
</tr>
<tr>
<td class="editTableTitle">{{$.lp.size}}:</td>
<td class="editTableValue">
<input type="radio" name="size" value="default" text{(!$.size || $.size==='default')?'checked':''}/>default
<input type="radio" name="size" value="large" text{($.size==='large')?'checked':''}/>large
<input type="radio" name="size" value="small" text{($.size==='small')?'checked':''}/>small
<input type="radio" name="size" value="mini" text{($.size==='mini')?'checked':''}/>mini
</td>
</tr>
<tr>
<td class="editTableTitle">{{$.lp.firstDayOfWeek}}:</td>
<td class="editTableValue">
<select name="firstDayOfWeek" class="editTableInput">
<option value="1" text{($.firstDayOfWeek=="1") ? "selected" : ""}>{{$.lp.weeks.arr[0]}}</option>
<option value="2" text{($.firstDayOfWeek=="2") ? "selected" : ""}>{{$.lp.weeks.arr[1]}}</option>
<option value="3" text{($.firstDayOfWeek=="3") ? "selected" : ""}>{{$.lp.weeks.arr[2]}}</option>
<option value="4" text{($.firstDayOfWeek=="4") ? "selected" : ""}>{{$.lp.weeks.arr[3]}}</option>
<option value="5" text{($.firstDayOfWeek=="5") ? "selected" : ""}>{{$.lp.weeks.arr[4]}}</option>
<option value="6" text{($.firstDayOfWeek=="6") ? "selected" : ""}>{{$.lp.weeks.arr[5]}}</option>
<option value="7" text{(!$.firstDayOfWeek || $.firstDayOfWeek=="7") ? "selected" : ""}>{{$.lp.weeks.arr[6]}}</option>
</select>
</td>
</tr>
<tr>
<td colspan="2">
<div>{{$.lp.disabledDateNote}}</div>
<div class="MWFFormulaArea" name="disabledDate" title="{{$.lp.disabledDateScript}}"></div>
</td>
</tr>
</table>
<!-- <table id="text{$.pid}datePickTable">-->
<!-- <tr>-->
<!-- <td colspan="2">-->
<!-- <div>{{$.lp.disabledDateNote}}</div>-->
<!-- <div class="MWFFormulaArea" name="disabledDate" title="{{$.lp.disabledDateScript}}"></div>-->
<!-- </td>-->
<!-- </tr>-->
<!-- <tr>-->
<!-- <td class="editTableTitle">{{$.lp.firstDayOfWeek}}:</td>-->
<!-- <td class="editTableValue">-->
<!-- <select name="firstDayOfWeek" class="editTableInput">-->
<!-- <option value="1" text{($.firstDayOfWeek=="1") ? "selected" : ""}>{{$.lp.weeks.arr[0]}}</option>-->
<!-- <option value="2" text{($.firstDayOfWeek=="2") ? "selected" : ""}>{{$.lp.weeks.arr[1]}}</option>-->
<!-- <option value="3" text{($.firstDayOfWeek=="3") ? "selected" : ""}>{{$.lp.weeks.arr[2]}}</option>-->
<!-- <option value="4" text{($.firstDayOfWeek=="4") ? "selected" : ""}>{{$.lp.weeks.arr[3]}}</option>-->
<!-- <option value="5" text{($.firstDayOfWeek=="5") ? "selected" : ""}>{{$.lp.weeks.arr[4]}}</option>-->
<!-- <option value="6" text{($.firstDayOfWeek=="6") ? "selected" : ""}>{{$.lp.weeks.arr[5]}}</option>-->
<!-- <option value="7" text{(!$.firstDayOfWeek || $.firstDayOfWeek=="7") ? "selected" : ""}>{{$.lp.weeks.arr[6]}}</option>-->
<!-- </select>-->
<!-- </td>-->
<!-- </tr>-->
<!-- </table>-->
<!-- <table id="text{$.pid}noRangeTable">-->
<!-- <tr>-->
<!-- <td class="editTableTitle">{{$.lp.placeholder}}:</td>-->
<!-- <td class="editTableValue"><input type="text" name="placeholder" value="text{$.placeholder}" class="editTableInput"/></td>-->
<!-- </tr>-->
<!-- </table>-->
<table id="text{$.pid}rangeTable" style="display: text{(!['daterange','monthrange'].contains($.selectType)) ? 'none':''};">
<tr>
<td class="editTableTitle">{{$.lp.rangeSeparator}}:</td>
<td class="editTableValue"><input type="text" name="rangeSeparator" value="text{$.rangeSeparator}" class="editTableInput"/></td>
</tr>
<tr>
<td class="editTableTitle">{{$.lp.startPlaceholder}}:</td>
<td class="editTableValue"><input type="text" name="startPlaceholder" value="text{$.startPlaceholder}" class="editTableInput"/></td>
</tr>
<tr>
<td class="editTableTitle">{{$.lp.endPlaceholder}}:</td>
<td class="editTableValue"><input type="text" name="endPlaceholder" value="text{$.endPlaceholder}" class="editTableInput"/></td>
</tr>
</table>
<div onclick="var node = this.getNext(); node.setStyle('display', ((node.getStyle('display')!='none') ? 'none': 'block'))" style="cursor: pointer; height:24px; text-align: center; line-height: 24px; background-color: #EEE; border-top: 1px solid #999;font-weight:bold;">{{$.lp.prefixIcon}}</div>
<div style="display: text{($.prefixIcon)?'block':'none'}" class="MWFElIcon" name="prefixIcon"></div>
<!-- <div onclick="var node = this.getNext(); node.setStyle('display', ((node.getStyle('display')!='none') ? 'none': 'block'))" style="cursor: pointer; height:24px; text-align: center; line-height: 24px; background-color: #EEE; border-top: 1px solid #999;font-weight:bold;">{{$.lp.suffixIcon}}</div>-->
<!-- <div style="display: text{($.suffixIcon)?'block':'none'}" class="MWFElIcon" name="suffixIcon"></div>-->
<div class="MWFMaplist" name="elStyles" title="{{$.lp.style}}"></div>
<div class="MWFMaplist" name="elProperties" title="{{$.lp.attribute}}"></div>
<table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
<tr>
<td class="editTableTitle">{{$.lp.compute}}:</td>
<td class="editTableValue">
<input type="radio" name="compute" value="create" text{(!$.compute || $.compute=='create')?'checked':''}/>{{$.lp.create}}
<input type="radio" name="compute" value="save" text{($.compute=='save')?'checked':''}/>{{$.lp.save}}
<input type="radio" name="compute" value="show" text{($.compute=='show')?'checked':''}/>{{$.lp.show}}
</td>
</tr>
</table>
<div class="MWFScriptArea" name="defaultValue" title="{{$.lp.defaultValue}} (S)"></div>
<div class="MWFValidation" name="validationConfig"></div>
<div class="MWFScriptArea" name="validation" title="{{$.lp.verificationScript}} (S)"></div>
</div>
<div title="Vue" class="MWFTab">
<div onclick="var node = this.getNext(); node.setStyle('display', ((node.getStyle('display')!='none') ? 'none': 'block'))" style="cursor: pointer; height:24px; padding-left: 5px; line-height: 24px; background-color: #EEE; border-bottom: 1px solid #999;font-weight:bold;">Vue Data</div>
<div style="display: text{($.vueData && $.vueData.code) ? 'block': 'none'}" class="MWFScriptArea" name="vueData" title="Vue Data (S)"></div>
<div onclick="var node = this.getNext(); node.setStyle('display', ((node.getStyle('display')!='none') ? 'none': 'block'))" style="cursor: pointer; height:24px; padding-left: 5px; line-height: 24px; background-color: #EEE; border-bottom: 1px solid #999;font-weight:bold;">Vue Method</div>
<div div style="display: text{($.vueMethods && $.vueMethods.code) ? 'block': 'none'}" class="MWFScriptArea" name="vueMethods" title="Vue Methods (S)"></div>
<div onclick="var node = this.getNext(); node.setStyle('display', ((node.getStyle('display')!='none') ? 'none': 'block'))" style="cursor: pointer; height:24px; padding-left: 5px; line-height: 24px; background-color: #EEE; border-bottom: 1px solid #999;font-weight:bold;">Vue CSS</div>
<div div style="display: text{($.vueCss && $.vueCss.code) ? 'block': 'none'}" class="MWFCssArea" name="vueCss" title="Vue Css (S)"></div>
<div onclick="var node = this.getNext(); node.setStyle('display', ((node.getStyle('display')!='none') ? 'none': 'block'))" style="cursor: pointer; height:24px; padding-left: 5px; line-height: 24px; background-color: #EEE; border-bottom: 1px solid #999;font-weight:bold;">Vue Slots</div>
<div style="display: text{($.vueSlot) ? 'block' : 'none'}">
<div class="MWFHtmlEditorArea" name="vueSlot" title="Input Slot (HTML)"></div>
</div>
</div>
<div title="{{$.lp.section}}" class="MWFTab">
<table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
<tr>
<td class="editTableTitle">{{$.lp.enableSection}}:</td>
<td class="editTableValue">
<input onclick="if (this.checked){ $('text{$.pid}sectionByEditArea').setStyle('display', 'block')}" type="radio" name="section" value="yes" text{($.section=='yes')?'checked':''}/>{{$.lp.yes}}
<input onclick="if (this.checked){ $('text{$.pid}sectionByEditArea').setStyle('display', 'none')}" type="radio" name="section" value="no" text{($.section!='yes')?'checked':''}/>{{$.lp.no}}
</td>
</tr>
</table>
<div id="text{$.pid}sectionByEditArea" style="display: text{($.section=='yes')?'block':'none'};">
<table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
<tr>
<td class="editTableTitle">{{$.lp.sectionBy}}:</td>
<td class="editTableValue">
<input class="editTableRadio" onclick="if (this.checked){ $('text{$.pid}sectionByScriptEditArea').setStyle('display', 'none');}" name="sectionBy" text{(($.sectionBy=='person') || ($.sectionBy!='unit' && $.sectionBy!='activity' && $.sectionBy!='script'))?'checked':''} type="radio" value="person"/>{{$.lp.handler}}<br/>
<input class="editTableRadio" onclick="if (this.checked){ $('text{$.pid}sectionByScriptEditArea').setStyle('display', 'none');}" name="sectionBy" text{($.sectionBy=='unit')?'checked':''} type="radio" value="unit"/>{{$.lp.handlerUnit}}<br/>
<input class="editTableRadio" onclick="if (this.checked){ $('text{$.pid}sectionByScriptEditArea').setStyle('display', 'none');}" name="sectionBy" text{($.sectionBy=='activity')?'checked':''} type="radio" value="activity"/>{{$.lp.activityId}}<br/>
<input class="editTableRadio" onclick="if (this.checked){ $('text{$.pid}sectionByScriptEditArea').setStyle('display', 'none');}" name="sectionBy" text{($.sectionBy=='splitValue')?'checked':''} type="radio" value="splitValue"/>{{$.lp.splitValue}}<br/>
<input class="editTableRadio" onclick="if (this.checked){ $('text{$.pid}sectionByScriptEditArea').setStyle('display', 'block');}" name="sectionBy" text{($.sectionBy=='script')?'checked':''} type="radio" value="script"/>{{$.lp.script}}<br/>
</td>
</tr>
</table>
<div id="text{$.pid}sectionByScriptEditArea" style="display: text{($.sectionBy=='script')?'block':'none'};">
<div class="MWFScriptArea" name="sectionByScript" title="{{$.lp.sectionBy}} (S)"></div>
</div>
</div>
</div>
<div title="{{$.lp.event}}" class="MWFTab">
<div class="MWFEventsArea" name="events"></div>
</div>
<div title="HTML" class="MWFTab">
<div class="MWFHTMLArea" style="width:100%; height:400px; border:0px;font-family: Verdana, Geneva, sans-serif; font-size:14px"></div>
</div>
<div title="JSON" class="MWFTab">
<div class="MWFJSONArea" style="font-family: Verdana, Geneva, sans-serif; font-size:14px"></div>
</div>
</div>
{
"id": "",
"name": "",
"type": "Eldropdown",
"description": "",
"isReadonly" : false,
"selectType": "date",
"format": "yyyy-MM-dd",
"isRange": false,
"disabled": false,
"editable": false,
"clearable": false,
"size" : "default",
"firstDayOfWeek" : "7",
"prefixIcon": "",
"rangeSeparator": MWF.xApplication.process.FormDesigner.LP.propertyTemplate.to,
"startPlaceholder": MWF.xApplication.process.FormDesigner.LP.propertyTemplate.startDate,
"endPlaceholder": MWF.xApplication.process.FormDesigner.LP.propertyTemplate.endDate,
"vueData": {},
"vueMethods": {},
"vueCss": {},
"vueSlot": "",
"elProperties": {},
"elStyles": {},
"events": {
"queryLoad": {
"code": "",
"html": ""
},
"postLoad": {
"code": "",
"html": ""
},
"load": {
"code": "",
"html": ""
},
"change": {
"code": "",
"html": ""
},
"focus": {
"code": "",
"html": ""
},
"blur": {
"code": "",
"html": ""
}
},
"properties": {},
"class": "",
"styles": {},
"container": ""
}
......@@ -143,7 +143,7 @@ MWF.xApplication.process.Xform.DatagridPC = new Class(
* "毕业日期" : "2019-9-2",
* "errorTextList" : [
* "第5列:aa01-1-2不是正确的日期格式。"
* ] //校验出的错误信息,如果行数据正确,则无该字段
* ] //校验出的错误信息,如果行数据正确,则无该字段
* }
* ...
* ], //导入的数据
......
......@@ -152,7 +152,7 @@ MWF.xApplication.process.Xform.DatatablePC = new Class(
* "毕业日期" : "2019-9-2",
* "errorTextList" : [
* "第5列:aa01-1-2不是正确的日期格式。"
* ] //校验出的错误信息,如果行数据正确,则无该字段
* ] //校验出的错误信息,如果行数据正确,则无该字段
* }
* ...
* ], //导入的数据
......
......@@ -131,7 +131,7 @@ MWF.xApplication.process.Xform.Datatemplate = MWF.APPDatatemplate = new Class(
* "毕业日期" : "2019-9-2",
* "errorTextList" : [
* "第5列:aa01-1-2不是正确的日期格式。"
* ] //校验出的错误信息,如果行数据正确,则无该字段
* ] //校验出的错误信息,如果行数据正确,则无该字段
* }
* ...
* ], //导入的数据
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment