queryStat.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416
  1. queryStat_parameter = {
  2. first : '(0)',
  3. last : '(0)',
  4. count : 20
  5. };
  6. function queryStat_list_next(id) {
  7. $('#result').html('');
  8. $('#content').html('');
  9. var id = (id ? id : queryStat_parameter.last);
  10. $.ajax({
  11. type : 'get',
  12. dataType : 'json',
  13. url : '../jaxrs/querystat/list/' + id + '/next/' + queryStat_parameter.count,
  14. xhrFields : {
  15. 'withCredentials' : true
  16. },
  17. crossDomain : true
  18. }).done(function(json) {
  19. if (json.type == 'success') {
  20. if (json.data.length > 0) {
  21. queryStat_parameter.first = json.data[0].id;
  22. queryStat_parameter.last = json.data[json.data.length - 1].id;
  23. } else {
  24. queryStat_parameter.first = '(0)';
  25. }
  26. $('#content').html(queryStat_list_grid(json));
  27. }
  28. }).always(function(json) {
  29. $('#result').html(JSON.stringify(json, null, 4));
  30. });
  31. }
  32. function queryStat_list_prev(id) {
  33. $('#result').html('');
  34. $('#content').html('');
  35. var id = (id ? id : queryStat_parameter.first);
  36. $.ajax({
  37. type : 'get',
  38. dataType : 'json',
  39. url : '../jaxrs/querystat/list/' + id + '/prev/' + queryStat_parameter.count,
  40. xhrFields : {
  41. 'withCredentials' : true
  42. },
  43. crossDomain : true
  44. }).done(function(json) {
  45. if (json.type == 'success') {
  46. if (json.data.length > 0) {
  47. queryStat_parameter.first = json.data[0].id;
  48. queryStat_parameter.last = json.data[json.data.length - 1].id;
  49. } else {
  50. queryStat_parameter.last = '(0)';
  51. }
  52. queryStat_list_grid(json);
  53. }
  54. }).always(function(json) {
  55. $('#result').html(JSON.stringify(json, null, 4));
  56. });
  57. }
  58. function queryStat_list_grid(json) {
  59. var str = '<table border="1" width="100%">';
  60. str += '<tr><td colspan="5"> <a href="#" id="prev">prev</a>&nbsp;<a href="#" id="next">next</a>&nbsp;<span id="total">' + json.count + '</span></td></tr>';
  61. str += '<tr><th>id</th><th>name</th><th>alias</th><th>application</th><th>operate</th></tr>';
  62. $.each(json.data, function(index, item) {
  63. str += '<tr>';
  64. str += '<td>' + item.id + '</td>';
  65. str += '<td>' + item.name + '</td>';
  66. str += '<td>' + item.alias + '</td>';
  67. str += '<td>' + item.application + '</td>';
  68. str += '<td>';
  69. str += '<a href="#" onclick="queryStat_edit(\'' + item.id + '\')">edit</a>&nbsp;';
  70. str += '<a href="#" onclick="queryStat_delete(\'' + item.id + '\')">delete</a>';
  71. str += '</td>';
  72. str += '</tr>';
  73. });
  74. str += '</table>';
  75. $('#content').html(str);
  76. $('#next').click(function() {
  77. queryStat_list_next();
  78. });
  79. $('#prev').click(function() {
  80. queryStat_list_prev();
  81. });
  82. }
  83. function queryStat_simulate_init() {
  84. $('#result').html('');
  85. $('#content').html('');
  86. var str = '<table border="1" width="100%">';
  87. str += '<tr><td colspan="2"><a href="#" id="simulate">simulate</a>&nbsp;<a href="#" id="get">get</a></td></tr>';
  88. str += '<tr><td>id:</td><td><input type="text" id="id" style="width:95%"/></td></tr>';
  89. str += '<tr><td>date:</td><td><textarea id="date" style="width:95%;height:300px"/></td></tr>';
  90. str += '<tr><td colspan="2">sample</td></tr>';
  91. str += '<tr><td colspan="2">';
  92. str += '{<br/>';
  93. str += '"dateRangeType":"",<br/>';
  94. str += '//year, season, month, week, date, range, none<br/>';
  95. str += '"dateEffectType":"",<br/>';
  96. str += '//start, completed<br/>';
  97. str += '"start":"",<br/>';
  98. str += '"completed":"",<br/>';
  99. str += '"year":"",<br/>';
  100. str += '"month":"",<br/>';
  101. str += '"date":"",<br/>';
  102. str += '"season":0,<br/>';
  103. str += '"week":0,<br/>';
  104. str += '"adjust":0<br/>';
  105. str += '}';
  106. str += '</td></tr>';
  107. str += '<tr><td>application:</td><td><input type="text" id="application" style="width:95%"/></td></tr>';
  108. str += '<tr><td>process:</td><td><input type="text" id="process" style="width:95%"/></td></tr>';
  109. str += '<tr><td>company:</td><td><input type="text" id="company" style="width:95%"/></td></tr>';
  110. str += '<tr><td>department:</td><td><input type="text" id="department" style="width:95%"/></td></tr>';
  111. str += '<tr><td>identity:</td><td><input type="text" id="identity" style="width:95%"/></td></tr>';
  112. str += '<tr><td>person:</td><td><input type="text" id="person" style="width:95%"/></td></tr>';
  113. str += '<tr><td>filter:</td><td><textarea id="filter" style="width:95%;height:300px"/></td></tr>';
  114. str += '<tr><td colspan="2">sample</td></tr>';
  115. str += '<tr><td colspan="2">';
  116. str += '{<br/>';
  117. str += '"path":"",<br/>';
  118. str += '"value":"",<br/>';
  119. str += '"formatType":"",<br/>';
  120. str += '//textValue, numberValue, booleanValue, dateTimeValue<br/>';
  121. str += '"logic":"",<br/>';
  122. str += '//and,or<br/>';
  123. str += '"comparison":"",<br/>';
  124. str += '//equals,notEquals,greaterThan,greaterThanOrEqualTo,lessThan,lessThanOrEqualTo,like,notLike<br/>';
  125. str += '}';
  126. str += '</td></tr>';
  127. str += '</table>';
  128. $('#content').html(str);
  129. $('#simulate').click(function() {
  130. queryStat_simulate($('#id').val());
  131. });
  132. $('#get').click(function() {
  133. queryStat_get($('#id').val());
  134. });
  135. }
  136. function queryStat_simulate(id) {
  137. data = {};
  138. if ($('#date').val() != '') {
  139. data.date = JSON.parse($('#date').val());
  140. }
  141. data.application = splitValue($('#application').val());
  142. data.process = splitValue($('#process').val());
  143. data.company = splitValue($('#company').val());
  144. data.department = splitValue($('#department').val());
  145. data.identity = splitValue($('#identity').val());
  146. data.person = splitValue($('#person').val());
  147. if ($('#filter').val() != '') {
  148. data.filter = JSON.parse($('#filter').val());
  149. }
  150. $.ajax({
  151. type : 'put',
  152. dataType : 'json',
  153. url : '../jaxrs/querystat/' + id + '/simulate?' + Math.random(),
  154. contentType : 'application/json; charset=utf-8',
  155. data : JSON.stringify(data),
  156. xhrFields : {
  157. 'withCredentials' : true
  158. },
  159. crossDomain : true
  160. }).always(function(json) {
  161. $('#result').html(JSON.stringify(json, null, 4));
  162. });
  163. }
  164. function queryStat_create() {
  165. $('#result').html('');
  166. $('#content').html('');
  167. var str = '<table border="1" width="100%">';
  168. str += '<tr><td colspan="2"><a href="#" id="post">post</a></td></tr>';
  169. str += '<tr><td>application:</td><td><input type="text" id="application" style="width:95%"/></td></tr>';
  170. str += '<tr><td>name:</td><td><input type="text" id="name" style="width:95%"/></td></tr>';
  171. str += '<tr><td>alias:</td><td><input type="text" id="alias" style="width:95%"/></td></tr>';
  172. str += '<tr><td>description:</td><td><input type="text" id="description" style="width:95%"/></td></tr>';
  173. str += '<tr><td>availablePersonList:</td><td><textarea id="availablePersonList" style="width:95%"/></td></tr>';
  174. str += '<tr><td>availableIdentityList:</td><td><textarea id="availableIdentityList" style="width:95%"/></td></tr>';
  175. str += '<tr><td>availableDepartmentList:</td><td><textarea id="availableDepartmentList" style="width:95%"/></td></tr>';
  176. str += '<tr><td>availableCompanyList:</td><td><textarea id="availableCompanyList" style="width:95%"/></td></tr>';
  177. str += '<tr><td>queryView:</td><td><input id="queryView" style="width:95%"/></td></tr>';
  178. str += '<tr><td colspan="2">data:</td></tr>';
  179. str += '<tr><td colspan="2"><textarea id="data" style="width:95%;height:500px"/></td></tr>';
  180. str += '<tr><td colspan="2">sample</td></tr>';
  181. str += '<tr><td colspan="2">';
  182. str += '{<br/>';
  183. str += '"calculate":[<br/>';
  184. str += '{<br/>';
  185. str += '"column":"",<br/>';
  186. str += '"displayName":"",<br/>';
  187. str += '"calculateType":"",//sum, average, count, groupSum, groupAverage, groupCount<br/>';
  188. str += '"orderType":"",//desc, asc, original<br/>';
  189. str += '"orderEffectType":"",//key, value<br/>';
  190. str += '"id":""<br/>';
  191. str += '}<br>';
  192. str += ']';
  193. str += '}';
  194. str += '</td></tr>';
  195. str += '</table>';
  196. $('#content').html(str);
  197. $('#post').click(function() {
  198. queryStat_post();
  199. });
  200. }
  201. function queryStat_post() {
  202. var data = {};
  203. data.application = $('#application').val();
  204. data.name = $('#name').val();
  205. data.alias = $('#alias').val();
  206. data.description = $('#description').val();
  207. data.availablePersonList = splitValue($('#availablePersonList').val());
  208. data.availableIdentityList = splitValue($('#availableIdentityList').val());
  209. data.availableDepartmentList = splitValue($('#availableDepartmentList').val());
  210. data.availableCompanyList = splitValue($('#availableCompanyList').val());
  211. data.queryView = $('#queryView').val();
  212. if ($('#data').val() != '') {
  213. data.data = $('#data').val();
  214. }
  215. $.ajax({
  216. type : 'post',
  217. dataType : 'json',
  218. contentType : 'application/json; charset=utf-8',
  219. url : '../jaxrs/querystat',
  220. data : JSON.stringify(data),
  221. xhrFields : {
  222. 'withCredentials' : true
  223. },
  224. crossDomain : true
  225. }).always(function(json) {
  226. $('#result').html(JSON.stringify(json, null, 4));
  227. });
  228. }
  229. function queryStat_edit(id) {
  230. $('#result').html('');
  231. $('#content').html('');
  232. var str = '<table border="1" width="100%">';
  233. str += '<tr><td colspan="2"><a href="#" id="put">put</a></td></tr>';
  234. str += '<tr><td>createTime:</td><td id="createTime">&nbsp;</td></tr>';
  235. str += '<tr><td>updateTime:</td><td id="updateTime">&nbsp;</td></tr>';
  236. str += '<tr><td>sequence:</td><td id="sequence">&nbsp;</td></tr>';
  237. str += '<tr><td>id:</td><td id="id">&nbsp;</td></tr>';
  238. str += '<tr><td>lastUpdatePerson:</td><td id="lastUpdatePerson">&nbsp;</td></tr>';
  239. str += '<tr><td>lastUpdateTime:</td><td id="lastUpdateTime">&nbsp;</td></tr>';
  240. str += '<tr><td>application:</td><td><input type="text" id="application" style="width:95%"/></td></tr>';
  241. str += '<tr><td>name:</td><td><input type="text" id="name" style="width:95%"/></td></tr>';
  242. str += '<tr><td>alias:</td><td><input type="text" id="alias" style="width:95%"/></td></tr>';
  243. str += '<tr><td>description:</td><td><input type="text" id="description" style="width:95%"/></td></tr>';
  244. str += '<tr><td>availablePersonList:</td><td><textarea id="availablePersonList" style="width:95%"/></td></tr>';
  245. str += '<tr><td>availableIdentityList:</td><td><textarea id="availableIdentityList" style="width:95%"/></td></tr>';
  246. str += '<tr><td>availableDepartmentList:</td><td><textarea id="availableDepartmentList" style="width:95%"/></td></tr>';
  247. str += '<tr><td>availableCompanyList:</td><td><textarea id="availableCompanyList" style="width:95%"/></td></tr>';
  248. str += '<tr><td>queryView:</td><td><input id="queryView" style="width:95%"/></td></tr>';
  249. str += '<tr><td>queryViewName:</td><td id="queryViewName">&nbsp;</td></tr>';
  250. str += '<tr><td>queryViewAlias:</td><td id="queryViewAlias">&nbsp;</td></tr>';
  251. str += '<tr><td colspan="2">data:</td></tr>';
  252. str += '<tr><td colspan="2"><textarea id="data" style="width:95%;height:500px"/></td></tr>';
  253. str += '<tr><td colspan="2">sample</td></tr>';
  254. str += '<tr><td colspan="2">';
  255. str += '{<br/>';
  256. str += '"calculate":[<br/>';
  257. str += '{<br/>';
  258. str += '"column":"",<br/>';
  259. str += '"displayName":"",<br/>';
  260. str += '"calculateType":"",//sum, average, count, groupSum, groupAverage, groupCount<br/>';
  261. str += '"orderType":"",//desc, asc, original<br/>';
  262. str += '"orderEffectType":"",//key, value<br/>';
  263. str += '"id":""<br/>';
  264. str += '}<br>';
  265. str += ']';
  266. str += '}';
  267. str += '</td></tr>';
  268. str += '</table>';
  269. $('#content').html(str);
  270. $('#put').click(function() {
  271. queryStat_put(id);
  272. });
  273. $.ajax({
  274. type : 'get',
  275. dataType : 'json',
  276. url : '../jaxrs/querystat/' + id,
  277. xhrFields : {
  278. 'withCredentials' : true
  279. },
  280. crossDomain : true
  281. }).done(function(json) {
  282. $('#result').html(JSON.stringify(json, null, 4));
  283. if (json.type == 'success') {
  284. $('#createTime').html(json.data.createTime);
  285. $('#updateTime').html(json.data.updateTime);
  286. $('#sequence').html(json.data.sequence);
  287. $('#id').html(json.data.id);
  288. $('#lastUpdatePerson').html(json.data.lastUpdatePerson);
  289. $('#lastUpdateTime').html(json.data.lastUpdateTime);
  290. $('#name').val(json.data.name);
  291. $('#application').val(json.data.application);
  292. $('#description').val(json.data.description);
  293. $('#availablePersonList').val(joinValue(json.data.availablePersonList));
  294. $('#availableIdentityList').val(joinValue(json.data.availableIdentityList));
  295. $('#availableDepartmentList').val(joinValue(json.data.availableDepartmentList));
  296. $('#availableCompanyList').val(joinValue(json.data.availableCompanyList));
  297. $('#data').val(json.data.data);
  298. $('#queryView').val(json.data.queryView);
  299. $('#queryViewName').html(json.data.queryViewName);
  300. $('#queryViewAlias').html(json.data.queryViewAlias);
  301. }
  302. }).always(function(json) {
  303. $('#result').html(JSON.stringify(json, null, 4));
  304. });
  305. }
  306. function queryStat_put(id) {
  307. var data = {};
  308. data.application = $('#application').val();
  309. data.name = $('#name').val();
  310. data.alias = $('#alias').val();
  311. data.description = $('#description').val();
  312. data.availablePersonList = splitValue($('#availablePersonList').val());
  313. data.availableIdentityList = splitValue($('#availableIdentityList').val());
  314. data.availableDepartmentList = splitValue($('#availableDepartmentList').val());
  315. data.availableCompanyList = splitValue($('#availableCompanyList').val());
  316. data.queryView = $('#queryView').val();
  317. if ($('#data').val() != '') {
  318. data.data = $('#data').val();
  319. }
  320. $.ajax({
  321. type : 'put',
  322. dataType : 'json',
  323. url : '../jaxrs/querystat/' + id,
  324. contentType : 'application/json; charset=utf-8',
  325. data : JSON.stringify(data),
  326. xhrFields : {
  327. 'withCredentials' : true
  328. },
  329. crossDomain : true
  330. }).always(function(json) {
  331. $('#result').html(JSON.stringify(json, null, 4));
  332. });
  333. }
  334. function queryStat_delete(id) {
  335. $.ajax({
  336. type : 'delete',
  337. dataType : 'json',
  338. url : '../jaxrs/querystat/' + id,
  339. xhrFields : {
  340. 'withCredentials' : true
  341. },
  342. crossDomain : true
  343. }).always(function(json) {
  344. $('#result').html(JSON.stringify(json, null, 4));
  345. });
  346. }
  347. function queryStat_get(id) {
  348. $.ajax({
  349. type : 'get',
  350. dataType : 'json',
  351. url : '../jaxrs/querystat/' + id,
  352. xhrFields : {
  353. 'withCredentials' : true
  354. },
  355. crossDomain : true
  356. }).always(function(json) {
  357. $('#result').html(JSON.stringify(json, null, 4));
  358. });
  359. }
  360. function queryStat_listWithApplication_init() {
  361. var str = '<table border="1" width="100%">';
  362. str += '<tr><td colspan="2"><a href="#" id="list">list</a></td></tr>';
  363. str += '<tr><td>application flag:</td><td><input type="text" id="applicationFlag" style="width:95%"/></td></tr>';
  364. str += '<tr><td colspan="2" id="gird">&nbsp;</td></tr>';
  365. str += '</table>';
  366. $('#content').html(str);
  367. $('#post').click(function() {
  368. queryStat_listWithApplication($('#applicationFlag').val());
  369. });
  370. }
  371. function queryStat_listWithApplication(id) {
  372. $.ajax({
  373. type : 'get',
  374. dataType : 'json',
  375. url : '../jaxrs/querystat/list/application/' + id,
  376. xhrFields : {
  377. 'withCredentials' : true
  378. },
  379. crossDomain : true
  380. }).done(function(json) {
  381. if (json.type == 'success') {
  382. var str = '<table border="1" width="100%">';
  383. str += '<tr><th>id</th><th>name</th><th>alias</th><th>application</th><th>operate</th></tr>';
  384. $.each(json.data, function(index, item) {
  385. str += '<tr>';
  386. str += '<td>' + item.id + '</td>';
  387. str += '<td>' + item.name + '</td>';
  388. str += '<td>' + item.alias + '</td>';
  389. str += '<td>' + item.application + '</td>';
  390. str += '<td>';
  391. str += '<a href="#" onclick="queryStat_edit(\'' + item.id + '\')">edit</a>&nbsp;';
  392. str += '<a href="#" onclick="queryStat_delete(\'' + item.id + '\')">delete</a>';
  393. str += '</td>';
  394. str += '</tr>';
  395. });
  396. str += '</table>';
  397. $('#gird').html(str);
  398. }
  399. }).always(function(json) {
  400. $('#result').html(JSON.stringify(json, null, 4));
  401. });
  402. }