|  | @@ -88,6 +88,10 @@ module.exports = app => {
 | 
	
		
			
				|  |  |              // 判断t_type是否为费用
 | 
	
		
			
				|  |  |              const transaction = await this.db.beginTransaction();
 | 
	
		
			
				|  |  |              try {
 | 
	
		
			
				|  |  | +                if (data.t_type === materialConst.t_type[0].value) {
 | 
	
		
			
				|  |  | +                    data.quantity = null;
 | 
	
		
			
				|  |  | +                    data.expr = null;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |                  await transaction.update(this.tableName, data);
 | 
	
		
			
				|  |  |                  let m_tp = this.ctx.material.m_tp;
 | 
	
		
			
				|  |  |                  if (data.t_type === materialConst.t_type[1].value) {
 | 
	
	
		
			
				|  | @@ -126,7 +130,7 @@ module.exports = app => {
 | 
	
		
			
				|  |  |           * @returns {Promise<*>}
 | 
	
		
			
				|  |  |           */
 | 
	
		
			
				|  |  |          async calcQuantityByMB(transaction, mid, mb) {
 | 
	
		
			
				|  |  | -            if (mb.t_type === 1) {
 | 
	
		
			
				|  |  | +            if (mb.t_type === materialConst.t_type[0].value) {
 | 
	
		
			
				|  |  |                  const sql = 'SELECT SUM(`gather_qty`*`quantity`) as quantity FROM ' + this.ctx.service.materialList.tableName + ' WHERE `mid`=? AND `mb_id`=? AND `is_join`=1';
 | 
	
		
			
				|  |  |                  const sqlParam = [mid, mb.id];
 | 
	
		
			
				|  |  |                  const mb_quantity = await transaction.queryOne(sql, sqlParam);
 | 
	
	
		
			
				|  | @@ -139,13 +143,14 @@ module.exports = app => {
 | 
	
		
			
				|  |  |                  };
 | 
	
		
			
				|  |  |                  await transaction.update(this.tableName, updateData);
 | 
	
		
			
				|  |  |                  return await this.ctx.helper.round(this.ctx.helper.mul(mb_quantity.quantity, mb.m_spread), 2);
 | 
	
		
			
				|  |  | +            } else if (mb.t_type === materialConst.t_type[1].value) {
 | 
	
		
			
				|  |  | +                const updateData = {
 | 
	
		
			
				|  |  | +                    id: mb.id,
 | 
	
		
			
				|  |  | +                    pre_tp: mb.quantity && mb.m_spread !== null ? this.ctx.helper.round(this.ctx.helper.add(mb.pre_tp, this.ctx.helper.mul(mb.quantity, mb.m_spread)), 2) : mb.pre_tp,
 | 
	
		
			
				|  |  | +                };
 | 
	
		
			
				|  |  | +                await transaction.update(this.tableName, updateData);
 | 
	
		
			
				|  |  | +                return await this.ctx.helper.round(this.ctx.helper.mul(mb.quantity, mb.m_spread), 2);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            const updateData = {
 | 
	
		
			
				|  |  | -                id: mb.id,
 | 
	
		
			
				|  |  | -                pre_tp: mb.quantity && mb.m_spread !== null ? this.ctx.helper.round(this.ctx.helper.add(mb.pre_tp, this.ctx.helper.mul(mb.quantity, mb.m_spread)), 2) : mb.pre_tp,
 | 
	
		
			
				|  |  | -            };
 | 
	
		
			
				|  |  | -            await transaction.update(this.tableName, updateData);
 | 
	
		
			
				|  |  | -            return await this.ctx.helper.round(this.ctx.helper.mul(mb.quantity, mb.m_spread), 2);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          /**
 |