| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 | 
							- 'use strict';
 
- /**
 
-  *
 
-  *
 
-  * @author Mai
 
-  * @date
 
-  * @version
 
-  */
 
- const { app, assert } = require('egg-mock/bootstrap');
 
- const path = require('path');
 
- let savePath;
 
- const mockData = {};
 
- const dataType = {
 
-     int: 'int',
 
-     str: 'string',
 
-     double: 'double',
 
-     currency: 'currency',
 
- };
 
- const checkData = function (target, source) {
 
-     for (const prop in source) {
 
-         if (source[prop] !== target[prop]) return false;
 
-     }
 
-     return true;
 
- };
 
- describe('test/app/service/report_memory.test.js', () => {
 
-     // 准备测试数据
 
-     before(function* () {
 
-         const ctx = app.mockContext();
 
-         savePath = path.join(ctx.app.baseDir,'report_temp');
 
-         const postData = {
 
-             account: 'fuqingqing',
 
-             project: 'P0505',
 
-             project_password: '123456',
 
-         };
 
-         ctx.session = {};
 
-         const loginResult = yield ctx.service.projectAccount.accountLogin(postData, 2);
 
-         assert(loginResult);
 
-         mockData.session = ctx.session;
 
-     });
 
-     // 材料调差 - 期列表
 
-     it('test getMaterial', function* () {
 
-         const ctx = app.mockContext(mockData);
 
-         const result = yield ctx.service.reportMemory.getMaterial(2418);
 
-         yield ctx.helper.saveBufferFile(JSON.stringify(result, "", "\t"), path.join(savePath, 'mem-material.json'));
 
-     });
 
-     // 材料调差 - 期 - 调差工料
 
-     it('test getMaterialGl Order1', function* () {
 
-         const ctx = app.mockContext(mockData);
 
-         const result = yield ctx.service.reportMemory.getMaterialGl(2418, 2);
 
-         //yield ctx.helper.saveBufferFile(JSON.stringify(result, "", "\t"), path.join(savePath, 'mem-material-gl.json'));
 
-         assert(result.length === 4);
 
-     });
 
-     it('test getMaterialGl Order2', function* () {
 
-         const ctx = app.mockContext(mockData);
 
-         const checkResult = [
 
-             {
 
-                 "id": 131, "tid": 2418, "mid": 131,
 
-                 "code": "101", "name": "光圆钢筋", "unit": "kg", "spec": null,
 
-                 "t_type": 1, "m_type": 1, "t_type_str": "消耗量", "m_type_str": "分类",
 
-                 "quantity": 145.635, "expr": null,
 
-                 "basic_price": 4350, "basic_times": null,
 
-                 "msg_tp": 5100, "msg_times": "2020-05-08", "msg_spread": 750,
 
-                 "m_up_risk": 5, "m_down_risk": 5, "m_spread": 532.5,
 
-                 "tp": 77550.64, "end_tp": 1060588.24, "pre_tp": 983037.6,
 
-                 "remark": null, "in_time": "2020-05-08T08:09:33.000Z",
 
-             },
 
-             {
 
-                 "id": 132, "tid": 2418, "mid": 131,
 
-                 "t_type": 1, "m_type": 1, "t_type_str": "消耗量", "m_type_str": "分类",
 
-                 "code": "102", "name": "带肋钢筋", "unit": "kg", "spec": null,
 
-                 "quantity": 145.55, "expr": null,
 
-                 "basic_price": 4620, "basic_times": null,
 
-                 "msg_tp": 5500, "msg_times": "2020-05-09", "msg_spread": 880,
 
-                 "m_up_risk": 5, "m_down_risk": 5, "m_spread": 649,
 
-                 "tp": 94461.95, "end_tp": 1783456.95, "pre_tp": 1688995,
 
-                 "remark": null, "in_time": "2020-05-08T08:09:33.000Z",
 
-             },
 
-             {
 
-                 "id": 133,
 
-                 "tid": 2418,
 
-                 "mid": 131,
 
-                 "t_type": 1,
 
-                 "code": "103",
 
-                 "name": "水泥",
 
-                 "unit": "m3",
 
-                 "spec": null,
 
-                 "m_type": 1,
 
-                 "quantity": 498.732,
 
-                 "expr": null,
 
-                 "basic_price": 236.98,
 
-                 "basic_times": null,
 
-                 "msg_tp": 200.69,
 
-                 "msg_times": "2020-05-09",
 
-                 "msg_spread": -36.29,
 
-                 "m_up_risk": 5,
 
-                 "m_down_risk": 5,
 
-                 "m_spread": -24.441,
 
-                 "pre_tp": -3770872.11,
 
-                 "remark": null,
 
-                 "in_time": "2020-05-08T08:09:34.000Z",
 
-                 "tp": -12189.51,
 
-                 "t_type_str": "消耗量",
 
-                 "m_type_str": "分类",
 
-                 "end_tp": -3783061.62
 
-             },
 
-             {
 
-                 "id": 134,
 
-                 "tid": 2418,
 
-                 "mid": 131,
 
-                 "t_type": 2,
 
-                 "code": "985",
 
-                 "name": "汽油",
 
-                 "unit": "kg",
 
-                 "spec": null,
 
-                 "m_type": 1,
 
-                 "quantity": 1170.1512,
 
-                 "expr": "bqwc/10000*12",
 
-                 "basic_price": 4.9,
 
-                 "basic_times": null,
 
-                 "msg_tp": 6.2,
 
-                 "msg_times": "2020-05-08",
 
-                 "msg_spread": 1.3,
 
-                 "m_up_risk": 3,
 
-                 "m_down_risk": 3,
 
-                 "m_spread": 1.153,
 
-                 "pre_tp": null,
 
-                 "remark": null,
 
-                 "in_time": "2020-05-08T08:09:36.000Z",
 
-                 "tp": 1349.18,
 
-                 "t_type_str": "费用",
 
-                 "m_type_str": "分类",
 
-                 "end_tp": 1349.18
 
-             }
 
-         ];
 
-         const result = yield ctx.service.reportMemory.getMaterialGl(2418, 2);
 
-         //yield ctx.helper.saveBufferFile(JSON.stringify(result, "", "\t"), path.join(savePath, 'mem-material-gl.json'));
 
-         assert(result.length === 4);
 
-         assert(checkData(result[0], checkResult[0]));
 
-         assert(checkData(result[1], checkResult[1]));
 
-         assert(checkData(result[2], checkResult[2]));
 
-         assert(checkData(result[3], checkResult[3]));
 
-     });
 
- });
 
 
  |