From d9bd4cfe2905b9e98009d35c124f6d2d9a0dd5e7 Mon Sep 17 00:00:00 2001 From: jjLv <1981429112@qq.com> Date: Tue, 29 Oct 2024 18:03:15 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E8=B4=AD=E7=BB=91=E5=AE=9A=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E9=85=8D=E7=BD=AE=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/ma/device.js | 9 + src/api/purchase/goodsBind.js | 100 ++ src/router/index.js | 5 + src/utils/chapter.js | 76 ++ src/utils/globalUrl.js | 19 + src/views/material/ma/device/index.vue | 46 +- src/views/material/ma/supplier/index.vue | 24 +- .../goodsBind/component/bindQrTools.vue | 914 ++++++++++++++++++ .../goodsBind/component/bindTools.vue | 665 +++++++++++++ .../purchase/goodsBind/component/home.vue | 575 +++++++++++ .../material/purchase/goodsBind/index.vue | 79 ++ src/views/qrCode/qrCode.vue | 226 +++++ 12 files changed, 2720 insertions(+), 18 deletions(-) create mode 100644 src/api/purchase/goodsBind.js create mode 100644 src/utils/chapter.js create mode 100644 src/utils/globalUrl.js create mode 100644 src/views/material/purchase/goodsBind/component/bindQrTools.vue create mode 100644 src/views/material/purchase/goodsBind/component/bindTools.vue create mode 100644 src/views/material/purchase/goodsBind/component/home.vue create mode 100644 src/views/material/purchase/goodsBind/index.vue create mode 100644 src/views/qrCode/qrCode.vue diff --git a/src/api/ma/device.js b/src/api/ma/device.js index a60090dc..c5d052e2 100644 --- a/src/api/ma/device.js +++ b/src/api/ma/device.js @@ -27,6 +27,15 @@ export function getDeviceType(query) { }) } +// 资产属性下拉框- +export function getZichanType(query) { + return request({ + url: '/material/bm_asset_attributes/list', + method: 'get', + params: query + }) +} + // 仓库管理--删除 export function delDevice(id) { return request({ diff --git a/src/api/purchase/goodsBind.js b/src/api/purchase/goodsBind.js new file mode 100644 index 00000000..b6fbb8a5 --- /dev/null +++ b/src/api/purchase/goodsBind.js @@ -0,0 +1,100 @@ +import request from '@/utils/request' + +//机具类型管理列表信息 +export function getListNewBuyBind(query) { + return request({ + url: '/material/purchase/bind/list', + method: 'get', + params: query, + }) +} + +//任务 详情 +export function getListDetail(query) { + return request({ + url: '/material/purchase/bind/details', + method: 'get', + params: query, + }) +} + +//任务 详情 +export function bindAllData(data) { + return request({ + url: '/material/purchase/bind/bind', + method: 'post', + data: data, + }) +} + +//二级页面 详情 +export function getListDetailById(query) { + return request({ + url: '/material/purchase/bind/getById', + method: 'get', + params: query, + }) +} + +// 导出 +export function exportNewBuy(data) { + return request({ + url: '/material/purchase/bind/downloadQrCode', + method: 'post', + responseType: 'blob', + data: data + }) +} + + + +//人员 详情 +export function getNoticePeople(query) { + return request({ + url: '/material/purchase_notice_person/list', + method: 'get', + params: query, + }) +} + +// 人员--删除 +export function delPeople(ids) { + return request({ + url: '/material/purchase_notice_person/' + ids, + method: 'delete', + }) +} + +// 人员管理--新增 +export function addNoticeUser(data) { + return request({ + url: '/material/purchase_notice_person/batchAddNoticePerson', + method: 'post', + data: data, + }) +} + +// 仓库管理--修改 +export function bmNoticeInfo(data) { + return request({ + url: '/material/purchase_notice_person/batchSendSms', + method: 'put', + data: data, + }) +} + + +//机具类型管理列表信息 +export function getUserAll() { + return request({ + url: '/system/user/list', + method: 'get', + }) +} + + + + + + + diff --git a/src/router/index.js b/src/router/index.js index 493b19f0..7c7c95c7 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -74,6 +74,11 @@ export const constantRoutes = [ } ] }, + { + path: '/qrCode/qrCodePage', + component: () => import('@/views/qrCode/qrCode'), + hidden: true + }, { path: '/user', component: Layout, diff --git a/src/utils/chapter.js b/src/utils/chapter.js new file mode 100644 index 00000000..69871a34 --- /dev/null +++ b/src/utils/chapter.js @@ -0,0 +1,76 @@ +let chapter = (text, companyName) => { + let canvas = document.getElementById("canvas"); + let context = canvas.getContext("2d"); + + //let text = "XXX专用章"; + //let companyName = "XXX科技股份有限公司"; + + // 绘制印章边框 + let width = canvas.width / 2; + let height = canvas.height / 2; + context.lineWidth = 3; + context.strokeStyle = "#f00"; + context.beginPath(); + context.arc(width, height, 80, 0, Math.PI * 2); //宽、高、半径 + context.stroke(); + + //画五角星 + create5star(context, width, height, 20, "#f00", 0); + + // 绘制印章名称 + context.font = "14px 宋体"; + context.textBaseline = "middle"; //设置文本的垂直对齐方式 + context.textAlign = "center"; //设置文本的水平对对齐方式 + context.lineWidth = 1; + context.strokeStyle = "#f00"; + context.strokeText(text, width, height + 50); + + // 绘制印章单位 + context.translate(width, height); // 平移到此位置, + context.font = "14px 宋体"; + let count = companyName.length; // 字数 + let angle = (4 * Math.PI) / (3 * (count - 1)); // 字间角度 + let chars = companyName.split(""); + let c; + for (let i = 0; i < count; i++) { + c = chars[i]; // 需要绘制的字符 + if (i == 0) { + context.rotate((5 * Math.PI) / 6); + } else { + context.rotate(angle); + } + + context.save(); + context.translate(65, 0); // 平移到此位置,此时字和x轴垂直,公司名称和最外圈的距离 + context.rotate(Math.PI / 2); // 旋转90度,让字平行于x轴 + context.strokeText(c, 0, 0); // 此点为字的中心点 + context.restore(); + } + + //绘制五角星 + function create5star(context, sx, sy, radius, color, rotato) { + context.save(); + context.fillStyle = color; + context.translate(sx, sy); //移动坐标原点 + context.rotate(Math.PI + rotato); //旋转 + context.beginPath(); //创建路径 + // let x = Math.sin(0); + // let y = Math.cos(0); + let dig = (Math.PI / 5) * 4; + for (let i = 0; i < 5; i++) { + //画五角星的五条边 + let x = Math.sin(i * dig); + let y = Math.cos(i * dig); + context.lineTo(x * radius, y * radius); + } + context.closePath(); + context.stroke(); + context.fill(); + context.restore(); + } + }; + + export default chapter; + + + \ No newline at end of file diff --git a/src/utils/globalUrl.js b/src/utils/globalUrl.js new file mode 100644 index 00000000..c4872dae --- /dev/null +++ b/src/utils/globalUrl.js @@ -0,0 +1,19 @@ +// const qrUrl = 'http://192.168.0.14:21624/qrCode/qrCodePage?qrCode='; //测试 +// const qrUrl = 'http://112.29.103.165:21626/qrCode/qrCodePage?qrCode='; //重庆 +// const qrUrl = 'http://112.29.103.165:21624/qrCode/qrCodePage?qrCode='; //宁夏 +// const qrUrl = 'https://z.csgmall.com.cn/gl/qrCode/qrCodePage?qrCode='; //南网 +const qrUrl = 'http://192.168.0.110:80/qrCode/qrCodePage?qrCode='; //本地 +// const qrUrl = process.env.NODE_ENV === 'production' ? 'http://192.168.0.14:18866/qrCode/qrCodePage?qrCode=' : 'http://192.168.0.14:21624/qrCode/qrCodePage?qrCode=' +// let qrUrl = '' +const origin = window.location.origin + +// qrUrl = origin + '/qrCode/qrCodePage?qrCode=' +// if (origin == 'http://112.29.103.165:21626') { +// qrUrl = 'http://112.29.103.165:21626/qrCode/qrCodePage?qrCode=' +// } else { +// qrUrl = 'http://192.168.0.14:18866/qrCode/qrCodePage?qrCode=' +// } + +export default { + qrUrl, +} diff --git a/src/views/material/ma/device/index.vue b/src/views/material/ma/device/index.vue index 01dc9812..8eb3ba81 100644 --- a/src/views/material/ma/device/index.vue +++ b/src/views/material/ma/device/index.vue @@ -68,7 +68,7 @@ - + @@ -157,8 +157,8 @@ - - + + @@ -192,8 +192,8 @@ - - + + @@ -210,8 +210,15 @@ - - + + + + @@ -233,15 +240,15 @@ - - + + - - + + @@ -276,7 +283,7 @@ + diff --git a/src/views/material/purchase/goodsBind/component/bindTools.vue b/src/views/material/purchase/goodsBind/component/bindTools.vue new file mode 100644 index 00000000..eeddb2bb --- /dev/null +++ b/src/views/material/purchase/goodsBind/component/bindTools.vue @@ -0,0 +1,665 @@ + + + + diff --git a/src/views/material/purchase/goodsBind/component/home.vue b/src/views/material/purchase/goodsBind/component/home.vue new file mode 100644 index 00000000..ff3b6c96 --- /dev/null +++ b/src/views/material/purchase/goodsBind/component/home.vue @@ -0,0 +1,575 @@ + + + + diff --git a/src/views/material/purchase/goodsBind/index.vue b/src/views/material/purchase/goodsBind/index.vue new file mode 100644 index 00000000..164d83e9 --- /dev/null +++ b/src/views/material/purchase/goodsBind/index.vue @@ -0,0 +1,79 @@ + + + \ No newline at end of file diff --git a/src/views/qrCode/qrCode.vue b/src/views/qrCode/qrCode.vue new file mode 100644 index 00000000..d705acb8 --- /dev/null +++ b/src/views/qrCode/qrCode.vue @@ -0,0 +1,226 @@ + + + +