interfaces.js 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367
  1. /**
  2. * Created by vian on 2017/3/20.
  3. */
  4. var model = require("./billsModel");
  5. var counter = require("../../../public/counter/counter");
  6. var StdBillsLib = model.stdBillsLibMod;
  7. var Bills = model.billsMod;
  8. var JobContent = model.jobContentMod;
  9. var ItemCharacter = model.itemCharacterMod;
  10. var fieldArr = ["code", "name", "unit", "ruleText", "Expression"];
  11. var billsDao = function(){};
  12. //----------StdBillsLib-------------------
  13. billsDao.prototype.getStdBillsLib = function(userId, callback){
  14. StdBillsLib.find({}, "-_id", function(err, data){
  15. if(err){
  16. callback(1, "Error", null);
  17. }
  18. else{
  19. callback(0, "", data);
  20. }
  21. })
  22. }
  23. billsDao.prototype.createStdBillsLib = function(clibData, callback){
  24. //counter.getIDAfterCount("bills", 1, function(err, result){
  25. // var billsLibId = result.value.sequence_value;
  26. var billsLibId = 1;
  27. var billsLibName = clibData.name;
  28. var createDate = clibData.createDate;
  29. var newStdBillsLib = {
  30. billsLibId: billsLibId,
  31. billsLibName: billsLibName,
  32. createDate: createDate
  33. }
  34. StdBillsLib.create(newStdBillsLib, function(err){
  35. if(err){
  36. callback(1, "Error");
  37. }
  38. else {
  39. callback(0, "");
  40. }
  41. });
  42. //});
  43. }
  44. billsDao.prototype.deleteStdBillsLib = function(billsLibId, callback){
  45. StdBillsLib.remove({billsLibId: billsLibId}, function(err){
  46. if(err){
  47. callback(1, "Error");
  48. }
  49. else{
  50. callback(0, "");
  51. }
  52. });
  53. }
  54. billsDao.prototype.renameStdBillsLib = function(renameData, callback){
  55. var billsLibId = renameData.id;
  56. var renameVal = renameData.data;
  57. StdBillsLib.update({billsLibId: billsLibId}, {$set:{billsLibName: renameVal}}, function(err){
  58. if(err){
  59. callback(1, "Error");
  60. }
  61. else{
  62. callback(0, "");
  63. }
  64. });
  65. }
  66. //----------------------------Bills---------------------
  67. billsDao.prototype.getBills = function (billsLibId, callback) {
  68. Bills.find({billsLibId: billsLibId},"-_id", function(err, billsData){
  69. if(err){
  70. callback(1, "Error", null);
  71. }
  72. else{
  73. callback(0, "", billsData);
  74. }
  75. });
  76. }
  77. billsDao.prototype.createBills = function(cbillsData, callback){
  78. var field = cbillsData.field;
  79. var data = cbillsData.data;
  80. var newId = cbillsData.id;//ǰ��ͨ�� counter.getIDAfterCount("bills", 1);���
  81. var billsLibId = cbillsData.billsLibId;
  82. var newBills;
  83. if(field == "code"){
  84. newBills = {
  85. ID: newId,
  86. ParentID: cbillsData.parentId,
  87. NextSiblingID: cbillsData.nextSiblingId,
  88. billsLibId: billsLibId,
  89. code: data
  90. }
  91. }
  92. else if(field == "name"){
  93. newBills = {
  94. ID: newId,
  95. ParentID: cbillsData.parentId,
  96. NextSiblingID: cbillsData.nextSiblingId,
  97. billsLibId: billsLibId,
  98. name: data
  99. }
  100. }
  101. else if(field == "unit"){
  102. newBills = {
  103. ID: newId,
  104. ParentID: cbillsData.parentId,
  105. NextSiblingID: cbillsData.nextSiblingId,
  106. billsLibId: billsLibId,
  107. unit: data
  108. }
  109. }
  110. else if(field == "ruleText"){
  111. newBills = {
  112. ID: newId,
  113. ParentID: cbillsData.parentId,
  114. NextSiblingID: cbillsData.nextSiblingId,
  115. billsLibId: billsLibId,
  116. ruleText: data
  117. }
  118. }
  119. Bills.create(newBills, function(err){
  120. if(err){
  121. callback(1, "Error");
  122. }
  123. else{
  124. callback(0, "");
  125. }
  126. });
  127. }
  128. //������ɾ������¸ı��˵�nextSiblingId
  129. billsDao.prototype.updateNextSiblingId = function(uNextData, callback){
  130. var updateId = uNextData.id;
  131. var updateData = uNextData.data;
  132. Bills.update({ID: updateId}, {$set: {NextSiblingID: updateData}}, function(err){
  133. if(err){
  134. callback(1, "Error")
  135. }
  136. else{
  137. callback(0, "");
  138. }
  139. });
  140. }
  141. billsDao.prototype.updateBills = function(ubillsData, callback){
  142. var updateId = ubillsData.id;
  143. var updateField = ubillsData.field;
  144. var updateData = ubillsData.data;
  145. if(updateField == "code"){
  146. Bills.update({ID: updateId}, {$set:{code: updateData}}, function(err){
  147. if(err){
  148. callback(1, "Error");
  149. }
  150. else {
  151. callback(0, "");
  152. }
  153. });
  154. }
  155. else if(updateField == "name"){
  156. Bills.update({ID: updateId}, {$set:{name: updateData}}, function(err){
  157. if(err){
  158. callback(1, "Error");
  159. }
  160. else {
  161. callback(0, "");
  162. }
  163. });
  164. }
  165. else if(updateField == "unit"){
  166. Bills.update({ID: updateId}, {$set:{unit: updateData}}, function(err){
  167. if(err){
  168. callback(1, "Error");
  169. }
  170. else {
  171. callback(0, "");
  172. }
  173. });
  174. }
  175. else if(updateField == "ruleText"){
  176. Bills.update({ID: updateId}, {$set:{ruleText: updateData}}, function(err){
  177. if(err){
  178. callback(1, "Error");
  179. }
  180. else {
  181. callback(0, "");
  182. }
  183. });
  184. }
  185. }
  186. billsDao.prototype.deleteBills = function(deleteIds, callback){
  187. //ǰ�˿��Ƶõ���ɾ�������нڵ�deleteIds
  188. if(deleteIds){
  189. for(var i=0; i<deleteIds.length; i++){
  190. Bills.remove({ID: deleteIds[i]}, function(err){
  191. if(err){
  192. callback(1, "Error");
  193. }
  194. else{
  195. callback(0, "");
  196. }
  197. });
  198. }
  199. }
  200. }
  201. //--------------JobContent------------------
  202. billsDao.prototype.getJobContent = function(billsLibId, callback){
  203. JobContent.find({billsLibId: billsLibId}, "-_id", function(err, jobs){
  204. if(err){
  205. callback(1, "Error", null);
  206. }
  207. else{
  208. callback(0, "", jobs)
  209. }
  210. });
  211. }
  212. billsDao.prototype.createJobContent = function(cJobData, callback){
  213. var field = cJobData.field;
  214. var data = cJobData.data;
  215. var id = counter.getIDAfterCount("bills", 1);
  216. var billsLibId = cJobData.billsLibId;
  217. var newJobContent;
  218. if(field == "code"){
  219. newJobContent = {
  220. id: id,
  221. billsLibId: billsLibId,
  222. code: data
  223. }
  224. }
  225. else if(field == "content"){
  226. newJobContent = {
  227. id: id,
  228. billsLibId: billsLibId,
  229. content: data
  230. }
  231. }
  232. JobContent.create(newJobContent, function(err){
  233. if(err){
  234. callback(1, "Error");
  235. }
  236. else{
  237. callback(0, "");
  238. }
  239. });
  240. }
  241. billsDao.prototype.updateJobContent = function(uJobData, callback){
  242. var field = cJobData.field;
  243. var updateData = cJobData.data;
  244. var id = cJobData.id;
  245. if(field == "code"){
  246. JobContent.update({id: id}, {$set: {code: updateData}}, function(err){
  247. if(err){
  248. callback(1, "Error");
  249. }
  250. else{
  251. callback(0, "");
  252. }
  253. });
  254. }
  255. else if(field == "content"){
  256. JobContent.update({id: id}, {$set: {content: updateData}}, function(err){
  257. if(err){
  258. callback(1, "Error");
  259. }
  260. else{
  261. callback(0, "");
  262. }
  263. });
  264. }
  265. }
  266. billsDao.prototype.deleteJobContent = function(jobId, callback){
  267. JobContent.remove({id: jobId}, function(err){
  268. if(err){
  269. callback(1, "Error");
  270. }
  271. else{
  272. callback(0, "");
  273. }
  274. });
  275. }
  276. //----------------------ItemCharacter---------------------
  277. billsDao.prototype.getItemCharacter = function(billsLibId, callback){
  278. ItemCharacter.find({billsLibId: billsLibId}, "-_id", function(err, items){
  279. if(err){
  280. callback(1, "Error", null);
  281. }
  282. else{
  283. callback(0, "", items)
  284. }
  285. });
  286. }
  287. billsDao.prototype.createItemCharacter = function(cItemData, callback){
  288. var field = cItemData.field;
  289. var data = cItemData.data;
  290. var id = counter.getIDAfterCount("bills", 1);
  291. var billsLibId = cItemData.billsLibId;
  292. var newItemCharacter;
  293. if(field == "code"){
  294. newItemCharacter = {
  295. id: id,
  296. billsLibId: billsLibId,
  297. code: data
  298. }
  299. }
  300. else if(field == "content"){
  301. newItemCharacter = {
  302. id: id,
  303. billsLibId: billsLibId,
  304. content: data
  305. }
  306. }
  307. }
  308. billsDao.prototype.updateItemCharacter = function(uItemData, callback){
  309. var field = uItemData.field;
  310. var updateData = uItemData.data;
  311. var id = uItemData.id;
  312. if(field == "code"){
  313. ItemCharacter.update({id: id}, {$set: {code: updateData}}, function(err){
  314. if(err){
  315. callback(1, "Error");
  316. }
  317. else{
  318. callback(0, "");
  319. }
  320. });
  321. }
  322. else if(field == "character"){
  323. ItemCharacter.update({id: id}, {$set: {character: updateData}}, function(err){
  324. if(err){
  325. callback(1, "Error");
  326. }
  327. else{
  328. callback(0, "");
  329. }
  330. });
  331. }
  332. }
  333. billsDao.prototype.deleteItemCharacter = function(itemId, callback){
  334. JobContent.remove({id: itemId}, function(err){
  335. if(err){
  336. callback(1, "Error");
  337. }
  338. else{
  339. callback(0, "");
  340. }
  341. });
  342. }
  343. //----------------------itemValue
  344. //-----------------------------
  345. module.exports = new billsDao();