123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819 |
- 'use strict';
- module.exports = app => {
- const mongoose = app.mongoose;
- const Schema = mongoose.Schema;
- const conn = app.mongooseDB.get('etlLocalDB');
- // 车辆基础信息数据结构 本地清洗 数据结构
- const StatsBaseInfoSchema2 = new Schema({
- create_date: { type: Number }, // 统计的数据是哪一天的
- year: { type: Number }, // 年 统计的数据
- month: { type: Number }, // 月 统计的数据
- day: { type: Number }, // 日 统计的数据
- dateString: { type: String }, // 时间字符串 yyyy-MM-dd
- start_time: { type: Date }, // 开始统计时间
- end_time: { type: Date, default: Date.now }, // 结束统计时间
- data: [
- {
- _id: {
- series_code: { type: String }, model_code: { type: String },
- }, // 分组 车型 车系
- stats_acce_cnt: {
- ar1: { type: Number },
- ar2: { type: Number },
- ar3: { type: Number },
- ar4: { type: Number },
- ar5: { type: Number },
- ar6: { type: Number },
- ar7: { type: Number },
- ar8: { type: Number },
- ar9: { type: Number },
- ar10: { type: Number },
- }, // 加速踏板开度统计 ar[x]:每隔10% 数量
- stats_sp_range: {
- range1_cnt: { type: Number },
- range2_cnt: { type: Number },
- range3_cnt: { type: Number },
- range4_cnt: { type: Number },
- range5_cnt: { type: Number },
- range6_cnt: { type: Number },
- range7_cnt: { type: Number },
- range8_cnt: { type: Number },
- range9_cnt: { type: Number },
- range10_cnt: { type: Number },
- range11_cnt: { type: Number },
- range12_cnt: { type: Number },
- range13_cnt: { type: Number },
- }, // 车速分布 range[x]_cnt:各速度分布次数,每隔10km/h
- stats_dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- }, // 制动减速度 dece[x],每隔0.04g
- stats_rotate: {
- rotate1: { type: Number },
- rotate2: { type: Number },
- rotate3: { type: Number },
- rotate4: { type: Number },
- rotate5: { type: Number },
- rotate6: { type: Number },
- rotate7: { type: Number },
- rotate8: { type: Number },
- }, // 最大转向角
- // rotate[x]: 3-10 deg,10-50 deg,50-100 deg,100-200 deg,200-300 deg,300-400 deg,400-500 deg,500-550deg
- stats_sp_rotate: {
- sp_1_cnt: {
- rotate1: { type: Number },
- rotate2: { type: Number },
- rotate3: { type: Number },
- rotate4: { type: Number },
- rotate5: { type: Number },
- rotate6: { type: Number },
- rotate7: { type: Number },
- rotate8: { type: Number },
- },
- sp_2_cnt: {
- rotate1: { type: Number },
- rotate2: { type: Number },
- rotate3: { type: Number },
- rotate4: { type: Number },
- rotate5: { type: Number },
- rotate6: { type: Number },
- rotate7: { type: Number },
- rotate8: { type: Number },
- },
- sp_3_cnt: {
- rotate1: { type: Number },
- rotate2: { type: Number },
- rotate3: { type: Number },
- rotate4: { type: Number },
- rotate5: { type: Number },
- rotate6: { type: Number },
- rotate7: { type: Number },
- rotate8: { type: Number },
- },
- }, // 车速对应转角 //sp_[x]_cnt:车速区间:(1:0-50km/h、2:50-80km/h、3:80-140km/h)
- // rotate[y]:各个转角区间(个数待定)
- stats_high_sp: {
- high_sp1: { type: Number },
- high_sp2: { type: Number },
- high_sp3: { type: Number },
- }, // 高速行驶车速 80-100km/h 100-120km/h 120km/h以上
- stats_start_sp: {
- start_sp1: { type: Number },
- start_sp2: { type: Number },
- start_sp3: { type: Number },
- start_sp4: { type: Number },
- start_sp5: { type: Number },
- start_sp6: { type: Number },
- start_sp7: { type: Number },
- start_sp8: { type: Number },
- start_sp9: { type: Number },
- start_sp10: { type: Number },
- start_sp11: { type: Number },
- start_sp12: { type: Number },
- start_sp13: { type: Number },
- start_sp14: { type: Number },
- }, // 起步车速
- // start_sp[x],起步车速 每隔5km/h
- stats_sp_dece_cnt: {
- dr_mode_auto: {
- sp_1_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_2_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_3_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_4_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_5_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_6_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_7_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- },
- dr_mode_eco: {
- sp_1_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_2_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_3_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_4_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_5_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_6_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_7_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- },
- dr_mode_sport: {
- sp_1_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_2_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_3_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_4_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_5_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_6_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_7_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- },
- dr_mode_confort: {
- sp_1_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_2_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_3_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_4_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_5_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_6_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- sp_7_cnt: {
- dece: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- },
- },
- },
- }, // 制动踏板减速度
- // sp_{x}_cnt:0-5、5-10、10-30、30-60、60-80、80-100、100-140车速区间段。 制动减速度 dece[x],每隔0.04g
- stats_sp_acce_cnt: {
- sp_1_cnt: {
- acce: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- as: {
- as1: { type: Number },
- as2: { type: Number },
- as3: { type: Number },
- as4: { type: Number },
- as5: { type: Number },
- as6: { type: Number },
- as7: { type: Number },
- as8: { type: Number },
- as9: { type: Number },
- as10: { type: Number },
- as11: { type: Number },
- as12: { type: Number },
- },
- },
- sp_2_cnt: {
- acce: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- as: {
- as1: { type: Number },
- as2: { type: Number },
- as3: { type: Number },
- as4: { type: Number },
- as5: { type: Number },
- as6: { type: Number },
- as7: { type: Number },
- as8: { type: Number },
- as9: { type: Number },
- as10: { type: Number },
- as11: { type: Number },
- as12: { type: Number },
- },
- },
- sp_3_cnt: {
- acce: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- as: {
- as1: { type: Number },
- as2: { type: Number },
- as3: { type: Number },
- as4: { type: Number },
- as5: { type: Number },
- as6: { type: Number },
- as7: { type: Number },
- as8: { type: Number },
- as9: { type: Number },
- as10: { type: Number },
- as11: { type: Number },
- as12: { type: Number },
- },
- },
- sp_4_cnt: {
- acce: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- as: {
- as1: { type: Number },
- as2: { type: Number },
- as3: { type: Number },
- as4: { type: Number },
- as5: { type: Number },
- as6: { type: Number },
- as7: { type: Number },
- as8: { type: Number },
- as9: { type: Number },
- as10: { type: Number },
- as11: { type: Number },
- as12: { type: Number },
- },
- },
- sp_5_cnt: {
- acce: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- as: {
- as1: { type: Number },
- as2: { type: Number },
- as3: { type: Number },
- as4: { type: Number },
- as5: { type: Number },
- as6: { type: Number },
- as7: { type: Number },
- as8: { type: Number },
- as9: { type: Number },
- as10: { type: Number },
- as11: { type: Number },
- as12: { type: Number },
- },
- },
- sp_6_cnt: {
- acce: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- as: {
- as1: { type: Number },
- as2: { type: Number },
- as3: { type: Number },
- as4: { type: Number },
- as5: { type: Number },
- as6: { type: Number },
- as7: { type: Number },
- as8: { type: Number },
- as9: { type: Number },
- as10: { type: Number },
- as11: { type: Number },
- as12: { type: Number },
- },
- },
- sp_7_cnt: {
- acce: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- as: {
- as1: { type: Number },
- as2: { type: Number },
- as3: { type: Number },
- as4: { type: Number },
- as5: { type: Number },
- as6: { type: Number },
- as7: { type: Number },
- as8: { type: Number },
- as9: { type: Number },
- as10: { type: Number },
- as11: { type: Number },
- as12: { type: Number },
- },
- },
- }, // 油门开度及加速度
- // sp_{x}_cnt:0-5、5-10、10-30、30-60、60-80、80-100车速。
- // acce表示的是加速踏板开度各个区间统计值,as表示的是加速度各个区间统计值(0-0.6g,每隔0.04g)。
- // 纵向加速度区间 acce代表0-0.5g 0.05g为分段 共10段
- yaw_portrait_acces: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- // 纵向减速度区间 dece代表0-0.8g 0.05g为分段 共16段
- stats_dece_other: {
- dece1: { type: Number },
- dece2: { type: Number },
- dece3: { type: Number },
- dece4: { type: Number },
- dece5: { type: Number },
- dece6: { type: Number },
- dece7: { type: Number },
- dece8: { type: Number },
- dece9: { type: Number },
- dece10: { type: Number },
- dece11: { type: Number },
- dece12: { type: Number },
- dece13: { type: Number },
- dece14: { type: Number },
- dece15: { type: Number },
- dece16: { type: Number },
- },
- // 侧向加速度区间 acce代表0-0.5g 0.05g为分段 共10段
- side_portrait_acces: {
- acce1: { type: Number },
- acce2: { type: Number },
- acce3: { type: Number },
- acce4: { type: Number },
- acce5: { type: Number },
- acce6: { type: Number },
- acce7: { type: Number },
- acce8: { type: Number },
- acce9: { type: Number },
- acce10: { type: Number },
- },
- // 不同车速下耗电占比
- // range[x]_cnt::各速度电耗量,x为车速分布区间
- // range1_cnt:车速在0-10km/h内次数
- // range2_cnt:车速在10-20km/h内次数
- // range3_cnt:车速在20-30km/h内次数
- // range4_cnt:车速在30-40km/h内次数
- // range5_cnt:车速在40-50km/h内次数
- // range6_cnt:车速在50-60km/h内次数
- // range7_cnt:车速在60-70km/h内次数
- // range8_cnt:车速在70-80km/h内次数
- // range9_cnt:车速在80-90km/h内次数
- // range10_cnt:车速在90-100km/h内次数
- // range11_cnt:车速在100-110km/h内次数
- // range12_cnt:车速在110-120km/h内次数
- // range13_cnt:车速在120km/h以上次数
- sp_power_consumption: {
- range1_cnt: { type: Number },
- range2_cnt: { type: Number },
- range3_cnt: { type: Number },
- range4_cnt: { type: Number },
- range5_cnt: { type: Number },
- range6_cnt: { type: Number },
- range7_cnt: { type: Number },
- range8_cnt: { type: Number },
- range9_cnt: { type: Number },
- range10_cnt: { type: Number },
- range11_cnt: { type: Number },
- range12_cnt: { type: Number },
- range13_cnt: { type: Number },
- },
- },
- ],
- });
- StatsBaseInfoSchema2.index({ create_date: -1 });
- return conn.model('StatsBaseInfo2', StatsBaseInfoSchema2, 'lc_stats_base_info');
- };
|