From e6ee77f1700ec2ad9092e9ea0b3b9cc81ce0a23e Mon Sep 17 00:00:00 2001 From: fhysy <1149505133@qq.com> Date: Wed, 19 Feb 2025 16:59:07 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=92=A5=20feat(compiler):=20-=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4api=EF=BC=8C=E5=92=8C=E8=AF=B7=E6=B1=82=E5=B0=81?= =?UTF-8?q?=E8=A3=85=EF=BC=8C=E7=99=BB=E5=BD=95=E5=9C=B0=E5=9D=80=20-=20?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E9=A1=B5=E9=80=82=E9=85=8D=E5=9F=9F=E5=90=8D?= =?UTF-8?q?=E5=92=8C=E8=AF=B7=E6=B1=82=E5=8F=82=E6=95=B0=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E9=80=89=E6=8B=A9=EF=BC=88=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=9C=AA?= =?UTF-8?q?=E9=80=82=E9=85=8D=EF=BC=89=20-=20=E8=B0=83=E6=95=B4=E5=AF=B9?= =?UTF-8?q?=E6=8E=A5=E8=AE=A2=E5=8D=95=E3=80=81=E6=B6=88=E6=81=AF=E9=A1=B5?= =?UTF-8?q?=20-=20=E6=B7=BB=E5=8A=A0=E7=B4=A0=E6=9D=90=E5=BD=95=E5=85=A5?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E3=80=81=E8=AE=A2=E5=8D=95=E5=92=8C=E6=B6=88?= =?UTF-8?q?=E6=81=AF=E8=AF=A6=E6=83=85=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App.vue | 24 ++ common/api/api.js | 56 +++- common/api/orderApi.js | 147 +++++++++ common/api/request.js | 18 +- main.js | 4 +- manifest.json | 8 +- pages.json | 40 ++- pages/auth/passwordLogin.vue | 75 ++++- pages/fun/materialEdit.vue | 620 +++++++++++++++++++++++++++++++++++ pages/new/detail.vue | 90 +++++ pages/order/detail.vue | 306 +++++++++++++++++ pages/tabBar/new.vue | 129 ++------ pages/tabBar/order.vue | 272 +++++++++++---- 13 files changed, 1603 insertions(+), 186 deletions(-) create mode 100644 common/api/orderApi.js create mode 100644 pages/fun/materialEdit.vue create mode 100644 pages/new/detail.vue create mode 100644 pages/order/detail.vue diff --git a/App.vue b/App.vue index 28b9659..f52a0e5 100644 --- a/App.vue +++ b/App.vue @@ -53,4 +53,28 @@ min-height: 100%; } + + + \ No newline at end of file diff --git a/common/api/api.js b/common/api/api.js index 0652ab2..de5b900 100644 --- a/common/api/api.js +++ b/common/api/api.js @@ -1,6 +1,8 @@ -// import request from './request.js' +import {request} from './request.js' export default{ + // 订单,模块 + orderApi:require("./orderApi.js").default, /* * 登录相关 */ @@ -14,5 +16,55 @@ export default{ }) }) }, - + // 消息相关 + getNewList(data) {// 获取消息列表 + return new Promise((resolve, reject) => { + request.get('/system/notice/personal',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + getNewDetetail(id) {// 获取消息详情 + return new Promise((resolve, reject) => { + request.get('/system/notice/' + id) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + readNew(data) {// 阅读消息 + return new Promise((resolve, reject) => { + request.put('/system/notice/read',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + getDictList(type) {// 获取消息详情 + return new Promise((resolve, reject) => { + request.get('/system/dict/data/type/' + type) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + getOssDetail(id) {// 获取oss文件详情 + return new Promise((resolve, reject) => { + request.get('/resource/oss/listByIds/' + id) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, } \ No newline at end of file diff --git a/common/api/orderApi.js b/common/api/orderApi.js new file mode 100644 index 0000000..3132f0a --- /dev/null +++ b/common/api/orderApi.js @@ -0,0 +1,147 @@ +import {request} from './request' +export default { + // 获取订单列表 + getOrderList(data){ + return new Promise((resolve, reject) => { + request.get('/mallClient/order/list',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 获取订单详情 + getOrderDetail(id){ + return new Promise((resolve, reject) => { + request.get('/mallClient/order/'+id) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 获取订单商品列表 + getMallclientOrderProductList(data){ + return new Promise((resolve, reject) => { + request.get('/mallclient/clientorderItem/list',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 查询订单商品素材模板列表 + getProductMaterialDictList(data){ + return new Promise((resolve, reject) => { + request.get('/mall/materialDict/listWithProduct',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 查询订单商品素材列表(已有) + getMallOrderProductMaterialList(data){ + return new Promise((resolve, reject) => { + request.get('/mall/material/list',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 查询订单商品素材模板素材项列表 + getProductMaterialDictItemList(data){ + return new Promise((resolve, reject) => { + request.get('/mall/materialTemplate/listById',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 删除文件 + delOssFile(id){ + console.log("id",id) + return new Promise((resolve, reject) => { + request.delete('/resource/oss/' + id) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 订单素材列表(流程) + getOrderMaterialList(data){ + return new Promise((resolve, reject) => { + request.get('/mall/orderMaterial/list',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 新增订单素材(流程) + AddOrderMaterial(data){ + return new Promise((resolve, reject) => { + request.post('/mall/orderMaterial',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 修改素材(批量) + mallMaterialUpdateBatch(data){ + return new Promise((resolve, reject) => { + request.put('/mall/material/updateBatch',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 提交商品素材列表(完成) + mallMaterialCommit(orderId,productId){ + return new Promise((resolve, reject) => { + request.put('/mall/material/commit/' + orderId + '/' + productId) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 启动任务(流程) + startWorkFlow(data){ + return new Promise((resolve, reject) => { + request.post('/workflow/task/startWorkFlow',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, + // 办理流程(流程) + completeTask(data){ + return new Promise((resolve, reject) => { + request.post('/workflow/task/completeTask',data) + .then((res) =>{ + resolve(res); + }).catch(err =>{ + reject(err); + }) + }) + }, +} \ No newline at end of file diff --git a/common/api/request.js b/common/api/request.js index 3326403..f49e2a7 100644 --- a/common/api/request.js +++ b/common/api/request.js @@ -62,7 +62,7 @@ request.interceptors.response.use(function(response) { //不要使用箭头函 try{ store.commit('logout'); uni.reLaunch({ - url: '/pages/auth/login' + url: '/pages/auth/passwordLogin' }) } catch(err) { console.log(err); @@ -106,7 +106,7 @@ request.interceptors.response.use(function(response) { //不要使用箭头函 * @param data * @returns {Promise} */ -export function post(url, params) { +function post(url, params) { return new Promise((resolve, reject) => { request.post(url, params) .then(response => { @@ -121,7 +121,7 @@ export function post(url, params) { } -export function get(url, params) { +function get(url, params) { return new Promise((resolve, reject) => { request.get(url, params) .then(response => { @@ -135,7 +135,7 @@ export function get(url, params) { }) } -export function DELETE(url, params) { +function DELETE(url, params) { return new Promise((resolve, reject) => { request.delete(url, params) .then(response => { @@ -149,7 +149,7 @@ export function DELETE(url, params) { }) } -export function put(url, params) { +function put(url, params) { return new Promise((resolve, reject) => { request.put(url, params) .then(response => { @@ -162,4 +162,10 @@ export function put(url, params) { }) }) } -// export default request \ No newline at end of file +export { + request, + post, + get, + DELETE, + put +} \ No newline at end of file diff --git a/main.js b/main.js index efe469a..9e7ee17 100644 --- a/main.js +++ b/main.js @@ -1,6 +1,6 @@ import Vue from 'vue' import App from './App' -// import api from '@/common/api/api.js' +import api from '@/common/api/api.js' import {post,get,DELETE,put} from "@/common/api/request.js" import config from "@/common/api/config.js" import store from "@/store/index" @@ -27,7 +27,7 @@ const tui = { } } import { throttle } from './utils/publicMethods'; -// Vue.prototype.$api = api; +Vue.prototype.$api = api; Vue.prototype.$post = post; Vue.prototype.$get = get; Vue.prototype.$DELETE = DELETE; diff --git a/manifest.json b/manifest.json index 79403bd..8df89a7 100644 --- a/manifest.json +++ b/manifest.json @@ -122,11 +122,17 @@ "h5" : { "devServer" : { "https" : false, - "port" : 8055 + "port" : 8055, +// "disableHostCheck" : true // 禁用 Host 检查 打包时改成false }, "router" : { "mode" : "hash", "base" : "" + }, + "optimization" : { + "treeShaking" : { + "enable" : false + } } } } diff --git a/pages.json b/pages.json index a8324ba..3c35908 100644 --- a/pages.json +++ b/pages.json @@ -20,24 +20,21 @@ { "path": "pages/tabBar/new", "style": { - "navigationBarTitleText": "消息", - "enablePullDownRefresh": true + "navigationBarTitleText": "消息" // "navigationStyle": "custom" } }, { "path": "pages/tabBar/order", "style": { - "navigationBarTitleText": "订单", - "enablePullDownRefresh": true + "navigationBarTitleText": "订单" // "navigationStyle": "custom" } }, { "path": "pages/tabBar/home", "style": { - "navigationBarTitleText": "首页", - "enablePullDownRefresh": true + "navigationBarTitleText": "首页" // "navigationStyle": "custom" } }, { @@ -446,7 +443,6 @@ "path": "space/index", "style": { "navigationBarTitleText": "空间管理", - "enablePullDownRefresh": true, "navigationBarBackgroundColor": "#fff" } }, { @@ -611,6 +607,36 @@ "navigationBarTitleText": "修改密码" } }] + }, + { + "root": "pages/new/", + "pages": [{ + "path": "detail", + "style": { + "navigationBarTitleText": "消息详情", + "navigationBarBackgroundColor": "#fff" + } + }] + }, + { + "root": "pages/order/", + "pages": [{ + "path": "detail", + "style": { + "navigationBarTitleText": "订单详情", + "navigationBarBackgroundColor": "#fff" + } + }] + }, + { + "root": "pages/fun/", + "pages": [{ + "path": "materialEdit", + "style": { + "navigationBarTitleText": "素材上传", + "navigationBarBackgroundColor": "#fff" + } + }] } ], "tabBar": { diff --git a/pages/auth/passwordLogin.vue b/pages/auth/passwordLogin.vue index fe41281..0bf8f49 100644 --- a/pages/auth/passwordLogin.vue +++ b/pages/auth/passwordLogin.vue @@ -2,7 +2,7 @@ .login-ctn { width: 100%; height: 100%; -padding-top: 500rpx; + padding-top: 500rpx; background: #fff; :not(not) { box-sizing: border-box; @@ -151,7 +151,7 @@ padding-top: 500rpx; - {{activeTenantObj.companyName}} @@ -181,7 +181,7 @@ padding-top: 500rpx; @click="submit" type="primary">立即登录 - 阅读并同意以下协议《用户协议》 + @@ -209,7 +209,7 @@ padding-top: 500rpx; export default { data() { return { - protocolStatus: false, + protocolStatus: true, usetTypeValue: '企业用户', list: [{ name: '普通用户', @@ -255,7 +255,11 @@ padding-top: 500rpx; domain: "", logo: null, registerEnable: false - } + }, + // 租户是否已启用 + tenantEnabled:true, + query:{}, + isTenant: true, } }, computed: { @@ -264,6 +268,12 @@ padding-top: 500rpx; }, }, onLoad(e) { + if(e){ + this.query = e; + } + if(e.tenantId){ + this.form.tenantId = e.tenantId; + } // 普通二维码参数转小程序参数 if (e.q && e.q != "undefined") { //扫码进入 const qrUrl = decodeURIComponent(e.q) // 获取到二维码原始链接内容 @@ -329,19 +339,56 @@ padding-top: 500rpx; success: (res) => { console.log("res11",res); if(res.data.code == 200){ - - this.tenantList = res.data.data.voList || []; - - if(res.data.data.voList!=[]){ - this.activeTenantObj = res.data.data.voList[0]; - this.form.tenantId = res.data.data.voList[0].tenantId; + let data = res.data.data; + this.tenantEnabled = data.tenantEnabled === undefined ? true : data.tenantEnabled; + if(this.tenantEnabled){ + this.tenantList = data.voList || []; + let logo = ''; + let title = ''; + // #ifdef H5 + if(this.query.tenantId){ + this.form.tenantId = this.query.tenantId; + data.voList.forEach((item) => { + if (item.tenantId === this.query.tenantId) { + logo = item.logo; + title = item.companyName; + } + }); + this.isTenant = false; + } else if (data.voList != null && data.voList.length === 1 && data.voList[0].domain === window.location.host) { + this.form.tenantId = data.voList[0].tenantId; + logo = data.voList[0].logo; + title = data.voList[0].companyName; + this.isTenant = false; + } else if (data.voList != null && data.voList.length !== 0) { + this.form.tenantId = data.voList[0].tenantId; + this.activeTenantObj = data.voList[0] ; + logo = data.voList[0].logo; + title = data.voList[0].companyName; + } + // #endif + // #ifdef MP-WEIXIN + if (data.voList != null && data.voList.length !== 0) { + this.form.tenantId = data.voList[0].tenantId; + this.activeTenantObj = data.voList[0] ; + logo = data.voList[0].logo; + title = data.voList[0].companyName; + } + // #endif + if(title){ + this.appConfig.logo = logo; + this.appConfig.name = title; + }else{ + this.appConfig.logo = ''; + this.appConfig.name = this.$store.state.app.appConfig; + } } } } }); }, changeTenant(e){ - console.log("e",e) + console.log("e",e[0].value) this.tenantList.forEach((item) => { if (item.tenantId == e[0].value) { this.activeTenantObj = item; diff --git a/pages/fun/materialEdit.vue b/pages/fun/materialEdit.vue new file mode 100644 index 0000000..06d434b --- /dev/null +++ b/pages/fun/materialEdit.vue @@ -0,0 +1,620 @@ + + + + + + \ No newline at end of file diff --git a/pages/new/detail.vue b/pages/new/detail.vue new file mode 100644 index 0000000..ad3d4fc --- /dev/null +++ b/pages/new/detail.vue @@ -0,0 +1,90 @@ + + + + + \ No newline at end of file diff --git a/pages/order/detail.vue b/pages/order/detail.vue new file mode 100644 index 0000000..eaebcdb --- /dev/null +++ b/pages/order/detail.vue @@ -0,0 +1,306 @@ + + + + + + diff --git a/pages/tabBar/new.vue b/pages/tabBar/new.vue index 50c4387..159f2dd 100644 --- a/pages/tabBar/new.vue +++ b/pages/tabBar/new.vue @@ -3,21 +3,21 @@ - - + + - + - {{item.title}} - {{item.createdAt}} + {{item.noticeTitle}} + {{item.createTime}} {{item.message}} @@ -30,58 +30,11 @@ diff --git a/pages/tabBar/order.vue b/pages/tabBar/order.vue index 76dba3a..23e2bf0 100644 --- a/pages/tabBar/order.vue +++ b/pages/tabBar/order.vue @@ -1,56 +1,79 @@