From 50bbdb7974c95984ac9b8189808ab1f83deb50b4 Mon Sep 17 00:00:00 2001
From: dengj <209192278@qq.com>
Date: Thu, 19 Oct 2023 09:51:30 +0800
Subject: [PATCH] init
---
.gitignore | 23 ++++
.hbuilderx/launch.json | 16 +++
App.vue | 17 +++
index.html | 20 ++++
main.js | 33 ++++++
manifest.json | 72 +++++++++++++
package.json | 5 +
pages.json | 58 ++++++++++
pages/index/index.vue | 56 ++++++++++
pages/my/my.vue | 29 +++++
service/request.js | 181 ++++++++++++++++++++++++++++++++
static/logo.png | Bin 0 -> 4023 bytes
static/tabbar/sy_icon_sy(1).png | Bin 0 -> 1271 bytes
static/tabbar/sy_icon_syh.png | Bin 0 -> 706 bytes
static/tabbar/sy_icon_wd.png | Bin 0 -> 2066 bytes
static/tabbar/sy_icon_wdh.png | Bin 0 -> 1533 bytes
uni.scss | 76 ++++++++++++++
新建 文本文档.txt | 0
18 files changed, 586 insertions(+)
create mode 100644 .gitignore
create mode 100644 .hbuilderx/launch.json
create mode 100644 App.vue
create mode 100644 index.html
create mode 100644 main.js
create mode 100644 manifest.json
create mode 100644 package.json
create mode 100644 pages.json
create mode 100644 pages/index/index.vue
create mode 100644 pages/my/my.vue
create mode 100644 service/request.js
create mode 100644 static/logo.png
create mode 100644 static/tabbar/sy_icon_sy(1).png
create mode 100644 static/tabbar/sy_icon_syh.png
create mode 100644 static/tabbar/sy_icon_wd.png
create mode 100644 static/tabbar/sy_icon_wdh.png
create mode 100644 uni.scss
delete mode 100644 新建 文本文档.txt
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..78a752d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,23 @@
+.DS_Store
+node_modules/
+dist/
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+**/*.log
+
+tests/**/coverage/
+tests/e2e/reports
+selenium-debug.log
+
+# Editor directories and files
+.idea
+.vscode
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.local
+
+package-lock.json
+yarn.lock
diff --git a/.hbuilderx/launch.json b/.hbuilderx/launch.json
new file mode 100644
index 0000000..81f13f4
--- /dev/null
+++ b/.hbuilderx/launch.json
@@ -0,0 +1,16 @@
+{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/
+ // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
+ "version": "0.0",
+ "configurations": [{
+ "default" :
+ {
+ "launchtype" : "local"
+ },
+ "mp-weixin" :
+ {
+ "launchtype" : "local"
+ },
+ "type" : "uniCloud"
+ }
+ ]
+}
diff --git a/App.vue b/App.vue
new file mode 100644
index 0000000..8c2b732
--- /dev/null
+++ b/App.vue
@@ -0,0 +1,17 @@
+
+
+
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..c3ff205
--- /dev/null
+++ b/index.html
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/main.js b/main.js
new file mode 100644
index 0000000..bf3085a
--- /dev/null
+++ b/main.js
@@ -0,0 +1,33 @@
+import App from './App'
+
+import uView from 'uview-ui'
+import {
+ apiService,
+ toast
+} from "./service/request.js"
+Vue.use(uView)
+
+Vue.prototype.$api = apiService
+Vue.prototype.$toast = toast
+
+// #ifndef VUE3
+import Vue from 'vue'
+Vue.config.productionTip = false
+App.mpType = 'app'
+const app = new Vue({
+ ...App
+})
+app.$mount()
+// #endif
+
+// #ifdef VUE3
+import {
+ createSSRApp
+} from 'vue'
+export function createApp() {
+ const app = createSSRApp(App)
+ return {
+ app
+ }
+}
+// #endif
\ No newline at end of file
diff --git a/manifest.json b/manifest.json
new file mode 100644
index 0000000..066ca83
--- /dev/null
+++ b/manifest.json
@@ -0,0 +1,72 @@
+{
+ "name" : "city-store-transfer",
+ "appid" : "__UNI__F3EA0D6",
+ "description" : "",
+ "versionName" : "1.0.0",
+ "versionCode" : "100",
+ "transformPx" : false,
+ /* 5+App特有相关 */
+ "app-plus" : {
+ "usingComponents" : true,
+ "nvueStyleCompiler" : "uni-app",
+ "compilerVersion" : 3,
+ "splashscreen" : {
+ "alwaysShowBeforeRender" : true,
+ "waiting" : true,
+ "autoclose" : true,
+ "delay" : 0
+ },
+ /* 模块配置 */
+ "modules" : {},
+ /* 应用发布信息 */
+ "distribute" : {
+ /* android打包配置 */
+ "android" : {
+ "permissions" : [
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+ },
+ /* ios打包配置 */
+ "ios" : {},
+ /* SDK配置 */
+ "sdkConfigs" : {}
+ }
+ },
+ /* 快应用特有相关 */
+ "quickapp" : {},
+ /* 小程序特有相关 */
+ "mp-weixin" : {
+ "appid" : "",
+ "setting" : {
+ "urlCheck" : false
+ },
+ "usingComponents" : true
+ },
+ "mp-alipay" : {
+ "usingComponents" : true
+ },
+ "mp-baidu" : {
+ "usingComponents" : true
+ },
+ "mp-toutiao" : {
+ "usingComponents" : true
+ },
+ "uniStatistics" : {
+ "enable" : false
+ },
+ "vueVersion" : "2"
+}
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..49fd105
--- /dev/null
+++ b/package.json
@@ -0,0 +1,5 @@
+{
+ "dependencies": {
+ "uview-ui": "^2.0.36"
+ }
+}
diff --git a/pages.json b/pages.json
new file mode 100644
index 0000000..9ff96c3
--- /dev/null
+++ b/pages.json
@@ -0,0 +1,58 @@
+{
+ "easycom": {
+ "autoscan": true, //是否自动扫描组件
+ "custom": {
+ "^u-(.*)": "uview-ui/components/u-$1/u-$1.vue",
+ "^ua-(.*)": "@/components/uview-ui/components/u-$1/u-$1.vue",
+ "^customer-(.*)": "@/components/uni-$1.vue" // 匹配components目录内的vue文件
+ }
+ },
+ "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
+ {
+ "path": "pages/index/index",
+ "style": {
+ "navigationBarTitleText": "uni-app",
+ "navigationBarTextStyle": "white",
+ "navigationBarBackgroundColor": "#12CA64",
+ //导航栏取消
+ // "navigationStyle": "custom",
+ //是否开启下拉刷新
+ "enablePullDownRefresh": true
+ }
+ }, {
+ "path": "pages/my/my",
+ "style": {
+ "navigationBarTitleText": "",
+ "navigationBarTextStyle": "white",
+ "navigationBarBackgroundColor": "#12CA64",
+ "enablePullDownRefresh": false
+ }
+ }
+ ],
+ "tabBar": {
+ "color": "#CCCCCC",
+ "selectedColor": "#0EBB5B",
+ "borderStyle": "white",
+ "backgroundColor": "#FFFFFF",
+ "list": [{
+ "pagePath": "pages/index/index",
+ "text": "首页",
+ "iconPath": "static/tabbar/sy_icon_syh.png",
+ "selectedIconPath": "static/tabbar/sy_icon_sy(1).png"
+ },
+ {
+ "pagePath": "pages/my/my",
+ "text": "我的",
+ "iconPath": "static/tabbar/sy_icon_wdh.png",
+ "selectedIconPath": "static/tabbar/sy_icon_wd.png"
+ }
+ ]
+ },
+ "globalStyle": {
+ "navigationBarTextStyle": "black",
+ "navigationBarTitleText": "uni-app",
+ "navigationBarBackgroundColor": "#F8F8F8",
+ "backgroundColor": "#F8F8F8"
+ },
+ "uniIdRouter": {}
+}
\ No newline at end of file
diff --git a/pages/index/index.vue b/pages/index/index.vue
new file mode 100644
index 0000000..deee3c1
--- /dev/null
+++ b/pages/index/index.vue
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/my/my.vue b/pages/my/my.vue
new file mode 100644
index 0000000..44c5cd0
--- /dev/null
+++ b/pages/my/my.vue
@@ -0,0 +1,29 @@
+
+
+ 我的
+
+
+
+
+
+
\ No newline at end of file
diff --git a/service/request.js b/service/request.js
new file mode 100644
index 0000000..a50f3c3
--- /dev/null
+++ b/service/request.js
@@ -0,0 +1,181 @@
+const serverHost = ''//http://xx.xxx.xx
+
+const service = {
+ get(url, data) {
+ const header = {}
+ header['token'] = uni.getStorageSync('loginToken')
+ header['content-type'] = 'application/json'
+ return new Promise((resolve, reject) => {
+ uni.request({
+ method: 'get',
+ url: serverHost + url,
+ data: data,
+ header: header,
+ success: res => {
+ resolve(res)
+ },
+ fail: err => {
+ reject(err)
+ }
+ })
+ })
+ },
+ post(url, data) {
+ const header = {}
+ header['token'] = uni.getStorageSync('loginToken')
+ header['content-type'] = 'application/json'
+ return new Promise((resolve, reject) => {
+ uni.request({
+ method: 'post',
+ url: serverHost + url,
+ data: data,
+ header: header,
+ success: res => {
+ resolve(res)
+ },
+ fail: err => {
+ try {
+ toast.error(err.data.message)
+ } catch (errr) {
+ toast.error('服务器出错')
+ }
+ reject(err)
+ }
+ })
+ })
+ },
+ put(url, data) {
+ const header = {}
+ header['token'] = uni.getStorageSync('loginToken')
+ header['content-type'] = 'application/json'
+ return new Promise((resolve, reject) => {
+ uni.request({
+ method: 'put',
+ url: serverHost + url,
+ data: data,
+ header: header,
+ success: res => {
+ resolve(res)
+ },
+ fail: err => {
+ reject(err)
+ }
+ })
+ })
+ },
+ putWithFormData(url, data) {
+ const header = {}
+ header['token'] = uni.getStorageSync('loginToken')
+ header['content-type'] = 'application/x-www-form-urlencoded'
+ return new Promise((resolve, reject) => {
+ uni.request({
+ method: 'put',
+ url: serverHost + url,
+ data: data,
+ header: header,
+ success: res => {
+ resolve(res)
+ },
+ fail: err => {
+ reject(err)
+ }
+ })
+ })
+ },
+ delete(url, data) {
+ const header = {}
+ header['token'] = uni.getStorageSync('loginToken')
+ header['content-type'] = 'application/json'
+ return new Promise((resolve, reject) => {
+ uni.request({
+ method: 'delete',
+ url: serverHost + url,
+ data: data,
+ header: header,
+ success: res => {
+ resolve(res)
+ },
+ fail: err => {
+ reject(err)
+ }
+ })
+ })
+ }
+}
+const toastDuration = 1500
+const toast = {
+ success: (text, dur) => {
+ uni.showToast({
+ icon: 'none',
+ title: text || '成功',
+ duration: dur || toastDuration
+ })
+ },
+ warn: text => {
+ uni.showToast({
+ icon: 'none',
+ title: text || '未知警告',
+ duration: toastDuration
+ })
+ },
+ error: text => {
+ uni.showToast({
+ icon: 'none',
+ title: text || '未知错误',
+ duration: toastDuration
+ })
+ }
+}
+const apiService = {
+ serverHost,
+ uploadImgUrl: serverHost + `/upload/image/`,
+ //登录接口
+ login(data) {
+ const url = `/login`
+ return new Promise((resolve, reject) => {
+ resolve(service.post(url, data))
+ })
+ },
+ // 展示用户信息
+ getUserInfo() {
+ const url = '/user'
+ return new Promise((resolve, reject) => {
+ resolve(service.get(url))
+ })
+ },
+ // 获取详情
+ getProductDetail(id) {
+ const url = `/home/pdetail/?productId=${id}`
+ return new Promise((resolve, reject) => {
+ resolve(service.get(url, id))
+ })
+ },
+ //修改
+ updatePlan(data) {
+ const url = '/plan'
+ return new Promise((resolve, reject) => {
+ resolve(service.put(url, data))
+ })
+ },
+ //删除
+ deleteIdeasAndNeeds(id) {
+ const url = `/center/delreq/?id=${id}`
+ return new Promise((resolve, reject) => {
+ resolve(service.delete(url, id))
+ })
+ },
+ // 提交
+ submitIdeasAndNeeds(data) {
+ let url = `/require/release/`
+ if (data.id) {
+ url = `/require/update/`
+ }
+ return new Promise((resolve, reject) => {
+ resolve(service.putWithFormData(url, data))
+ })
+ },
+}
+export {
+ apiService,
+ toast
+}
\ No newline at end of file
diff --git a/static/logo.png b/static/logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..b5771e209bb677e2ebd5ff766ad5ee11790f305a
GIT binary patch
literal 4023
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
literal 0
HcmV?d00001
diff --git a/static/tabbar/sy_icon_syh.png b/static/tabbar/sy_icon_syh.png
new file mode 100644
index 0000000000000000000000000000000000000000..b29f7c33baeb5dfcb320027877f5cecefb505781
GIT binary patch
literal 706
zcmV;z0zLhSP)Px%d`Uz>R9Hvt*guHVP#g#F-#2Zwi=c3$;B=0Kr#_asH>fH)+4ysv;9fxrNsVAnxsvUWa#wrd!P4vzxSsB
z#q?N~l_R42M6^OgwxTE{P19b+6rK=Apk3rUB0BDkrzpxbP17F4(MM$HD5Q&H<{P@M
z-;Iim1ocCDaJQtCx1(S~LnlDGzB^LNn_;n`pdpZ5AAoy8i0fgn6GOuyJvIAK*Y(v&
zu@ga~B0acAQp&57U;{&AM7m|LCWN>W6dMQ{H`2uc*bqWo3WD{8P7CS5JrzP+1i<6K
zW1%xZc5TeODW$wH4m%P$E2Jlj&&uWU`BJIW8J5|h&;*d~0(+rp+BpCN*a2u#NY4U$
z)oeD;6pO{SH?#jhlSaBQMNzg?RXq)$hwVY<1?kD`Tidpm4a4}|J${{^c|&@p{5=t!
zl2Yzqj*+hS0}-7-tyX)?%$I|l4oS5Eu;yg+2NCU03K6j1ZJ4I{6~MuOFC@~8nZG$x
zzrxJV-G!BiWPGO#;B0r**Xwn?-EJQRu($u6PN%a3;MkN0unypRe;>^JE0f85R8`ds
za(i;FVe8X`0$3D6dCcT7*?{AkvhfHOf(cYopSLl{y1vx^~jQ)QaHBIv*fGwXA2|e}B
zSCL#Uw@@e)oWDdPAK&|ErBd0K&*wiA(V;PMqCnpWA(s8tiZ9d&P_0%EXS3NSM0A9i
o_r$b4*#KVKw!LZ?#!o-!ANz$__e&cu6951J07*qoM6N<$g3ixNS^xk5
literal 0
HcmV?d00001
diff --git a/static/tabbar/sy_icon_wd.png b/static/tabbar/sy_icon_wd.png
new file mode 100644
index 0000000000000000000000000000000000000000..78ef662460ac562bcd38242bbba7ba7e8ab3555e
GIT binary patch
literal 2066
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
literal 0
HcmV?d00001
diff --git a/uni.scss b/uni.scss
new file mode 100644
index 0000000..1c39e72
--- /dev/null
+++ b/uni.scss
@@ -0,0 +1,76 @@
+/**
+ * 这里是uni-app内置的常用样式变量
+ *
+ * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
+ * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
+ *
+ */
+
+/**
+ * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
+ *
+ * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
+ */
+@import 'uview-ui/theme.scss';
+/* 颜色变量 */
+
+/* 行为相关颜色 */
+$uni-color-primary: #007aff;
+$uni-color-success: #4cd964;
+$uni-color-warning: #f0ad4e;
+$uni-color-error: #dd524d;
+
+/* 文字基本颜色 */
+$uni-text-color:#333;//基本色
+$uni-text-color-inverse:#fff;//反色
+$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息
+$uni-text-color-placeholder: #808080;
+$uni-text-color-disable:#c0c0c0;
+
+/* 背景颜色 */
+$uni-bg-color:#ffffff;
+$uni-bg-color-grey:#f8f8f8;
+$uni-bg-color-hover:#f1f1f1;//点击状态颜色
+$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色
+
+/* 边框颜色 */
+$uni-border-color:#c8c7cc;
+
+/* 尺寸变量 */
+
+/* 文字尺寸 */
+$uni-font-size-sm:12px;
+$uni-font-size-base:14px;
+$uni-font-size-lg:16;
+
+/* 图片尺寸 */
+$uni-img-size-sm:20px;
+$uni-img-size-base:26px;
+$uni-img-size-lg:40px;
+
+/* Border Radius */
+$uni-border-radius-sm: 2px;
+$uni-border-radius-base: 3px;
+$uni-border-radius-lg: 6px;
+$uni-border-radius-circle: 50%;
+
+/* 水平间距 */
+$uni-spacing-row-sm: 5px;
+$uni-spacing-row-base: 10px;
+$uni-spacing-row-lg: 15px;
+
+/* 垂直间距 */
+$uni-spacing-col-sm: 4px;
+$uni-spacing-col-base: 8px;
+$uni-spacing-col-lg: 12px;
+
+/* 透明度 */
+$uni-opacity-disabled: 0.3; // 组件禁用态的透明度
+
+/* 文章场景相关 */
+$uni-color-title: #2C405A; // 文章标题颜色
+$uni-font-size-title:20px;
+$uni-color-subtitle: #555555; // 二级标题颜色
+$uni-font-size-subtitle:26px;
+$uni-color-paragraph: #3F536E; // 文章段落颜色
+$uni-font-size-paragraph:15px;
diff --git a/新建 文本文档.txt b/新建 文本文档.txt
deleted file mode 100644
index e69de29..0000000