一.需求分析
- 规格参数删除时客户端向服务端传递ids参数,包含要删除规格的id,使用逗号分割
- 规格参数删除为数据库删除语句
- 服务端提供多条删除的函数
二.代码实现
- 在/item/param/TbItemParamDao.go中添加函数,实现多条删除
//多条删除func delByIdsDao(ids []int) int{ sql:="delete from tb_item_param where id in (" for i:=0;i<len(ids);i++{ sql+=strconv.Itoa(ids[i]) if i <len(ids)-1{ sql+="," } } sql+=")" count,err:=commons.Dml(sql) if err!=nil{ fmt.Println(err) return -1 } return int(count)}
- 在/item/param/TbItemParamService.go中添加业务
//删除规格参数func delByIdsService(ids string) (e commons.EgoResult){ idStr:=strings.Split(ids,",") idInt:=make([]int,0) for _,n:=range idStr{ id,_:=strconv.Atoi(n) idInt= append(idInt,id) } count:=delByIdsDao(idInt) if count>0{ e.Status=200 } return}
- 在/item/param/TbItemParamController.go中添加控制器函数
//删除规格参数func delByIdsController(w http.ResponseWriter,r *http.Request){ er:=delByIdsService(r.FormValue("ids")) b,_:=json.Marshal(er) w.Header().Set(commons.HEADER_CONTENT_TYPE,commons.JSON_HEADER) w.Write(b)}
func ParamHandler(){ commons.Router.HandleFunc("/item/param/show",showParamController) commons.Router.HandleFunc("/item/param/delete",delByIdsController)//删除规格参数}