作者 xuqiang

提交

... ... @@ -4,9 +4,77 @@
},
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
{
"path": "pages/my/personCenter",
"path": "pages/my/electContract",
"style": {
"navigationBarTitleText": "个人中心",
"navigationBarTitleText": "电子合同",
"navigationBarBackgroundColor":"#2e7ff9",
"navigationBarTextStyle":"white"
}
},
{
"path": "pages/my/questionFeedBack",
"style": {
"navigationBarTitleText": "问题反馈",
"navigationBarBackgroundColor":"#2e7ff9",
"navigationBarTextStyle":"white"
}
},
{
"path": "pages/my/msgList",
"style": {
"navigationBarTitleText": "消息",
"navigationBarBackgroundColor":"#2e7ff9",
"navigationBarTextStyle":"white"
}
},
{
"path": "pages/my/myDemand",
"style": {
"navigationBarTitleText": "我的需求"
}
},
{
"path": "pages/my/productAdd",
"style": {
"navigationBarTitleText": "产品添加"
}
},
{
"path": "pages/my/myProduct",
"style": {
"navigationBarTitleText": "我的产品",
"navigationBarBackgroundColor":"#2e7ff9",
"navigationBarTextStyle":"white"
}
},
{
"path": "pages/my/companyDesc",
"style": {
"navigationBarTitleText": "企业介绍"
}
},
{
"path": "pages/my/editPasswordOrigin",
"style": {
"navigationBarTitleText": "市场监管"
}
},
{
"path": "pages/my/editPasswordNew",
"style": {
"navigationBarTitleText": "市场监管"
}
},
{
"path": "pages/my/editPasswordPhone",
"style": {
"navigationBarTitleText": "市场监管"
}
},
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "市场监管",
"navigationBarBackgroundColor":"#2e7ff9",
"navigationBarTextStyle":"white"
}
... ... @@ -20,6 +88,14 @@
}
},
{
"path": "pages/my/personCenter",
"style": {
"navigationBarTitleText": "个人中心",
"navigationBarBackgroundColor":"#2e7ff9",
"navigationBarTextStyle":"white"
}
},
{
"path": "pages/demand/publish",
"style": {
"navigationBarTitleText": "需求发布",
... ... @@ -53,14 +129,6 @@
}
},
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "市场监管",
"navigationBarBackgroundColor":"#2e7ff9",
"navigationBarTextStyle":"white"
}
},
{
"path": "pages/index/indexNoLogin",
"style": {
"navigationBarTitleText": "市场监管",
... ...
<template>
<view>
<form>
<view style="padding: 0 32rpx;background: #fff;">
<!-- !!!!! placeholder 在ios表现有偏移 建议使用 第一种样式 -->
<view class="cu-form-group">
<view class="title">内容</view>
</view>
<view class="cu-form-group" style="border-top: none;">
<textarea v-model="textareaAValue" style="height: 300rpx;" @input="textareaAInput" placeholder="请描述内容..."></textarea>
</view>
<view class="cu-form-group" style="padding-top: 32rpx;">
<view class="grid col-4 grid-square flex-sub">
<view class="bg-img" v-for="(item,index) in imgList" :key="index" @tap="ViewImage" :data-url="imgList[index]">
<image :src="imgList[index]" mode="aspectFill"></image>
<view class="cu-tag bg-red" @tap.stop="DelImg" :data-index="index">
<text class='cuIcon-close'></text>
</view>
</view>
<view class="solids" style="width: 182rpx;height: 182rpx;" @tap="ChooseImage" v-if="imgList.length<9">
<image src="../../static/image/no_upload@2x.png" style="width: 182rpx;height: 182rpx;" mode=""></image>
</view>
</view>
</view>
</view>
<view class="cu-bar margin-top" style="display: flex;justify-content: center;">
<view style="background: #2e7ff9;border-radius: 80rpx;height: 80rpx;width: 686rpx;color: #fff;text-align: center;line-height: 80rpx;">
上传
</view>
</view>
</form>
</view>
</template>
<script>
export default {
data() {
return {
index: -1,
picker: ['科室1', '科室2', '科室3'],
multiIndex: [0, 0, 0],
imgList: [],
modalName: null,
textareaAValue: '',
textareaBValue: ''
};
},
methods: {
PickerChange(e) {
this.index = e.detail.value
},
ChooseImage() {
uni.chooseImage({
count: 4, //默认9
sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
sourceType: ['album'], //从相册选择
success: (res) => {
if (this.imgList.length != 0) {
this.imgList = this.imgList.concat(res.tempFilePaths)
} else {
this.imgList = res.tempFilePaths
}
}
});
},
ViewImage(e) {
uni.previewImage({
urls: this.imgList,
current: e.currentTarget.dataset.url
});
},
DelImg(e) {
uni.showModal({
title: '提示',
content: '确定要删除此照片吗?',
cancelText: '再看看',
confirmText: '确认',
success: res => {
if (res.confirm) {
this.imgList.splice(e.currentTarget.dataset.index, 1)
}
}
})
},
textareaAInput(e) {
this.textareaAValue = e.detail.value
},
textareaBInput(e) {
this.textareaBValue = e.detail.value
}
}
}
</script>
<style lang="scss">
page{
background-color: $uni-bg-color-hui;
}
.cu-form-group .title {
min-width: calc(4em + 30px);
}
</style>
... ...
<template>
<view style="padding-top: 1rpx;">
<view class="formWrap">
<view class="formItem">
<view class="itemLeft">
新密码
</view>
<input type="text" value="" placeholder="请输入新密码"/>
</view>
<view class="formItem">
<view class="itemLeft">
确认密码
</view>
<input type="text" value="" placeholder="请确认密码"/>
</view>
</view>
<view class="loginBtnWrap">
<view class="loginBtn">
保存
</view>
</view>
</view>
</template>
<script>
export default{
data(){
return{
}
}
}
</script>
<style lang="scss">
page{
background-color: $uni-bg-color-hui;
}
.formWrap{
margin-top: 20rpx;
background: $uni-bg-bai-color;
padding: 0 32rpx;
.formItem{
height: 110rpx;
border-bottom: 1rpx solid #ebedf0;
display: flex;
align-items: center;
.itemLeft{
width: 150rpx;
font-size: $uni-font-size-30;
image{width: 24rpx;height: 24rpx;margin-left: 10rpx;}
}
input{flex: 1;}
}
.formItem:nth-of-type(2){border-bottom:none;}
}
.loginBtnWrap{
padding-top: 100rpx;
display: flex;
justify-content: center;
.loginBtn{
width: 686rpx;
height: 88rpx;
background: $uni-bg-main-color;
border-radius: 96rpx;
text-align: center;
color: $uni-bg-bai-color;
line-height: 88rpx;
font-size: $uni-font-size-32;
}
}
</style>
... ...
<template>
<view style="padding-top: 1rpx;">
<view class="formWrap">
<view class="formItem">
<view class="itemLeft">
原密码
</view>
<input type="text" value="" placeholder="请输入原密码"/>
</view>
</view>
<view class="phoneCheck" @click="$href('editPasswordPhone')">
手机号验证
</view>
<view class="loginBtnWrap">
<view class="loginBtn" @click="$href('editPasswordNew')">
下一步
</view>
</view>
</view>
</template>
<script>
export default{
data(){
return{
}
}
}
</script>
<style lang="scss">
page{
background-color: $uni-bg-color-hui;
}
.formWrap{
margin-top: 20rpx;
background: $uni-bg-bai-color;
padding: 0 32rpx;
.formItem{
height: 110rpx;
display: flex;
align-items: center;
.itemLeft{
width: 150rpx;
font-size: $uni-font-size-30;
image{width: 24rpx;height: 24rpx;margin-left: 10rpx;}
}
input{flex: 1;}
}
}
.phoneCheck{
padding: 20rpx 32rpx;
color: $uni-bg-main-color;
font-size: $uni-font-size-24;
text-align: right;
}
.loginBtnWrap{
padding-top: 100rpx;
display: flex;
justify-content: center;
.loginBtn{
width: 686rpx;
height: 88rpx;
background: $uni-bg-main-color;
border-radius: 96rpx;
text-align: center;
color: $uni-bg-bai-color;
line-height: 88rpx;
font-size: $uni-font-size-32;
}
}
</style>
... ...
<template>
<view style="padding-top: 1rpx;">
<view class="formWrap">
<view class="formItem">
<view class="itemLeft">
手机号
</view>
<input type="text" value="" placeholder="请输入手机号"/>
</view>
<view class="formItem">
<view class="itemLeft">
验证码
</view>
<input type="text" value="" placeholder="请输入验证码"/>
<!-- 条件判断显示倒计时秒数(59s) -->
<view class="codeBtn" :class="{active:sendCode}">
获取验证码
</view>
</view>
</view>
<view class="loginBtnWrap">
<view class="loginBtn" @click="$href('editPasswordNew')">
下一步
</view>
</view>
</view>
</template>
<script>
export default{
data(){
return{
sendCode:true
}
}
}
</script>
<style lang="scss">
page{
background-color: $uni-bg-color-hui;
}
.formWrap{
margin-top: 20rpx;
background: $uni-bg-bai-color;
padding: 0 32rpx;
.formItem{
height: 110rpx;
border-bottom: 1rpx solid #ebedf0;
display: flex;
align-items: center;
.itemLeft{
width: 130rpx;
font-size: $uni-font-size-30;
}
input{flex: 1;}
.codeBtn{
width: 148rpx;
height: 50rpx;
border: 1rpx solid #2e7ff9;
border-radius: 21rpx;
font-size: $uni-font-size-26;
color: $uni-bg-main-color;
line-height: 50rpx;
text-align: center;
}
.codeBtn.active{
border: 1rpx solid #dcdee0;
color: #dcdee0;
}
}
.formItem:nth-of-type(2){border-bottom:none;}
}
.loginBtnWrap{
padding-top: 100rpx;
display: flex;
justify-content: center;
.loginBtn{
width: 686rpx;
height: 88rpx;
background: $uni-bg-main-color;
border-radius: 96rpx;
text-align: center;
color: $uni-bg-bai-color;
line-height: 88rpx;
font-size: $uni-font-size-32;
}
}
</style>
... ...
<template>
<view>
<view class="topBgWrap">
<image src="../../static/image/del/ic_90@2x.png" mode="widthFix"></image>
</view>
</view>
</template>
<script>
</script>
<style lang="scss" scoped>
.topBgWrap{
height: 452rpx;
padding: 1rpx 32rpx 32rpx 32rpx;
background: linear-gradient(181deg,#2e7ff9 0%, rgba(46,127,249,0.00) 100%);
image{
margin-top: 100rpx;
width: 686rpx;
}
}
</style>
... ...
<template>
<view>
<view class="productList">
<view class="productItem">
<view class="productRight">
<image src="../../static/image/my/ic_33@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
<text class="msgTitle">待办事项</text>
<text class="msgTime">2020-8-06</text>
</view>
<view class="productDesc">
您有4条代办,请及时处理
</view>
</view>
</view>
<view class="productItem">
<view class="productRight">
<image src="../../static/image/my/ic_34@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
<text class="msgTitle">系统消息</text>
<text class="msgTime">2020-8-06</text>
</view>
<view class="productDesc">
您有一个系统消息待处理您有一个系统消息系统消息待处理您有一个系统消息系统消息待处理您有一个系统消息
</view>
</view>
</view>
<view class="productItem">
<view class="productRight">
<image src="../../static/image/my/ic_35@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
<text class="msgTitle">系统公告</text>
<text class="msgTime">2020-8-06</text>
</view>
<view class="productDesc">
您有一个系统消息待处理您有一个系统消息系统消息待处理您有一个系统消息系统消息待处理您有一个系统消息
</view>
</view>
</view>
</view>
</view>
</template>
<script>
</script>
<style lang="scss">
page{
background-color: $uni-bg-color-hui;
}
.productList{
padding: 1rpx 32rpx 32rpx 32rpx;
.productItem{
margin-top: 32rpx;
padding: 32rpx;
display: flex;
background: $uni-bg-bai-color;
border-radius: 20rpx;
.productLeft{
flex: 1;
.productName{
display: flex;
justify-content: space-between;
align-items: center;
.msgTitle{
font-size: $uni-font-size-28;
font-weight: 600;
}
.msgTime{
font-size: $uni-font-size-24;
color: $uni-text-color-hui;
}
}
.productDesc{
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp:1;
-webkit-box-orient:vertical;
color: $uni-text-color-hui;
font-size: $uni-font-size-26;
}
}
.productRight{
width: 84rpx;
display: flex;
justify-content: flex-start;
image{width: 64rpx;height: 68rpx;border-radius: 20rpx;}
}
}
}
</style>
... ...
<template>
<view>
<view class="wrap">
<view class="u-tabs-box">
<u-tabs-swiper activeColor="#2e7ff9" ref="tabs" :barWidth="100" :list="list" :current="current" @change="change" :is-scroll="false" swiperWidth="750"></u-tabs-swiper>
</view>
<swiper class="swiper-box" :current="swiperCurrent" @transition="transition" @animationfinish="animationfinish">
<swiper-item class="swiper-item">
<scroll-view scroll-y style="height: 100%;width: 100%;" @scrolltolower="reachBottom">
<view class="page-box">
<view class="order" v-for="(res, index) in orderList[0]" :key="res.id">
<view class="infoItem">
<view class="itemLeft">
科室名称
</view>
<view class="itemCenter">
财务科
</view>
<view class="itemRight">
待办理
</view>
</view>
<view class="infoItem">
<view class="itemLeft">
信息标题
</view>
<view class="itemCenter">
第二季度税务报表单据
</view>
</view>
<view class="infoItem">
<view class="itemLeft">
信息内容
</view>
<view class="itemCenter infoContent">
税务报表已经提交了,什么时候可以查询的到相应信息时候可以查询的到相应信息时候什么时候可以查询的到相应信息时候可以查询的到相应信息时候
</view>
</view>
</view>
<u-loadmore :status="loadStatus[0]" bgColor="#f2f2f2"></u-loadmore>
</view>
</scroll-view>
</swiper-item>
<swiper-item class="swiper-item">
<scroll-view scroll-y style="height: 100%;width: 100%;" @scrolltolower="reachBottom">
<view class="page-box">
<view class="order" v-for="(res, index) in orderList[1]" :key="res.id">
<view class="infoItem">
<view class="itemLeft">
科室名称
</view>
<view class="itemCenter">
财务科
</view>
<view class="itemRight active">
已办理
</view>
</view>
<view class="infoItem">
<view class="itemLeft">
信息标题
</view>
<view class="itemCenter">
第二季度税务报表单据
</view>
</view>
<view class="infoItem">
<view class="itemLeft">
信息内容
</view>
<view class="itemCenter infoContent">
税务报表已经提交了,什么时候可以查询的到相应信息时候可以查询的到相应信息时候什么时候可以查询的到相应信息时候可以查询的到相应信息时候
</view>
</view>
</view>
<u-loadmore :status="loadStatus[1]" bgColor="#f2f2f2"></u-loadmore>
</view>
</scroll-view>
</swiper-item>
</swiper>
</view>
</view>
</template>
<script>
export default {
data() {
return {
orderList: [[], [], [], []],
dataList: [
{
id: 1,
store: '夏日流星限定贩卖',
deal: '交易成功',
goodsList: [
{
goodsUrl: '//img13.360buyimg.com/n7/jfs/t1/103005/7/17719/314825/5e8c19faEb7eed50d/5b81ae4b2f7f3bb7.jpg',
title: '【冬日限定】现货 原创jk制服女2020冬装新款小清新宽松软糯毛衣外套女开衫短款百搭日系甜美风',
type: '灰色;M',
deliveryTime: '付款后30天内发货',
price: '348.58',
number: 2
},
{
goodsUrl: '//img12.360buyimg.com/n7/jfs/t1/102191/19/9072/330688/5e0af7cfE17698872/c91c00d713bf729a.jpg',
title: '【葡萄藤】现货 小清新学院风制服格裙百褶裙女短款百搭日系甜美风原创jk制服女2020新款',
type: '45cm;S',
deliveryTime: '付款后30天内发货',
price: '135.00',
number: 1
}
]
},
{
id: 2,
store: '江南皮革厂',
deal: '交易失败',
goodsList: [
{
goodsUrl: '//img14.360buyimg.com/n7/jfs/t1/60319/15/6105/406802/5d43f68aE9f00db8c/0affb7ac46c345e2.jpg',
title: '【冬日限定】现货 原创jk制服女2020冬装新款小清新宽松软糯毛衣外套女开衫短款百搭日系甜美风',
type: '粉色;M',
deliveryTime: '付款后7天内发货',
price: '128.05',
number: 1
}
]
},
{
id: 3,
store: '三星旗舰店',
deal: '交易失败',
goodsList: [
{
goodsUrl: '//img11.360buyimg.com/n7/jfs/t1/94448/29/2734/524808/5dd4cc16E990dfb6b/59c256f85a8c3757.jpg',
title: '三星(SAMSUNG)京品家电 UA65RUF70AJXXZ 65英寸4K超高清 HDR 京东微联 智能语音 教育资源液晶电视机',
type: '4K,广色域',
deliveryTime: '保质5年',
price: '1998',
number: 3
},
{
goodsUrl: '//img14.360buyimg.com/n7/jfs/t6007/205/4099529191/294869/ae4e6d4f/595dcf19Ndce3227d.jpg!q90.jpg',
title: '美的(Midea)639升 对开门冰箱 19分钟急速净味 一级能效冷藏双开门杀菌智能家用双变频节能 BCD-639WKPZM(E)',
type: '容量大,速冻',
deliveryTime: '保质5年',
price: '2354',
number: 1
}
]
},
{
id: 4,
store: '三星旗舰店',
deal: '交易失败',
goodsList: [
{
goodsUrl: '//img10.360buyimg.com/n7/jfs/t22300/31/1505958241/171936/9e201a89/5b2b12ffNe6dbb594.jpg!q90.jpg',
title: '法国进口红酒 拉菲(LAFITE)传奇波尔多干红葡萄酒750ml*6整箱装',
type: '4K,广色域',
deliveryTime: '珍藏10年好酒',
price: '1543',
number: 3
},
{
goodsUrl: '//img10.360buyimg.com/n7/jfs/t1/107598/17/3766/525060/5e143aacE9a94d43c/03573ae60b8bf0ee.jpg',
title: '蓝妹(BLUE GIRL)酷爽啤酒 清啤 原装进口啤酒 罐装 500ml*9听 整箱装',
type: '一打',
deliveryTime: '口感好',
price: '120',
number: 1
}
]
},
{
id: 5,
store: '三星旗舰店',
deal: '交易成功',
goodsList: [
{
goodsUrl: '//img12.360buyimg.com/n7/jfs/t1/52408/35/3554/78293/5d12e9cfEfd118ba1/ba5995e62cbd747f.jpg!q90.jpg',
title: '企业微信 中控人脸指纹识别考勤机刷脸机 无线签到异地多店打卡机WX108',
type: '识别效率高',
deliveryTime: '使用方便',
price: '451',
number: 9
}
]
}
],
list: [
{
name: '待解决'
},
{
name: '已解决'
}
],
current: 0,
swiperCurrent: 0,
tabsHeight: 0,
dx: 0,
loadStatus: ['loadmore','loadmore','loadmore','loadmore'],
};
},
onLoad() {
this.getOrderList(0);
this.getOrderList(1);
this.getOrderList(3);
},
computed: {
// 价格小数
priceDecimal() {
return val => {
if (val !== parseInt(val)) return val.slice(-2);
else return '00';
};
},
// 价格整数
priceInt() {
return val => {
if (val !== parseInt(val)) return val.split('.')[0];
else return val;
};
}
},
methods: {
reachBottom() {
// 此tab为空数据
if(this.current != 2) {
this.loadStatus.splice(this.current,1,"loading")
setTimeout(() => {
this.getOrderList(this.current);
}, 1200);
}
},
// 页面数据
getOrderList(idx) {
for(let i = 0; i < 5; i++) {
let index = this.$u.random(0, this.dataList.length - 1);
let data = JSON.parse(JSON.stringify(this.dataList[index]));
data.id = this.$u.guid();
this.orderList[idx].push(data);
}
this.loadStatus.splice(this.current,1,"loadmore")
},
// 总价
totalPrice(item) {
let price = 0;
item.map(val => {
price += parseFloat(val.price);
});
return price.toFixed(2);
},
// 总件数
totalNum(item) {
let num = 0;
item.map(val => {
num += val.number;
});
return num;
},
// tab栏切换
change(index) {
this.swiperCurrent = index;
this.getOrderList(index);
},
transition({ detail: { dx } }) {
this.$refs.tabs.setDx(dx);
},
animationfinish({ detail: { current } }) {
this.$refs.tabs.setFinishCurrent(current);
this.swiperCurrent = current;
this.current = current;
}
}
};
</script>
<style>
/* #ifndef H5 */
page {
height: 100%;
background-color: #f2f2f2;
}
/* #endif */
</style>
<style lang="scss" scoped>
.order {
width: 710rpx;
background-color: #ffffff;
margin: 20rpx auto;
border-radius: 20rpx;
box-sizing: border-box;
padding: 20rpx;
font-size: 28rpx;
.infoItem{
display: flex;
justify-content: space-between;
padding-top: 20rpx;
.itemLeft{
width: 200rpx;
font-size: $uni-font-size-30;
}
.itemCenter{
flex: 1;
color: $uni-text-color-hui;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp:1;
-webkit-box-orient:vertical;
}
.itemCenter.infoContent{
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp:3;
-webkit-box-orient:vertical;
}
.itemRight{
width: 100rpx;
height: 40rpx;
background: #fffbe8;
border-radius: 20rpx;
text-align: center;
line-height: 40rpx;
color: #fa700c;
font-size: $uni-font-size-24;
}
.itemRight.active{
background: #f7f8fa;
color: #323233;
}
}
.infoItem:nth-of-type(1){padding-top: 0;}
}
.centre {
text-align: center;
margin: 200rpx auto;
font-size: 32rpx;
image {
width: 164rpx;
height: 164rpx;
border-radius: 50%;
margin-bottom: 20rpx;
}
.tips {
font-size: 24rpx;
color: #999999;
margin-top: 20rpx;
}
.btn {
margin: 80rpx auto;
width: 200rpx;
border-radius: 32rpx;
line-height: 64rpx;
color: #ffffff;
font-size: 26rpx;
background: linear-gradient(270deg, rgba(249, 116, 90, 1) 0%, rgba(255, 158, 1, 1) 100%);
}
}
.wrap {
display: flex;
flex-direction: column;
height: calc(100vh - var(--window-top));
width: 100%;
}
.swiper-box {
flex: 1;
}
.swiper-item {
height: 100%;
}
</style>
... ...
<template>
<view>
<view class="productList">
<view class="productItem">
<view class="productRight">
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
自主研发核心技术
</view>
<view class="productDesc">
多层次主动防御系统+自主知识产权多层次主动防御+自主知识产权多层次主动防御+自主知识产权多层次主动防御
</view>
</view>
</view>
<view class="productItem">
<view class="productRight">
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
自主研发核心技术
</view>
<view class="productDesc">
多层次主动防御系统+自主知识产权多层次主动防御+自主知识产权多层次主动防御+自主知识产权多层次主动防御
</view>
</view>
</view>
<view class="productItem">
<view class="productRight">
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
自主研发核心技术
</view>
<view class="productDesc">
多层次主动防御系统+自主知识产权多层次主动防御+自主知识产权多层次主动防御+自主知识产权多层次主动防御
</view>
</view>
</view>
<view class="productItem">
<view class="productRight">
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
自主研发核心技术
</view>
<view class="productDesc">
多层次主动防御系统+自主知识产权多层次主动防御+自主知识产权多层次主动防御+自主知识产权多层次主动防御
</view>
</view>
</view>
<view class="productItem">
<view class="productRight">
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
自主研发核心技术
</view>
<view class="productDesc">
多层次主动防御系统+自主知识产权多层次主动防御+自主知识产权多层次主动防御+自主知识产权多层次主动防御
</view>
</view>
</view>
<view class="productItem">
<view class="productRight">
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
</view>
<view class="productLeft">
<view class="productName">
自主研发核心技术
</view>
<view class="productDesc">
多层次主动防御系统+自主知识产权多层次主动防御+自主知识产权多层次主动防御+自主知识产权多层次主动防御
</view>
</view>
</view>
</view>
<view style="height: 110rpx;"></view>
<!-- 底部按钮区域 -->
<view class="loginBtnWrap">
<view class="loginBtn">
添加
</view>
</view>
</view>
</template>
<script>
</script>
<style lang="scss">
page{
background-color: $uni-bg-color-hui;
}
.productList{
padding: 1rpx 32rpx 32rpx 32rpx;
.productItem{
margin-top: 32rpx;
height: 218rpx;
padding: 32rpx;
display: flex;
background: $uni-bg-bai-color;
.productLeft{
flex: 1;
.productName{
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp:1;
-webkit-box-orient:vertical;
font-size: $uni-font-size-36;
}
.productDesc{
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp:2;
-webkit-box-orient:vertical;
padding-top: 24rpx;
color: $uni-text-color-hui;
font-size: $uni-font-size-28;
}
}
.productRight{
width: 250rpx;
display: flex;
justify-content: flex-start;
image{width: 230rpx;height: 130rpx;border-radius: 20rpx;}
}
}
}
/* 底部按钮区域 */
.loginBtnWrap{
position: fixed;
bottom: 0;
width: 750rpx;
height: 110rpx;
display: flex;
justify-content: center;
align-items: center;
background: $uni-bg-color-hui;
.loginBtn{
width: 686rpx;
height: 88rpx;
background: $uni-bg-main-color;
border-radius: 96rpx;
text-align: center;
color: $uni-bg-bai-color;
line-height: 88rpx;
font-size: $uni-font-size-32;
}
}
</style>
... ...
<template>
<view style="padding-top: 1rpx;">
<form>
<view style="padding: 0 32rpx;background: #fff;margin-top: 20rpx;">
<view class="cu-form-group">
<view class="title">产品标题</view>
<input placeholder="请输入产品标题" name="input"></input>
</view>
<!-- !!!!! placeholder 在ios表现有偏移 建议使用 第一种样式 -->
<view class="cu-form-group">
<view class="title">内容</view>
</view>
<view class="cu-form-group" style="border-top: none;">
<textarea maxlength="1000" v-model="textareaAValue" @input="textareaAInput" placeholder="请描述内容..."></textarea>
</view>
<view class="cu-form-group" style="padding-top: 32rpx;">
<view class="grid col-4 grid-square flex-sub">
<view class="bg-img" v-for="(item,index) in imgList" :key="index" @tap="ViewImage" :data-url="imgList[index]">
<image :src="imgList[index]" mode="aspectFill"></image>
<view class="cu-tag bg-red" @tap.stop="DelImg" :data-index="index">
<text class='cuIcon-close'></text>
</view>
</view>
<view class="solids" style="width: 182rpx;height: 182rpx;" @tap="ChooseImage" v-if="imgList.length<9">
<image src="../../static/image/no_upload@2x.png" style="width: 182rpx;height: 182rpx;" mode=""></image>
</view>
</view>
</view>
</view>
<view class="cu-bar margin-top" style="display: flex;justify-content: center;">
<view style="background: #2e7ff9;border-radius: 80rpx;height: 80rpx;width: 686rpx;color: #fff;text-align: center;line-height: 80rpx;">
上传
</view>
</view>
</form>
</view>
</template>
<script>
export default {
data() {
return {
index: -1,
picker: ['科室1', '科室2', '科室3'],
multiIndex: [0, 0, 0],
imgList: [],
modalName: null,
textareaAValue: '',
textareaBValue: ''
};
},
methods: {
PickerChange(e) {
this.index = e.detail.value
},
ChooseImage() {
uni.chooseImage({
count: 4, //默认9
sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
sourceType: ['album'], //从相册选择
success: (res) => {
if (this.imgList.length != 0) {
this.imgList = this.imgList.concat(res.tempFilePaths)
} else {
this.imgList = res.tempFilePaths
}
}
});
},
ViewImage(e) {
uni.previewImage({
urls: this.imgList,
current: e.currentTarget.dataset.url
});
},
DelImg(e) {
uni.showModal({
title: '提示',
content: '确定要删除此照片吗?',
cancelText: '再看看',
confirmText: '确认',
success: res => {
if (res.confirm) {
this.imgList.splice(e.currentTarget.dataset.index, 1)
}
}
})
},
textareaAInput(e) {
this.textareaAValue = e.detail.value
},
textareaBInput(e) {
this.textareaBValue = e.detail.value
}
}
}
</script>
<style lang="scss">
page{
background-color: $uni-bg-color-hui;
}
.cu-form-group .title {
min-width: calc(4em + 30px);
}
</style>
... ...
<template>
<view style="padding: 20rpx 32rpx;">
<view class="questionFeedBack">
<view class="questionNameWrap">
<text>第二季度税务报表单据</text>
<!-- 条件判断是否已办理,注意颜色切换(待办理、已办理、已解决)-->
<view
class="questionStatus"
:style="{
background:status == 1 ? ' #fffbe8' : status == 2 ? ' #f7f8fa' : '#cbe0ff',
color:status == 1 ? ' #fa700c' : status == 2 ? ' #323233' : '#2e7ff9'}"
>
{{status == 1 ? '待办理' : status == 2 ? '已办理' : '已解决'}}
</view>
</view>
<view class="roomName">
财务科
</view>
<view class="imgList">
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
<image src="../../static/image/del/ic_90@2x.png" mode=""></image>
</view>
<view class="questionContent">
税务报表已经提交了,什么时候可以查询的到相应信息从时间上可以追溯到20世纪30年代;最为典型的是30年代英国一则判例。1935年,英国上议院议员汤姆林爵士针对“税务局长 。
</view>
<view class="questionTime">
2020/12/12
</view>
<!-- 条件判断是否已办理,已办理显示此项 -->
<view class="userInfo">
<view class="infoItem">
人员名称:张某人
</view>
<view class="infoItem">
职位:销售总经理
</view>
<view class="infoItem">
手机号:182023569652
</view>
</view>
<!-- 条件判断是否已办理,未办理显示此项 -->
<!-- 底部按钮区域 -->
<view class="loginBtnWrap">
<view class="loginBtn">
{{status == 3 ? '已解决' : '解决'}}
</view>
</view>
</view>
</view>
</template>
<script>
export default{
data(){
return{
status:3
}
}
}
</script>
<style lang="scss">
page{
background-color: $uni-bg-color-hui;
}
.questionFeedBack{
background: $uni-bg-bai-color;
border-radius: 20rpx;
padding: 32rpx;
.questionNameWrap{
display: flex;
justify-content: space-between;
align-items: center;
text{font-size: 34rpx;}
.questionStatus{
width: 100rpx;
height: 40rpx;
border-radius: 20rpx;
text-align: center;
line-height: 40rpx;
font-size: $uni-font-size-24;
}
}
.roomName{
font-size: $uni-font-size-26;
color: $uni-text-color-hui;
}
.imgList{
display: flex;
flex-wrap: wrap;
image{width: 198rpx;height: 194rpx;margin-right: 14rpx;margin-top: 20rpx;}
image:nth-of-type(3n){margin-right:0;}
}
.questionContent{
padding-top: 32rpx;
font-size: $uni-font-size-28;
color: $uni-text-color-hui;
line-height: 48rpx;
}
.questionTime{
padding-top: 32rpx;
text-align: right;
font-size: $uni-font-size-26;
color: $uni-text-color-hui;
}
.userInfo{
padding: 0 32rpx 32rpx 32rpx;
margin-top: 32rpx;
background: #f7f8fa;
border-radius: 20rpx;
.infoItem{
padding-top: 32rpx;
}
}
/* 底部按钮区域 */
.loginBtnWrap{
padding-top: 32rpx;
display: flex;
justify-content: center;
align-items: center;
.loginBtn{
width: 686rpx;
height: 88rpx;
background: $uni-bg-main-color;
border-radius: 96rpx;
text-align: center;
color: $uni-bg-bai-color;
line-height: 88rpx;
font-size: $uni-font-size-32;
}
}
}
</style>
... ...