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-face {
font-family: "iconfont"; /* Project id 4633414 */ font-family: "iconfont"; /* Project id 4633414 */
src: url('//at.alicdn.com/t/c/font_4633414_ne2afa4bsr9.woff2?t=1722652845956') format('woff2'), src: url('//at.alicdn.com/t/c/font_4633414_jhlymbmljta.woff2?t=1722933863144') format('woff2'),
url('//at.alicdn.com/t/c/font_4633414_ne2afa4bsr9.woff?t=1722652845956') format('woff'), url('//at.alicdn.com/t/c/font_4633414_jhlymbmljta.woff?t=1722933863144') format('woff'),
url('//at.alicdn.com/t/c/font_4633414_ne2afa4bsr9.ttf?t=1722652845956') format('truetype'); url('//at.alicdn.com/t/c/font_4633414_jhlymbmljta.ttf?t=1722933863144') format('truetype');
} }
.iconfont { .iconfont {
font-family: "iconfont" !important; font-family: "iconfont" !important;
font-size: 16px; font-size: 16px;
font-style: normal; font-style: normal;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale;
} }
.icon-lianhe40:before { .icon-gengduo:before {
content: "\e633";
}
.icon-lianhe40:before {
content: "\e866"; content: "\e866";
} }
.icon-shuangxiajiantou:before { .icon-shuangxiajiantou:before {
content: "\e660"; content: "\e660";
} }
.icon-dianzan:before { .icon-dianzan:before {
content: "\e602"; content: "\e602";
} }
.icon-dianzan_kuai:before { .icon-dianzan_kuai:before {
content: "\ec8c"; content: "\ec8c";
} }
.icon-xiai:before { .icon-xiai:before {
content: "\e601"; content: "\e601";
} }
.icon-tongzhi:before { .icon-tongzhi:before {
content: "\e60d"; content: "\e60d";
} }
.iconfont-fenxiang:before { .icon-fenxiang:before {
content: "\e639"; content: "\e639";
} }
.icon-shuangshangjiantou-:before { .icon-shuangshangjiantou-:before {
content: "\e600"; content: "\e600";
} }
.icon-jinggao:before { .icon-jinggao:before {
content: "\e716"; content: "\e716";
} }
.icon-rs-countdown:before { .icon-rs-countdown:before {
content: "\e614"; content: "\e614";
} }
.icon-naozhong:before { .icon-naozhong:before {
content: "\e666"; content: "\e666";
} }
.icon-ic_business_refund24px:before { .icon-ic_business_refund24px:before {
content: "\e619"; content: "\e619";
} }
.icon-shoucang:before { .icon-shoucang:before {
content: "\e606"; content: "\e606";
} }
.icon-pinglun:before { .icon-pinglun:before {
content: "\e618"; content: "\e618";
} }
.icon-aixin:before { .icon-aixin:before {
content: "\e622"; content: "\e622";
} }
\ No newline at end of file
...@@ -28,29 +28,15 @@ ...@@ -28,29 +28,15 @@
/> />
<text class="textarea">上传图片/视频</text> <text class="textarea">上传图片/视频</text>
<wd-upload <wd-upload
prop="images"
class="wdUpload" class="wdUpload"
accept="media"
multiple multiple
:action="fileUPload" :action="action"
@change="handleFile" @change="handleFile"
:file-list="fileList"
:before-remove="beforeRemove"
:header="headers"
></wd-upload> ></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-cell title="匿名评价" prop="isAnonymous" class="itemSwichval">
<wd-switch <wd-switch
size="48rpx" size="48rpx"
...@@ -63,40 +49,57 @@ ...@@ -63,40 +49,57 @@
</wd-form> </wd-form>
<wd-button type="error" block @click="handleSubmit">发布</wd-button> <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>
</view> </view>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import Header from './components/Header/index.vue'; import Header from './components/Header/index.vue';
import { getToken } from '@/utils/auth';
import { evaluation } from '@/api/order'; import { evaluation } from '@/api/order';
const form = ref(); const form = ref();
const token = getToken();
// 上传图片地址
const action = ref(import.meta.env.VITE_APP_BASE_URL + '/sgyrdd/file/update');
const headers = ref();
/** /**
* options * options
*/ */
const shopname = ref<string>(''); const shopname = ref<string>('');
onLoad((options) => { onLoad((options) => {
console.log(options);
shopname.value = options?.shopName; shopname.value = options?.shopName;
formdata.orderNumber = options?.orderNumber; formdata.orderNumber = options?.orderNumber;
headers.value = { Authorization: 'Bearer ' + token };
}); });
const formdata = reactive<{ const formdata = reactive<{
orderNumber: string; orderNumber: string;
evaluation: string; evaluation: string;
images: string[]; images: string;
isAnonymous: number; isAnonymous: number;
descriptionMatches: number;
merchantServices: number; merchantServices: number;
}>({ }>({
orderNumber: '', orderNumber: '',
evaluation: '', evaluation: '',
images: [], images: '',
isAnonymous: 0, isAnonymous: 0,
descriptionMatches: 0,
merchantServices: 0, merchantServices: 0,
}); });
const rules = {
const rules = {}; // evaluation: [
// { required: true, message: '请填写你的评价' },
// { type: 'array', min: 1, message: '请上传图片/视频' },
// ],
};
/** /**
* 显示推荐菜 * 显示推荐菜
*/ */
...@@ -113,25 +116,63 @@ const merList = ref({ ...@@ -113,25 +116,63 @@ const merList = ref({
4: '好', 4: '好',
5: '非常好', 5: '非常好',
}); });
const handlemerchant = (e) => { const handlemerchant = (item: { value: number }) => {
merchantServices.value = e.value; 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 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); console.log(formdata);
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.container { .container {
width: 100%; width: 100%;
max-width: 750rpx;
margin: 0 auto;
height: auto; height: auto;
background: #f4f4f4; background: #f4f4f4;
min-height: calc(100vh - 1rpx); min-height: calc(100vh - 1rpx);
...@@ -139,6 +180,25 @@ const handleSubmit = async () => { ...@@ -139,6 +180,25 @@ const handleSubmit = async () => {
flex-direction: column; 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 { .content {
margin: 25rpx 20rpx 0; margin: 25rpx 20rpx 0;
padding-top: 88rpx; padding-top: 88rpx;
...@@ -192,6 +252,15 @@ const handleSubmit = async () => { ...@@ -192,6 +252,15 @@ const handleSubmit = async () => {
.wdUpload { .wdUpload {
margin-top: 25rpx; 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 () => { ...@@ -226,3 +295,19 @@ const handleSubmit = async () => {
--wot-size-side-padding: 0px; --wot-size-side-padding: 0px;
} }
</style> </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() { ...@@ -292,9 +292,6 @@ function submitOrder() {
groupBuyConfirmFn(prodIds.value, skuIds.value); groupBuyConfirmFn(prodIds.value, skuIds.value);
} }
}, 1500); }, 1500);
// window.open(paymentUrl);
// plus.runtime.openURL(paymentUrl);
} }
}); });
// xma.redirectTo({ // xma.redirectTo({
......
...@@ -5,117 +5,45 @@ ...@@ -5,117 +5,45 @@
<view class="formmain"> <view class="formmain">
<wd-form ref="form" :model="formData" :rules="rules"> <wd-form ref="form" :model="formData" :rules="rules">
<wd-cell-group border> <wd-cell-group border>
<wd-picker <wd-picker label="店铺类型" placeholder="请选择店铺类型" label-width="100px" prop="promotion"
label="店铺类型" v-model="formData.promotion" :columns="promotionlist" />
placeholder="请选择店铺类型" <wd-input label="店铺名称" label-width="100px" prop="xm" clearable v-model="formData.xm"
label-width="100px" placeholder="请输入店铺名称" />
prop="promotion" <wd-input label="联系电话" label-width="100px" prop="sjh" clearable v-model="formData.sjh"
v-model="formData.promotion" placeholder="请输入联系电话" />
:columns="promotionlist" <wd-input label="所在地区" label-width="100px" v-model="formData.szdq" prop="szdq" readonly
/> placeholder="请选择所在地区" @click="getLocationFn" />
<wd-input <wd-input label="详细地址" label-width="100px" prop="xxdz" clearable v-model="formData.xm"
label="店铺名称" placeholder="请输入详细地址" />
label-width="100px" <wd-input label="小区/学校" label-width="100px" v-model="formData.szdq" prop="szdq" readonly placeholder="请选择"
prop="xm" @click="getLocationFn" />
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="flex">
<view class="logo">LOGO/门头照</view> <view class="logo">LOGO/门头照</view>
<wd-upload <wd-upload :file-list="fileList1" image-mode="aspectFill" :action="action" @change="handleChange1"
:file-list="fileList1" :limit="1" class="img1"></wd-upload>
image-mode="aspectFill"
:action="action"
@change="handleChange1"
:limit="1"
class="img1"
></wd-upload>
</view> </view>
<view class="flex"> <view class="flex">
<view class="logo">营业执照</view> <view class="logo">营业执照</view>
<wd-upload <wd-upload :file-list="fileList1" image-mode="aspectFill" :action="action" @change="handleChange1"
:file-list="fileList1" :limit="1" class="img1"></wd-upload>
image-mode="aspectFill"
:action="action"
@change="handleChange1"
:limit="1"
class="img1"
></wd-upload>
</view> </view>
<view class="flex"> <view class="flex">
<view class="logo">身份证照</view> <view class="logo">身份证照</view>
<wd-upload <wd-upload :file-list="fileList1" image-mode="aspectFill" :action="action" @change="handleChange1"
:file-list="fileList1" :limit="1" class="img1"></wd-upload>
image-mode="aspectFill" <wd-upload :file-list="fileList1" image-mode="aspectFill" :action="action" @change="handleChange1"
:action="action" :limit="1" class="img1"></wd-upload>
@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>
<view class="flex"> <view class="flex">
<view class="logo">店铺分类</view> <view class="logo">店铺分类</view>
<view class="text" @click="showclass">请选择</view> <view class="text" @click="showclass">请选择</view>
</view> </view>
<wd-textarea <wd-textarea placeholder="请填写评价" label="店铺介绍" label-width="100px" v-model="formData.szdq" prop="szdq" />
placeholder="请填写评价"
label="店铺介绍"
label-width="100px"
v-model="formData.szdq"
prop="szdq"
/>
<button type="primary" style="width: 80%">提交</button> <button type="primary" style="width: 80%">提交</button>
</wd-cell-group> </wd-cell-group>
<wd-popup <wd-popup v-model="show" position="bottom" custom-style="height:300px;overflow:auto;" @close="handleClose">
v-model="show"
position="bottom"
custom-style="height:300px;overflow:auto;"
@close="handleClose"
>
<view class="hcontent"> <view class="hcontent">
<view class="flex1"> <view class="flex1">
<view class="text">取消</view> <view class="text">取消</view>
...@@ -225,6 +153,7 @@ const getLocationFn = () => { ...@@ -225,6 +153,7 @@ const getLocationFn = () => {
page { page {
background: #fff; background: #fff;
} }
.uni-textarea-placeholder, .uni-textarea-placeholder,
.uni-textarea-line, .uni-textarea-line,
.uni-textarea-compute, .uni-textarea-compute,
...@@ -233,11 +162,14 @@ page { ...@@ -233,11 +162,14 @@ page {
height: 220rpx; height: 220rpx;
border: 1px solid #d5d1d1; border: 1px solid #d5d1d1;
} }
.wd-tag { .wd-tag {
margin-left: 15rpx; margin-left: 15rpx;
} }
.hcontent { .hcontent {
height: 100%; height: 100%;
.flex1 { .flex1 {
padding: 10px; padding: 10px;
display: flex; display: flex;
...@@ -249,23 +181,28 @@ page { ...@@ -249,23 +181,28 @@ page {
background: #fff; background: #fff;
z-index: 6; z-index: 6;
} }
.nr { .nr {
padding-top: 42px; padding-top: 42px;
display: flex; display: flex;
.left { .left {
background: #ebe7e7; background: #ebe7e7;
width: 33%; width: 33%;
height: 100%; height: 100%;
overflow-y: auto; overflow-y: auto;
.name { .name {
text-align: center; text-align: center;
height: 40px; height: 40px;
line-height: 40px; line-height: 40px;
} }
} }
.right { .right {
background: #fff; background: #fff;
width: 67%; width: 67%;
.hname { .hname {
font-size: 14px; font-size: 14px;
margin: 15rpx; margin: 15rpx;
...@@ -282,9 +219,11 @@ page { ...@@ -282,9 +219,11 @@ page {
height: 100vh; height: 100vh;
overflow-y: auto; overflow-y: auto;
padding-bottom: 40rpx; padding-bottom: 40rpx;
.content { .content {
padding-top: 88rpx; padding-top: 88rpx;
} }
.formmain { .formmain {
background: #f3f3f3; background: #f3f3f3;
} }
...@@ -292,15 +231,16 @@ page { ...@@ -292,15 +231,16 @@ page {
.flex { .flex {
display: flex; display: flex;
align-items: flex-start; align-items: flex-start;
padding: var(--wot-input-cell-padding, 10px) padding: var(--wot-input-cell-padding, 10px) var(--wot-input-padding, var(--wot-size-side-padding, 15px));
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))); background-color: var(--wot-input-cell-bg, var(--wot-color-white, rgb(255, 255, 255)));
.text { .text {
margin-left: 16px; margin-left: 16px;
width: 60%; width: 60%;
font-size: var(--wot-input-fs, var(--wot-cell-title-fs, 14px)); font-size: var(--wot-input-fs, var(--wot-cell-title-fs, 14px));
color: var(--wot-input-placeholder-color, #bfbfbf); color: var(--wot-input-placeholder-color, #bfbfbf);
} }
.logo { .logo {
position: relative; position: relative;
padding-left: 12px; padding-left: 12px;
...@@ -308,6 +248,7 @@ page { ...@@ -308,6 +248,7 @@ page {
display: inline-block; display: inline-block;
font-size: var(--wot-input-fs, var(--wot-cell-title-fs, 14px)); font-size: var(--wot-input-fs, var(--wot-cell-title-fs, 14px));
line-height: var(--wot-cell-line-height, 24px); line-height: var(--wot-cell-line-height, 24px);
&::after { &::after {
position: absolute; position: absolute;
left: 0; left: 0;
...@@ -318,6 +259,7 @@ page { ...@@ -318,6 +259,7 @@ page {
color: var(--wot-cell-required-color, var(--wot-color-danger, #fa4350)); color: var(--wot-cell-required-color, var(--wot-color-danger, #fa4350));
} }
} }
.img1 { .img1 {
margin-left: 16px; margin-left: 16px;
} }
......
...@@ -5,43 +5,10 @@ ...@@ -5,43 +5,10 @@
<view class="content"> <view class="content">
<!-- 列表 --> <!-- 列表 -->
<view class="listcon"> <view class="listcon">
<view class="pubList"> <view class="pubList" v-for="item in list" :key="item.id">
<!-- 列表头部 --> <!-- 列表头部 -->
<view class="titlecon"> <view class="titlecon">
<span>标题标题</span> <span>{{ item.shopName }}</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>未通过</span> <span>未通过</span>
</view> </view>
<!-- 列表详细 --> <!-- 列表详细 -->
...@@ -80,27 +47,35 @@ ...@@ -80,27 +47,35 @@
<script setup> <script setup>
import Header from '@/pages/order/components/Header/index.vue'; 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> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
page {
background: #f3f3f3;
}
.container { .container {
position: relative; position: relative;
width: 375 * 2rpx; width: 375 * 2rpx;
margin: 0 auto; margin: 0 auto;
background: #f1f1f1; background: #f1f1f1;
padding-bottom: 80px; padding-bottom: 80px;
.content { .content {
padding-top: 88rpx; padding-top: 88rpx;
.listcon { .listcon {
margin-top: 10px; margin-top: 10px;
.pubList { .pubList {
margin-top: 5px; margin-top: 5px;
width: 100%; width: 100%;
height: auto; height: auto;
.titlecon { .titlecon {
display: flex; display: flex;
width: 96%; width: 96%;
...@@ -108,18 +83,21 @@ page { ...@@ -108,18 +83,21 @@ page {
background-color: #fff; background-color: #fff;
position: relative; position: relative;
} }
.titlecon span { .titlecon span {
display: block; display: block;
font-size: 14px; font-size: 14px;
line-height: 30px; line-height: 30px;
font-weight: bold; font-weight: bold;
} }
.titlecon span:last-child { .titlecon span:last-child {
position: absolute; position: absolute;
right: 2%; right: 2%;
line-height: 30px; line-height: 30px;
color: #cb6429; color: #cb6429;
} }
.delbox { .delbox {
width: 96%; width: 96%;
padding: 2%; padding: 2%;
...@@ -127,30 +105,37 @@ page { ...@@ -127,30 +105,37 @@ page {
margin-top: 2px; margin-top: 2px;
background-color: #fff; background-color: #fff;
} }
.delbox .listPic { .delbox .listPic {
padding-top: 2%; padding-top: 2%;
width: 25%; width: 25%;
} }
.delbox .listPic img { .delbox .listPic img {
width: 100%; width: 100%;
} }
.delbox .deltxt { .delbox .deltxt {
padding: 0; padding: 0;
padding-left: 2%; padding-left: 2%;
width: 73%; width: 73%;
} }
.delbox .deltxt ul { .delbox .deltxt ul {
list-style: none; list-style: none;
padding: 0; padding: 0;
} }
.delbox .deltxt ul li { .delbox .deltxt ul li {
text-align: left; text-align: left;
} }
.delbox .deltxt ul li span { .delbox .deltxt ul li span {
font-size: 14px; font-size: 14px;
} }
} }
} }
.shbox { .shbox {
text-align: center; text-align: center;
margin-top: 10px; margin-top: 10px;
...@@ -158,15 +143,18 @@ page { ...@@ -158,15 +143,18 @@ page {
color: #7f7f7f; color: #7f7f7f;
} }
} }
.butCon { .butCon {
width: 100%; width: 100%;
height: auto; height: auto;
position: absolute; position: fixed;
z-index: 999;
bottom: 0px; bottom: 0px;
width: 96%; width: 96%;
padding: 2%; padding: 2%;
background-color: #fff; background-color: #fff;
} }
.butXz { .butXz {
border-radius: 10px; border-radius: 10px;
background-color: #fb3534; 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