update sql 及其他修复

This commit is contained in:
hupeng 2024-08-27 21:15:41 +08:00
parent 83e691d625
commit 74d5040b37
11 changed files with 76 additions and 50 deletions

View File

@ -109,8 +109,6 @@ yshop-crm意象客户关系管理系统专门为企业销售团队量身定
- element-plus:https://element-plus.gitee.io/zh-CN/ - element-plus:https://element-plus.gitee.io/zh-CN/
- vue:https://cn.vuejs.org/ - vue:https://cn.vuejs.org/
- pay-java-parent:https://gitee.com/egzosn/pay-java-parent - pay-java-parent:https://gitee.com/egzosn/pay-java-parent
- uvuihttps://www.uvui.cn/
- uniapp:https://uniapp.dcloud.net.cn/
## 使用须知 ## 使用须知

View File

@ -332,9 +332,9 @@ export const handleTree3 = (data: any[], id?: string, parentId?: string, childre
for (const d of data) { for (const d of data) {
const parentId = d[config.parentId] const parentId = d[config.parentId]
if (parentId == 0) { // if (parentId == 0) {
d.disabled = true // d.disabled = true
} // }
if (childrenListMap[parentId] == null) { if (childrenListMap[parentId] == null) {
childrenListMap[parentId] = [] childrenListMap[parentId] = []
} }

View File

@ -74,14 +74,14 @@
<el-form-item> <el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button> <el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button> <el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
<el-button <!-- <el-button
type="primary" type="primary"
plain plain
@click="openForm('create')" @click="openForm('create')"
v-hasPermi="['crm:customer-contacts:create']" v-hasPermi="['crm:customer-contacts:create']"
> >
<Icon icon="ep:delete" class="mr-5px" /> 回收站 <Icon icon="ep:delete" class="mr-5px" /> 回收站
</el-button> </el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
</ContentWrap> </ContentWrap>

View File

@ -71,7 +71,7 @@ const formData = ref({
const formRules = reactive({ const formRules = reactive({
parentId: [{ required: true, message: '请选择上级分类', trigger: 'blur' }], parentId: [{ required: true, message: '请选择上级分类', trigger: 'blur' }],
name: [{ required: true, message: '分类名称不能为空', trigger: 'blur' }], name: [{ required: true, message: '分类名称不能为空', trigger: 'blur' }],
picUrl: [{ required: true, message: '分类图片不能为空', trigger: 'blur' }], //picUrl: [{ required: true, message: '', trigger: 'blur' }],
sort: [{ required: true, message: '分类排序不能为空', trigger: 'blur' }], sort: [{ required: true, message: '分类排序不能为空', trigger: 'blur' }],
status: [{ required: true, message: '开启状态不能为空', trigger: 'blur' }] status: [{ required: true, message: '开启状态不能为空', trigger: 'blur' }]
}) })

View File

@ -222,8 +222,8 @@
</el-form> </el-form>
<template #footer> <template #footer>
<el-button v-if="activeName !== 'one'" @click="upTab">上一步</el-button> <el-button v-if="activeName !== 'one'" @click="upTab">上一步</el-button>
<el-button type="primary" v-if="activeName !== 'four'" @click="downTab">下一步</el-button> <el-button type="primary" v-if="activeName !== 'three'" @click="downTab">下一步</el-button>
<el-button v-if="activeName == 'four'" @click="submitForm" type="primary" :disabled="formLoading"> </el-button> <el-button v-if="activeName == 'three'" @click="submitForm" type="primary" :disabled="formLoading"> </el-button>
<el-button @click="dialogVisible = false"> </el-button> <el-button @click="dialogVisible = false"> </el-button>
</template> </template>
</Dialog> </Dialog>
@ -469,7 +469,7 @@ const open = async (type: string, id?: number) => {
} }
getInfo(id) getInfo(id)
// //
// await getTree() getTree()
} }
defineExpose({ open }) // open defineExpose({ open }) // open

View File

@ -71,7 +71,6 @@
/> />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="所属门店" align="center" prop="shopName" />
<el-table-column label="商品名称" align="center" prop="storeName" /> <el-table-column label="商品名称" align="center" prop="storeName" />
<el-table-column label="商品价格" align="center" prop="price" /> <el-table-column label="商品价格" align="center" prop="price" />
<el-table-column label="销量" align="center" width="80" prop="sales" /> <el-table-column label="销量" align="center" width="80" prop="sales" />

File diff suppressed because one or more lines are too long

View File

@ -24,12 +24,26 @@ public class DemoFilter extends OncePerRequestFilter {
String method = request.getMethod(); String method = request.getMethod();
String path = request.getRequestURI(); String path = request.getRequestURI();
//app端不过滤 //app端不过滤
Boolean res = StrUtil.contains(path,"/app-api/"); // Boolean res = StrUtil.contains(path,"/app-api/");
Boolean res6 = StrUtil.contains(path,"/admin-api/cashier/");
//系统模块特殊处理 //系统模块特殊处理
Boolean res2 = StrUtil.contains(path,"/admin-api/order/store-order/update"); Boolean res2 = StrUtil.contains(path,"/admin-api/crm/flow/create");
Boolean res22 = StrUtil.contains(path,"/admin-api/crm/flow/update");
if(res2 || res22){
return false;
}
Boolean res6 = StrUtil.contains(path,"/admin-api/crm/");
if(res6 && !StrUtil.equalsAnyIgnoreCase(method, "DELETE") ) {
return true;
}
Boolean res66 = StrUtil.contains(path,"/admin-api/product/store-product/isFormatAttr");
if(res66) {
return true;
}
Boolean res3 = StrUtil.contains(path,"/admin-api/system/auth/logout"); Boolean res3 = StrUtil.contains(path,"/admin-api/system/auth/logout");
@ -37,7 +51,7 @@ public class DemoFilter extends OncePerRequestFilter {
Boolean res5 = StrUtil.contains(path,"/admin-api/system/captcha/get"); Boolean res5 = StrUtil.contains(path,"/admin-api/system/captcha/get");
return res || res6 || res2 || res3 || res4 || res5 || !StrUtil.equalsAnyIgnoreCase(method, "POST","PUT", "DELETE") // 写操作时不进行过滤率 return res3 || res4 || res5 || !StrUtil.equalsAnyIgnoreCase(method, "POST","PUT", "DELETE") // 写操作时不进行过滤率
|| WebFrameworkUtils.getLoginUserId(request) == null; // 非登录用户时不进行过滤 || WebFrameworkUtils.getLoginUserId(request) == null; // 非登录用户时不进行过滤
} }

View File

@ -22,7 +22,7 @@ public interface StoreProductAttrValueMapper extends BaseMapperX<StoreProductAtt
* @return * @return
*/ */
@Update("update yshop_store_product_attr_value set stock=stock-#{num}, sales=sales+#{num}" + @Update("update yshop_store_product_attr_value set stock=stock-#{num}, sales=sales+#{num}" +
" where product_id=#{productId} and `sku`=#{unique} and stock >= #{num}") " where product_id=#{productId} and `unique`=#{unique} and stock >= #{num}")
int decStockIncSales(@Param("num") Integer num, @Param("productId") Long productId, int decStockIncSales(@Param("num") Integer num, @Param("productId") Long productId,
@Param("unique") String unique); @Param("unique") String unique);
@ -34,7 +34,7 @@ public interface StoreProductAttrValueMapper extends BaseMapperX<StoreProductAtt
* @return * @return
*/ */
@Update("update yshop_store_product_attr_value set stock=stock+#{num}, sales=sales-#{num}" + @Update("update yshop_store_product_attr_value set stock=stock+#{num}, sales=sales-#{num}" +
" where product_id=#{productId} and `sku`=#{unique}") " where product_id=#{productId} and `unique`=#{unique}")
int incStockDecSales(@Param("num") Integer num,@Param("productId") Long productId, int incStockDecSales(@Param("num") Integer num,@Param("productId") Long productId,
@Param("unique") String unique); @Param("unique") String unique);

View File

@ -54,7 +54,7 @@ public class StoreProductDto
private String storeInfo; private String storeInfo;
/** 关键字 */ /** 关键字 */
@NotBlank(message = "关键字不能为空") //@NotBlank(message = "关键字不能为空")
private String keyword; private String keyword;
/** 商品条码(一维码) */ /** 商品条码(一维码) */

View File

@ -170,7 +170,7 @@ yshop:
pay: pay:
order-notify-url: http://yshop.natapp1.cc/admin-api/pay/notify/order # 支付渠道的【支付】回调地址 order-notify-url: http://yshop.natapp1.cc/admin-api/pay/notify/order # 支付渠道的【支付】回调地址
refund-notify-url: http://yshop.natapp1.cc/admin-api/pay/notify/refund # 支付渠道的【退款】回调地址 refund-notify-url: http://yshop.natapp1.cc/admin-api/pay/notify/refund # 支付渠道的【退款】回调地址
demo: false # 开启演示模式 demo: true # 开启演示模式
tencent-lbs-key: TVDBZ-TDILD-4ON4B-PFDZA-RNLKH-VVF6E # QQ 地图的密钥 https://lbs.qq.com/service/staticV2/staticGuide/staticDoc tencent-lbs-key: TVDBZ-TDILD-4ON4B-PFDZA-RNLKH-VVF6E # QQ 地图的密钥 https://lbs.qq.com/service/staticV2/staticGuide/staticDoc
file-path: /www/wwwroot/drink/file/ file-path: /www/wwwroot/drink/file/
h5: https://www.yixiang.co/h5 h5: https://www.yixiang.co/h5