RestActions.js 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. MWF.xApplication.Attendance = MWF.xApplication.Attendance || {};
  2. MWF.xApplication.Attendance.Actions = MWF.xApplication.Attendance.Actions || {};
  3. MWF.require("MWF.xDesktop.Actions.RestActions", null, false);
  4. MWF.require("MWF.widget.UUID", null, false);
  5. MWF.xApplication.Attendance.Actions.RestActions = new Class({
  6. initialize: function(){
  7. this.action = new MWF.xDesktop.Actions.RestActions("/Actions/action.json", "x_attendance_assemble_control", "x_component_Attendance");
  8. this.actionOrg = new MWF.xDesktop.Actions.RestActions("/Actions/action.json", "x_organization_assemble_express", "x_component_Attendance");
  9. },
  10. getId: function(count, success, failure, async){
  11. this.action.invoke({"name": "getId","async": async, "parameter": {"count": count}, "success": success, "failure": failure});
  12. },
  13. getUUID: function(success){
  14. var id = "";
  15. this.action.invoke({"name": "getId","async": false, "parameter": {"count": "1"}, "success": function(ids){
  16. id = ids.data[0];
  17. if (success) success(id);
  18. }, "failure": null});
  19. return id;
  20. },
  21. listCompanyByPerson: function(success, failure, name, async){
  22. this.actionOrg.invoke({"name": "listCompanyByPerson","async": async, "parameter": {"name": name}, "success": success, "failure": failure});
  23. },
  24. listDepartmentByPerson: function(success, failure, name, async){
  25. this.actionOrg.invoke({"name": "listDepartmentByPerson","async": async, "parameter": {"name": name}, "success": success, "failure": failure});
  26. },
  27. listDepartmentByCompany: function(success, failure, companyName, async){
  28. this.actionOrg.invoke({"name": "listDepartmentByCompany","async": async, "parameter": {"companyName": companyName}, "success": success, "failure": failure});
  29. },
  30. getPersonAttribute: function(name, personName, success, failure, async){
  31. this.actionOrg.invoke({"name": "getPersonAttribute","async": async, "urlEncode": true, "parameter": {"name": name, "personName": personName}, "success": success, "failure": failure});
  32. },
  33. getPersonByIdentity: function(name, success, failure, async){
  34. this.actionOrg.invoke({"name": "getPersonByIdentity","async": async, "urlEncode": true, "parameter": {"name": name}, "success": success, "failure": failure});
  35. },
  36. getDepartmentAttribute: function(name, departmentName, success, failure, async){
  37. this.actionOrg.invoke({"name": "getDepartmentAttribute","async": async, "urlEncode": true, "parameter": {"name": name, "departmentName": departmentName}, "success": success, "failure": failure});
  38. },
  39. getDepartmentDuty: function(name, departmentName, success, failure, async){
  40. this.actionOrg.invoke({"name": "getDepartmentDuty","async": async, "urlEncode": true, "parameter": {"name": name, "departmentName": departmentName}, "success": success, "failure": failure});
  41. },
  42. getPermission: function(id, success, failure){
  43. this.action.invoke({"name": "getPermission", "parameter": {"id": id },"success": success,"failure": failure});
  44. },
  45. listPermission: function(success, failure, async){
  46. this.action.invoke({"name": "listPermission","async": async, "success": success, "failure": failure});
  47. },
  48. savePermission: function(data, success, failure){
  49. this.action.invoke({"name": "savePermission","data": data,"parameter": {"id": data.id},"success": success,"failure": failure});
  50. },
  51. deletePermission: function(id, success, failure, async){
  52. this.action.invoke({"name": "deletePermission", "async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  53. },
  54. getHoliday: function(id, success, failure){
  55. this.action.invoke({"name": "getHoliday", "parameter": {"id": id },"success": success,"failure": failure});
  56. },
  57. listHolidayAll: function(success, failure, async){
  58. this.action.invoke({"name": "listHolidayAll","async": async, "success": success, "failure": failure});
  59. },
  60. listHolidayFilter : function( filterData, success,failure, async){
  61. this.action.invoke({"name": "listHolidayFilter", "data": filterData, "async": async, "success": success, "failure": failure});
  62. },
  63. listHolidayByYearAndName: function(year,name,success, failure, async){
  64. this.action.invoke({"name": "listHolidayFilter","data": {"q_Year": year, "q_Name" : name },"async": async, "success": success, "failure": failure});
  65. },
  66. listHolidayByYearAndMonth: function(year, month, success, failure, async){
  67. this.action.invoke({"name": "listHolidayFilter","data": {"q_Year": year, "q_Month" : month },"async": async, "success": success, "failure": failure});
  68. },
  69. listHolidayByName: function(name,success, failure, async){
  70. this.action.invoke({"name": "listHolidayFilter","data": {"q_Name": name },"async": async, "success": success, "failure": failure});
  71. },
  72. saveHoliday: function(data, success, failure, async){
  73. this.action.invoke({"name": "saveHoliday","data": data, "async": async,"parameter": {"id": data.id},"success": success,"failure": failure});
  74. },
  75. deleteHoliday: function(id, success, failure, async){
  76. this.action.invoke({"name": "deleteHoliday", "async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  77. },
  78. getSelfHoliday: function(id, success, failure){
  79. this.action.invoke({"name": "getSelfHoliday", "parameter": {"id": id },"success": success,"failure": failure});
  80. },
  81. listSelfHoliday: function(success, failure, async){
  82. this.action.invoke({"name": "listSelfHoliday","async": async, "success": success, "failure": failure});
  83. },
  84. saveSelfHoliday: function(data, success, failure){
  85. this.action.invoke({"name": "saveSelfHoliday","data": data,"parameter": {"id": data.id},"success": success,"failure": failure});
  86. },
  87. deleteSelfHoliday: function(id, success, failure, async){
  88. this.action.invoke({"name": "deleteSelfHoliday", "async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  89. },
  90. exportSelfHoliday: function(startdate, enddate, success, failure){
  91. this.action.getActions(function(){
  92. var url = this.action.actions.exportSelfHoliday.uri;
  93. url = url.replace("{startdate}", startdate);
  94. url = url.replace("{enddate}", enddate);
  95. window.open(this.action.address+url , "_blank");
  96. }.bind(this));
  97. },
  98. listSelfHolidayFilterNext : function( id, count, filterData, success,failure, async){
  99. this.action.invoke({"name": "listSelfHolidayFilterNext","parameter": {"id": id , "count" : count }, "data": filterData, "async": async, "success": success, "failure": failure});
  100. },
  101. getSchedule: function(id, success, failure){
  102. this.action.invoke({"name": "getSchedule", "parameter": {"id": id },"success": success,"failure": failure});
  103. },
  104. listSchedule: function(success, failure, async){
  105. this.action.invoke({"name": "listSchedule","async": async, "success": success, "failure": failure});
  106. },
  107. saveSchedule: function(data, success, failure){
  108. this.action.invoke({"name": "saveSchedule","data": data,"parameter": {"id": data.id},"success": success,"failure": failure});
  109. },
  110. deleteSchedule: function(id, success, failure, async){
  111. this.action.invoke({"name": "deleteSchedule", "async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  112. },
  113. listScheduleByDepartment: function(department, success, failure){
  114. this.action.invoke({"name": "listScheduleByDepartment", "parameter": {"name": department },"success": success,"failure": failure});
  115. },
  116. listScheduleByCompany: function(company, success, failure){
  117. this.action.invoke({"name": "listScheduleByCompany", "parameter": {"name": company },"success": success,"failure": failure});
  118. },
  119. getCycle: function(id, success, failure){
  120. this.action.invoke({"name": "getCycle", "parameter": {"id": id },"success": success,"failure": failure});
  121. },
  122. deleteCycle: function(id, success, failure, async){
  123. this.action.invoke({"name": "deleteCycle", "parameter": {"id": id }, "async": async, "success": success, "failure": failure});
  124. },
  125. saveCycle: function(data, success, failure){
  126. this.action.invoke({"name": "saveCycle","data": data,"parameter": {"id": data.id},"success": success,"failure": failure});
  127. },
  128. listCycle: function( success, failure, async){
  129. this.action.invoke({"name": "listCycle", "async": async, "success": success, "failure": failure});
  130. },
  131. getCyclePerson: function(year, month, success, failure, async){
  132. this.action.invoke({"name": "getCyclePerson", "parameter": {"year": year, "month": month }, "async": async,"success": success,"failure": failure});
  133. },
  134. listSetting: function(success, failure, async){
  135. this.action.invoke({"name": "listSetting","async": async, "success": success, "failure": failure});
  136. },
  137. getSetting: function(id, success, failure, async){
  138. this.action.invoke({"name": "getSetting","async": async, "parameter": {"id": id },"success": success,"failure": failure});
  139. },
  140. saveSetting: function(data, success, failure,async){
  141. this.action.invoke({"name": "saveSetting","async": async,"data": data,"parameter": {"id": data.id},"success": success,"failure": failure});
  142. },
  143. deleteSetting: function(id, success, failure, async){
  144. this.action.invoke({"name": "deleteSetting","async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  145. },
  146. getSettingCode: function(code, success, failure, async){
  147. this.action.invoke({"name": "getSettingCode","async": async, "parameter": {"code": code },"success": success,"failure": failure});
  148. },
  149. listPersonSetting: function(success, failure, async){
  150. this.action.invoke({"name": "listPersonSetting","async": async, "success": success, "failure": failure});
  151. },
  152. getPersonSetting: function(id, success, failure, async){
  153. this.action.invoke({"name": "getPersonSetting","async": async, "parameter": {"id": id },"success": success,"failure": failure});
  154. },
  155. savePersonSetting: function(data, success, failure,async){
  156. this.action.invoke({"name": "savePersonSetting","async": async,"data": data,"parameter": {"id": data.id},"success": success,"failure": failure});
  157. },
  158. deletePersonSetting: function(id, success, failure, async){
  159. this.action.invoke({"name": "deletePersonSetting","async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  160. },
  161. listAttachmentInfo: function(success, failure, async){
  162. this.action.invoke({"name": "listAttachmentInfo","async": async, "success": success, "failure": failure});
  163. },
  164. uploadAttachment: function(success, failure, formData, file){
  165. this.action.invoke({"name": "uploadAttachment", "data": formData,"file": file,"success": success,"failure": failure});
  166. },
  167. //getAttachment: function(id, documentid, success, failure, async){
  168. // this.actionAttachment.invoke({"name": "getAttachment","async": async, "parameter": {"id": id, "documentid": documentid}, "success": success, "failure": failure});
  169. //},
  170. deleteAttachment: function(id, success, failure, async){
  171. this.action.invoke({"name": "deleteAttachment","async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  172. },
  173. getAttachmentStream: function(id){
  174. this.action.getActions(function(){
  175. var url = this.action.actions.getAttachmentStream.uri;
  176. url = url.replace("{id}", encodeURIComponent(id));
  177. window.open(this.action.address+url);
  178. }.bind(this));
  179. },
  180. importAttachment: function(file_id, success, failure){
  181. this.action.invoke({"name": "importAttachment", "parameter": {"file_id": file_id },"success": success,"failure": failure});
  182. },
  183. checkAttachment: function(file_id, success, failure){
  184. this.action.invoke({"name": "checkAttachment", "parameter": {"file_id": file_id },"success": success,"failure": failure});
  185. },
  186. exportAbnormalAttachment: function(year, month, success, failure){
  187. this.action.getActions(function(){
  188. var url = this.action.actions.exportAbnormalAttachment.uri;
  189. url = url.replace("{year}", year);
  190. url = url.replace("{month}", month);
  191. window.open(this.action.address+url , "_blank");
  192. }.bind(this));
  193. //this.action.invoke({"name": "exportAbnormalAttachment", "parameter": {"year": year, "month": month },"success": success,"failure": failure});
  194. },
  195. getDetail: function(id, success, failure, async){
  196. this.action.invoke({"name": "getDetail","async": async, "parameter": {"id": id },"success": success,"failure": failure});
  197. },
  198. deleteDetail: function(id, success, failure, async){
  199. this.action.invoke({"name": "deleteDetail","async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  200. },
  201. listDetail: function(success, failure, async){
  202. this.action.invoke({"name": "listDetail","async": async, "success": success, "failure": failure});
  203. },
  204. listDetailFilter : function( filterData, success,failure, async){
  205. this.action.invoke({"name": "listDetailFilter", "data": filterData, "async": async, "success": success, "failure": failure});
  206. },
  207. listDetailFilterNext : function( id, count, filterData, success,failure, async){
  208. this.action.invoke({"name": "listDetailFilterNext","parameter": {"id": id , "count" : count }, "data": filterData, "async": async, "success": success, "failure": failure});
  209. },
  210. listDetailFilterPrev : function( id, count, filterData, success,failure, async){
  211. this.action.invoke({"name": "listDetailFilterPrev","parameter": {"id": id , "count" : count }, "data": filterData, "async": async, "success": success, "failure": failure});
  212. },
  213. listDetailFilterUser : function( filterData, success,failure, async){
  214. this.action.invoke({"name": "listDetailFilterUser", "data": filterData, "async": async, "success": success, "failure": failure});
  215. },
  216. listDepartmentDetailFilter : function( filterData, success,failure, async){
  217. this.action.invoke({"name": "listDepartmentDetailFilter", "data": filterData, "async": async, "success": success, "failure": failure});
  218. },
  219. listCompanyDetailFilter : function( filterData, success,failure, async){
  220. this.action.invoke({"name": "listCompanyDetailFilter", "data": filterData, "async": async, "success": success, "failure": failure});
  221. },
  222. listDetailByAttachment: function(file_id, success, failure){
  223. this.action.invoke({"name": "listDetailByAttachment", "parameter": {"file_id": file_id },"success": success,"failure": failure});
  224. },
  225. checkDetail: function(cycleYear, cycleMonth, success, failure){
  226. this.action.invoke({"name": "checkDetail", "parameter": {"cycleYear": cycleYear , "cycleMonth" : cycleMonth },"success": success,"failure": failure});
  227. },
  228. analyseDetail: function(startDate, endDate, success, failure){
  229. this.action.invoke({"name": "analyseDetail", "parameter": {"startDate": startDate , "endDate" : endDate },"success": success,"failure": failure});
  230. },
  231. staticDetail : function(year, month, success, failure){
  232. this.action.invoke({"name": "staticDetail", "parameter": {"year": year , "month" : month },"success": success,"failure": failure});
  233. },
  234. staticAllDetail : function(success, failure){
  235. this.action.invoke({"name": "staticAllDetail", "success": success,"failure": failure});
  236. },
  237. listStaticMonthPerson: function(person,year, month, success, failure){
  238. this.action.invoke({"name": "listStaticMonthPerson", "parameter": {"name":person,"year": year,"month":month },"success": success,"failure": failure});
  239. },
  240. listStaticDayDepartment: function(department, year, month, success, failure){
  241. this.action.invoke({"name": "listStaticDayDepartment", "parameter": {"name":department,"year": year,"month":month },"success": success,"failure": failure});
  242. },
  243. listStaticDateDepartment: function(department, date, success, failure){
  244. this.action.invoke({"name": "listStaticDateDepartment", "parameter": {"name":department,"date": date },"success": success,"failure": failure});
  245. },
  246. listStaticMonthDepartment: function(department, year, month, success, failure, async ){
  247. this.action.invoke({"name": "listStaticMonthDepartment", "parameter": {"name":department,"year": year,"month":month },"success": success,"failure": failure,"async": async });
  248. },
  249. listStaticMonthDepartmentSum: function(department, year, month, success, failure, async ){
  250. this.action.invoke({"name": "listStaticMonthDepartmentSum", "parameter": {"name":department,"year": year,"month":month },"success": success,"failure": failure,"async": async });
  251. },
  252. listStaticDayCompany: function(company, year, month, success, failure){
  253. this.action.invoke({"name": "listStaticDayCompany", "parameter":{"name":company,"year": year,"month":month },"success": success,"failure": failure});
  254. },
  255. listStaticMonthCompany: function(company, year, month, success, failure){
  256. this.action.invoke({"name": "listStaticMonthCompany", "parameter": {"name":company,"year": year,"month":month },"success": success,"failure": failure});
  257. },
  258. listStaticMonthPersonByDepartment: function(department,year, month, success, failure){
  259. this.action.invoke({"name": "listStaticMonthPersonByDepartment", "parameter": {"name":department, "year": year,"month":month },"success": success,"failure": failure});
  260. },
  261. listStaticMonthPersonByDepartmentNested : function(department,year, month, success, failure){
  262. this.action.invoke({"name": "listStaticMonthPersonByDepartmentNested", "parameter": {"name":department, "year": year,"month":month },"success": success,"failure": failure});
  263. },
  264. //根据公司查询公司下所有部门的统计数据信息:
  265. //"listDepartmentDateStaticByCompany" : {"uri":"/jaxrs/statisticshow/department/day/company/{name}/{date}"},
  266. listDepartmentDateStaticByCompany: function(company, date, success, failure){
  267. this.action.invoke({"name": "listDepartmentDateStaticByCompany", "parameter": {"name":company,"date": date },"success": success,"failure": failure});
  268. },
  269. //根据公司查询公司下所有部门的统计数据信息:
  270. //"listDepartmentMonthStaticByCompany" : {"uri":"/jaxrs/statisticshow/department/company/{name}/{year}/{month}"},
  271. listDepartmentMonthStaticByCompany: function(company, year, month, success, failure, async ){
  272. this.action.invoke({"name": "listDepartmentMonthStaticByCompany", "parameter": {"name":company,"year": year,"month":month },"success": success,"failure": failure,"async": async });
  273. },
  274. //根据部门查询部门下所有员工的统计数据信息:
  275. //"listPersonMonthStaticByDepartment" : {"uri":"/jaxrs/statisticshow/persons/department/subnested/{name}/{year}/{month}"},
  276. listPersonMonthStaticByDepartment: function(department, year, month, success, failure, async ){
  277. this.action.invoke({"name": "listPersonMonthStaticByDepartment", "parameter": {"name":department,"year": year,"month":month },"success": success,"failure": failure,"async": async });
  278. },
  279. createAppeal: function(detailId, data, success, failure){
  280. this.action.invoke({"name": "createAppeal", "parameter": {"detailId": detailId }, "data": data, "success": success,"failure": failure});
  281. },
  282. processAppeal: function(id, data, success, failure, async){
  283. this.action.invoke({"name": "processAppeal","parameter": {"id": id }, "async": async, "data": data, "success": success, "failure": failure});
  284. },
  285. process2Appeal: function(id, data, success, failure, async){
  286. this.action.invoke({"name": "process2Appeal","parameter": {"id": id }, "async": async, "data": data, "success": success, "failure": failure});
  287. },
  288. getAppeal: function(id, success, failure,async){
  289. this.action.invoke({"name": "getAppeal", "parameter": {"id": id}, "async": async, "success": success,"failure": failure});
  290. },
  291. deleteAppeal: function(id, success, failure, async){
  292. this.action.invoke({"name": "deleteAppeal", "async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  293. },
  294. listAppealFilterNext : function( id, count, filterData, success,failure, async){
  295. this.action.invoke({"name": "listAppealFilterNext","parameter": {"id": id , "count" : count }, "data": filterData, "async": async, "success": success, "failure": failure});
  296. },
  297. listAppealFilterPrev : function( id, count, filterData, success,failure, async){
  298. this.action.invoke({"name": "listAppealFilterPrev","parameter": {"id": id , "count" : count }, "data": filterData, "async": async, "success": success, "failure": failure});
  299. },
  300. listWorkplace: function(success, failure, async){
  301. this.action.invoke({"name": "listWorkplace","async": async, "success": success, "failure": failure});
  302. },
  303. getWorkplace: function(id, success, failure, async){
  304. this.action.invoke({"name": "getWorkplace","async": async, "parameter": {"id": id },"success": success,"failure": failure});
  305. },
  306. saveWorkplace: function(data, success, failure,async){
  307. this.action.invoke({"name": "saveWorkplace","async": async,"data": data,"parameter": {"id": data.id},"success": success,"failure": failure});
  308. },
  309. deleteWorkplace: function(id, success, failure, async){
  310. this.action.invoke({"name": "deleteWorkplace","async": async, "parameter": {"id": id}, "success": success, "failure": failure});
  311. }
  312. });