wrTrade.go 5.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. package models
  2. import (
  3. "mtp2_if/db"
  4. "time"
  5. )
  6. // 100.10仓单贸易
  7. // Wrstandard 仓单标准表
  8. type Wrstandard struct {
  9. Wrstandardid int64 `json:"wrstandardid" xorm:"'WRSTANDARDID'" binding:"required"` // 仓单标准ID(SEQ_WRSTANDARD)
  10. Wrstandardcode string `json:"wrstandardcode" xorm:"'WRSTANDARDCODE'"` // 仓单标准代码
  11. Wrstandardname string `json:"wrstandardname" xorm:"'WRSTANDARDNAME'"` // 仓单标准名称
  12. Deliverygoodsid int32 `json:"deliverygoodsid" xorm:"'DELIVERYGOODSID'"` // 品种ID
  13. Unitid int32 `json:"unitid" xorm:"'UNITID'"` // 单位ID
  14. Minivalue int64 `json:"minivalue" xorm:"'MINIVALUE'"` // 最小变动值
  15. Minivaluedp int64 `json:"minivaluedp" xorm:"'MINIVALUEDP'"` // 最小变动值小数位
  16. Realminivalue int64 `json:"realminivalue" xorm:"'REALMINIVALUE'"` // 实际最小变动值
  17. Realminivaluedp int64 `json:"realminivaluedp" xorm:"'REALMINIVALUEDP'"` // 实际最小变动值小数位
  18. Wrsstatus int32 `json:"wrsstatus" xorm:"'WRSSTATUS'"` // 状态 - 作废 - 0:未激活 1:正常
  19. Creatorid int64 `json:"creatorid" xorm:"'CREATORID'"` // 创建人
  20. Createtime time.Time `json:"createtime" xorm:"'CREATETIME'"` // 创建时间
  21. Updatorid int64 `json:"updatorid" xorm:"'UPDATORID'"` // 更新人
  22. Updatetime time.Time `json:"updatetime" xorm:"'UPDATETIME'"` // 更新时间
  23. Factoryitemjson string `json:"factoryitemjson" xorm:"'FACTORYITEMJSON'"` // 要素项定义Json[{"DGFactoryItemTypeID": ,"ItemTypeMode": ,"FactoryItemIDs": },{.....},]DGFactoryItemTypeID - 要素项类型ID --DGFactoryItem->DGFactoryItemTypeIDItemTypeMode - 要素项类型模式 --DGFactoryItem->ItemTypeModeFactoryItemIDs - 选择项IDs--DGFactoryItem->DGFactoryItemID, 逗号分隔
  24. Isvalid int32 `json:"isvalid" xorm:"'ISVALID'"` // 是否有效 - 0:无效 1:有效
  25. }
  26. // TableName is WRSTANDARD
  27. func (Wrstandard) TableName() string {
  28. return "WRSTANDARD"
  29. }
  30. // Warehouseinfo 仓库信息表
  31. type Warehouseinfo struct {
  32. Autoid int64 `json:"autoid" xorm:"'AUTOID'" binding:"required"` // 自增ID
  33. Warehousecode string `json:"warehousecode" xorm:"'WAREHOUSECODE'" binding:"required"` // 仓库代码
  34. Warehousename string `json:"warehousename" xorm:"'WAREHOUSENAME'"` // 仓库名称
  35. Warehousetype int32 `json:"warehousetype" xorm:"'WAREHOUSETYPE'"` // 仓库类型 - 1 厂库 2 自有库 3 合作库
  36. Areauserid int64 `json:"areauserid" xorm:"'AREAUSERID'"` // 所属机构
  37. Warehousestatus int32 `json:"warehousestatus" xorm:"'WAREHOUSESTATUS'"` // 仓库状态 - 1:正常 2:注销 3:待审核 4:审核拒绝
  38. Countryid int32 `json:"countryid" xorm:"'COUNTRYID'"` // 国家
  39. Provinceid int32 `json:"provinceid" xorm:"'PROVINCEID'"` // 省
  40. Cityid int32 `json:"cityid" xorm:"'CITYID'"` // 市
  41. Districtid int32 `json:"districtid" xorm:"'DISTRICTID'"` // 区
  42. Address string `json:"address" xorm:"'ADDRESS'"` // 详细地址
  43. Remark string `json:"remark" xorm:"'REMARK'"` // 审核备注
  44. Createtime time.Time `json:"createtime" xorm:"'CREATETIME'"` // 创建时间
  45. Hasvideo int32 `json:"hasvideo" xorm:"'HASVIDEO'"` // 是否有视频 - 0:无 1:有
  46. Videourl string `json:"videourl" xorm:"'VIDEOURL'"` // 视频地址
  47. Contactname string `json:"contactname" xorm:"'CONTACTNAME'"` // 联系人
  48. Contactnum string `json:"contactnum" xorm:"'CONTACTNUM'"` // 联系电话
  49. }
  50. // TableName is WAREHOUSEINFO
  51. func (Warehouseinfo) TableName() string {
  52. return "WAREHOUSEINFO"
  53. }
  54. // WRStandardInfo 仓库信息
  55. type WRStandardInfo struct {
  56. Wrstandard `xorm:"extends"`
  57. Unitname string `json:"unitname" xorm:"UNITNAME"` // 单位
  58. Deliverygoodsname string `json:"deliverygoodsname" xorm:"'DELIVERYGOODSNAME'"` // 交割商品名称
  59. }
  60. // GetWrstandards 获取有效的仓单标准
  61. func GetWrstandards() ([]WRStandardInfo, error) {
  62. engine := db.GetEngine()
  63. wrStandards := make([]WRStandardInfo, 0)
  64. if err := engine.Table("WRSTANDARD").Select("WRSTANDARD.*, E1.ENUMDICNAME UNITNAME, DG.DELIVERYGOODSNAME").
  65. Join("LEFT", "ENUMDICITEM E1", "E1.ENUMITEMNAME = WRSTANDARD.UNITID and E1.ENUMDICCODE = 'GOODSUNIT'").
  66. Join("LEFT", "DELIVERYGOODS DG", "DG.DELIVERYGOODSID = WRSTANDARD.DELIVERYGOODSID").
  67. Where("WRSTANDARD.ISVALID = 1").Find(&wrStandards); err != nil {
  68. return nil, err
  69. }
  70. return wrStandards, nil
  71. }
  72. // GetWareHouseinfos 获取有效的仓库信息
  73. func GetWareHouseinfos() ([]Warehouseinfo, error) {
  74. engine := db.GetEngine()
  75. wareHouseinfos := make([]Warehouseinfo, 0)
  76. if err := engine.Where("WAREHOUSESTATUS = 1").Find(&wareHouseinfos); err != nil {
  77. return nil, err
  78. }
  79. return wareHouseinfos, nil
  80. }