ocpview-plus 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/dist/efviewplus.min.esm.js +99954 -0
  4. package/dist/efviewplus.min.js +142 -0
  5. package/dist/locale/lang.js +1 -0
  6. package/dist/locale/zh-CN.js +1 -0
  7. package/dist/locale/zh-TW.js +1 -0
  8. package/dist/locale/zh-UG.js +1 -0
  9. package/dist/style.css +9 -0
  10. package/dist/styles/efviewplus.css +1 -0
  11. package/package.json +144 -0
  12. package/src/components/base/controlbase.vue +191 -0
  13. package/src/components/base/controlbox.vue +102 -0
  14. package/src/components/base/index.js +3 -0
  15. package/src/components/base/load.js +20 -0
  16. package/src/components/base/probase.js +220 -0
  17. package/src/components/base/size.js +78 -0
  18. package/src/components/billbox/billbox.vue +68 -0
  19. package/src/components/billbox/index.js +2 -0
  20. package/src/components/cascaderbox/cascaderbox.vue +184 -0
  21. package/src/components/cascaderbox/index.js +2 -0
  22. package/src/components/checkbox/checkbox.vue +76 -0
  23. package/src/components/checkbox/checkgroupbox.vue +104 -0
  24. package/src/components/checkbox/index.js +3 -0
  25. package/src/components/colorbox/colorbox.vue +44 -0
  26. package/src/components/colorbox/index.js +2 -0
  27. package/src/components/combobox/combobox.vue +220 -0
  28. package/src/components/combobox/index.js +2 -0
  29. package/src/components/conditionbox/conditionbase.vue +195 -0
  30. package/src/components/conditionbox/conditionbox.vue +63 -0
  31. package/src/components/conditionbox/conditionfilterbox.vue +477 -0
  32. package/src/components/conditionbox/conditionselectorbox.vue +237 -0
  33. package/src/components/conditionbox/index.js +5 -0
  34. package/src/components/conditionbox/queryconditionbox.vue +26 -0
  35. package/src/components/conditionbox/queryconditionboxbase.vue +124 -0
  36. package/src/components/conditionbox/searchconditionbox.vue +114 -0
  37. package/src/components/conditionbox/searchgrid.vue +391 -0
  38. package/src/components/datebox/datebox.vue +129 -0
  39. package/src/components/datebox/daterangebox.vue +155 -0
  40. package/src/components/datebox/index.js +3 -0
  41. package/src/components/form/baseform.vue +677 -0
  42. package/src/components/form/detailsbox.vue +487 -0
  43. package/src/components/form/formbox.vue +29 -0
  44. package/src/components/form/formcardbox.vue +268 -0
  45. package/src/components/form/formcardgroupbox.vue +252 -0
  46. package/src/components/form/formcompro.js +19 -0
  47. package/src/components/form/formdetail.vue +129 -0
  48. package/src/components/form/formdetailtwo.vue +302 -0
  49. package/src/components/form/index.js +8 -0
  50. package/src/components/form/toolanchor.js +46 -0
  51. package/src/components/form/workform.vue +168 -0
  52. package/src/components/grid/basegrid.vue +1061 -0
  53. package/src/components/grid/editgrid.vue +51 -0
  54. package/src/components/grid/editgridbase.vue +947 -0
  55. package/src/components/grid/editgridcard.vue +193 -0
  56. package/src/components/grid/expandrow.vue +137 -0
  57. package/src/components/grid/index.js +6 -0
  58. package/src/components/grid/viewgrid.vue +122 -0
  59. package/src/components/grid/viewgridbase.vue +1284 -0
  60. package/src/components/icon/common-icon.vue +53 -0
  61. package/src/components/icon/eicon.vue +29 -0
  62. package/src/components/icon/icons.vue +42 -0
  63. package/src/components/icon/index.js +2 -0
  64. package/src/components/label/index.js +3 -0
  65. package/src/components/label/showtext.vue +95 -0
  66. package/src/components/load/loadcartoon.vue +228 -0
  67. package/src/components/map/index.js +2 -0
  68. package/src/components/map/mapbox.vue +348 -0
  69. package/src/components/masterplate/appendix.vue +586 -0
  70. package/src/components/masterplate/approval.vue +803 -0
  71. package/src/components/masterplate/base.vue +985 -0
  72. package/src/components/masterplate/billasyncimport.vue +614 -0
  73. package/src/components/masterplate/billconditionbox.vue +224 -0
  74. package/src/components/masterplate/billconditionsbox.vue +427 -0
  75. package/src/components/masterplate/billdetailform.vue +990 -0
  76. package/src/components/masterplate/billimport.vue +263 -0
  77. package/src/components/masterplate/billquerygrid.vue +316 -0
  78. package/src/components/masterplate/billsinglegrid.vue +234 -0
  79. package/src/components/masterplate/birtreport.vue +185 -0
  80. package/src/components/masterplate/detailbtntoolbar.vue +311 -0
  81. package/src/components/masterplate/detailsbox.vue +386 -0
  82. package/src/components/masterplate/editgridcard.vue +222 -0
  83. package/src/components/masterplate/editgridcard2.vue +109 -0
  84. package/src/components/masterplate/formcard.vue +106 -0
  85. package/src/components/masterplate/formcardgroupbox.vue +168 -0
  86. package/src/components/masterplate/formdetailtwo.vue +356 -0
  87. package/src/components/masterplate/gridcolset.vue +227 -0
  88. package/src/components/masterplate/index.js +23 -0
  89. package/src/components/masterplate/layouttemplate.vue +33 -0
  90. package/src/components/masterplate/leftlistrightdetails.vue +474 -0
  91. package/src/components/masterplate/leftlistrightlist.vue +465 -0
  92. package/src/components/masterplate/lefttreerightdetails.vue +619 -0
  93. package/src/components/masterplate/levelreport.vue +510 -0
  94. package/src/components/masterplate/listbtntoolbar.vue +257 -0
  95. package/src/components/masterplate/listdetails.vue +769 -0
  96. package/src/components/masterplate/operlog.vue +272 -0
  97. package/src/components/masterplate/options.vue +110 -0
  98. package/src/components/masterplate/page.vue +102 -0
  99. package/src/components/masterplate/promptmessage.vue +74 -0
  100. package/src/components/masterplate/querybar.vue +490 -0
  101. package/src/components/masterplate/report.vue +357 -0
  102. package/src/components/masterplate/rowbtntoolbar.vue +126 -0
  103. package/src/components/masterplate/simpletree.vue +129 -0
  104. package/src/components/masterplate/simpleviewgrid.vue +144 -0
  105. package/src/components/mychart/bar/bar.vue +202 -0
  106. package/src/components/mychart/basechart.vue +190 -0
  107. package/src/components/mychart/complexmychart/barline.vue +154 -0
  108. package/src/components/mychart/gauge/gauge.vue +83 -0
  109. package/src/components/mychart/index.js +9 -0
  110. package/src/components/mychart/line/line.vue +202 -0
  111. package/src/components/mychart/liquidfill/liquidfill.vue +109 -0
  112. package/src/components/mychart/pie/pie.vue +96 -0
  113. package/src/components/mychart/radar/radar.vue +122 -0
  114. package/src/components/mychart/scatter/scatter.vue +76 -0
  115. package/src/components/numberbox/append.js +11 -0
  116. package/src/components/numberbox/index.js +3 -0
  117. package/src/components/numberbox/numberbox.vue +303 -0
  118. package/src/components/numberbox/numberrangebox.vue +423 -0
  119. package/src/components/picturebox/filebox.vue +365 -0
  120. package/src/components/picturebox/index.js +3 -0
  121. package/src/components/picturebox/picturebox.vue +541 -0
  122. package/src/components/picturebox/uploadbox.vue +164 -0
  123. package/src/components/poptagbox/index.js +2 -0
  124. package/src/components/poptagbox/poptagbox.vue +389 -0
  125. package/src/components/poptextbox/index.js +2 -0
  126. package/src/components/poptextbox/poptextbox.vue +601 -0
  127. package/src/components/radiobox/index.js +2 -0
  128. package/src/components/radiobox/radiogroupbox.vue +76 -0
  129. package/src/components/richtextbox/editor.vue +150 -0
  130. package/src/components/richtextbox/index.js +2 -0
  131. package/src/components/richtextbox/richtextbox.vue +448 -0
  132. package/src/components/textbox/index.js +2 -0
  133. package/src/components/textbox/textbox.vue +98 -0
  134. package/src/components/timebox/index.js +2 -0
  135. package/src/components/timebox/timebox.vue +76 -0
  136. package/src/components/toolbar/ebutton.vue +169 -0
  137. package/src/components/toolbar/index.js +3 -0
  138. package/src/components/toolbar/toolbar.vue +446 -0
  139. package/src/components/tree/basetree.vue +725 -0
  140. package/src/components/tree/index.js +3 -0
  141. package/src/components/tree/treedata.vue +51 -0
  142. package/src/components/tree/treedatabase.vue +189 -0
  143. package/src/components/upload/billimport.vue +233 -0
  144. package/src/components/upload/index.js +2 -0
  145. package/src/components/videobox/index.js +2 -0
  146. package/src/components/videobox/uploadbox.vue +148 -0
  147. package/src/components/videobox/videobox.vue +503 -0
  148. package/src/components/wrichtextbox/editor.vue +219 -0
  149. package/src/components/wrichtextbox/index.js +2 -0
  150. package/src/components/wrichtextbox/wrichtextbox.vue +63 -0
  151. package/src/index.js +215 -0
  152. package/src/locale/format.js +51 -0
  153. package/src/locale/index.js +63 -0
  154. package/src/locale/lang/zh-CN.js +123 -0
  155. package/src/locale/lang/zh-TW.js +114 -0
  156. package/src/locale/lang/zh-UG.js +115 -0
  157. package/src/locale/lang.js +15 -0
  158. package/src/method/case/case.js +1180 -0
  159. package/src/method/config/queryconfig.js +24 -0
  160. package/src/method/const/const.js +815 -0
  161. package/src/method/index.js +8 -0
  162. package/src/static/excel/exportexcel.js +627 -0
  163. package/src/static/iview/coustom.js +463 -0
  164. package/src/store/index.js +19 -0
  165. package/src/store/modules/app.js +53 -0
  166. package/src/styles/README.md +3 -0
  167. package/src/styles/common.less +75 -0
  168. package/src/styles/components/anchor.less +74 -0
  169. package/src/styles/components/approval.less +136 -0
  170. package/src/styles/components/button.less +208 -0
  171. package/src/styles/components/card.less +51 -0
  172. package/src/styles/components/content.less +38 -0
  173. package/src/styles/components/font.less +314 -0
  174. package/src/styles/components/form.less +72 -0
  175. package/src/styles/components/iconfont/fonts/iconfont.less +1376 -0
  176. package/src/styles/components/iconfont/fonts/iconfont.svg +699 -0
  177. package/src/styles/components/iconfont/fonts/iconfont.ttf +0 -0
  178. package/src/styles/components/iconfont/fonts/iconfont.woff +0 -0
  179. package/src/styles/components/iconfont/fonts/iconfont.woff2 +0 -0
  180. package/src/styles/components/index.less +16 -0
  181. package/src/styles/components/input.less +290 -0
  182. package/src/styles/components/modal.less +203 -0
  183. package/src/styles/components/page.less +340 -0
  184. package/src/styles/components/select.less +361 -0
  185. package/src/styles/components/steps.less +367 -0
  186. package/src/styles/components/table.less +544 -0
  187. package/src/styles/components/tabs.less +249 -0
  188. package/src/styles/components/upload.less +83 -0
  189. package/src/styles/custom.less +67 -0
  190. package/src/styles/index.less +6 -0
  191. package/src/styles/pack.less +6 -0
  192. package/src/utils/EfuMessenger.js +155 -0
  193. package/src/utils/assist.js +353 -0
  194. package/src/utils/index.js +1 -0
  195. package/src/utils/random_str.js +10 -0
@@ -0,0 +1,224 @@
1
+ <template>
2
+ <div style="display: flex; align-items: center;">
3
+ <Icon custom="iconfont icon-custom-delcond" @click.stop="doDel" size="20" color="#515a6e" style="cursor:pointer;margin-bottom:10px;padding-right:8px"/>
4
+ <FormBox ref="form" :config="form" @inputValue="formChanged" style="flex:1"/>
5
+ </div>
6
+ </template>
7
+ <script>
8
+ export default {
9
+ name: 'mbillconditionbox',
10
+ data () {
11
+ return {
12
+ form:{
13
+ lineNum:12,
14
+ labelWidth:10,
15
+ showLabel:false,
16
+ items:[{
17
+ name:'relevance',
18
+ type:'ComboBox',
19
+ codeWithName:false,
20
+ data:[{code:'or',name:'或'}, {code:'and', name:'且'}],
21
+ colNum:1.2,
22
+ defaultValue:'and',
23
+ style:{'margin-bottom':'10px','margin-top':'0px','margin-left':'0px',},
24
+ transfer:true
25
+ },{
26
+ name:'field',
27
+ type:'ComboBox',
28
+ codeWithName:false,
29
+ valueChanged:this.fieldChanged,
30
+ transfer:true,
31
+ colNum:4,
32
+ isFull:true,
33
+ style:{'margin-bottom':'10px','margin-top':'0px'}
34
+ },{
35
+ name:'oper',
36
+ type:'ComboBox',
37
+ codeWithName:false,
38
+ clearable:false,
39
+ colNum:2,
40
+ data:[{
41
+ name: '等于',
42
+ code: '=='
43
+ }],
44
+ defaultValue:'==',
45
+ isFull:true,
46
+ transfer:true,
47
+ style:{'margin-bottom':'10px','margin-top':'0px'}
48
+ },{
49
+ name:'value',
50
+ type:'TextBox',
51
+ readOnly:true,
52
+ colNum:4,
53
+ isFull:true,
54
+ style:{'margin-bottom':'10px','margin-top':'0px'}
55
+ }]
56
+ },
57
+ dataType:{},
58
+ };
59
+ },
60
+ created () {
61
+ this.init();
62
+ },
63
+ props:{
64
+ config: {
65
+ type: Object,
66
+ default () {
67
+ return {};
68
+ }
69
+ },
70
+ valueData: {
71
+ type: Object,
72
+ default () {
73
+ return {};
74
+ }
75
+ },
76
+ curIndex:{
77
+ type:String,
78
+ default:null
79
+ }
80
+ } ,
81
+ mounted () {
82
+ this.$nextTick(() => {
83
+ if (this.valueData) {
84
+ if (this.valueData.field){
85
+ this.fieldChanged({value:this.valueData.field});
86
+ }
87
+ }
88
+ this.$nextTick(() => {
89
+ let obj = Object.assign({}, {oper:'=='}, this.valueData);
90
+ this.$refs.form.setData(obj);
91
+ this.$refs.form.setFormReadOnly(false);
92
+ })
93
+ });
94
+ },
95
+ methods:{
96
+ formChanged(){
97
+ let obj = {};
98
+ obj.index = this.curIndex;
99
+ obj.form = this.$refs.form.getData();
100
+ this.$emit('inputValue', obj);
101
+ },
102
+ init() {
103
+ this.initField();
104
+ },
105
+ initField () {
106
+ let fieldData = [];
107
+ if (this.config.items && this.config.items.length > 0) {
108
+ this.config.items.forEach(el => {
109
+ if (el.name && el.label) {
110
+ fieldData.push({code:el.name,name:el.label});
111
+ this.dataType[el.name] = Object.assign({},el, {name:'value'});
112
+ this.dataType[el.name].operData = this.getOperData(el);
113
+ }
114
+ });
115
+ }
116
+ this.form.items[1].data = fieldData;
117
+ },
118
+ getOperData(el) {
119
+ let tempData = [];
120
+ tempData.push({
121
+ name: '等于',
122
+ code: '=='
123
+ });
124
+ if (el.type === 'DateBox' || el.type === 'NumberBox') {
125
+ tempData.push({
126
+ name: '大于',
127
+ code: '>'
128
+ });
129
+ tempData.push({
130
+ name: '大于等于',
131
+ code: '>='
132
+ });
133
+ tempData.push({
134
+ name: '小于等于',
135
+ code: '<='
136
+ });
137
+ tempData.push({
138
+ name: '小于',
139
+ code: '<'
140
+ });
141
+ tempData.push({
142
+ name: '不等于',
143
+ code: '<>'
144
+ });
145
+ }
146
+ if (el.type === 'TextBox') {
147
+ tempData.push({
148
+ name: '不等于',
149
+ code: '<>'
150
+ });
151
+ tempData.push({
152
+ name: '包含',
153
+ code: 'LIKE'
154
+ });
155
+ }
156
+ if (el.setOperData) {
157
+ tempData = el.setOperData(el,tempData);
158
+ }
159
+ return tempData;
160
+ },
161
+ fieldChanged(e) {
162
+ let self = this;
163
+ let operValue = '==';
164
+ let obj = [];
165
+ let oper = {};
166
+ oper.name = 'oper';
167
+ if (e.value) {
168
+ let config = Object.assign({},this.dataType[e.value]);
169
+ oper.data = this.$Method.copy(config.operData);
170
+ oper.readOnly = false;
171
+ obj.push(oper);
172
+ config.name ='value';
173
+ config.label = '';
174
+ config.readOnly = false;
175
+ config.visible = true;
176
+ config.valueChanged = '';
177
+ config.transfer = true;
178
+ obj.push(config);
179
+ if (e.value.indexOf('name') !== -1) {
180
+ operValue = 'LIKE';
181
+ }
182
+ if (config.operDefaultValue) {
183
+ operValue = config.operDefaultValue;
184
+ }
185
+ } else {
186
+ oper.data = [{
187
+ name: '等于',
188
+ code: '=='
189
+ }];
190
+ oper.readOnly = true;
191
+ obj.push(oper);
192
+ let valueConfig = {
193
+ name:'value',
194
+ type:'TextBox',
195
+ readOnly:true,
196
+ isFull:true,
197
+ transfer:true
198
+ };
199
+ obj.push(valueConfig);
200
+ }
201
+ self.$refs.form.updateItemsConfig(obj);
202
+ self.$nextTick(() => {
203
+ self.$refs.form.setValue('oper',operValue);
204
+ self.$refs.form.setValue('value','');
205
+ });
206
+ return true;
207
+ },
208
+ doAdd (){
209
+ let obj = {};
210
+ obj.name = 'doAdd';
211
+ this.$emit('doAction', obj);
212
+ },
213
+ doDel (){
214
+ let obj = {};
215
+ obj.name = 'doDel';
216
+ obj.index = this.curIndex;
217
+ this.$emit('doAction', obj);
218
+ },
219
+ setRelevanceReadOnly(value) {
220
+ this.$refs.form.setReadOnly('relevance',value);
221
+ }
222
+ }
223
+ };
224
+ </script>
@@ -0,0 +1,427 @@
1
+ <template>
2
+ <Card :padding="0" style="padding:14px 16px;" dis-hover>
3
+ <Row type="flex" justify="start" align="middle" style="max-height:120px;overflow-y:auto;overflow-x:hidden" >
4
+ <Col v-for="temp in data" :key="temp.index" span="12">
5
+ <BillConditionBox v-if="reset" :config="myConfig" :ref="temp.index" :curIndex="temp.index" :valueData="temp.form" @doAction="doAction" @inputValue="input"/>
6
+ </Col>
7
+ </Row>
8
+ <Row type="flex" justify="start" align="middle">
9
+ <Col span="24" style="margin-bottom:14px">
10
+ <p @click.stop="doAdd" style="cursor:pointer">
11
+ <Row type="flex" justify="start" align="middle">
12
+ <Col>
13
+ <Icon custom="iconfont icon-custom-addcond" size="20" color="#AF292E"/>
14
+ </Col>
15
+ <Col>
16
+ <span style="margin-left:18px;color:#AF292E;font-size:14px"> 添加条件 </span>
17
+ </Col>
18
+ </Row>
19
+ </p>
20
+ </Col>
21
+ </Row>
22
+ <Row type="flex" justify="start" align="middle">
23
+ <Col style="margin-right:10px">
24
+ <Button type="primary" @click="searchFilter" >筛选</Button>
25
+ </Col>
26
+ <Col >
27
+ <Button @click="clearData" >清空筛选值</Button>
28
+ </Col>
29
+ <Col>
30
+ <Divider type="vertical" class="dividercommon" />
31
+ </Col>
32
+ <Col v-if="!delSceneFlag" >
33
+ <Checkbox v-model="saveSceneFlag"><span style="margin-left: 10px;">保存场景</span></Checkbox>
34
+ </Col>
35
+ <Col v-if="saveSceneFlag || delSceneFlag" style="margin-right:14px">
36
+ <Input v-model="scenename" placeholder="请输入场景名称" style="width: 456px" />
37
+ </Col>
38
+ <Col v-if="saveSceneFlag || delSceneFlag" >
39
+ <Button type="info" @click="saveScene" >保存</Button>
40
+ </Col>
41
+ <Col v-if="delSceneFlag">
42
+ <Divider type="vertical" class="dividercommon"/>
43
+ </Col>
44
+ <Col v-if="delSceneFlag" >
45
+ <Button @click="delScene" >删除场景</Button>
46
+ </Col>
47
+ <Col v-if="delSceneFlag">
48
+ <Divider type="vertical" class="dividercommon"/>
49
+ </Col>
50
+ <Col v-if="delSceneFlag">
51
+ <Button @click="addScene">新增</Button>
52
+ </Col>
53
+ </Row>
54
+ </Card>
55
+ </template>
56
+
57
+ <script>
58
+ import BillConditionBox from './billconditionbox';
59
+ export default {
60
+ name:'mbillconditionsbox',
61
+ components: {BillConditionBox},
62
+ data () {
63
+ return {
64
+ saveSceneFlag:false,
65
+ delSceneFlag:false,
66
+ scenename:'',
67
+ reset:true,
68
+ data:[],
69
+ oldForm:{},
70
+ selectorConfig:{}
71
+ };
72
+ },
73
+ props:{
74
+ config: {
75
+ type: Object,
76
+ default () {
77
+ return {};
78
+ }
79
+ },
80
+ dictData: {
81
+ type: Object,
82
+ default() {
83
+ return {};
84
+ }
85
+ }
86
+ },
87
+ created() {
88
+ this.init();
89
+ },
90
+ methods:{
91
+ init () {
92
+ this.curlModeType = this.modeType;
93
+ this.myConfig = Object.assign({}, this.myConfig, this.config);
94
+ if (this.dictData && this.myConfig.items) {
95
+ this.myConfig.items.forEach(el => {
96
+ if (el.dictkey) {
97
+ if (el.data === undefined) {
98
+ let dictkey = el.dictkey;
99
+ if (el.customDictkey) {
100
+ dictkey = el.customDictkey;
101
+ }
102
+ if (this.dictData[dictkey]) {
103
+ el.data = this.dictData[dictkey];
104
+ }
105
+ }
106
+ }
107
+ });
108
+ }
109
+ this.initData();
110
+ },
111
+ doAction(obj) {
112
+ if (obj.name === 'doDel') {
113
+ let index = this.data.findIndex(el => el.index === obj.index);
114
+ if (index > -1) {
115
+ this.data.splice(index ,1);
116
+ this.$nextTick(() => {
117
+ if (this.data.length === 0) {
118
+ let obj = {};
119
+ obj.index ='index_0';
120
+ obj.form = {};
121
+ this.data.push(obj);
122
+ }
123
+ });
124
+ }
125
+ }
126
+ },
127
+ input(e) {
128
+ let index = this.data.findIndex(el => el.index === e.index);
129
+ if (index > -1) {
130
+ let obj = Object.assign({},this.data[index],{form:e.form});
131
+ this.data.splice(index,1,obj);
132
+ }
133
+ },
134
+ doAdd() {
135
+ let num = this.data.length;
136
+ let index = 'index_' + num;
137
+ do {
138
+ let tempIndex = this.data.findIndex(el => el.index === index);
139
+ if (tempIndex > -1) {
140
+ num++;
141
+ index = 'index_' + num;
142
+ } else {
143
+ let obj = {};
144
+ obj.index = index;
145
+ obj.form ={};
146
+ this.data.push(obj);
147
+ break;
148
+ }
149
+ } while (true);
150
+ },
151
+ initData() {
152
+ this.data = [];
153
+ let obj = {};
154
+ obj.index ='index_0';
155
+ obj.form = {};
156
+ this.data.push(obj);
157
+ },
158
+ clearData() {
159
+ this.data = [];
160
+ this.$nextTick(() => {
161
+ this.initData();
162
+ });
163
+ },
164
+ getCommomParam (obj, para) {
165
+ let param = {};
166
+ let config = this.myConfig.items.find(el => el.name === obj.field);
167
+ if (config) {
168
+ if (config.type === 'DateBox') {
169
+ if (!config.vtype || config.vtype === 'date') {
170
+ if (obj.oper === '==') {
171
+ let temp = {};
172
+ temp[obj.field] ={};
173
+ temp[obj.field]['>='] = obj.value +' 00:00:00';
174
+ let temp2 = {};
175
+ temp2[obj.field] ={};
176
+ temp2[obj.field]['<='] = obj.value +' 23:59:59';
177
+ let temp3 = {};
178
+ temp3['$and'] = [];
179
+ temp3['$and'].push(temp);
180
+ temp3['$and'].push(temp2);
181
+ if (para) {
182
+ para.push(temp3);
183
+ } else {
184
+ Object.assign(param,temp3);
185
+ }
186
+ } else if (obj.oper === '>' || obj.oper === '>=') {
187
+ param[obj.field] = {};
188
+ if (obj.oper === '>=') {
189
+ param[obj.field][obj.oper] = obj.value + ' 00:00:00';
190
+ } else {
191
+ param[obj.field][obj.oper] = obj.value + ' 23:59:59';
192
+ }
193
+ } else if (obj.oper === '<' || obj.oper === '<='){
194
+ param[obj.field] = {};
195
+ if (obj.oper === '<=') {
196
+ param[obj.field][obj.oper] = obj.value + ' 23:59:59';
197
+ } else {
198
+ param[obj.field][obj.oper] = obj.value + ' 00:00:00';
199
+ }
200
+ } else if (obj.oper === '<>'){
201
+ let temp = {};
202
+ temp[obj.field] ={};
203
+ temp[obj.field]['<'] = obj.value +' 00:00:00';
204
+ let temp2 = {};
205
+ temp2[obj.field] ={};
206
+ temp2[obj.field]['>'] = obj.value +' 23:59:59';
207
+ let temp3 = {};
208
+ temp3['$or'] = [];
209
+ temp3['$or'].push(temp);
210
+ temp3['$or'].push(temp2);
211
+ if (para) {
212
+ para.push(temp3);
213
+ } else {
214
+ Object.assign(param,temp3);
215
+ }
216
+ }
217
+ } else {
218
+ param[obj.field] = {};
219
+ if (obj.value.value !== undefined) {
220
+ param[obj.field][obj.oper] = obj.value.value;
221
+ } else {
222
+ param[obj.field][obj.oper] = obj.value;
223
+ }
224
+ }
225
+ } else {
226
+ if (obj.oper === 'LIKE') {
227
+ param[obj.field] = {};
228
+ param[obj.field][obj.oper] = '%' + obj.value + '%';
229
+ } else {
230
+ param[obj.field] = {};
231
+ if (obj.value.value !== undefined) {
232
+ param[obj.field][obj.oper] = obj.value.value;
233
+ } else {
234
+ param[obj.field][obj.oper] = obj.value;
235
+ }
236
+ }
237
+ }
238
+
239
+ }
240
+
241
+ if (para === undefined) {
242
+ return param;
243
+ } else {
244
+ para.push(param);
245
+ }
246
+
247
+ },
248
+ getQuerySearchParam () {
249
+ if (this.data.length === 0) {
250
+ return {};
251
+ }
252
+ if (this.data.length === 1) {
253
+ if (this.data[0].form.value || this.data[0].form.value === 0) {
254
+ return this.getCommomParam(this.data[0].form);
255
+ } else {
256
+ return {};
257
+ }
258
+ }
259
+ if (this.data.length > 1) {
260
+ let obj = {};
261
+ let paraOr = [];
262
+ let paraAnd = [];
263
+ this.data.forEach(el => {
264
+ if (el.form.value || el.form.value === 0) {
265
+ if (el.form.relevance === 'or') {
266
+ this.getCommomParam(el.form, paraOr);
267
+ }
268
+ if (el.form.relevance === 'and') {
269
+ this.getCommomParam(el.form, paraAnd);
270
+ }
271
+
272
+ }
273
+ });
274
+ if (paraOr.length > 0) {
275
+ obj['$or'] = paraOr;
276
+ }
277
+ if (paraAnd.length > 0) {
278
+ obj['$and'] = paraAnd;
279
+ }
280
+ let result = {};
281
+ if (paraOr.length > 0 || paraAnd.length > 0) {
282
+ result['$and'] = [];
283
+ result['$and'].push(obj);
284
+ }
285
+ return result;
286
+ }
287
+ },
288
+ getData() {
289
+ let tmp = {};
290
+ tmp.scenename = this.scenename;
291
+ tmp.data = JSON.stringify(this.$Method.copy(this.data));
292
+ let result = Object.assign({},this.oldForm,tmp);
293
+ return result;
294
+ },
295
+ setData(obj) {
296
+ this.data = [];
297
+ this.scenename = '';
298
+ if (obj.data) {
299
+ this.data = JSON.parse(obj.data);
300
+ }
301
+ if (obj.scenename) {
302
+ this.scenename = obj.scenename;
303
+ }
304
+ this.oldForm = this.$Method.copy(obj);
305
+ this.delSceneFlag = true;
306
+ this.reset = false;
307
+ this.$nextTick(() => {
308
+ this.reset = true;
309
+ })
310
+ },
311
+ searchFilter() {
312
+ let temp = {};
313
+ temp.name = 'condition_searchFilter';
314
+ temp.para = this.getQuerySearchParam();
315
+ this.$emit('conditionAction',temp);
316
+ },
317
+ closeFilter (){
318
+ let temp = {};
319
+ temp.name = 'condition_closeFilter';
320
+ this.$emit('conditionAction',temp);
321
+ },
322
+ addScene () {
323
+ this.delSceneFlag = false;
324
+ this.saveSceneFlag = false;
325
+ this.oldForm = {};
326
+ this.initData();
327
+ this.reset = false;
328
+ this.$nextTick(() => {
329
+ this.reset = true;
330
+ });
331
+ },
332
+ saveScene() {
333
+ let temp = {};
334
+ temp.name = 'saveScene';
335
+ temp.para = Object.assign({},this.oldForm,this.getData());
336
+ if (this.delSceneFlag) {
337
+ temp.para.flag = 'U';
338
+ } else {
339
+ temp.para.flag = 'I';
340
+ }
341
+ this.$emit('doAction',temp);
342
+ this.$nextTick(() => {
343
+ if (!this.delSceneFlag) {
344
+ this.delSceneFlag = true;
345
+ }
346
+ });
347
+ },
348
+ delScene() {
349
+ let temp = {};
350
+ temp.name = 'saveScene';
351
+ temp.para = Object.assign({},this.oldForm,this.getData());
352
+ temp.para.flag ='D';
353
+ this.$emit('doAction',temp);
354
+ }
355
+ }
356
+ };
357
+ </script>
358
+
359
+ <style lang="less" scoped>
360
+ .masterplate {
361
+ .querybar {
362
+ .ivu-input {
363
+ height:40px;
364
+ }
365
+ .ivu-select-single {
366
+ .ivu-select-selection {
367
+ height: 40px;
368
+ position: relative;
369
+ }
370
+ }
371
+
372
+ .ivu-btn {
373
+ height:40px;
374
+ }
375
+ .ivu-btn-red {
376
+ color: #fff;
377
+ background-color: #AF292E;
378
+ }
379
+ .ivu-btn-red:hover {
380
+ background-color: #FFB5B8;
381
+ border-color: #FFB5B8;
382
+ }
383
+ .ivu-btn-red :focus {
384
+ background-color: #7A2531;
385
+ border-color: #7A2531;
386
+ }
387
+ .ivu-btn-black {
388
+ color: #fff;
389
+ background-color: #4D4E53;
390
+ }
391
+
392
+ .ivu-btn-black:hover {
393
+ background-color: #CDD0D6;
394
+ border-color: #CDD0D6;;
395
+ }
396
+ .ivu-btn-black:focus {
397
+ background-color: #000000;
398
+ border-color: #000000;;
399
+ }
400
+ .ivu-btn-default:hover {
401
+ color: #EF6E73;
402
+ background-color: #FFF9F9;
403
+ border-color: #EF6E73;;
404
+ }
405
+ .ivu-btn-default:focus {
406
+ color: #DF3D43;
407
+ background-color: #FFF9F9;
408
+ border-color: #DF3D43;
409
+ }
410
+ .modulecodetext {
411
+ height:40px;
412
+ text-align:center;
413
+ vertical-align: middle;
414
+ background-color: #F5F7FA;
415
+ line-height: 40px;
416
+ padding: 0 15px;
417
+ }
418
+ .dividercommon {
419
+ margin:1px 12px 0 12px;
420
+ height:32px;
421
+ }
422
+ }
423
+
424
+ }
425
+
426
+
427
+ </style>