/**
 * Created by zhang on 2018/9/10.
 */

import mongoose from "mongoose";

const uuidV1 = require('uuid/v1');
let moment = require("moment");
let feeRateModel = mongoose.model('std_fee_rate_libs');
let compilationModel = mongoose.model("compilation");
const _ = require('lodash');

let feeRateLib = {
    findByCondition:async function(conditions,options,single=true){
        if(single == true){
            return await feeRateModel.findOne(conditions,options);
        }else {
            return await  feeRateModel.find(conditions,options);
        }
    },
    addLib : async function (data){
        let now = new Date().getTime();
        let dateStr = moment(now).format('YYYY-MM-DD HH:mm:ss');
        //取编办信息
        let compilation = await compilationModel.findOne({_id:data.compilationId});
        if(compilation){
            let newLib = {
                creator: data.userAccount,
                createDate: now,
                recentOpr: [{operator: data.userAccount, operateDate: dateStr}],
                libName: data.name,
                compilationId: data.compilationId,
                compilationName: compilation.name,
            };
            newLib.ID = uuidV1();
            return await feeRateModel.create(newLib);
        }else {
            throw  new Error("没有找到该编办！");
        }

    },
    saveLib:async function(param) {
        return await feeRateModel.findOneAndUpdate(param.query,param.data,{new:true});
    },
    deleteLibByID:async function(ID){
        return await feeRateModel.deleteOne({ID:ID});
    },
};

export default feeRateLib