Merge branch 'sxy' into dev
This commit is contained in:
commit
cba59941cb
@ -276,7 +276,17 @@ func TxCreateBundleLang(tx *gorm.DB, req *model.BundleProfileLang) (err error) {
|
|||||||
func TxUpdateBundle(tx *gorm.DB, uuid string, columns map[string]interface{}) (err error) {
|
func TxUpdateBundle(tx *gorm.DB, uuid string, columns map[string]interface{}) (err error) {
|
||||||
err = tx.Model(&model.BundleProfile{}).Where("uuid =?", uuid).Updates(columns).Error
|
err = tx.Model(&model.BundleProfile{}).Where("uuid =?", uuid).Updates(columns).Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return commonErr.ReturnError(err, msg.ErrorUpdateBundleInfo, "更新套餐信息失败: ")
|
return commonErr.ReturnError(err, msg.ErrorUpdateBundleInfo, "更新套餐信息失败")
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
func TxUpdateBundles(tx *gorm.DB, uuids []string, columns map[string]interface{}) (err error) {
|
||||||
|
if len(uuids) == 0 {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
err = tx.Model(&model.BundleProfile{}).Where("uuid IN (?)", uuids).Updates(columns).Error
|
||||||
|
if err != nil {
|
||||||
|
return commonErr.ReturnError(err, msg.ErrorUpdateBundleInfo, "更新套餐信息失败")
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -87,21 +87,20 @@ func SaveBundle(req *bundle.BundleProfile) (res *bundle.SaveResponse, err error)
|
|||||||
if req.Uuid == "" && req.Language != msg.ZH_CN {
|
if req.Uuid == "" && req.Language != msg.ZH_CN {
|
||||||
return res, errors.New("请先创建中文版本套餐")
|
return res, errors.New("请先创建中文版本套餐")
|
||||||
}
|
}
|
||||||
var existValueService = make(map[string]string)
|
// var existValueService = make(map[string]string)
|
||||||
if req.Uuid != "" {
|
// if req.Uuid != "" {
|
||||||
valueService, existErr := dao.GetValueAddServiceUuidsByBundleUuid(req.Uuid)
|
// valueService, existErr := dao.GetValueAddServiceUuidsByBundleUuid(req.Uuid)
|
||||||
if existErr != nil {
|
// if existErr != nil {
|
||||||
return res, errors.New("查询增值服务失败")
|
// return res, errors.New("查询增值服务失败")
|
||||||
}
|
// }
|
||||||
if valueService != nil && len(valueService) > 0 {
|
// if valueService != nil && len(valueService) > 0 {
|
||||||
for _, v := range valueService {
|
// for _, v := range valueService {
|
||||||
existValueService[v] = v
|
// existValueService[v] = v
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
var cancelValueAddService = make(map[string]string)
|
|
||||||
selectService := make([]*model.BundleToValueAddService, 0)
|
selectService := make([]*model.BundleToValueAddService, 0)
|
||||||
var selectValueAddServiceCount = make(map[int]struct{})
|
var selectValueAddServiceCount = make(map[int]struct{}) //增值服务类型数量
|
||||||
if req.Language == msg.ZH_CN && req.SelectValueAddService != nil && len(req.SelectValueAddService) > 0 {
|
if req.Language == msg.ZH_CN && req.SelectValueAddService != nil && len(req.SelectValueAddService) > 0 {
|
||||||
for _, v := range req.SelectValueAddService {
|
for _, v := range req.SelectValueAddService {
|
||||||
detail, checkErr := dao.ValueAddServiceDetailByUuidAndLanguage(v.ValueAddUuid, req.Language)
|
detail, checkErr := dao.ValueAddServiceDetailByUuidAndLanguage(v.ValueAddUuid, req.Language)
|
||||||
@ -112,23 +111,6 @@ func SaveBundle(req *bundle.BundleProfile) (res *bundle.SaveResponse, err error)
|
|||||||
return res, errors.New("查询增值服务失败")
|
return res, errors.New("查询增值服务失败")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if detail.PriceType != req.PriceType {
|
|
||||||
if req.Uuid == "" {
|
|
||||||
//中文套餐创建时,币种不一致直接返回错误
|
|
||||||
return res, errors.New("所选增值服务币种与套餐币种不一致")
|
|
||||||
} else {
|
|
||||||
//更新时,判断是否已存在,存在则取消关联
|
|
||||||
_, ok := existValueService[v.ValueAddUuid]
|
|
||||||
if ok {
|
|
||||||
cancelValueAddService[v.ValueAddUuid] = detail.ServiceName
|
|
||||||
continue
|
|
||||||
} else {
|
|
||||||
//币种不一致,新加币种时返回错误
|
|
||||||
return res, errors.New("所选增值服务币种与套餐币种不一致")
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if _, exists := selectValueAddServiceCount[int(detail.ServiceType)]; exists {
|
if _, exists := selectValueAddServiceCount[int(detail.ServiceType)]; exists {
|
||||||
return res, errors.New("每种增值服务类型只可选择一个")
|
return res, errors.New("每种增值服务类型只可选择一个")
|
||||||
}
|
}
|
||||||
@ -150,9 +132,6 @@ func SaveBundle(req *bundle.BundleProfile) (res *bundle.SaveResponse, err error)
|
|||||||
_, err = dao.BundleDetailByUuidAndLanguage(req.Uuid, req.Language)
|
_, err = dao.BundleDetailByUuidAndLanguage(req.Uuid, req.Language)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if err == gorm.ErrRecordNotFound {
|
if err == gorm.ErrRecordNotFound {
|
||||||
// if req.Uuid != "" {
|
|
||||||
// return res, errors.New("套餐不存在")
|
|
||||||
// }
|
|
||||||
if req.Language != msg.ZH_CN {
|
if req.Language != msg.ZH_CN {
|
||||||
_, err = dao.BundleDetailByUuidAndLanguage(req.Uuid, msg.ZH_CN)
|
_, err = dao.BundleDetailByUuidAndLanguage(req.Uuid, msg.ZH_CN)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -180,36 +159,26 @@ func SaveBundle(req *bundle.BundleProfile) (res *bundle.SaveResponse, err error)
|
|||||||
return res, errors.New("保存套餐与增值服务关联失败")
|
return res, errors.New("保存套餐与增值服务关联失败")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
if err = dao.TxCreateBundleLang(tx, bundleLang); err != nil {
|
||||||
bundleLang.UUID = req.Uuid
|
return res, errors.New("创建套餐信息失败")
|
||||||
res.Uuid = req.Uuid
|
|
||||||
valueUuid, err1 := dao.GetValueAddServiceUuidsByBundleUuid(bundleLang.UUID)
|
|
||||||
if err1 != nil {
|
|
||||||
return res, err1
|
|
||||||
}
|
}
|
||||||
count := 0
|
|
||||||
if valueUuid != nil && len(valueUuid) > 0 {
|
|
||||||
for _, v := range valueUuid {
|
|
||||||
//可以改成批量获取
|
|
||||||
valueDetail, err2 := dao.ValueAddServiceDetailByUuidAndLanguage(v, req.Language)
|
|
||||||
if err2 != nil {
|
|
||||||
return res, errors.New("查询增值服务失败")
|
|
||||||
}
|
|
||||||
if valueDetail.PriceType != req.PriceType {
|
|
||||||
if err = tx.Where("bundle_uuid =? AND value_uid =?", bundleLang.UUID, v).Delete(&model.BundleToValueAddService{}).Error; err != nil {
|
|
||||||
return res, errors.New("删除套餐与增值服务关联失败")
|
|
||||||
}
|
|
||||||
count++
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
res.CancelNum = int64(count)
|
|
||||||
}
|
}
|
||||||
if err = dao.TxCreateBundleLang(tx, bundleLang); err != nil {
|
langList := []string{msg.ZH_TW, msg.EN, msg.DE_DE, msg.JA_JP}
|
||||||
return res, errors.New("创建套餐信息失败")
|
for _, lang := range langList {
|
||||||
|
otherLang := &model.BundleProfileLang{
|
||||||
|
UUID: bundleLang.UUID,
|
||||||
|
Name: bundleLang.Name,
|
||||||
|
Content: bundleLang.Content,
|
||||||
|
Price: bundleLang.Price,
|
||||||
|
PriceType: bundleLang.PriceType,
|
||||||
|
}
|
||||||
|
otherLang.Language = lang
|
||||||
|
if err = dao.TxCreateBundleLang(tx, otherLang); err != nil {
|
||||||
|
return res, errors.New("创建套餐信息失败")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
res.Msg = "创建套餐信息成功"
|
res.Msg = "创建套餐信息成功"
|
||||||
return res, nil
|
return
|
||||||
} else {
|
} else {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -219,16 +188,7 @@ func SaveBundle(req *bundle.BundleProfile) (res *bundle.SaveResponse, err error)
|
|||||||
if saveErr := saveBundleHistory(tx, req.Uuid, "", 0); saveErr != nil {
|
if saveErr := saveBundleHistory(tx, req.Uuid, "", 0); saveErr != nil {
|
||||||
return res, saveErr
|
return res, saveErr
|
||||||
}
|
}
|
||||||
|
|
||||||
if req.Language == msg.ZH_CN {
|
if req.Language == msg.ZH_CN {
|
||||||
if len(cancelValueAddService) > 0 {
|
|
||||||
for _, v := range cancelValueAddService {
|
|
||||||
if err = tx.Where("bundle_uuid = ? AND value_uid = ?", req.Uuid, v).Delete(&model.BundleToValueAddService{}).Error; err != nil {
|
|
||||||
return res, errors.New("删除套餐与增值服务关联失败")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
res.CancelNum = int64(len(cancelValueAddService))
|
|
||||||
updateBundle := map[string]interface{}{
|
updateBundle := map[string]interface{}{
|
||||||
"name": req.Name,
|
"name": req.Name,
|
||||||
"sort": req.Sort,
|
"sort": req.Sort,
|
||||||
@ -243,40 +203,11 @@ func SaveBundle(req *bundle.BundleProfile) (res *bundle.SaveResponse, err error)
|
|||||||
if err = dao.TxUpdateBundle(tx, req.Uuid, updateBundle); err != nil {
|
if err = dao.TxUpdateBundle(tx, req.Uuid, updateBundle); err != nil {
|
||||||
return res, errors.New("更新套餐信息失败")
|
return res, errors.New("更新套餐信息失败")
|
||||||
}
|
}
|
||||||
// 更新中间表函数
|
//更新中间表函数
|
||||||
if err = diffUpdateBundleToValueAddService(tx, req.Uuid, selectService); err != nil {
|
if err = diffUpdateBundleToValueAddService(tx, req.Uuid, selectService); err != nil {
|
||||||
tx.Rollback()
|
tx.Rollback()
|
||||||
return res, errors.New("更新套餐与增值服务关联失败")
|
return res, errors.New("更新套餐与增值服务关联失败")
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
//更新其他语言时 先获取所有关联增值服务,判断币种是否一致,不一致则取消关联
|
|
||||||
valueAddService, err := dao.GetBundleToValueAddServiceByBundleUuid(req.Uuid)
|
|
||||||
if err != nil {
|
|
||||||
return res, errors.New("查询套餐与增值服务关联失败")
|
|
||||||
}
|
|
||||||
cancelValueService := make(map[string]string)
|
|
||||||
for _, v := range valueAddService {
|
|
||||||
detail, checkErr := dao.ValueAddServiceDetailByUuidAndLanguage(v.ValueUid, req.Language)
|
|
||||||
if checkErr != nil {
|
|
||||||
if checkErr == gorm.ErrRecordNotFound {
|
|
||||||
continue
|
|
||||||
} else {
|
|
||||||
return res, errors.New("查询增值服务失败")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if detail.PriceType != req.PriceType {
|
|
||||||
cancelValueService[v.ValueUid] = detail.ServiceName
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if int64(len(cancelValueService)) > 0 {
|
|
||||||
for k, _ := range cancelValueService {
|
|
||||||
if err = tx.Where("bundle_uuid = ? AND value_uid = ?", req.Uuid, k).Delete(&model.BundleToValueAddService{}).Error; err != nil {
|
|
||||||
return res, errors.New("删除套餐与增值服务关联失败")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
res.CancelNum = int64(len(cancelValueService))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
updateBundleLang := map[string]interface{}{
|
updateBundleLang := map[string]interface{}{
|
||||||
"name": req.Name,
|
"name": req.Name,
|
||||||
@ -287,13 +218,9 @@ func SaveBundle(req *bundle.BundleProfile) (res *bundle.SaveResponse, err error)
|
|||||||
if err = dao.TxUpdateBundleLang(tx, req.Uuid, req.Language, updateBundleLang); err != nil {
|
if err = dao.TxUpdateBundleLang(tx, req.Uuid, req.Language, updateBundleLang); err != nil {
|
||||||
return res, errors.New("更新套餐信息失败")
|
return res, errors.New("更新套餐信息失败")
|
||||||
}
|
}
|
||||||
|
|
||||||
res.Uuid = req.Uuid
|
res.Uuid = req.Uuid
|
||||||
res.Msg = "保存成功"
|
res.Msg = "保存成功"
|
||||||
}
|
}
|
||||||
if res.CancelNum > 0 {
|
|
||||||
res.Msg = "币种已修改,已取消关联部分增值服务"
|
|
||||||
}
|
|
||||||
return res, nil
|
return res, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -409,6 +336,22 @@ func HandleShelf(req *bundle.HandShelfRequest) (res *bundle.CommonResponse, err
|
|||||||
if req.ShelfStatus != 1 && req.ShelfStatus != 2 {
|
if req.ShelfStatus != 1 && req.ShelfStatus != 2 {
|
||||||
return res, errors.New("状态值无效")
|
return res, errors.New("状态值无效")
|
||||||
}
|
}
|
||||||
|
bundleDetailLangs, err := dao.GetBundleLangsByUuid(req.Uuid)
|
||||||
|
if err != nil {
|
||||||
|
return res, errors.New("查询套餐失败")
|
||||||
|
}
|
||||||
|
var langToPriceType = make(map[string]int64)
|
||||||
|
for _, bundleLang := range bundleDetailLangs {
|
||||||
|
langToPriceType[bundleLang.Language] = bundleLang.PriceType
|
||||||
|
}
|
||||||
|
tx := app.ModuleClients.BundleDB.Begin()
|
||||||
|
defer func() {
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
} else {
|
||||||
|
tx.Commit()
|
||||||
|
}
|
||||||
|
}()
|
||||||
if req.ShelfStatus == 1 {
|
if req.ShelfStatus == 1 {
|
||||||
valueAddUuids, err := dao.GetValueAddServiceUuidsByBundleUuid(req.Uuid)
|
valueAddUuids, err := dao.GetValueAddServiceUuidsByBundleUuid(req.Uuid)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -429,6 +372,20 @@ func HandleShelf(req *bundle.HandShelfRequest) (res *bundle.CommonResponse, err
|
|||||||
if !isExist {
|
if !isExist {
|
||||||
return res, errors.New("缺失可用时长服务类型")
|
return res, errors.New("缺失可用时长服务类型")
|
||||||
}
|
}
|
||||||
|
//校验币种
|
||||||
|
valueAddServices, err := dao.BatchValueAddServiceDetailTx(tx, valueAddUuids)
|
||||||
|
if err != nil {
|
||||||
|
return res, errors.New("查询增值服务详情失败")
|
||||||
|
}
|
||||||
|
for _, valueAddService := range valueAddServices {
|
||||||
|
if valueAddService.ValueAddServiceLang != nil && len(valueAddService.ValueAddServiceLang) > 0 {
|
||||||
|
for _, lang := range valueAddService.ValueAddServiceLang {
|
||||||
|
if langToPriceType[lang.Language] != lang.PriceType {
|
||||||
|
return res, errors.New("所选增值服务币种与套餐币种不一致")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
res, err = dao.HandShelf(req.Uuid, req.ShelfStatus)
|
res, err = dao.HandShelf(req.Uuid, req.ShelfStatus)
|
||||||
|
@ -246,7 +246,7 @@ func SaveValueAddService(in *bundle.ValueAddServiceLang) (res *bundle.SaveRespon
|
|||||||
return res, errors.New("保存增值服务失败")
|
return res, errors.New("保存增值服务失败")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
langList := []string{msg.ZH_TW, msg.EN, msg.DE_DE, msg.JS_JP}
|
langList := []string{msg.ZH_TW, msg.EN, msg.DE_DE, msg.JA_JP}
|
||||||
for _, lang := range langList {
|
for _, lang := range langList {
|
||||||
otherLang := model.ValueAddServiceLang{
|
otherLang := model.ValueAddServiceLang{
|
||||||
UUID: valueAddServiceLang.UUID,
|
UUID: valueAddServiceLang.UUID,
|
||||||
@ -286,21 +286,6 @@ func SaveValueAddService(in *bundle.ValueAddServiceLang) (res *bundle.SaveRespon
|
|||||||
return res, errors.New("更新增值服务失败")
|
return res, errors.New("更新增值服务失败")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 查找所有与该增值服务关联的套餐,若币种不一致则取消关联并统计
|
|
||||||
var cancelNum int64 = 0
|
|
||||||
bundleToValueAddList, _ := dao.GetBundleToValueAddServiceByValueUid(in.Uuid)
|
|
||||||
for _, rel := range bundleToValueAddList {
|
|
||||||
bundleProfile, _ := dao.BundleDetailByUuidAndLanguage(rel.BundleUuid, in.Language)
|
|
||||||
if bundleProfile != nil && bundleProfile.PriceType != in.PriceType {
|
|
||||||
dao.DeleteBundleToValueAddService(tx, rel.BundleUuid, in.Uuid)
|
|
||||||
cancelNum++
|
|
||||||
}
|
|
||||||
if err := dao.TxUpdateBundle(tx, rel.BundleUuid, map[string]interface{}{
|
|
||||||
"updated_at": time.Now(),
|
|
||||||
}); err != nil {
|
|
||||||
return res, errors.New("同步更新套餐失败")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//更新语言表
|
//更新语言表
|
||||||
updateLangService := map[string]interface{}{
|
updateLangService := map[string]interface{}{
|
||||||
"uuid": in.Uuid,
|
"uuid": in.Uuid,
|
||||||
@ -316,13 +301,25 @@ func SaveValueAddService(in *bundle.ValueAddServiceLang) (res *bundle.SaveRespon
|
|||||||
if err := dao.UpdateValueAddServiceLang(tx, updateLangService); err != nil {
|
if err := dao.UpdateValueAddServiceLang(tx, updateLangService); err != nil {
|
||||||
return res, errors.New("更新增值服务失败")
|
return res, errors.New("更新增值服务失败")
|
||||||
}
|
}
|
||||||
|
data, err := dao.GetBundleToValueAddServiceByValueUid(in.Uuid)
|
||||||
|
if err != nil {
|
||||||
|
return res, errors.New("获取套餐信息失败")
|
||||||
|
}
|
||||||
|
bundleUuids := []string{}
|
||||||
|
if data != nil && len(data) > 0 {
|
||||||
|
for _, bundle := range data {
|
||||||
|
bundleUuids = append(bundleUuids, bundle.BundleUuid)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
columns := map[string]interface{}{
|
||||||
|
"updated_at": time.Now(),
|
||||||
|
}
|
||||||
|
if err = dao.TxUpdateBundles(tx, bundleUuids, columns); err != nil {
|
||||||
|
return res, errors.New("更新套餐信息失败")
|
||||||
|
}
|
||||||
res.Uuid = in.Uuid
|
res.Uuid = in.Uuid
|
||||||
res.CancelNum = cancelNum
|
|
||||||
res.Msg = "保存成功"
|
res.Msg = "保存成功"
|
||||||
}
|
}
|
||||||
if res.CancelNum > 0 {
|
|
||||||
res.Msg = "币种已修改,已取消关联部分套餐"
|
|
||||||
}
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ type BundleProfileLang struct {
|
|||||||
Price float32 `json:"price" gorm:"column:price;type:decimal(12,2);comment:套餐价格"`
|
Price float32 `json:"price" gorm:"column:price;type:decimal(12,2);comment:套餐价格"`
|
||||||
PriceType int64 `json:"priceType" gorm:"column:price_type;type:int;comment:套餐类型 1:人民币 2:美元"`
|
PriceType int64 `json:"priceType" gorm:"column:price_type;type:int;comment:套餐类型 1:人民币 2:美元"`
|
||||||
Content string `json:"content" gorm:"column:content;type:text;comment:套餐内容"`
|
Content string `json:"content" gorm:"column:content;type:text;comment:套餐内容"`
|
||||||
Language string `json:"language" gorm:"column:language;type:varchar(32);comment:套餐语言 zh-CN zh-TW EN de-DE js-JP(中繁英德日)"`
|
Language string `json:"language" gorm:"column:language;type:varchar(32);comment:套餐语言 zh-CN zh-TW EN de-DE ja-JP(中繁英德日)"`
|
||||||
CreatedAt int64 `gorm:"column:created_at;autoCreateTime"`
|
CreatedAt int64 `gorm:"column:created_at;autoCreateTime"`
|
||||||
UpdatedAt int64 `gorm:"column:updated_at;autoCreateTime"`
|
UpdatedAt int64 `gorm:"column:updated_at;autoCreateTime"`
|
||||||
DeletedAt soft_delete.DeletedAt
|
DeletedAt soft_delete.DeletedAt
|
||||||
|
@ -53,7 +53,7 @@ type ValueAddServiceLang struct {
|
|||||||
OriginalPrice float32 `json:"originalPrice" gorm:"column:original_price;type:decimal(12,2);comment:原单价"`
|
OriginalPrice float32 `json:"originalPrice" gorm:"column:original_price;type:decimal(12,2);comment:原单价"`
|
||||||
TotalPrice float32 `json:"totalPrice" gorm:"column:total_price;type:decimal(12,2);comment:增值服务总价"`
|
TotalPrice float32 `json:"totalPrice" gorm:"column:total_price;type:decimal(12,2);comment:增值服务总价"`
|
||||||
Unit string `json:"unit" gorm:"column:unit;type:varchar(50);comment:单位 1:个 2:条 3:天 4:月 5:年"`
|
Unit string `json:"unit" gorm:"column:unit;type:varchar(50);comment:单位 1:个 2:条 3:天 4:月 5:年"`
|
||||||
Language string `json:"language" gorm:"column:language;type:varchar(32);comment:套餐语言 zh-CN zh-TW EN de-DE js-JP(中繁英德日)"`
|
Language string `json:"language" gorm:"column:language;type:varchar(32);comment:套餐语言 zh-CN zh-TW EN de-DE ja-JP(中繁英德日)"`
|
||||||
PriceType int64 `json:"priceType" gorm:"column:price_type;type:int;comment:币种 1:人民币 2:美元 3:日元 4:欧元"`
|
PriceType int64 `json:"priceType" gorm:"column:price_type;type:int;comment:币种 1:人民币 2:美元 3:日元 4:欧元"`
|
||||||
Options PriceOptions `gorm:"column:options;type:json" json:"options"`
|
Options PriceOptions `gorm:"column:options;type:json" json:"options"`
|
||||||
CreatedAt int64 `gorm:"column:created_at;autoCreateTime"`
|
CreatedAt int64 `gorm:"column:created_at;autoCreateTime"`
|
||||||
|
@ -15,7 +15,7 @@ const (
|
|||||||
ZH_TW = "zh-TW" //繁体中文
|
ZH_TW = "zh-TW" //繁体中文
|
||||||
EN = "EN" //英文
|
EN = "EN" //英文
|
||||||
DE_DE = "de-DE" //德语
|
DE_DE = "de-DE" //德语
|
||||||
JS_JP = "js-JP" //日语
|
JA_JP = "ja-JP" //日语
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
Loading…
Reference in New Issue
Block a user