/**
 * Created by zhang on 2018/9/3.
 */
import mongoose from "mongoose";
const uuidV1 = require('uuid/v1');
let moment = require("moment");
let basicInfoModel = mongoose.model('std_basic_info_lib');


let basicInfoLib = {
    findByCondition:async function(conditions,options,single=true){
        if(single == true){
            return await basicInfoModel.findOne(conditions,options);
        }else {
            return await  basicInfoModel.find(conditions,options);
        }
    },
    addLib : async function (data){
        let now = new Date().getTime();
        let dateStr = moment(now).format('YYYY-MM-DD HH:mm:ss');
        let newLib = {
            creator: data.userAccount,
            createDate: now,
            recentOpr: [{operator: data.userAccount, operateDate: dateStr}],
            name: data.name,
        };
        newLib.ID = uuidV1();
        return await basicInfoModel.create(newLib);
    },
    saveLib:async function(param) {
        return await basicInfoModel.findOneAndUpdate(param.query,param.data,{new:true});
    },
    deleteLibByID:async function(ID){
        return await basicInfoModel.deleteOne({ID:ID});
    },
};

export default basicInfoLib