正在显示
3 个修改的文件
包含
37 行增加
和
5 行删除
| @@ -34,6 +34,7 @@ func (dao OrderBaseDao) CheckOrderExist(companyId int64, orderCode string, | @@ -34,6 +34,7 @@ func (dao OrderBaseDao) CheckOrderExist(companyId int64, orderCode string, | ||
| 34 | query := tx.Model(&models.OrderBase{}). | 34 | query := tx.Model(&models.OrderBase{}). |
| 35 | Where("company_id=?", companyId). | 35 | Where("company_id=?", companyId). |
| 36 | Where("order_code=?", orderCode). | 36 | Where("order_code=?", orderCode). |
| 37 | + Where("delivery_code=?", deliveryCode). | ||
| 37 | Where("partner_id=?", partnerId). | 38 | Where("partner_id=?", partnerId). |
| 38 | Where(`partner_category @>'{"id":?}'`, partnerCategory). | 39 | Where(`partner_category @>'{"id":?}'`, partnerCategory). |
| 39 | Where("id<>?", notId) | 40 | Where("id<>?", notId) |
| @@ -6,6 +6,7 @@ import ( | @@ -6,6 +6,7 @@ import ( | ||
| 6 | "errors" | 6 | "errors" |
| 7 | "fmt" | 7 | "fmt" |
| 8 | "github.com/beego/beego/v2/client/httplib" | 8 | "github.com/beego/beego/v2/client/httplib" |
| 9 | + "os" | ||
| 9 | "path" | 10 | "path" |
| 10 | "regexp" | 11 | "regexp" |
| 11 | "strconv" | 12 | "strconv" |
| @@ -659,6 +660,12 @@ func (c *OrderInfoController) DownloadTemplate() { | @@ -659,6 +660,12 @@ func (c *OrderInfoController) DownloadTemplate() { | ||
| 659 | c.ResponseError(errors.New("类型编码错误")) | 660 | c.ResponseError(errors.New("类型编码错误")) |
| 660 | } | 661 | } |
| 661 | 662 | ||
| 663 | + // 创建下载文件夹 | ||
| 664 | + mkErr := os.Mkdir("download", os.ModePerm) | ||
| 665 | + if mkErr != nil { | ||
| 666 | + fmt.Println(mkErr) | ||
| 667 | + } | ||
| 668 | + | ||
| 662 | // 获取导入模板 | 669 | // 获取导入模板 |
| 663 | req := httplib.Get("http://suplus-file-dev.fjmaimaimai.com/upload/file/2021010803305336443.xlsx") | 670 | req := httplib.Get("http://suplus-file-dev.fjmaimaimai.com/upload/file/2021010803305336443.xlsx") |
| 664 | err = req.ToFile(constant.IMPORT_EXCEL) | 671 | err = req.ToFile(constant.IMPORT_EXCEL) |
| @@ -1064,11 +1071,37 @@ func (c *OrderInfoController) ImportOrderFromExcel() { | @@ -1064,11 +1071,37 @@ func (c *OrderInfoController) ImportOrderFromExcel() { | ||
| 1064 | } | 1071 | } |
| 1065 | } | 1072 | } |
| 1066 | 1073 | ||
| 1067 | - // 批量创建订单命令集 | 1074 | + // 产品数量校验 |
| 1075 | + productNumberError := make([]interface{}, 0) | ||
| 1076 | + | ||
| 1077 | + // 批量创建订单命令集和产品数量校验 | ||
| 1068 | var createOrderCommands []*orderCmd.CreateOrderCommand | 1078 | var createOrderCommands []*orderCmd.CreateOrderCommand |
| 1069 | for _, orderCommand := range orderCommands { | 1079 | for _, orderCommand := range orderCommands { |
| 1080 | + if len(orderCommand.Goods) > 50 { // 产品数量校验 | ||
| 1081 | + for _, line := range orderCommand.LineNumbers { | ||
| 1082 | + var tmpRow []string | ||
| 1083 | + tmpRow = append(tmpRow, "单笔订单产品超过50种") // 错误信息 | ||
| 1084 | + s := strconv.Itoa(line + 1) | ||
| 1085 | + tmpRow = append(tmpRow, s) // 行号 | ||
| 1086 | + tmpRow = append(tmpRow, rows[line]...) // 错误行数据 | ||
| 1087 | + productNumberError = append(productNumberError, tmpRow) | ||
| 1088 | + } | ||
| 1089 | + } else { | ||
| 1070 | createOrderCommands = append(createOrderCommands, orderCommand) | 1090 | createOrderCommands = append(createOrderCommands, orderCommand) |
| 1071 | } | 1091 | } |
| 1092 | + } | ||
| 1093 | + | ||
| 1094 | + if len(productNumberError) > 0 { | ||
| 1095 | + ret = map[string]interface{}{ | ||
| 1096 | + "successCount": 0, | ||
| 1097 | + "fail": map[string]interface{}{ | ||
| 1098 | + "tableHeader": tableHeader, | ||
| 1099 | + "tableData": productNumberError, | ||
| 1100 | + }, | ||
| 1101 | + } | ||
| 1102 | + c.ResponseData(ret) | ||
| 1103 | + return | ||
| 1104 | + } | ||
| 1072 | 1105 | ||
| 1073 | // 新增失败记录 | 1106 | // 新增失败记录 |
| 1074 | failureDataList := make([]interface{}, 0) | 1107 | failureDataList := make([]interface{}, 0) |
| @@ -6,10 +6,6 @@ import ( | @@ -6,10 +6,6 @@ import ( | ||
| 6 | ) | 6 | ) |
| 7 | 7 | ||
| 8 | func init() { | 8 | func init() { |
| 9 | - // 导入相关 | ||
| 10 | - beego.Router("/fileImportTemplate", &controllers.OrderInfoController{}, "POST:DownloadTemplate") // 下载导入模板 | ||
| 11 | - beego.Router("/fileImport", &controllers.OrderInfoController{}, "POST:ImportOrderFromExcel") // 导入订单数据 | ||
| 12 | - | ||
| 13 | adminRouter := beego.NewNamespace("/v1", | 9 | adminRouter := beego.NewNamespace("/v1", |
| 14 | beego.NSNamespace("/auth", | 10 | beego.NSNamespace("/auth", |
| 15 | beego.NSRouter("/login", &controllers.AdminLoginController{}, "POST:Login"), | 11 | beego.NSRouter("/login", &controllers.AdminLoginController{}, "POST:Login"), |
| @@ -45,6 +41,8 @@ func init() { | @@ -45,6 +41,8 @@ func init() { | ||
| 45 | beego.NSRouter("/actual/del", &controllers.OrderInfoController{}, "POST:RemoveOrderReal"), // 删除实际订单 | 41 | beego.NSRouter("/actual/del", &controllers.OrderInfoController{}, "POST:RemoveOrderReal"), // 删除实际订单 |
| 46 | beego.NSRouter("/actual/update", &controllers.OrderInfoController{}, "POST:UpdateOrderReal"), // 新增实际订单 | 42 | beego.NSRouter("/actual/update", &controllers.OrderInfoController{}, "POST:UpdateOrderReal"), // 新增实际订单 |
| 47 | beego.NSRouter("/actual/close", &controllers.OrderInfoController{}, "POST:OrderDisable"), | 43 | beego.NSRouter("/actual/close", &controllers.OrderInfoController{}, "POST:OrderDisable"), |
| 44 | + beego.NSRouter("/fileImportTemplate", &controllers.OrderInfoController{}, "POST:DownloadTemplate"), // 下载导入模板 | ||
| 45 | + beego.NSRouter("/fileImport", &controllers.OrderInfoController{}, "POST:ImportOrderFromExcel"), // 导入订单数据 | ||
| 48 | ), | 46 | ), |
| 49 | beego.NSNamespace("/common", | 47 | beego.NSNamespace("/common", |
| 50 | beego.NSRouter("/partner", &controllers.CommonController{}, "POST:GetPartnerList"), | 48 | beego.NSRouter("/partner", &controllers.CommonController{}, "POST:GetPartnerList"), |
-
请 注册 或 登录 后发表评论