修正
This commit is contained in:
parent
db6d973592
commit
805dcebb81
@ -35,7 +35,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
|
|||||||
*/
|
*/
|
||||||
@RequiredArgsConstructor(onConstructor_ = @Autowired)
|
@RequiredArgsConstructor(onConstructor_ = @Autowired)
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/winery/activity" )
|
@RequestMapping("/winery/activity")
|
||||||
public class AppActivityController extends BaseController {
|
public class AppActivityController extends BaseController {
|
||||||
|
|
||||||
private final IAppActivityService iAppActivityService;
|
private final IAppActivityService iAppActivityService;
|
||||||
@ -45,21 +45,20 @@ public class AppActivityController extends BaseController {
|
|||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('winery:activity:list')")
|
@PreAuthorize("@ss.hasPermi('winery:activity:list')")
|
||||||
@GetMapping("/list")
|
@GetMapping("/list")
|
||||||
public TableDataInfo list(AppActivity appActivity)
|
public TableDataInfo list(AppActivity appActivity) {
|
||||||
{
|
|
||||||
startPage();
|
startPage();
|
||||||
LambdaQueryWrapper<AppActivity> lqw = Wrappers.lambdaQuery(appActivity);
|
LambdaQueryWrapper<AppActivity> lqw = Wrappers.lambdaQuery(appActivity);
|
||||||
if (StringUtils.isNotBlank(appActivity.getUrl())){
|
if (StringUtils.isNotBlank(appActivity.getUrl())) {
|
||||||
lqw.eq(AppActivity::getUrl ,appActivity.getUrl());
|
lqw.eq(AppActivity::getUrl, appActivity.getUrl());
|
||||||
}
|
}
|
||||||
if (appActivity.getType() != null){
|
if (appActivity.getType() != null) {
|
||||||
lqw.eq(AppActivity::getType ,appActivity.getType());
|
lqw.eq(AppActivity::getType, appActivity.getType());
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(appActivity.getImage())){
|
if (StringUtils.isNotBlank(appActivity.getImage())) {
|
||||||
lqw.eq(AppActivity::getImage ,appActivity.getImage());
|
lqw.eq(AppActivity::getImage, appActivity.getImage());
|
||||||
}
|
}
|
||||||
if (appActivity.getImageHeight() != null){
|
if (appActivity.getImageHeight() != null) {
|
||||||
lqw.eq(AppActivity::getImageHeight ,appActivity.getImageHeight());
|
lqw.eq(AppActivity::getImageHeight, appActivity.getImageHeight());
|
||||||
}
|
}
|
||||||
lqw.orderByAsc(AppActivity::getSort);
|
lqw.orderByAsc(AppActivity::getSort);
|
||||||
List<AppActivity> list = iAppActivityService.list(lqw);
|
List<AppActivity> list = iAppActivityService.list(lqw);
|
||||||
@ -69,30 +68,30 @@ public class AppActivityController extends BaseController {
|
|||||||
/**
|
/**
|
||||||
* 导出活动列表
|
* 导出活动列表
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('winery:activity:export')" )
|
@PreAuthorize("@ss.hasPermi('winery:activity:export')")
|
||||||
@Log(title = "活动" , businessType = BusinessType.EXPORT)
|
@Log(title = "活动", businessType = BusinessType.EXPORT)
|
||||||
@GetMapping("/export" )
|
@GetMapping("/export")
|
||||||
public AjaxResult export(AppActivity appActivity) {
|
public AjaxResult export(AppActivity appActivity) {
|
||||||
LambdaQueryWrapper<AppActivity> lqw = new LambdaQueryWrapper<AppActivity>(appActivity);
|
LambdaQueryWrapper<AppActivity> lqw = new LambdaQueryWrapper<AppActivity>(appActivity);
|
||||||
List<AppActivity> list = iAppActivityService.list(lqw);
|
List<AppActivity> list = iAppActivityService.list(lqw);
|
||||||
ExcelUtil<AppActivity> util = new ExcelUtil<AppActivity>(AppActivity. class);
|
ExcelUtil<AppActivity> util = new ExcelUtil<AppActivity>(AppActivity.class);
|
||||||
return util.exportExcel(list, "activity" );
|
return util.exportExcel(list, "activity");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取活动详细信息
|
* 获取活动详细信息
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('winery:activity:query')" )
|
@PreAuthorize("@ss.hasPermi('winery:activity:query')")
|
||||||
@GetMapping(value = "/{id}" )
|
@GetMapping(value = "/{id}")
|
||||||
public AjaxResult getInfo(@PathVariable("id" ) String id) {
|
public AjaxResult getInfo(@PathVariable("id") String id) {
|
||||||
return AjaxResult.success(iAppActivityService.getById(id));
|
return AjaxResult.success(iAppActivityService.getById(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增活动
|
* 新增活动
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('winery:activity:add')" )
|
@PreAuthorize("@ss.hasPermi('winery:activity:add')")
|
||||||
@Log(title = "活动" , businessType = BusinessType.INSERT)
|
@Log(title = "活动", businessType = BusinessType.INSERT)
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public AjaxResult add(@RequestBody AppActivity appActivity) {
|
public AjaxResult add(@RequestBody AppActivity appActivity) {
|
||||||
return toAjax(iAppActivityService.save(appActivity) ? 1 : 0);
|
return toAjax(iAppActivityService.save(appActivity) ? 1 : 0);
|
||||||
@ -101,8 +100,8 @@ public class AppActivityController extends BaseController {
|
|||||||
/**
|
/**
|
||||||
* 修改活动
|
* 修改活动
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('winery:activity:edit')" )
|
@PreAuthorize("@ss.hasPermi('winery:activity:edit')")
|
||||||
@Log(title = "活动" , businessType = BusinessType.UPDATE)
|
@Log(title = "活动", businessType = BusinessType.UPDATE)
|
||||||
@PutMapping
|
@PutMapping
|
||||||
public AjaxResult edit(@RequestBody AppActivity appActivity) {
|
public AjaxResult edit(@RequestBody AppActivity appActivity) {
|
||||||
return toAjax(iAppActivityService.updateById(appActivity) ? 1 : 0);
|
return toAjax(iAppActivityService.updateById(appActivity) ? 1 : 0);
|
||||||
@ -111,33 +110,46 @@ public class AppActivityController extends BaseController {
|
|||||||
/**
|
/**
|
||||||
* 删除活动
|
* 删除活动
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('winery:activity:remove')" )
|
@PreAuthorize("@ss.hasPermi('winery:activity:remove')")
|
||||||
@Log(title = "活动" , businessType = BusinessType.DELETE)
|
@Log(title = "活动", businessType = BusinessType.DELETE)
|
||||||
@DeleteMapping("/{ids}" )
|
@DeleteMapping("/{ids}")
|
||||||
public AjaxResult remove(@PathVariable String[] ids) {
|
public AjaxResult remove(@PathVariable String[] ids) {
|
||||||
return toAjax(iAppActivityService.removeByIds(Arrays.asList(ids)) ? 1 : 0);
|
return toAjax(iAppActivityService.removeByIds(Arrays.asList(ids)) ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询活动列表(开放)
|
||||||
|
*/
|
||||||
|
@GetMapping("/open/notice")
|
||||||
|
public AjaxResult openNotice() {
|
||||||
|
|
||||||
|
|
||||||
|
String notice =
|
||||||
|
"手机尾号4707的用户购买了「山之语·赤霞珠干红葡萄酒」, " +
|
||||||
|
"手机尾号5266的用户购买了「2021辛丑牛年纪念酒」" +
|
||||||
|
"手机尾号3062的用户购买了「留世传奇红葡萄酒」";
|
||||||
|
return AjaxResult.success(notice);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询活动列表(开放)
|
* 查询活动列表(开放)
|
||||||
*/
|
*/
|
||||||
@GetMapping("/open/list")
|
@GetMapping("/open/list")
|
||||||
public TableDataInfo openList(AppActivity appActivity)
|
public TableDataInfo openList(AppActivity appActivity) {
|
||||||
{
|
|
||||||
startPage();
|
startPage();
|
||||||
LambdaQueryWrapper<AppActivity> lqw = Wrappers.lambdaQuery(appActivity);
|
LambdaQueryWrapper<AppActivity> lqw = Wrappers.lambdaQuery(appActivity);
|
||||||
if (StringUtils.isNotBlank(appActivity.getUrl())){
|
if (StringUtils.isNotBlank(appActivity.getUrl())) {
|
||||||
lqw.eq(AppActivity::getUrl ,appActivity.getUrl());
|
lqw.eq(AppActivity::getUrl, appActivity.getUrl());
|
||||||
}
|
}
|
||||||
if (appActivity.getType() != null){
|
if (appActivity.getType() != null) {
|
||||||
lqw.eq(AppActivity::getType ,appActivity.getType());
|
lqw.eq(AppActivity::getType, appActivity.getType());
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(appActivity.getImage())){
|
if (StringUtils.isNotBlank(appActivity.getImage())) {
|
||||||
lqw.eq(AppActivity::getImage ,appActivity.getImage());
|
lqw.eq(AppActivity::getImage, appActivity.getImage());
|
||||||
}
|
}
|
||||||
if (appActivity.getImageHeight() != null){
|
if (appActivity.getImageHeight() != null) {
|
||||||
lqw.eq(AppActivity::getImageHeight ,appActivity.getImageHeight());
|
lqw.eq(AppActivity::getImageHeight, appActivity.getImageHeight());
|
||||||
}
|
}
|
||||||
lqw.orderByAsc(AppActivity::getSort);
|
lqw.orderByAsc(AppActivity::getSort);
|
||||||
List<AppActivity> list = iAppActivityService.list(lqw);
|
List<AppActivity> list = iAppActivityService.list(lqw);
|
||||||
|
@ -128,4 +128,12 @@ public class NewsContentController extends BaseController {
|
|||||||
public AjaxResult remove(@PathVariable String[] ids) {
|
public AjaxResult remove(@PathVariable String[] ids) {
|
||||||
return toAjax(iNewsContentService.removeByIds(Arrays.asList(ids)) ? 1 : 0);
|
return toAjax(iNewsContentService.removeByIds(Arrays.asList(ids)) ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取新闻资讯详细信息
|
||||||
|
*/
|
||||||
|
@GetMapping(value = "/open/{id}")
|
||||||
|
public AjaxResult getOpenInfo(@PathVariable("id") String id) {
|
||||||
|
return AjaxResult.success(iNewsContentService.getById(id));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
366
mini-app/docs/用户协议.txt
Normal file
366
mini-app/docs/用户协议.txt
Normal file
File diff suppressed because one or more lines are too long
1610
mini-app/docs/隐私政策.txt
Normal file
1610
mini-app/docs/隐私政策.txt
Normal file
File diff suppressed because it is too large
Load Diff
@ -29,6 +29,18 @@ class MallApis {
|
|||||||
url: baseUrl + 'winery/activity/open/list'
|
url: baseUrl + 'winery/activity/open/list'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getNotice() {
|
||||||
|
return request.get({
|
||||||
|
url: baseUrl + 'winery/activity/open/notice'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
getNewsContent(id) {
|
||||||
|
return request.get({
|
||||||
|
url: baseUrl + 'news/news_content/open/' + id
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default new MallApis()
|
export default new MallApis()
|
||||||
|
@ -109,6 +109,7 @@ pages: [
|
|||||||
'pages/mall/order/order-detail-list',
|
'pages/mall/order/order-detail-list',
|
||||||
'pages/mall/order/order-check',
|
'pages/mall/order/order-check',
|
||||||
'pages/mall/shopping-car/shopping-car-list',
|
'pages/mall/shopping-car/shopping-car-list',
|
||||||
|
'pages/news/news-detail',
|
||||||
'pages/winery/winery-detail',
|
'pages/winery/winery-detail',
|
||||||
'pages/winery/winery-list',
|
'pages/winery/winery-list',
|
||||||
'pages/webView/web'
|
'pages/webView/web'
|
||||||
|
@ -88,6 +88,8 @@ class AppManager {
|
|||||||
|
|
||||||
navigateTo(path) {
|
navigateTo(path) {
|
||||||
console.log('path:', path)
|
console.log('path:', path)
|
||||||
|
|
||||||
|
|
||||||
if (!store.state.user.token) {
|
if (!store.state.user.token) {
|
||||||
eventHub.$emit('onShowDialogUserInfo')
|
eventHub.$emit('onShowDialogUserInfo')
|
||||||
return
|
return
|
||||||
|
@ -5,9 +5,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
// export const baseUrl = 'http://36.1.50.18:18989/'
|
// export const baseUrl = 'http://36.1.50.18:18989/'
|
||||||
// export const baseUrl = 'http://127.0.0.1:18989/'
|
export const baseUrl = 'http://127.0.0.1:18989/'
|
||||||
export const baseUrl = 'https://mall.xiao4r.com/api/'
|
// export const baseUrl = 'https://mall.xiao4r.com/api/'
|
||||||
|
|
||||||
|
|
||||||
export const imgbaseUrl = 'https://www.xiao4r.com/xiao4rstatic/img/winery/'
|
export const imgbaseUrl = 'https://www.xiao4r.com/xiao4rstatic/img/winery/'
|
||||||
export const sysImgBaseUrl = 'https://winery-1257413599.cos.ap-beijing.myqcloud.com/'
|
export const sysImgBaseUrl = 'https://winery-1257413599.cos.ap-beijing.myqcloud.com/'
|
||||||
|
@ -109,7 +109,7 @@ module.exports.parseImage = parseImage;
|
|||||||
</van-row>
|
</van-row>
|
||||||
|
|
||||||
<van-notice-bar
|
<van-notice-bar
|
||||||
text="在代码阅读过程中人们说脏话的频率是衡量代码质量的唯一标准。"
|
:text="notice"
|
||||||
mode="link"
|
mode="link"
|
||||||
background="#ddd"
|
background="#ddd"
|
||||||
color="#333"
|
color="#333"
|
||||||
@ -230,7 +230,8 @@ wepy.component({
|
|||||||
image: 'https://www.xiao4r.com/xiao4rstatic/img/doctor.png'
|
image: 'https://www.xiao4r.com/xiao4rstatic/img/doctor.png'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
records: []
|
records: [],
|
||||||
|
notice: ''
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -253,7 +254,6 @@ wepy.component({
|
|||||||
appManager.navigateTo(navDefine.SHOPPING_CAR_LIST)
|
appManager.navigateTo(navDefine.SHOPPING_CAR_LIST)
|
||||||
},
|
},
|
||||||
onWebItem(item) {
|
onWebItem(item) {
|
||||||
|
|
||||||
appManager.navWeb(item.url)
|
appManager.navWeb(item.url)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -263,6 +263,10 @@ wepy.component({
|
|||||||
mallApis.getActivityList().then(r => {
|
mallApis.getActivityList().then(r => {
|
||||||
this.records = r.rows
|
this.records = r.rows
|
||||||
})
|
})
|
||||||
|
|
||||||
|
mallApis.getNotice().then(r => {
|
||||||
|
this.notice = r.msg
|
||||||
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
border="{{ false }}"
|
border="{{ false }}"
|
||||||
use-button-slot
|
use-button-slot
|
||||||
>
|
>
|
||||||
<van-button slot="button" size="small" plain type="info" open-type="getPhoneNumber"
|
<van-button slot="button" size="small" plain type="info" color="#AC1630" open-type="getPhoneNumber"
|
||||||
bind:getphonenumber="onGetMobile">授权
|
bind:getphonenumber="onGetMobile">授权
|
||||||
</van-button>
|
</van-button>
|
||||||
</van-field>
|
</van-field>
|
||||||
@ -58,11 +58,14 @@
|
|||||||
<!-- </van-button>-->
|
<!-- </van-button>-->
|
||||||
<!-- </van-field>-->
|
<!-- </van-field>-->
|
||||||
|
|
||||||
<view style="margin:10px;">
|
<view style="margin:10px;display: flex;">
|
||||||
<van-checkbox :value="isChecked" shape="square" bind:change="onChangeCheak" checked-color="#AC1630"
|
<van-checkbox :value="isChecked" shape="square" bind:change="onChangeCheak" checked-color="#AC1630"
|
||||||
style="font-size: 14px;color: #AC1630;">
|
/>
|
||||||
我同意<span style="color: cornflowerblue;">xxxxx </span>用户协议
|
|
||||||
</van-checkbox>
|
<span style="font-size: 13px;color: #AC1630;margin-left: 5px;">我同意并遵守紫色名片
|
||||||
|
<span style="color: cornflowerblue;" @tap="onTapPrivacy">《隐私政策》 </span>及
|
||||||
|
<span style="color: cornflowerblue;" @tap="onTapAgreement">《用户条款》 </span>
|
||||||
|
的全部内容</span>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</van-dialog>
|
</van-dialog>
|
||||||
@ -77,18 +80,18 @@ import { mapActions, mapState } from '@wepy/x'
|
|||||||
import eventHub from '../../common/eventHub'
|
import eventHub from '../../common/eventHub'
|
||||||
import appManager from '../../appManager'
|
import appManager from '../../appManager'
|
||||||
import userApis from '../../apis/userApis'
|
import userApis from '../../apis/userApis'
|
||||||
|
import { newsDetailPage } from '../../store/constant/nav/pages'
|
||||||
|
|
||||||
wepy.component({
|
wepy.component({
|
||||||
store,
|
store,
|
||||||
props: {},
|
props: {},
|
||||||
hooks: {},
|
hooks: {},
|
||||||
|
|
||||||
|
|
||||||
data: {
|
data: {
|
||||||
that: this,
|
that: this,
|
||||||
isShow: false,
|
isShow: false,
|
||||||
model: {},
|
model: {},
|
||||||
isChecked: false,
|
isChecked: false
|
||||||
},
|
},
|
||||||
|
|
||||||
computed: mapState(['user']),
|
computed: mapState(['user']),
|
||||||
@ -107,7 +110,6 @@ wepy.component({
|
|||||||
this.setUserInfoAction(event.$wx.detail.userInfo)
|
this.setUserInfoAction(event.$wx.detail.userInfo)
|
||||||
console.log('userInfo:', store.state.user.userInfo)
|
console.log('userInfo:', store.state.user.userInfo)
|
||||||
|
|
||||||
|
|
||||||
if (!this.isChecked) {
|
if (!this.isChecked) {
|
||||||
appManager.showToast('请确认xxxx协议.')
|
appManager.showToast('请确认xxxx协议.')
|
||||||
return false
|
return false
|
||||||
@ -160,6 +162,16 @@ wepy.component({
|
|||||||
},
|
},
|
||||||
onClose() {
|
onClose() {
|
||||||
this.isShow = false
|
this.isShow = false
|
||||||
|
},
|
||||||
|
onTapAgreement() {
|
||||||
|
wx.navigateTo({
|
||||||
|
url: newsDetailPage + '?id=' + 'fb4109a4020b2a2a9d1172f66d043897'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
onTapPrivacy() {
|
||||||
|
wx.navigateTo({
|
||||||
|
url: newsDetailPage + '?id=' + 'a1e5ec18ae13036d14c94bf0e5d11756'
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
|
@ -21,7 +21,7 @@ module.exports.parseImage = parseImage;
|
|||||||
|
|
||||||
<van-loading v-if="!goodsItem" style="margin-top: 20px;" />
|
<van-loading v-if="!goodsItem" style="margin-top: 20px;" />
|
||||||
|
|
||||||
<div v-else style="margin-bottom: 80px;">
|
<div v-else style="margin-bottom: 80px; width: 100%;">
|
||||||
|
|
||||||
<swiper indicator-dots="true" autoplay="true" interval="3000" style="height: 750rpx;">
|
<swiper indicator-dots="true" autoplay="true" interval="3000" style="height: 750rpx;">
|
||||||
<block v-for="(item,index) in goodsImages" wx:key="index">
|
<block v-for="(item,index) in goodsImages" wx:key="index">
|
||||||
@ -33,7 +33,7 @@ module.exports.parseImage = parseImage;
|
|||||||
</block>
|
</block>
|
||||||
</swiper>
|
</swiper>
|
||||||
|
|
||||||
<div style="padding: 10px;display:flex;flex-direction: column;">
|
<div style="padding: 10px;display:flex;flex-direction: column;width: 100%;">
|
||||||
<span style="color: #333; font-size: 16px;font-weight: bold;">{{goodsItem.goodsName}}</span>
|
<span style="color: #333; font-size: 16px;font-weight: bold;">{{goodsItem.goodsName}}</span>
|
||||||
<span style="color: #999; font-size: 14px;margin-top: 3px;">{{goodsItem.goodsAlias}}</span>
|
<span style="color: #999; font-size: 14px;margin-top: 3px;">{{goodsItem.goodsAlias}}</span>
|
||||||
</div>
|
</div>
|
||||||
|
137
mini-app/src/pages/news/news-detail.wpy
Normal file
137
mini-app/src/pages/news/news-detail.wpy
Normal file
@ -0,0 +1,137 @@
|
|||||||
|
<style lang="less">
|
||||||
|
|
||||||
|
.bg {
|
||||||
|
z-index: -1;
|
||||||
|
height: 100%;
|
||||||
|
position: fixed;
|
||||||
|
width: 200rpx;
|
||||||
|
background-color: #AC1630;
|
||||||
|
}
|
||||||
|
|
||||||
|
.winery-item {
|
||||||
|
|
||||||
|
width: 400rpx;
|
||||||
|
height: 60px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
box-shadow: 4px 4px 10px #cccccc;
|
||||||
|
border: #ffffff 1px solid;
|
||||||
|
border-radius: 20px;
|
||||||
|
background-color: white;
|
||||||
|
padding: 15px 70rpx;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.winery-item-icon {
|
||||||
|
position: absolute;
|
||||||
|
width: 60px;
|
||||||
|
height: 60px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
text-align: center;
|
||||||
|
background-color: white;
|
||||||
|
box-shadow: 4px 4px 10px #cccccc;
|
||||||
|
margin-top: 10px;
|
||||||
|
margin-left: -40rpx;
|
||||||
|
border: #ffffff 1px solid;
|
||||||
|
border-radius: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.winery-item-arrow {
|
||||||
|
|
||||||
|
position: absolute;
|
||||||
|
width: 45px;
|
||||||
|
height: 45px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
background-color: white;
|
||||||
|
box-shadow: 4px 4px 10px #cccccc;
|
||||||
|
margin-top: 18.5px;
|
||||||
|
margin-left: 500rpx;
|
||||||
|
border: #ffffff 1px solid;
|
||||||
|
border-radius: 50%;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<wxs module="filters" lang="babel">
|
||||||
|
const parseImage = (imageKey) => {
|
||||||
|
return 'https://winery-1257413599.cos.ap-beijing.myqcloud.com/' + imageKey
|
||||||
|
}
|
||||||
|
module.exports.parseImage = parseImage;
|
||||||
|
</wxs>
|
||||||
|
<template>
|
||||||
|
|
||||||
|
|
||||||
|
<nav-bar :title="newItem.newsTitle" />
|
||||||
|
<div class="container">
|
||||||
|
<van-loading v-if="!newItem" style="margin-top: 20px;" />
|
||||||
|
|
||||||
|
<div v-else style="margin-bottom: 80px;">
|
||||||
|
<div style="margin: 10px 15px;display: flex;flex-direction: column;">
|
||||||
|
|
||||||
|
<div style="margin-top: 10px;width:100%;">
|
||||||
|
<rich-text :nodes="newItem.newsBody" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import wepy from '@wepy/core'
|
||||||
|
import store from '@/store'
|
||||||
|
import { mapActions, mapState } from '@wepy/x'
|
||||||
|
import defaultMix from '../../mixins/defaultMix'
|
||||||
|
import merchanApis from '../../apis/merchanApis'
|
||||||
|
import mallApis from '../../apis/mallApis'
|
||||||
|
|
||||||
|
wepy.page({
|
||||||
|
store,
|
||||||
|
hooks: {},
|
||||||
|
|
||||||
|
mixins: [defaultMix],
|
||||||
|
data: {
|
||||||
|
newItem: null,
|
||||||
|
title: ''
|
||||||
|
},
|
||||||
|
|
||||||
|
computed: {
|
||||||
|
...mapState({
|
||||||
|
'imageDefine': state => state.imageDefine
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
...mapActions([]),
|
||||||
|
async init(id) {
|
||||||
|
mallApis.getNewsContent(id).then(r => {
|
||||||
|
this.newItem = r.data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
onLoad(options) {
|
||||||
|
console.log(options)
|
||||||
|
if (options.id) {
|
||||||
|
this.init(options.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
<config>
|
||||||
|
{
|
||||||
|
navigationBarTitleText: '',
|
||||||
|
usingComponents: {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</config>
|
@ -69,9 +69,10 @@ module.exports.parseImage = parseImage;
|
|||||||
|
|
||||||
|
|
||||||
<nav-bar title="酒庄信息" />
|
<nav-bar title="酒庄信息" />
|
||||||
|
<div class="container">
|
||||||
<van-loading v-if="!wineryItem" style="margin-top: 20px;" />
|
<van-loading v-if="!wineryItem" style="margin-top: 20px;" />
|
||||||
<div v-else style="margin-bottom: 80px;">
|
<div v-else style="margin-bottom: 80px;">
|
||||||
<image :src="filters.parseImage(wineryItem.avatar)" style="width: 100%;height: 750rpx;" mode="aspectFit" />
|
<image :src="filters.parseImage(wineryItem.topImage)" style="width: 100%;height: 750rpx;" mode="aspectFit" />
|
||||||
<div style="margin: 10px 15px;display: flex;flex-direction: column;">
|
<div style="margin: 10px 15px;display: flex;flex-direction: column;">
|
||||||
<div style="font-size: 20px;font-weight: bold;">{{wineryItem.mchName}}</div>
|
<div style="font-size: 20px;font-weight: bold;">{{wineryItem.mchName}}</div>
|
||||||
<div style="font-size: 14px;color: #999999;">{{wineryItem.subtitle}}</div>
|
<div style="font-size: 14px;color: #999999;">{{wineryItem.subtitle}}</div>
|
||||||
@ -83,6 +84,7 @@ module.exports.parseImage = parseImage;
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -130,7 +130,7 @@ module.exports.parseAwards = parseAwards;
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="winery-item">
|
<div class="winery-item">
|
||||||
<van-image :src="filters.parseImage(item.avatar)" width="100%" height="128px" />
|
<van-image :src="filters.parseImage(item.faceImage)" width="100%" height="128px" />
|
||||||
<div style="margin-left: 20px;margin-top:35px;display: flex;align-items: center;">
|
<div style="margin-left: 20px;margin-top:35px;display: flex;align-items: center;">
|
||||||
<span style="font-size: 20px;font-weight: bold;width: 120px;">{{item.mchName}}</span>
|
<span style="font-size: 20px;font-weight: bold;width: 120px;">{{item.mchName}}</span>
|
||||||
<span style="color: #999;font-size: 12px;width: 200px;margin-left: 8px;">{{item.subtitle}}</span>
|
<span style="color: #999;font-size: 12px;width: 200px;margin-left: 8px;">{{item.subtitle}}</span>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { imgbaseUrl } from '../../../baseDefine'
|
import { imgbaseUrl } from '../../../baseDefine'
|
||||||
import { orderDetailListPage, orderListPage, userAddressListPage } from './pages'
|
import { newsDetailPage, orderDetailListPage, orderListPage, userAddressListPage } from './pages'
|
||||||
|
|
||||||
|
|
||||||
export const myMenuList1 = [
|
export const myMenuList1 = [
|
||||||
@ -29,9 +29,9 @@ export const myMenuList2 = [
|
|||||||
icon: imgbaseUrl + '/my/tool_2.png',
|
icon: imgbaseUrl + '/my/tool_2.png',
|
||||||
path: orderDetailListPage
|
path: orderDetailListPage
|
||||||
}, {
|
}, {
|
||||||
name: '条款政策',
|
name: '隐私政策',
|
||||||
icon: imgbaseUrl + '/my/tool_3.png',
|
icon: imgbaseUrl + '/my/tool_3.png',
|
||||||
path: ''
|
path: newsDetailPage + '?id=' + 'a1e5ec18ae13036d14c94bf0e5d11756'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@ export const orderDetailListPage = '/pages/mall/order/order-detail-list'
|
|||||||
export const orderCheck = '/pages/mall/order/order-check'
|
export const orderCheck = '/pages/mall/order/order-check'
|
||||||
export const userAddressListPage = '/pages/mall/user/user-address-list'
|
export const userAddressListPage = '/pages/mall/user/user-address-list'
|
||||||
export const goodsDetailPage = '/pages/mall/goods/goods-detail'
|
export const goodsDetailPage = '/pages/mall/goods/goods-detail'
|
||||||
|
export const newsDetailPage = '/pages/news/news-detail'
|
||||||
export const wineryListPage = '/pages/winery/winery-list'
|
export const wineryListPage = '/pages/winery/winery-list'
|
||||||
export const wineryDetailPage = '/pages/winery/winery-detail'
|
export const wineryDetailPage = '/pages/winery/winery-detail'
|
||||||
export const webViewPage = '/pages/webView/web'
|
export const webViewPage = '/pages/webView/web'
|
||||||
|
@ -117,6 +117,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
|
|||||||
.antMatchers("/winery/mini/user/**").permitAll()
|
.antMatchers("/winery/mini/user/**").permitAll()
|
||||||
.antMatchers("/winery/order/pay/**").permitAll()
|
.antMatchers("/winery/order/pay/**").permitAll()
|
||||||
.antMatchers("/winery/activity/open/**").permitAll()
|
.antMatchers("/winery/activity/open/**").permitAll()
|
||||||
|
.antMatchers("/news/news_content/open/**").permitAll()
|
||||||
// 除上面外的所有请求全部需要鉴权认证
|
// 除上面外的所有请求全部需要鉴权认证
|
||||||
.anyRequest().authenticated()
|
.anyRequest().authenticated()
|
||||||
.and()
|
.and()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user