* 'master' of https://gitee.com/ZhongBangKeJi/crmeb_java:
  fix: 优品推荐请求不登录可以访问修改。
  fix:修改商品添加中商品的价格校验,最小值为0.01,库存正整数。
  fix:修改商品添加中商品的价格校验,最小值为0.01,库存正整数。
  update README.md.
This commit is contained in:
stivepeim
2023-09-11 10:07:26 +08:00
3 changed files with 41 additions and 34 deletions

View File

@@ -99,7 +99,7 @@ CRMEB开源商城PHPhttps://gitee.com/ZhongBangKeJi/CRMEB
---
### 系统演示:
### 🎬 系统演示:
![](crmeb/crmebimage/crmebimage/demoimage/c1.jpg)
移动端https://java.crmeb.net<br>
WEBPC管理端https://admin.java.crmeb.net<br>
@@ -113,7 +113,7 @@ WEBPC管理端https://admin.java.crmeb.net<br>
---
### 系统资料
### 📃 系统资料
需要系统文档的朋友看过来,安装文档、产品介绍、技术文档...你想要的我都有!
[https://doc.crmeb.com/java/crmeb_java](https://doc.crmeb.com/java/crmeb_java)
@@ -123,13 +123,13 @@ WEBPC管理端https://admin.java.crmeb.net<br>
---
### UI界面
### 💟 UI界面
#### 核心功能
![](crmeb/crmebimage/crmebimage/demoimage/javaop2.jpg)
### 移动端预览
### 📱 移动端预览
![](crmeb/crmebimage/crmebimage/demoimage/03-mobile-01.png)
![](crmeb/crmebimage/crmebimage/demoimage/04-mobile-02.png)
![](crmeb/crmebimage/crmebimage/demoimage/05-mobile-03.png)
@@ -148,18 +148,18 @@ WEBPC管理端https://admin.java.crmeb.net<br>
---
### CRMEB互动
### 📲 CRMEB互动
#### 技术娱乐
代码写累了?那就歇会吧!扫码让你开心一刻!
![](crmeb/crmebimage/crmebimage/demoimage/crmebdouyin.jpg)
#### 技术社区
#### 📈 技术社区
找方法、提bug、看官方消息、拿活跃大奖
https://www.crmeb.com/ask/thread/list/152
#### 技术交流
#### 📞 技术交流
跟着官方不迷路欢迎扫码加入CRMEB 开源项目群,一手消息及资源,尽在掌握!<br>
CRMEB JAVA 技术交流QQ群 1群 🈵️<br>
CRMEB JAVA 技术交流QQ群 2群 🈵️<br>
@@ -170,7 +170,7 @@ CRMEB JAVA 技术交流QQ群 3群 640230510 🈵️ 群已满<br>
---
### 特别鸣谢
### 💌 特别鸣谢
核心开发团队
产品:木子刀客
@@ -183,13 +183,13 @@ UI被子横盖显得高🐰
---
### 使用须知
### 🔔 使用须知
1.允许用于个人学习、毕业设计、教学案例、公益事业、商业使用;<br>
2.如果商用必须保留版权信息,请自觉遵守;<br>
3.禁止将本项目的代码和资源进行任何形式的出售,产生的一切任何后果责任由侵权者自负。<br>
---
### 版权信息
### 🪪 版权信息
本项目包含的第三方源码和二进制文件之版权信息另行标注。<br>
版权所有Copyright © 2017-2022 by CRMEB (https://www.crmeb.com)<br>
All rights reserved。<br>

View File

@@ -177,7 +177,7 @@
</el-table-column>
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="120">
<template slot-scope="scope">
<el-input v-model="scope.row[iii]" :type="formThead[iii].title==='商品编号'?'text':'number'" :min="0" class="priceBox" @keyup.native='keyupEvent($event,oneFormBatch,scope.$index,iii, 1)' />
<el-input v-model="scope.row[iii]" maxlength="9" min="0.01" class="priceBox" @blur="keyupEvent(iii, scope.row[iii], scope.$index, 1)"/>
</template>
</el-table-column>
<template v-if="formValidate.isSub">
@@ -216,7 +216,7 @@
</el-table-column>
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="120">
<template slot-scope="scope">
<el-input :disabled="isDisabled" v-model="scope.row[iii]" :type="formThead[iii].title==='商品编号'?'text':'number'" :min="0" class="priceBox" @keyup.native='keyupEvent($event,oneFormBatch,scope.$index,iii, 2)' />
<el-input :disabled="isDisabled" v-model="scope.row[iii]" maxlength="9" min="0.01" class="priceBox" @blur="keyupEvent(iii, scope.row[iii], scope.$index, 2)" />
</template>
</el-table-column>
<template v-if="formValidate.isSub">
@@ -260,7 +260,8 @@
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="120">
<template slot-scope="scope">
<!-- <span>scope.row:{{scope.row}}</span>-->
<el-input :disabled="isDisabled" v-model="scope.row[iii]" :type="formThead[iii].title==='商品编号'?'text':'number'" class="priceBox" @keyup.native='keyupEvent($event,oneFormBatch,scope.$index,iii, 3)' />
<el-input :disabled="isDisabled" maxlength="9" min="0.01"
v-model="scope.row[iii]" class="priceBox" @blur="keyupEvent(iii, scope.row[iii], scope.$index, 3)" />
</template>
</el-table-column>
<el-table-column align="center" label="一级返佣(元)" min-width="120" v-if="formValidate.isSub">
@@ -585,33 +586,39 @@
this.getGoodsType()
},
methods: {
keyupEvent(e,array,index,row,num){
e.target.value=e.target.value.replace(/[^\d.]/g, '');
e.target.value=e.target.value.replace(/\.{2,}/g, '.');
e.target.value=e.target.value.replace(/^\./g, '0.');
e.target.value=e.target.value.replace(/^\d*\.\d*\./g, e.target.value.substring(0,e.target.value.length-1));
e.target.value=e.target.value.replace(/^0[^\.]+/g, '0')
e.target.value=e.target.value.replace(/^(\d+)\.(\d\d).*$/, '$1.$2')
// 校验输入框不能输入0保留2位小数库存为正整数
keyupEvent(key, val, index, num) {
if (key === 'barCode') return;
var re = /^\D*([0-9]\d*\.?\d{0,2})?.*$/;
switch (num) {
case 1:
if(row == 'stock'){
this.oneFormBatch[index][row]=parseInt(e.target.value)
}else{
this.oneFormBatch[index][row]=e.target.value
if (val == 0) {
this.oneFormBatch[index][key] = key === 'stock' ? 0 : 0.01;
} else {
this.oneFormBatch[index][key] =
key === 'stock'
? parseInt(val)
: this.$set(this.oneFormBatch[index], key, val.toString().replace(re, '$1'));
}
break;
case 2:
if(row == 'stock'){
this.OneattrValue[index][row]=parseInt(e.target.value)
}else{
this.OneattrValue[index][row]=e.target.value
if (val == 0) {
this.OneattrValue[index][key] = key === 'stock' ? 0 : 0.01;
} else {
this.OneattrValue[index][key] =
key === 'stock'
? parseInt(val)
: this.$set(this.OneattrValue[index], key, val.toString().replace(re, '$1'));
}
break;
default:
if(row == 'stock'){
this.ManyAttrValue[index][row]=parseInt(e.target.value)
}else{
this.ManyAttrValue[index][row]=e.target.value
if (val == 0) {
this.ManyAttrValue[index][key] = key === 'stock' ? 0 : 0.01;
} else {
this.ManyAttrValue[index][key] =
key === 'stock'
? parseInt(val)
: this.$set(this.ManyAttrValue[index], key, val.toString().replace(re, '$1'));
}
break;
}

View File

@@ -175,7 +175,7 @@ export function storeListApi(data) {
* @param object data
*/
export function getProductGood() {
return request.get('product/good');
return request.get('product/good',{},{ noAuth : true});
}
/**
@@ -185,7 +185,7 @@ export function getProductGood() {
*
*/
export function getReplyProduct(id) {
return request.get('reply/product/' + id, {
return request.get('reply/product/' + id, {},{
noAuth: true
})
}