diff --git a/src/assets/images/icon-paint.png b/src/assets/images/icon-paint.png new file mode 100644 index 00000000..d3b66032 Binary files /dev/null and b/src/assets/images/icon-paint.png differ diff --git a/src/assets/js/api/buildersDiary.js b/src/assets/js/api/buildersDiary.js index 52c692cd..f7fb0ce2 100644 --- a/src/assets/js/api/buildersDiary.js +++ b/src/assets/js/api/buildersDiary.js @@ -1,7 +1,7 @@ /** * api接口统一管理 施工日志 */ -import {post,get} from '../http' +import { post, get } from '../http' export const addBuildersDiaryApi = data => post('xmgl/projectBuildLog/add', data); //新增 施工日志 export const editBuildersDiaryApi = data => post('xmgl/projectBuildLog/edit', data); // 编辑 施工日志 @@ -10,3 +10,16 @@ export const deleteBuildersDiaryApi = data => post('xmgl/projectBuildLog/delete' //施工列表 export const getListDataApi = data => post('xmgl/projectBuildLog/list', data); //获取 施工日志 列表 +// 全部施工日志 +// 分页列表查询ocr施工日志信息 +export const getOcrBuildLogPageApi = data => get('xmgl/ocrBuildLog/page', data); +// 列表查询ocr施工日志信息 +export const getOcrBuildLogListApi = data => get('xmgl/ocrBuildLog/list', data); +// 添加ocr施工日志信息 +export const addOcrBuildLogApi = data => post('xmgl/ocrBuildLog/add', data); +// 编辑ocr施工日志信息 +export const editOcrBuildLogApi = data => post('xmgl/ocrBuildLog/edit', data); +// 删除ocr施工日志信息 +export const deleteOcrBuildLogApi = data => post('xmgl/ocrBuildLog/delete', data); +// 统计某月每天的ocr施工日志 +export const getOcrBuildLogCountOcrBuildLogForMonthApi = data => post('xmgl/ocrBuildLog/countOcrBuildLogForMonth', data); \ No newline at end of file diff --git a/src/assets/js/http.js b/src/assets/js/http.js index 3471b0fe..097ba0a5 100644 --- a/src/assets/js/http.js +++ b/src/assets/js/http.js @@ -206,6 +206,7 @@ if (process.env.NODE_ENV == "development") { // axios.defaults.baseURL = "https://zm.zhgdyun.com:11111"; // // axios.defaults.baseURL = "http://121.37.106.37:9809"; // axios.defaults.baseURL = "http://139.9.66.234:20628"; + // axios.defaults.baseURL = "http://jxj.zhgdyun.com:9500"; } else if (process.env.NODE_ENV == "debug") { axios.defaults.baseURL = "https://www.ceshi.com"; diff --git a/src/router/index.js b/src/router/index.js index b69ec0dd..7946ad06 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1984,6 +1984,12 @@ const routes2 = [{ component: () => import ("@/views/projectFront/buildersDiary/diaryList.vue"), }, + { + path: "/project/buildersDiary/buildersDiaryAll", + name: "施工日志_全部施工日志", + component: () => + import ("@/views/projectFront/buildersDiary/buildersDiaryAll.vue"), + }, { path: "/project/qualitySpringback/buildManage", name: "质量回弹_楼栋管理", diff --git a/src/store/index.js b/src/store/index.js index 3de891fa..4ef6fcef 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -102,7 +102,8 @@ export default new Vuex.Store({ // // WORKFLOWURL: 'http://47.93.215.234:19098/#/workspace/forms',//鞍钢测试平台工作流地址(弃用) // WORKFLOWURL: 'http://42.180.188.17:19998/#/workspace/forms', //鞍钢平台工作流地址 // WORKFLOWURL: "http://42.180.188.17:19098/#/workspace/forms", //鞍钢测试平台工作流地址 - + PREVIEWURL: "http://219.147.96.221:8012/onlinePreview", + // UPLOADURL: 'http://192.168.34.221:8111/upload/image', //演示平台 雄本地 // FILEURL: 'http://192.168.34.221:8111/image/', //演示平台 雄本地 diff --git a/src/views/companyAdmin/companyBigScreen/index.vue b/src/views/companyAdmin/companyBigScreen/index.vue index 63ae09b7..4c2bcefa 100644 --- a/src/views/companyAdmin/companyBigScreen/index.vue +++ b/src/views/companyAdmin/companyBigScreen/index.vue @@ -28,7 +28,9 @@ import { selectAllProjectInfoList, getRangeAddrByUserIdCompanyBigScreenApi, } from "@/assets/js/api/companyBigScreen.js"; - +import { + getSystemUserBySnApi +} from "@/assets/js/api/account.js"; // 响应式数据 const mapObj = ref(null); const projectSn = ref(""); @@ -92,6 +94,7 @@ const addMarker = (maskPolygon) => { console.log("点击了坐标点", data); marker.value = marker; mapObj.value.setCenter([e.lnglat.getLng(), e.lnglat.getLat()]); + getSystemUserBySn(data.projectSn); }); } }); @@ -149,7 +152,8 @@ const getRangeAddrByUserIdCompanyBigScreen = () => { } return prev; }, []); - loadMapScript().then(() => { + loadMapScript() + .then(() => { showProvinceMask(resultList); }) .catch((err) => { @@ -159,6 +163,24 @@ const getRangeAddrByUserIdCompanyBigScreen = () => { } }); }; +const getSystemUserBySn = (projectSn) => { + let data = { + sn: projectSn, + queryType:"projectLevel" + }; + getSystemUserBySnApi(data).then((res) => { + if (res.code == 200) { + if(res.result && res.result.length > 0) { + const result = res.result[0]; + let userId = result.userId; + window.open(`${window.location.protocol}//${window.location.host}/bigscreen/#/large?userId=${userId}&sn=$${projectSn}`, '_blank') + } else { + ElMessage.error("没有权限!"); + return; + } + } + }); +}; // 生命周期钩子 onMounted(() => { diff --git a/src/views/companyAdmin/qualityAndSafety/components/myPictode.vue b/src/views/companyAdmin/qualityAndSafety/components/myPictode.vue index 72efc092..fb34094c 100644 --- a/src/views/companyAdmin/qualityAndSafety/components/myPictode.vue +++ b/src/views/companyAdmin/qualityAndSafety/components/myPictode.vue @@ -50,7 +50,7 @@
低风险:0个
--> -
+
操作
import { fabric } from "fabric"; import "./index.scss"; - +fabric.Object.prototype.set({ + hasRotatingPoint: false, //是否显示旋转按钮 +}); const TOOLS = [ { name: "铅笔", type: "pencil", icon: "icon-pan_icon" }, { name: "实线", type: "line", icon: "icon-xian" }, @@ -242,6 +244,10 @@ export default { placement: { type: String, default: "left" }, configJson: { type: String, default: () => "" }, zonePlaceInfoId: { type: String, default: () => "" }, + isDrawingMode: { + type: Boolean, + default: true, + }, }, data() { return { @@ -276,7 +282,7 @@ export default { // http://192.168.34.133:8081/img/datacentre_icon2.d1e40835.png drawer: true, riskColorInfo: { - radio1: "rect", + radio1: "move", position: "", fontSize: "", @@ -492,7 +498,8 @@ export default { }, initCanvas() { this.boardObj = new fabric.Canvas(this.$refs.myCanvas, { - isDrawingMode: true, + isDrawingMode: this.isDrawingMode, + // isDrawingMode: true, selectable: true, selection: true, devicePixelRatio: true, @@ -533,7 +540,7 @@ export default { } ); } - this.changeTool("rect"); + this.changeTool("move"); }, // 回显方法 updateFillAndStrokeEcho() { @@ -967,6 +974,15 @@ export default { return this.boardObj; }, }, + computed: { + newWatch() { + const { configJson, zonePlaceInfoId } = this; + return { + configJson, + zonePlaceInfoId, + }; + }, + }, watch: { strokeColor(newVal) { if (this.boardObj) this.boardObj.freeDrawingBrush.color = newVal; @@ -974,10 +990,35 @@ export default { strokeWidth(newVal) { if (this.boardObj) this.boardObj.freeDrawingBrush.width = newVal; }, - zonePlaceInfoId(newVal) { - if (newVal) { + newWatch: { + handler(newVal) { + console.log(2222222, newVal) + this.removeEvent(); + if (this.boardObj) { + this.boardObj.dispose(); + this.boardObj = null; + } this.initCanvas(); this.initEvent(); + }, + deep: true, + }, + isDrawingMode(newVal) { + console.log(2222222222222, newVal); + if (this.boardObj) { + this.riskColorInfo.radio1 = "move"; + this.boardObj.isDrawingMode = newVal; + if (!newVal) { + this.removeEvent(); + if (this.boardObj) { + this.boardObj.dispose(); + this.boardObj = null; + } + this.initCanvas(); + this.initEvent(); + } else { + this.changeTool("move"); + } } }, }, @@ -1327,8 +1368,9 @@ export default { .board-box { // position: relative; background: white; - width: 567px; + // width: 567px; height: calc(100% - 68px - 68px); + width: 375px; position: absolute; top: 50%; left: 50%; diff --git a/src/views/companyAdmin/qualityAndSafety/ocrRecognitionArea.vue b/src/views/companyAdmin/qualityAndSafety/ocrRecognitionArea.vue index a43a4df0..7e3df75f 100644 --- a/src/views/companyAdmin/qualityAndSafety/ocrRecognitionArea.vue +++ b/src/views/companyAdmin/qualityAndSafety/ocrRecognitionArea.vue @@ -99,6 +99,10 @@ >
{{ item.zoneName }}
+
-
- 取 消 +
+ 取 消 0) { - this.selectZonePlace(this.ocrZonePlaceList[0]) + this.selectZonePlace(this.ocrZonePlaceList[0]); + } else { + const find = this.ocrZonePlaceList.find(item => item.id === this.zonePlaceInfo.id) + if(find) this.selectZonePlace(find); } } }); diff --git a/src/views/projectFront/buildersDiary/buildersDiaryAll.vue b/src/views/projectFront/buildersDiary/buildersDiaryAll.vue new file mode 100644 index 00000000..34dec6f5 --- /dev/null +++ b/src/views/projectFront/buildersDiary/buildersDiaryAll.vue @@ -0,0 +1,1324 @@ + + + \ No newline at end of file diff --git a/src/views/projectFront/buildersDiary/components/calendarView.vue b/src/views/projectFront/buildersDiary/components/calendarView.vue new file mode 100644 index 00000000..ea37824e --- /dev/null +++ b/src/views/projectFront/buildersDiary/components/calendarView.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/src/views/projectFront/buildersDiary/components/ledgerView.vue b/src/views/projectFront/buildersDiary/components/ledgerView.vue new file mode 100644 index 00000000..2afa6caa --- /dev/null +++ b/src/views/projectFront/buildersDiary/components/ledgerView.vue @@ -0,0 +1,175 @@ + + + + + + \ No newline at end of file diff --git a/src/views/projectFront/workTicketManage/homeworkControlProcess.vue b/src/views/projectFront/workTicketManage/homeworkControlProcess.vue index 462c5d64..13b67964 100644 --- a/src/views/projectFront/workTicketManage/homeworkControlProcess.vue +++ b/src/views/projectFront/workTicketManage/homeworkControlProcess.vue @@ -355,7 +355,7 @@
-
点击立即开始,则会下发指令到作业监控设备,开启设备录像。
+
点击立即开始后,将会下发工单任务至执法记录仪设备中,施工员需要到设备的工单任务中点击开始执行工单任务进行录音、录像、拍照。
@@ -660,7 +660,7 @@ icon="el-icon-circle-check" @click="onNextStep" size="medium" - >确定 + >{{ workTicketType == 1 ? "确定" : stepActive == 1 || workTicketBindCamera == 0 ? "确定" : "下一步" }}