yinq 1 year ago
commit ada1e3f393

@ -39,7 +39,7 @@
"@riophae/vue-treeselect": "0.4.0",
"axios": "0.24.0",
"clipboard": "2.0.8",
"core-js": "3.25.3",
"core-js": "^3.33.2",
"echarts": "5.4.0",
"element-ui": "2.15.13",
"file-saver": "2.0.5",

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

@ -0,0 +1,104 @@
var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.arrayIteratorImpl=function(f){var m=0;return function(){return m<f.length?{done:!1,value:f[m++]}:{done:!0}}};$jscomp.arrayIterator=function(f){return{next:$jscomp.arrayIteratorImpl(f)}};$jscomp.makeIterator=function(f){var m="undefined"!=typeof Symbol&&Symbol.iterator&&f[Symbol.iterator];return m?m.call(f):$jscomp.arrayIterator(f)};
$jscomp.getGlobal=function(f){return"undefined"!=typeof window&&window===f?f:"undefined"!=typeof global&&null!=global?global:f};$jscomp.global=$jscomp.getGlobal(this);$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(f,m,v){f!=Array.prototype&&f!=Object.prototype&&(f[m]=v.value)};
$jscomp.polyfill=function(f,m,v,t){if(m){v=$jscomp.global;f=f.split(".");for(t=0;t<f.length-1;t++){var h=f[t];h in v||(v[h]={});v=v[h]}f=f[f.length-1];t=v[f];m=m(t);m!=t&&null!=m&&$jscomp.defineProperty(v,f,{configurable:!0,writable:!0,value:m})}};$jscomp.FORCE_POLYFILL_PROMISE=!1;
$jscomp.polyfill("Promise",function(f){function m(){this.batch_=null}function v(e){return e instanceof h?e:new h(function(l,f){l(e)})}if(f&&!$jscomp.FORCE_POLYFILL_PROMISE)return f;m.prototype.asyncExecute=function(e){if(null==this.batch_){this.batch_=[];var l=this;this.asyncExecuteFunction(function(){l.executeBatch_()})}this.batch_.push(e)};var t=$jscomp.global.setTimeout;m.prototype.asyncExecuteFunction=function(e){t(e,0)};m.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var e=
this.batch_;this.batch_=[];for(var l=0;l<e.length;++l){var f=e[l];e[l]=null;try{f()}catch(z){this.asyncThrow_(z)}}}this.batch_=null};m.prototype.asyncThrow_=function(e){this.asyncExecuteFunction(function(){throw e;})};var h=function(e){this.state_=0;this.result_=void 0;this.onSettledCallbacks_=[];var l=this.createResolveAndReject_();try{e(l.resolve,l.reject)}catch(S){l.reject(S)}};h.prototype.createResolveAndReject_=function(){function e(e){return function(h){f||(f=!0,e.call(l,h))}}var l=this,f=!1;
return{resolve:e(this.resolveTo_),reject:e(this.reject_)}};h.prototype.resolveTo_=function(e){if(e===this)this.reject_(new TypeError("A Promise cannot resolve to itself"));else if(e instanceof h)this.settleSameAsPromise_(e);else{a:switch(typeof e){case "object":var l=null!=e;break a;case "function":l=!0;break a;default:l=!1}l?this.resolveToNonPromiseObj_(e):this.fulfill_(e)}};h.prototype.resolveToNonPromiseObj_=function(e){var l=void 0;try{l=e.then}catch(S){this.reject_(S);return}"function"==typeof l?
this.settleSameAsThenable_(l,e):this.fulfill_(e)};h.prototype.reject_=function(e){this.settle_(2,e)};h.prototype.fulfill_=function(e){this.settle_(1,e)};h.prototype.settle_=function(e,l){if(0!=this.state_)throw Error("Cannot settle("+e+", "+l+"): Promise already settled in state"+this.state_);this.state_=e;this.result_=l;this.executeOnSettledCallbacks_()};h.prototype.executeOnSettledCallbacks_=function(){if(null!=this.onSettledCallbacks_){for(var e=0;e<this.onSettledCallbacks_.length;++e)X.asyncExecute(this.onSettledCallbacks_[e]);
this.onSettledCallbacks_=null}};var X=new m;h.prototype.settleSameAsPromise_=function(e){var l=this.createResolveAndReject_();e.callWhenSettled_(l.resolve,l.reject)};h.prototype.settleSameAsThenable_=function(e,l){var f=this.createResolveAndReject_();try{e.call(l,f.resolve,f.reject)}catch(z){f.reject(z)}};h.prototype.then=function(e,f){function l(e,f){return"function"==typeof e?function(f){try{m(e(f))}catch(p){v(p)}}:f}var m,v,t=new h(function(e,f){m=e;v=f});this.callWhenSettled_(l(e,m),l(f,v));return t};
h.prototype.catch=function(e){return this.then(void 0,e)};h.prototype.callWhenSettled_=function(e,f){function l(){switch(h.state_){case 1:e(h.result_);break;case 2:f(h.result_);break;default:throw Error("Unexpected state: "+h.state_);}}var h=this;null==this.onSettledCallbacks_?X.asyncExecute(l):this.onSettledCallbacks_.push(l)};h.resolve=v;h.reject=function(e){return new h(function(f,h){h(e)})};h.race=function(e){return new h(function(f,h){for(var l=$jscomp.makeIterator(e),m=l.next();!m.done;m=l.next())v(m.value).callWhenSettled_(f,
h)})};h.all=function(e){var f=$jscomp.makeIterator(e),m=f.next();return m.done?v([]):new h(function(e,h){function l(f){return function(h){t[f]=h;z--;0==z&&e(t)}}var t=[],z=0;do t.push(void 0),z++,v(m.value).callWhenSettled_(l(t.length-1),h),m=f.next();while(!m.done)})};return h},"es6","es3");
var DracoDecoderModule=function(){var f="undefined"!==typeof document&&document.currentScript?document.currentScript.src:void 0;"undefined"!==typeof __filename&&(f=f||__filename);return function(m){function v(k){return a.locateFile?a.locateFile(k,M):M+k}function t(a,c){a||z("Assertion failed: "+c)}function h(a,c,b){var d=c+b;for(b=c;a[b]&&!(b>=d);)++b;if(16<b-c&&a.subarray&&xa)return xa.decode(a.subarray(c,b));for(d="";c<b;){var k=a[c++];if(k&128){var e=a[c++]&63;if(192==(k&224))d+=String.fromCharCode((k&
31)<<6|e);else{var f=a[c++]&63;k=224==(k&240)?(k&15)<<12|e<<6|f:(k&7)<<18|e<<12|f<<6|a[c++]&63;65536>k?d+=String.fromCharCode(k):(k-=65536,d+=String.fromCharCode(55296|k>>10,56320|k&1023))}}else d+=String.fromCharCode(k)}return d}function X(a,c){return a?h(ca,a,c):""}function e(a,c){0<a%c&&(a+=c-a%c);return a}function l(k){ka=k;a.HEAP8=T=new Int8Array(k);a.HEAP16=new Int16Array(k);a.HEAP32=P=new Int32Array(k);a.HEAPU8=ca=new Uint8Array(k);a.HEAPU16=new Uint16Array(k);a.HEAPU32=new Uint32Array(k);
a.HEAPF32=new Float32Array(k);a.HEAPF64=new Float64Array(k)}function S(k){for(;0<k.length;){var c=k.shift();if("function"==typeof c)c();else{var b=c.func;"number"===typeof b?void 0===c.arg?a.dynCall_v(b):a.dynCall_vi(b,c.arg):b(void 0===c.arg?null:c.arg)}}}function z(k){if(a.onAbort)a.onAbort(k);k+="";ya(k);Y(k);za=!0;throw new WebAssembly.RuntimeError("abort("+k+"). Build with -s ASSERTIONS=1 for more info.");}function va(a){return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):
0===a.indexOf("data:application/octet-stream;base64,")}function wa(){try{if(da)return new Uint8Array(da);if(la)return la(U);throw"both async and sync fetching of the wasm failed";}catch(k){z(k)}}function Ma(){return da||!ea&&!Z||"function"!==typeof fetch?new Promise(function(a,c){a(wa())}):fetch(U,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+U+"'";return a.arrayBuffer()}).catch(function(){return wa()})}function ba(){if(!ba.strings){var a={USER:"web_user",
LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"===typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:na},c;for(c in Aa)a[c]=Aa[c];var b=[];for(c in a)b.push(c+"="+a[c]);ba.strings=b}return ba.strings}function ma(k){function c(){if(!fa&&(fa=!0,!za)){Ba=!0;S(Ca);S(Da);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)Ea.unshift(a.postRun.shift());
S(Ea)}}if(!(0<aa)){if(a.preRun)for("function"==typeof a.preRun&&(a.preRun=[a.preRun]);a.preRun.length;)Fa.unshift(a.preRun.shift());S(Fa);0<aa||(a.setStatus?(a.setStatus("Running..."),setTimeout(function(){setTimeout(function(){a.setStatus("")},1);c()},1)):c())}}function p(){}function u(a){return(a||p).__cache__}function N(a,c){var b=u(c),d=b[a];if(d)return d;d=Object.create((c||p).prototype);d.ptr=a;return b[a]=d}function V(a){if("string"===typeof a){for(var c=0,b=0;b<a.length;++b){var d=a.charCodeAt(b);
55296<=d&&57343>=d&&(d=65536+((d&1023)<<10)|a.charCodeAt(++b)&1023);127>=d?++c:c=2047>=d?c+2:65535>=d?c+3:c+4}c=Array(c+1);b=0;d=c.length;if(0<d){d=b+d-1;for(var k=0;k<a.length;++k){var e=a.charCodeAt(k);if(55296<=e&&57343>=e){var f=a.charCodeAt(++k);e=65536+((e&1023)<<10)|f&1023}if(127>=e){if(b>=d)break;c[b++]=e}else{if(2047>=e){if(b+1>=d)break;c[b++]=192|e>>6}else{if(65535>=e){if(b+2>=d)break;c[b++]=224|e>>12}else{if(b+3>=d)break;c[b++]=240|e>>18;c[b++]=128|e>>12&63}c[b++]=128|e>>6&63}c[b++]=128|
e&63}}c[b]=0}a=n.alloc(c,T);n.copy(c,T,a)}return a}function x(){throw"cannot construct a Status, no constructor in IDL";}function A(){this.ptr=Oa();u(A)[this.ptr]=this}function B(){this.ptr=Pa();u(B)[this.ptr]=this}function C(){this.ptr=Qa();u(C)[this.ptr]=this}function D(){this.ptr=Ra();u(D)[this.ptr]=this}function E(){this.ptr=Sa();u(E)[this.ptr]=this}function q(){this.ptr=Ta();u(q)[this.ptr]=this}function J(){this.ptr=Ua();u(J)[this.ptr]=this}function w(){this.ptr=Va();u(w)[this.ptr]=this}function F(){this.ptr=
Wa();u(F)[this.ptr]=this}function r(){this.ptr=Xa();u(r)[this.ptr]=this}function G(){this.ptr=Ya();u(G)[this.ptr]=this}function H(){this.ptr=Za();u(H)[this.ptr]=this}function O(){this.ptr=$a();u(O)[this.ptr]=this}function K(){this.ptr=ab();u(K)[this.ptr]=this}function g(){this.ptr=bb();u(g)[this.ptr]=this}function y(){this.ptr=cb();u(y)[this.ptr]=this}function Q(){throw"cannot construct a VoidPtr, no constructor in IDL";}function I(){this.ptr=db();u(I)[this.ptr]=this}function L(){this.ptr=eb();u(L)[this.ptr]=
this}m=m||{};var a="undefined"!==typeof m?m:{},Ga=!1,Ha=!1;a.onRuntimeInitialized=function(){Ga=!0;if(Ha&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.onModuleParsed=function(){Ha=!0;if(Ga&&"function"===typeof a.onModuleLoaded)a.onModuleLoaded(a)};a.isVersionSupported=function(a){if("string"!==typeof a)return!1;a=a.split(".");return 2>a.length||3<a.length?!1:1==a[0]&&0<=a[1]&&3>=a[1]?!0:0!=a[0]||10<a[1]?!1:!0};var ha={},W;for(W in a)a.hasOwnProperty(W)&&(ha[W]=a[W]);var na="./this.program",
ea=!1,Z=!1,oa=!1,fb=!1,Ia=!1;ea="object"===typeof window;Z="function"===typeof importScripts;oa=(fb="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)&&!ea&&!Z;Ia=!ea&&!oa&&!Z;var M="",pa,qa;if(oa){M=__dirname+"/";var ra=function(a,c){pa||(pa=require("fs"));qa||(qa=require("path"));a=qa.normalize(a);return pa.readFileSync(a,c?null:"utf8")};var la=function(a){a=ra(a,!0);a.buffer||(a=new Uint8Array(a));t(a.buffer);return a};1<process.argv.length&&
(na=process.argv[1].replace(/\\/g,"/"));process.argv.slice(2);process.on("uncaughtException",function(a){throw a;});process.on("unhandledRejection",z);a.inspect=function(){return"[Emscripten Module object]"}}else if(Ia)"undefined"!=typeof read&&(ra=function(a){return read(a)}),la=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");t("object"===typeof a);return a},"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,
console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(ea||Z)Z?M=self.location.href:document.currentScript&&(M=document.currentScript.src),f&&(M=f),M=0!==M.indexOf("blob:")?M.substr(0,M.lastIndexOf("/")+1):"",ra=function(a){var c=new XMLHttpRequest;c.open("GET",a,!1);c.send(null);return c.responseText},Z&&(la=function(a){var c=new XMLHttpRequest;c.open("GET",a,!1);c.responseType="arraybuffer";c.send(null);return new Uint8Array(c.response)});var ya=a.print||console.log.bind(console),
Y=a.printErr||console.warn.bind(console);for(W in ha)ha.hasOwnProperty(W)&&(a[W]=ha[W]);ha=null;a.thisProgram&&(na=a.thisProgram);var da;a.wasmBinary&&(da=a.wasmBinary);"object"!==typeof WebAssembly&&Y("no native wasm support detected");var ia,gb=new WebAssembly.Table({initial:381,maximum:381,element:"anyfunc"}),za=!1,xa="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");var T,ca,P,Ja=a.TOTAL_MEMORY||16777216;if(ia=a.wasmMemory?
a.wasmMemory:new WebAssembly.Memory({initial:Ja/65536}))var ka=ia.buffer;Ja=ka.byteLength;l(ka);P[4604]=5261456;var Fa=[],Ca=[],Da=[],Ea=[],Ba=!1,aa=0,sa=null,ja=null;a.preloadedImages={};a.preloadedAudios={};var U="draco_decoder.wasm";va(U)||(U=v(U));Ca.push({func:function(){hb()}});var Aa={},R={buffers:[null,[],[]],printChar:function(a,c){var b=R.buffers[a];0===c||10===c?((1===a?ya:Y)(h(b,0)),b.length=0):b.push(c)},varargs:0,get:function(a){R.varargs+=4;return P[R.varargs-4>>2]},getStr:function(){return X(R.get())},
get64:function(){var a=R.get();R.get();return a},getZero:function(){R.get()}},Ka={__cxa_allocate_exception:function(a){return ib(a)},__cxa_throw:function(a,c,b){"uncaught_exception"in ta?ta.uncaught_exceptions++:ta.uncaught_exceptions=1;throw a;},abort:function(){z()},emscripten_get_sbrk_ptr:function(){return 18416},emscripten_memcpy_big:function(a,c,b){ca.set(ca.subarray(c,c+b),a)},emscripten_resize_heap:function(a){if(2147418112<a)return!1;for(var c=Math.max(T.length,16777216);c<a;)c=536870912>=
c?e(2*c,65536):Math.min(e((3*c+2147483648)/4,65536),2147418112);a:{try{ia.grow(c-ka.byteLength+65535>>16);l(ia.buffer);var b=1;break a}catch(d){}b=void 0}return b?!0:!1},environ_get:function(a,c){var b=0;ba().forEach(function(d,e){var f=c+b;e=P[a+4*e>>2]=f;for(f=0;f<d.length;++f)T[e++>>0]=d.charCodeAt(f);T[e>>0]=0;b+=d.length+1});return 0},environ_sizes_get:function(a,c){var b=ba();P[a>>2]=b.length;var d=0;b.forEach(function(a){d+=a.length+1});P[c>>2]=d;return 0},fd_close:function(a){return 0},fd_seek:function(a,
c,b,d,e){return 0},fd_write:function(a,c,b,d){try{for(var e=0,f=0;f<b;f++){for(var g=P[c+8*f>>2],k=P[c+(8*f+4)>>2],h=0;h<k;h++)R.printChar(a,ca[g+h]);e+=k}P[d>>2]=e;return 0}catch(ua){return"undefined"!==typeof FS&&ua instanceof FS.ErrnoError||z(ua),ua.errno}},memory:ia,setTempRet0:function(a){},table:gb},La=function(){function e(c,b){a.asm=c.exports;aa--;a.monitorRunDependencies&&a.monitorRunDependencies(aa);0==aa&&(null!==sa&&(clearInterval(sa),sa=null),ja&&(c=ja,ja=null,c()))}function c(a){e(a.instance)}
function b(a){return Ma().then(function(a){return WebAssembly.instantiate(a,d)}).then(a,function(a){Y("failed to asynchronously prepare wasm: "+a);z(a)})}var d={env:Ka,wasi_unstable:Ka};aa++;a.monitorRunDependencies&&a.monitorRunDependencies(aa);if(a.instantiateWasm)try{return a.instantiateWasm(d,e)}catch(Na){return Y("Module.instantiateWasm callback failed with error: "+Na),!1}(function(){if(da||"function"!==typeof WebAssembly.instantiateStreaming||va(U)||"function"!==typeof fetch)return b(c);fetch(U,
{credentials:"same-origin"}).then(function(a){return WebAssembly.instantiateStreaming(a,d).then(c,function(a){Y("wasm streaming compile failed: "+a);Y("falling back to ArrayBuffer instantiation");b(c)})})})();return{}}();a.asm=La;var hb=a.___wasm_call_ctors=function(){return a.asm.__wasm_call_ctors.apply(null,arguments)},jb=a._emscripten_bind_Status_code_0=function(){return a.asm.emscripten_bind_Status_code_0.apply(null,arguments)},kb=a._emscripten_bind_Status_ok_0=function(){return a.asm.emscripten_bind_Status_ok_0.apply(null,
arguments)},lb=a._emscripten_bind_Status_error_msg_0=function(){return a.asm.emscripten_bind_Status_error_msg_0.apply(null,arguments)},mb=a._emscripten_bind_Status___destroy___0=function(){return a.asm.emscripten_bind_Status___destroy___0.apply(null,arguments)},Oa=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return a.asm.emscripten_bind_DracoUInt16Array_DracoUInt16Array_0.apply(null,arguments)},nb=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return a.asm.emscripten_bind_DracoUInt16Array_GetValue_1.apply(null,
arguments)},ob=a._emscripten_bind_DracoUInt16Array_size_0=function(){return a.asm.emscripten_bind_DracoUInt16Array_size_0.apply(null,arguments)},pb=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return a.asm.emscripten_bind_DracoUInt16Array___destroy___0.apply(null,arguments)},Pa=a._emscripten_bind_PointCloud_PointCloud_0=function(){return a.asm.emscripten_bind_PointCloud_PointCloud_0.apply(null,arguments)},qb=a._emscripten_bind_PointCloud_num_attributes_0=function(){return a.asm.emscripten_bind_PointCloud_num_attributes_0.apply(null,
arguments)},rb=a._emscripten_bind_PointCloud_num_points_0=function(){return a.asm.emscripten_bind_PointCloud_num_points_0.apply(null,arguments)},sb=a._emscripten_bind_PointCloud___destroy___0=function(){return a.asm.emscripten_bind_PointCloud___destroy___0.apply(null,arguments)},Qa=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return a.asm.emscripten_bind_DracoUInt8Array_DracoUInt8Array_0.apply(null,arguments)},tb=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return a.asm.emscripten_bind_DracoUInt8Array_GetValue_1.apply(null,
arguments)},ub=a._emscripten_bind_DracoUInt8Array_size_0=function(){return a.asm.emscripten_bind_DracoUInt8Array_size_0.apply(null,arguments)},vb=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return a.asm.emscripten_bind_DracoUInt8Array___destroy___0.apply(null,arguments)},Ra=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return a.asm.emscripten_bind_DracoUInt32Array_DracoUInt32Array_0.apply(null,arguments)},wb=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return a.asm.emscripten_bind_DracoUInt32Array_GetValue_1.apply(null,
arguments)},xb=a._emscripten_bind_DracoUInt32Array_size_0=function(){return a.asm.emscripten_bind_DracoUInt32Array_size_0.apply(null,arguments)},yb=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return a.asm.emscripten_bind_DracoUInt32Array___destroy___0.apply(null,arguments)},Sa=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return a.asm.emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0.apply(null,arguments)},zb=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=
function(){return a.asm.emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1.apply(null,arguments)},Ab=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return a.asm.emscripten_bind_AttributeOctahedronTransform_quantization_bits_0.apply(null,arguments)},Bb=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return a.asm.emscripten_bind_AttributeOctahedronTransform___destroy___0.apply(null,arguments)},Ta=a._emscripten_bind_PointAttribute_PointAttribute_0=
function(){return a.asm.emscripten_bind_PointAttribute_PointAttribute_0.apply(null,arguments)},Cb=a._emscripten_bind_PointAttribute_size_0=function(){return a.asm.emscripten_bind_PointAttribute_size_0.apply(null,arguments)},Db=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return a.asm.emscripten_bind_PointAttribute_GetAttributeTransformData_0.apply(null,arguments)},Eb=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return a.asm.emscripten_bind_PointAttribute_attribute_type_0.apply(null,
arguments)},Fb=a._emscripten_bind_PointAttribute_data_type_0=function(){return a.asm.emscripten_bind_PointAttribute_data_type_0.apply(null,arguments)},Gb=a._emscripten_bind_PointAttribute_num_components_0=function(){return a.asm.emscripten_bind_PointAttribute_num_components_0.apply(null,arguments)},Hb=a._emscripten_bind_PointAttribute_normalized_0=function(){return a.asm.emscripten_bind_PointAttribute_normalized_0.apply(null,arguments)},Ib=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return a.asm.emscripten_bind_PointAttribute_byte_stride_0.apply(null,
arguments)},Jb=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return a.asm.emscripten_bind_PointAttribute_byte_offset_0.apply(null,arguments)},Kb=a._emscripten_bind_PointAttribute_unique_id_0=function(){return a.asm.emscripten_bind_PointAttribute_unique_id_0.apply(null,arguments)},Lb=a._emscripten_bind_PointAttribute___destroy___0=function(){return a.asm.emscripten_bind_PointAttribute___destroy___0.apply(null,arguments)},Ua=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=
function(){return a.asm.emscripten_bind_AttributeTransformData_AttributeTransformData_0.apply(null,arguments)},Mb=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return a.asm.emscripten_bind_AttributeTransformData_transform_type_0.apply(null,arguments)},Nb=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return a.asm.emscripten_bind_AttributeTransformData___destroy___0.apply(null,arguments)},Va=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=
function(){return a.asm.emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0.apply(null,arguments)},Ob=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return a.asm.emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1.apply(null,arguments)},Pb=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return a.asm.emscripten_bind_AttributeQuantizationTransform_quantization_bits_0.apply(null,arguments)},
Qb=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return a.asm.emscripten_bind_AttributeQuantizationTransform_min_value_1.apply(null,arguments)},Rb=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return a.asm.emscripten_bind_AttributeQuantizationTransform_range_0.apply(null,arguments)},Sb=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return a.asm.emscripten_bind_AttributeQuantizationTransform___destroy___0.apply(null,arguments)},
Wa=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return a.asm.emscripten_bind_DracoInt8Array_DracoInt8Array_0.apply(null,arguments)},Tb=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return a.asm.emscripten_bind_DracoInt8Array_GetValue_1.apply(null,arguments)},Ub=a._emscripten_bind_DracoInt8Array_size_0=function(){return a.asm.emscripten_bind_DracoInt8Array_size_0.apply(null,arguments)},Vb=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return a.asm.emscripten_bind_DracoInt8Array___destroy___0.apply(null,
arguments)},Xa=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return a.asm.emscripten_bind_MetadataQuerier_MetadataQuerier_0.apply(null,arguments)},Wb=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return a.asm.emscripten_bind_MetadataQuerier_HasEntry_2.apply(null,arguments)},Xb=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return a.asm.emscripten_bind_MetadataQuerier_GetIntEntry_2.apply(null,arguments)},Yb=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=
function(){return a.asm.emscripten_bind_MetadataQuerier_GetIntEntryArray_3.apply(null,arguments)},Zb=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return a.asm.emscripten_bind_MetadataQuerier_GetDoubleEntry_2.apply(null,arguments)},$b=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return a.asm.emscripten_bind_MetadataQuerier_GetStringEntry_2.apply(null,arguments)},ac=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return a.asm.emscripten_bind_MetadataQuerier_NumEntries_1.apply(null,
arguments)},bc=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return a.asm.emscripten_bind_MetadataQuerier_GetEntryName_2.apply(null,arguments)},cc=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return a.asm.emscripten_bind_MetadataQuerier___destroy___0.apply(null,arguments)},Ya=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return a.asm.emscripten_bind_DracoInt16Array_DracoInt16Array_0.apply(null,arguments)},dc=a._emscripten_bind_DracoInt16Array_GetValue_1=
function(){return a.asm.emscripten_bind_DracoInt16Array_GetValue_1.apply(null,arguments)},ec=a._emscripten_bind_DracoInt16Array_size_0=function(){return a.asm.emscripten_bind_DracoInt16Array_size_0.apply(null,arguments)},fc=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return a.asm.emscripten_bind_DracoInt16Array___destroy___0.apply(null,arguments)},Za=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return a.asm.emscripten_bind_DracoFloat32Array_DracoFloat32Array_0.apply(null,
arguments)},gc=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return a.asm.emscripten_bind_DracoFloat32Array_GetValue_1.apply(null,arguments)},hc=a._emscripten_bind_DracoFloat32Array_size_0=function(){return a.asm.emscripten_bind_DracoFloat32Array_size_0.apply(null,arguments)},ic=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return a.asm.emscripten_bind_DracoFloat32Array___destroy___0.apply(null,arguments)},$a=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return a.asm.emscripten_bind_GeometryAttribute_GeometryAttribute_0.apply(null,
arguments)},jc=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return a.asm.emscripten_bind_GeometryAttribute___destroy___0.apply(null,arguments)},ab=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return a.asm.emscripten_bind_DecoderBuffer_DecoderBuffer_0.apply(null,arguments)},kc=a._emscripten_bind_DecoderBuffer_Init_2=function(){return a.asm.emscripten_bind_DecoderBuffer_Init_2.apply(null,arguments)},lc=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return a.asm.emscripten_bind_DecoderBuffer___destroy___0.apply(null,
arguments)},bb=a._emscripten_bind_Decoder_Decoder_0=function(){return a.asm.emscripten_bind_Decoder_Decoder_0.apply(null,arguments)},mc=a._emscripten_bind_Decoder_GetEncodedGeometryType_1=function(){return a.asm.emscripten_bind_Decoder_GetEncodedGeometryType_1.apply(null,arguments)},nc=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return a.asm.emscripten_bind_Decoder_DecodeBufferToPointCloud_2.apply(null,arguments)},oc=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return a.asm.emscripten_bind_Decoder_DecodeBufferToMesh_2.apply(null,
arguments)},pc=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return a.asm.emscripten_bind_Decoder_GetAttributeId_2.apply(null,arguments)},qc=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return a.asm.emscripten_bind_Decoder_GetAttributeIdByName_2.apply(null,arguments)},rc=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3.apply(null,arguments)},sc=a._emscripten_bind_Decoder_GetAttribute_2=
function(){return a.asm.emscripten_bind_Decoder_GetAttribute_2.apply(null,arguments)},tc=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return a.asm.emscripten_bind_Decoder_GetAttributeByUniqueId_2.apply(null,arguments)},uc=a._emscripten_bind_Decoder_GetMetadata_1=function(){return a.asm.emscripten_bind_Decoder_GetMetadata_1.apply(null,arguments)},vc=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return a.asm.emscripten_bind_Decoder_GetAttributeMetadata_2.apply(null,
arguments)},wc=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return a.asm.emscripten_bind_Decoder_GetFaceFromMesh_3.apply(null,arguments)},xc=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return a.asm.emscripten_bind_Decoder_GetTriangleStripsFromMesh_2.apply(null,arguments)},yc=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return a.asm.emscripten_bind_Decoder_GetTrianglesUInt16Array_3.apply(null,arguments)},zc=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=
function(){return a.asm.emscripten_bind_Decoder_GetTrianglesUInt32Array_3.apply(null,arguments)},Ac=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeFloat_3.apply(null,arguments)},Bc=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3.apply(null,arguments)},Cc=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeIntForAllPoints_3.apply(null,
arguments)},Dc=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3.apply(null,arguments)},Ec=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3.apply(null,arguments)},Fc=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3.apply(null,arguments)},
Gc=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3.apply(null,arguments)},Hc=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3.apply(null,arguments)},Ic=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return a.asm.emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3.apply(null,arguments)},Jc=
a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return a.asm.emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5.apply(null,arguments)},Kc=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return a.asm.emscripten_bind_Decoder_SkipAttributeTransform_1.apply(null,arguments)},Lc=a._emscripten_bind_Decoder___destroy___0=function(){return a.asm.emscripten_bind_Decoder___destroy___0.apply(null,arguments)},cb=a._emscripten_bind_Mesh_Mesh_0=function(){return a.asm.emscripten_bind_Mesh_Mesh_0.apply(null,
arguments)},Mc=a._emscripten_bind_Mesh_num_faces_0=function(){return a.asm.emscripten_bind_Mesh_num_faces_0.apply(null,arguments)},Nc=a._emscripten_bind_Mesh_num_attributes_0=function(){return a.asm.emscripten_bind_Mesh_num_attributes_0.apply(null,arguments)},Oc=a._emscripten_bind_Mesh_num_points_0=function(){return a.asm.emscripten_bind_Mesh_num_points_0.apply(null,arguments)},Pc=a._emscripten_bind_Mesh___destroy___0=function(){return a.asm.emscripten_bind_Mesh___destroy___0.apply(null,arguments)},
Qc=a._emscripten_bind_VoidPtr___destroy___0=function(){return a.asm.emscripten_bind_VoidPtr___destroy___0.apply(null,arguments)},db=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return a.asm.emscripten_bind_DracoInt32Array_DracoInt32Array_0.apply(null,arguments)},Rc=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return a.asm.emscripten_bind_DracoInt32Array_GetValue_1.apply(null,arguments)},Sc=a._emscripten_bind_DracoInt32Array_size_0=function(){return a.asm.emscripten_bind_DracoInt32Array_size_0.apply(null,
arguments)},Tc=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return a.asm.emscripten_bind_DracoInt32Array___destroy___0.apply(null,arguments)},eb=a._emscripten_bind_Metadata_Metadata_0=function(){return a.asm.emscripten_bind_Metadata_Metadata_0.apply(null,arguments)},Uc=a._emscripten_bind_Metadata___destroy___0=function(){return a.asm.emscripten_bind_Metadata___destroy___0.apply(null,arguments)},Vc=a._emscripten_enum_draco_StatusCode_OK=function(){return a.asm.emscripten_enum_draco_StatusCode_OK.apply(null,
arguments)},Wc=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return a.asm.emscripten_enum_draco_StatusCode_DRACO_ERROR.apply(null,arguments)},Xc=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return a.asm.emscripten_enum_draco_StatusCode_IO_ERROR.apply(null,arguments)},Yc=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return a.asm.emscripten_enum_draco_StatusCode_INVALID_PARAMETER.apply(null,arguments)},Zc=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=
function(){return a.asm.emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION.apply(null,arguments)},$c=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return a.asm.emscripten_enum_draco_StatusCode_UNKNOWN_VERSION.apply(null,arguments)},ad=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return a.asm.emscripten_enum_draco_DataType_DT_INVALID.apply(null,arguments)},bd=a._emscripten_enum_draco_DataType_DT_INT8=function(){return a.asm.emscripten_enum_draco_DataType_DT_INT8.apply(null,
arguments)},cd=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return a.asm.emscripten_enum_draco_DataType_DT_UINT8.apply(null,arguments)},dd=a._emscripten_enum_draco_DataType_DT_INT16=function(){return a.asm.emscripten_enum_draco_DataType_DT_INT16.apply(null,arguments)},ed=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return a.asm.emscripten_enum_draco_DataType_DT_UINT16.apply(null,arguments)},fd=a._emscripten_enum_draco_DataType_DT_INT32=function(){return a.asm.emscripten_enum_draco_DataType_DT_INT32.apply(null,
arguments)},gd=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return a.asm.emscripten_enum_draco_DataType_DT_UINT32.apply(null,arguments)},hd=a._emscripten_enum_draco_DataType_DT_INT64=function(){return a.asm.emscripten_enum_draco_DataType_DT_INT64.apply(null,arguments)},id=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return a.asm.emscripten_enum_draco_DataType_DT_UINT64.apply(null,arguments)},jd=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return a.asm.emscripten_enum_draco_DataType_DT_FLOAT32.apply(null,
arguments)},kd=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return a.asm.emscripten_enum_draco_DataType_DT_FLOAT64.apply(null,arguments)},ld=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return a.asm.emscripten_enum_draco_DataType_DT_BOOL.apply(null,arguments)},md=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return a.asm.emscripten_enum_draco_DataType_DT_TYPES_COUNT.apply(null,arguments)},nd=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return a.asm.emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE.apply(null,
arguments)},od=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return a.asm.emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD.apply(null,arguments)},pd=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return a.asm.emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH.apply(null,arguments)},qd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM.apply(null,
arguments)},rd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM.apply(null,arguments)},sd=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM.apply(null,arguments)},td=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return a.asm.emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM.apply(null,
arguments)},ud=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return a.asm.emscripten_enum_draco_GeometryAttribute_Type_INVALID.apply(null,arguments)},vd=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return a.asm.emscripten_enum_draco_GeometryAttribute_Type_POSITION.apply(null,arguments)},wd=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return a.asm.emscripten_enum_draco_GeometryAttribute_Type_NORMAL.apply(null,arguments)},xd=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=
function(){return a.asm.emscripten_enum_draco_GeometryAttribute_Type_COLOR.apply(null,arguments)},yd=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return a.asm.emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD.apply(null,arguments)},zd=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return a.asm.emscripten_enum_draco_GeometryAttribute_Type_GENERIC.apply(null,arguments)};a._setThrew=function(){return a.asm.setThrew.apply(null,arguments)};var ta=a.__ZSt18uncaught_exceptionv=
function(){return a.asm._ZSt18uncaught_exceptionv.apply(null,arguments)};a._free=function(){return a.asm.free.apply(null,arguments)};var ib=a._malloc=function(){return a.asm.malloc.apply(null,arguments)};a.stackSave=function(){return a.asm.stackSave.apply(null,arguments)};a.stackAlloc=function(){return a.asm.stackAlloc.apply(null,arguments)};a.stackRestore=function(){return a.asm.stackRestore.apply(null,arguments)};a.__growWasmMemory=function(){return a.asm.__growWasmMemory.apply(null,arguments)};
a.dynCall_ii=function(){return a.asm.dynCall_ii.apply(null,arguments)};a.dynCall_vi=function(){return a.asm.dynCall_vi.apply(null,arguments)};a.dynCall_iii=function(){return a.asm.dynCall_iii.apply(null,arguments)};a.dynCall_vii=function(){return a.asm.dynCall_vii.apply(null,arguments)};a.dynCall_iiii=function(){return a.asm.dynCall_iiii.apply(null,arguments)};a.dynCall_v=function(){return a.asm.dynCall_v.apply(null,arguments)};a.dynCall_viii=function(){return a.asm.dynCall_viii.apply(null,arguments)};
a.dynCall_viiii=function(){return a.asm.dynCall_viiii.apply(null,arguments)};a.dynCall_iiiiiii=function(){return a.asm.dynCall_iiiiiii.apply(null,arguments)};a.dynCall_iidiiii=function(){return a.asm.dynCall_iidiiii.apply(null,arguments)};a.dynCall_jiji=function(){return a.asm.dynCall_jiji.apply(null,arguments)};a.dynCall_viiiiii=function(){return a.asm.dynCall_viiiiii.apply(null,arguments)};a.dynCall_viiiii=function(){return a.asm.dynCall_viiiii.apply(null,arguments)};a.asm=La;var fa;a.then=function(e){if(fa)e(a);
else{var c=a.onRuntimeInitialized;a.onRuntimeInitialized=function(){c&&c();e(a)}}return a};ja=function c(){fa||ma();fa||(ja=c)};a.run=ma;if(a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);0<a.preInit.length;)a.preInit.pop()();ma();p.prototype=Object.create(p.prototype);p.prototype.constructor=p;p.prototype.__class__=p;p.__cache__={};a.WrapperObject=p;a.getCache=u;a.wrapPointer=N;a.castObject=function(a,b){return N(a.ptr,b)};a.NULL=N(0);a.destroy=function(a){if(!a.__destroy__)throw"Error: Cannot destroy object. (Did you create it yourself?)";
a.__destroy__();delete u(a.__class__)[a.ptr]};a.compare=function(a,b){return a.ptr===b.ptr};a.getPointer=function(a){return a.ptr};a.getClass=function(a){return a.__class__};var n={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(n.needed){for(var c=0;c<n.temps.length;c++)a._free(n.temps[c]);n.temps.length=0;a._free(n.buffer);n.buffer=0;n.size+=n.needed;n.needed=0}n.buffer||(n.size+=128,n.buffer=a._malloc(n.size),t(n.buffer));n.pos=0},alloc:function(c,b){t(n.buffer);c=c.length*b.BYTES_PER_ELEMENT;
c=c+7&-8;n.pos+c>=n.size?(t(0<c),n.needed+=c,b=a._malloc(c),n.temps.push(b)):(b=n.buffer+n.pos,n.pos+=c);return b},copy:function(a,b,d){switch(b.BYTES_PER_ELEMENT){case 2:d>>=1;break;case 4:d>>=2;break;case 8:d>>=3}for(var c=0;c<a.length;c++)b[d+c]=a[c]}};x.prototype=Object.create(p.prototype);x.prototype.constructor=x;x.prototype.__class__=x;x.__cache__={};a.Status=x;x.prototype.code=x.prototype.code=function(){return jb(this.ptr)};x.prototype.ok=x.prototype.ok=function(){return!!kb(this.ptr)};x.prototype.error_msg=
x.prototype.error_msg=function(){return X(lb(this.ptr))};x.prototype.__destroy__=x.prototype.__destroy__=function(){mb(this.ptr)};A.prototype=Object.create(p.prototype);A.prototype.constructor=A;A.prototype.__class__=A;A.__cache__={};a.DracoUInt16Array=A;A.prototype.GetValue=A.prototype.GetValue=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return nb(c,a)};A.prototype.size=A.prototype.size=function(){return ob(this.ptr)};A.prototype.__destroy__=A.prototype.__destroy__=function(){pb(this.ptr)};
B.prototype=Object.create(p.prototype);B.prototype.constructor=B;B.prototype.__class__=B;B.__cache__={};a.PointCloud=B;B.prototype.num_attributes=B.prototype.num_attributes=function(){return qb(this.ptr)};B.prototype.num_points=B.prototype.num_points=function(){return rb(this.ptr)};B.prototype.__destroy__=B.prototype.__destroy__=function(){sb(this.ptr)};C.prototype=Object.create(p.prototype);C.prototype.constructor=C;C.prototype.__class__=C;C.__cache__={};a.DracoUInt8Array=C;C.prototype.GetValue=
C.prototype.GetValue=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return tb(c,a)};C.prototype.size=C.prototype.size=function(){return ub(this.ptr)};C.prototype.__destroy__=C.prototype.__destroy__=function(){vb(this.ptr)};D.prototype=Object.create(p.prototype);D.prototype.constructor=D;D.prototype.__class__=D;D.__cache__={};a.DracoUInt32Array=D;D.prototype.GetValue=D.prototype.GetValue=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return wb(c,a)};D.prototype.size=D.prototype.size=
function(){return xb(this.ptr)};D.prototype.__destroy__=D.prototype.__destroy__=function(){yb(this.ptr)};E.prototype=Object.create(p.prototype);E.prototype.constructor=E;E.prototype.__class__=E;E.__cache__={};a.AttributeOctahedronTransform=E;E.prototype.InitFromAttribute=E.prototype.InitFromAttribute=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return!!zb(c,a)};E.prototype.quantization_bits=E.prototype.quantization_bits=function(){return Ab(this.ptr)};E.prototype.__destroy__=E.prototype.__destroy__=
function(){Bb(this.ptr)};q.prototype=Object.create(p.prototype);q.prototype.constructor=q;q.prototype.__class__=q;q.__cache__={};a.PointAttribute=q;q.prototype.size=q.prototype.size=function(){return Cb(this.ptr)};q.prototype.GetAttributeTransformData=q.prototype.GetAttributeTransformData=function(){return N(Db(this.ptr),J)};q.prototype.attribute_type=q.prototype.attribute_type=function(){return Eb(this.ptr)};q.prototype.data_type=q.prototype.data_type=function(){return Fb(this.ptr)};q.prototype.num_components=
q.prototype.num_components=function(){return Gb(this.ptr)};q.prototype.normalized=q.prototype.normalized=function(){return!!Hb(this.ptr)};q.prototype.byte_stride=q.prototype.byte_stride=function(){return Ib(this.ptr)};q.prototype.byte_offset=q.prototype.byte_offset=function(){return Jb(this.ptr)};q.prototype.unique_id=q.prototype.unique_id=function(){return Kb(this.ptr)};q.prototype.__destroy__=q.prototype.__destroy__=function(){Lb(this.ptr)};J.prototype=Object.create(p.prototype);J.prototype.constructor=
J;J.prototype.__class__=J;J.__cache__={};a.AttributeTransformData=J;J.prototype.transform_type=J.prototype.transform_type=function(){return Mb(this.ptr)};J.prototype.__destroy__=J.prototype.__destroy__=function(){Nb(this.ptr)};w.prototype=Object.create(p.prototype);w.prototype.constructor=w;w.prototype.__class__=w;w.__cache__={};a.AttributeQuantizationTransform=w;w.prototype.InitFromAttribute=w.prototype.InitFromAttribute=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return!!Ob(c,a)};
w.prototype.quantization_bits=w.prototype.quantization_bits=function(){return Pb(this.ptr)};w.prototype.min_value=w.prototype.min_value=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return Qb(c,a)};w.prototype.range=w.prototype.range=function(){return Rb(this.ptr)};w.prototype.__destroy__=w.prototype.__destroy__=function(){Sb(this.ptr)};F.prototype=Object.create(p.prototype);F.prototype.constructor=F;F.prototype.__class__=F;F.__cache__={};a.DracoInt8Array=F;F.prototype.GetValue=F.prototype.GetValue=
function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return Tb(c,a)};F.prototype.size=F.prototype.size=function(){return Ub(this.ptr)};F.prototype.__destroy__=F.prototype.__destroy__=function(){Vb(this.ptr)};r.prototype=Object.create(p.prototype);r.prototype.constructor=r;r.prototype.__class__=r;r.__cache__={};a.MetadataQuerier=r;r.prototype.HasEntry=r.prototype.HasEntry=function(a,b){var c=this.ptr;n.prepare();a&&"object"===typeof a&&(a=a.ptr);b=b&&"object"===typeof b?b.ptr:V(b);return!!Wb(c,
a,b)};r.prototype.GetIntEntry=r.prototype.GetIntEntry=function(a,b){var c=this.ptr;n.prepare();a&&"object"===typeof a&&(a=a.ptr);b=b&&"object"===typeof b?b.ptr:V(b);return Xb(c,a,b)};r.prototype.GetIntEntryArray=r.prototype.GetIntEntryArray=function(a,b,d){var c=this.ptr;n.prepare();a&&"object"===typeof a&&(a=a.ptr);b=b&&"object"===typeof b?b.ptr:V(b);d&&"object"===typeof d&&(d=d.ptr);Yb(c,a,b,d)};r.prototype.GetDoubleEntry=r.prototype.GetDoubleEntry=function(a,b){var c=this.ptr;n.prepare();a&&"object"===
typeof a&&(a=a.ptr);b=b&&"object"===typeof b?b.ptr:V(b);return Zb(c,a,b)};r.prototype.GetStringEntry=r.prototype.GetStringEntry=function(a,b){var c=this.ptr;n.prepare();a&&"object"===typeof a&&(a=a.ptr);b=b&&"object"===typeof b?b.ptr:V(b);return X($b(c,a,b))};r.prototype.NumEntries=r.prototype.NumEntries=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return ac(c,a)};r.prototype.GetEntryName=r.prototype.GetEntryName=function(a,b){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===
typeof b&&(b=b.ptr);return X(bc(c,a,b))};r.prototype.__destroy__=r.prototype.__destroy__=function(){cc(this.ptr)};G.prototype=Object.create(p.prototype);G.prototype.constructor=G;G.prototype.__class__=G;G.__cache__={};a.DracoInt16Array=G;G.prototype.GetValue=G.prototype.GetValue=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return dc(c,a)};G.prototype.size=G.prototype.size=function(){return ec(this.ptr)};G.prototype.__destroy__=G.prototype.__destroy__=function(){fc(this.ptr)};H.prototype=
Object.create(p.prototype);H.prototype.constructor=H;H.prototype.__class__=H;H.__cache__={};a.DracoFloat32Array=H;H.prototype.GetValue=H.prototype.GetValue=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return gc(c,a)};H.prototype.size=H.prototype.size=function(){return hc(this.ptr)};H.prototype.__destroy__=H.prototype.__destroy__=function(){ic(this.ptr)};O.prototype=Object.create(p.prototype);O.prototype.constructor=O;O.prototype.__class__=O;O.__cache__={};a.GeometryAttribute=O;O.prototype.__destroy__=
O.prototype.__destroy__=function(){jc(this.ptr)};K.prototype=Object.create(p.prototype);K.prototype.constructor=K;K.prototype.__class__=K;K.__cache__={};a.DecoderBuffer=K;K.prototype.Init=K.prototype.Init=function(a,b){var c=this.ptr;n.prepare();if("object"==typeof a&&"object"===typeof a){var e=n.alloc(a,T);n.copy(a,T,e);a=e}b&&"object"===typeof b&&(b=b.ptr);kc(c,a,b)};K.prototype.__destroy__=K.prototype.__destroy__=function(){lc(this.ptr)};g.prototype=Object.create(p.prototype);g.prototype.constructor=
g;g.prototype.__class__=g;g.__cache__={};a.Decoder=g;g.prototype.GetEncodedGeometryType=g.prototype.GetEncodedGeometryType=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return mc(c,a)};g.prototype.DecodeBufferToPointCloud=g.prototype.DecodeBufferToPointCloud=function(a,b){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);return N(nc(c,a,b),x)};g.prototype.DecodeBufferToMesh=g.prototype.DecodeBufferToMesh=function(a,b){var c=this.ptr;a&&"object"===typeof a&&
(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);return N(oc(c,a,b),x)};g.prototype.GetAttributeId=g.prototype.GetAttributeId=function(a,b){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);return pc(c,a,b)};g.prototype.GetAttributeIdByName=g.prototype.GetAttributeIdByName=function(a,b){var c=this.ptr;n.prepare();a&&"object"===typeof a&&(a=a.ptr);b=b&&"object"===typeof b?b.ptr:V(b);return qc(c,a,b)};g.prototype.GetAttributeIdByMetadataEntry=g.prototype.GetAttributeIdByMetadataEntry=
function(a,b,d){var c=this.ptr;n.prepare();a&&"object"===typeof a&&(a=a.ptr);b=b&&"object"===typeof b?b.ptr:V(b);d=d&&"object"===typeof d?d.ptr:V(d);return rc(c,a,b,d)};g.prototype.GetAttribute=g.prototype.GetAttribute=function(a,b){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);return N(sc(c,a,b),q)};g.prototype.GetAttributeByUniqueId=g.prototype.GetAttributeByUniqueId=function(a,b){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);
return N(tc(c,a,b),q)};g.prototype.GetMetadata=g.prototype.GetMetadata=function(a){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return N(uc(c,a),L)};g.prototype.GetAttributeMetadata=g.prototype.GetAttributeMetadata=function(a,b){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);return N(vc(c,a,b),L)};g.prototype.GetFaceFromMesh=g.prototype.GetFaceFromMesh=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===
typeof d&&(d=d.ptr);return!!wc(c,a,b,d)};g.prototype.GetTriangleStripsFromMesh=g.prototype.GetTriangleStripsFromMesh=function(a,b){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);return xc(c,a,b)};g.prototype.GetTrianglesUInt16Array=g.prototype.GetTrianglesUInt16Array=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!yc(c,a,b,d)};g.prototype.GetTrianglesUInt32Array=g.prototype.GetTrianglesUInt32Array=
function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!zc(c,a,b,d)};g.prototype.GetAttributeFloat=g.prototype.GetAttributeFloat=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!Ac(c,a,b,d)};g.prototype.GetAttributeFloatForAllPoints=g.prototype.GetAttributeFloatForAllPoints=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&
(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!Bc(c,a,b,d)};g.prototype.GetAttributeIntForAllPoints=g.prototype.GetAttributeIntForAllPoints=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!Cc(c,a,b,d)};g.prototype.GetAttributeInt8ForAllPoints=g.prototype.GetAttributeInt8ForAllPoints=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&
(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!Dc(c,a,b,d)};g.prototype.GetAttributeUInt8ForAllPoints=g.prototype.GetAttributeUInt8ForAllPoints=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!Ec(c,a,b,d)};g.prototype.GetAttributeInt16ForAllPoints=g.prototype.GetAttributeInt16ForAllPoints=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&
(d=d.ptr);return!!Fc(c,a,b,d)};g.prototype.GetAttributeUInt16ForAllPoints=g.prototype.GetAttributeUInt16ForAllPoints=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!Gc(c,a,b,d)};g.prototype.GetAttributeInt32ForAllPoints=g.prototype.GetAttributeInt32ForAllPoints=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!Hc(c,
a,b,d)};g.prototype.GetAttributeUInt32ForAllPoints=g.prototype.GetAttributeUInt32ForAllPoints=function(a,b,d){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);return!!Ic(c,a,b,d)};g.prototype.GetAttributeDataArrayForAllPoints=g.prototype.GetAttributeDataArrayForAllPoints=function(a,b,d,e,f){var c=this.ptr;a&&"object"===typeof a&&(a=a.ptr);b&&"object"===typeof b&&(b=b.ptr);d&&"object"===typeof d&&(d=d.ptr);e&&"object"===typeof e&&
(e=e.ptr);f&&"object"===typeof f&&(f=f.ptr);return!!Jc(c,a,b,d,e,f)};g.prototype.SkipAttributeTransform=g.prototype.SkipAttributeTransform=function(a){var b=this.ptr;a&&"object"===typeof a&&(a=a.ptr);Kc(b,a)};g.prototype.__destroy__=g.prototype.__destroy__=function(){Lc(this.ptr)};y.prototype=Object.create(p.prototype);y.prototype.constructor=y;y.prototype.__class__=y;y.__cache__={};a.Mesh=y;y.prototype.num_faces=y.prototype.num_faces=function(){return Mc(this.ptr)};y.prototype.num_attributes=y.prototype.num_attributes=
function(){return Nc(this.ptr)};y.prototype.num_points=y.prototype.num_points=function(){return Oc(this.ptr)};y.prototype.__destroy__=y.prototype.__destroy__=function(){Pc(this.ptr)};Q.prototype=Object.create(p.prototype);Q.prototype.constructor=Q;Q.prototype.__class__=Q;Q.__cache__={};a.VoidPtr=Q;Q.prototype.__destroy__=Q.prototype.__destroy__=function(){Qc(this.ptr)};I.prototype=Object.create(p.prototype);I.prototype.constructor=I;I.prototype.__class__=I;I.__cache__={};a.DracoInt32Array=I;I.prototype.GetValue=
I.prototype.GetValue=function(a){var b=this.ptr;a&&"object"===typeof a&&(a=a.ptr);return Rc(b,a)};I.prototype.size=I.prototype.size=function(){return Sc(this.ptr)};I.prototype.__destroy__=I.prototype.__destroy__=function(){Tc(this.ptr)};L.prototype=Object.create(p.prototype);L.prototype.constructor=L;L.prototype.__class__=L;L.__cache__={};a.Metadata=L;L.prototype.__destroy__=L.prototype.__destroy__=function(){Uc(this.ptr)};(function(){function c(){a.OK=Vc();a.DRACO_ERROR=Wc();a.IO_ERROR=Xc();a.INVALID_PARAMETER=
Yc();a.UNSUPPORTED_VERSION=Zc();a.UNKNOWN_VERSION=$c();a.DT_INVALID=ad();a.DT_INT8=bd();a.DT_UINT8=cd();a.DT_INT16=dd();a.DT_UINT16=ed();a.DT_INT32=fd();a.DT_UINT32=gd();a.DT_INT64=hd();a.DT_UINT64=id();a.DT_FLOAT32=jd();a.DT_FLOAT64=kd();a.DT_BOOL=ld();a.DT_TYPES_COUNT=md();a.INVALID_GEOMETRY_TYPE=nd();a.POINT_CLOUD=od();a.TRIANGULAR_MESH=pd();a.ATTRIBUTE_INVALID_TRANSFORM=qd();a.ATTRIBUTE_NO_TRANSFORM=rd();a.ATTRIBUTE_QUANTIZATION_TRANSFORM=sd();a.ATTRIBUTE_OCTAHEDRON_TRANSFORM=td();a.INVALID=ud();
a.POSITION=vd();a.NORMAL=wd();a.COLOR=xd();a.TEX_COORD=yd();a.GENERIC=zd()}Ba?c():Da.unshift(c)})();if("function"===typeof a.onModuleParsed)a.onModuleParsed();return m}}();"object"===typeof exports&&"object"===typeof module?module.exports=DracoDecoderModule:"function"===typeof define&&define.amd?define([],function(){return DracoDecoderModule}):"object"===typeof exports&&(exports.DracoDecoderModule=DracoDecoderModule);

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -1,4 +1,3 @@
<!DOCTYPE html>
<html>
<head lang="zh-CN">
<meta charset="utf-8">
@ -8,6 +7,7 @@
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= webpackConfig.name %></title>
<!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
<script src="<%= BASE_URL %>./Model.js"></script>
<style>
html,
body,

@ -0,0 +1,10 @@
import request from '@/utils/request'
// 查询设备台账列表
export function getData(query) {
return request({
url: '../data.json',
method: 'get',
params: query
})
}

@ -0,0 +1,10 @@
import request from '@/utils/request'
// 查询工单计划
export function getPlan(query) {
return request({
url: '../data.json',
method: 'get',
params: query
})
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 831 KiB

After

Width:  |  Height:  |  Size: 849 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 831 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 646 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 784 KiB

@ -7,14 +7,10 @@
</template>
<script>
import {AppMain} from './components'
let getDateIntervalFun = null
export default {
name: 'BoardIndex',
components: {
AppMain,
},
data() {
return {
time: '',

@ -0,0 +1,20 @@
<template>
<div>
<router-view></router-view>
</div>
</template>
<script>
export default {
name: 'ModelIndex',
data() {
return {
}
},
created() {
},
beforeDestroy() {
}
}
</script>

@ -5,6 +5,7 @@ import Layout from '@/layout/index'
import ParentView from '@/components/ParentView'
import InnerLink from '@/layout/components/InnerLink'
import BoardIndex from '@/layout/boardIndex'
import ModelIndex from '@/layout/modelIndex'
const permission = {
state: {
@ -59,7 +60,7 @@ function filterAsyncRouter(asyncRouterMap, lastRouter = false, type = false) {
if (type && route.children) {
route.children = filterChildren(route.children)
}
if (route.component && route.name !== 'Board') {
if (route.component && !(route.name === 'Board' || route.name === 'Model')) {
// Layout ParentView 组件特殊处理
if (route.component === 'Layout') {
route.component = Layout
@ -74,6 +75,9 @@ function filterAsyncRouter(asyncRouterMap, lastRouter = false, type = false) {
if(route.name === 'Board'){
route.component = BoardIndex
}
if(route.name === 'Model'){
route.component = ModelIndex
}
if (route.children != null && route.children && route.children.length) {
route.children = filterAsyncRouter(route.children, route, type)
} else {

@ -9,14 +9,12 @@
:style="'top:'+(titlePosition[k]&&titlePosition[k].top||0)+'%;left:'+(titlePosition[k]&&titlePosition[k].left||0)+'%'">
{{ i }}
</div>
<div class="centerBg"></div>
<div class="scrollTable">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;">
编号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产工单
产品型号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
计划数量
@ -25,10 +23,10 @@
实际数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
差异值
生产进度
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成率
开始时间
</div>
</div>
<vue-seamless-scroll
@ -45,11 +43,7 @@
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
@ -57,15 +51,15 @@
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value5 }}
</div>
</div>
</div>
@ -87,6 +81,7 @@
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from "@/api/board/getData";
export default {
components: {
@ -134,37 +129,13 @@ export default {
singleWidth: 0, // (0) direction => 2/3
waitTime: 0,
},
scrollTableData: [
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
],
scrollTableData: [],
}
},
mounted() {
getData().then(e=>{
this.scrollTableData = e.table1
this.$refs.chart1.setData({
tooltip: {
trigger: "axis",
@ -177,11 +148,11 @@ export default {
left: "0",
right: "4%",
bottom: "0",
top: "5%",
top: 20,
containLabel: true,
},
legend: {
data: ["内胆库", "箱壳库"],
data: e.chart1.y.map(val=>val.name),
right: 'center',
top: 0,
textStyle: {
@ -193,7 +164,7 @@ export default {
},
xAxis: {
type: "category",
data: ["9-1", "9-2", "9-3", "9-4", "9-5", "9-6", "9-7", "9-8"],
data: e.chart1.x,
axisLine: {
lineStyle: {
color: "white",
@ -223,7 +194,7 @@ export default {
},
series: [
{
name: "内胆库",
name: e.chart1.y[0].name,
type: "bar",
barWidth: "15%",
itemStyle: {
@ -240,10 +211,10 @@ export default {
]),
},
},
data: [400, 400, 300, 300, 300, 400, 400, 400],
data: e.chart1.y[0].data,
},
{
name: "箱壳库",
name: e.chart1.y[1].name,
type: "bar",
barWidth: "15%",
itemStyle: {
@ -260,153 +231,149 @@ export default {
]),
},
},
data: [400, 500, 500, 500, 500, 400, 400, 500],
data: e.chart1.y[1].data,
},
],
})
this.$refs.chart2.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: '2%',
top: "10%",
bottom: "0",
top: 20,
containLabel: true,
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
xAxis: {
data: ["A-01", "A-02", "A-03"],
axisTick: {
show: false,
},
type: "category",
data: e.chart3.x,
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
axisLabel: {
show: true,
margin: 30,
// interval: 0,
// rotate: 40,
textStyle: {
color: "#f0f0f0",
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
splitLine: {
show: false,
},
axisTick: {
show: false,
},
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
axisLabel: {
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: "上底",
type: "pictorialBar",
symbolSize: [30, 16],
symbolOffset: [0, -8],
z: 12,
name: e.chart3.y.name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: "#14b1eb",
},
},
tooltip: {
show: false
},
data: [
{
value: 100,
symbolPosition: "end",
},
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
value: 50,
symbolPosition: "end",
offset: 0,
color: "#47cbfd",
},
{
value: 20,
symbolPosition: "end",
offset: 1,
color: "#3e8aff",
},
],
]),
},
{
name: "下底",
type: "pictorialBar",
symbolSize: [30, 16],
symbolOffset: [0, 8],
z: 12,
itemStyle: {
normal: {
color: "#14b1eb",
},
data: e.chart3.y.data,
},
],
})
this.$refs.chart3.setData({
tooltip: {
show: false
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
data: [100, 50, 20],
},
{
name: "内环",
type: "pictorialBar",
symbolSize: [40, 20],
symbolOffset: [0, 10],
z: 11,
tooltip: {
show: false
grid: {
left: "0",
right: "4%",
bottom: "0",
top: 20,
containLabel: true,
},
itemStyle: {
normal: {
color: "transparent",
borderColor: "#14b1eb",
borderWidth: 5,
xAxis: {
type: "category",
data: e.chart4.x,
axisLine: {
lineStyle: {
color: "white",
},
},
axisLabel: {
// interval: 0,
// rotate: 40,
textStyle: {
fontFamily: "Microsoft YaHei",
},
},
data: [100, 50, 20],
},
{
tooltip: {
show: false
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
name: "外环",
type: "pictorialBar",
symbolSize: [55, 26],
symbolOffset: [0, 13],
z: 10,
itemStyle: {
normal: {
color: "transparent",
borderColor: "#14b1eb",
borderType: "dashed",
borderWidth: 5,
},
splitLine: {
show: false,
},
data: [100, 50, 20],
axisLabel: {},
},
series: [
{
name: "数量",
name: e.chart4.y.name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: "#14b1eb",
opacity: 0.7,
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#39ffff",
},
{
offset: 1,
color: "#f5804d",
},
]),
},
},
silent: true,
barWidth: 30,
barGap: "-100%", // Make series be overlap
data: [100, 50, 20],
data: e.chart4.y.data,
},
],
})
})
echarts.graphic.registerShape(
"CubeLeft",
echarts.graphic.extendShape({
@ -682,138 +649,6 @@ export default {
// },
// ],
// })
this.$refs.chart3.setData({
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
},
grid: {
top: "10%",
right: "0%",
left: "5%",
bottom: 20,
},
xAxis: [
{
type: "category",
data: [
"1时",
"2时",
"3时",
"4时",
"5时",
"6时",
"7时",
"8时",
"9时",
"10时",
"11时",
"12时",
"13时",
"14时",
"15时",
"16时",
"17时",
"18时",
"19时",
"20时",
"21时",
"22时",
"23时",
"24时",
],
axisLine: {
lineStyle: {
color: "rgba(66, 192, 255, .3)",
},
},
axisLabel: {
interval: 0,
margin: 10,
color: "#05D5FF",
textStyle: {
fontSize: 11,
},
},
axisTick: {
//
show: false,
},
},
],
yAxis: [
{
axisLabel: {
padding: [3, 0, 0, 0],
formatter: "{value}",
color: "rgba(95, 187, 235, 1)",
textStyle: {
fontSize: 11,
},
},
axisTick: {
show: true,
},
axisLine: {
lineStyle: {
color: "rgba(66, 192, 255, .3)",
},
},
splitLine: {
lineStyle: {
color: "rgba(255,255,255,0)",
},
},
},
],
series: [
{
name:'产量',
type: "bar",
data: [
20, 50, 15, 35, 50, 30, 40, 50, 60, 20, 50, 15, 35, 50, 30, 40, 50, 60, 20, 50, 15, 35, 50, 30,
],
barWidth: "10",
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(
0,
0,
0,
1,
[
{
offset: 0,
color: "rgba(5, 213, 255, 1)", // 0%
},
{
offset: 0.98,
color: "rgba(5, 213, 255, 0)", // 100%
},
],
false
),
shadowColor: "rgba(5, 213, 255, 1)",
shadowBlur: 4,
},
},
label: {
normal: {
show: true,
lineHeight: 10,
formatter: "{c}",
position: "top",
textStyle: {
color: "#fff",
fontSize: 10,
},
},
},
},
],
})
},
methods: {}
};
@ -830,6 +665,17 @@ export default {
left: 0;
}
.centerBg{
background-image: url("../../../assets/board/model2.png");
background-repeat: no-repeat;
background-size: 100% 100%;
position: absolute;
transform: translate(-50%,-50%);
top: 52%;
left: 49%;
width: 98%;
height: 93%;
}
.headTitle {
position: absolute;
top: 5%;
@ -893,15 +739,15 @@ export default {
text-overflow: ellipsis;
text-align: center;
display: inline-block;
width: 16.6%;
width: 20%;
}
.chart1 {
position: absolute;
top: 24%;
top: 23%;
left: 51%;
width: 45%;
height: 17%;
height: 18.5%;
}
.chart2 {

@ -13,10 +13,7 @@
<div class="scrollTable">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;">
编号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产工单
产品型号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
计划数量
@ -25,10 +22,10 @@
实际数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
差异值
生产进度
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成率
开始时间
</div>
</div>
<vue-seamless-scroll
@ -45,11 +42,7 @@
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
@ -57,15 +50,15 @@
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value5 }}
</div>
</div>
</div>
@ -87,6 +80,7 @@
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from "@/api/board/getData";
export default {
components: {
@ -134,37 +128,13 @@ export default {
singleWidth: 0, // (0) direction => 2/3
waitTime: 0,
},
scrollTableData: [
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
],
scrollTableData: [],
}
},
mounted() {
getData().then(e=>{
this.scrollTableData = e.table1
this.$refs.chart1.setData({
tooltip: {
trigger: "axis",
@ -177,11 +147,11 @@ export default {
left: "0",
right: "4%",
bottom: "0",
top: "5%",
top: 20,
containLabel: true,
},
legend: {
data: ["入库", "出库"],
data: e.chart1.y.map(val=>val.name),
right: 'center',
top: 0,
textStyle: {
@ -193,7 +163,7 @@ export default {
},
xAxis: {
type: "category",
data: ["9-1", "9-2", "9-3", "9-4", "9-5", "9-6", "9-7", "9-8"],
data: e.chart1.x,
axisLine: {
lineStyle: {
color: "white",
@ -223,9 +193,10 @@ export default {
},
series: [
{
name: "入库",
name: e.chart1.y[0].name,
type: "bar",
barWidth: "15%",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@ -240,12 +211,13 @@ export default {
]),
},
},
data: [400, 400, 300, 300, 300, 400, 400, 400],
data: e.chart1.y[0].data,
},
{
name: "出库",
name: e.chart1.y[1].name,
type: "bar",
barWidth: "15%",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@ -260,7 +232,7 @@ export default {
]),
},
},
data: [400, 500, 500, 500, 500, 400, 400, 500],
data: e.chart1.y[1].data,
},
],
})
@ -276,11 +248,11 @@ export default {
left: "0",
right: "4%",
bottom: "0",
top: "5%",
top: 20,
containLabel: true,
},
legend: {
data: ["内胆库", "箱壳库"],
data: e.chart2.y.map(val=>val.name),
right: 'center',
top: 0,
textStyle: {
@ -292,7 +264,7 @@ export default {
},
xAxis: {
type: "category",
data: ["A-01", "A-02", "A-03", "A-04", "A-05", "A-06", "A-07", "A-08"],
data: e.chart2.x,
axisLine: {
lineStyle: {
color: "white",
@ -322,47 +294,119 @@ export default {
},
series: [
{
name: "内胆库",
name: e.chart2.y[0].name,
type: "bar",
barWidth: "15%",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#39ffff",
color: "#0bca98",
},
{
offset: 1,
color: "#f5804d",
color: "#16a144",
},
]),
},
},
data: [400, 400, 300, 300, 300, 400, 400, 400],
data: e.chart2.y[0].data,
},
{
name: "箱壳库",
name: e.chart2.y[1].name,
type: "bar",
barWidth: "15%",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#47cbfd",
color: "#0f8ad7",
},
{
offset: 1,
color: "#3e8aff",
color: "#0b30d9",
},
]),
},
},
data: e.chart2.y[1].data,
},
],
})
this.$refs.chart3.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: "0",
top: 20,
containLabel: true,
},
xAxis: {
type: "category",
data: e.chart14.x,
axisLine: {
lineStyle: {
color: "white",
},
},
axisLabel: {
// interval: 0,
// rotate: 40,
textStyle: {
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: e.chart14.y.name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#4adfff",
},
{
offset: 1,
color: "#3d7aff",
},
]),
},
},
data: [400, 500, 500, 500, 500, 400, 400, 500],
data: e.chart14.y.data,
},
],
})
})
},
methods: {}
};
@ -443,7 +487,7 @@ export default {
text-overflow: ellipsis;
text-align: center;
display: inline-block;
width: 16.6%;
width: 20%;
}
.chart1 {

@ -1,6 +1,6 @@
<template>
<div class="app-container">
<div class="headTitle">门体可视化平台</div>
<div class="headTitle">门体可视化平台</div>
<div class="topNum team">{{ team }}</div>
<div class="topNum planNum">{{ planNum }}</div>
<div class="topNum practicalNum">{{ practicalNum }}</div>
@ -16,19 +16,19 @@
编号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产工单
生产计划
</div>
<div class="scrollTableItem" style="font-weight: bold;">
计划数量
型号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
实际数量
计划数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
差异值
实际数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成率
开始时间
</div>
</div>
<vue-seamless-scroll
@ -45,27 +45,27 @@
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value5 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value6 }}
</div>
</div>
</div>
@ -74,60 +74,39 @@
<div class="scrollTable2">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;">
<div class="scrollTableItem" style="font-weight: bold;width: 33.3%">
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产工单
</div>
<div class="scrollTableItem" style="font-weight: bold;">
计划数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
实际数量
<div class="scrollTableItem" style="font-weight: bold;width: 33.3%">
门体型号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
差异值
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成率
<div class="scrollTableItem" style="font-weight: bold;width: 33.3%">
数量
</div>
</div>
<vue-seamless-scroll
:class-option="scrollTableOption"
:data="scrollTableData"
:data="scrollTableData1"
class="case-item"
style="height: 84%;overflow: hidden;"
>
<div
v-for="(item, index) in scrollTableData"
v-for="(item, index) in scrollTableData1"
:key="index"
>
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
class="scrollTableItem" style="width: 33.3%">
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
class="scrollTableItem" style="width: 33.3%">
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
class="scrollTableItem" style="width: 33.3%">
{{ item.value3 }}
</div>
</div>
</div>
@ -149,6 +128,7 @@
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from "@/api/board/getData";
export default {
components: {
@ -201,37 +181,16 @@ export default {
singleWidth: 0, // (0) direction => 2/3
waitTime: 0,
},
scrollTableData: [
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
],
scrollTableData: [],
scrollTableData1: [],
}
},
mounted() {
getData().then(e => {
this.scrollTableData = e.table4
this.scrollTableData1 = e.table5
this.$refs.chart1.setData({
grid: {
left: "0",
@ -241,15 +200,7 @@ export default {
containLabel: true,
},
xAxis: {
data: [
"1时",
"2时",
"3时",
"4时",
"5时",
"7时",
"8时",
],
data: e.chart4.x,
axisLine: {
lineStyle: {
color: "#3d5269",
@ -262,7 +213,6 @@ export default {
},
},
yAxis: {
name: "单位:次",
nameTextStyle: {
color: "#fff",
fontSize: 16,
@ -318,150 +268,76 @@ export default {
position: "top",
},
},
data: [254, 3254, 1654, 2454, 2757, 2011, 1211],
data: e.chart4.y.data,
},
],
})
this.$refs.chart2.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: '2%',
top: "10%",
bottom: "0",
top: 20,
containLabel: true,
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
xAxis: {
data: ["A-01", "A-02", "A-03"],
axisTick: {
show: false,
},
type: "category",
data: e.chart3.x,
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
axisLabel: {
show: true,
margin: 30,
// interval: 0,
// rotate: 40,
textStyle: {
color: "#f0f0f0",
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
splitLine: {
show: false,
},
axisTick: {
show: false,
},
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
axisLabel: {
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: "上底",
type: "pictorialBar",
symbolSize: [30, 16],
symbolOffset: [0, -8],
z: 12,
itemStyle: {
normal: {
color: "#14b1eb",
},
},
tooltip: {
show: false
},
data: [
{
value: 100,
symbolPosition: "end",
},
{
value: 50,
symbolPosition: "end",
},
{
value: 20,
symbolPosition: "end",
},
],
},
{
name: "下底",
type: "pictorialBar",
symbolSize: [30, 16],
symbolOffset: [0, 8],
z: 12,
name: e.chart3.y.name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: "#14b1eb",
},
},
tooltip: {
show: false
},
data: [100, 50, 20],
},
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
name: "内环",
type: "pictorialBar",
symbolSize: [40, 20],
symbolOffset: [0, 10],
z: 11,
tooltip: {
show: false
},
itemStyle: {
normal: {
color: "transparent",
borderColor: "#14b1eb",
borderWidth: 5,
},
},
data: [100, 50, 20],
offset: 0,
color: "#0f8ad7",
},
{
tooltip: {
show: false
offset: 1,
color: "#0b30d9",
},
name: "外环",
type: "pictorialBar",
symbolSize: [55, 26],
symbolOffset: [0, 13],
z: 10,
itemStyle: {
normal: {
color: "transparent",
borderColor: "#14b1eb",
borderType: "dashed",
borderWidth: 5,
]),
},
},
data: [100, 50, 20],
},
{
name: "数量",
type: "bar",
itemStyle: {
normal: {
color: "#14b1eb",
opacity: 0.7,
},
},
silent: true,
barWidth: 30,
barGap: "-100%", // Make series be overlap
data: [100, 50, 20],
data: e.chart3.y.data,
},
],
})
@ -469,122 +345,72 @@ export default {
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
top: "10%",
right: "0%",
left: "5%",
bottom: 20,
left: "0",
right: "4%",
bottom: "0",
top: 20,
containLabel: true,
},
xAxis: [
{
xAxis: {
type: "category",
data: [
"A1库",
"A2库",
"A3库",
"A4库",
"A5库",
"A6库",
"A7库",
"A8库",
"A9库",
"A10库",
"A11库",
"A12库",
],
data: e.chart7.x,
axisLine: {
lineStyle: {
color: "rgba(66, 192, 255, .3)",
color: "white",
},
},
axisLabel: {
interval: 0,
margin: 10,
color: "#05D5FF",
// interval: 0,
// rotate: 40,
textStyle: {
fontSize: 11,
},
},
axisTick: {
//
show: false,
fontFamily: "Microsoft YaHei",
},
},
],
yAxis: [
{
axisLabel: {
padding: [3, 0, 0, 0],
formatter: "{value}",
color: "rgba(95, 187, 235, 1)",
textStyle: {
fontSize: 11,
},
},
axisTick: {
show: true,
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "rgba(66, 192, 255, .3)",
color: "white",
},
},
splitLine: {
lineStyle: {
color: "rgba(255,255,255,0)",
},
show: false,
},
axisLabel: {},
},
],
series: [
{
name: '库存',
name: e.chart7.y.name,
type: "bar",
data: [
20, 50, 15, 35, 50, 30, 40, 50, 60, 20, 50, 15
],
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(
0,
0,
0,
1,
[
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "rgba(5, 213, 255, 1)", // 0%
color: "#0bca98",
},
{
offset: 0.98,
color: "rgba(5, 213, 255, 0)", // 100%
},
],
false
),
shadowColor: "rgba(5, 213, 255, 1)",
shadowBlur: 4,
},
},
label: {
normal: {
show: true,
lineHeight: 10,
formatter: "{c}",
position: "top",
textStyle: {
color: "#fff",
fontSize: 10,
offset: 1,
color: "#16a144",
},
]),
},
},
data: e.chart7.y.data,
},
],
})
})
},
methods: {}
};
@ -652,15 +478,15 @@ export default {
top: 23%;
left: 4%;
width: 45%;
height: 18%;
height: 45%;
}
.scrollTable2 {
position: absolute;
top: 49.5%;
left: 4%;
top: 17.5%;
left: 51%;
width: 45%;
height: 18%;
height: 50%;
}

@ -12,19 +12,19 @@
编号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产工单
产品型号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
计划数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
实际数量
完成数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
差异值
生产进度
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成率
开始时间
</div>
</div>
<vue-seamless-scroll
@ -41,27 +41,27 @@
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value5 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value6 }}
</div>
</div>
</div>
@ -84,6 +84,7 @@
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from "@/api/board/getData";
export default {
components: {
@ -127,37 +128,13 @@ export default {
singleWidth: 0, // (0) direction => 2/3
waitTime: 0,
},
scrollTableData: [
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
],
scrollTableData: [],
}
},
mounted() {
getData().then(e => {
this.scrollTableData = e.table7
this.$refs.chart1.setData({
grid: {
left: "0",
@ -167,15 +144,7 @@ export default {
containLabel: true,
},
xAxis: {
data: [
"1时",
"2时",
"3时",
"4时",
"5时",
"7时",
"8时",
],
data: e.chart4.x,
axisLine: {
lineStyle: {
color: "#3d5269",
@ -243,150 +212,76 @@ export default {
position: "top",
},
},
data: [254, 3254, 1654, 2454, 2757, 2011, 1211],
data: e.chart4.y.data,
},
],
})
this.$refs.chart2.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: '2%',
top: "10%",
bottom: "0",
top: 20,
containLabel: true,
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
xAxis: {
data: ["A-01", "A-02", "A-03"],
axisTick: {
show: false,
},
type: "category",
data: e.chart4.x,
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
axisLabel: {
show: true,
margin: 30,
// interval: 0,
// rotate: 40,
textStyle: {
color: "#f0f0f0",
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
splitLine: {
show: false,
},
axisTick: {
show: false,
},
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
axisLabel: {
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: "上底",
type: "pictorialBar",
symbolSize: [30, 16],
symbolOffset: [0, -8],
z: 12,
itemStyle: {
normal: {
color: "#14b1eb",
},
},
tooltip: {
show: false
},
data: [
{
value: 100,
symbolPosition: "end",
},
{
value: 50,
symbolPosition: "end",
},
{
value: 20,
symbolPosition: "end",
},
],
},
{
name: "下底",
type: "pictorialBar",
symbolSize: [30, 16],
symbolOffset: [0, 8],
z: 12,
name: "数量",
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: "#14b1eb",
},
},
tooltip: {
show: false
},
data: [100, 50, 20],
},
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
name: "内环",
type: "pictorialBar",
symbolSize: [40, 20],
symbolOffset: [0, 10],
z: 11,
tooltip: {
show: false
},
itemStyle: {
normal: {
color: "transparent",
borderColor: "#14b1eb",
borderWidth: 5,
},
},
data: [100, 50, 20],
offset: 0,
color: "#0bca98",
},
{
tooltip: {
show: false
},
name: "外环",
type: "pictorialBar",
symbolSize: [55, 26],
symbolOffset: [0, 13],
z: 10,
itemStyle: {
normal: {
color: "transparent",
borderColor: "#14b1eb",
borderType: "dashed",
borderWidth: 5,
},
},
data: [100, 50, 20],
offset: 1,
color: "#16a144",
},
{
name: "数量",
type: "bar",
itemStyle: {
normal: {
color: "#14b1eb",
opacity: 0.7,
]),
},
},
silent: true,
barWidth: 30,
barGap: "-100%", // Make series be overlap
data: [100, 50, 20],
data:e.chart4.y.data,
},
],
})
@ -394,122 +289,72 @@ export default {
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
top: "10%",
right: "0%",
left: "5%",
bottom: 20,
left: "0",
right: "4%",
bottom: "0",
top: 20,
containLabel: true,
},
xAxis: [
{
xAxis: {
type: "category",
data: [
"A1库",
"A2库",
"A3库",
"A4库",
"A5库",
"A6库",
"A7库",
"A8库",
"A9库",
"A10库",
"A11库",
"A12库",
],
data: e.chart7.x,
axisLine: {
lineStyle: {
color: "rgba(66, 192, 255, .3)",
color: "white",
},
},
axisLabel: {
interval: 0,
margin: 10,
color: "#05D5FF",
// interval: 0,
// rotate: 40,
textStyle: {
fontSize: 11,
},
},
axisTick: {
//
show: false,
fontFamily: "Microsoft YaHei",
},
},
],
yAxis: [
{
axisLabel: {
padding: [3, 0, 0, 0],
formatter: "{value}",
color: "rgba(95, 187, 235, 1)",
textStyle: {
fontSize: 11,
},
},
axisTick: {
show: true,
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "rgba(66, 192, 255, .3)",
color: "white",
},
},
splitLine: {
lineStyle: {
color: "rgba(255,255,255,0)",
},
show: false,
},
axisLabel: {},
},
],
series: [
{
name: '库存',
name: "数量",
type: "bar",
data: [
20, 50, 15, 35, 50, 30, 40, 50, 60, 20, 50, 15
],
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(
0,
0,
0,
1,
[
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "rgba(5, 213, 255, 1)", // 0%
color: "#0f8ad7",
},
{
offset: 0.98,
color: "rgba(5, 213, 255, 0)", // 100%
},
],
false
),
shadowColor: "rgba(5, 213, 255, 1)",
shadowBlur: 4,
},
},
label: {
normal: {
show: true,
lineHeight: 10,
formatter: "{c}",
position: "top",
textStyle: {
color: "#fff",
fontSize: 10,
offset: 1,
color: "#0b30d9",
},
]),
},
},
data: e.chart7.y.data,
},
],
})
})
},
methods: {}
};

@ -1,29 +1,26 @@
<template>
<div class="app-container">
<div class="headTitle">箱壳后板成型线可视化平台</div>
<div class="headTitle">箱壳发泡可视化平台</div>
<div class="topNum planNum">{{ planNum }}</div>
<div class="topNum practicalNum">{{ practicalNum }}</div>
<div class="topNum differenceValue">{{ differenceValue }}</div>
<div class="scrollTable">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;">
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产工单
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
计划数
</div>
<div class="scrollTableItem" style="font-weight: bold;">
计划数量
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
完成数
</div>
<div class="scrollTableItem" style="font-weight: bold;">
实际数量
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
差异数
</div>
<div class="scrollTableItem" style="font-weight: bold;">
差异值
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成率
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
执行进度
</div>
</div>
<vue-seamless-scroll
@ -39,28 +36,24 @@
>
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
class="scrollTableItem" style="width: 20%">
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
class="scrollTableItem" style="width: 20%">
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
class="scrollTableItem" style="width: 20%">
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
class="scrollTableItem" style="width: 20%">
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
class="scrollTableItem" style="width: 20%">
{{ item.value5 }}
</div>
</div>
</div>
@ -80,60 +73,151 @@
</div>
<div class="scrollTable1">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;">
编号
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
工位
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 8%">
型号
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
状态
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
目标
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
计划
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
累计
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产工单
<div class="scrollTableItem" style="font-weight: bold;width: 7%">
达成率
</div>
<div class="scrollTableItem" style="font-weight: bold;">
计划数量
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
7:30
</div>
<div class="scrollTableItem" style="font-weight: bold;">
实际数量
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
8:30
</div>
<div class="scrollTableItem" style="font-weight: bold;">
差异值
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
9:30
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成率
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
10:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
11:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
12:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
13:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
14:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
15:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
16:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
17:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
18:30
</div>
</div>
<vue-seamless-scroll
:class-option="scrollTableOption"
:data="scrollTableData"
:data="scrollTableData1"
class="case-item"
style="height: 84%;overflow: hidden;"
>
<div
v-for="(item, index) in scrollTableData"
v-for="(item, index) in scrollTableData1"
:key="index"
>
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
class="scrollTableItem" style="width: 5%">
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
class="scrollTableItem" style="width: 8%">
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
class="scrollTableItem" style="width: 5%">
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
class="scrollTableItem" style="width: 5%">
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
class="scrollTableItem" style="width: 5%">
{{ item.value5 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
class="scrollTableItem" style="width: 5%">
{{ item.value6 }}
</div>
<div
class="scrollTableItem" style="width: 7%">
{{ item.value7 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value8 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value9 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value10 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value11 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value12 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value13 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value14 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value15 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value16 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value17 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value18 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value19 }}
</div>
</div>
</div>
@ -141,23 +225,61 @@
</div>
<div class="total">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;">
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 8%">
合计
</div>
<div class="scrollTableItem" style="font-weight: bold;">
12
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
100%
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 7%">
100%
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;">
13
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;">
14
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;">
15
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;">
16
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
</div>
</div>
@ -168,6 +290,7 @@
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from "@/api/board/getData";
export default {
components: {
@ -190,36 +313,14 @@ export default {
singleWidth: 0, // (0) direction => 2/3
waitTime: 0,
},
scrollTableData: [
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
],
scrollTableData: [],
scrollTableData1: [],
}
},
mounted() {
getData().then(e=>{
this.scrollTableData = e.table2
this.scrollTableData1 = e.table3
this.$refs.chart1.setData({
tooltip: {
trigger: "axis",
@ -236,7 +337,7 @@ export default {
containLabel: true,
},
legend: {
data: ["POL压力", "ISO压力"],
data: e.chart5.y.map(val=>val.name),
right: 'center',
top: 0,
textStyle: {
@ -248,7 +349,7 @@ export default {
},
xAxis: {
type: "category",
data: ["9-1", "9-2", "9-3", "9-4", "9-5", "9-6", "9-7", "9-8"],
data: e.chart5.x,
axisLine: {
lineStyle: {
color: "white",
@ -278,9 +379,9 @@ export default {
},
series: [
{
name: "POL压力",
name: e.chart5.y[0].name,
type: "bar",
barWidth: "33%",
barWidth: "30%",
label: {
show: true,
position: "top",
@ -303,13 +404,13 @@ export default {
borderRadius: 2,
},
},
data: [400, 400, 300, 300, 300, 400, 400, 400],
data: e.chart5.y[0].data,
},
{
name: "ISO压力",
name: e.chart5.y[1].name,
type: "bar",
barWidth: "33%",
barGap: '50%',
barWidth: "30%",
barGap: '40%',
label: {
show: true,
position: "top",
@ -332,7 +433,7 @@ export default {
borderRadius: 2,
},
},
data: [400, 500, 500, 500, 500, 400, 400, 500],
data: e.chart5.y[1].data,
},
],
})
@ -353,14 +454,14 @@ export default {
},
xAxis: {
type: "category",
data: ["A-01", "A-02", "A-03", "A-04", "A-05", "A-06", "A-07", "A-08"],
data: e.chart3.x,
axisLine: {
lineStyle: {
color: "white",
},
},
axisLabel: {
// interval: 0,
interval: 0,
// rotate: 40,
textStyle: {
fontFamily: "Microsoft YaHei",
@ -383,7 +484,7 @@ export default {
},
series: [
{
name: "产量",
name: e.chart3.y.name,
type: "bar",
barWidth: "40%",
label: {
@ -408,13 +509,13 @@ export default {
borderRadius: 3,
},
},
data: [400, 500, 500, 500, 500, 400, 400, 500],
data: e.chart3.y.data,
},
],
})
this.$refs.chart3.setData({
legend: {
data: ["POL温度", "ISO温度"],
data: e.chart6.y.map(val=>val.name),
right: 'center',
top: 0,
textStyle: {
@ -480,7 +581,7 @@ export default {
show: false,
},
boundaryGap: false,
data: ["A", "B", "C", "D", "E", "F"],
data: e.chart6.x,
},
],
@ -513,7 +614,7 @@ export default {
],
series: [
{
name: "POL温度",
name: e.chart6.y[0].name,
type: "line",
// smooth: true, //
showAllSymbol: true,
@ -558,10 +659,10 @@ export default {
shadowBlur: 20,
},
},
data: [502.84, 205.97, 332.79, 281.55, 398.35, 214.02],
data: e.chart6.y[0].data,
},
{
name: "ISO温度",
name: e.chart6.y[1].name,
type: "line",
// smooth: true, //
showAllSymbol: true,
@ -607,7 +708,7 @@ export default {
shadowBlur: 20,
},
},
data: [281.55, 398.35, 214.02, 179.55, 289.57, 356.14],
data: e.chart6.y[1].data,
},
],
})
@ -628,7 +729,7 @@ export default {
},
xAxis: {
type: "category",
data: ["9-1", "9-2", "9-3", "9-4", "9-5", "9-6", "9-7", "9-8"],
data: e.chart7.x,
axisLine: {
lineStyle: {
color: "white",
@ -658,7 +759,7 @@ export default {
},
series: [
{
name: "POL压力",
name: e.chart7.y.name,
type: "bar",
barWidth: "33%",
label: {
@ -683,10 +784,11 @@ export default {
borderRadius: 2,
},
},
data: [400, 400, 300, 300, 300, 400, 400, 400],
data: e.chart7.y.data,
},
],
})
})
},
methods: {}
};

@ -0,0 +1,911 @@
<template>
<div class="app-container">
<div class="headTitle">门体发泡可视化平台</div>
<div class="topNum planNum">{{ planNum }}</div>
<div class="topNum practicalNum">{{ practicalNum }}</div>
<div class="topNum differenceValue">{{ differenceValue }}</div>
<div class="scrollTable">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
型号
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
计划数
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
完成数
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
差异数
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 20%">
执行进度
</div>
</div>
<vue-seamless-scroll
:class-option="scrollTableOption"
:data="scrollTableData"
class="case-item"
style="height: 84%;overflow: hidden;"
>
<div
v-for="(item, index) in scrollTableData"
:key="index"
>
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem" style="width: 20%">
{{ item.value1 }}
</div>
<div
class="scrollTableItem" style="width: 20%">
{{ item.value2 }}
</div>
<div
class="scrollTableItem" style="width: 20%">
{{ item.value3 }}
</div>
<div
class="scrollTableItem" style="width: 20%">
{{ item.value4 }}
</div>
<div
class="scrollTableItem" style="width: 20%">
{{ item.value5 }}
</div>
</div>
</div>
</vue-seamless-scroll>
</div>
<div class="chart1">
<Chart ref="chart1"></Chart>
</div>
<div class="chart2">
<Chart ref="chart2"></Chart>
</div>
<div class="chart3">
<Chart ref="chart3"></Chart>
</div>
<div class="chart4">
<Chart ref="chart4"></Chart>
</div>
<div class="scrollTable1">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
工位
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 8%">
型号
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
状态
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
目标
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
计划
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
累计
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 7%">
达成率
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
7:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
8:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
9:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
10:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
11:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
12:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
13:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
14:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
15:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
16:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
17:30
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
18:30
</div>
</div>
<vue-seamless-scroll
:class-option="scrollTableOption"
:data="scrollTableData1"
class="case-item"
style="height: 84%;overflow: hidden;"
>
<div
v-for="(item, index) in scrollTableData1"
:key="index"
>
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value1 }}
</div>
<div
class="scrollTableItem" style="width: 8%">
{{ item.value2 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value3 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value4 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value5 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value6 }}
</div>
<div
class="scrollTableItem" style="width: 7%">
{{ item.value7 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value8 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value9 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value10 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value11 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value12 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value13 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value14 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value15 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value16 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value17 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value18 }}
</div>
<div
class="scrollTableItem" style="width: 5%">
{{ item.value19 }}
</div>
</div>
</div>
</vue-seamless-scroll>
</div>
<div class="total">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 8%">
合计
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
100%
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 7%">
100%
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
<div class="scrollTableItem" style="font-weight: bold;width: 5%">
1000
</div>
</div>
</div>
</div>
</template>
<script>
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from "@/api/board/getData";
export default {
components: {
vueSeamlessScroll,
Chart
},
name: "Liner",
data() {
return {
planNum: 1000,
practicalNum: 1000,
differenceValue: 1000,
scrollTableOption: {
step: 0.5, //
limitMoveNum: 5, // this.dataList.length
hoverStop: true, // stop
direction: 1, // 0 1 2 3
openWatch: true, // dom
singleHeight: 0, // (0) direction => 0/1
singleWidth: 0, // (0) direction => 2/3
waitTime: 0,
},
scrollTableData: [],
scrollTableData1: [],
}
},
mounted() {
getData().then(e=>{
this.scrollTableData = e.table2
this.scrollTableData1 = e.table3
this.$refs.chart1.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: "0",
top: 35,
containLabel: true,
},
legend: {
data: e.chart5.y.map(val=>val.name),
right: 'center',
top: 0,
textStyle: {
color: "#fff",
},
itemWidth: 12,
itemHeight: 10,
// itemGap: 35
},
xAxis: {
type: "category",
data: e.chart5.x,
axisLine: {
lineStyle: {
color: "white",
},
},
axisLabel: {
// interval: 0,
// rotate: 40,
textStyle: {
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: e.chart5.y[0].name,
type: "bar",
barWidth: "30%",
label: {
show: true,
position: "top",
textStyle: {
color: "#49d9ff",
},
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#39ffff",
},
{
offset: 1,
color: "#f5804d",
},
]),
borderRadius: 2,
},
},
data: e.chart5.y[0].data,
},
{
name: e.chart5.y[1].name,
type: "bar",
barWidth: "30%",
barGap: '40%',
label: {
show: true,
position: "top",
textStyle: {
color: "#49d9ff",
},
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#47cbfd",
},
{
offset: 1,
color: "#3e8aff",
},
]),
borderRadius: 2,
},
},
data: e.chart5.y[1].data,
},
],
})
this.$refs.chart2.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: 0,
top: 20,
containLabel: true,
},
xAxis: {
type: "category",
data: e.chart3.x,
axisLine: {
lineStyle: {
color: "white",
},
},
axisLabel: {
interval: 0,
// rotate: 40,
textStyle: {
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: e.chart3.y.name,
type: "bar",
barWidth: "40%",
label: {
show: true,
position: "top",
textStyle: {
color: "#49d9ff",
},
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#47cbfd",
},
{
offset: 1,
color: "#3e8aff",
},
]),
borderRadius: 3,
},
},
data: e.chart3.y.data,
},
],
})
this.$refs.chart3.setData({
legend: {
data: e.chart6.y.map(val=>val.name),
right: 'center',
top: 0,
textStyle: {
color: "#fff",
},
itemWidth: 12,
itemHeight: 10,
// itemGap: 35
},
tooltip: {
trigger: "axis",
axisPointer: {
lineStyle: {
color: {
type: "linear",
x: 0,
y: 0,
x2: 0,
y2: 1,
colorStops: [
{
offset: 0,
color: "rgba(0, 255, 233,0)",
},
{
offset: 0.5,
color: "rgba(255, 255, 255,1)",
},
{
offset: 1,
color: "rgba(0, 255, 233,0)",
},
],
global: false,
},
},
},
},
grid: {
top: "15%",
left: 40,
right: "5%",
bottom: "15%",
// containLabel: true
},
xAxis: [
{
type: "category",
axisLine: {
show: true,
},
splitArea: {
// show: true,
color: "#f00",
lineStyle: {
color: "#f00",
},
},
axisLabel: {
color: "#fff",
},
splitLine: {
show: false,
},
boundaryGap: false,
data: e.chart6.x,
},
],
yAxis: [
{
type: "value",
min: 0,
// max: 140,
splitNumber: 4,
splitLine: {
show: true,
lineStyle: {
color: "rgba(255,255,255,0.1)",
},
},
axisLine: {
show: true,
},
axisLabel: {
show: true,
margin: 20,
textStyle: {
color: "#d1e6eb",
},
},
axisTick: {
show: true,
},
},
],
series: [
{
name: e.chart6.y[0].name,
type: "line",
// smooth: true, //
showAllSymbol: true,
// symbol: 'image://./static/images/guang-circle.png',
symbol: "circle",
symbolSize: 5,
lineStyle: {
normal: {
color: "#49d9ff",
},
},
label: {
show: true,
position: "top",
textStyle: {
color: "#49d9ff",
},
},
itemStyle: {
color: "#49d9ff",
},
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(
0,
0,
0,
1,
[
{
offset: 0,
color: "rgba(108,80,243,0.3)",
},
{
offset: 1,
color: "rgba(108,80,243,0)",
},
],
false
),
shadowColor: "rgba(108,80,243, 0.9)",
shadowBlur: 20,
},
},
data: e.chart6.y[0].data,
},
{
name: e.chart6.y[1].name,
type: "line",
// smooth: true, //
showAllSymbol: true,
// symbol: 'image://./static/images/guang-circle.png',
symbol: "circle",
symbolSize: 5,
lineStyle: {
normal: {
color: "#668e84",
},
},
label: {
show: true,
position: "top",
textStyle: {
color: "#668e84",
},
},
itemStyle: {
color: "#00ca95",
},
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(
0,
0,
0,
1,
[
{
offset: 0,
color: "rgba(0,202,149,0.3)",
},
{
offset: 1,
color: "rgba(0,202,149,0)",
},
],
false
),
shadowColor: "rgba(0,202,149, 0.9)",
shadowBlur: 20,
},
},
data: e.chart6.y[1].data,
},
],
})
this.$refs.chart4.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: "0",
top: "10%",
containLabel: true,
},
xAxis: {
type: "category",
data: e.chart7.x,
axisLine: {
lineStyle: {
color: "white",
},
},
axisLabel: {
// interval: 0,
// rotate: 40,
textStyle: {
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: e.chart7.y.name,
type: "bar",
barWidth: "33%",
label: {
show: true,
position: "top",
textStyle: {
color: "#49d9ff",
},
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#39ffff",
},
{
offset: 1,
color: "#f5804d",
},
]),
borderRadius: 2,
},
},
data: e.chart7.y.data,
},
],
})
})
},
methods: {}
};
</script>
<style scoped>
.app-container {
background-image: url("../../../assets/board/foaming.jpg");
background-repeat: no-repeat;
background-size: 100% 100%;
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.headTitle {
position: absolute;
top: 5%;
left: 50%;
transform: translate(-50%, -100%);
font-size: 1.5vw;
color: #d6eaed;
letter-spacing: 10px;
}
.topNum {
position: absolute;
transform: translate(-50%, -50%);
color: #5db9e8;
top: 17.1%;
letter-spacing: 2vw;
}
.planNum {
font-size: 1.7vw;
left: 36.5%;
}
.practicalNum {
left: 50.9%;
font-size: 1.7vw;
color: #97febd;
}
.differenceValue {
font-size: 1.7vw;
left: 65.4%;
color: #b15462;
}
.scrollTable {
position: absolute;
top: 15%;
left: 4%;
width: 23%;
height: 20%;
}
.scrollTableItem {
color: rgb(185, 186, 192);
margin: auto 0px;
padding: 4px 0;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
text-align: center;
display: inline-block;
width: 16.6%;
}
.chart1 {
position: absolute;
top: 14.5%;
left: 73%;
width: 23.5%;
height: 21%;
}
.chart2 {
position: absolute;
top: 43%;
left: 3.6%;
width: 23.3%;
height: 15.5%;
}
.chart3 {
position: absolute;
top: 42%;
left: 73%;
width: 23.5%;
height: 18.5%;
}
.chart4 {
position: absolute;
top: 66.2%;
left: 73%;
width: 23.5%;
height: 28.5%;
}
.scrollTable1 {
position: absolute;
top: 66%;
left: 3.5%;
width: 68%;
height: 25%;
}
.total {
position: absolute;
top: 91%;
left: 3.5%;
width: 68%;
height: 3%;
}
</style>

@ -9,9 +9,14 @@
:style="'top:'+(titlePosition[k]&&titlePosition[k].top||0)+'%;left:'+(titlePosition[k]&&titlePosition[k].left||0)+'%'">
{{ i }}
</div>
<div class="inventoryInfo">内胆库剩余:{{ linerNum }}% 箱壳库剩余:{{ caseNum }}%</div>
<div class="centerBg"></div>
<div class="scrollTable">
<div style="background-color: #09417066">
<div class="scrollTableItem" style="font-weight: bold;">
计划编号
</div>
<div class="scrollTableItem" style="font-weight: bold;">
产品型号
</div>
@ -19,13 +24,13 @@
计划数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成数量
入库数量
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产进度
</div>
<div class="scrollTableItem" style="font-weight: bold;">
开始时间
计划时间
</div>
</div>
<vue-seamless-scroll
@ -41,11 +46,11 @@
<div :style='"background-color:" + ((index % 2 === 0)? "#05346066":"#032d5766") '>
<div
class="scrollTableItem">
{{ item.name }}
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
@ -53,11 +58,15 @@
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value5 }}
</div>
</div>
</div>
@ -72,6 +81,9 @@
<div class="chart3">
<Chart ref="chart3"></Chart>
</div>
<div class="chart4">
<Chart ref="chart4"></Chart>
</div>
</div>
</template>
@ -79,6 +91,7 @@
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from '@/api/board/getData'
export default {
components: {
@ -92,8 +105,11 @@ export default {
'工单计划',
'出入库统计',
'库存状态',
'泡前库库存统计',
'发泡夹具状态',
],
linerNum: 50,
caseNum: 44,
titlePosition: [
{
top: 19.8,
@ -109,7 +125,11 @@ export default {
},
{
top: 70.5,
left: 53
left: 36.7
},
{
top: 70.5,
left: 68.5
},
],
team: '白班',
@ -117,46 +137,22 @@ export default {
practicalNum: 1000,
differenceValue: 1000,
scrollTableOption: {
step: 0.5, //
limitMoveNum: 5, // this.dataList.length
hoverStop: true, // stop
direction: 1, // 0 1 2 3
openWatch: true, // dom
singleHeight: 0, // (0) direction => 0/1
singleWidth: 0, // (0) direction => 2/3
step: 0.5,
limitMoveNum: 5,
hoverStop: true,
direction: 1,
openWatch: true,
singleHeight: 0,
singleWidth: 0,
waitTime: 0,
},
scrollTableData: [
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
],
scrollTableData: [],
}
},
mounted() {
getData().then(e => {
this.scrollTableData = e.table1
this.$refs.chart1.setData({
tooltip: {
trigger: "axis",
@ -169,11 +165,11 @@ export default {
left: "0",
right: "4%",
bottom: "0",
top: "5%",
top: 20,
containLabel: true,
},
legend: {
data: ["入库", "出库"],
data: e.liner.ImportAndExportStatistics.y.map(val => val.name),
right: 'center',
top: 0,
textStyle: {
@ -185,7 +181,7 @@ export default {
},
xAxis: {
type: "category",
data: ["01:00", "02:00", "03:00", "04:00", "05:00", "06:00", "07:00", "08:00"],
data: e.liner.ImportAndExportStatistics.x,
axisLine: {
lineStyle: {
color: "white",
@ -215,7 +211,7 @@ export default {
},
series: [
{
name: "入库",
name: e.liner.ImportAndExportStatistics.y[0].name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
@ -233,10 +229,10 @@ export default {
]),
},
},
data: [400, 400, 300, 300, 300, 400, 400, 400],
data: e.liner.ImportAndExportStatistics.y[0].data,
},
{
name: "出库",
name: e.liner.ImportAndExportStatistics.y[1].name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
@ -254,7 +250,7 @@ export default {
]),
},
},
data: [400, 500, 500, 500, 500, 400, 400, 500],
data: e.liner.ImportAndExportStatistics.y[1].data,
},
],
})
@ -270,11 +266,11 @@ export default {
left: "0",
right: "4%",
bottom: "0",
top: "5%",
top: 20,
containLabel: true,
},
legend: {
data: ["内胆", "箱壳"],
data: e.liner.inventoryStatus.y.map(val => val.name),
right: 'center',
top: 0,
textStyle: {
@ -286,7 +282,7 @@ export default {
},
xAxis: {
type: "category",
data: ["A-01", "A-02", "A-03", "A-04", "A-05", "A-06", "A-07", "A-08"],
data: e.liner.inventoryStatus.x,
axisLine: {
lineStyle: {
color: "white",
@ -316,7 +312,7 @@ export default {
},
series: [
{
name: "内胆",
name: e.liner.inventoryStatus.y[0].name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
@ -334,10 +330,148 @@ export default {
]),
},
},
data: [400, 400, 300, 300, 300, 400, 400, 400],
data: e.liner.inventoryStatus.y[0].data,
},
{
name: e.liner.inventoryStatus.y[1].name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#4adfff",
},
{
offset: 1,
color: "#3d7aff",
},
]),
},
},
data: e.liner.inventoryStatus.y[1].data,
},
],
})
this.$refs.chart3.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: "0",
top: 20,
containLabel: true,
},
xAxis: {
type: "category",
data: e.liner.inventoryStatistics.x,
axisLine: {
lineStyle: {
color: "white",
},
},
axisLabel: {
// interval: 0,
// rotate: 40,
textStyle: {
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: e.liner.inventoryStatistics.y.name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#4adfff",
},
{
offset: 1,
color: "#3d7aff",
},
]),
},
},
data: e.liner.inventoryStatistics.y.data,
},
],
})
this.$refs.chart4.setData({
tooltip: {
trigger: "axis",
axisPointer: {
//
type: "shadow", // 线'line' | 'shadow'
},
},
grid: {
left: "0",
right: "4%",
bottom: "0",
top: 20,
containLabel: true,
},
xAxis: {
type: "category",
data: e.liner.foamFixtureState.x,
axisLine: {
lineStyle: {
color: "white",
},
},
axisLabel: {
// interval: 0,
// rotate: 40,
textStyle: {
fontFamily: "Microsoft YaHei",
},
},
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "white",
},
},
splitLine: {
show: false,
},
axisLabel: {},
},
series: [
{
name: "箱壳",
name: e.liner.foamFixtureState.y.name,
type: "bar",
barWidth: "30%",
barMaxWidth: 50,
@ -355,10 +489,11 @@ export default {
]),
},
},
data: [400, 500, 500, 500, 500, 400, 400, 500],
data: e.liner.foamFixtureState.y.data,
},
],
})
})
},
methods: {}
};
@ -375,6 +510,18 @@ export default {
left: 0;
}
.centerBg {
background-image: url("../../../assets/board/model1.png");
background-repeat: no-repeat;
background-size: 100% 100%;
position: absolute;
transform: translate(-50%, -50%);
top: 56%;
left: 49%;
width: 98%;
height: 57%;
}
.headTitle {
position: absolute;
top: 5%;
@ -438,30 +585,48 @@ export default {
text-overflow: ellipsis;
text-align: center;
display: inline-block;
width: 20%;
width: calc(100% / 6);
}
.chart1 {
position: absolute;
top: 24%;
top: 23%;
left: 51%;
width: 45%;
height: 17%;
height: 18.5%;
}
.chart2 {
position: absolute;
top: 74%;
left: 3.6%;
width: 45.5%;
width: 29.8%;
height: 20.7%;
}
.chart3 {
position: absolute;
top: 74%;
left: 51%;
width: 45.5%;
left: 35%;
width: 30%;
height: 20.7%;
}
.chart4 {
position: absolute;
top: 74%;
left: 66.5%;
width: 30%;
height: 20.7%;
}
.inventoryInfo {
position: absolute;
transform: translateY(-50%);
font-size: 0.9vw;
top: 70.4%;
left: 13.7%;
color: #fff;
letter-spacing: 1px;
}
</style>

@ -1,6 +1,6 @@
<template>
<div class="app-container">
<div class="headTitle">灌注工位看板</div>
<div class="headTitle">成品入库及产品质量可视化平台</div>
<div class="title" v-for="(i,k) in title"
:style="'top:'+(titlePosition[k]&&titlePosition[k].top||0)+'%;left:'+(titlePosition[k]&&titlePosition[k].left||0)+'%'">
{{ i }}
@ -9,22 +9,25 @@
<div class="scrollTable">
<div style="background-color: #094170">
<div class="scrollTableItem" style="font-weight: bold;">
产品型
</div>
<div class="scrollTableItem" style="font-weight: bold;">
生产工单
箱体码
</div>
<div class="scrollTableItem" style="font-weight: bold;">
计划数量
R1348
</div>
<div class="scrollTableItem" style="font-weight: bold;">
实际数量
R1348
</div>
<div class="scrollTableItem" style="font-weight: bold;">
差异值
R6000
</div>
<div class="scrollTableItem" style="font-weight: bold;">
完成率
是否合格
</div>
<div class="scrollTableItem" style="font-weight: bold;">
记录时间
</div>
</div>
<vue-seamless-scroll
@ -41,27 +44,31 @@
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value5 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value6 }}
</div>
<div
class="scrollTableItem">
{{ item.value7 }}
</div>
</div>
</div>
@ -98,6 +105,7 @@
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from "@/api/board/getData";
export default {
components: {
@ -141,43 +149,19 @@ export default {
singleWidth: 0, // (0) direction => 2/3
waitTime: 0,
},
scrollTableData: [
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
],
scrollTableData: [],
}
},
mounted() {
this.$refs.chart11.setData(this.option('灌注量'))
this.$refs.chart12.setData(this.option('标准灌注量'))
this.$refs.chart13.setData(this.option('灌注压力'))
this.$refs.chart14.setData(this.option('真空检测时间'))
this.$refs.chart15.setData(this.option('真空度衰减压力'))
this.$refs.chart16.setData(this.option('灌注温度'))
getData().then(e=>{
this.scrollTableData = e.table6
this.$refs.chart11.setData(this.option('灌注量',e.chart10.data[0]))
this.$refs.chart12.setData(this.option('标准灌注量',e.chart10.data[1]))
this.$refs.chart13.setData(this.option('灌注压力',e.chart10.data[2]))
this.$refs.chart14.setData(this.option('真空检测时间',e.chart10.data[3]))
this.$refs.chart15.setData(this.option('真空度衰减压力',e.chart10.data[4]))
this.$refs.chart16.setData(this.option('灌注温度',e.chart10.data[5]))
this.$refs.chart2.setData({
grid: {
top: "5%",
@ -193,23 +177,14 @@ export default {
},
},
legend: {
data: ["错误次数", "比例"],
data: e.chart8.y.map(val=>val.name),
top: "0%",
textStyle: {
color: "#ffffff",
},
},
xAxis: {
data: [
"err1",
"err2",
"err3",
"err4",
"err5",
"err6",
"err7",
"其他",
],
data: e.chart8.x,
axisLine: {
show: true, //X线
lineStyle: {
@ -277,7 +252,7 @@ export default {
],
series: [
{
name: "错误次数",
name: e.chart8.y[0].name,
type: "bar",
barWidth: '40%',
itemStyle: {
@ -294,10 +269,10 @@ export default {
]),
},
},
data: [4.2, 3.8, 4.8, 3.5, 2.9, 2.8, 3, 5],
data: e.chart8.y[0].data,
},
{
name: "比例",
name: e.chart8.y[1].name,
type: "line",
yAxisIndex: 1, //使 y index y
smooth: true, //线
@ -314,7 +289,7 @@ export default {
areaStyle: {
color: "rgba(5,140,255, 0.2)",
},
data: [4.2, 3.8, 4.8, 3.5, 2.9, 2.8, 3, 5],
data: e.chart8.y[1].data,
},
],
})
@ -333,23 +308,14 @@ export default {
},
},
legend: {
data: ["次数"],
data: [e.chart9.y.name],
top: "0%",
textStyle: {
color: "#ffffff",
},
},
xAxis: {
data: [
"err1",
"err2",
"err3",
"err4",
"err5",
"err6",
"err7",
"其他",
],
data: e.chart9.x,
axisLine: {
show: true, //X线
lineStyle: {
@ -368,8 +334,8 @@ export default {
},
yAxis: [
{
min:90,
type: "value",
name: "亿元",
nameTextStyle: {
color: "#ebf8ac",
},
@ -395,8 +361,8 @@ export default {
],
series: [
{
name: "次数",
type: "bar",
name: e.chart9.y.name,
type: "line",
barWidth: '40%',
itemStyle: {
normal: {
@ -412,13 +378,14 @@ export default {
]),
},
},
data: [4.2, 3.8, 4.8, 3.5, 2.9, 2.8, 3, 5],
data: e.chart9.y.data,
},
],
})
})
},
methods: {
option(name) {
option(name,val) {
return {
tooltip: {
formatter: "{a} <br/>{b} : {c}%",
@ -433,7 +400,7 @@ export default {
axisLine: {
lineStyle: {
color: [
[44 / 100, "#468EFD"],
[val / 100, "#468EFD"],
[1, "#111F42"],
],
width: 8,
@ -453,7 +420,7 @@ export default {
},
detail: {
formatter: function () {
return `22m\n${name}`;
return `${val}\n${name}`;
},
offsetCenter: [0, '90%'],
lineHeight: 16,
@ -478,7 +445,7 @@ export default {
data: [
{
name: " ",
value: 44,
value: val,
},
],
pointer: {
@ -590,7 +557,7 @@ export default {
text-overflow: ellipsis;
text-align: center;
display: inline-block;
width: 16.6%;
width: 14.2%;
}
.chart11 {

@ -5,6 +5,8 @@
:style="'top:'+(titlePosition[k]&&titlePosition[k].top||0)+'%;left:'+(titlePosition[k]&&titlePosition[k].left||0)+'%'">
{{ i }}
</div>
<div class="loss">{{loss}}</div>
<div class="meter">{{meter}}</div>
<div class="scrollTable">
<div style="background-color: #094170">
@ -41,27 +43,27 @@
<div :style='"background-color:" + ((index % 2 === 0)? "#053460":"#032d57") '>
<div
class="scrollTableItem">
{{ item.name }}
{{ item.value1 }}
</div>
<div
class="scrollTableItem">
{{ item.value }}
{{ item.value2 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value3 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value4 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value5 }}
</div>
<div
class="scrollTableItem">
{{ item.value2 }}
{{ item.value6 }}
</div>
</div>
</div>
@ -84,6 +86,7 @@
import vueSeamlessScroll from "vue-seamless-scroll";
import Chart from "../../../components/board/Chart";
import * as echarts from 'echarts'
import {getData} from "@/api/board/getData";
export default {
components: {
@ -93,6 +96,8 @@ export default {
name: "Liner",
data() {
return {
loss:100,
meter:30,
title: [
'成品产量',
'终检一次不合格率',
@ -137,38 +142,14 @@ export default {
singleWidth: 0, // (0) direction => 2/3
waitTime: 0,
},
scrollTableData: [
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
{
value: 1,
value2: 1,
name: '1',
},
],
scrollTableData: [],
}
},
mounted() {
const vw = (document.documentElement.clientWidth || document.body.clientWidth) / 100
getData().then(e => {
this.scrollTableData = e.table8
this.$refs.chart1.setData({
tooltip: {
trigger: 'axis',
@ -188,7 +169,7 @@ export default {
legend: {
show: true,
itemGap: 50,
data: ['目标产量', '实际产量'],
data: e.chart11.y.map(val => val.name),
textStyle: {
color: "#f9f9f9",
borderColor: "#fff",
@ -227,7 +208,7 @@ export default {
opacity: 0.3,
},
},
data: ['1时','2时','3时','4时','5时','6时','7时','8时'],
data: e.chart11.x,
},
],
yAxis: [
@ -265,7 +246,7 @@ export default {
],
series: [
{
name: '实际产量',
name: e.chart11.y[0].name,
type: "bar",
barWidth: '70%',
label: {
@ -273,7 +254,7 @@ export default {
position: "top",
textStyle: {
color: "#fff",
fontSize:16
fontSize: 16
},
},
itemStyle: {
@ -281,10 +262,10 @@ export default {
barBorderRadius: 5,
},
},
data:[1,2,3,4,5,67,8],
data: e.chart11.y[0].data,
},
{
name: '目标产量',
name: e.chart11.y[1].name,
type: "line",
// smooth: true, //线
// symbol:'circle', //
@ -313,7 +294,7 @@ export default {
// tooltip: {
// show: false
// },
data: [3,3,3,3,3,3,3,3],
data: e.chart11.y[1].data,
},
],
})
@ -336,7 +317,7 @@ export default {
},
legend: {
itemWidth: 3 * vw,
data: ['不良数', '一次不合格率', '目标'],
data: e.chart12.y.map(val => val.name),
textStyle: {
color: "#d1e6eb",
margin: 15,
@ -354,7 +335,7 @@ export default {
},
},
type: 'category',
data: ['1时','2时','3时','4时','5时','6时','7时','8时'],
data: e.chart12.x,
axisPointer: {
type: 'shadow'
}
@ -396,9 +377,9 @@ export default {
],
series: [
{
name: '不良数',
name: e.chart12.y[0].name,
type: 'bar',
data: [1,2,3,4,5,6,7,8],
data: e.chart12.y[0].data,
label: {
show: true,
position: 'top',
@ -409,10 +390,10 @@ export default {
},
},
{
name: '一次不合格率',
name: e.chart12.y[1].name,
type: 'line',
yAxisIndex: 1,
data: [1,2,3,4,5,6,7,8],
data: e.chart12.y[1].data,
itemStyle: {
normal: {
color: '#F9A25B',
@ -420,10 +401,10 @@ export default {
},
},
{
name: '目标',
name: e.chart12.y[2].name,
type: 'line',
yAxisIndex: 1,
data: [1,1,1,1,1,1,1,1],
data: e.chart12.y[2].data,
itemStyle: {
normal: {
color: '#0DB99D',
@ -446,7 +427,7 @@ export default {
containLabel: true,
},
xAxis: {
data:["0-3分钟", "3-10分钟", ">10分钟"],
data: e.chart13.x,
axisLine: {
lineStyle: {
color: "#0177d4",
@ -482,7 +463,7 @@ export default {
series: [
{
type: "bar",
barWidth: 2 * vw ,
barWidth: 2 * vw,
label: {
show: true,
position: 'top',
@ -512,10 +493,11 @@ export default {
),
},
},
data: [254, 3254, 1654],
data: e.chart13.y.data,
},
],
})
})
},
methods: {}
};
@ -531,7 +513,24 @@ export default {
top: 0;
left: 0;
}
.loss{
position: absolute;
transform: translate(-50%,-50%);
top: 18.1%;
left: 62%;
font-size: 1.5vw;
letter-spacing: 2px;
color: #cccccc;
}
.meter{
position: absolute;
transform: translate(-50%,-50%);
top: 18.1%;
left: 85.6%;
font-size: 1.5vw;
letter-spacing: 2px;
color: #cccccc;
}
.headTitle {
position: absolute;
top: 5%;

@ -4,7 +4,6 @@
</template>
<script>
import backupsJson from '../../../../data.json'
export default {
name: "Liner",
@ -14,7 +13,7 @@ export default {
}
},
mounted() {
console.log(backupsJson)
// console.log(backupsJson)
},
methods: {}
};

@ -0,0 +1,109 @@
<template>
<div class="app-container">
<div id="container" class="container"></div>
</div>
</template>
<script>
const isAMRT = () => {
return new Promise((resolve, reject) => {
const fun = () => {
if (typeof AMRT !== "undefined" && AMRT) {
resolve(true)
} else {
setTimeout(fun, 100)
}
}
fun()
})
}
export default {
name: "Model",
data() {
return {
viewer: null
}
},
async mounted() {
await isAMRT()
console.log(AMRT)
const param = {
appkey: 'aveMPyNWzDJm',
appsecret: 'rXmhoLAiOPNKzbl7g2qxCV8tFwRdYuZM'
}
const viewer = new AMRT.Viewer('container', param)
const callback = () => {
console.log('click on model')
}
const callback1 = () => {
console.log('click on model123213213')
}
let num = 0
viewer.loadModel('1720250797926780928', {
background: false,
onLoad: function (m) {
num+=1
if(num === 5){
alert('加载完成');
}
m.on('click', callback)
}
})
viewer.loadModel('1720250751495835648', {
background: false,
onLoad: function (m) {
num+=1
if(num === 5){
alert('加载完成');
}
m.on('click', callback1)
}
})
viewer.loadModel('1720250742998175744', {
background: false,
onLoad: function (m) {
num+=1
if(num === 5){
alert('加载完成');
}
m.on('click', callback1)
}
})
viewer.loadModel('1720250716490174464', {
background: false,
onLoad: function (m) {
num+=1
if(num === 5){
alert('加载完成');
}
m.on('click', callback1)
}
})
viewer.loadModel('1720250709951254528', {
background: false,
onLoad: function (m) {
num+=1
if(num === 5){
alert('加载完成');
}
m.on('click', callback1)
}
})
},
methods: {}
};
</script>
<style scoped>
* {
margin: 0;
padding: 0
}
.container {
width: 100vw;
height: 100vh
}
</style>
Loading…
Cancel
Save