From b9186b3dfe868f3b71ebf06fe8add94ee361499d Mon Sep 17 00:00:00 2001 From: chenlin Date: Tue, 23 Jan 2024 10:49:07 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E6=9F=A5=E8=AF=A2=E6=94=B6?= =?UTF-8?q?=E4=BB=98=E6=AC=BE=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=EF=BC=8C?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E6=89=80=E6=9C=89=E9=97=A8=E5=BA=97=E9=83=BD?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E7=B3=BB=E7=BB=9F=E5=86=85=E7=BD=AE=E6=94=B6?= =?UTF-8?q?=E6=AC=BE=E6=96=B9=E5=BC=8F=EF=BC=9B=202.=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=BA=93=E5=AD=98=E5=AF=BC=E5=85=A5=E6=8E=A5=E5=8F=A3=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E6=A0=BC=E5=BC=8F=E6=A0=A1=E9=AA=8C=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E6=97=B6=E7=9A=84=E6=8F=90=E7=A4=BA=E4=BF=A1=E6=81=AF=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/admin/apis/basic/cashier.go | 7 +++++++ app/admin/models/cashier.go | 32 ++++++++++++++++++++++++++++---- app/admin/models/file.go | 12 +++++++++++- 3 files changed, 46 insertions(+), 5 deletions(-) diff --git a/app/admin/apis/basic/cashier.go b/app/admin/apis/basic/cashier.go index e6b013a..6b01b39 100644 --- a/app/admin/apis/basic/cashier.go +++ b/app/admin/apis/basic/cashier.go @@ -171,6 +171,13 @@ func CashierList(c *gin.Context) { return } + if req.StoreId != 0 { // 门店id非空时进行校验 + if !models.IsExistingStoreById(int(req.StoreId)) { + app.Error(c, http.StatusBadRequest, errors.New("该门店id不存在,请传正确的门店id"), "该门店id不存在,请传正确的门店id") + return + } + } + list, err := models.GetAccountList(int(req.StoreId), req.PageSize, req.PageIndex) if err != nil { app.Error(c, http.StatusBadRequest, err, err.Error()) diff --git a/app/admin/models/cashier.go b/app/admin/models/cashier.go index bd582ef..a11d3c8 100644 --- a/app/admin/models/cashier.go +++ b/app/admin/models/cashier.go @@ -282,10 +282,10 @@ func GetAccountList(storeId, pageSize, pageIndex int) (*ErpCashierListResp, erro limit := pageSize //resp.Total = int(count)/pageSize + 1 - var categories []ErpCashier + var cashiers []ErpCashier if storeId == 0 { // 只查询账号信息 - err = qs.Order("id DESC").Offset(offset).Limit(limit).Find(&categories).Error + err = qs.Order("id DESC").Offset(offset).Limit(limit).Find(&cashiers).Error } else { // 查询账号信息及其关联的门店 var storeCashiers []ErpStoreCashier err = qs.Order("erp_cashier_id DESC").Offset(offset).Limit(limit).Find(&storeCashiers).Error @@ -298,7 +298,7 @@ func GetAccountList(storeId, pageSize, pageIndex int) (*ErpCashierListResp, erro Type: v.Type, } temp.Model.ID = v.ErpCashierId - categories = append(categories, temp) + cashiers = append(cashiers, temp) } } @@ -307,7 +307,19 @@ func GetAccountList(storeId, pageSize, pageIndex int) (*ErpCashierListResp, erro return nil, fmt.Errorf("query err:%v", err) } - resp.List = categories + if storeId != 0 { + //添加默认的账号信息 + defaultCashier, err := setDefaultCashier() + if err != nil { + return nil, err + } + + for _, item := range defaultCashier { + cashiers = append(cashiers, item) + } + } + + resp.List = cashiers //跟之前保持一致 resp.Total = int(count) @@ -317,6 +329,18 @@ func GetAccountList(storeId, pageSize, pageIndex int) (*ErpCashierListResp, erro return &resp, nil } +// 添加默认的收付款账号信息 +func setDefaultCashier() ([]ErpCashier, error) { + var cashierList []ErpCashier + err := orm.Eloquent.Table("erp_cashier").Order("id DESC").Where("id IN (1,2,3,4)"). + Find(&cashierList).Error + if err != nil { + return nil, err + } + + return cashierList, nil +} + // GetAccountDetail 查询账号详情 func GetAccountDetail(cashierId int) (*ErpCashierDetail, error) { // 查账号信息 diff --git a/app/admin/models/file.go b/app/admin/models/file.go index c7d5299..7fa60d0 100644 --- a/app/admin/models/file.go +++ b/app/admin/models/file.go @@ -464,7 +464,7 @@ func checkStockExcel(sheetCols [][]string) error { if sheetCols[7][i] != "" { parsedTime, err := time.Parse("2006/1/2", sheetCols[7][i]) if err != nil { - return errors.New("第" + strconv.Itoa(i+1) + "行入库时间格式错误,应为YYYY-MM-DD") + return errors.New("第" + strconv.Itoa(i+1) + "行入库时间格式错误,请设置单元格格式为日期:YYYY/MM/DD") } // 格式化时间为指定格式 formattedTime := parsedTime.Format(DateTimeFormat) @@ -576,6 +576,16 @@ func isExistingStore(storeName string) bool { return count > 0 } +func IsExistingStoreById(storeId int) bool { + // 实现门店是否存在的逻辑 + var count int64 + orm.Eloquent.Debug().Model(&Store{}). + Where("id = ?", storeId). + Count(&count) + + return count > 0 +} + func isExistingSupplier(supplierName string) bool { // 实现供应商是否存在的逻辑 var count int64