Files
jx-callback/controllers/cms_store.go
苏尹岚 42a264f1f0 aa
2021-02-05 15:18:42 +08:00

1027 lines
50 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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"
"github.com/astaxie/beego"
)
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无效andor指的是vendorStoreConds里的条件间的关系这组条件与其它条件都是与的关系"
// @Param vendorStoreConds query string false "为厂商条件对象{vendorID: cond}注意vendorID是字符串形式cond-1没有关联0不限定1有关联缺省为0其它值表示vendorOrgCode"
// @Param courierStoreCond query string false "查询关联门店的条件如果此字段没有设置courierStoreConds无效andor指的是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 "门店IDpayload中的相应字段会被忽略"
// @Param vendorID formData int true "厂商IDpayload中的相应字段会被忽略"
// @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 "门店IDpayload中的相应字段会被忽略"
// @Param vendorID formData int true "快递厂商IDpayload中的相应字段会被忽略"
// @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 "门店IDpayload中的相应字段会被忽略"
// @Param vendorID formData int true "快递厂商IDpayload中的相应字段会被忽略"
// @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
})
}