From 918dda4851b3e6c44d6e816446b13a0172c28dde Mon Sep 17 00:00:00 2001 From: gazebo Date: Fri, 27 Sep 2019 09:59:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=97=A8=E5=BA=97=E9=85=8D?= =?UTF-8?q?=E9=80=81=E8=8C=83=E5=9B=B4=E6=97=B6=EF=BC=8C=E6=A3=80=E6=9F=A5?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=90=88=E6=B3=95=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/store.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index a48bdd0f0..0a63ad7ff 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -524,6 +524,20 @@ func checkCreateStore(store *model.Store) (err error) { return err } +func checkStoreDeliveryRange(deliveryRange string) (err error) { + if deliveryRange != "" { + points := jxutils.CoordinateStr2Points(deliveryRange) + for _, point := range points { + for _, coord := range point { + if coord == 0 || math.IsNaN(coord) { + return fmt.Errorf("坐标点数据非法:%s", deliveryRange) + } + } + } + } + return err +} + func UpdateStore(ctx *jxcontext.Context, storeID int, payload map[string]interface{}, userName string) (num int64, err error) { globals.SugarLogger.Debugf("UpdateStore storeID:%d, payload:%s", storeID, utils.Format4Output(payload, true)) if err = checkBankBranch(utils.Interface2String(payload["payeeBankBranchName"])); err != nil { @@ -537,6 +551,9 @@ func UpdateStore(ctx *jxcontext.Context, storeID int, payload map[string]interfa } valid := dao.StrictMakeMapByStructObject(payload, store, userName) + if err = checkStoreDeliveryRange(utils.Interface2String(valid["deliveryRange"])); err != nil { + return 0, err + } if globals.EnableWXAuth2 { if err = dao.ValidateRoles(db, utils.Interface2String(valid["marketManRole"]), utils.Interface2String(valid["operatorRole"]), utils.Interface2String(valid["operatorRole2"])); err != nil { return 0, err