diff --git a/app.json b/app.json
index d99c439..a335f10 100644
--- a/app.json
+++ b/app.json
@@ -21,6 +21,7 @@
"navigationBarBackgroundColor": "#ffffff"
},
"tabBar": {
+ "custom": true,
"color": "#515151",
"selectedColor": "#FE9944",
"list": [{
diff --git a/app.wxss b/app.wxss
index 483aee3..aee1f19 100644
--- a/app.wxss
+++ b/app.wxss
@@ -8,7 +8,7 @@ page {
.page-container {
display: flex;
flex-direction: column;
- padding: 20rpx;
+ padding: 15px;
}
::-webkit-scrollbar {
@@ -21,8 +21,6 @@ page {
.custom-navbar {
display: flex;
align-items: center;
- padding-left: 20rpx;
- padding-right: 20rpx;
background-color: transparent;
/* box-shadow: 0 2rpx 4rpx rgba(0, 0, 0, 0.05); */
}
diff --git a/components/tabbar/custom-tabbar.js b/components/tabbar/custom-tabbar.js
new file mode 100644
index 0000000..f116dff
--- /dev/null
+++ b/components/tabbar/custom-tabbar.js
@@ -0,0 +1,40 @@
+Component({
+ properties: {
+ tabList: {
+ type: Array,
+ value: []
+ },
+ color: {
+ type: String,
+ value: '#515151'
+ },
+ selectedColor: {
+ type: String,
+ value: '#FE9944'
+ }
+ },
+ data: {},
+ attached() {
+ // 获取当前页面路径
+ const pages = getCurrentPages();
+ const currentPage = pages[pages.length - 1];
+ const currentPath = `/${currentPage.route}`;
+ const index = this.data.tabList.findIndex(item => item.pagePath === currentPath);
+ if (index !== -1) {
+ this.setData({
+ selected: index
+ });
+ }
+ },
+ methods: {
+ switchTab(e) {
+ console.log('点击了')
+ const index = e.currentTarget.dataset.index;
+ const pagePath = this.data.tabList[index].pagePath;
+ console.log(index, pagePath)
+ wx.switchTab({
+ url: '/' + pagePath
+ });
+ }
+ }
+});
\ No newline at end of file
diff --git a/components/tabbar/custom-tabbar.json b/components/tabbar/custom-tabbar.json
new file mode 100644
index 0000000..e8cfaaf
--- /dev/null
+++ b/components/tabbar/custom-tabbar.json
@@ -0,0 +1,4 @@
+{
+ "component": true,
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/components/tabbar/custom-tabbar.wxml b/components/tabbar/custom-tabbar.wxml
new file mode 100644
index 0000000..480edb9
--- /dev/null
+++ b/components/tabbar/custom-tabbar.wxml
@@ -0,0 +1,6 @@
+
+
+
+ {{item.text}}
+
+
\ No newline at end of file
diff --git a/components/tabbar/custom-tabbar.wxss b/components/tabbar/custom-tabbar.wxss
new file mode 100644
index 0000000..0f46d84
--- /dev/null
+++ b/components/tabbar/custom-tabbar.wxss
@@ -0,0 +1,29 @@
+.tabbar {
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 160rpx;
+ background-color: #FFFFFF;
+ display: flex;
+ justify-content: space-around;
+ align-items: center;
+ border-top: 1px solid #EEEEEE;
+}
+
+.tabbar-item {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+}
+
+.tabbar-icon {
+ width: 24px;
+ height: 24px;
+ margin-bottom: 2px;
+}
+
+.tabbar-text {
+ font-size: 12px;
+}
\ No newline at end of file
diff --git a/net/api/projectApi.js b/net/api/projectApi.js
index db0a9c2..08719b2 100644
--- a/net/api/projectApi.js
+++ b/net/api/projectApi.js
@@ -12,6 +12,7 @@ const apiPath = {
getPackageList: '/api/proj/servicepkg/packageorder/listpage/self', //获取套餐包
getCommendProjectName: '/api/proj/recommend/list-proj-name/ai', //推荐项目名称
createProject: '/api/proj/create-quick', //快速创建项目
+ buildProject: '/api/proj/create-quick/proj-id/{projId}', //生成项目
reCreate: '/api/proj/generate/proj-id/${projId}', //重新生成
proLangList: '/api/env/custom/list-active-lang', //项目语言
ruleData: '/app/agreementportal/getrelease/{id}', //使用规则 project="operator"
@@ -53,6 +54,11 @@ class ProjectService {
static doCreateProject(data) {
return request(apiPath.createProject, "POST", data)
}
+ //生成项目
+ static doBuildProject(id) {
+ const path = apiPath.buildProject.replace('{projId}', id)
+ return request(path, "GET")
+ }
//重新生成
static doReCreate(url) {
const path = apiPath.reCreate.replace('${projId}', url)
diff --git a/net/http.js b/net/http.js
index febaee2..0f1d7ed 100644
--- a/net/http.js
+++ b/net/http.js
@@ -31,7 +31,7 @@ function request(url, method = "GET", data = {}, params = {}, project = "copyrig
baseUrl = operatorUrl
} else if (project == 'copyright') {
baseUrl = copyrightUrl
- } else if(project=='online') {
+ } else if (project == 'online') {
baseUrl = 'https://www.aimzhu.com/operator'
}
return new Promise(function (resolve, reject) {
diff --git a/pages/copyright/createProjectInfo/createProjectInfo.js b/pages/copyright/createProjectInfo/createProjectInfo.js
index 0943a3f..168fc00 100644
--- a/pages/copyright/createProjectInfo/createProjectInfo.js
+++ b/pages/copyright/createProjectInfo/createProjectInfo.js
@@ -9,7 +9,7 @@ const {
Page({
data: {
date: utils.formatDate(new Date()),
- completeDate: utils.formatDate(new Date()), //开发完成时间
+ completeDate: '', //开发完成时间
version: "v1.0", //系统版本
type: 'ALL', //默认全托管 上级页面传递type参数 all全托管 material写材料
languageList: ['JAVA'],
@@ -50,6 +50,7 @@ Page({
urgent: 0, //加急费用
isUrgentDisable: false, //是否禁用加急
proPrice: 0, //价格
+ transmitPId: '', //传递过来的套餐包ID
},
onLoad(options) {
wx.setNavigationBarTitle({
@@ -65,21 +66,25 @@ Page({
})
const typeParams = options.type //类型
const priceParams = options.price //价格
- const isUrgentParams = options.isUrgent
+ const isUrgentParams = options.isUrgent //是否加急
+ const pId = options.pId //套餐包ID
console.log(priceParams)
if (priceParams && priceParams > 0) {
this.setData({
price: priceParams,
proPrice: priceParams,
type: typeParams,
- isUrgent: isUrgentParams
+ isUrgent: isUrgentParams,
+ transmitPId: pId
})
} else {
- wx.showToast({
- title: '数据有误,请重试',
- icon: 'error'
+ this.setData({
+ errorHint: '数据有误,请稍后重试',
+ showError: true
})
- wx.navigateBack()
+ setTimeout(() => {
+ wx.navigateBack()
+ }, 1000);
}
if (this.data.type == 'ALL') {
this.setData({
@@ -297,6 +302,23 @@ Page({
_self.setData({
packageList: res.rows
})
+ if (_self.data.transmitPId != '' && _self.data.transmitPId != 'undefined') {
+ res.rows.map(item => {
+ if (item.packageInfoId == _self.data.transmitPId) {
+ _self.setData({
+ selectPackage: item,
+ showPackage: false,
+ tempPackage: {},
+ canSelCoupons: false,
+ selectCoupons: {},
+ tempCoupons: {},
+ isUrgent: false, //取消加急
+ isUrgentDisable: true, //加急不能选择
+ price: 0
+ })
+ }
+ })
+ }
}, err => {
console.log(err)
_self.setData({
@@ -472,6 +494,11 @@ Page({
})
}
},
+ clearTime() {
+ this.setData({
+ completeDate: ''
+ })
+ },
//保存联系人
doSaveContact() {
//校验参数
@@ -486,7 +513,7 @@ Page({
if (_self.data.contactPhone == '' || !isValidPhone(_self.data.contactPhone)) {
_self.setData({
showError: true,
- errorHint: '请输入合法的联系电话'
+ errorHint: '请输入正确的联系电话'
})
return
}
@@ -494,7 +521,7 @@ Page({
if (!isValidEmail(_self.data.contactEmail)) {
_self.setData({
showError: true,
- errorHint: '请输入合法的邮箱'
+ errorHint: '请输入正确的邮箱'
})
return
}
diff --git a/pages/copyright/createProjectInfo/createProjectInfo.wxml b/pages/copyright/createProjectInfo/createProjectInfo.wxml
index d3a858f..90dc0a4 100644
--- a/pages/copyright/createProjectInfo/createProjectInfo.wxml
+++ b/pages/copyright/createProjectInfo/createProjectInfo.wxml
@@ -10,7 +10,7 @@
项目信息
-
+
推荐
@@ -20,7 +20,7 @@
产权联系人
- {{selectContact.name}}
+ {{selectContact.name}}
@@ -29,13 +29,13 @@
系统版本
-
+
系统语言
- {{selectLang}}
+ {{selectLang}}
@@ -43,12 +43,13 @@
开发完成时间
-
-
- {{completeDate}}
-
-
+
+ {{completeDate != ''? completeDate:'请选择开发完成时间'}}
+
+
+
+
@@ -56,12 +57,12 @@
套餐包
- {{selectPackage.packageName?selectPackage.packageName:'请选择套餐包'}}
+ {{selectPackage.packageName?selectPackage.packageName:'请选择套餐包'}}
取消
优惠券
- {{selectCoupons.couponId? selectCoupons.coupon.title : '请选择优惠券'}}
+ {{selectCoupons.couponId? selectCoupons.coupon.title : '请选择优惠券'}}
取消
选择
@@ -87,24 +88,24 @@
姓名
-
+
联系电话
- 联系邮箱
-
+ 联系邮箱
+
- 公司
+ 公司
-
+
@@ -113,7 +114,7 @@
-
+
{{item}}
@@ -121,37 +122,39 @@
-
-
+
+
优惠卷
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+ 优惠卷
- 优惠卷
+ 减{{item.coupon.amount/100}}元
- 减{{item.coupon.amount/100}}元
+ {{item.coupon.title}}
+ 有效期:{{item.coupon.useGmtStart}}至{{item.coupon.useGmtEnd}}
+
+
+
- {{item.coupon.title}}
- 有效期:{{item.coupon.useGmtStart}}至{{item.coupon.useGmtEnd}}
-
-
-
-
-
-
-
+
+
+
+
@@ -161,25 +164,27 @@
套餐包
-
-
-
-
-
-
- 套餐包
- 剩余{{item.packageTotalSurplusCount}}件
+
+
+
+
+
+
+
+ 套餐包
+ 剩余{{item.packageTotalSurplusCount}}件
+
+ {{item.packageInfoAppDTO.packageName}}
+ {{item.packageInfoAppDTO.packageDescription}}
+
+
+
- {{item.packageInfoAppDTO.packageName}}
- {{item.packageInfoAppDTO.packageDescription}}
-
-
-
-
-
-
-
+
+
+
+
diff --git a/pages/copyright/createProjectInfo/createProjectInfo.wxss b/pages/copyright/createProjectInfo/createProjectInfo.wxss
index adeb8bd..b52e0f1 100644
--- a/pages/copyright/createProjectInfo/createProjectInfo.wxss
+++ b/pages/copyright/createProjectInfo/createProjectInfo.wxss
@@ -62,15 +62,18 @@ page {
.info-title {
font-size: 36rpx;
- font-weight: 500;
+ font-weight: bold;
}
.info-value {
margin-top: 20rpx;
border: 1rpx solid #f2f2f2;
- padding: 24rpx;
- font-size: 28rpx;
+ font-size: 14px;
+ line-height: 16px;
background-color: white;
+ height: 65rpx;
+ width: auto;
+ padding: 15px;
}
.info-btn {
@@ -104,6 +107,7 @@ page {
.label {
color: black;
+ font-weight: bold;
}
.desc {
@@ -118,18 +122,46 @@ page {
align-items: center;
}
+.select-time {
+ color: #000000;
+ flex: 1;
+ font-size: 14px;
+ text-align: left;
+ padding-left: 30rpx;
+}
+
+.clear-icon {
+ width: 20px;
+ height: 20px;
+ margin-right: 20rpx;
+}
+
.desc .icon {
width: 32rpx;
height: 32rpx;
}
.value {
- color: #666;
+ color: #9A9A9A;
padding-right: 10px;
+ flex: 1;
+ text-align: right;
+ padding-right: 10px;
+ font-size: 14px;
}
+
+.value-hint {
+ color: #9A9A9A;
+}
+
+.v-select {
+ color: #000000;
+}
+
+
.language-sel {
- font-size: 30rpx;
+ font-size: 14px;
flex: 1;
text-align: center;
}
@@ -171,6 +203,8 @@ page {
background-color: #f0f0f0;
}
+.weui-half-screen-dialog__ft {}
+
.bottom-box {
position: fixed;
left: 0;
@@ -234,7 +268,7 @@ page {
text-align: left;
}
-.form-item-title:not(.no-after)::after {
+.form-item-title:not(.no-after)::before {
content: "*";
color: red;
font-size: 14px;
@@ -244,19 +278,24 @@ page {
.form-item-content {
flex: 1;
+ text-align: right;
}
.project-box {
display: flex;
- flex-direction: column;
+ flex-direction: row;
+ flex-wrap: wrap;
+ margin-top: 10rpx;
}
.project-item {
- font-size: 18px;
- background-color: #f5f5f5;
- margin: 10px;
- padding: 10px;
+ font-size: 24rpx;
+ background-color: #ffaa0034;
text-align: center;
+ color: #FFA900;
+ text-align: center;
+ margin: 20rpx;
+ padding: 5rpx 20rpx;
}
.confirm-btn {
@@ -264,15 +303,21 @@ page {
color: white;
font-size: 16px;
height: 40px;
- border-radius: 10px;
+ border-radius: 5px;
text-align: center;
+ width: 85vw !important;
+}
+
+
+.weui-half-screen-dialog__bd {
+ padding-bottom: 40rpx;
}
.coupons-list-box {
display: flex;
flex-direction: column;
justify-content: center;
- align-items: flex-start;
+ align-items: center;
}
.tickets {
@@ -286,7 +331,7 @@ page {
width: 60vw;
position: relative;
padding: 10px;
- background: radial-gradient(circle at right top, transparent 16rpx, #ffaa0017 0) right top / 100% 51% no-repeat,
+ background: radial-gradient(circle at right top, transparent 16rpx, #ffaa0017 0) right top / 100% 50% no-repeat,
radial-gradient(circle at right bottom, transparent 16rpx, #ffaa0017 0) right bottom / 100% 50% no-repeat;
}
diff --git a/pages/copyright/payment/payment.wxss b/pages/copyright/payment/payment.wxss
index c8ec7d1..f70ced8 100644
--- a/pages/copyright/payment/payment.wxss
+++ b/pages/copyright/payment/payment.wxss
@@ -6,7 +6,7 @@ page {
}
.input-money {
- font-size: 24px;
+ font-size: 48rpx;
font-weight: bold;
height: 24px;
line-height: 24px;
diff --git a/pages/copyright/publicPay/publicPay.js b/pages/copyright/publicPay/publicPay.js
index d054a35..04af02f 100644
--- a/pages/copyright/publicPay/publicPay.js
+++ b/pages/copyright/publicPay/publicPay.js
@@ -23,7 +23,7 @@ Page({
companyName: '', //公司名称
companyBank: '', //开户行
companyBankNum: '', //账户号码
- packageId: null, //套餐ID
+ packageId: '', //套餐ID
payMoney: 0, //金额
packageName: '', //套餐名称
accountRechargeId: '', //订单ID
@@ -50,8 +50,9 @@ Page({
// 获取完整的年月日时分秒,以及默认显示的数组
const obj = dateTimePicker.dateTimePicker(this.data.startYear, this.data.endYear);
console.log(obj.dateTime)
+ console.log(typeof options.packageId)
this.setData({
- packageId: options.packageId, //套餐包
+ packageId: options.packageId && options.packageId != 'undefined' ? options.packageId : '', //套餐包
packageName: options.name,
payMoney: options.money, //金额
dateTimeArray: obj.dateTimeArray,
@@ -62,6 +63,7 @@ Page({
this.buildCurrentTime()
this.getEnterpriseAccountInfo()
//获取订单
+ console.log(this.data.packageId)
this.doGetOrder()
},
//公司名称
@@ -114,6 +116,7 @@ Page({
title: '加载中...',
})
const _self = this
+ console.log(_self.data.packageId)
const data = {
packageInfoId: _self.data.packageId ? _self.data.packageId : '',
rechargeMoney: _self.data.payMoney,
diff --git a/pages/copyright/publicPay/publicPay.wxss b/pages/copyright/publicPay/publicPay.wxss
index 9fd6290..f1b5d89 100644
--- a/pages/copyright/publicPay/publicPay.wxss
+++ b/pages/copyright/publicPay/publicPay.wxss
@@ -1,7 +1,7 @@
/* pages/copyright/publicPay/publicPay.wxss */
page {
background: linear-gradient(to bottom, #F0F0F0, #FFFFFF);
- background-size: 100% 100vh;
+ background-size: 100vw 100vh;
background-repeat: no-repeat;
}
@@ -30,9 +30,9 @@ page {
display: flex;
flex-direction: row;
justify-content: center;
- align-items: center;
- width: 90vw;
+ align-items: flex-start;
padding: 6px 20px;
+ width: 85vw;
}
.red {
@@ -43,13 +43,13 @@ page {
} */
.title {
- flex: .3;
+ flex: 0.3;
font-size: 14px;
color: black;
}
.content {
- flex: 1;
+ flex: 0.7;
font-size: 14px;
}
@@ -132,9 +132,9 @@ page {
}
.input-box {
- width: 60vw;
+ flex: 1;
background-color: #FAFAFA;
- border-radius: 20px;
+ border-radius: 2rpx;
padding: 3px 8px;
text-align: left;
font-size: 12px;
diff --git a/pages/index/index.js b/pages/index/index.js
index 406ed48..548bb03 100644
--- a/pages/index/index.js
+++ b/pages/index/index.js
@@ -12,14 +12,19 @@ const deviceInfo = wx.getDeviceInfo()
const screenInfo = wx.getWindowInfo();
const statusBarHeight = screenInfo.statusBarHeight; // 状态栏高度
const navBarHeight = deviceInfo.platform == 'IOS' ? 48 : 50; // 导航栏高度(iOS 为 44px,Android 为 48px)
+const tabBarHeight = screenInfo.screenHeight - (screenInfo.safeArea ? screenInfo.safeArea.bottom : 50);
+const screenHeight = screenInfo.screenHeight
+const screenWidth = screenInfo.screenWidth
const windowHeight = screenInfo.windowHeight - navBarHeight - statusBarHeight; //可用内容高度
-
Page({
data: {
statusBarHeight: statusBarHeight,
navBarHeight: navBarHeight,
totalHeight: navBarHeight, // 导航栏总高度
contentHeight: windowHeight,
+ screenHeight: screenHeight, //屏幕高度
+ screenWidth: screenWidth, //屏幕宽度
+ tabBarHeight: tabBarHeight, //tabbar高度
tagList: [],
currentTag: '',
imgUrl: previewUrl,
@@ -75,10 +80,26 @@ Page({
showAd: false, //显示优惠卷广告
tempCoupons: null, //优惠卷
isNoShowToday: false, //今日不再显示
+ tabList: [{
+ "pagePath": "pages/index/index",
+ "text": "首页",
+ "iconPath": "/static/images/ic_home_normal.png",
+ "selectedIconPath": "/static/images/ic_home_select.png",
+ "selected": true
+ },
+ {
+ "pagePath": "pages/mine/mineIndex/mine",
+ "text": "我的",
+ "iconPath": "/static/images/ic_mine_normal.png",
+ "selectedIconPath": "/static/images/ic_mine_select.png",
+ "selected": false
+ }
+ ],
+ color: "#515151",
+ selectedColor: "#FE9944",
},
onLoad(e) {
const _self = this
- console.log(screenInfo.windowHeight)
//获取通知
_self.doGetNotice()
//获取标签选项
@@ -86,10 +107,6 @@ Page({
//获取列表
const params = _self.buildParams(1, true)
_self.doGetSelfList(params, true)
- const h = Utils.pxToRpx(_self.data.contentHeight)
- _self.setData({
- contentHeight: h
- })
const noShowToday = Cache.get('noShowToday')
const currentDate = new Date().toLocaleDateString();
if (noShowToday && noShowToday === currentDate) {
@@ -99,6 +116,41 @@ Page({
} else {
_self.doGetClaimsCoupons()
}
+ this.countViewHeight()
+ },
+ onShow() {
+ const pages = getCurrentPages();
+ const currentPage = pages[pages.length - 1];
+ const tabList = this.data.tabList;
+ tabList.forEach(item => {
+ item.selected = item.pagePath === currentPage.route;
+ });
+ this.setData({
+ tabList
+ });
+ },
+ //计算剩余高度
+ countViewHeight() {
+ const query = wx.createSelectorQuery();
+ const _self = this
+ // 指定要查询的 view 元素
+ query.select('#title-box').boundingClientRect();
+ query.exec((res) => {
+ if (res[0]) {
+ const height = res[0].height;
+ //屏幕高度-内容高度-tabbar高度
+ const contentHeight = _self.data.screenHeight - height - 50
+ console.log('tabbarHeight:', _self.data.tabBarHeight)
+ const h = Utils.pxToRpx(contentHeight, _self.data.screenWidth)
+ const tempH = h - 130
+ console.log('转后', h, '内容高度:', tempH)
+ _self.setData({
+ contentHeight: tempH
+ })
+ } else {
+ console.log('未找到指定的 view 元素');
+ }
+ })
},
//获取可以申领的优惠卷
doGetClaimsCoupons() {
@@ -381,6 +433,33 @@ Page({
downloadProgress: 0
})
},
+ //去生成项目
+ doCreatePro(e) {
+ wx.showLoading({
+ title: '生成中...',
+ })
+ const _self = this
+ const item = e.currentTarget.dataset.value
+ ProjectService.doBuildProject(item.projId)
+ .then(res => {
+ // 刷新列表
+ wx.hideLoading()
+ console.log(res)
+ _self.setData({
+ successHint: '正在生成中,请耐心等待',
+ showSuccess: true
+ })
+ _self.doRefreshList()
+ })
+ .catch(err => {
+ console.log(err)
+ wx.hideLoading()
+ _self.setData({
+ errorHint: err.msg ? err.msg : '生成失败,请稍后重试',
+ showError: true
+ })
+ })
+ },
//重新生成
doReCreate(e) {
console.log(e)
diff --git a/pages/index/index.json b/pages/index/index.json
index b893f35..4e7eda4 100644
--- a/pages/index/index.json
+++ b/pages/index/index.json
@@ -5,7 +5,8 @@
"mp-toptips": "weui-miniprogram/toptips/toptips",
"down-progress": "/components/down-progress/down-progress",
"mp-loading": "weui-miniprogram/loading/loading",
- "ad-popup": "/components/ad-popup/ad-popup"
+ "ad-popup": "/components/ad-popup/ad-popup",
+ "custom-tabbar": "/components/tabbar/custom-tabbar"
},
"navigationStyle": "custom"
}
\ No newline at end of file
diff --git a/pages/index/index.wxml b/pages/index/index.wxml
index 8dab55a..ba6a5c0 100644
--- a/pages/index/index.wxml
+++ b/pages/index/index.wxml
@@ -1,95 +1,105 @@
-
-
- AI喵著
-
-
-
-
-
- 创建软著
+
+
+
+
+
+ AI喵著
- 充值
-
-
-
-
- {{noticeContent}}
-
-
-
-
-
-
-
-
- 软著列表
-
- 进行中的
- 已完成的
+
+
+
+
+ 创建软著
+
+ 充值
+
+
+
+
+ {{noticeContent}}
+
-
-
-
-
- {{item.label}}
+
+
+
+
+
+ 软著列表
-
-
-
-
- {{item.label}}
-
-
-
-
-
- {{item.value}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{tools.status(item.generate.generateStatus)}}
-
-
-
-
- {{item.projName}}
- {{item.pay.servicePackageId != '' ? '套餐包':item.pay.charge}}
-
-
-
- {{item.apply.applyContactName}}
-
-
- {{item.gmtCreate}}
- 下载
- 重新生成
-
+
+ 进行中的
+ 已完成的
-
-
+
+
+
+
+ {{item.label}}
+
+
+
+
+
+ {{item.label}}
+
+
+
+
+
+ {{item.value}}
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{tools.status(item.generate.generateStatus,item.aiSetting.settingStatus)}}
+
+
+
+
+ {{item.projName}}
+ {{item.pay.servicePackageId != '' ? '套餐包':item.pay.charge}}
+
+
+
+ {{item.apply.applyContactName}}
+
+
+ {{item.gmtCreate}}
+ 下载
+ 重新生成
+ 生成
+
+
+
+
+
+
+
+
+
+
+
资料下载
diff --git a/pages/index/index.wxss b/pages/index/index.wxss
index 136e7a6..c7372c0 100644
--- a/pages/index/index.wxss
+++ b/pages/index/index.wxss
@@ -9,18 +9,24 @@
display: flex;
flex-direction: column;
padding: 20rpx;
- margin-top: -50rpx;
- margin-left: 20rpx;
- margin-right: 20rpx;
- border-radius: 10rpx;
+ margin-left: 30rpx;
+ margin-right: 30rpx;
+ border-bottom-left-radius: 10rpx;
+ border-bottom-right-radius: 10rpx;
background-color: rgba(255, 255, 255, 1);
- box-shadow: 0rpx 2rpx 6rpx 0rpx rgba(206, 206, 206, 0.4);
+ box-shadow: 0rpx 2rpx 6rpx 0rpx rgba(206, 206, 206, 0.6);
}
.container-title {
display: flex;
flex-direction: column;
- height: 80px;
+}
+
+.title-box {
+ display: flex;
+ flex-direction: column;
+ justify-content: flex-start;
+ padding: 0rpx 30rpx;
}
.title-func {
@@ -91,13 +97,27 @@
.container-box {
display: flex;
flex-direction: column;
+ background-color: white;
+ padding: 20rpx;
+ border-top-left-radius: 10rpx;
+ border-top-right-radius: 10rpx;
margin-top: 20rpx;
+ background-color: rgba(255, 255, 255, 1);
+ box-shadow: 0rpx -6rpx 6rpx 0rpx rgba(206, 206, 206, 0.1);
}
.list-title-box {
display: flex;
flex-direction: row;
justify-content: space-between;
+ align-items: center;
+}
+
+.title-line {
+ width: 10rpx;
+ height: 32rpx;
+ border-radius: 17rpx;
+ background-color: rgba(255, 169, 0, 1);
}
.list-title-txt {
@@ -106,6 +126,10 @@
font-size: 16px;
font-family: TaipeiHei-bold;
font-weight: bold;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
}
.list-title-btns {
@@ -189,6 +213,7 @@
background-color: #F7F7F7;
border-radius: 2px;
padding: 5px;
+ align-items: center;
}
.list-item:nth-of-type(n+2) {
@@ -203,31 +228,50 @@
}
.item-img .cover {
- width: 95px;
- height: 68px;
+ width: 210rpx;
+ height: 136rpx;
border-radius: 2px;
}
.item-img-status {
- background-color: #AFE5C7;
text-align: center;
position: absolute;
bottom: 0;
left: 0;
- width: 95px;
+ width: 210rpx;
font-size: 24rpx;
border-bottom-left-radius: 2px;
border-bottom-right-radius: 2px;
}
+.status-gray {
+ background-color: #adadadc0;
+ color: black;
+}
+
+.status-green {
+ background-color: #AFE5C7;
+ color: black;
+}
+
+.status-yellow {
+ background-color: #fe9844c0;
+ color: black;
+}
+
+.status-red {
+ background-color: #FF0000C0;
+ color: white;
+}
+
.item-content {
display: flex;
flex-direction: column;
justify-content: space-between;
flex: 1;
height: 72px;
- padding-left: 16px;
- width: 90vw;
+ padding-left: 16rpx;
+ min-width: 0;
}
.item-content-title {
@@ -235,7 +279,6 @@
flex-direction: row;
justify-content: space-between;
align-items: center;
- width: 59vw;
}
@@ -245,6 +288,10 @@
text-align: left;
font-weight: bold;
flex: 1;
+ display: block;
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
}
.project-status {
@@ -254,12 +301,14 @@
flex: .3;
padding-left: 5px;
text-align: center;
+ white-space: nowrap;
}
.item-content-title {
display: flex;
flex-direction: row;
justify-content: space-between;
+ min-width: 0;
}
.project-aff {
@@ -287,7 +336,6 @@
flex-direction: row;
justify-content: space-between;
align-items: flex-end;
- width: 57vw;
}
.project-create-time {
@@ -296,7 +344,7 @@
}
.project-btn {
- font-size: 28rpx;
+ font-size: 24rpx;
background-color: #FE9944;
color: white;
padding: 2px 10px;
@@ -505,5 +553,5 @@
.weui-half-screen-dialog__ft {
height: 0;
- padding: 0;
+ /* padding: 0; */
}
\ No newline at end of file
diff --git a/pages/login/login.js b/pages/login/login.js
index 83ac14c..89c8e43 100644
--- a/pages/login/login.js
+++ b/pages/login/login.js
@@ -128,11 +128,11 @@ Page({
Cache.set("token", res.accessToken);
//创建所属人
if (res.phone && res.phone != '') {
+ //判断是否存在所属人
_self.setData({
phone: res.phone
})
- _self.doUpdateUserInfo('')
- _self.doGetCsaNo()
+ _self.doGetMineContact()
} else {
//获取客服编号
wx.switchTab({
@@ -153,6 +153,34 @@ Page({
_self.doShowExit()
}
},
+ //判断是否需要创建联系人
+ doGetMineContact() {
+ wx.showLoading({
+ title: '加载中...',
+ })
+ const data = {
+ page: 1,
+ rows: 2
+ }
+ UserApi.doGetMineContactList(data)
+ .then(res => {
+ wx.hideLoading()
+ if (res.rows && res.rows.length <= 0) {
+ //需要创建
+ _self.doUpdateUserInfo('')
+ _self.doGetCsaNo()
+ } else {
+ //无需创建
+ wx.switchTab({
+ url: '/pages/index/index',
+ })
+ }
+ })
+ .catch(err => {
+ wx.hideLoading()
+ _self.doShowExit()
+ })
+ },
//创建用户
doUpdateUserInfo(name) {
const _self = this
diff --git a/pages/login/login.wxss b/pages/login/login.wxss
index c627065..5229d50 100644
--- a/pages/login/login.wxss
+++ b/pages/login/login.wxss
@@ -38,6 +38,8 @@ wx-checkbox .wx-checkbox-input.wx-checkbox-input-checked:before {
background-image: url('data:image/png;base64,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');
width: 100vw;
height: 100vh;
+ background-size: cover;
+ background-repeat: no-repeat;
}
.btn-content {
@@ -69,14 +71,17 @@ wx-checkbox .wx-checkbox-input.wx-checkbox-input-checked:before {
}
.btn {
- background-color: green;
- color: white;
animation: clickScale 1.2s;
animation-iteration-count: infinite;
animation-timing-function: ease-in-out;
- border-radius: 50rpx;
- margin-top: 30rpx;
+ margin-top: 40rpx;
font-size: 24rpx;
+ line-height: 20px;
+ border-radius: 45px;
+ background-color: rgba(255, 169, 0, 1);
+ color: rgba(255, 255, 255, 1);
+ text-align: center;
+ font-family: PingFangSC-regular;
}
@keyframes clickScale {
@@ -139,7 +144,7 @@ wx-checkbox .wx-checkbox-input.wx-checkbox-input-checked:before {
}
.weui-half-screen-dialog__ft {
- padding: 15px;
+ /* padding: 15px; */
text-align: center;
}
diff --git a/pages/mine/mineAccount/mineContact/mineContact.js b/pages/mine/mineAccount/mineContact/mineContact.js
index 5e933b0..3e4fea3 100644
--- a/pages/mine/mineAccount/mineContact/mineContact.js
+++ b/pages/mine/mineAccount/mineContact/mineContact.js
@@ -179,7 +179,7 @@ Page({
if (_self.data.contactPhone == '' || !isValidPhone(_self.data.contactPhone)) {
_self.setData({
showError: true,
- errorHint: '请输入合法的联系电话'
+ errorHint: '请输入正确的联系电话'
})
return
}
@@ -187,7 +187,7 @@ Page({
if (!isValidEmail(_self.data.contactEmail)) {
_self.setData({
showError: true,
- errorHint: '请输入合法的邮箱'
+ errorHint: '请输入正确的邮箱'
})
return
}
@@ -240,7 +240,7 @@ Page({
if (_self.data.contactPhone == '' || !isValidPhone(_self.data.contactPhone)) {
_self.setData({
showError: true,
- errorHint: '请输入合法的联系电话'
+ errorHint: '请输入正确的联系电话'
})
return
}
@@ -248,7 +248,7 @@ Page({
if (!isValidEmail(_self.data.contactEmail)) {
_self.setData({
showError: true,
- errorHint: '请输入合法的邮箱'
+ errorHint: '请输入正确的邮箱'
})
return
}
diff --git a/pages/mine/mineAccount/mineContact/mineContact.wxml b/pages/mine/mineAccount/mineContact/mineContact.wxml
index 717ce0b..68c9120 100644
--- a/pages/mine/mineAccount/mineContact/mineContact.wxml
+++ b/pages/mine/mineAccount/mineContact/mineContact.wxml
@@ -15,7 +15,7 @@
- {{item.name}}
+ {{item.name}}
{{item.phone}}
@@ -41,25 +41,25 @@
姓名
-
+
联系电话
- 联系邮箱
-
+ 联系邮箱
+
- 公司
+ 公司
-
-
+
+
diff --git a/pages/mine/mineAccount/mineContact/mineContact.wxss b/pages/mine/mineAccount/mineContact/mineContact.wxss
index af13e17..b3a5abf 100644
--- a/pages/mine/mineAccount/mineContact/mineContact.wxss
+++ b/pages/mine/mineAccount/mineContact/mineContact.wxss
@@ -17,10 +17,12 @@ page {
position: fixed;
top: 0;
left: 0;
- width: 97vw;
display: flex;
flex-direction: row;
align-items: center;
+ justify-content: center;
+ align-self: center;
+ width: 96vw;
}
.search-container {
@@ -29,7 +31,7 @@ page {
border-radius: 5px;
background-color: rgba(255, 255, 255, 1);
font-family: -regular;
- margin: 10px;
+ margin: 10px 15px;
padding: 5px;
display: flex;
flex-direction: row;
@@ -114,6 +116,15 @@ page {
align-items: center;
}
+.name {
+ line-height: 23rpx;
+ color: rgba(0, 0, 0, 1);
+ font-size: 32rpx;
+ text-align: left;
+ font-weight: bold;
+ font-family: SourceHanSansSC-black;
+}
+
.service-desc {
padding: 0px 15px 15px 15px;
line-height: 20px;
@@ -128,10 +139,10 @@ page {
border-radius: 4px;
background-color: rgba(122, 196, 131, 0.42);
color: rgba(255, 255, 255, 1);
- font-size: 14px;
+ font-size: 28rpx;
text-align: center;
font-family: PingFangSC-regular;
- padding: 5px 15px;
+ padding: 5rpx 10rpx;
}
.del {
@@ -139,10 +150,10 @@ page {
border-radius: 4px;
background-color: rgba(247, 49, 42, 0.42);
color: rgba(255, 255, 255, 1);
- font-size: 14px;
+ font-size: 28rpx;
text-align: center;
font-family: PingFangSC-regular;
- padding: 5px 15px;
+ padding: 5rpx 10rpx;
margin-left: 5px;
}
@@ -188,7 +199,7 @@ page {
text-align: left;
}
-.form-item-title:not(.no-after)::after {
+.form-item-title:not(.no-after)::before {
content: "*";
color: red;
font-size: 14px;
@@ -198,4 +209,23 @@ page {
.form-item-content {
flex: 1;
+ text-align: right;
+}
+
+.confirm-btn {
+ background-color: green;
+ color: white;
+ font-size: 16px;
+ height: 40px;
+ border-radius: 5px;
+ text-align: center;
+ width: 85vw !important;
+}
+
+.weui-half-screen-dialog__ft {
+ /* padding: 0rpx; */
+}
+
+.weui-half-screen-dialog__bd {
+ padding-bottom: 40rpx;
}
\ No newline at end of file
diff --git a/pages/mine/mineAccount/mineOrder/mineOrder.wxml b/pages/mine/mineAccount/mineOrder/mineOrder.wxml
index c6960bb..13ab7c2 100644
--- a/pages/mine/mineAccount/mineOrder/mineOrder.wxml
+++ b/pages/mine/mineAccount/mineOrder/mineOrder.wxml
@@ -5,41 +5,39 @@
-
-
-
-
-
-
-
- 订单号:{{item.orderNo}}
- {{tools.orderStatus(item.orderStatus)}}
-
-
-
- {{detail.productName}}
-
- {{tools.proType(detail.productType)}}
- 数量{{detail.quantity}}
- 单价{{detail.unitPrice/100}}
- 总金额{{item.totalAmount/100}}
-
-
-
-
-
+
+
+
+
+
+
+ 订单号:{{item.orderNo}}
+ {{tools.orderStatus(item.orderStatus)}}
-
-
-
-
-
-
+
+
+ {{detail.productName}}
+
+ {{tools.proType(detail.productType)}}
+ 数量{{detail.quantity}}
+ 单价{{detail.unitPrice/100}}
+ 总金额{{item.totalAmount/100}}
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/mine/mineAccount/mineOrder/mineOrder.wxss b/pages/mine/mineAccount/mineOrder/mineOrder.wxss
index be92dfa..25ba17d 100644
--- a/pages/mine/mineAccount/mineOrder/mineOrder.wxss
+++ b/pages/mine/mineAccount/mineOrder/mineOrder.wxss
@@ -1,6 +1,6 @@
page {
background: linear-gradient(to bottom, #F0F0F0, #FFFFFF);
- background-size: 100% 100vh;
+ background-size: 100vw 100vh;
background-repeat: no-repeat;
}
@@ -15,10 +15,10 @@ page {
.search-container {
position: relative;
align-self: center;
- border-radius: 5px;
+ border-radius: 5rpx;
background-color: rgba(255, 255, 255, 1);
font-family: -regular;
- margin: 10px;
+ margin: 20rpx 30rpx;
padding: 5px;
display: flex;
flex-direction: row;
@@ -51,6 +51,7 @@ page {
.content-container {
height: 86vh;
margin-top: 50px;
+ width: 100vw;
}
@@ -58,14 +59,13 @@ page {
display: flex;
flex-direction: column;
justify-content: center;
- align-items: center;
- width: 100vw;
+ padding-bottom: 30px;
}
.order-item {
display: flex;
flex-direction: column;
- width: 100vw;
+ flex-grow: 1;
}
.order-item:nth-of-type(n+2) {
@@ -77,9 +77,10 @@ page {
flex-direction: row;
justify-content: space-between;
align-items: center;
- width: 87vw;
padding: 8px 17px;
background-color: #7AC483;
+ border-top-left-radius: 5rpx;
+ border-top-right-radius: 5rpx;
}
.order-no {
@@ -98,9 +99,10 @@ page {
display: flex;
flex-direction: column;
justify-content: center;
- align-items: flex-start;
background-color: white;
padding: 17px;
+ border-bottom-left-radius: 5rpx;
+ border-bottom-right-radius: 5rpx;
}
.order-caption {
@@ -116,7 +118,6 @@ page {
flex-direction: row;
justify-content: space-between;
align-items: center;
- width: 87vw;
margin-top: 15px;
}
@@ -151,10 +152,8 @@ page {
.order-remark-box {
display: flex;
flex-direction: row;
- justify-content: center;
align-items: center;
margin-top: 10px;
- width: 87vw;
}
.order-remark-title {
@@ -166,7 +165,7 @@ page {
.order-remark-content {
color: rgba(16, 16, 16, 1);
- font-size: 10px;
+ font-size: 20rpx;
text-align: left;
font-family: PingFangSC-light;
border-radius: 5px;
diff --git a/pages/mine/mineIndex/mine.js b/pages/mine/mineIndex/mine.js
index eb70622..9d7315f 100644
--- a/pages/mine/mineIndex/mine.js
+++ b/pages/mine/mineIndex/mine.js
@@ -1,5 +1,6 @@
// pages/mine/mine.js
import UserApi from '../../../net/api/userApi'
+import ProApi from '../../../net/api/projectApi'
import {
copyrightUrl
} from '../../../net/http'
@@ -9,6 +10,9 @@ const deviceInfo = wx.getDeviceInfo()
const screenInfo = wx.getWindowInfo();
const statusBarHeight = screenInfo.statusBarHeight; // 状态栏高度
const navBarHeight = deviceInfo.platform == 'IOS' ? 48 : 50; // 导航栏高度(iOS 为 44px,Android 为 48px)
+const tabBarHeight = screenInfo.screenHeight - (screenInfo.safeArea ? screenInfo.safeArea.bottom : 50);
+const screenHeight = screenInfo.screenHeight
+const screenWidth = screenInfo.screenWidth
const windowHeight = screenInfo.windowHeight - navBarHeight - statusBarHeight; //可用内容高度
Page({
@@ -20,6 +24,9 @@ Page({
navBarHeight: navBarHeight,
totalHeight: navBarHeight, // 导航栏总高度
contentHeight: windowHeight,
+ screenHeight: screenHeight, //屏幕高度
+ screenWidth: screenWidth, //屏幕宽度
+ tabBarHeight: tabBarHeight, //tabbar高度
allCount: 0,
materialCount: 0,
accountInfo: {},
@@ -49,6 +56,26 @@ Page({
errorHint: '',
animationData: {}, //刷新动画
animation: null,
+ tabList: [{
+ "pagePath": "pages/index/index",
+ "text": "首页",
+ "iconPath": "/static/images/ic_home_normal.png",
+ "selectedIconPath": "/static/images/ic_home_select.png",
+ "selected": true
+ },
+ {
+ "pagePath": "pages/mine/mineIndex/mine",
+ "text": "我的",
+ "iconPath": "/static/images/ic_mine_normal.png",
+ "selectedIconPath": "/static/images/ic_mine_select.png",
+ "selected": false
+ }
+ ],
+ color: "#515151",
+ selectedColor: "#FE9944",
+ allPrice: 0, //全托管价格
+ materialPrice: 0, //写材料价格
+ urgent: 0, //加急价格
},
/**
@@ -58,10 +85,6 @@ Page({
const _self = this
_self.getMineAccount()
_self.getMinePackageCount()
- const h = Utils.pxToRpx(_self.data.contentHeight)
- _self.setData({
- contentHeight: h
- })
// 创建一个动画实例
const animation = wx.createAnimation({
duration: 1000,
@@ -70,6 +93,125 @@ Page({
this.setData({
animation: animation
})
+ this.countViewHeight()
+ this.doGetPrice()
+ },
+ //计算高度
+ countViewHeight() {
+ //
+ const query = wx.createSelectorQuery();
+ const _self = this
+ // 指定要查询的 view 元素
+ query.select('#func-box').boundingClientRect();
+ query.exec((res) => {
+ if (res[0]) {
+ const height = res[0].height;
+ //屏幕高度-内容高度-tabbar高度
+ const contentHeight = _self.data.screenHeight - height - 50
+ const h = Utils.pxToRpx(contentHeight, _self.data.screenWidth)
+ const tempH = h - 140
+ console.log('转后', h, '内容高度:', tempH)
+ _self.setData({
+ contentHeight: tempH
+ })
+ } else {
+ console.log('未找到指定的 view 元素');
+ }
+ })
+ },
+ //跳转创建项目页面
+ openCreate(e) {
+ //计算价格
+ const _self = this
+ const type = e.currentTarget.dataset.type
+ if (type == 'ALL') {
+ if (_self.data.allCount > 0) {
+ _self.doGetPackage(type)
+ } else {
+ //提示充值
+ _self.setData({
+ errorHint: '您的账户当前无套餐包,为正常使用请及时充值。',
+ showError: true
+ })
+ }
+ } else {
+ if (_self.data.materialCount > 0) {
+ _self.doGetPackage(type)
+ } else {
+ //提示充值
+ _self.setData({
+ errorHint: '您的账户当前无套餐包,为正常使用请及时充值。',
+ showError: true
+ })
+ }
+ }
+ },
+ //获取套餐包详情
+ doGetPackage(type) {
+ const _self = this
+ const data = {
+ page: 1,
+ rows: 10,
+ packageType: type,
+ keyong: 1,
+ }
+ ProApi.doGetPackageList(data)
+ .then(res => {
+ console.log(res.rows)
+ if (res.rows && res.rows.length > 0) {
+ const packageId = res.rows[0].packageInfoId
+ const price = type == 'ALL' ? _self.data.allPrice : _self.data.materialPrice
+ wx.navigateTo({
+ url: '../../copyright/createProjectInfo/createProjectInfo?type=' + type + '&price=' + price + '&isUrgent=false&pId=' + packageId,
+ })
+ } else {
+ _self.setData({
+ errorHint: '您的账户当前无套餐包,为正常使用请及时充值。',
+ showError: true
+ })
+ }
+ })
+ .catch(err => {
+ _self.setData({
+ errorHint: '获取套餐包失败,请稍后重试',
+ showError: true
+ })
+ })
+ },
+ //获取单价
+ doGetPrice() {
+ wx.showLoading({
+ title: '加载中...',
+ })
+ const _self = this
+ ProApi.doGetPrice()
+ .then(res => {
+ wx.hideLoading()
+ console.log(res)
+ res.projTypes.forEach(el => {
+ if (el.type == 'ALL') {
+ _self.setData({
+ allPrice: el.price
+ })
+ } else if (el.type == 'MATERIAL') {
+ _self.setData({
+ materialPrice: el.price
+ })
+ }
+ });
+ _self.setData({
+ urgent: res.additional.urgent, //加急办理
+ })
+ }, err => {
+ wx.hideLoading()
+ wx.showToast({
+ title: '数据有误,请稍后重试',
+ icon: 'error',
+ success: () => {
+ wx.navigateBack()
+ }
+ })
+ })
},
//刷新账户
doRefresh() {
@@ -77,6 +219,7 @@ Page({
_self.playAnimation()
_self.getMineAccount() //获取账户信息
_self.getMinePackageCount() //获取套餐包信息
+ _self.doGetPrice() //获取单价
},
//播放刷新动画
playAnimation() {
@@ -101,6 +244,15 @@ Page({
}, 1100);
},
onShow(options) {
+ const pages = getCurrentPages();
+ const currentPage = pages[pages.length - 1];
+ const tabList = this.data.tabList;
+ tabList.forEach(item => {
+ item.selected = item.pagePath === currentPage.route;
+ });
+ this.setData({
+ tabList
+ });
this.getMineAccount() //获取账户信息
this.getMinePackageCount() //获取套餐包信息
},
diff --git a/pages/mine/mineIndex/mine.json b/pages/mine/mineIndex/mine.json
index bb15e8b..85625a2 100644
--- a/pages/mine/mineIndex/mine.json
+++ b/pages/mine/mineIndex/mine.json
@@ -1,7 +1,8 @@
{
"usingComponents": {
"mp-dialog": "weui-miniprogram/dialog/dialog",
- "mp-toptips": "weui-miniprogram/toptips/toptips"
+ "mp-toptips": "weui-miniprogram/toptips/toptips",
+ "custom-tabbar": "/components/tabbar/custom-tabbar"
},
"navigationStyle": "custom",
"enablePullDownRefresh": true
diff --git a/pages/mine/mineIndex/mine.wxml b/pages/mine/mineIndex/mine.wxml
index 53d0897..d9e510e 100644
--- a/pages/mine/mineIndex/mine.wxml
+++ b/pages/mine/mineIndex/mine.wxml
@@ -1,10 +1,10 @@
-
- AI喵著
-
-
+
+
+ AI喵著
+
@@ -19,11 +19,11 @@
套餐包余额
-
+
全托管
{{allCount}}
-
+
写材料
{{materialCount}}
@@ -34,22 +34,23 @@
-
+
+
+
{{hintTxt}}
diff --git a/pages/mine/mineIndex/mine.wxss b/pages/mine/mineIndex/mine.wxss
index 47710c4..866033b 100644
--- a/pages/mine/mineIndex/mine.wxss
+++ b/pages/mine/mineIndex/mine.wxss
@@ -17,7 +17,6 @@
.content-container {
position: relative;
- padding: 0rpx 10rpx 10rpx 10rpx;
z-index: 1;
color: white;
}
@@ -131,6 +130,8 @@
background: white;
border-radius: 20rpx;
padding-top: 20rpx;
+ margin-left: 30rpx;
+ margin-right: 30rpx;
}
.menu-item {
diff --git a/utils/comm.wxs b/utils/comm.wxs
index 889c106..816f8d6 100644
--- a/utils/comm.wxs
+++ b/utils/comm.wxs
@@ -3,21 +3,39 @@ var isEmpty = function (obj) {
if (typeof obj !== 'object') return false;
return JSON.stringify(obj) === '{}';
};
-var status = function (value) {
- var status = '排队中...'
- switch (value) {
- case 'NONE':
- status = '排队中...'
- break
- case 'GENERATING':
- status = '生成中...'
- break
- case 'SUCCESS':
- status = '生成成功'
- break
- case 'FAILED':
- status = '生成失败'
- break
+//state=AiSetting, value=generate
+var status = function (value, state) {
+ var status = '未生成'
+ if (state == 'SUCCESS') {
+ switch (value) {
+ case 'NONE':
+ status = '未生成'
+ break
+ case 'PENDING':
+ status = '等待'
+ break
+ case 'GENERATING':
+ status = '生成中...'
+ break
+ case 'SUCCESS':
+ status = '生成成功'
+ break
+ case 'FAILED':
+ status = '生成失败'
+ break
+ }
+ } else {
+ switch (state) {
+ case 'FAILED':
+ status = '生成失败'
+ break
+ case 'GENERATING':
+ status = '生成中...'
+ break
+ case 'NONE':
+ status = '未生成'
+ break
+ }
}
return status
};
@@ -42,6 +60,37 @@ var orderStatus = function (value) {
}
return statusStr
};
+var statusColor = function (value, state) {
+ var color = 'status-gray'
+ if (state == 'SUCCESS') {
+ switch (value) {
+ case 'NONE':
+ case 'PENDING':
+ color = 'status-gray'
+ break
+ case 'GENERATING':
+ case 'SUCCESS':
+ color = 'status-green'
+ break
+ case 'FAILED':
+ color = 'status-red'
+ break
+ }
+ } else {
+ switch (state) {
+ case 'GENERATING':
+ color = 'status-green'
+ break
+ case 'FAILED':
+ color = 'status-red'
+ break
+ case 'NONE':
+ color = 'status-gray'
+ break
+ }
+ }
+ return color
+}
var proType = function (value) {
// PROJ:项目、AGENT:代理、FULL_REFUND:全额退款、CORRECTION1_REFUND:补正1次退款、CORRECTION2_REFUND:补正2次退款
var str = '项目创建'
@@ -109,5 +158,6 @@ module.exports = {
proType: proType,
boderStyle: boderStyle,
fontColor: fontColor,
- timeSplit: timeSplit
+ timeSplit: timeSplit,
+ statusColor: statusColor
};
\ No newline at end of file
diff --git a/utils/util.js b/utils/util.js
index e79f229..4bb7933 100644
--- a/utils/util.js
+++ b/utils/util.js
@@ -62,8 +62,11 @@ const dateTimePicker = (startYear, endYear) => {
};
}
-const pxToRpx = (pxValue) => {
- return (pxValue / 750) * 750;
+const pxToRpx = (pxValue, screenWidth) => {
+ console.log('转换Px', pxValue, '屏幕宽度', screenWidth)
+ // return pxValue * (750 / screenWidth);
+ const rpx = (750 / screenWidth) * Number(pxValue)
+ return Math.floor(rpx);
}