#
luxiaotao1123
2022-04-07 767fd92e1e79bd000a4fc56e78d44cc27603fa3b
#
5个文件已修改
1个文件已添加
124 ■■■■■ 已修改文件
static/css/main.css 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/js/app.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/js/object/ObjectSelect.js 37 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/js/object/StoreGoods.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/js/utils/DataShow.js 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
views/index.html 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/css/main.css
@@ -1,3 +1,14 @@
#label {
    position: absolute;
    padding: 10px;
    background: rgba(255, 255, 255, 0.6);
    line-height: 1;
    color:#000000;
    border-radius: 5px;
    display:none;
    z-index: 99;
}
#sidebar{
    /*定位*/
    position: absolute;
static/js/app.js
@@ -180,7 +180,7 @@
            this.composer.addPass( this.fxaaPass );
        }
        this.initObjectSelect = function(){
            new ObjectSelect(this.scene, this.camera, this.outlinePass);
            new ObjectSelect(this.scene, this.camera, this.outlinePass, this);
        }
        this.initPointLockControl = function(object){
            this.controls = new PointerLockControls( this.camera, document.body );
static/js/object/ObjectSelect.js
@@ -1,5 +1,5 @@
function ObjectSelect(_scene, _camera,outlinePass) {
function ObjectSelect(_scene, _camera, outlinePass, object) {
    var raycaster = new THREE.Raycaster();
    var mouse = new THREE.Vector2();
    let selectedObjects = [];
@@ -22,11 +22,40 @@
        if (intersects.length === 0) {
            $("#label").attr("style", "display:none;");//隐藏说明性标签
            return;
        }
        selectedObjects = [];
        selectedObjects.push(intersects[0].object);
        outlinePass.selectedObjects = selectedObjects;
        let objName = intersects[0].object.name;
        if (objName) {
            let dest = objName.split("-")[0];
            if (dest) {
                // 库存
                if (dest.length === 7) {
                    $("#label").attr("style", "display:block;");
                    $("#label").css({left: x, top: y - 40});
                    let dataShow = new DataShow();
                    selectedObjects.pop();
                    selectedObjects.push(intersects[0].object);
                    $("#label").html(dataShow.showHint());
                // 运行中
                } else if (dest.length === 4) {
                } else {
                    $("#label").attr("style", "display:none;");
                }
            } else {
                $("#label").attr("style", "display:none;");
            }
        } else {
            $("#label").attr("style", "display:none;");
        }
        // selectedObjects = [];
        // selectedObjects.push(intersects[0].object);
        // outlinePass.selectedObjects = selectedObjects;
    }
}
static/js/object/StoreGoods.js
@@ -44,6 +44,11 @@
                        positionZ = (item.bay1-1)*-ref.binHeight || 0;
                        clone.name = item.loc_no + "-" + "Pallet";
                        clone.traverse (function (child) {
                            if (child instanceof THREE.Mesh) {
                                child.name = item.loc_no + "-" + child.name;
                            }
                        })
                        break;
                    case 2:
                        positionX = ref.position.x || 0;
@@ -55,6 +60,11 @@
                        positionZ -= 138 + 20;
                        clone.name = item.wrkNo + "-" + "Pallet";
                        clone.traverse (function (child) {
                            if (child instanceof THREE.Mesh) {
                                child.name = item.wrkNo + "-" + child.name;
                            }
                        })
                        break;
                    default:
                        console.error("InitPallet param[type] error ===>> " + type);
@@ -104,6 +114,11 @@
                    positionZ = (item.bay1-1)*-ref.binHeight || 0;
                    clone.name = item.loc_no + "-" + "Goods";
                    clone.traverse (function (child) {
                        if (child instanceof THREE.Mesh) {
                            child.name = item.loc_no + "-" + child.name;
                        }
                    })
                    break;
                case 2:
                    positionX = ref.position.x || 0;
@@ -115,6 +130,11 @@
                    positionZ -= 138 + 20;
                    clone.name = item.wrkNo + "-" + "Goods";
                    clone.traverse (function (child) {
                        if (child instanceof THREE.Mesh) {
                            child.name = item.wrkNo + "-" + child.name;
                        }
                    })
                    break;
                default:
                    console.error("InitGoods param[type] error ===>> " + type);
static/js/utils/DataShow.js
New file
@@ -0,0 +1,51 @@
function DataShow(type,no) {
    this.type=type;
    this.no=no;
    this.colRowDistributionChart = null;
    this.RowDistributionChart = null;
}
DataShow.prototype.showHint=function(){
    let htmltext='';
    return htmltext='<p>仓库编码:'+ 12312 +'</p>';
    let dataAnalyze = new DataAnalyze(this.no);
   if(this.type=='StoreSign'||this.type=='Store')
   {
       let store= dataAnalyze.getStore(this.no);
       htmltext='<p>仓库编码:'+store.No +'</p>';
       htmltext+='<p>仓库名称:'+store.Name +'</p>';
       htmltext+='<p>总库存:'+dataAnalyze.getStoreTotalBin(this.no) +'</p>';
       htmltext+='<p>已占库存:'+dataAnalyze.getStoreOccurpyBin(this.no) +'</p>';
       htmltext+='<p>今日入库:'+dataAnalyze.getStoreTotalBin(this.no) +'</p>';
       htmltext+='<p>今日出库:'+dataAnalyze.getStoreOccurpyBin(this.no) +'</p>';
       htmltext+='<p1>提示:双击可查看详细信息</p1>';
   }
    else if(this.type=='StoreGroup')
    {
        let group= dataAnalyze.getGroup(this.no);
        htmltext='<p>编码:'+group.No +'</p>';
        htmltext+='<p>名称:'+group.Name +'</p>';
        htmltext+='<p>总库存:'+dataAnalyze.getGroupTotalBin(this.no) +'</p>';
        htmltext+='<p>已占库存:'+dataAnalyze.getGroupOccurpyBin(this.no) +'</p>';
        htmltext+='<p>今日入库:'+dataAnalyze.getGroupTotalBin(this.no) +'</p>';
        htmltext+='<p>今日出库:'+dataAnalyze.getGroupOccurpyBin(this.no) +'</p>';
        htmltext+='<p1>提示:双击可查看详细信息</p1>';
    }
    else if(this.type=='StoreGoods')
    {
        let bin= dataAnalyze.getBin(this.no);
        htmltext='<p>编码:'+bin.No +'</p>';
        htmltext+='<p>名称:'+bin.Name +'</p>';
        htmltext+='<p>条码号:'+bin.Barcode +'</p>';
        htmltext+='<p>状态:'+bin.State +'</p>';
    }
    return htmltext;
}
views/index.html
@@ -23,9 +23,12 @@
    <script type="text/javascript" src="../static/js/object/CrnTask.js"></script>
    <script type="text/javascript" src="../static/js/object/Floor.js"></script>
    <script type="text/javascript" src="../static/js/object/ObjectSelect.js"></script>
    <script type="text/javascript" src="../static/js/utils/DataShow.js"></script>
</head>
<body>
<div id="label"></div>
<!-- 控制面板 -->
<div id="sidebar">
    <button id="sidebar-btn" onclick="sidebar()">展示</button>