Browse Source

整体调整

master
liupopo 2 years ago
parent
commit
5a52e5de04
  1. 22
      docs/databases/tables_create.sql
  2. BIN
      docs/xiugai/3.1汇惠云链管理测试.zip
  3. BIN
      docs/xiugai/汇惠云链管理测试问题.zip
  4. 16
      docs/xiugai/汇融云链APP问题-20230228.docx
  5. BIN
      docs/手册/huichuan.apk
  6. BIN
      docs/手册/logo01.png
  7. BIN
      docs/手册/xiqu.apk
  8. BIN
      docs/手册/交付清单.png
  9. BIN
      docs/手册/惠传01.jpg
  10. BIN
      docs/手册/惠传02.jpg
  11. BIN
      docs/手册/惠传03.jpg
  12. BIN
      docs/手册/惠传04.jpg
  13. BIN
      docs/手册/戏曲01.jpg
  14. BIN
      docs/手册/戏曲02.jpg
  15. BIN
      docs/手册/戏曲03.jpg
  16. BIN
      docs/手册/戏曲04.jpg
  17. BIN
      docs/手册/汇融云链介绍与操作.pptx
  18. 8
      mallplus-admin/src/main/java/com/zscat/mallplus/cms/controller/CmsSubjectController.java
  19. 37
      mallplus-portal/src/main/java/com/zscat/mallplus/controller/AppVersionController.java
  20. 4
      mallplus-portal/src/main/java/com/zscat/mallplus/single/SingePmsController.java
  21. 8
      mallplus-portal/src/main/resources/application-prod.properties
  22. 8
      mallplus-portal/src/main/resources/application-test.properties
  23. 10
      mallplusui-uniapp-app/pages/index/index.vue
  24. 15
      mallplusui-uniapp-app/pagesA/product/list.vue
  25. 8
      mallplusui-web-admin/src/router/index.js
  26. 27
      mallplusui-web-admin/src/views/cms/subject/components/SubjectDetail.vue
  27. 17
      mallplusui-web-admin/src/views/cms/subject/index.vue
  28. 2
      mallplusui-web-admin/src/views/login/index.vue
  29. 8
      mallplusui-web-admin/src/views/pms/product/components/ProductAttrDetail.vue
  30. 11
      mallplusui-web-admin/src/views/pms/product/components/ProductDetail.vue
  31. 30
      mallplusui-web-admin/src/views/pms/product/components/ProductInfoDetail.vue
  32. 158
      mallplusui-web-admin/src/views/pms/product/index.vue
  33. 8
      mallplusui-web-admin/src/views/pms/productAttr/index.vue
  34. 19
      mallplusui-web-admin/src/views/ums/memberLevel/index.vue
  35. 14
      mallplusui-web-pc/index-kong.html

22
docs/databases/tables_create.sql

@ -0,0 +1,22 @@
CREATE TABLE `app_version` (
`id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT 'ID,唯一编号',
`appName` varchar(100) NOT NULL DEFAULT '汇融云链' COMMENT '应用名称',
`versionCode` int(11) NOT NULL DEFAULT '101' COMMENT '版本编码',
`versionName` varchar(100) NOT NULL DEFAULT '101' COMMENT '版本号',
`downloadUrl` varchar(1024) DEFAULT NULL COMMENT '下载地址',
`versionInfo` varchar(1024) DEFAULT NULL COMMENT '版本描述',
`isAlpha` int(11) NOT NULL DEFAULT '0' COMMENT '是否内测:0否,1是',
`fileName` varchar(1024) DEFAULT NULL COMMENT '文件名',
`forceUpdate` int(11) NOT NULL DEFAULT '1' COMMENT '是否强制升级',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
insert into app_version(versionCode,versionName,downloadUrl,versionInfo)
values (101,'101','http://mall.yyundong.com/apks/mall-101.apk','初始版本')
insert into app_version(versionCode,versionName,downloadUrl,versionInfo,fileName)
values (1002,'1.0.0.2','http://mall.yyundong.com/apks/mall-1002.apk','BUG修复,功能完善','mall-1002.apk')
insert into app_version(versionCode,versionName,downloadUrl,versionInfo,fileName)
values (1003,'1.0.0.3','http://mall.yyundong.com/apks/mall-1003.apk','登录方式切换的Bug修复;登录及退出后本地缓存数据问题的修复。','mall-1003.apk')

BIN
docs/xiugai/3.1汇惠云链管理测试.zip

Binary file not shown.

BIN
docs/xiugai/汇惠云链管理测试问题.zip

Binary file not shown.

16
docs/xiugai/汇融云链APP问题-20230228.docx

@ -0,0 +1,16 @@
这个汇融乡村振兴卡号的验证规则是什么
已回复:验证规则是:以"62350109317"开头,并且长度为19位的字符串
已经登录了,但点购买或加入购物车还要求登录;退出了以后再登陆用户信息还在,但是购买需要重新登陆;这里有一个缓存的问题,我们开发人员正在处理。
已经修改
切换使用账号密码登录和短信登录,切换点击的有问题;比如在短信登录那四个字上点击一下,就变成可以输入密码了,然后登陆提示参数错误
已经修改
取消订单了,右上角还是显示待付款
订单问题涉及的状态较多,需要花时间将订单流程和状态统一处理。
待付款的订单多久自动取消?
已回复:订单超时时间是12分钟,但是每10分钟扫描一次订单状态,所以订单超时时间应该在12-22分钟之间。

BIN
docs/手册/huichuan.apk

Binary file not shown.

BIN
docs/手册/logo01.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
docs/手册/xiqu.apk

Binary file not shown.

BIN
docs/手册/交付清单.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

BIN
docs/手册/惠传01.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

BIN
docs/手册/惠传02.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 229 KiB

BIN
docs/手册/惠传03.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 KiB

BIN
docs/手册/惠传04.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 KiB

BIN
docs/手册/戏曲01.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

BIN
docs/手册/戏曲02.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
docs/手册/戏曲03.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 260 KiB

BIN
docs/手册/戏曲04.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 KiB

BIN
docs/手册/汇融云链介绍与操作.pptx

Binary file not shown.

8
mallplus-admin/src/main/java/com/zscat/mallplus/cms/controller/CmsSubjectController.java

@ -42,7 +42,13 @@ public class CmsSubjectController {
@RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize
) {
try {
return new CommonResult().success(ICmsSubjectService.page(new Page<CmsSubject>(pageNum, pageSize), new QueryWrapper<>(entity).select(ConstansValue.sampleSubjectList)));
String title = entity.getTitle();
if (ValidatorUtils.notEmpty(title)) {
entity.setTitle(null);
return new CommonResult().success(ICmsSubjectService.page(new Page<CmsSubject>(pageNum, pageSize), new QueryWrapper<>(entity).like("title", title).select(ConstansValue.sampleSubjectList)));
}else {
return new CommonResult().success(ICmsSubjectService.page(new Page<CmsSubject>(pageNum, pageSize), new QueryWrapper<>(entity).select(ConstansValue.sampleSubjectList)));
}
} catch (Exception e) {
log.error("根据条件查询所有专题表列表:%s", e.getMessage(), e);
}

37
mallplus-portal/src/main/java/com/zscat/mallplus/controller/AppVersionController.java

@ -100,9 +100,9 @@ public class AppVersionController {
return null;
}
@RequestMapping(value = "/versioninfo")
@RequestMapping(value = "/versioninfo1")
@ResponseBody
public Object appVersion(HttpServletRequest request) {
public Object appVersion1(HttpServletRequest request) {
Map<String, Object> map = new HashMap<String, Object>();
int versionCode = 1;// 版本编码
String defUrl = "";
@ -217,4 +217,37 @@ public class AppVersionController {
return new CommonResult().success(appVersionNew);
}
@RequestMapping(value = "/versioninfo")
@ResponseBody
public Object appVersion(HttpServletRequest request) {
Map<String, Object> map = new HashMap<String, Object>();
int versionCode = 101;// 版本编码
String versionName = "101";// 版本号
String downloadUrl = "";// apk下载地址
String versionInfo = "";// 版本的更新描述
String fileName = "";// apk名称
int isAlpha = 0;//是否内测,0否,1是
AppVersion appVersion = new AppVersion();
appVersion.setVersionCode(versionCode);//版本编码
appVersion.setVersionName(versionName);//版本号
appVersion.setDownloadUrl(downloadUrl); //apk下载地址新
appVersion.setVersionInfo(versionInfo);//版本的更新的描述
appVersion.setFileName(fileName);//应用名称
appVersion.setForceUpdate(false);
// 查询版本记录未删除及为正式版的版本记录
AppVersion av = appVersionService.getAll();
if (null != av) {// 如果有正式版的版本记录
appVersion.setVersionCode(av.getVersionCode());//版本编码
appVersion.setVersionName(av.getVersionName());//版本号
appVersion.setDownloadUrl(av.getDownloadUrl()); //apk下载地址新
appVersion.setVersionInfo(av.getVersionInfo());//版本的更新的描述
appVersion.setFileName(av.getFileName());//应用名称
}
String appVersionNew = JsonUtils.objectToJson(appVersion);
return new CommonResult().success(appVersionNew);
}
}

4
mallplus-portal/src/main/java/com/zscat/mallplus/single/SingePmsController.java

@ -340,6 +340,7 @@ public class SingePmsController extends ApiBaseAction {
@RequestParam(value = "schoolId", required = false) Long schoolId,
@RequestParam(value = "productAttributeCategoryId", required = false) Long productAttributeCategoryId,
@RequestParam(value = "productCategoryId", required = false) Long productCategoryId,
@RequestParam(value = "newStatus", required = false) Integer newStatus,
@RequestParam(value = "recommandStatus", required = false) Integer recommandStatus,
@RequestParam(value = "brandId", required = false) Long brandId,
@RequestParam(value = "sort", required = false) Integer sort,
@ -366,6 +367,9 @@ public class SingePmsController extends ApiBaseAction {
if (ValidatorUtils.notEmpty(recommandStatus) && recommandStatus > 0) {
product.setRecommandStatus(1);
}
if (ValidatorUtils.notEmpty(newStatus) && newStatus > 0) {
product.setNewStatus(1);
}
if (ValidatorUtils.notEmpty(brandId) && brandId > 0) {
product.setBrandId(brandId);
}

8
mallplus-portal/src/main/resources/application-prod.properties

@ -32,12 +32,12 @@ spring.datasource.druid.stat-view-servlet.login-username=druid
spring.datasource.druid.stat-view-servlet.login-password=druid
# \u7CFB\u7EDF\u914D\u7F6E
mallplus.domain=http://51wangshi.com:8082
mallplus.domain=http://mall.yyundong.com/
mallplus.defaultIcon=https://mall.yyundong.com/avatar.png
mallplus.name=mallplus-b2b2c
mallplus.name=????
mallplus.version=1.1.0
mallplus.company=mallplus technology
mallplus.subdomain=mallplus.com
mallplus.company=????
mallplus.subdomain=mall.yyundong.com
mallplus.code=123456
mallplus.defaultPassword=123456

8
mallplus-portal/src/main/resources/application-test.properties

@ -24,12 +24,12 @@ spring.datasource.druid.stat-view-servlet.reset-enable=true
spring.datasource.druid.stat-view-servlet.login-username=druid
spring.datasource.druid.stat-view-servlet.login-password=druid
mallplus.domain=http://51wangshi.com:8082
mallplus.domain=http://mall.yyundong.com/
mallplus.defaultIcon=https://mall.yyundong.com/avatar.png
mallplus.name=mallplus-b2b2c
mallplus.name=????
mallplus.version=1.1.0
mallplus.company=mallplus technology
mallplus.subdomain=mallplus.com
mallplus.company=????
mallplus.subdomain=mall.yyundong.com
mallplus.code=123456
mallplus.defaultPassword=123456

10
mallplusui-uniapp-app/pages/index/index.vue

@ -20,11 +20,11 @@
</view>
<!-- 分类 -->
<view class="cate-section">
<view class="cate-item" @click="navToTabPage('../../pagesA/product/list?isFenxiao=1')">
<view class="cate-item" @click="navToTabPage('../../pagesA/product/list?productAttributeCategoryId=1005001')">
<image src="/static/nywz_icon.png"></image>
<text>农业物资</text>
</view>
<view class="cate-item" @click="navToTabPage('../../pagesA/product/list?isVip=1')">
<view class="cate-item" @click="navToTabPage('../../pagesA/product/list?productAttributeCategoryId=1005000')">
<image src="/static/shwz_icon.png"></image>
<text>生活物资</text>
</view>
@ -177,7 +177,7 @@
<!-- 新品推荐 -->
<view v-if='homeNewProductList && homeNewProductList.length>0' class="f-header m-t"
@click="navToTabPage('../../pagesA/product/list')">
@click="navToTabPage('../../pagesA/product/list?newStatus=1')">
<image src="/static/temp/h1.png"></image>
<view class="tit-box">
<text class="tit">新品推荐</text>
@ -203,7 +203,7 @@
</view>
<!-- 人气推荐 -->
<view v-if='homeRecommendProductList && homeRecommendProductList.length>0' class="f-header m-t"
@click="navToTabPage('../../pagesA/product/list')">
@click="navToTabPage('../../pagesA/product/list?recommandStatus=1')">
<image src="/static/temp/h1.png"></image>
<view class="tit-box">
<text class="tit">人气推荐</text>
@ -229,7 +229,7 @@
<!-- 新品上市 -->
<!-- <view class="f-header m-t" @click="navToTabPage('../../pagesA/product/list')"> -->
<view class="f-header m-t" @click="navToTabPage('../../pagesA/product/list?isFenxiao=1')">
<view class="f-header m-t" @click="navToTabPage('../../pagesA/product/list')">
<image src="/static/temp/h1.png"></image>
<view class="tit-box">
<text class="tit">商品列表</text>

15
mallplusui-uniapp-app/pagesA/product/list.vue

@ -90,6 +90,8 @@ export default {
isFenxiao: 0,
isVip: 0,
cid: null,
newStatus:null,
recommandStatus:null,
priceOrder: 0, //1 2
cateList: [],
goodsList: [],
@ -107,7 +109,8 @@ export default {
this.cateId = options.sid;
this.isVip = options.isVip;
this.isFenxiao = options.isFenxiao;
console.log(options);
this.newStatus= options.newStatus;
this.recommandStatus= options.recommandStatus;
this.productAttributeCategoryId = options.productAttributeCategoryId;
this.loadCateList(options.fid, options.sid);
this.loadData();
@ -167,8 +170,8 @@ export default {
}
if (this.productAttributeCategoryId) {
params.productAttributeCategoryId = this.productAttributeCategoryId;
}
params.productAttributeCategoryId = this.productAttributeCategoryId;
}
if (this.keyword) {
params.keyword = this.keyword;
}
@ -178,6 +181,12 @@ export default {
if (this.isFenxiao) {
params.isFenxiao = 1;
}
if (this.newStatus) {
params.newStatus = this.newStatus;
}
if (this.recommandStatus) {
params.recommandStatus = this.recommandStatus;
}
console.log("params>>>>",params)

8
mallplusui-web-admin/src/router/index.js

@ -1677,7 +1677,8 @@ hidden: true
component: Layout,
redirect: '/cms/help',
name: 'cms',
meta: {title: '内容管理', icon: 'home'},
// meta: {title: '内容管理', icon: 'home'},
meta: {title: '农机服务', icon: 'home'},
children: [
{
path: 'cmsZhaoPin',
@ -1723,12 +1724,13 @@ hidden: true
path: 'subject',
name: 'subject',
component: () => import('@/views/cms/subject/index'),
meta: {title: '专题列表', icon: 'product-list'}
// meta: {title: '专题列表', icon: 'product-list'}
meta: {title: '农机资讯', icon: 'product-list'}
}, {
path: 'addSubject',
name: 'addSubject',
component: () => import('@/views/cms/subject/add'),
meta: {title: '添加专题'},
meta: {title: '添加资讯'},
hidden: true
},
{

27
mallplusui-web-admin/src/views/cms/subject/components/SubjectDetail.vue

@ -2,7 +2,7 @@
<el-card class="form-container" shadow="never">
<el-form :model="subject" :rules="rules" ref="subjectFrom" label-width="150px">
<el-form-item label="分类:" prop="categoryId">
<!-- <el-form-item label="分类:" prop="categoryId">
<el-select
v-model="subject.categoryId"
@change="handlecateChange"
@ -14,33 +14,32 @@
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item label="标题:" prop="title">
<el-input v-model="subject.title"></el-input>
</el-form-item>
<el-form-item label="专题主图:" prop="pic">
<el-form-item label="主图:" prop="pic">
<single-upload v-model="subject.pic"></single-upload>
</el-form-item>
<el-form-item label="推荐:" prop="recommendStatus">
<!-- <el-form-item label="推荐:" prop="recommendStatus">
<el-radio-group v-model="subject.recommendStatus">
<el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio>
</el-radio-group>
</el-form-item>
-->
<el-form-item label="画册:">
<multi-upload v-model="selectProductPics"></multi-upload>
</el-form-item>
<el-form-item label="是否显示:">
<!-- <el-form-item label="是否显示:">
<el-radio-group v-model="subject.showStatus">
<el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio>
</el-radio-group>
</el-form-item>
</el-form-item> -->
<el-form-item label="描述:" prop="description">
<el-input
:autoSize="true"
@ -51,9 +50,9 @@
<el-form-item label="内容:" prop="content">
<el-tabs v-model="activeHtmlName" type="card">
<el-tab-pane label="电脑端详情" name="pc">
<!-- <el-tab-pane label="电脑端详情" name="pc">
<tinymce :width="595" :height="300" v-model="subject.content"></tinymce>
</el-tab-pane>
</el-tab-pane> -->
<el-tab-pane label="移动端详情" name="mobile">
<tinymce :width="595" :height="300" v-model="subject.content"></tinymce>
</el-tab-pane>
@ -73,7 +72,9 @@
import Tinymce from '@/components/Tinymce'
import MultiUpload from '@/components/Upload/multiUpload'
const defaultSubject={
name: ''
title: '',
category_id:38,
category_name:'农机租赁'
};
export default {
name: 'SubjectDetail',
@ -90,7 +91,7 @@
categoryName:'',
albumPics:null,
cateOptions:null,
activeHtmlName: 'pc',
activeHtmlName: 'mobile',
rules: {
name: [
{required: true, message: '请输入品牌名称', trigger: 'blur'},

17
mallplusui-web-admin/src/views/cms/subject/index.vue

@ -15,7 +15,7 @@
<div style="margin-top: 15px">
<el-form :inline="true" :model="listQuery" size="small" label-width="140px">
<el-form-item label="输入搜索:">
<el-input style="width: 203px" v-model="listQuery.keyword" placeholder="品牌名称/关键字"></el-input>
<el-input style="width: 203px" v-model="listQuery.title" placeholder="标题/关键字"></el-input>
</el-form-item>
</el-form>
</div>
@ -42,19 +42,19 @@
<el-table-column label="编号" align="center">
<template slot-scope="scope">{{scope.row.id}}</template>
</el-table-column>
<el-table-column label="分类" align="center">
<!-- <el-table-column label="分类" align="center">
<template slot-scope="scope">{{scope.row.categoryId}}</template>
</el-table-column>
<el-table-column label="专题分类名称" align="center">
<template slot-scope="scope">{{scope.row.categoryName}}</template>
</el-table-column>
</el-table-column> -->
<el-table-column label="标题" align="center">
<template slot-scope="scope">{{scope.row.title}}</template>
</el-table-column>
<el-table-column label="专题主图" align="center">
<el-table-column label="主图" align="center">
<template slot-scope="scope"><img style="height: 80px" :src="scope.row.pic"></template>
</el-table-column>
<el-table-column label="关联产品数量" align="center">
<!-- <el-table-column label="关联产品数量" align="center">
<template slot-scope="scope">{{scope.row.productCount}}</template>
</el-table-column>
<el-table-column label="推荐" align="center">
@ -67,7 +67,6 @@
</el-switch>
</template>
</el-table-column>
<el-table-column label="收藏量" align="center">
<template slot-scope="scope">{{scope.row.collectCount}}</template>
</el-table-column>
@ -77,7 +76,6 @@
<el-table-column label="评论量" align="center">
<template slot-scope="scope">{{scope.row.commentCount}}</template>
</el-table-column>
<el-table-column label="显示状态" align="center">
<template slot-scope="scope">
<el-switch
@ -88,11 +86,9 @@
</el-switch>
</template>
</el-table-column>
<el-table-column label="转发数" align="center">
<template slot-scope="scope">{{scope.row.forwardCount}}</template>
</el-table-column>
</el-table-column> -->
<el-table-column label="创建时间" align="center">
<template slot-scope="scope">{{scope.row.createTime|formatCreateTime}}</template>
</el-table-column>
@ -150,6 +146,7 @@
operateType: null,
listQuery: {
keyword: null,
title: null,
pageNum: 1,
pageSize: 10
},

2
mallplusui-web-admin/src/views/login/index.vue

@ -3,7 +3,7 @@
<el-card class="login-form-layout">
<el-form autoComplete="on" :model="loginForm" :rules="loginRules" ref="loginForm" label-position="left">
<div style="text-align: center"><img src="../../assets/img/logo.png" width="140px"/></div>
<h2 class="login-title color-main">云链管理后台</h2>
<h2 class="login-title color-main">云链管理后台</h2>
<el-form-item prop="username">
<el-input name="username" type="text" v-model="loginForm.username" autoComplete="on" placeholder="请输入用户名">
<span slot="prefix"><svg-icon icon-class="user" class="color-main"></svg-icon></span>

8
mallplusui-web-admin/src/views/pms/product/components/ProductAttrDetail.vue

@ -1,7 +1,7 @@
<template>
<div style="margin-top: 50px">
<el-form :model="value" ref="productAttrForm" label-width="150px" style="width: 720px" size="small">
<el-form-item label="属性类型:">
<el-form-item label="商品类型:">
<el-select v-model="value.productAttributeCategoryId"
placeholder="请选择属性类型"
@change="handleProductAttrChange">
@ -137,9 +137,9 @@
</el-form-item>
<el-form-item label="规格参数:">
<el-tabs v-model="activeHtmlName" type="card">
<el-tab-pane label="电脑端详情" name="pc">
<!-- <el-tab-pane label="电脑端详情" name="pc">
<tinymce :width="595" :height="300" v-model="value.detailHtml"></tinymce>
</el-tab-pane>
</el-tab-pane> -->
<el-tab-pane label="移动端详情" name="mobile">
<tinymce :width="595" :height="300" v-model="value.detailMobileHtml"></tinymce>
</el-tab-pane>
@ -186,7 +186,7 @@
//
addProductAttrValue: '',
//
activeHtmlName: 'pc'
activeHtmlName: 'mobile'
}
},
computed: {

11
mallplusui-web-admin/src/views/pms/product/components/ProductDetail.vue

@ -26,20 +26,20 @@
@nextStep="nextStep"
@prevStep="prevStep">
</product-attr-detail>
<product-relation-detail
<!-- <product-relation-detail
v-show="showStatus[3]"
v-model="productParam"
:is-edit="isEdit"
@prevStep="prevStep"
@finishCommit="finishCommit">
</product-relation-detail>
</product-relation-detail> -->
</el-card>
</template>
<script>
import ProductInfoDetail from './ProductInfoDetail';
import ProductSaleDetail from './ProductSaleDetail';
import ProductAttrDetail from './ProductAttrDetail';
import ProductRelationDetail from './ProductRelationDetail';
// import ProductRelationDetail from './ProductRelationDetail';
import {createProduct,getProduct,updateProduct} from '@/api/product';
const defaultProductParam = {
@ -113,7 +113,9 @@
};
export default {
name: 'ProductDetail',
components: {ProductInfoDetail, ProductSaleDetail, ProductAttrDetail, ProductRelationDetail},
components: {ProductInfoDetail, ProductSaleDetail, ProductAttrDetail
// , ProductRelationDetail
},
props: {
isEdit: {
type: Boolean,
@ -131,6 +133,7 @@
if(this.isEdit){
getProduct(this.$route.query.id).then(response=>{
this.productParam=response.data;
console.log('kkkkk',this.productParam)
});
}
},

30
mallplusui-web-admin/src/views/pms/product/components/ProductInfoDetail.vue

@ -78,7 +78,7 @@
<el-form-item label="商品售价:">
<el-input v-model="value.price"></el-input>
</el-form-item>
<el-form-item label="市场价:">
<el-form-item label="惠农价:">
<el-input v-model="value.originalPrice"></el-input>
</el-form-item>
<el-form-item label="商品库存:">
@ -116,13 +116,12 @@
:label="item.label"
:value="item.value">
</el-option>
</el-select> -->
</el-form-item>
</el-select>
</el-form-item> -->
<el-form-item label="排序">
<!-- <el-form-item label="排序">
<el-input v-model="value.sort"></el-input>
</el-form-item>
</el-form-item> -->
<el-form-item style="text-align: center">
<el-button type="primary" size="medium" @click="handleNext('productInfoForm')">下一步</el-button>
</el-form-item>
@ -237,7 +236,6 @@ let userRoles = []
this.handleEditCreated();
},
selectProductCateValue: function (newValue) {
if (newValue != null) {
this.value.productCategoryId = newValue[newValue.length-1 >0?newValue.length-1:0];
this.value.productCategoryName= this.getCateNameById(this.value.productCategoryId);
@ -245,7 +243,6 @@ let userRoles = []
this.value.productCategoryId = null;
this.value.productCategoryName=null;
}
},
selectAreaValue: function (newValue) {
@ -288,11 +285,17 @@ let userRoles = []
},
//
handleEditCreated(){
console.log(this.value)
if(this.value.productCategoryId!=null){
this.selectProductCateValue.push(this.value.cateParentId);
this.selectProductCateValue.push(this.value.productCategoryId);
let seleval = []
seleval.push(this.value.cateParentId);
seleval.push(this.value.productCategoryId);
this.selectProductCateValue = seleval
// this.selectProductCateValue.push(this.value.cateParentId);
// this.selectProductCateValue.push(this.value.productCategoryId);
}
console.log(this.selectProductCateValue)
if(this.value.areaId!=null){
getArea(this.value.areaId).then(response => {
this.selectAreaValue.push(response.data.pid);
@ -334,10 +337,9 @@ let userRoles = []
getCateNameById(id){
let name=null;
for(let i=0;i<this.productCateOptions.length;i++){
for(let j=0;i<this.productCateOptions[i].children.length;j++){
if( this.productCateOptions[i].children[j].value!=undefined && this.productCateOptions[i].children[j].value===id){
for(let j=0;j<this.productCateOptions[i].children.length;j++){
if( this.productCateOptions[i].children[j].value && this.productCateOptions[i].children[j].value!=undefined && this.productCateOptions[i].children[j].value===id){
name=this.productCateOptions[i].children[j].label;
return name;
}

158
mallplusui-web-admin/src/views/pms/product/index.vue

@ -60,27 +60,63 @@
{{ searchxianshitit }}
</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="queryParams" :model="queryParams" :inline="true" class="tab-header">
<el-form-item label="仓库/门店">
<el-input v-model="queryParams.params.orderId" placeholder="" clearable />
</el-form-item>
<el-form-item label="起始日期">
<el-date-picker v-model="queryParams.params.orderStartDate" type="date" clearable
value-format="yyyy-MM-dd" placeholder="选择日期" />
<span style="padding: 0 8px"></span>
<el-date-picker v-model="queryParams.params.orderEndDate" type="date" clearable
value-format="yyyy-MM-dd" placeholder="选择日期" />
</el-form-item>
<el-form-item label="商品名称">
<el-input v-model="queryParams.params.supplierName" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品编码">
<el-input v-model="queryParams.params.supplierName" placeholder="" clearable />
<el-form :model="listQuery" :inline="true" class="tab-header">
<el-form-item label="输入搜索:">
<el-input style="width: 203px" v-model="listQuery.keyword" placeholder="商品名称"></el-input>
</el-form-item>
<el-form-item label="商品类型:">
<el-select v-model="listQuery.productAttributeCategoryId" placeholder="商品类型" clearable style="width: 160px;">
<el-option v-for="item in productAttributeCategoryOptions" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="商品分类:">
<el-cascader clearable change-on-select v-model="selectProductCateValue"
:options="productCateOptions">
</el-cascader>
</el-form-item>
<el-form-item label="商品品牌:">
<el-select v-model="listQuery.brandId" placeholder="请选择品牌" clearable>
<el-option v-for="item in brandOptions" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="上架状态:">
<el-select v-model="listQuery.publishStatus" placeholder="全部" clearable style="width: 120px;">
<el-option v-for="item in publishStatusOptions" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="审核状态:">
<el-select v-model="listQuery.verifyStatus" placeholder="全部" clearable style="width: 120px;">
<el-option v-for="item in verifyStatusOptions" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="是否新品:">
<el-select v-model="listQuery.newStatus" placeholder="全部" clearable style="width: 120px;">
<el-option v-for="item in newStatusOptions" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="是否推荐:">
<el-select v-model="listQuery.recommandStatus" placeholder="全部" clearable style="width: 120px;">
<el-option v-for="item in recommandStatusOptions" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" size="small" icon="el-icon-search" @click="handleSearchList()">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh" @click="handleResetSearch()">重置</el-button>
</div>
</div>
</div>
@ -99,9 +135,9 @@
<el-tab-pane name="3">
<span slot="label"><i class="el-icon-truck"></i>仓库中</span>
</el-tab-pane>
<el-tab-pane name="4">
<!-- <el-tab-pane name="4">
<span slot="label"><i class="el-icon-truck"></i> 回收站</span>
</el-tab-pane>
</el-tab-pane> -->
<!-- <el-tab-pane name="5">
<span slot="label"><i class="el-icon-truck"></i>
<el-button class="btn-add" @click="handleAddProduct()" size="mini">
@ -141,6 +177,7 @@
<template slot-scope="scope">
<p>{{scope.row.name}}</p>
<p>品牌{{scope.row.brandName}}</p>
<p>类别{{scope.row.productCategoryName}}</p>
</template>
</el-table-column>
<el-table-column label="价格/货号" width="120" align="center">
@ -166,7 +203,7 @@
:active-value="1" :inactive-value="0" v-model="scope.row.recommandStatus">
</el-switch>
</p>
<p>分销
<!-- <p>分销
<el-switch @change="handleFenxiaoStatusChange(scope.$index, scope.row)"
:active-value="1" :inactive-value="0" v-model="scope.row.isFenxiao">
</el-switch>
@ -175,17 +212,17 @@
<el-switch @change="handleVipStatusChange(scope.$index, scope.row)" :active-value="1"
:inactive-value="0" v-model="scope.row.isVip">
</el-switch>
</p>
</p> -->
</template>
</el-table-column>
<el-table-column label="排序" width="100" align="center">
<!-- <el-table-column label="排序" width="100" align="center">
<template slot-scope="scope">{{scope.row.sort}}</template>
</el-table-column>
<el-table-column label="SKU库存" width="100" align="center">
</el-table-column> -->
<el-table-column label="库存" width="100" align="center">
<template slot-scope="scope">
<p>{{scope.row.stock }}</p>
<el-button type="primary" icon="el-icon-edit"
@click="handleShowSkuEditDialog(scope.$index, scope.row)" circle></el-button>
<!-- <el-button type="primary" icon="el-icon-edit"
@click="handleShowSkuEditDialog(scope.$index, scope.row)" circle></el-button> -->
</template>
</el-table-column>
<el-table-column label="销量" width="100" align="center">
@ -203,14 +240,16 @@
<el-table-column label="操作" width="160" align="center">
<template slot-scope="scope">
<p>
<el-button size="mini" @click="handleDeleteStatus(scope.$index, scope.row)">回收
</el-button>
<el-button size="mini" @click="handleUpdateProduct(scope.$index, scope.row)">编辑
</el-button>
<!-- <el-button size="mini" @click="handleDeleteStatus(scope.$index, scope.row)">回收
</el-button>
</p>
<p>
<el-button size="mini" @click="handleShowVeriyEditDialog(scope.$index, scope.row)">日志
</el-button>
</el-button> -->
<el-button size="mini" type="danger" @click="handleDelete(scope.$index, scope.row)">删除
</el-button>
</p>
@ -317,7 +356,8 @@
update as updateSkuStockList
} from '@/api/skuStock'
import {
fetchList as fetchProductAttrList
fetchList as fetchProductAttrList,
fetchAllList as fetchProductAttrAllList
} from '@/api/productAttr'
import {
fetchList as fetchBrandList
@ -325,6 +365,7 @@
import {
fetchListWithChildren
} from '@/api/productCate'
import {fetchList as fetchProductAttrCateList} from '@/api/productAttrCate'
const defaultListQuery = {
keyword: null,
@ -335,6 +376,9 @@
verifyStatus: null,
productSn: null,
productCategoryId: null,
productAttributeCategoryId: null,
newStatus: null,
recommandStatus: null,
brandId: null
};
export default {
@ -389,14 +433,14 @@
label: "取消新品",
value: "newOff"
},
{
label: "转移到分类",
value: "transferCategory"
},
{
label: "移入回收站",
value: "recycle"
}
// {
// label: "",
// value: "transferCategory"
// },
// {
// label: "",
// value: "recycle"
// }
],
tabsName: '1',
operateType: null,
@ -408,6 +452,7 @@
multipleSelection: [],
productCateOptions: [],
brandOptions: [],
productAttributeCategoryOptions: [],
publishStatusOptions: [{
value: 1,
label: '上架'
@ -422,6 +467,20 @@
value: 0,
label: '未审核'
}],
newStatusOptions: [{
value: 1,
label: '是'
}, {
value: 0,
label: '否'
}],
recommandStatusOptions: [{
value: 1,
label: '是'
}, {
value: 0,
label: '否'
}],
statusOptions: [{
value: 1,
label: '出售中'
@ -431,10 +490,12 @@
}, {
value: 3,
label: '仓库中'
}, {
value: 4,
label: '回收站'
}],
}
// , {
// value: 4,
// label: ''
// },
],
btnList: [],
queryParams: {
current: 1,
@ -462,6 +523,7 @@
this.getList();
this.getBrandList();
this.getProductCateList();
this.getProductAttrCateList();
},
watch: {
selectProductCateValue: function(newValue) {
@ -594,6 +656,16 @@
}
});
},
getProductAttrCateList() {
let param = {pageNum: 1, pageSize: 100};
fetchProductAttrCateList().then(response => {
let list = response.data.records;
this.productAttributeCategoryOptions = [];
for (let i = 0; i < list.length; i++) {
this.productAttributeCategoryOptions.push({label: list[i].name, value: list[i].id});
}
});
},
handleShowVeriyEditDialog(index, row) {
this.vertyProduct.dialogVisible = true;
this.vertyProduct.productId = row.id;

8
mallplusui-web-admin/src/views/pms/productAttr/index.vue

@ -3,12 +3,12 @@
<el-card class="operate-container" shadow="never">
<i class="el-icon-tickets" style="margin-top: 5px"></i>
<span style="margin-top: 5px">数据列表</span>
<el-button
<!-- <el-button
class="btn-add"
@click="addProductAttrCate()"
size="mini">
添加
</el-button>
</el-button> -->
</el-card>
<div class="table-container">
<el-table ref="productAttrCateTable"
@ -22,7 +22,7 @@
<el-table-column label="类型名称" align="center">
<template slot-scope="scope">{{scope.row.name}}</template>
</el-table-column>
<el-table-column label="属性数量" width="200" align="center">
<!-- <el-table-column label="属性数量" width="200" align="center">
<template slot-scope="scope">{{scope.row.attributeCount==null?0:scope.row.attributeCount}}</template>
</el-table-column>
<el-table-column label="参数数量" width="200" align="center">
@ -52,7 +52,7 @@
@click="handleDelete(scope.$index, scope.row)">删除
</el-button>
</template>
</el-table-column>
</el-table-column> -->
</el-table>
</div>
<div class="pagination-container">

19
mallplusui-web-admin/src/views/ums/memberLevel/index.vue

@ -1,6 +1,6 @@
<template> 
<div class="app-container">
<el-card class="filter-container" shadow="never">
<!-- <el-card class="filter-container" shadow="never">
<div>
<i class="el-icon-search"></i>
<span>筛选搜索</span>
@ -19,16 +19,16 @@
</el-form-item>
</el-form>
</div>
</el-card>
</el-card> -->
<el-card class="operate-container" shadow="never">
<i class="el-icon-tickets"></i>
<span>数据列表</span>
<el-button
<!-- <el-button
class="btn-add"
@click="addMemberLevel()"
size="mini">
添加
</el-button>
</el-button> -->
</el-card>
<div class="table-container">
<el-table ref="memberLevelTable"
@ -45,10 +45,10 @@
<el-table-column label="名称" align="center">
<template slot-scope="scope">{{scope.row.name}}</template>
</el-table-column>
<el-table-column label="成长值" align="center">
<!-- <el-table-column label="成长值" align="center">
<template slot-scope="scope">{{scope.row.growthPoint}}</template>
</el-table-column>
<el-table-column label="免运费标准" align="center">
<template slot-scope="scope">{{scope.row.freeFreightPoint}}</template>
</el-table-column>
@ -81,13 +81,14 @@
</el-table-column>
<el-table-column label="成为会员的价格" align="center">
<template slot-scope="scope">{{scope.row.price}}</template>
</el-table-column>
</el-table-column> -->
<el-table-column label="备注" align="center">
<template slot-scope="scope">{{scope.row.note}}</template>
</el-table-column>
<el-table-column label="操作" width="200" align="center">
<!-- <el-table-column label="操作" width="200" align="center">
<template slot-scope="scope">
<el-button
size="mini"
@ -99,7 +100,7 @@
@click="handleDelete(scope.$index, scope.row)">删除
</el-button>
</template>
</el-table-column>
</el-table-column> -->
</el-table>
</div>
<div class="batch-operate-container">

14
mallplusui-web-pc/index-kong.html

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8>
<title>汇融云链</title>
<meta name=keywords content=汇融云链>
<meta name=description content=汇融云链>
<meta http-equiv=X-UA-Compatible content="IE=Edge">
<meta name=wap-font-scale content=no>
</head>
<body>
<div id=app>汇融云链</div>
</body>
</html>
Loading…
Cancel
Save