File tree Expand file tree Collapse file tree 6 files changed +204
-68
lines changed
api/mall/product/management
views/mall/product/management Expand file tree Collapse file tree 6 files changed +204
-68
lines changed Original file line number Diff line number Diff line change @@ -5,6 +5,10 @@ import type { SpuType } from './type/spuType'
5
5
export const getSpuList = ( params : any ) => {
6
6
return request . get ( { url : '/product/spu/page' , params } )
7
7
}
8
+ // 获得spu列表tabsCount
9
+ export const getTabsCount = ( ) => {
10
+ return request . get ( { url : '/product/spu/tabsCount' } )
11
+ }
8
12
// 创建商品spu
9
13
export const createSpu = ( data : SpuType ) => {
10
14
return request . post ( { url : '/product/spu/create' , data } )
@@ -13,7 +17,15 @@ export const createSpu = (data: SpuType) => {
13
17
export const updateSpu = ( data : SpuType ) => {
14
18
return request . put ( { url : '/product/spu/update' , data } )
15
19
}
20
+ // 更新商品spu status
21
+ export const updateStatus = ( data : { id : number ; status : number } ) => {
22
+ return request . put ( { url : '/product/spu/updateStatus' , data } )
23
+ }
16
24
// 获得商品spu
17
25
export const getSpu = ( id : number ) => {
18
26
return request . get ( { url : `/product/spu/get-detail?id=${ id } ` } )
19
27
}
28
+ // 删除商品Spu
29
+ export const deleteSpu = ( id : number ) => {
30
+ return request . delete ( { url : `/product/spu/delete?id=${ id } ` } )
31
+ }
Original file line number Diff line number Diff line change @@ -220,3 +220,20 @@ export const PayRefundStatusEnum = {
220
220
name : '退款关闭'
221
221
}
222
222
}
223
+ /**
224
+ * 商品SPU枚举类
225
+ */
226
+ export const ProductSpuStatusEnum = {
227
+ RECYCLE : {
228
+ status : - 1 ,
229
+ name : '回收站'
230
+ } ,
231
+ DISABLE : {
232
+ status : 0 ,
233
+ name : '下架'
234
+ } ,
235
+ ENABLE : {
236
+ status : 1 ,
237
+ name : '上架'
238
+ }
239
+ }
Original file line number Diff line number Diff line change @@ -144,7 +144,7 @@ const getDetail = async () => {
144
144
const submitForm = async () => {
145
145
// 提交请求
146
146
formLoading .value = true
147
- const newSkus = [ ... formData .value .skus ] // 复制一份skus保存失败时使用
147
+ const newSkus = JSON . parse ( JSON . stringify ( formData .value .skus )) // 深拷贝一份skus保存失败时使用
148
148
// TODO 三个表单逐一校验,如果有一个表单校验不通过则切换到对应表单,如果有两个及以上的情况则切换到最前面的一个并弹出提示消息
149
149
// 校验各表单
150
150
try {
@@ -184,9 +184,12 @@ const submitForm = async () => {
184
184
await managementApi .updateSpu (data )
185
185
message .success (t (' common.updateSuccess' ))
186
186
}
187
+ close ()
187
188
} catch (e ) {
188
- console .log (e )
189
- console .log (newSkus )
189
+ // 如果是后端校验失败,恢复skus数据
190
+ if (typeof e === ' string' ) {
191
+ formData .value .skus = newSkus
192
+ }
190
193
} finally {
191
194
formLoading .value = false
192
195
}
Original file line number Diff line number Diff line change @@ -117,6 +117,7 @@ watch(
117
117
(data ) => {
118
118
if (! data ) return
119
119
copyValueToTarget (formData .value , data )
120
+ // TODO 如果先修改其他设置的值,再改变商品详情或是商品信息会重置其他设置页面中的相关值 下一个版本修复
120
121
checkboxGroup .value = []
121
122
formData .value .recommendHot ? checkboxGroup .value .push (' recommendHot' ) : ' '
122
123
formData .value .recommendBenefit ? checkboxGroup .value .push (' recommendBenefit' ) : ' '
Original file line number Diff line number Diff line change @@ -206,9 +206,6 @@ const generateTableData = (data: any[]) => {
206
206
}
207
207
const buildList = build (propertiesItemList )
208
208
// 如果构建后的组合数跟sku数量一样的话则不用处理,添加新属性没有属性值也不做处理 (解决编辑表单时或查看详情时数据回显问题)
209
- console .log (
210
- buildList .length === formData .value .skus .length || data .some ((item ) => item .values .length === 0 )
211
- )
212
209
if (
213
210
buildList .length === formData .value .skus .length ||
214
211
data .some ((item ) => item .values .length === 0 )
You can’t perform that action at this time.
0 commit comments