解决打包问题
This commit is contained in:
parent
48d6583a03
commit
91ce993270
|
|
@ -2,4 +2,4 @@
|
|||
ENV = production
|
||||
|
||||
# 线上环境接口地址
|
||||
VITE_API_URL = 'https://cashierclient.sxczgkj.cn/cashier-client/'
|
||||
VITE_API_URL = 'https://cashierclient.sxczgkj.cn/cashier-client/api/'
|
||||
|
|
@ -9,7 +9,6 @@ lerna-debug.log*
|
|||
|
||||
node_modules
|
||||
release
|
||||
dist-electron
|
||||
|
||||
dist
|
||||
dist-ssr
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
"use strict";
|
||||
const electron = require("electron");
|
||||
const path$1 = require("path");
|
||||
const path = require("path");
|
||||
function printUtils(params) {
|
||||
return new Promise(async (resolvePrint, rejectPrint) => {
|
||||
let subMainWindow = new electron.BrowserWindow({
|
||||
|
|
@ -13,7 +13,7 @@ function printUtils(params) {
|
|||
enableRemoteModule: true
|
||||
}
|
||||
});
|
||||
subMainWindow.loadFile(path$1.join(__dirname, "../public/print.html"));
|
||||
subMainWindow.loadFile(path.join(__dirname, "../public/print.html"));
|
||||
subMainWindow.webContents.on("did-finish-load", async (res) => {
|
||||
subMainWindow.webContents.openDevTools();
|
||||
console.log("网页加载完成", res);
|
||||
|
|
@ -28,16 +28,15 @@ function printUtils(params) {
|
|||
});
|
||||
});
|
||||
}
|
||||
const NODE_ENV = process.env.NODE_ENV;
|
||||
electron.app.whenReady().then(() => {
|
||||
const win = new electron.BrowserWindow({
|
||||
title: "银收客",
|
||||
width: 1200,
|
||||
height: 800,
|
||||
fullscreenable: true,
|
||||
fullscreen: true,
|
||||
fullscreen: false,
|
||||
simpleFullscreen: true,
|
||||
frame: false,
|
||||
frame: true,
|
||||
webPreferences: {
|
||||
// 集成网页和 Node.js,也就是在渲染进程中,可以调用 Node.js 方法
|
||||
nodeIntegration: true,
|
||||
|
|
@ -47,11 +46,9 @@ electron.app.whenReady().then(() => {
|
|||
if (process.env.VITE_DEV_SERVER_URL) {
|
||||
win.loadURL(process.env.VITE_DEV_SERVER_URL);
|
||||
} else {
|
||||
win.loadFile(path.join(__dirname, "../dist/index.html"));
|
||||
}
|
||||
if (NODE_ENV == "development") {
|
||||
win.webContents.openDevTools();
|
||||
win.loadFile(path.resolve(__dirname, "../dist/index.html"));
|
||||
}
|
||||
win.webContents.openDevTools();
|
||||
electron.app.on("activate", () => {
|
||||
if (electron.BrowserWindow.getAllWindows().length === 0) {
|
||||
createWindow();
|
||||
|
|
|
|||
|
|
@ -1,17 +1,16 @@
|
|||
import { app, BrowserWindow, ipcMain } from "electron";
|
||||
import path from 'path'
|
||||
import { printUtils } from './printUtils'
|
||||
|
||||
const NODE_ENV = process.env.NODE_ENV
|
||||
|
||||
app.whenReady().then(() => {
|
||||
const win = new BrowserWindow({
|
||||
title: "银收客",
|
||||
width: 1200,
|
||||
height: 800,
|
||||
fullscreenable: true,
|
||||
fullscreen: true,
|
||||
fullscreen: false,
|
||||
simpleFullscreen: true,
|
||||
frame: false,
|
||||
frame: true,
|
||||
webPreferences: {
|
||||
// 集成网页和 Node.js,也就是在渲染进程中,可以调用 Node.js 方法
|
||||
nodeIntegration: true,
|
||||
|
|
@ -21,14 +20,12 @@ app.whenReady().then(() => {
|
|||
|
||||
// You can use `process.env.VITE_DEV_SERVER_URL` when the vite command is called `serve`
|
||||
if (process.env.VITE_DEV_SERVER_URL) {
|
||||
win.loadURL(process.env.VITE_DEV_SERVER_URL); // 使用vite开发服务的url路径访问应用
|
||||
win.loadURL(process.env.VITE_DEV_SERVER_URL);
|
||||
// 使用vite开发服务的url路径访问应用
|
||||
} else {
|
||||
win.loadFile(path.join(__dirname, '../dist/index.html')); // 打包后使用文件路径访问应用
|
||||
}
|
||||
|
||||
if (NODE_ENV == 'development') {
|
||||
win.webContents.openDevTools();
|
||||
win.loadFile(path.resolve(__dirname, '../dist/index.html')); // 打包后使用文件路径访问应用
|
||||
}
|
||||
win.webContents.openDevTools();
|
||||
|
||||
app.on("activate", () => {
|
||||
// 在 macOS 系统内, 如果没有已开启的应用窗口
|
||||
|
|
|
|||
29
package.json
29
package.json
|
|
@ -6,7 +6,8 @@
|
|||
"scripts": {
|
||||
"dev": "chcp 65001 && vite",
|
||||
"build": "vite build && electron-builder",
|
||||
"preview": "vite preview"
|
||||
"preview": "vite preview",
|
||||
"build:win": "vite build && electron-builder --w"
|
||||
},
|
||||
"dependencies": {
|
||||
"@element-plus/icons-vue": "^2.3.1",
|
||||
|
|
@ -31,27 +32,37 @@
|
|||
"vite-plugin-electron-renderer": "^0.14.5"
|
||||
},
|
||||
"build": {
|
||||
"appId": "com.example.app",
|
||||
"appId": "com.cashierdesktop.app",
|
||||
"productName": "cashier_desktop",
|
||||
"asar": true,
|
||||
"files": [
|
||||
"./dist/**/*",
|
||||
"./dist-electron/**/*"
|
||||
],
|
||||
"directories": {
|
||||
"buildResources": "build",
|
||||
"output": "release"
|
||||
},
|
||||
"win": {
|
||||
"icon": "./src/assets/logo.ico",
|
||||
"target": "nsis"
|
||||
"icon": "./public/logo.ico",
|
||||
"target": [
|
||||
{
|
||||
"target": "nsis",
|
||||
"arch": [
|
||||
"ia32"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"nsis": {
|
||||
"oneClick": false,
|
||||
"allowElevation": true,
|
||||
"allowToChangeInstallationDirectory": true,
|
||||
"installerIcon": "./src/assets/logo.ico",
|
||||
"uninstallerIcon": "./src/assets/logo.ico",
|
||||
"installerHeaderIcon": "./src/assets/logo.ico",
|
||||
"installerIcon": "./public/logo.ico",
|
||||
"uninstallerIcon": "./public/logo.ico",
|
||||
"installerHeaderIcon": "./public/logo.ico",
|
||||
"createDesktopShortcut": true,
|
||||
"createStartMenuShortcut": true,
|
||||
"license": "LICENSE.txt"
|
||||
"createStartMenuShortcut": true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
|
|
@ -49,36 +49,28 @@
|
|||
</head>
|
||||
|
||||
<body>
|
||||
<br />
|
||||
<section id="app">
|
||||
<div class="title_wrap">
|
||||
<div class="title">
|
||||
<b>{{data.shop_name}}</b>
|
||||
</div>
|
||||
<div class="min_title">结账单</div>
|
||||
</div>
|
||||
<div class="item b">NO:{{data.orderId}}</div>
|
||||
<div class="item b">开始时间:2023-3-4 16:32:54</div>
|
||||
<div class="item b">结束时间:2023-3-4 16:32:54</div>
|
||||
<div class="item b">打印人:002-蔡紫薇 打印次数:第一次打印</div>
|
||||
<div class="item b">品相费:450</div>
|
||||
<div class="item b">服务费:280</div>
|
||||
<div v-for="(item,index) in data.carts" :key="index">
|
||||
<div class="item">{{item.name}} {{item.number}}</div>
|
||||
<br />
|
||||
</div>
|
||||
<div class="item b">收银员:张三</div>
|
||||
<RS:2><L><CB>####### 6 ######</CB></L><BR>
|
||||
<RS:2><C>*沙县小吃*</C><BR>
|
||||
<RS:2><CB>--已在线支付--</CB><BR>
|
||||
<RS:2><C>----------------</C><BR>
|
||||
送达时间: 2021-01-04 13:28:50<BR>
|
||||
送达时间: 2021-01-04 12:28:50<BR>
|
||||
订单编号: 1200897812792015996<BR>
|
||||
-------01号篮子------<BR>
|
||||
<L>爆炒肥肠 x2 80.0</L><BR>
|
||||
<L>蚂蚁上树 x1 12.3</L><BR>
|
||||
[会员减配送费: 0.0]<BR>
|
||||
<RS:1>[商家承担的配送费: 1.0]<BR>
|
||||
配送费: ¥1.0<BR>
|
||||
<B>实付: ¥43.3</B><BR>
|
||||
<B>手机号: 13012345678</B><BR>
|
||||
<RS:2><B>仲恺高新区惠风西3路1号</B><BR>
|
||||
备 注: 不要辣椒<BR>
|
||||
发票抬头: 惠州市博实结科技有限公司<BR>
|
||||
<LOGO>
|
||||
<CUT>
|
||||
</section>
|
||||
<div class="item b">电话</div>
|
||||
<br />
|
||||
<div class="item b">地址:陕西省西安市灞桥区后海餐厅一二三</div>
|
||||
<br />
|
||||
<div class="item b">--------------------------------</div>
|
||||
<br />
|
||||
<div class="item b">--------------------------------</div>
|
||||
<br />
|
||||
<div class="item b">--------------------------------</div>
|
||||
<br />
|
||||
<script type="module">
|
||||
const { ipcRenderer } = require("electron");
|
||||
import {
|
||||
|
|
|
|||
|
|
@ -1 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
|
||||
|
Before Width: | Height: | Size: 1.5 KiB |
|
|
@ -52,9 +52,9 @@ router.beforeEach((to, from) => {
|
|||
}
|
||||
|
||||
:root {
|
||||
--r: 47;
|
||||
--g: 175;
|
||||
--b: 162;
|
||||
--r: 24;
|
||||
--g: 124;
|
||||
--b: 170;
|
||||
--r-lighter: calc(var(--r) + (255 - var(--r)) * 0.2);
|
||||
--g-lighter: calc(var(--g) + (255 - var(--g)) * 0.2);
|
||||
--b-lighter: calc(var(--b) + (255 - var(--b)) * 0.2);
|
||||
|
|
|
|||
|
|
@ -142,6 +142,8 @@ const createOrderLoading = ref(false)
|
|||
|
||||
// 取餐码
|
||||
const masterId = ref('')
|
||||
const uuid = ref('')
|
||||
|
||||
// 挂单量
|
||||
const pendingCartNum = ref(0)
|
||||
|
||||
|
|
@ -197,7 +199,7 @@ async function pendingCart(params, status = true) {
|
|||
status: status,
|
||||
uuid: params.uuid
|
||||
})
|
||||
if (status && !cartList.value.length) createCodeAjax()
|
||||
if (status && cartList.value.length) createCodeAjax()
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
}
|
||||
|
|
@ -255,7 +257,8 @@ async function addCart(params, type = 'add') {
|
|||
number: params.number || 1,
|
||||
isPack: params.isPack || false,
|
||||
isGift: params.isGift || false,
|
||||
cartId: type == 'add' ? '' : params.id
|
||||
cartId: type == 'add' ? '' : params.id,
|
||||
uuid: params.uuid || store.userInfo.uuid
|
||||
})
|
||||
masterId.value = res
|
||||
goodsRef.value.updateData()
|
||||
|
|
@ -281,10 +284,12 @@ async function queryCartAjax() {
|
|||
}
|
||||
}
|
||||
|
||||
// 获取取件码
|
||||
// 获取取餐码
|
||||
async function createCodeAjax() {
|
||||
try {
|
||||
const res = await createCode({ shopId: store.userInfo.shopId })
|
||||
const res = await createCode({
|
||||
shopId: store.userInfo.shopId
|
||||
})
|
||||
masterId.value = res.code
|
||||
// masterId.value = '#13'
|
||||
queryCartAjax()
|
||||
|
|
|
|||
|
|
@ -3,46 +3,48 @@
|
|||
<div class="logo">
|
||||
<el-image :src="logo" style="width: 180px"></el-image>
|
||||
</div>
|
||||
<div class="form-wrap">
|
||||
<!-- <div class="reg-wrap">
|
||||
<div class="form-wrap" style="display: flex;align-items: center;">
|
||||
<div style="flex: 1;">
|
||||
<!-- <div class="reg-wrap">
|
||||
<router-link :to="{ name: 'register' }">
|
||||
<el-link type="primary">注册</el-link>
|
||||
</router-link>
|
||||
</div> -->
|
||||
<div class="header">
|
||||
<span class="t1">银收客</span>
|
||||
<span class="t2">收银、库存、营销、支付等业务一体化解决方案</span>
|
||||
</div>
|
||||
<el-form ref="formRef" :model="form" :rules="rules" label-position="top" hide-required-asterisk>
|
||||
<!-- <el-form-item label="注册商户号" prop="shopCode">
|
||||
<el-input v-model="form.shopCode" placeholder="请输入注册商户号"></el-input>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="手机号码" prop="phone">
|
||||
<el-input v-model="form.phone" placeholder="请输入11位手机号码"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="登录密码" prop="password">
|
||||
<el-input v-model="form.password" type="password" placeholder="请输入登录密码"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<div style="width: 100%; display: flex; justify-content: flex-end">
|
||||
<router-link :to="{ name: 'register' }">
|
||||
<el-link type="info">忘记密码</el-link>
|
||||
</router-link>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" style="width: 100%" :loading="loading" @click="submitHandle">
|
||||
<span v-if="!loading">登录</span>
|
||||
<span v-else>登录中...</span>
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button plain style="width: 100%" @click="logout">退出</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div class="version">
|
||||
<el-text size="large">Ver2.1.6</el-text>
|
||||
<el-text size="large">陕西超掌柜科技有限公司</el-text>
|
||||
<div class="header">
|
||||
<span class="t1">银收客</span>
|
||||
<span class="t2">收银、库存、营销、支付等业务一体化解决方案</span>
|
||||
</div>
|
||||
<el-form ref="formRef" :model="form" :rules="rules" label-position="top" hide-required-asterisk>
|
||||
<el-form-item label="商户号" prop="merchantName">
|
||||
<el-input v-model="form.merchantName" placeholder="请输入注册商户号"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号码" prop="loginName">
|
||||
<el-input v-model="form.loginName" placeholder="请输入11位手机号码"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="登录密码" prop="password">
|
||||
<el-input v-model="form.password" type="password" placeholder="请输入登录密码"></el-input>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item>
|
||||
<div style="width: 100%; display: flex; justify-content: flex-end">
|
||||
<router-link :to="{ name: 'register' }">
|
||||
<el-link type="info">忘记密码</el-link>
|
||||
</router-link>
|
||||
</div>
|
||||
</el-form-item> -->
|
||||
<el-form-item>
|
||||
<el-button type="primary" style="width: 100%" :loading="loading" @click="submitHandle">
|
||||
<span v-if="!loading">登录</span>
|
||||
<span v-else>登录中...</span>
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button plain style="width: 100%" @click="logout">退出</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div class="version">
|
||||
<el-text size="large">Ver2.1.6</el-text>
|
||||
<el-text size="large">陕西超掌柜科技有限公司</el-text>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -66,30 +68,32 @@ const loading = ref(false);
|
|||
|
||||
|
||||
const form = reactive({
|
||||
shopCode: "",
|
||||
phone: "",
|
||||
password: "",
|
||||
serialNumber: RandomNumBoth(1000, 9999),
|
||||
clientType: 'pc',
|
||||
merchantName: '18821670757',
|
||||
loginName: "18821670757",
|
||||
password: "123456",
|
||||
});
|
||||
|
||||
const rules = reactive({
|
||||
shopCode: [
|
||||
merchantName: [
|
||||
{
|
||||
required: true,
|
||||
message: "请输入注册商户号",
|
||||
message: " ",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
phone: [
|
||||
loginName: [
|
||||
{
|
||||
required: true,
|
||||
message: "请输入11位手机号码",
|
||||
message: " ",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
password: [
|
||||
{
|
||||
required: true,
|
||||
message: "请输入登录密码",
|
||||
message: " ",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
|
|
@ -99,14 +103,7 @@ const rules = reactive({
|
|||
const submitHandle = () => {
|
||||
formRef.value.validate(async (valid) => {
|
||||
if (valid) {
|
||||
const params = {
|
||||
serialNumber: RandomNumBoth(1000, 9999),
|
||||
clientType: 'pc',
|
||||
loginName: form.phone,
|
||||
password: form.password
|
||||
}
|
||||
|
||||
store.userlogin(params).then((res) => {
|
||||
store.userlogin(form).then((res) => {
|
||||
loading.value = true;
|
||||
ElMessage.success("登录成功");
|
||||
setTimeout(() => {
|
||||
|
|
@ -137,6 +134,10 @@ const logout = () => {
|
|||
height: 100vh;
|
||||
background-color: #efefef;
|
||||
|
||||
:deep(.el-form-item__label) {
|
||||
font-size: var(--el-font-size-base);
|
||||
}
|
||||
|
||||
.logo {
|
||||
flex: 1;
|
||||
height: inherit;
|
||||
|
|
|
|||
Loading…
Reference in New Issue