package dto import ( "gas-cylinder-api/app/admin/model" "gas-cylinder-api/common/dto" common "gas-cylinder-api/common/model" "github.com/alibaba/sentinel-golang/util" "time" ) type OrderGetPageReq struct { dto.Pagination `search:"-"` State int `form:"state" search:"-"` // 订单状态 1-已下单 2-已派送 3-已送达 4-已取消 Source int `form:"source" search:"type:exact;column:source;table:order"` // 订单状态 1-坐席下单 2-小程序 OrderStartTime string `form:"orderStartTime" search:"type:gte;column:order_time;table:order"` // 下单开始时间 OrderEndTime string `form:"orderEndTime" search:"type:lte;column:order_time;table:order"` // 下单结束时间 Phone string `form:"phone" search:"type:contains;column:phone;table:order"` // 客户电话 CustomerId string `form:"customerId" search:"type:contains;column:customer_id;table:order"` // 客户id OrderOrder } type OrderOrder struct { CreatedAtOrder string `search:"type:order;column:created_at;table:order" form:"createdAtOrder" default:"desc"` } func (m *OrderGetPageReq) GetNeedSearch() interface{} { return *m } type OrderGetDeliveryPageReq struct { dto.Pagination `search:"-"` State int `form:"state" search:"-"` // 订单状态 1-已下单 2-已派送 3-已送达 4-已取消 5-配送中 6-配送中-已检查 OrderStartTime string `form:"orderStartTime" search:"type:gte;column:order_time;table:order"` // 下单开始时间 OrderEndTime string `form:"orderEndTime" search:"type:lte;column:order_time;table:order"` // 下单结束时间 Phone string `form:"phone" search:"type:contains;column:phone;table:order"` // 客户电话 OrderGetDeliveryOrder } type OrderGetDeliveryOrder struct { OrderTime string `search:"type:order;column:order_time;table:order" form:"orderTimeOrder" default:"desc"` } func (m *OrderGetDeliveryPageReq) GetNeedSearch() interface{} { return *m } // 坐席下单 type OrderInsertReq struct { Id int `json:"id" comment:"编码" swaggerignore:"true"` // 编码 CustomerId string `json:"customerId"` // 顾客id Address string `json:"address"` // 顾客地址 Phone string `json:"phone"` // 顾客电话 StoreId int `json:"storeId"` // 门店id UserId int `json:"userId"` // 送气人员id GoodsId int `json:"goodsId"` // 商品id SpecId int `json:"specId"` // 规格id Quantity int `json:"quantity"` // 数量 Source int `json:"source"` // 来源 1-坐席下单 2-小程序 Remark string `json:"remark"` State int `json:"state" swaggerignore:"true"` // 状态 已下单 OrderTime common.Time `json:"orderTime" swaggerignore:"true"` common.ControlBy `swaggerignore:"true"` common.DeptBy `swaggerignore:"true"` } type OrderAppletInsertReq struct { Id int `json:"id" comment:"编码" swaggerignore:"true"` // 编码 CustomerId string `json:"customerId"` // 顾客id Address string `json:"address"` // 顾客地址 Name string `json:"name"` // 顾客名称 Lng float64 `json:"lng"` // 经度 Lat float64 `json:"lat"` // 纬度 City string `json:"city"` // 所在地市 Area string `json:"area"` // 所属区/县 Phone string `json:"phone"` // 顾客电话 StoreId int `json:"storeId"` // 门店id GoodsId int `json:"goodsId"` // 商品id SpecId int `json:"specId"` // 规格id Quantity int `json:"quantity"` // 数量 Source int `json:"source"` // 来源 1-坐席下单 2-小程序 Remark string `json:"remark"` AddressImg string `json:"addressImg"` // 现场图片 State int `json:"state" swaggerignore:"true"` // 状态 已下单 OrderTime common.Time `json:"orderTime" swaggerignore:"true"` common.ControlBy `swaggerignore:"true"` common.DeptBy `swaggerignore:"true"` } func (s *OrderInsertReq) Generate(order *model.Order) { if s.Id != 0 { order.Id = s.Id } order.CustomerId = s.CustomerId order.Address = s.Address order.Phone = s.Phone order.StoreId = s.StoreId order.UserId = s.UserId order.GoodsId = s.GoodsId order.SpecId = s.SpecId order.Quantity = s.Quantity order.Remark = s.Remark order.Source = s.Source order.OrderId = util.NewUuid() order.State = model.OrderStateOrder order.OrderTime = common.Time(time.Now()) if s.ControlBy.UpdateBy != 0 { order.UpdateBy = s.UpdateBy } if s.ControlBy.CreateBy != 0 { order.CreateBy = s.CreateBy } if s.DeptBy.DeptId != 0 { order.DeptId = s.DeptId } } func (s *OrderAppletInsertReq) Generate(order *model.Order) { if s.Id != 0 { order.Id = s.Id } order.CustomerId = s.CustomerId order.Address = s.Address order.Phone = s.Phone order.StoreId = s.StoreId order.GoodsId = s.GoodsId order.SpecId = s.SpecId order.Quantity = s.Quantity order.Remark = s.Remark order.Source = s.Source order.OrderId = util.NewUuid() order.State = model.OrderStateOrder order.OrderTime = common.Time(time.Now()) if s.ControlBy.UpdateBy != 0 { order.UpdateBy = s.UpdateBy } if s.ControlBy.CreateBy != 0 { order.CreateBy = s.CreateBy } if s.DeptBy.DeptId != 0 { order.DeptId = s.DeptId } } func (s *OrderInsertReq) GetId() interface{} { return s.Id } func (s *OrderAppletInsertReq) GetId() interface{} { return s.Id } type OrderUpdateReq struct { Id int `json:"id" comment:"编码" swaggerignore:"true"` // 编码 Address string `json:"address"` // 顾客地址 Phone string `json:"Phone"` // 顾客电话 StoreId int `json:"storeId"` // 门店id UserId int `json:"userId"` // 送气人员id GoodsId int `json:"goodsId"` // 商品id SpecId int `json:"specId"` // 规格id Quantity int `json:"quantity"` // 数量 Remark string `json:"remark"` common.ControlBy `swaggerignore:"true"` } type OrderAppletUpdateReq struct { Id int `json:"id" comment:"编码" swaggerignore:"true"` // 编码 Address string `json:"address"` // 顾客地址 Name string `json:"name"` // 顾客名称 Lng float64 `json:"lng"` // 经度 Lat float64 `json:"lat"` // 纬度 City string `json:"city"` // 所在地市 Area string `json:"area"` // 所属区/县 Phone string `json:"Phone"` // 顾客电话 GoodsId int `json:"goodsId"` // 商品id SpecId int `json:"specId"` // 规格id Quantity int `json:"quantity"` // 数量 Remark string `json:"remark"` AddressImg string `json:"addressImg"` // 现场图片 common.ControlBy `swaggerignore:"true"` } func (s *OrderUpdateReq) Generate(order *model.Order) { if s.Id != 0 { order.Id = s.Id } order.Address = s.Address order.Phone = s.Phone order.StoreId = s.StoreId order.UserId = s.UserId order.GoodsId = s.GoodsId order.SpecId = s.SpecId order.Quantity = s.Quantity order.Remark = s.Remark if s.ControlBy.UpdateBy != 0 { order.UpdateBy = s.UpdateBy } if s.ControlBy.CreateBy != 0 { order.CreateBy = s.CreateBy } } func (s *OrderAppletUpdateReq) Generate(order *model.Order) { if s.Id != 0 { order.Id = s.Id } order.Address = s.Address order.Phone = s.Phone order.GoodsId = s.GoodsId order.SpecId = s.SpecId order.Quantity = s.Quantity order.Remark = s.Remark if s.ControlBy.UpdateBy != 0 { order.UpdateBy = s.UpdateBy } if s.ControlBy.CreateBy != 0 { order.CreateBy = s.CreateBy } } func (s *OrderUpdateReq) GetId() interface{} { return s.Id } func (s *OrderAppletUpdateReq) GetId() interface{} { return s.Id } type OrderGetReq struct { Id int `uri:"id"` } func (s *OrderGetReq) GetId() interface{} { return s.Id } type OrderDeleteReq struct { Id int `json:"id"` common.ControlBy `swaggerignore:"true"` } func (s *OrderDeleteReq) GetId() interface{} { return s.Id } type OrderCancelReq struct { Id int `json:"id"` common.ControlBy `swaggerignore:"true"` } func (s *OrderCancelReq) GetId() interface{} { return s.Id } type OrderDeliveryReq struct { Id int `json:"id"` StoreId int `json:"storeId"` // 门店id UserId int `json:"userId"` // 送气员id Remark string `json:"remark"` common.ControlBy `swaggerignore:"true"` } func (s *OrderDeliveryReq) Generate(order *model.Order) { if s.Id != 0 { order.Id = s.Id } order.StoreId = s.StoreId order.UserId = s.UserId order.Remark = s.Remark order.State = model.OrderStateDelivery if s.ControlBy.UpdateBy != 0 { order.UpdateBy = s.UpdateBy } if s.ControlBy.CreateBy != 0 { order.CreateBy = s.CreateBy } } func (s *OrderDeliveryReq) GetId() interface{} { return s.Id } type OrderUpdateStateReq struct { Id int `json:"id"` State int `json:"state"` ChipUid []string `json:"chipUid"` // 高频id common.ControlBy `swaggerignore:"true"` } func (s *OrderUpdateStateReq) Generate(order *model.Order) { if s.Id != 0 { order.Id = s.Id } order.State = s.State if s.ControlBy.UpdateBy != 0 { order.UpdateBy = s.UpdateBy } if s.ControlBy.CreateBy != 0 { order.CreateBy = s.CreateBy } } func (s *OrderUpdateStateReq) GetId() interface{} { return s.Id } type AppletOrderGetPageReq struct { dto.Pagination `search:"-"` State int `form:"state" search:"-"` // 订单状态 1-已下单 2-已派送 3-已送达 4-已取消 Source int `form:"source" search:"type:exact;column:source;table:order"` // 订单状态 1-坐席下单 2-小程序 OrderStartTime string `form:"orderStartTime" search:"type:gte;column:order_time;table:order"` // 下单开始时间 OrderEndTime string `form:"orderEndTime" search:"type:lte;column:order_time;table:order"` // 下单结束时间 Phone string `form:"phone" search:"type:contains;column:phone;table:order"` // 客户电话 CustomerId string `form:"customerId" search:"type:contains;column:customer_id;table:order"` // 客户id OrderOrder } func (m *AppletOrderGetPageReq) GetNeedSearch() interface{} { return *m }