package controllers import ( "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/business/jxstore/cms" "git.rosy.net.cn/jx-callback/business/jxstore/common" "git.rosy.net.cn/jx-callback/business/jxstore/misc" "git.rosy.net.cn/jx-callback/business/jxutils" "git.rosy.net.cn/jx-callback/business/jxutils/netprinter" "git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/globals/api" beego "github.com/astaxie/beego/adapter" ) type StoreController struct { beego.Controller } // @Title 得到京西门店信息 // @Description 得到京西门店信息,如下条件之间是与的关系 // @Param token header string false "认证token" // @Param keyword query string false "查询关键字(可以为空,为空表示不限制)" // @Param storeID query int false "门店ID" // @Param startStoreID query int false "起始门店ID" // @Param coordinateType query int false "返回坐标类型,0:火星坐标,1:百度,缺省0" // @Param storeIDs query string false "门店ID列表" // @Param name query string false "门店名称(不要求完全一致)" // @Param placeID query int false "所属地点ID" // @Param placeLevel query int false "所属地点级别" // @Param address query string false "门店地址" // @Param tel query string false "电话" // @Param statuss query string false "门店状态列表[-1,0,1],(-1:禁用;0:休息,关店;1:正常开店),缺省不限制" // @Param vendorStoreCond query string false "查询关联门店的条件(如果此字段没有设置,vendorStoreConds无效),and:与,or:或,指的是vendorStoreConds里的条件间的关系,这组条件与其它条件都是与的关系" // @Param vendorStoreConds query string false "为厂商条件对象{vendorID: cond},注意vendorID是字符串形式,cond,-1:没有关联,0:不限定,1:有关联,缺省为0,其它值表示vendorOrgCode" // @Param courierStoreCond query string false "查询关联门店的条件(如果此字段没有设置,courierStoreConds无效),and:与,or:或,指的是courierStoreConds里的条件间的关系,这组条件与其它条件都是与的关系" // @Param courierStoreConds query string false "为厂商条件对象{vendorID: cond},注意vendorID是字符串形式,cond,-1:没有关联,0:不限定,1:有关联,缺省为0" // @Param mapLongitude query string false "地图中心经度" // @Param mapLatitude query string false "地图中心纬度" // @Param mapRadius query int false "地图半径(单位为米)" // @Param orderTimeFrom query string false "订单创建起始时间" // @Param orderTimeTo query string false "订单创建结束时间" // @Param orderCountFrom query int false "订单量起始" // @Param orderCountTo query int false "订单量结束" // @Param marketManPhone query string false "市场负责人电话" // @Param briefLevel query int false "返回信息精简模式" // @Param storeLevels query string false "门店等级" // @Param brandID query int false "品牌ID" // @Param marketManPhones query string false "市场负责人电话们" // @Param earningType query int false "结算方式(1为报价,2为扣点)" // @Param offset query int false "门店列表起始序号(以0开始,缺省为0)" // @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStores [get,post] func (c *StoreController) GetStores() { c.callGetStores(func(params *tStoreGetStoresParams) (retVal interface{}, errCode string, err error) { timeList, err := jxutils.BatchStr2Time(params.OrderTimeFrom, params.OrderTimeTo) if err == nil { retVal, err = cms.GetStores(params.Ctx, params.Keyword, params.MapData, params.Offset, params.PageSize, timeList[0], timeList[1], params.OrderCountFrom, params.OrderCountTo) } return retVal, "", err }) } // @Title 远程查询厂商门店信息 // @Description 远程查询厂商门店信息,这个是实时调用API远程查询 // @Param token header string true "认证token" // @Param vendorStoreID query string true "门店ID" // @Param vendorID query int true "门店所属的厂商ID" // @Param vendorOrgCode query string false "厂商内组织代码" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetVendorStore [get] func (c *StoreController) GetVendorStore() { c.callGetVendorStore(func(params *tStoreGetVendorStoreParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.GetVendorStore(params.Ctx, params.VendorID, params.VendorOrgCode, params.VendorStoreID) return retVal, "", err }) } // @Title 修改门店信息 // @Description 修改门店信息 // @Param token header string true "认证token" // @Param storeID formData int true "京西门店编号,payload中的京西门店编号会被忽略" // @Param payload formData string true "json数据,store对象" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /UpdateStore [put] func (c *StoreController) UpdateStore() { c.callUpdateStore(func(params *tStoreUpdateStoreParams) (retVal interface{}, errCode string, err error) { payload := make(map[string]interface{}) if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil { retVal, err = cms.UpdateStore(params.Ctx, params.StoreID, payload, params.Ctx.GetUserName()) } return retVal, "", err }) } // @Title 删除京西门店 // @Description 删除京西门店 // @Param token header string true "认证token" // @Param storeID query int true "门店ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /DeleteStore [delete] func (c *StoreController) DeleteStore() { c.callDeleteStore(func(params *tStoreDeleteStoreParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.DeleteStore(params.Ctx, params.StoreID) return retVal, "", err }) } // @Title 启用所有临时休息门店 // @Description 启用所有临时休息门店 // @Param token header string true "认证token" // @Param isAsync formData bool true "是否异步操作" // @Param isContinueWhenError formData bool false "单个同步失败是否继续,缺省false" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /EnableHaveRestStores [put] func (c *StoreController) EnableHaveRestStores() { c.callEnableHaveRestStores(func(params *tStoreEnableHaveRestStoresParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.EnableHaveRestStores(params.Ctx, params.IsAsync, params.IsContinueWhenError) return retVal, "", err }) } // @Title 创建京西门店 // @Description 创建京西门店 // @Param token header string true "认证token" // @Param payload formData string true "json数据,store对象" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /CreateStore [post] func (c *StoreController) CreateStore() { c.callCreateStore(func(params *tStoreCreateStoreParams) (retVal interface{}, errCode string, err error) { store := &cms.StoreExt{} if err = utils.UnmarshalUseNumber([]byte(params.Payload), store); err == nil { retVal, err = cms.CreateStore(params.Ctx, store, params.Ctx.GetUserName()) } return retVal, "", err }) } // @Title 得到门店映射信息 // @Description 得到门店映射信息 // @Param token header string false "认证token" // @Param storeID query int true "门店ID" // @Param vendorID query int false "厂商ID(缺省为全部)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStoreVendorMaps [get] func (c *StoreController) GetStoreVendorMaps() { c.callGetStoreVendorMaps(func(params *tStoreGetStoreVendorMapsParams) (retVal interface{}, errCode string, err error) { if c.GetString("vendorID") == "" { params.VendorID = -1 } retVal, err = cms.GetStoreVendorMaps(params.Ctx, nil, params.StoreID, params.VendorID) return retVal, "", err }) } // @Title 修改门店映射信息 // @Description 修改门店映射信息 // @Param token header string true "认证token" // @Param storeID query int true "门店ID" // @Param vendorID query int true "厂商ID" // @Param payload formData string true "json数据,storeMap对象" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /UpdateStoreVendorMap [put] func (c *StoreController) UpdateStoreVendorMap() { c.callUpdateStoreVendorMap(func(params *tStoreUpdateStoreVendorMapParams) (retVal interface{}, errCode string, err error) { payload := make(map[string]interface{}) if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil { retVal, err = cms.UpdateStoreVendorMap(params.Ctx, nil, params.StoreID, params.VendorID, payload, params.Ctx.GetUserName()) } return retVal, "", err }) } // @Title 新增门店映射信息 // @Description 新增门店映射信息 // @Param token header string true "认证token" // @Param storeID formData int true "门店ID,payload中的相应字段会被忽略" // @Param vendorID formData int true "厂商ID,payload中的相应字段会被忽略" // @Param vendorOrgCode formData string false "厂商内组织代码" // @Param payload formData string true "json数据,storeMap对象({'vendorStoreID':'11732425','autoPickup':1,'deliveryCompetition':1, 'pricePercentage':100})" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /AddStoreVendorMap [post] func (c *StoreController) AddStoreVendorMap() { c.callAddStoreVendorMap(func(params *tStoreAddStoreVendorMapParams) (retVal interface{}, errCode string, err error) { storeMap := &model.StoreMap{} if err = utils.UnmarshalUseNumber([]byte(params.Payload), storeMap); err == nil { retVal, err = cms.AddStoreVendorMap(params.Ctx, nil, params.VendorID, params.VendorOrgCode, params.StoreID, storeMap) } return retVal, "", err }) } // @Title 删除门店映射信息 // @Description 删除门店映射信息 // @Param token header string true "认证token" // @Param storeID query int true "门店ID" // @Param vendorID query int true "厂商ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /DeleteStoreVendorMap [delete] func (c *StoreController) DeleteStoreVendorMap() { c.callDeleteStoreVendorMap(func(params *tStoreDeleteStoreVendorMapParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.DeleteStoreVendorMap(params.Ctx, nil, params.StoreID, params.VendorID, params.Ctx.GetUserName()) return retVal, "", err }) } // @Title 得到门店差评总数 // @Description 得到门店差评总数,此函数为兼容老系统,之后会被替换 // @Param token header string true "认证token" // @Param jxStoreId query int true "门店ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /TmpGetJxBadCommentsNo [get] func (c *StoreController) TmpGetJxBadCommentsNo() { c.callTmpGetJxBadCommentsNo(func(params *tStoreTmpGetJxBadCommentsNoParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.TmpGetJxBadCommentsNo(params.Ctx, params.JxStoreId) return retVal, "", err }) } // @Title 得到门店评价列表 // @Description 得到门店评价列表 // @Param token header string true "认证token" // @Param jxStoreId query int true "门店ID" // @Param type query int true "评论类型,0:差评,1:所有" // @Param page query int true "起始页,从1开始" // @Param size query int true "页大小(-1表示无限大)" // @Param fromTime query string false "创建起始时间" // @Param toTime query string false "创建结束时间" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /TmpGetJxBadCommentsByStoreId [get] func (c *StoreController) TmpGetJxBadCommentsByStoreId() { c.callTmpGetJxBadCommentsByStoreId(func(params *tStoreTmpGetJxBadCommentsByStoreIdParams) (retVal interface{}, errCode string, err error) { timeList, err2 := jxutils.BatchStr2Time(params.FromTime, params.ToTime) if err = err2; err == nil { pageSize := jxutils.FormalizePageSize(params.Size) offset := (params.Page - 1) * pageSize retVal, err = cms.TmpGetJxBadCommentsByStoreId(params.Ctx, "", []int{params.JxStoreId}, offset, pageSize, params.Type, timeList[0], timeList[1]) } return retVal, "", err }) } // @Title 得到门店评价列表(多店) // @Description 得到门店评价列表(多店) // @Param token header string true "认证token" // @Param type query int true "评论类型,0:差评,1:所有,2:已解决" // @Param keyword query string false "关键字" // @Param storeIDs query string false "门店I列表" // @Param fromTime query string false "创建起始时间" // @Param toTime query string false "创建结束时间" // @Param offset query int false "起始页,从1开始" // @Param pageSize query int false "页大小(-1表示无限大)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /TmpGetJxBadComments [get] func (c *StoreController) TmpGetJxBadComments() { c.callTmpGetJxBadComments(func(params *tStoreTmpGetJxBadCommentsParams) (retVal interface{}, errCode string, err error) { var storeIDs []int if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDs); err == nil { timeList, err2 := jxutils.BatchStr2Time(params.FromTime, params.ToTime) if err = err2; err == nil { retVal, err = cms.TmpGetJxBadCommentsByStoreId(params.Ctx, params.Keyword, storeIDs, params.Offset, params.PageSize, params.Type, timeList[0], timeList[1]) } } return retVal, "", err }) } // @Title 得到门店快递映射信息 // @Description 得到门店快递映射信息 // @Param token header string true "认证token" // @Param storeID query int true "门店ID" // @Param vendorID query int false "厂商ID(缺省为全部)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStoreCourierMaps [get] func (c *StoreController) GetStoreCourierMaps() { c.callGetStoreCourierMaps(func(params *tStoreGetStoreCourierMapsParams) (retVal interface{}, errCode string, err error) { if c.GetString("vendorID") == "" { params.VendorID = -1 } retVal, err = cms.GetStoreCourierMaps(params.Ctx, nil, params.StoreID, params.VendorID) return retVal, "", err }) } // @Title 修改门店快递映射信息 // @Description 修改门店快递映射信息 // @Param token header string true "认证token" // @Param storeID formData int true "门店ID,payload中的相应字段会被忽略" // @Param vendorID formData int true "快递厂商ID,payload中的相应字段会被忽略" // @Param payload formData string true "json数据,StoreCourierMap对象(当前只有status, vendorStoreId两项)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /UpdateStoreCourierMap [put] func (c *StoreController) UpdateStoreCourierMap() { c.callUpdateStoreCourierMap(func(params *tStoreUpdateStoreCourierMapParams) (retVal interface{}, errCode string, err error) { storeCourierMap := make(map[string]interface{}) if err = utils.UnmarshalUseNumber([]byte(params.Payload), &storeCourierMap); err == nil { retVal, err = cms.UpdateStoreCourierMap(params.Ctx, nil, params.StoreID, params.VendorID, storeCourierMap, params.Ctx.GetUserName()) } return retVal, "", err }) } // @Title 新增门店快递映射信息 // @Description 新增门店快递映射信息 // @Param token header string true "认证token" // @Param storeID formData int true "门店ID,payload中的相应字段会被忽略" // @Param vendorID formData int true "快递厂商ID,payload中的相应字段会被忽略" // @Param payload formData string true "json数据,StoreCourierMap对象(当前只有status, vendorStoreId两项)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /AddStoreCourierMap [post] func (c *StoreController) AddStoreCourierMap() { c.callAddStoreCourierMap(func(params *tStoreAddStoreCourierMapParams) (retVal interface{}, errCode string, err error) { storeCourierMap := &model.StoreCourierMap{} if err = utils.UnmarshalUseNumber([]byte(params.Payload), storeCourierMap); err == nil { retVal, err = cms.AddStoreCourierMap(params.Ctx, nil, params.StoreID, params.VendorID, storeCourierMap) } return retVal, "", err }) } // @Title 删除门店快递映射信息 // @Description 删除门店快递映射信息 // @Param token header string true "认证token" // @Param storeID query int true "门店ID" // @Param vendorID query int true "快递厂商ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /DeleteStoreCourierMap [delete] func (c *StoreController) DeleteStoreCourierMap() { c.callDeleteStoreCourierMap(func(params *tStoreDeleteStoreCourierMapParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.DeleteStoreCourierMap(params.Ctx, nil, params.StoreID, params.VendorID, params.Ctx.GetUserName()) return retVal, "", err }) } // @Title 自动创建或更新快递门店 // @Description 自动创建或更新快递门店 // @Param token header string true "认证token" // @Param storeID formData int false "门店ID" // @Param isForceUpdate formData bool false "是否强制更新" // @Param isAsync formData bool false "是否异步操作" // @Param isContinueWhenError formData bool false "单个同步失败是否继续,缺省false" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /UpdateOrCreateCourierStores [put] func (c *StoreController) UpdateOrCreateCourierStores() { c.callUpdateOrCreateCourierStores(func(params *tStoreUpdateOrCreateCourierStoresParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.UpdateOrCreateCourierStores(params.Ctx, params.StoreID, params.IsForceUpdate, params.IsAsync, params.IsContinueWhenError) return retVal, "", err }) } // @Title 导出门店健康度信息 // @Description 导出门店健康度信息 // @Param token header string true "认证token" // @Param vendorIDs query string false "平台ID列表" // @Param storeIDs query string false "门店ID列表" // @Param isAsync query bool false "是否异步操作" // @Param isContinueWhenError query bool false "单个同步失败是否继续,缺省false" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /ExportShopsHealthInfo [get] func (c *StoreController) ExportShopsHealthInfo() { c.callExportShopsHealthInfo(func(params *tStoreExportShopsHealthInfoParams) (retVal interface{}, errCode string, err error) { var vendorIDList, storeIDList []int if err = jxutils.Strings2Objs(params.VendorIDs, &vendorIDList, params.StoreIDs, &storeIDList); err == nil { retVal, err = cms.ExportShopsHealthInfo(params.Ctx, vendorIDList, storeIDList, params.IsAsync, params.IsContinueWhenError) } return retVal, "", err }) } // @Title 得到工商执照企业信息 // @Description 得到工商执照企业信息 // @Param token header string true "认证token" // @Param licenceCode query string true "营业执照号" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetCorporationInfo [get] func (c *StoreController) GetCorporationInfo() { c.callGetCorporationInfo(func(params *tStoreGetCorporationInfoParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.GetCorporationInfo(params.Ctx, params.LicenceCode) return retVal, "", err }) } // @Title 门店绑定打印 // @Description 门店绑定打印 // @Param token header string true "认证token" // @Param storeID formData int true "京西门店ID" // @Param data formData string true "原始数据" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /BindPrinter [post] func (c *StoreController) BindPrinter() { c.callBindPrinter(func(params *tStoreBindPrinterParams) (retVal interface{}, errCode string, err error) { retVal, err = netprinter.BindPrinter(params.Ctx, params.StoreID, params.Data) return retVal, "", err }) } // @Title 同步门店资质信息至平台(当前只支持京东) // @Description 同步门店资质信息至平台(当前只支持京东) // @Param token header string true "认证token" // @Param storeIDs formData string true "京西门店ID列表,必须非空值" // @Param vendorID formData int true "平台ID" // @Param isAsync formData bool true "是否异步操作" // @Param isContinueWhenError formData bool false "单个同步失败是否继续,缺省false" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /SyncStoresQualify [post] func (c *StoreController) SyncStoresQualify() { c.callSyncStoresQualify(func(params *tStoreSyncStoresQualifyParams) (retVal interface{}, errCode string, err error) { var storeIDs []int err = jxutils.Strings2Objs(params.StoreIDs, &storeIDs) if err == nil { retVal, err = cms.SyncStoresQualify(params.Ctx, storeIDs, params.VendorID, params.IsAsync, params.IsContinueWhenError) } return retVal, "", err }) } // @Title 门店评分 // @Description 门店评分 // @Param token header string true "认证token" // @Param storeIDs formData string false "京西门店ID列表" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /ScoreStore [post] func (c *StoreController) ScoreStore() { c.callScoreStore(func(params *tStoreScoreStoreParams) (retVal interface{}, errCode string, err error) { var storeIDList []int if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDList); err == nil { misc.ScoreStore(params.Ctx, storeIDList) } return retVal, "", err }) } // @Title 得到门店近期周平均分数数据 // @Description 得到门店近期周平均分数数据 // @Param token header string true "认证token" // @Param storeID query int true "京西门店ID" // @Param weekIndex query int true "周索引(起始索引为0, -1为所有周数据)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetWeeklyStoreScore [get] func (c *StoreController) GetWeeklyStoreScore() { c.callGetWeeklyStoreScore(func(params *tStoreGetWeeklyStoreScoreParams) (retVal interface{}, errCode string, err error) { retVal, err = misc.GetWeeklyStoreScore(params.StoreID, params.WeekIndex) return retVal, "", err }) } // @Title 得到门店总分排名 // @Description 得到门店总分排名 // @Param token header string true "认证token" // @Param storeIDs formData string false "京西门店ID列表" // @Param cityCode formData int false "城市编码" // @Param keyword formData string false "关键字" // @Param beginTime formData string true "开始日期" // @Param endTime formData string true "结束日期" // @Param isDesc formData bool true "是否降序" // @Param checkScoreLow formData int false "在某个分数范围-低" // @Param checkScoreHigh formData int false "在某个分数范围-高" // @Param offset formData int false "列表起始序号(以0开始,缺省为0)" // @Param pageSize formData int false "列表页大小(缺省为50,-1表示全部)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStoreTotalScoreList [post] func (c *StoreController) GetStoreTotalScoreList() { c.callGetStoreTotalScoreList(func(params *tStoreGetStoreTotalScoreListParams) (retVal interface{}, errCode string, err error) { timeList, err := jxutils.BatchStr2Time(params.BeginTime, params.EndTime) if err == nil { var storeIDList []int if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDList); err == nil { retVal, err = misc.GetStoreTotalScoreList(params.Ctx, storeIDList, params.CityCode, params.Keyword, timeList[0], timeList[1], params.IsDesc, params.CheckScoreLow, params.CheckScoreHigh, params.Offset, params.PageSize) } } return retVal, "", err }) } // @Title 得到门店触犯红线/黄线数据 // @Description 得到门店触犯红线/黄线数据 // @Param token header string true "认证token" // @Param storeIDs formData string false "京西门店ID列表" // @Param cityCode formData int false "城市编码" // @Param keyword formData string false "关键字" // @Param dateTime formData string true "统计日期" // @Param offset formData int false "列表起始序号(以0开始,缺省为0)" // @Param pageSize formData int false "列表页大小(缺省为50,-1表示全部)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStoreAlertList [post] func (c *StoreController) GetStoreAlertList() { c.callGetStoreAlertList(func(params *tStoreGetStoreAlertListParams) (retVal interface{}, errCode string, err error) { timeList, err := jxutils.BatchStr2Time(params.DateTime) if err == nil { var storeIDList []int if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDList); err == nil { retVal, err = misc.GetStoreAlertList(storeIDList, params.CityCode, params.Keyword, timeList[0], params.Offset, params.PageSize) } } return retVal, "", err }) } // @Title 同步快递平台门店信息并报警 // @Description 同步快递平台门店信息并报警 // @Param token header string true "认证token" // @Param storeIDs formData string false "京西门店ID列表,必须非空值" // @Param isAsync formData bool false "是否异步操作" // @Param isContinueWhenError formData bool false "单个同步失败是否继续,缺省false" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /SyncStoresCourierInfo [post] func (c *StoreController) SyncStoresCourierInfo() { c.callSyncStoresCourierInfo(func(params *tStoreSyncStoresCourierInfoParams) (retVal interface{}, errCode string, err error) { var storeIDs []int if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDs); err == nil { retVal, err = cms.SyncStoresCourierInfo(params.Ctx, storeIDs, params.IsAsync, params.IsContinueWhenError) } return retVal, "", err }) } // @Title 根据位置得到推荐门店列表 // @Description 根据位置得到推荐门店列表 // @Param token header string false "认证token" // @Param lng query float64 true "经度" // @Param lat query float64 true "纬度" // @Param needWalkDistance query bool false "是否需要返回步行距离(且以步行距离排序)" // @Param brandID query int false "品牌ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStoreListByLocation [get] func (c *StoreController) GetStoreListByLocation() { c.callGetStoreListByLocation(func(params *tStoreGetStoreListByLocationParams) (retVal interface{}, errCode string, err error) { retVal, err = common.GetStoreListByLocation(params.Ctx, params.Lng, params.Lat, 20000, params.NeedWalkDistance, false, params.BrandID) return retVal, "", err }) } // @Title 老格恢复拓店进度 // @Description 老格恢复拓店进度 // @Param token header string true "认证token" // @Param vendorOrgCode formData string false "厂商内组织代码" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /JdStoreInfoCoordinateRecover [post] func (c *StoreController) JdStoreInfoCoordinateRecover() { c.callJdStoreInfoCoordinateRecover(func(params *tStoreJdStoreInfoCoordinateRecoverParams) (retVal interface{}, errCode string, err error) { r := c.Ctx.Request files := r.MultipartForm.File["userfiles"] err = cms.JdStoreInfoCoordinateRecover(params.Ctx, params.VendorOrgCode, files) return retVal, "", err }) } // @Title 导出平台门店信息 // @Description 导出平台门店信息 // @Param token header string true "认证token" // @Param vendorIDs formData string true "平台ID列表" // @Param isAsync formData bool false "是否异步操作" // @Param isContinueWhenError formData bool false "单个同步失败是否继续,缺省false" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetVendorStoreInfo [post] func (c *StoreController) GetVendorStoreInfo() { var vendorIDList []int c.callGetVendorStoreInfo(func(params *tStoreGetVendorStoreInfoParams) (retVal interface{}, errCode string, err error) { if err = jxutils.Strings2Objs(params.VendorIDs, &vendorIDList); err == nil { retVal, err = cms.GetVendorStoreInfo(params.Ctx, vendorIDList, params.IsAsync, params.IsContinueWhenError) } return retVal, "", err }) } // @Title 查询门店价格评分 // @Description 查询门店价格评分 // @Param token header string true "认证token" // @Param storeIDs formData string false "门店列表" // @Param vendorIDs formData string false "厂商列表" // @Param snapDate formData string true "时间,默认前一天(格式2006-01-02" // @Param fromScore formData int false "分数范围开始 默认0" // @Param toScore formData int false "分数范围结束 默认100" // @Param sort formData int false "分数排序,-1降序,-升序 ,直降排序,-2降序,2升序,秒杀排序,-3降序,3升序" // @Param offset formData int false "门店列表起始序号(以0开始,缺省为0)" // @Param pageSize formData int false "门店列表页大小(缺省为50,-1表示全部)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStorePriceScore [post] func (c *StoreController) GetStorePriceScore() { var storeIDList, vendorIDList []int c.callGetStorePriceScore(func(params *tStoreGetStorePriceScoreParams) (retVal interface{}, errCode string, err error) { if jxutils.Strings2Objs(params.StoreIDs, &storeIDList, params.VendorIDs, &vendorIDList); err == nil { retVal, err = cms.GetStorePriceScore(params.Ctx, storeIDList, vendorIDList, params.FromScore, params.ToScore, params.Sort, params.SnapDate, params.Offset, params.PageSize) } return retVal, "", err }) } // @Title 生成门店价格分数表 // @Description 生成门店价格分数表 // @Param token header string true "认证token" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /CreateStorePriceScore [post] func (c *StoreController) CreateStorePriceScore() { c.callCreateStorePriceScore(func(params *tStoreCreateStorePriceScoreParams) (retVal interface{}, errCode string, err error) { err = cms.CreateStorePriceScore(params.Ctx) return retVal, "", err }) } // @Title 刷新store_map的京东等级 // @Description 刷新store_map的京东等级 // @Param token header string true "认证token" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /RefreshJdLevel [post] func (c *StoreController) RefreshJdLevel() { c.callRefreshJdLevel(func(params *tStoreRefreshJdLevelParams) (retVal interface{}, errCode string, err error) { err = cms.RefreshJdLevel(params.Ctx) return retVal, "", err }) } // @Title 同步指定京东门店 // @Description 同步京东门店 // @Param token header string true "认证token" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /SyncJdStore [post] func (c *StoreController) SyncJdStore() { c.callSyncJdStore(func(params *tStoreSyncJdStoreParams) (retVal interface{}, errCode string, err error) { err = cms.UpdateJdStoreNameAll(params.Ctx) return retVal, "", err }) } // @Title 清空打印机打印队列 // @Description 清空打印机打印队列 // @Param token header string true "认证token" // @Param storeIDs formData string true "门店列表" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /DeletePrinterSeq [post] func (c *StoreController) DeletePrinterSeq() { var storeIDList []int c.callDeletePrinterSeq(func(params *tStoreDeletePrinterSeqParams) (retVal interface{}, errCode string, err error) { if jxutils.Strings2Objs(params.StoreIDs, &storeIDList); err == nil { err = cms.DeletePrinterSeq(params.Ctx, storeIDList) } return retVal, "", err }) } // @Title 得到门店类别 // @Description 得到门店类别 // @Param token header string true "认证token" // @Param parentID query int false "父ID" // @Param level query int false "分类等级" // @Param storeID query int true "门店ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStoreCategoryMap [get] func (c *StoreController) GetStoreCategoryMap() { c.callGetStoreCategoryMap(func(params *tStoreGetStoreCategoryMapParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.GetStoreCategoryMap(params.Ctx, params.ParentID, params.Level, params.StoreID) return retVal, "", err }) } // @Title 新增门店类别 // @Description 新增门店类别 // @Param token header string true "认证token" // @Param storeID formData int true "门店ID" // @Param categroyID formData int false "京西分类id" // @Param level formData int true "分类级别" // @Param parentID formData int true "分类父ID" // @Param storeCategroyName formData string true "类别name" // @Param storeCategroySeq formData int true "类别序号" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /AddStoreCategoryMap [post] func (c *StoreController) AddStoreCategoryMap() { c.callAddStoreCategoryMap(func(params *tStoreAddStoreCategoryMapParams) (retVal interface{}, errCode string, err error) { storeCategoryMap := &model.StoreCategoryMap{ StoreID: params.StoreID, CategoryID: params.CategroyID, StoreCategoryName: params.StoreCategroyName, StoreCategorySeq: params.StoreCategroySeq, Level: params.Level, ParentID: params.ParentID, } retVal, err = cms.AddStoreCategoryMap(params.Ctx, storeCategoryMap) return retVal, "", err }) } // @Title 修改门店类别 // @Description 修改门店类别 // @Param token header string true "认证token" // @Param ID formData int true "记录ID" // @Param categoryID formData int false "京西分类id" // @Param storeCategroyName formData string false "类别name" // @Param level formData int true "分类级别" // @Param parentID formData int true "分类父ID" // @Param isDelete formData bool false "是否是删除操作,默认false" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /UpdateStoreCategoryMap [put] func (c *StoreController) UpdateStoreCategoryMap() { c.callUpdateStoreCategoryMap(func(params *tStoreUpdateStoreCategoryMapParams) (retVal interface{}, errCode string, err error) { storeCategoryMap := &model.StoreCategoryMap{ CategoryID: params.CategoryID, StoreCategoryName: params.StoreCategroyName, Level: params.Level, ParentID: params.ParentID, } retVal, err = cms.UpdateStoreCategoryMap(params.Ctx, params.ID, storeCategoryMap, params.IsDelete) return retVal, "", err }) } // @Title 门店类别重排序 // @Description 门店类别重排序 // @Param token header string true "认证token" // @Param categoryID formData int true "父ID" // @Param storeID formData int true "门店ID" // @Param categoryIDs formData string true "同一父类别下的所有子类别ID列表([1,2,3,4])" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /ReorderStoreCategories [put] func (c *SkuController) ReorderStoreCategories() { c.callReorderStoreCategories(func(params *tSkuReorderStoreCategoriesParams) (retVal interface{}, errCode string, err error) { var idList []int if err = utils.UnmarshalUseNumber([]byte(params.CategoryIDs), &idList); err == nil { err = cms.ReorderStoreCategories(params.Ctx, params.CategoryID, params.StoreID, idList) } return retVal, "", err }) } // @Title 复制门店类别 // @Description 复制门店类别 // @Param token header string true "认证token" // @Param fromStoreID formData int true "源门店ID" // @Param toStoreIDs formData string true "目标门店的IDs" // @Param categoryIDs formData string false "原门店的分类IDs,不传代表整个复制" // @Param isAsync formData bool false "是否异步操作" // @Param isContinueWhenError formData bool false "单个同步失败是否继续,缺省false" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /CopyStoreCategories [put] func (c *SkuController) CopyStoreCategories() { var toStoreIDs, categoryIDs []int c.callCopyStoreCategories(func(params *tSkuCopyStoreCategoriesParams) (retVal interface{}, errCode string, err error) { if jxutils.Strings2Objs(params.ToStoreIDs, &toStoreIDs, params.CategoryIDs, &categoryIDs); err == nil { retVal, err = cms.CopyStoreCategories(params.Ctx, params.FromStoreID, toStoreIDs, categoryIDs, params.IsAsync, params.IsContinueWhenError) } return retVal, "", err }) } // @Title 修改门店专属调价包 // @Description 修改门店专属调价包 // @Param token header string true "认证token" // @Param storeID formData int true "门店ID" // @Param vendorID formData int true "平台ID" // @Param pricePack formData string true "门店调价包" // @Param value formData string false "调价包json串" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /UpdateStorePricePack [put] func (c *StoreController) UpdateStorePricePack() { c.callUpdateStorePricePack(func(params *tStoreUpdateStorePricePackParams) (retVal interface{}, errCode string, err error) { err = cms.UpdateStorePricePack(params.Ctx, params.StoreID, params.VendorID, params.PricePack, params.Value) return retVal, "", err }) } // @Title 根据门店获取距离最近的货源店铺 // @Description 修根据门店获取距离最近的货源店铺 // @Param token header string true "认证token" // @Param storeID query int true "门店ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetNearSupplyGoodsStoreByStoreID [get] func (c *StoreController) GetNearSupplyGoodsStoreByStoreID() { c.callGetNearSupplyGoodsStoreByStoreID(func(params *tStoreGetNearSupplyGoodsStoreByStoreIDParams) (retVal interface{}, errCode string, err error) { retVal, err = common.GetNearSupplyGoodsStoreByStoreID(params.Ctx, params.StoreID) return retVal, "", err }) } // @Title 获取京东门店手动划的配送范围面积 // @Description 获取京东门店手动划的配送范围面积 // @Param token header string true "认证token" // @Param storeIDs query string true "门店IDs" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetJdDeliveryArea [get] func (c *StoreController) GetJdDeliveryArea() { var storeIDs []int c.callGetJdDeliveryArea(func(params *tStoreGetJdDeliveryAreaParams) (retVal interface{}, errCode string, err error) { if jxutils.Strings2Objs(params.StoreIDs, &storeIDs); err == nil { err = cms.GetJdDeliveryArea(params.Ctx, storeIDs) } return retVal, "", err }) } // @Title 修改门店对应Cid(个推推送uniapp消息用) // @Description 修改门店对应Cid(个推推送uniapp消息用) // @Param token header string true "认证token" // @Param storeID formData int true "门店ID" // @Param clientID formData string true "cID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /UpdateStorePushClient [post] func (c *StoreController) UpdateStorePushClient() { c.callUpdateStorePushClient(func(params *tStoreUpdateStorePushClientParams) (retVal interface{}, errCode string, err error) { err = cms.UpdateStorePushClient(params.Ctx, params.StoreID, params.ClientID) return retVal, "", err }) } // @Title 用户申请门店审核 // @Description 用户申请门店审核 // @Param token header string true "认证token" // @Param payload formData string true "json数据,store对象" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /CreateStoreAudit [post] func (c *StoreController) CreateStoreAudit() { c.callCreateStoreAudit(func(params *tStoreCreateStoreAuditParams) (retVal interface{}, errCode string, err error) { store := &model.StoreAudit{} if err = utils.UnmarshalUseNumber([]byte(params.Payload), store); err == nil { err = cms.CreateStoreAudit(params.Ctx, store) } return retVal, "", err }) } // @Title 获取用户申请门店审核 // @Description 获取用户申请门店审核 // @Param token header string true "认证token" // @Param applyTimeStart query string false "申请开始时间" // @Param applyTimeEnd query string false "申请结束时间" // @Param auditTimeStart query string false "审核开始时间" // @Param auditTimeEnd query string false "审核结束时间" // @Param name query string false "审核人" // @Param statuss query string false "审核状态" // @Param keyword query string false "关键字" // @Param offset query int false "门店列表起始序号(以0开始,缺省为0)" // @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStoreAudit [get] func (c *StoreController) GetStoreAudit() { c.callGetStoreAudit(func(params *tStoreGetStoreAuditParams) (retVal interface{}, errCode string, err error) { var ( statuss []int ) if err = jxutils.Strings2Objs(params.Statuss, &statuss); err != nil { return retVal, "", err } retVal, err = cms.GetStoreAudit(params.Ctx, statuss, params.Keyword, params.ApplyTimeStart, params.ApplyTimeEnd, params.AuditTimeStart, params.AuditTimeEnd, params.PageSize, params.Offset) return retVal, "", err }) } // @Title 门店审核 // @Description 门店审核 // @Param token header string true "认证token" // @Param payload formData string true "json数据,storeaudit对象" // @Param status formData int false "审核标志,1通过,-1 不通过" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /StoreAudit [post] func (c *StoreController) StoreAudit() { c.callStoreAudit(func(params *tStoreStoreAuditParams) (retVal interface{}, errCode string, err error) { var stores []*model.StoreAudit if err = utils.UnmarshalUseNumber([]byte(params.Payload), &stores); err == nil { retVal, err = cms.StoreAudit(params.Ctx, stores, params.Status) } return retVal, "", err }) } // @Title 比较美团配送门店信息 // @Description 比较美团配送门店信息 // @Param token header string true "认证token" // @Param storeIDs formData string true "门店ids" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetDiffJxStoreAndMTWMStoreInfo [post] func (c *StoreController) GetDiffJxStoreAndMTWMStoreInfo() { c.callGetDiffJxStoreAndMTWMStoreInfo(func(params *tStoreGetDiffJxStoreAndMTWMStoreInfoParams) (retVal interface{}, errCode string, err error) { var storeIDs []int if err = utils.UnmarshalUseNumber([]byte(params.StoreIDs), &storeIDs); err == nil { err = cms.GetDiffJxStoreAndMTWMStoreInfo(params.Ctx, storeIDs) } return retVal, "", err }) } // @Title 查询京东到家app上门店信息 // @Description 查询京东到家app上门店信息 // @Param token header string true "认证token" // @Param vendorStoreID query string true "门店id" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetJddjStoreInfo [get] func (c *StoreController) GetJddjStoreInfo() { c.callGetJddjStoreInfo(func(params *tStoreGetJddjStoreInfoParams) (retVal interface{}, errCode string, err error) { api.JdAPI.SetCookieWithStr(` shshshfpa=13b38d4a-8ba0-df12-0012-82d9a37fb835-1573795914; shshshfpb=abYp8Dq5JobRtp2pkZa7MbA%3D%3D; cart_uuid=1bd562b37ef02371; track=46099cdb-39fb-abe6-579e-ea9536a8cf9c; deviceid_pdj_jd=H5_DEV_92DD6F05-B71A-43D7-9790-529335C43AAC; mba_muid=1605755815875269445822; TrackerID=E6aNCj4mNlBVkq6eyFfWLvkbWl9DhdG-pRGVaQPbvt2ewCa2n0QM-p0mViOLv_Uem9pAWgbNZEeaJuaz4gARAW9rTj8PJK-3hmcbl9N9h1qg-DMYXvdwc3Iau-AMlWin29CojqE8YnUPMtlJUf2gnA; pt_token=y2wjxzef; pwdt_id=jd_5e10f2d70fb4c; h5_coords_obj=""; o2o_m_h5_sid=5cb8b4db-feaa-4b25-aa96-df96cf9dba6d; PDJ_H5_JDPIN=jd_5e10f2d70fb4c; PDJ_H5_MOBILE=181****0913; PDJ_H5_PIN=JD_222ea79f49b3211; navigation=[%22shop_jxcs2020%22]; shshshfp=34eda22ad0af63b76392daccd2d03f2e; cid=NWtRMjE2NndZMzc4N2hWNzMyOHFBNDcwMXdTMjEwMm9BMjE4M3JPNjkwNHJQODk2; 3AB9D23F7A4B3C9B=AK36FFYF5J6WMPRH7YTXMEX4CATHR6NAA3IQEESU2I33FEJRQ3DRLU4SZJYD2XGFLCFW43DHYP5HQKOMR4EFQSLKLA; __jdu=1591327001141529223150; __jdv=27966078|direct|-|none|-|1606900892557; pt_key=app_openAAJfzzr6ADCQcdEYCKb4BH4DNh-9sVcgVB7nYveTS-J-x3tuin7otTCG7qTRTasxQdi-pr8mkFU; pt_pin=jd_5e10f2d70fb4c; sid=7fc3a18bc45c5766395cd2a8ad1c6daw; is_sz_old_version=false; language=zh_CN; TrackID=1a_Q7xLAd79K-ifyBFeTkWcSF5DEgCm9ISEjFoCF1VhbmI0XLzk-3Np5Wa0O0f0W2UZCX327iWisSzKkCasW_kqc4MqKSXDbOxk3w4AByhjM; pinId=qA40zQJfoxUJ0BznFrVelbV9-x-f3wj7; pin=jd_5e10f2d70fb4c; unick=jd_181600jgy; ceshi3.com=201; _tp=tPAwCz7dZ2wG9FcrXkvXEPcH%2FgU%2BK8r%2FxTPrJfx1wo8%3D; _pst=jd_5e10f2d70fb4c; b-sec=2GBADPFJ55VHNAQ2DUPKR7Y2CEX6NF5ABOAAZCYCWLTBU4NIRBCM7FKZVF35XOCEUIAEOLVWWE3OPD6NRWBX675VTE; thor=E6F66DF4AD3A159C1AE9872C7BB0CF4D5E2B8B9C52714A91A28E40CDCDB5FE53C00D4CD2A91B92947D52C5EE00FBE8D652EBD6251926555789988488332962E56D7343A6B07A071F9FF37C24CE28506474AD1E996F78691C9194C9B3171F9255349E4A94AE37D23F6A1BBE49880177B7E3D701F06FAEC88026BA9E09D25E789B59226B670D64ECA829E356891A1FB2E2D0036899FE49F651BBE4F7BCCE857385; __jda=191429163.1591327001141529223150.1591327001.1607907141.1607938587.81; __jdc=191429163; __jdb=191429163.4.1591327001141529223150|81.1607938587; _base_=YKH2KDFHMOZBLCUV7NSRBWQUJPBI7JIMU5R3EFJ5UDHJ5LCU7R2NILKK5UJ6GLA2RGYT464UKXAI5KK7PNC5B5UHJ2HVQ4ENFP57OC2NCIWTST4KDNCWZES6EV2TD5XDTCNE6YVKRXISVWNQHZDBO6QEKYXMXGPYGVEOCQCSG4SOQWCP5WPWO6EFS7HEHMRWVKBRVHB33TFD4AUHV3TOJD7MGBX53BNNP2E6MSSOORYGL5H2GYFRURR5ACFJ54GH7PTHFL22YL3C6ODFYFTWGV5UAWCX5C6J372TDCL6LDNEERERTGC3XZYHUWG3GYQCRBMGP7O2Q2MPVVQAQIWW3S2YBGSPJZVO3XPNMOJI6RFTJD5NXZUZMBDK4FVEVR2D `) retVal, err = api.JdAPI.GetJdStoreInfo(params.VendorStoreID) return retVal, "", err }) } // @Title 查询品牌 // @Description 查询品牌 // @Param token header string false "认证token" // @Param brandID query int false "品牌ID" // @Param name query string false "品牌名" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetBrands [get] func (c *StoreController) GetBrands() { c.callGetBrands(func(params *tStoreGetBrandsParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.GetBrands(params.Ctx, params.Name, params.BrandID) return retVal, "", err }) } // @Title 新增品牌 // @Description 新增品牌 // @Param token header string true "认证token" // @Param payload formData string true "brand payload" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /AddBrand [post] func (c *StoreController) AddBrand() { c.callAddBrand(func(params *tStoreAddBrandParams) (retVal interface{}, errCode string, err error) { var brand = &model.Brand{} if err = utils.UnmarshalUseNumber([]byte(params.Payload), brand); err == nil { err = cms.AddBrand(params.Ctx, brand) } return retVal, "", err }) } // @Title 修改品牌 // @Description 修改品牌 // @Param token header string true "认证token" // @Param payload formData string true "brand payload" // @Param isDel formData bool false "是否是删除" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /UpdateBrand [post] func (c *StoreController) UpdateBrand() { c.callUpdateBrand(func(params *tStoreUpdateBrandParams) (retVal interface{}, errCode string, err error) { payload := make(map[string]interface{}) if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil { err = cms.UpdateBrand(params.Ctx, payload, params.IsDel) } return retVal, "", err }) } // @Title 修改门店分类为京西分类 // @Description 修改门店分类为京西分类 // @Param token header string true "认证token" // @Param storeID formData int true "门店ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /InsertStoreCategories [post] func (c *StoreController) InsertStoreCategories() { c.callInsertStoreCategories(func(params *tStoreInsertStoreCategoriesParams) (retVal interface{}, errCode string, err error) { err = cms.InsertStoreCategories(params.Ctx, nil, params.StoreID) return retVal, "", err }) } // @Title 创建平台门店 // @Description 创建平台门店 // @Param token header string true "认证token" // @Param storeID formData int true "门店ID" // @Param vendorID formData int true "平台ID" // @Param payload formData string true "json数据,store对象" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /CreateVendorStore [post] func (c *StoreController) CreateVendorStore() { c.callCreateVendorStore(func(params *tStoreCreateVendorStoreParams) (retVal interface{}, errCode string, err error) { payload := make(map[string]interface{}) if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil { err = cms.CreateVendorStore(params.Ctx, params.StoreID, params.VendorID, payload) } return retVal, "", err }) } // @Title 查询品牌店铺 // @Description 查询品牌店铺 // @Param token header string false "认证token" // @Param name query string true "品牌名" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetBrandStore [get] func (c *StoreController) GetBrandStore() { c.callGetBrandStore(func(params *tStoreGetBrandStoreParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.GetBrandStore(params.Ctx, params.Name) return retVal, "", err }) } // @Title 商家确认参与活动 // @Description 商家确认参与活动 // @Param token header string false "认证token" // @Param status formData int true "确认或取消,确认1,取消-1" // @Param msgStatusID formData int true "消息状态ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /StoreConfirmAct [post] func (c *StoreController) StoreConfirmAct() { c.callStoreConfirmAct(func(params *tStoreStoreConfirmActParams) (retVal interface{}, errCode string, err error) { err = cms.StoreConfirmAct(params.Ctx, params.Status, params.MsgStatusID) return retVal, "", err }) } // @Title 查询门店账户余额 // @Description 查询门店账户余额 // @Param token header string true "认证token" // @Param storeID formData int true "门店ID" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetStoreAcctBalance [get] func (c *StoreController) GetStoreAcctBalance() { c.callGetStoreAcctBalance(func(params *tStoreGetStoreAcctBalanceParams) (retVal interface{}, errCode string, err error) { retVal, err = cms.GetStoreAcctBalance(params.Ctx, params.StoreID) return retVal, "", err }) }