李喆(开发组)
2025-11-18 f8f6aef5508148a784c05e71366796bb0b61164d
Merge branch 'new' of http://122.9.151.159:9090/r/smart-web into new
已添加1个文件
已修改7个文件
109 ■■■■ 文件已修改
.env.development 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
.env.local 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/config/index.js 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/console/workstation/index.vue 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/mdc/processParam/index.vue 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/mdc/realtime-status/index.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.env.development
@@ -11,7 +11,7 @@
VUE_APP_TITLE = åˆ¶é€ ä¿¡æ¯ç®¡ç†ç³»ç»Ÿ
# æŽ¥å£åœ°å€
VUE_APP_API_BASEURL =  http://120.46.212.231:85
VUE_APP_API_BASEURL =  http://120.46.212.231:4102
# æœ¬åœ°ç«¯å£
VUE_APP_PORT = 2800
.env.local
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
###
 # @Date: 2024-03-23 09:49:06
 # @LastEditors: gaoshp
 # @LastEditTime: 2025-03-24 21:39:04
 # @FilePath: /cps-web/.env.local
###
# æœ¬åœ°çŽ¯å¢ƒ
NODE_ENV = local
# æ ‡é¢˜
VUE_APP_TITLE = åˆ¶é€ ä¿¡æ¯ç®¡ç†ç³»ç»Ÿ
# æŽ¥å£åœ°å€
VUE_APP_API_BASEURL =  http://localhost:4102
# æœ¬åœ°ç«¯å£
VUE_APP_PORT = 2800
# æ˜¯å¦å¼€å¯ä»£ç†
VUE_APP_PROXY = true
package.json
@@ -5,6 +5,7 @@
    "scripts": {
        "serve": "vue-cli-service serve",
        "start": "vue-cli-service serve",
        "local": "vue-cli-service serve --mode local",
        "build": "vue-cli-service build --report",
        "lint": "vue-cli-service lint"
    },
src/config/index.js
@@ -1,9 +1,9 @@
/*
 * @Author: lzhe lzhe@example.com
 * @Date: 2024-03-26 10:28:33
 * @LastEditors: lzhe lzhe@example.com
 * @LastEditTime: 2024-06-20 23:30:15
 * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/config/index.js
 * @LastEditors: gaoshp
 * @LastEditTime: 2025-11-14 20:21:40
 * @FilePath: /cps-web/src/config/index.js
 * @Description: è¿™æ˜¯é»˜è®¤è®¾ç½®,请设置`customMade`, æ‰“å¼€koroFileHeader查看配置 è¿›è¡Œè®¾ç½®: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
const DEFAULT_CONFIG = {
@@ -20,9 +20,9 @@
    CORE_VER: "1.6.9",
    //接口地址
    API_URL: process.env.NODE_ENV === 'development' && process.env.VUE_APP_PROXY === 'true' ? "/api" : process.env.VUE_APP_API_BASEURL,
    API_URL: ['development','local'].includes(process.env.NODE_ENV) && process.env.VUE_APP_PROXY === 'true' ? "/api" : process.env.VUE_APP_API_BASEURL,
    //请求超时
    TIMEOUT: 10000,
    TIMEOUT: 20000,
    //TokenName
    TOKEN_NAME: "Blade-Auth",
src/views/console/workstation/index.vue
@@ -226,7 +226,7 @@
                        </el-aside>
                        <el-container>
                            <el-main class="" v-show="addGroupShow">
                                <el-form v-show="treeCheckedNode.id == 1" :model="form" :rules="rules" ref="dialogForm"
                                <el-form v-if="treeCheckedNode.id == 1" :model="form" :rules="rules" ref="dialogForm"
                                    label-width="200px" label-position="left">
                                    <!-- <el-form-item label="产线标签" prop="groupTag">
                                        <el-select v-model="form.groupTag" clearable placeholder="产线标签"
@@ -248,8 +248,8 @@
                                    </el-form-item>
                                </el-form>
                                <el-form
                                    v-show="group_tag.map(item => item.dictKey).includes(treeCheckedNode.groupTag) || beltline_type.map(item => item.dictKey).includes(treeCheckedNode.groupTag) || treeCheckedNode.id == 101"
                                    :model="form" :rules="rules" ref="dialogForm" label-width="200px"
                                    v-if="group_tag.map(item => item.dictKey).includes(treeCheckedNode.groupTag) || beltline_type.map(item => item.dictKey).includes(treeCheckedNode.groupTag) || treeCheckedNode.id == 101"
                                    :model="form" :rules="rules" ref="dialogForm1" label-width="200px"
                                    label-position="left">
                                    <el-form-item label="工位组标签" prop="groupTag">
                                        <el-select v-model="form.groupTag" clearable placeholder="工位组标签"
@@ -293,7 +293,7 @@
                                    <li>备注: {{ treeCheckedNode.remark }}</li>
                                </ul>
                                <el-form
                                    v-show="beltline_type.map(item => item.dictKey).includes(treeCheckedNode.groupTag)"
                                    v-if="beltline_type.map(item => item.dictKey).includes(treeCheckedNode.groupTag)"
                                    :model="form" :rules="rules" ref="dialogForm" label-width="200px"
                                    label-position="left">
                                    <el-form-item label="产线标签" prop="groupTag">
@@ -315,7 +315,7 @@
                                            placeholder="备注"></el-input>
                                    </el-form-item>
                                </el-form>
                                <el-form v-show="group_tag.map(item => item.dictKey).includes(treeCheckedNode.groupTag)"
                                <el-form v-if="group_tag.map(item => item.dictKey).includes(treeCheckedNode.groupTag)"
                                    :model="form" :rules="rules" ref="dialogForm" label-width="200px"
                                    label-position="left">
                                    <el-form-item label="工位组标签" prop="groupTag">
@@ -616,7 +616,13 @@
        },
        addChild() {
            this.addGroupShow = true
            this.$refs.dialogForm.resetFields()
            this.$nextTick(() => {
                Object.keys(this.form).forEach(key => {
                    this.form[key] = ''
                })
                // this.$refs.dialogForm.resetFields()
            })
        },
        groupClick(node) {
            this.treeCheckedNode = node
src/views/mdc/processParam/index.vue
@@ -278,6 +278,7 @@
            })
        },
        setLineOptions(data, myname) {
            console.log('data0',data)
            if (!data) return
            // console.log(data, myname)
            let xAxis = data?.map(item => {
@@ -328,6 +329,9 @@
        },
        setDeviceStatusOptions(data, myname) {
            debugger
            //console.log('data1',data)
            //console.log('endtime1',this.timeRange.endTime)
            let total = Math.abs(moment(this.timeRange.startTime).diff(moment(this.timeRange.endTime)))
            let start = this.timeRange.startTime
            let len = data?.data?.length
@@ -350,6 +354,10 @@
                }
                // }
                // let color = !name ? 'transparent' : data.data[i - 1].color
                //name = name+'s'
                if(name == undefined){
                    name = "无数据"
                }
                return {
                    name,
                    type: 'bar',
@@ -436,18 +444,21 @@
            }
            let key = myname === 'DeviceStatus' ? 'name' : 'value'
            data.forEach(v => {
                if (obj[v[key]]) {
                    obj[v[key]] += moment(v.time).valueOf() - moment(start).valueOf()
                } else {
                    obj[v[key]] = moment(v.time).valueOf() - moment(start).valueOf()
                if(v[key] != undefined){
                    if (obj[v[key]]) {
                        obj[v[key]] += moment(v.time).valueOf() - moment(start).valueOf()
                    } else {
                        obj[v[key]] = moment(v.time).valueOf() - moment(start).valueOf()
                    }
                    start = v.time
                }
                start = v.time
            })
            let result = Object.keys(obj).map(key => {
                return {
                    value: obj[key] / 1000,
                    name: key,
                    name: key,//运行/报警/待机
                    // itemStyle: {
                    //     color: item.color, // è¿™ä¸€è¡Œå›ºå®šçš„颜色值需要删除或注释
                    // },
@@ -455,10 +466,13 @@
            }).map(v => {
                if (myname === 'DeviceStatus') {
                    if(v.name != 'undefined') {
                        //#D3D3D3 ç°è‰²
                        //let itemFound = this.legend.find(item => item.name === v.name)
                        return {
                            ...v,
                            itemStyle: {
                                color: this.legend.find(item => item.name === v.name).color
                                //color: itemFound?itemFound.color:'#D3D3D3'
                            }
                        }
                    }
@@ -471,7 +485,12 @@
                    trigger: 'item',
                    formatter: function (params) {
                        let d = moment.duration(params.value, 'seconds')
                        return `${params.name}: ${d.hours()}小时${d.minutes()}分${d.seconds()}秒`
                        let nameVal = params.name
                        if(params.name == undefined){
                            nameVal = '无数据'
                        }
                        //return `${params.name}: ${d.hours()}小时${d.minutes()}分${d.seconds()}秒`
                        return `${nameVal}: ${d.hours()}小时${d.minutes()}分${d.seconds()}秒`
                    }
                },
                legend: {
src/views/mdc/realtime-status/index.vue
@@ -212,6 +212,7 @@
            this.gettimestatus();
        },
        next() {
            if ((this.current * this.line) < this.total / this.column) {
                this.current = Number(this.current) + 1;
                this.gettimestatus();
@@ -292,6 +293,7 @@
                                if (eventData.data.DeviceStatus) {
                                    var time = moment(eventData.data.DeviceStatus.t).format('YYYY-MM-DD HH:mm:ss');
                                    var preT = moment(eventData.data.DeviceStatus.preT).format('YYYY-MM-DD HH:mm:ss');
                                    //console.log('time='+time+",preT="+preT);
                                    var diffTime = that.changeTime(time,preT);  //转换成差值(时分秒)
                                    var diffTime = diffTime;
                                    item.time = diffTime;
@@ -324,8 +326,12 @@
                                    } else {
                                        if(eventData.data[item1.key]) {
                                            if(item1.key == "Alarm") {
                                                var vJson = JSON.parse(eventData.data[item1.key].v);
                                                item1.code = JSON.stringify(vJson[0]);
                                                try {
                                                  var vJson = JSON.parse(eventData.data[item1.key].v);
                                                  item1.code = JSON.stringify(vJson[0]);
                                                } catch (e) {
                                                  item1.code = eventData.data[item1.key].v;
                                                }
                                            }else {
                                                item1.code = eventData.data[item1.key].v;
                                            }
vue.config.js
@@ -1,7 +1,7 @@
/*
 * @Date: 2024-03-23 09:49:06
 * @LastEditors: lzhe lzhe@example.com
 * @LastEditTime: 2024-11-27 14:59:26
 * @LastEditors: gaoshp
 * @LastEditTime: 2025-11-04 22:19:58
 * @FilePath: /cps-web/vue.config.js
 */
const { defineConfig } = require('@vue/cli-service')
@@ -18,10 +18,14 @@
    //开发服务,build后的生产模式还需nginx代理
    devServer: {
        client: {
            overlay: false
        },
        allowedHosts: 'all',
        open: false, //运行后自动打开浏览器
        port: process.env.VUE_APP_PORT, //挂载端口
        proxy: {
            /*
            '/api/smart-collect': {
                target: 'http://120.46.212.231:5102',
                // ws: true,
@@ -53,12 +57,14 @@
                pathRewrite: {
                    '^/api': '/'
                }
            },
            },*/
            '/api': {
                // target: 'http://localhost:4102',
                target: process.env.VUE_APP_API_BASEURL,
                ws: true,
                pathRewrite: {
                    // '^/api': '/'
                     //'^/api': '/api'
                     '^/api': '/'
                }
            },