Commit 8f20cbd2 authored by 陈宗胤(贵阳日报)'s avatar 陈宗胤(贵阳日报)
parents 7b0e8b71 b74a0295
import { request } from '../utils/request';
// 入驻申请列表
export function shopList() {
return request({
url: `/sgyrdd/shop/list`,
method: 'GET',
});
}
// 申请成为商
export function applyShop(data) {
return request({
url: `/sgyrdd/shop/apply`,
method: 'POST',
data,
});
}
@font-face {
font-family: "iconfont"; /* Project id 4633414 */
src: url('//at.alicdn.com/t/c/font_4633414_ne2afa4bsr9.woff2?t=1722652845956') format('woff2'),
url('//at.alicdn.com/t/c/font_4633414_ne2afa4bsr9.woff?t=1722652845956') format('woff'),
url('//at.alicdn.com/t/c/font_4633414_ne2afa4bsr9.ttf?t=1722652845956') format('truetype');
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-lianhe40:before {
content: "\e866";
}
.icon-shuangxiajiantou:before {
content: "\e660";
}
.icon-dianzan:before {
content: "\e602";
}
.icon-dianzan_kuai:before {
content: "\ec8c";
}
.icon-xiai:before {
content: "\e601";
}
.icon-tongzhi:before {
content: "\e60d";
}
.iconfont-fenxiang:before {
content: "\e639";
}
.icon-shuangshangjiantou-:before {
content: "\e600";
}
.icon-jinggao:before {
content: "\e716";
}
.icon-rs-countdown:before {
content: "\e614";
}
.icon-naozhong:before {
content: "\e666";
}
.icon-ic_business_refund24px:before {
content: "\e619";
}
.icon-shoucang:before {
content: "\e606";
}
.icon-pinglun:before {
content: "\e618";
}
.icon-aixin:before {
content: "\e622";
}
font-family: "iconfont"; /* Project id 4633414 */
src: url('//at.alicdn.com/t/c/font_4633414_jhlymbmljta.woff2?t=1722933863144') format('woff2'),
url('//at.alicdn.com/t/c/font_4633414_jhlymbmljta.woff?t=1722933863144') format('woff'),
url('//at.alicdn.com/t/c/font_4633414_jhlymbmljta.ttf?t=1722933863144') format('truetype');
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-gengduo:before {
content: "\e633";
}
.icon-lianhe40:before {
content: "\e866";
}
.icon-shuangxiajiantou:before {
content: "\e660";
}
.icon-dianzan:before {
content: "\e602";
}
.icon-dianzan_kuai:before {
content: "\ec8c";
}
.icon-xiai:before {
content: "\e601";
}
.icon-tongzhi:before {
content: "\e60d";
}
.icon-fenxiang:before {
content: "\e639";
}
.icon-shuangshangjiantou-:before {
content: "\e600";
}
.icon-jinggao:before {
content: "\e716";
}
.icon-rs-countdown:before {
content: "\e614";
}
.icon-naozhong:before {
content: "\e666";
}
.icon-ic_business_refund24px:before {
content: "\e619";
}
.icon-shoucang:before {
content: "\e606";
}
.icon-pinglun:before {
content: "\e618";
}
.icon-aixin:before {
content: "\e622";
}
\ No newline at end of file
......@@ -28,29 +28,15 @@
/>
<text class="textarea">上传图片/视频</text>
<wd-upload
prop="images"
class="wdUpload"
accept="media"
multiple
:action="fileUPload"
:action="action"
@change="handleFile"
:file-list="fileList"
:before-remove="beforeRemove"
:header="headers"
></wd-upload>
<!-- <view class="tuijian" v-if="show">
<view class="tjTitle">
<text class="textarea">我要推荐菜</text>
<text class="textRight">
查看全部(30)
<wd-icon name="arrow-right"></wd-icon>
</text>
</view>
<view class="itemtuijianList">
<wd-checkbox-group shape="button">
<wd-checkbox modelValue="jingmai" checked-color="#f00" shape="button"></wd-checkbox>
<wd-checkbox modelValue="asd" shape="button">沃特</wd-checkbox>
</wd-checkbox-group>
</view>
</view> -->
<wd-cell title="匿名评价" prop="isAnonymous" class="itemSwichval">
<wd-switch
size="48rpx"
......@@ -63,40 +49,57 @@
</wd-form>
<wd-button type="error" block @click="handleSubmit">发布</wd-button>
<wd-overlay :show="overshow">
<view class="overlay">
<wd-button block type="info" @click="deleteImg">删除图片</wd-button>
<wd-button block type="info" @click="overshow = false">取消</wd-button>
</view>
</wd-overlay>
</view>
</view>
</template>
<script setup lang="ts">
import Header from './components/Header/index.vue';
import { getToken } from '@/utils/auth';
import { evaluation } from '@/api/order';
const form = ref();
const token = getToken();
// 上传图片地址
const action = ref(import.meta.env.VITE_APP_BASE_URL + '/sgyrdd/file/update');
const headers = ref();
/**
* options
*/
const shopname = ref<string>('');
onLoad((options) => {
console.log(options);
shopname.value = options?.shopName;
formdata.orderNumber = options?.orderNumber;
headers.value = { Authorization: 'Bearer ' + token };
});
const formdata = reactive<{
orderNumber: string;
evaluation: string;
images: string[];
images: string;
isAnonymous: number;
descriptionMatches: number;
merchantServices: number;
}>({
orderNumber: '',
evaluation: '',
images: [],
images: '',
isAnonymous: 0,
descriptionMatches: 0,
merchantServices: 0,
});
const rules = {};
const rules = {
// evaluation: [
// { required: true, message: '请填写你的评价' },
// { type: 'array', min: 1, message: '请上传图片/视频' },
// ],
};
/**
* 显示推荐菜
*/
......@@ -113,25 +116,63 @@ const merList = ref({
4: '好',
5: '非常好',
});
const handlemerchant = (e) => {
merchantServices.value = e.value;
const handlemerchant = (item: { value: number }) => {
merchantServices.value = item.value;
};
/**
* 图片上传
*/
const fileUPload = ref<string>('/');
const fileList = ref<any[]>([]);
function handleFile({ fileList: files }) {
fileList.value = files;
}
/**
* 图片地址处理
*/
const proImage = () => {
const data = fileList.value.map((item) => {
return JSON.parse(item.response).data.url;
});
return data.join(',');
};
function handleFile({ files }) {}
const overshow = ref<boolean>(false);
const resolves = ref();
const beforeRemove = ({ file, fileList, resolve }) => {
overshow.value = true;
resolves.value = resolve;
};
const deleteImg = () => {
console.log(resolves.value(true));
overshow.value = false;
};
/**
* Release提交
*/
const handleSubmit = async () => {
const res = await evaluation();
await evaluation({
...formdata,
images: proImage(),
});
xma.showToast({
title: '评价成功',
duration: 1000,
icon: 'none',
});
xma.redirectTo({
url: `/pages/order/order?status=not_eval`,
});
console.log(formdata);
};
</script>
<style lang="scss" scoped>
.container {
width: 100%;
max-width: 750rpx;
margin: 0 auto;
height: auto;
background: #f4f4f4;
min-height: calc(100vh - 1rpx);
......@@ -139,6 +180,25 @@ const handleSubmit = async () => {
flex-direction: column;
}
.overlay {
width: 720rpx;
margin: 0 auto;
height: auto;
position: absolute;
bottom: 90rpx;
left: 50%;
transform: translateX(-50%);
:deep(.wd-button) {
margin-top: 14rpx;
width: 720rpx;
height: 110rpx;
background: #ffffff;
border-radius: 25rpx 25rpx 25rpx 25rpx;
font-size: 36rpx;
}
}
.content {
margin: 25rpx 20rpx 0;
padding-top: 88rpx;
......@@ -192,6 +252,15 @@ const handleSubmit = async () => {
.wdUpload {
margin-top: 25rpx;
:deep(.wd-upload__close) {
left: 10rpx;
top: 10rpx;
}
:deep(.wd-upload__status-content) {
background-color: #000;
}
}
}
......@@ -226,3 +295,19 @@ const handleSubmit = async () => {
--wot-size-side-padding: 0px;
}
</style>
<!-- <view class="tuijian" v-if="show">
<view class="tjTitle">
<text class="textarea">我要推荐菜</text>
<text class="textRight">
查看全部(30)
<wd-icon name="arrow-right"></wd-icon>
</text>
</view>
<view class="itemtuijianList">
<wd-checkbox-group shape="button">
<wd-checkbox modelValue="jingmai" checked-color="#f00" shape="button"></wd-checkbox>
<wd-checkbox modelValue="asd" shape="button">沃特</wd-checkbox>
</wd-checkbox-group>
</view>
</view> -->
......@@ -292,9 +292,6 @@ function submitOrder() {
groupBuyConfirmFn(prodIds.value, skuIds.value);
}
}, 1500);
// window.open(paymentUrl);
// plus.runtime.openURL(paymentUrl);
}
});
// xma.redirectTo({
......
......@@ -5,117 +5,45 @@
<view class="formmain">
<wd-form ref="form" :model="formData" :rules="rules">
<wd-cell-group border>
<wd-picker
label="店铺类型"
placeholder="请选择店铺类型"
label-width="100px"
prop="promotion"
v-model="formData.promotion"
:columns="promotionlist"
/>
<wd-input
label="店铺名称"
label-width="100px"
prop="xm"
clearable
v-model="formData.xm"
placeholder="请输入店铺名称"
/>
<wd-input
label="联系电话"
label-width="100px"
prop="sjh"
clearable
v-model="formData.sjh"
placeholder="请输入联系电话"
/>
<wd-input
label="所在地区"
label-width="100px"
v-model="formData.szdq"
prop="szdq"
readonly
placeholder="请选择所在地区"
@click="getLocationFn"
/>
<wd-input
label="详细地址"
label-width="100px"
prop="xxdz"
clearable
v-model="formData.xm"
placeholder="请输入详细地址"
/>
<wd-input
label="小区/学校"
label-width="100px"
v-model="formData.szdq"
prop="szdq"
readonly
placeholder="请选择"
@click="getLocationFn"
/>
<wd-picker label="店铺类型" placeholder="请选择店铺类型" label-width="100px" prop="promotion"
v-model="formData.promotion" :columns="promotionlist" />
<wd-input label="店铺名称" label-width="100px" prop="xm" clearable v-model="formData.xm"
placeholder="请输入店铺名称" />
<wd-input label="联系电话" label-width="100px" prop="sjh" clearable v-model="formData.sjh"
placeholder="请输入联系电话" />
<wd-input label="所在地区" label-width="100px" v-model="formData.szdq" prop="szdq" readonly
placeholder="请选择所在地区" @click="getLocationFn" />
<wd-input label="详细地址" label-width="100px" prop="xxdz" clearable v-model="formData.xm"
placeholder="请输入详细地址" />
<wd-input label="小区/学校" label-width="100px" v-model="formData.szdq" prop="szdq" readonly placeholder="请选择"
@click="getLocationFn" />
<view class="flex">
<view class="logo">LOGO/门头照</view>
<wd-upload
:file-list="fileList1"
image-mode="aspectFill"
:action="action"
@change="handleChange1"
:limit="1"
class="img1"
></wd-upload>
<wd-upload :file-list="fileList1" image-mode="aspectFill" :action="action" @change="handleChange1"
:limit="1" class="img1"></wd-upload>
</view>
<view class="flex">
<view class="logo">营业执照</view>
<wd-upload
:file-list="fileList1"
image-mode="aspectFill"
:action="action"
@change="handleChange1"
:limit="1"
class="img1"
></wd-upload>
<wd-upload :file-list="fileList1" image-mode="aspectFill" :action="action" @change="handleChange1"
:limit="1" class="img1"></wd-upload>
</view>
<view class="flex">
<view class="logo">身份证照</view>
<wd-upload
:file-list="fileList1"
image-mode="aspectFill"
:action="action"
@change="handleChange1"
:limit="1"
class="img1"
></wd-upload>
<wd-upload
:file-list="fileList1"
image-mode="aspectFill"
:action="action"
@change="handleChange1"
:limit="1"
class="img1"
></wd-upload>
<wd-upload :file-list="fileList1" image-mode="aspectFill" :action="action" @change="handleChange1"
:limit="1" class="img1"></wd-upload>
<wd-upload :file-list="fileList1" image-mode="aspectFill" :action="action" @change="handleChange1"
:limit="1" class="img1"></wd-upload>
</view>
<view class="flex">
<view class="logo">店铺分类</view>
<view class="text" @click="showclass">请选择</view>
</view>
<wd-textarea
placeholder="请填写评价"
label="店铺介绍"
label-width="100px"
v-model="formData.szdq"
prop="szdq"
/>
<wd-textarea placeholder="请填写评价" label="店铺介绍" label-width="100px" v-model="formData.szdq" prop="szdq" />
<button type="primary" style="width: 80%">提交</button>
</wd-cell-group>
<wd-popup
v-model="show"
position="bottom"
custom-style="height:300px;overflow:auto;"
@close="handleClose"
>
<wd-popup v-model="show" position="bottom" custom-style="height:300px;overflow:auto;" @close="handleClose">
<view class="hcontent">
<view class="flex1">
<view class="text">取消</view>
......@@ -225,6 +153,7 @@ const getLocationFn = () => {
page {
background: #fff;
}
.uni-textarea-placeholder,
.uni-textarea-line,
.uni-textarea-compute,
......@@ -233,11 +162,14 @@ page {
height: 220rpx;
border: 1px solid #d5d1d1;
}
.wd-tag {
margin-left: 15rpx;
}
.hcontent {
height: 100%;
.flex1 {
padding: 10px;
display: flex;
......@@ -249,23 +181,28 @@ page {
background: #fff;
z-index: 6;
}
.nr {
padding-top: 42px;
display: flex;
.left {
background: #ebe7e7;
width: 33%;
height: 100%;
overflow-y: auto;
.name {
text-align: center;
height: 40px;
line-height: 40px;
}
}
.right {
background: #fff;
width: 67%;
.hname {
font-size: 14px;
margin: 15rpx;
......@@ -282,9 +219,11 @@ page {
height: 100vh;
overflow-y: auto;
padding-bottom: 40rpx;
.content {
padding-top: 88rpx;
}
.formmain {
background: #f3f3f3;
}
......@@ -292,15 +231,16 @@ page {
.flex {
display: flex;
align-items: flex-start;
padding: var(--wot-input-cell-padding, 10px)
var(--wot-input-padding, var(--wot-size-side-padding, 15px));
padding: var(--wot-input-cell-padding, 10px) var(--wot-input-padding, var(--wot-size-side-padding, 15px));
background-color: var(--wot-input-cell-bg, var(--wot-color-white, rgb(255, 255, 255)));
.text {
margin-left: 16px;
width: 60%;
font-size: var(--wot-input-fs, var(--wot-cell-title-fs, 14px));
color: var(--wot-input-placeholder-color, #bfbfbf);
}
.logo {
position: relative;
padding-left: 12px;
......@@ -308,6 +248,7 @@ page {
display: inline-block;
font-size: var(--wot-input-fs, var(--wot-cell-title-fs, 14px));
line-height: var(--wot-cell-line-height, 24px);
&::after {
position: absolute;
left: 0;
......@@ -318,6 +259,7 @@ page {
color: var(--wot-cell-required-color, var(--wot-color-danger, #fa4350));
}
}
.img1 {
margin-left: 16px;
}
......
......@@ -5,43 +5,10 @@
<view class="content">
<!-- 列表 -->
<view class="listcon">
<view class="pubList">
<view class="pubList" v-for="item in list" :key="item.id">
<!-- 列表头部 -->
<view class="titlecon">
<span>标题标题</span>
<span>未通过</span>
</view>
<!-- 列表详细 -->
<view class="delbox">
<view class="listPic">
<img
src="https://www.gywb.cn/upload/web/dataset/2024/08/01/2282c5c7e93b42c88dcfc606440f9716.jpg"
alt=""
/>
</view>
<view class="deltxt">
<ul>
<li>
<span>申请时间:</span>
<span>2024-08-02 16:21:19</span>
</li>
<li>
<span>签约时间:</span>
<span>2024-08-02 ~ 2024-08-02</span>
</li>
<li>
<span>地址:</span>
<span>贵州省贵阳市南明区彭家湾花果园项目M区3栋1单元25层5号房</span>
</li>
</ul>
</view>
</view>
</view>
<view class="pubList">
<!-- 列表头部 -->
<view class="titlecon">
<span>标题标题</span>
<span>{{ item.shopName }}</span>
<span>未通过</span>
</view>
<!-- 列表详细 -->
......@@ -80,27 +47,35 @@
<script setup>
import Header from '@/pages/order/components/Header/index.vue';
import { shopList } from '@/api/storeEntry';
const list = ref([]);
const getList = async () => {
const res = await shopList();
list.value = res.data;
console.log(res);
};
getList();
</script>
<style lang="scss" scoped>
page {
background: #f3f3f3;
}
.container {
position: relative;
width: 375 * 2rpx;
margin: 0 auto;
background: #f1f1f1;
padding-bottom: 80px;
.content {
padding-top: 88rpx;
.listcon {
margin-top: 10px;
.pubList {
margin-top: 5px;
width: 100%;
height: auto;
.titlecon {
display: flex;
width: 96%;
......@@ -108,18 +83,21 @@ page {
background-color: #fff;
position: relative;
}
.titlecon span {
display: block;
font-size: 14px;
line-height: 30px;
font-weight: bold;
}
.titlecon span:last-child {
position: absolute;
right: 2%;
line-height: 30px;
color: #cb6429;
}
.delbox {
width: 96%;
padding: 2%;
......@@ -127,30 +105,37 @@ page {
margin-top: 2px;
background-color: #fff;
}
.delbox .listPic {
padding-top: 2%;
width: 25%;
}
.delbox .listPic img {
width: 100%;
}
.delbox .deltxt {
padding: 0;
padding-left: 2%;
width: 73%;
}
.delbox .deltxt ul {
list-style: none;
padding: 0;
}
.delbox .deltxt ul li {
text-align: left;
}
.delbox .deltxt ul li span {
font-size: 14px;
}
}
}
.shbox {
text-align: center;
margin-top: 10px;
......@@ -158,15 +143,18 @@ page {
color: #7f7f7f;
}
}
.butCon {
width: 100%;
height: auto;
position: absolute;
position: fixed;
z-index: 999;
bottom: 0px;
width: 96%;
padding: 2%;
background-color: #fff;
}
.butXz {
border-radius: 10px;
background-color: #fb3534;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment