| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392 |
- package models
- import (
- "encoding/hex"
- "mtp2_if/db"
- "mtp2_if/utils"
- "strings"
- "time"
- )
- // Warehouseinfo 仓库信息表
- type GZWarehouseinfo struct {
- AUTOID int64 `json:"autoid" xorm:"AUTOID"` // 自增ID
- WAREHOUSECODE string `json:"warehousecode" xorm:"WAREHOUSECODE"` // 仓库代码
- WAREHOUSENAME string `json:"warehousename" xorm:"WAREHOUSENAME"` // 仓库名称
- WAREHOUSETYPE int32 `json:"warehousetype" xorm:"WAREHOUSETYPE"` // 仓库类型 - 1 厂库 2 自有库 3 合作库
- AREAUSERID int64 `json:"areauserid" xorm:"AREAUSERID"` // 所属机构
- WAREHOUSESTATUS int32 `json:"warehousestatus" xorm:"WAREHOUSESTATUS"` // 仓库状态 - 1:正常 2:注销 3:待审核 4:审核拒绝
- COUNTRYID int32 `json:"countryid" xorm:"COUNTRYID"` // 国家
- PROVINCEID int32 `json:"provinceid" xorm:"PROVINCEID"` // 省
- CITYID int32 `json:"cityid" xorm:"CITYID"` // 市
- DISTRICTID int32 `json:"districtid" xorm:"DISTRICTID"` // 区
- ADDRESS string `json:"address" xorm:"ADDRESS"` // 详细地址
- REMARK string `json:"remark" xorm:"REMARK"` // 审核备注
- CREATETIME time.Time `json:"createtime" xorm:"CREATETIME"` // 创建时间
- HASVIDEO int32 `json:"hasvideo" xorm:"HASVIDEO"` // 是否有视频 - 0:无 1:有
- VIDEOURL string `json:"videourl" xorm:"VIDEOURL"` // 视频地址
- CONTACTNAME string `json:"contactname" xorm:"CONTACTNAME"` // 联系人
- CONTACTNUM string `json:"contactnum" xorm:"CONTACTNUM"` // 联系电话
- PageEx `xorm:"extends"` // 页码信息
- UserId int64 `json:"-" form:"userid" binding:"required"` // 用户ID
- Status string `json:"-" form:"status"` // 仓库状态(可多项,逗号隔开) 1:正常 2:注销 3:待审核 4:审核拒绝
- IsIncludeExchange bool `json:"-" form:"isincludeexchange"` // 是返回交易所仓库
- }
- // TableName is WAREHOUSEINFO
- func (r *GZWarehouseinfo) TableName() string {
- return "WAREHOUSEINFO"
- }
- func (r *GZWarehouseinfo) calc() {
- }
- func (r *GZWarehouseinfo) buildSql() string {
- var sqlId utils.SQLVal = `SELECT t.AUTOID,
- t.WAREHOUSECODE,
- t.WAREHOUSENAME,
- t.WAREHOUSETYPE,
- t.AREAUSERID,
- t.WAREHOUSESTATUS,
- t.COUNTRYID,
- t.PROVINCEID,
- t.CITYID,
- t.DISTRICTID,
- t.ADDRESS,
- t.REMARK,
- to_char(t.CREATETIME,'yyyy-mm-dd hh24:mi:ss') CREATETIME,
- t.HASVIDEO,
- t.VIDEOURL,
- t.CONTACTNAME,
- t.CONTACTNUM
- FROM WAREHOUSEINFO t
- WHERE (t.AREAUSERID = %v) `
- sqlId.FormatParam(r.UserId)
- if r.IsIncludeExchange {
- sqlId.Join(" OR (t.AREAUSERID IS NULL) OR (t.AREAUSERID = 1)")
- }
- if len(r.Status) > 0 {
- sqlId.JoinFormat(" and (t.WAREHOUSESTATUS in (%v))", r.Status)
- }
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- // GetDataByPage 获取团队订单
- func (r *GZWarehouseinfo) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]GZWarehouseinfo, 0)
- err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // MyWRPosition 我的库存
- type MyWRPosition struct {
- ZSALLPROPERTIES string `json:"-" xorm:"ZSALLPROPERTIES" form:"zsallproperties"` // 商品(查询字段-模糊查询)
- SELLUSERNAME string `json:"sellusername" xorm:"SELLUSERNAME"` // 账户名称(机构名称)
- SELLMOBILE string `json:"sellmobile" xorm:"SELLMOBILE"` // 手机号码(加密存储)
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` //
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSCURRENCYTYPEDISPLAYUNIT string `json:"zscurrencytypedisplayunit" xorm:"ZSCURRENCYTYPEDISPLAYUNIT"` //
- WAREHOUSENAMEDISPLAY string `json:"warehousenamedisplay" xorm:"WAREHOUSENAMEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPE1DISPLAY string `json:"zscolortype1display" xorm:"ZSCOLORTYPE1DISPLAY"` //
- ZSCOLORTYPE2DISPLAY string `json:"zscolortype2display" xorm:"ZSCOLORTYPE2DISPLAY"` //
- ZSCLARITYTYPE1DISPLAY string `json:"zsclaritytype1display" xorm:"ZSCLARITYTYPE1DISPLAY"` //
- ZSCLARITYTYPE2DISPLAY string `json:"zsclaritytype2display" xorm:"ZSCLARITYTYPE2DISPLAY"` //
- ZSCUTTYPE1DISPLAY string `json:"zscuttype1display" xorm:"ZSCUTTYPE1DISPLAY"` //
- ZSCUTTYPE2DISPLAY string `json:"zscuttype2display" xorm:"ZSCUTTYPE2DISPLAY"` //
- ZSSYMMETRYTYPE1DISPLAY string `json:"zssymmetrytype1display" xorm:"ZSSYMMETRYTYPE1DISPLAY"` //
- ZSSYMMETRYTYPE2DISPLAY string `json:"zssymmetrytype2display" xorm:"ZSSYMMETRYTYPE2DISPLAY"` //
- ZSPOLISHTYPE1DISPLAY string `json:"zspolishtype1display" xorm:"ZSPOLISHTYPE1DISPLAY"` //
- ZSPOLISHTYPE2DISPLAY string `json:"zspolishtype2display" xorm:"ZSPOLISHTYPE2DISPLAY"` //
- ZSFLUORESCENCETYPE1DISPLAY string `json:"zsfluorescencetype1display" xorm:"ZSFLUORESCENCETYPE1DISPLAY"` //
- ZSFLUORESCENCETYPE2DISPLAY string `json:"zsfluorescencetype2display" xorm:"ZSFLUORESCENCETYPE2DISPLAY"` //
- ZSCERTTYPEDISPLAY string `json:"zscerttypedisplay" xorm:"ZSCERTTYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- WRSTANDARDID int64 `json:"wrstandardid" xorm:"WRSTANDARDID"` // 现货商品ID
- USERID int64 `json:"userid" xorm:"USERID"` // 用户ID
- ZSCATEGORY int32 `json:"zscategory" xorm:"ZSCATEGORY"` // 钻石分类 - 枚举”ZSCategory“
- ZSCATEGORYS string `json:"-" form:"zscategorys"` // 钻石分类
- ZSCURRENCYTYPE int32 `json:"zscurrencytype" xorm:"ZSCURRENCYTYPE"` // 货币类型 - 枚举“ZSCurrencyType”
- GOODSNO string `json:"goodsno" xorm:"GOODSNO"` // 商品编号
- WAREHOUSEID int64 `json:"warehouseid" xorm:"WAREHOUSEID" form:"warehouseid"` // 仓库ID
- MARKETPRICE string `json:"marketprice" xorm:"MARKETPRICE"` // 市场价
- IMAGEPATH string `json:"imagepath" xorm:"IMAGEPATH"` // 商品照片(相对地址)
- WRPATH string `json:"wrpath" xorm:"WRPATH"` // 仓单扫描件(相对地址)
- REMARK string `json:"remark" xorm:"REMARK"` // 备注
- PRICE float64 `json:"price" xorm:"PRICE"` // 总价(价格) - 类型:1,2,3,4,5
- WEIGHT float64 `json:"weight" xorm:"WEIGHT"` // 总重量(克拉重量) - 类型:1,2,3,4,5
- WEIGHTAVG float64 `json:"weightavg" xorm:"WEIGHTAVG"` // 平均单颗重量 - 类型:1,3
- PRICEPER string `json:"priceper" xorm:"PRICEPER"` // 克拉单价 - 类型:1,2,3,5
- ZSSHAPETYPE string `json:"zsshapetype" xorm:"ZSSHAPETYPE"` // 形状 - 枚举”ZSShapeType“ - 类型:1,2,4,5 ;(1为多个,逗号分隔)
- ZSCOLORTYPE1 int32 `json:"zscolortype1" xorm:"ZSCOLORTYPE1"` // 颜色1 - 枚举”ZSColorType“ - 类型:1,2,3,4
- ZSCOLORTYPE2 int32 `json:"zscolortype2" xorm:"ZSCOLORTYPE2"` // 颜色2 - 枚举”ZSColorType“ - 类型:1,3
- ZSCLARITYTYPE1 int32 `json:"zsclaritytype1" xorm:"ZSCLARITYTYPE1"` // 净度1 - 枚举”ZSClarityType“ - 类型:1,2,3,4,5
- ZSCLARITYTYPE2 int32 `json:"zsclaritytype2" xorm:"ZSCLARITYTYPE2"` // 净度2 - 枚举”ZSClarityType“ - 类型:1,3
- ZSCUTTYPE1 int32 `json:"zscuttype1" xorm:"ZSCUTTYPE1"` // 切工1 - 枚举”ZSCutType“ - 类型:1,2,4,5
- ZSCUTTYPE2 int32 `json:"zscuttype2" xorm:"ZSCUTTYPE2"` // 切工2 - 枚举”ZSCutType“ - 类型:1
- ZSSYMMETRYTYPE1 int32 `json:"zssymmetrytype1" xorm:"ZSSYMMETRYTYPE1"` // 对称度1 - 枚举”ZSSymmetryType“ - 类型:1,2,4,5
- ZSSYMMETRYTYPE2 int32 `json:"zssymmetrytype2" xorm:"ZSSYMMETRYTYPE2"` // 对称度2 - 枚举”ZSSymmetryType“ - 类型:1
- ZSPOLISHTYPE1 int32 `json:"zspolishtype1" xorm:"ZSPOLISHTYPE1"` // 抛光度1 - 枚举”ZSPolishType“ - 类型:1,2,4,5
- ZSPOLISHTYPE2 int32 `json:"zspolishtype2" xorm:"ZSPOLISHTYPE2"` // 抛光度2 - 枚举”ZSPolishType“ - 类型:1
- ZSFLUORESCENCETYPE1 int32 `json:"zsfluorescencetype1" xorm:"ZSFLUORESCENCETYPE1"` // 荧光1 - 枚举”ZSFluorescenceType“ - 类型:1,2,3,4,5
- ZSFLUORESCENCETYPE2 int32 `json:"zsfluorescencetype2" xorm:"ZSFLUORESCENCETYPE2"` // 荧光2 - 枚举”ZSFluorescenceType” - 类型:1,3
- SIZE1 string `json:"size1" xorm:"SIZE1"` // 尺寸1 - 类型:2,4,5
- SIZE2 string `json:"size2" xorm:"SIZE2"` // 尺寸2 - 类型:2,4,5
- SIZE3 string `json:"size3" xorm:"SIZE3"` // 尺寸3 - 类型:2,4,5
- ZSCERTTYPE int32 `json:"zscerttype" xorm:"ZSCERTTYPE"` // 证书类型 - 枚举”ZSCertType“ - 类型:2,4,5
- CERNO string `json:"cerno" xorm:"CERNO"` // 证书编号 - 类型:2,4,5
- ZSCRYSTALTYPE string `json:"zscrystaltype" xorm:"ZSCRYSTALTYPE"` // 晶型范围 - 枚举“ZSCrystalType“ - 类型:3, 多个,逗号分隔
- CPCERTNO string `json:"cpcertno" xorm:"CPCERTNO"` // 金伯利证书编号 - 类型:3
- ORIGIN string `json:"origin" xorm:"ORIGIN"` // 原产地 - 类型:3
- KPWEIGHT string `json:"kpweight" xorm:"KPWEIGHT"` // 金伯利证书重量 - 类型:3
- KPPATH string `json:"kppath" xorm:"KPPATH"` // 金伯利证书图片(相对地址) - 类型:3
- ZSSTYLETYPE int32 `json:"zsstyletype" xorm:"ZSSTYLETYPE"` // 款式 - 类型:4
- STONEDESC string `json:"stonedesc" xorm:"STONEDESC"` // 配石描述 - 类型:4
- SETTINGMATERIAL string `json:"settingmaterial" xorm:"SETTINGMATERIAL"` // 镶嵌材料 - 类型:4
- ZSCZCOLOR1TYPE int32 `json:"zsczcolor1type" xorm:"ZSCZCOLOR1TYPE"` // 彩钻颜色1 - 枚举”ZSCZColor1Type“ - 类型:5
- ZSCZCOLOR2TYPE int32 `json:"zsczcolor2type" xorm:"ZSCZCOLOR2TYPE"` // 彩钻颜色2 - 枚举”ZSCZColor2Type“ - 类型:5
- ZSCZCOLOR3TYPE int32 `json:"zsczcolor3type" xorm:"ZSCZCOLOR3TYPE"` // 彩钻颜色3 - 枚举”ZSCZColor3Type“ - 类型:5
- ISVALID int32 `json:"isvalid" xorm:"ISVALID"` // 是否有效 - 0:无效 1:有效
- QTY int64 `json:"-" xorm:"QTY"`
- FREEZERQTY int64 `json:"-" xorm:"FREEZERQTY"`
- FTOTALQTY float64 `json:"ftotalqty"` // 库存数量:WRPosition表:TOTALQTY /100 , 保留两位小数
- FFREEZEQTY float64 `json:"ffreezeqty"` // 冻结数量:WRPosition表:FREEZEQTY/100 , 保留两位小数
- LADINGBILLID string `json:"ladingbillid" xorm:"LADINGBILLID"` // 提单ID(208+Unix秒时间戳(10位)+xxxxxx)
- SUBNUM int32 `json:"subnum" xorm:"SUBNUM"` // 提单子单号
- WRTRADEORDERID string `json:"wrtradeorderid" xorm:"WRTRADEORDERID1" form:"wrtradeorderid"` // 仓单贸易委托单ID(320+Unix秒时间戳(10位)+xxxxxx)
- PageEx `xorm:"extends"` // 页码信息
- WRUSERID int64 `json:"wruserid" xorm:"WRUSERID" form:"wruserid" binding:"required"` // 登录用户ID
- MARKETFLAG int `json:"marketflag" form:"marketflag"` // 是否上架,0-全部 1-是 2-否
- }
- func (r *MyWRPosition) calc() {
- if r.QTY != 0 {
- a := SFLOAT64(float64(r.QTY) / 100)
- a.Round(2)
- r.FTOTALQTY = a.Float64()
- }
- if r.FREEZERQTY != 0 {
- a := SFLOAT64(float64(r.FREEZERQTY) / 100)
- a.Round(2)
- r.FFREEZEQTY = a.Float64()
- }
- if r.FREEZERQTY > 0 {
- r.MARKETFLAG = 1
- } else {
- r.MARKETFLAG = 2
- }
- }
- func (r *MyWRPosition) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- t.QTY,
- t.FREEZERQTY,
- to_char(t.LADINGBILLID) LADINGBILLID,
- t.SUBNUM,
- to_char(od.WRTRADEORDERID) WRTRADEORDERID1,
- wr.*
- FROM WRHoldLB t
- INNER JOIN WRFactorType ft ON t.wrfactortypeid = ft.wrfactortypeid
- INNER JOIN View_GZ_WRStandard_Ex_Query wr ON ft.wrstandardid = wr.wrstandardid
- LEFT JOIN WRTrade_OrderDetail od ON od.wrstandardid = wr.wrstandardid and od.wrtradeorderstatus in (3,7)
- WHERE t.qty > 0 AND t.userid = %v
- `
- sqlId.FormatParam(r.WRUSERID)
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND wr.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.AndLike("wr.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.AndEx("wr.WAREHOUSEID", r.WAREHOUSEID, r.WAREHOUSEID > 0)
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyWRPosition) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]MyWRPosition, 0)
- err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // BuyOrder 求购大厅委托单
- type BuyOrder struct {
- ZSALLPROPERTIES string `json:"-" xorm:"ZSALLPROPERTIES" form:"zsallproperties"` // 商品(查询字段-模糊查询)
- ZSTABLEDISPLAY string `json:"zstabledisplay" xorm:"ZSTABLEDISPLAY"` // 求购信息
- BUYUSERNAME string `json:"buyusername" xorm:"BUYUSERNAME" form:"buyusername"` // 买方
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` //
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPEDISPLAY string `json:"zscolortypedisplay" xorm:"ZSCOLORTYPEDISPLAY"` //
- ZSCLARITYTYPEDISPLAY string `json:"zsclaritytypedisplay" xorm:"ZSCLARITYTYPEDISPLAY"` //
- ZSCUTTYPEDISPLAY string `json:"zscuttypedisplay" xorm:"ZSCUTTYPEDISPLAY"` //
- ZSSYMMETRYTYPEDISPLAY string `json:"zssymmetrytypedisplay" xorm:"ZSSYMMETRYTYPEDISPLAY"` //
- ZSPOLISHTYPEDISPLAY string `json:"zspolishtypedisplay" xorm:"ZSPOLISHTYPEDISPLAY"` //
- ZSFLUORESCENCETYPEDISPLAY string `json:"zsfluorescencetypedisplay" xorm:"ZSFLUORESCENCETYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- WAREHOUSEINFOSDISPLAY string `json:"warehouseinfosdisplay" xorm:"WAREHOUSEINFOSDISPLAY"` //
- WRTRADEORDERID string `json:"wrtradeorderid" xorm:"WRTRADEORDERID1" form:"wrtradeorderid"` // [委托单号]买委托单ID(320+Unix秒时间戳(10位)+xxxxxx)
- USERID int64 `json:"userid" xorm:"USERID"` // 用户ID
- ACCOUNTID int64 `json:"accountid" xorm:"ACCOUNTID"` // 资金账户ID
- WRTRADEORDERSTATUS int32 `json:"wrtradeorderstatus" xorm:"WRTRADEORDERSTATUS"` // 委托状态 - 参考枚举'WRTradeOrderStatus' - 1:委托请求 2:待冻结 3:委托成功 4:委托失败 5:配对成功 6:已撤 7:部成 8:已成 9:部成部撤 10:成交失败 11:委托拒绝 12:经过摘牌(先摘后挂专用) 13:冻结成功(通道交易专用) 14:通道已撤 15:通道部成部撤 16:成交失败违约(荷兰式竞拍专用) 17:冻结PD成功 18:冻结PD失败 19:冻结能量成功 20:冻结能量失败 21:预约已报价 22:过期未付 23:优惠券处理中 24:仓单生成失败 25:首付扣款失败 26:履约失败 27:撤单解冻贷款失败WRTrade_OrderDetail、
- VALIDTIME string `json:"validtime" xorm:"VALIDTIME"` // 有效期限
- ORDERTIME string `json:"ordertime" xorm:"ORDERTIME"` // 委托时间
- PERFORMANCETEMPLATEID int64 `json:"performancetemplateid" xorm:"PERFORMANCETEMPLATEID"` // 履约计划模板ID
- ZSCATEGORY int32 `json:"zscategory" xorm:"ZSCATEGORY"` // 钻石分类 - 枚举”ZSCategory“
- ZSCATEGORYS string `json:"-" form:"zscategorys"` // 钻石分类
- ZSCURRENCYTYPE string `json:"zscurrencytype" xorm:"ZSCURRENCYTYPE"` // 货币类型 - 多个, 逗号分隔
- ZSSHAPETYPE string `json:"zsshapetype" xorm:"ZSSHAPETYPE"` // 形状 - 多个, 逗号分隔
- ZSCOLORTYPE string `json:"zscolortype" xorm:"ZSCOLORTYPE"` // 颜色 - 两个, 逗号分隔
- ZSCLARITYTYPE string `json:"zsclaritytype" xorm:"ZSCLARITYTYPE"` // 净度 - 两个, 逗号分隔
- ZSCUTTYPE string `json:"zscuttype" xorm:"ZSCUTTYPE"` // 切工 - 两个, 逗号分隔
- ZSSYMMETRYTYPE string `json:"zssymmetrytype" xorm:"ZSSYMMETRYTYPE"` // 对称度 - 两个, 逗号分隔
- ZSPOLISHTYPE string `json:"zspolishtype" xorm:"ZSPOLISHTYPE"` // 抛光度 - 两个, 逗号分隔
- ZSFLUORESCENCETYPE string `json:"zsfluorescencetype" xorm:"ZSFLUORESCENCETYPE"` // 荧光 - 多个, 逗号分隔
- ZSSIZE string `json:"zssize" xorm:"ZSSIZE"` // 尺寸 - 两个小数, 逗号分隔
- ZSCRYSTALTYPE string `json:"zscrystaltype" xorm:"ZSCRYSTALTYPE"` // 晶型 - 多个,逗号分隔
- ORIGIN string `json:"origin" xorm:"ORIGIN"` // 原产地
- ZSSTYLETYPE string `json:"zsstyletype" xorm:"ZSSTYLETYPE"` // 款式 - 多个, 逗号分隔
- ZSCZCOLOR1TYPE string `json:"zsczcolor1type" xorm:"ZSCZCOLOR1TYPE"` // 彩钻颜色1, 逗号分隔
- ZSCZCOLOR2TYPE string `json:"zsczcolor2type" xorm:"ZSCZCOLOR2TYPE"` // 彩钻颜色2, 逗号分隔
- ZSCZCOLOR3TYPE string `json:"zsczcolor3type" xorm:"ZSCZCOLOR3TYPE"` // 彩钻颜色3, 逗号分隔
- REMARK string `json:"remark" xorm:"REMARK"` // 备注
- WAREHOUSEIDS string `json:"warehouseids" xorm:"WAREHOUSEIDS"` // 仓库ID - 多个, 逗号分隔
- MARKETID int32 `json:"marketid" xorm:"MARKETID"` // 市场ID
- PageEx `xorm:"extends"` // 页码信息
- }
- func (r *BuyOrder) calc() {
- }
- func (r *BuyOrder) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.WRTRADEORDERSTATUS,
- to_char(t.VALIDTIME, 'yyyy-mm-dd') VALIDTIME,
- to_char(t.ORDERTIME, 'yyyy-mm-dd hh24:mi:ss') ORDERTIME,
- t.PERFORMANCETEMPLATEID,
- q.*
- FROM WRTrade_OrderDetail t
- INNER JOIN View_GZ_BuyOrderDetail_Query q ON t.wrtradeorderid = q.wrtradeorderid
- WHERE t.marketid=67201 AND t.BuyOrSell = 0 AND t.WRTradeOrderStatus IN (3,7)
- `
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND q.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.AndLike("q.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.AndEx("q.WRTRADEORDERID", r.WRTRADEORDERID, r.WRTRADEORDERID != "")
- sqlId.AndLike("q.BUYUSERNAME", r.BUYUSERNAME)
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *BuyOrder) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]BuyOrder, 0)
- err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // SellOrderQueryReq 钻石搜索入参
- type SellOrderQueryReq struct {
- ZSCATEGORY int32 `json:"zscategory" binding:"required"` // 钻石分类 - 枚举”ZSCategory“
- ZSCURRENCYTYPE []string `json:"zscurrencytype"` // 货币类型 - 枚举“ZSCurrencyType”
- WAREHOUSEID int64 `json:"warehouseid"` // 仓库ID
- WEIGHT1 float64 `json:"weight1"` // 总重量(克拉重量)-从
- WEIGHT2 float64 `json:"weight2"` // 总重量(克拉重量)-至
- WEIGHTAVG1 float64 `json:"weightavg1"` // 平均单颗重量-从
- WEIGHTAVG2 float64 `json:"weightavg2"` // 平均单颗重量-至
- ZSSHAPETYPE []string `json:"zsshapetype"` // 形状 - 枚举”ZSShapeType“ - 类型:1,2,4,5 ;(1为多个,逗号分隔)
- ZSCOLORTYPE []int32 `json:"zscolortype"` // 颜色
- ZSCLARITYTYPE []int32 `json:"zsclaritytype"` // 净度
- ZSCUTTYPE []int32 `json:"zscuttype"` // 切工
- ZSSYMMETRYTYPE []int32 `json:"zssymmetrytype"` // 对称度
- ZSPOLISHTYPE []int32 `json:"zspolishtype"` // 抛光度
- ZSFLUORESCENCETYPE []int32 `json:"zsfluorescencetype"` // 荧光
- ZSCERTTYPE []string `json:"zscerttype"` // 证书类型
- ORIGIN string `json:"origin"` // 原产地
- ZSSTYLETYPE []string `json:"zsstyletype"` // 款式
- ZSCZCOLOR1TYPE []string `json:"zsczcolor1type"` // 彩钻颜色1
- PageJosn // 分页
- }
- // SellOrder 出售大厅委托单
- type SellOrder struct {
- ZSALLPROPERTIES string `json:"-" xorm:"ZSALLPROPERTIES" form:"zsallproperties"` // 商品(查询字段-模糊查询)
- SELLUSERNAME string `json:"sellusername" xorm:"SELLUSERNAME" form:"sellusername"` // 卖方(查询字段-模糊查询)
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` // 钻石分类 - 描述
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSCURRENCYTYPEDISPLAYUNIT string `json:"zscurrencytypedisplayunit" xorm:"ZSCURRENCYTYPEDISPLAYUNIT"` //
- WAREHOUSENAMEDISPLAY string `json:"warehousenamedisplay" xorm:"WAREHOUSENAMEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPE1DISPLAY string `json:"zscolortype1display" xorm:"ZSCOLORTYPE1DISPLAY"` //
- ZSCOLORTYPE2DISPLAY string `json:"zscolortype2display" xorm:"ZSCOLORTYPE2DISPLAY"` //
- ZSCLARITYTYPE1DISPLAY string `json:"zsclaritytype1display" xorm:"ZSCLARITYTYPE1DISPLAY"` //
- ZSCLARITYTYPE2DISPLAY string `json:"zsclaritytype2display" xorm:"ZSCLARITYTYPE2DISPLAY"` //
- ZSCUTTYPE1DISPLAY string `json:"zscuttype1display" xorm:"ZSCUTTYPE1DISPLAY"` //
- ZSCUTTYPE2DISPLAY string `json:"zscuttype2display" xorm:"ZSCUTTYPE2DISPLAY"` //
- ZSSYMMETRYTYPE1DISPLAY string `json:"zssymmetrytype1display" xorm:"ZSSYMMETRYTYPE1DISPLAY"` //
- ZSSYMMETRYTYPE2DISPLAY string `json:"zssymmetrytype2display" xorm:"ZSSYMMETRYTYPE2DISPLAY"` //
- ZSPOLISHTYPE1DISPLAY string `json:"zspolishtype1display" xorm:"ZSPOLISHTYPE1DISPLAY"` //
- ZSPOLISHTYPE2DISPLAY string `json:"zspolishtype2display" xorm:"ZSPOLISHTYPE2DISPLAY"` //
- ZSFLUORESCENCETYPE1DISPLAY string `json:"zsfluorescencetype1display" xorm:"ZSFLUORESCENCETYPE1DISPLAY"` //
- ZSFLUORESCENCETYPE2DISPLAY string `json:"zsfluorescencetype2display" xorm:"ZSFLUORESCENCETYPE2DISPLAY"` //
- ZSCERTTYPEDISPLAY string `json:"zscerttypedisplay" xorm:"ZSCERTTYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- MARKETPRICE string `json:"marketprice" xorm:"MARKETPRICE"` //
- IMAGEPATH string `json:"imagepath" xorm:"IMAGEPATH"` //
- WRPATH string `json:"wrpath" xorm:"WRPATH"` //
- REMARK string `json:"remark" xorm:"REMARK"` //
- PRICEPER string `json:"priceper" xorm:"PRICEPER"` //
- SIZE1 string `json:"size1" xorm:"SIZE1"` //
- SIZE2 string `json:"size2" xorm:"SIZE2"` //
- SIZE3 string `json:"size3" xorm:"SIZE3"` //
- CERNO string `json:"cerno" xorm:"CERNO"` //
- ZSCRYSTALTYPE string `json:"zscrystaltype" xorm:"ZSCRYSTALTYPE"` //
- CPCERTNO string `json:"cpcertno" xorm:"CPCERTNO"` //
- KPWEIGHT string `json:"kpweight" xorm:"KPWEIGHT"` //
- KPPATH string `json:"kppath" xorm:"KPPATH"` //
- STONEDESC string `json:"stonedesc" xorm:"STONEDESC"` //
- SETTINGMATERIAL string `json:"settingmaterial" xorm:"SETTINGMATERIAL"` //
- PRICE float64 `json:"price" xorm:"PRICE"` // 价格
- SIZEDISPLAY string `json:"sizedisplay" xorm:"SIZEDISPLAY"` // 尺寸
- WRSTANDARDID int64 `json:"wrstandardid" xorm:"WRSTANDARDID"` // 现货商品ID
- USERID int64 `json:"userid" xorm:"USERID"` // 用户ID
- ZSCATEGORY int32 `json:"zscategory" xorm:"ZSCATEGORY"` // 钻石分类 - 枚举”ZSCategory“
- ZSCATEGORYS string `json:"-" form:"zscategorys"` // 钻石分类
- ZSCURRENCYTYPE int32 `json:"zscurrencytype" xorm:"ZSCURRENCYTYPE"` // 货币类型 - 枚举“ZSCurrencyType”
- GOODSNO string `json:"goodsno" xorm:"GOODSNO"` // 商品编号
- IsQueryDiamond bool // 是否钻石查询
- ZSCURRENCYTYPE_S []string `json:"-"` // 货币类型 - 枚举“ZSCurrencyType”
- WAREHOUSEID int64 `json:"-"` // 仓库ID
- WEIGHT float64 `json:"-"` // 总重量(克拉重量) - 类型:1,2,3,4,5
- WEIGHT_END float64 `json:"-"` // 总重量(克拉重量) - 类型:1,2,3,4,5
- WEIGHTAVG float64 `json:"-"` // 平均单颗重量 - 类型:1,3
- WEIGHTAVG_END float64 `json:"-"` // 平均单颗重量 - 类型:1,3
- ZSSHAPETYPE []string `json:"-"` // 形状 - 枚举”ZSShapeType“ - 类型:1,2,4,5 ;(1为多个,逗号分隔)
- ZSCOLORTYPE1 int32 `json:"-"` // 颜色1 - 枚举”ZSColorType“ - 类型:1,2,3,4
- ZSCOLORTYPE2 int32 `json:"-"` // 颜色2 - 枚举”ZSColorType“ - 类型:1,3
- ZSCOLORTYPE []int32 `json:"-"` // 颜色
- ZSCLARITYTYPE1 int32 `json:"-"` // 净度1 - 枚举”ZSClarityType“ - 类型:1,2,3,4,5
- ZSCLARITYTYPE2 int32 `json:"-"` // 净度2 - 枚举”ZSClarityType“ - 类型:1,3
- ZSCLARITYTYPE []int32 `json:"-"` // 净度
- ZSCUTTYPE1 int32 `json:"-"` // 切工1 - 枚举”ZSCutType“ - 类型:1,2,4,5
- ZSCUTTYPE2 int32 `json:"-"` // 切工2 - 枚举”ZSCutType“ - 类型:1
- ZSCUTTYPE []int32 `json:"-"` // 切工
- ZSSYMMETRYTYPE1 int32 `json:"-"` // 对称度1 - 枚举”ZSSymmetryType“ - 类型:1,2,4,5
- ZSSYMMETRYTYPE2 int32 `json:"-"` // 对称度2 - 枚举”ZSSymmetryType“ - 类型:1
- ZSSYMMETRYTYPE []int32 `json:"-"` // 对称度
- ZSPOLISHTYPE1 int32 `json:"-"` // 抛光度1 - 枚举”ZSPolishType“ - 类型:1,2,4,5
- ZSPOLISHTYPE2 int32 `json:"-"` // 抛光度2 - 枚举”ZSPolishType“ - 类型:1
- ZSPOLISHTYPE []int32 `json:"-"` // 抛光度
- ZSFLUORESCENCETYPE1 int32 `json:"-"` // 荧光1 - 枚举”ZSFluorescenceType“ - 类型:1,2,3,4,5
- ZSFLUORESCENCETYPE2 int32 `json:"-"` // 荧光2 - 枚举”ZSFluorescenceType” - 类型:1,3
- ZSFLUORESCENCETYPE []int32 `json:"-"` // 荧光
- ZSCERTTYPE []string `json:"-"` // 证书类型
- ORIGIN string `json:"-"` // 原产地 - 类型:3
- ZSSTYLETYPE []string `json:"-"` // 款式 - 类型:4
- ZSCZCOLOR1TYPE []string `json:"-" xorm:"ZSCZCOLOR1TYPE"` // 彩钻颜色1 - 枚举”ZSCZColor1Type“ - 类型:5
- WRTRADEORDERID string `json:"wrtradeorderid" xorm:"WRTRADEORDERID1" form:"wrtradeorderid"` // 仓单贸易委托单ID(320+Unix秒时间戳(10位)+xxxxxx)
- TRADEDATE string `json:"tradedate" xorm:"TRADEDATE"` // 交易日(yyyyMMdd)
- WRTRADETYPE int32 `json:"wrtradetype" xorm:"WRTRADETYPE"` // 仓单贸易类型 - 1:挂牌 2:摘牌 3:提货卖(文化中国) 4:提货买(文化中国)
- BUYORSELL int32 `json:"buyorsell" xorm:"BUYORSELL"` // 买卖 - 0:买 1:卖
- RELATEDWRTRADEORDERID int64 `json:"relatedwrtradeorderid" xorm:"RELATEDWRTRADEORDERID"` // 关联委托单号(摘牌委托关联挂牌委托单ID)
- MARKETID int64 `json:"marketid" xorm:"MARKETID"` // 市场ID
- ACCOUNTID int64 `json:"accountid" xorm:"ACCOUNTID"` // 资金账号
- WRFACTORTYPEID int64 `json:"wrfactortypeid" xorm:"WRFACTORTYPEID"` // 仓单要素类型ID/商品ID(77)
- ORDERQTY int64 `json:"-" xorm:"ORDERQTY"` // 委托数量
- TRADEQTY int64 `json:"-" xorm:"TRADEQTY"` // 成交数量
- CANCELQTY int64 `json:"cancelqty" xorm:"CANCELQTY"` // 撤销数量
- WRPRICETYPE int32 `json:"wrpricetype" xorm:"WRPRICETYPE"` // 价格方式 - 1:固定价 2-浮动价 - [挂牌]
- FIXEDPRICE float64 `json:"fixedprice" xorm:"FIXEDPRICE"` // [克拉单价]固定价格 - [挂牌]
- ISSPECIFIED int32 `json:"isspecified" xorm:"ISSPECIFIED"` // 是否指定对手 - 0:不指定 1:指定好友(贸易圈) 2:指定对手 - [挂牌]
- PRICEFACTOR float64 `json:"pricefactor" xorm:"PRICEFACTOR"` // 价格系数(浮动价时填写) - [挂牌]
- PRICEMOVE float64 `json:"pricemove" xorm:"PRICEMOVE"` // 升贴水(浮动价时填写) - [挂牌]
- FIRSTRATIO float64 `json:"firstratio" xorm:"FIRSTRATIO"` // 首付比率 - [挂牌时指定,摘牌时使用]
- WRTRANSFERUSERID int64 `json:"wrtransferuserid" xorm:"WRTRANSFERUSERID"` // 仓单受让用户 - [摘牌]
- TRADEPRICE float64 `json:"tradeprice" xorm:"TRADEPRICE"` // 成交价格 - [摘牌] (浮动价 ((商品1价格*商品1价格系数+升贴水)* 商品1重量系数 + 商品2价格*商品2价格系数+商品2升贴水)* 商品2重量系数 ...)* 委托单价格系数 + 委托单升贴水)
- FREEZEFIRSTAMOUNT float64 `json:"freezefirstamount" xorm:"FREEZEFIRSTAMOUNT"` // 冻结首付金额 - [摘牌]
- UNFREEZEFIRSTAMOUNT float64 `json:"unfreezefirstamount" xorm:"UNFREEZEFIRSTAMOUNT"` // 解冻首付金额 - [摘牌]
- PERFORMANCETEMPLATEID int64 `json:"performancetemplateid" xorm:"PERFORMANCETEMPLATEID"` // 履约计划模板ID
- VALIDTYPE int32 `json:"validtype" xorm:"VALIDTYPE"` // 有效类型 - 1当日有效 2本周有效 3指定日期有效 4一直有效
- VALIDTIME time.Time `json:"validtime" xorm:"VALIDTIME"` // 有效期限
- ORDERTIME string `json:"ordertime" xorm:"ORDERTIME1"` // 委托时间
- CANCELTIME time.Time `json:"canceltime" xorm:"CANCELTIME"` // 撤销时间
- WRTRADEORDERSTATUS int32 `json:"wrtradeorderstatus" xorm:"WRTRADEORDERSTATUS"` // 委托状态 - 参考枚举'WRTradeOrderStatus' - 1:委托请求 2:待冻结 3:委托成功 4:委托失败 5:配对成功 6:已撤 7:部成 8:已成 9:部成部撤 10:成交失败 11:委托拒绝 12:经过摘牌(先摘后挂专用) 13:冻结成功(通道交易专用) 14:通道已撤 15:通道部成部撤 16:成交失败违约(荷兰式竞拍专用) 17:冻结PD成功 18:冻结PD失败 19:冻结能量成功 20:冻结能量失败 21:预约已报价 22:过期未付 23:优惠券处理中 24:仓单生成失败 25:首付扣款失败 26:履约失败 27:撤单解冻贷款失败
- CLIENTTICKET string `json:"-" xorm:"CLIENTTICKET"` // 客户端流水号
- ORDERSRC int32 `json:"-" xorm:"ORDERSRC"` // 委托来源 - 1:客户端 2:管理端 3:风控服务 4:交割服务 5:交易服务 6:交易日结
- CLIENTTYPE int32 `json:"-" xorm:"CLIENTTYPE"` // 客户端类型 - 0:保留为未填终端类型 1:PC管理端 2:PC交易端 3:手机客户端_安卓 4:网页客户端 5:微信客户端 6:手机客户端_苹果 7:网上开户客户端 8:无效终端编号 9:报价终端(中江)
- UUID string `json:"uuid" xorm:"UUID"` // 发起端唯一id
- CLIENTORDERTIME time.Time `json:"clientordertime" xorm:"CLIENTORDERTIME"` // 客户端委托时间
- RETCODE int32 `json:"retcode" xorm:"RETCODE"` // 错误代码
- OPERATORID int64 `json:"-" xorm:"OPERATORID"` // 操作员ID
- PRICEDISPLAYMODE int32 `json:"-" xorm:"PRICEDISPLAYMODE"` // 浮动价显示方式 - 1:合并显示 2:分开显示1: 价格显示一个值 :(商品拟合价*价格系统+升贴水)2: 价格显示两个值:(商品拟合价*价格系统) 、 升贴水
- FREEZEMARGIN float64 `json:"freezemargin" xorm:"FREEZEMARGIN"` // 冻结保证金
- UNFREEZEMARGIN float64 `json:"unfreezemargin" xorm:"UNFREEZEMARGIN"` // 解冻保证金
- FREEZECHARGE float64 `json:"freezecharge" xorm:"FREEZECHARGE"` // 冻结手续费
- UNFREEZECHARGE float64 `json:"unfreezecharge" xorm:"UNFREEZECHARGE"` // 解冻手续费
- MARGINALGORITHM int32 `json:"marginalgorithm" xorm:"MARGINALGORITHM"` // 保证金方式 - 1:比率 2:固定
- MARGINVALUE float64 `json:"marginvalue" xorm:"MARGINVALUE"` // 保证金设置值
- CHARGEALGORITHM int32 `json:"chargealgorithm" xorm:"CHARGEALGORITHM"` // 手续费收取方式 1:比率 2:固定
- CHARGEALGORITHMVALUE float64 `json:"chargealgorithmvalue" xorm:"CHARGEALGORITHMVALUE"` // 手续费设置值(交易所部分)
- CHARGEALGORITHMVALUE2 float64 `json:"chargealgorithmvalue2" xorm:"CHARGEALGORITHMVALUE2"` // 手续费设置值(会员部分)
- CANBARGAIN int32 `json:"canbargain" xorm:"CANBARGAIN"` // 是否可议价 - 0:不可 1:可
- WRBARGAINID int64 `json:"wrbargainid" xorm:"WRBARGAINID"` // 议价申请单ID
- ATTACHMENT1 string `json:"attachment1" xorm:"ATTACHMENT1"` // 附件1
- ATTACHMENT2 string `json:"attachment2" xorm:"ATTACHMENT2"` // 附件2
- APPLYID int64 `json:"applyid" xorm:"APPLYID"` // 申请单ID
- EXCHANGERATE float64 `json:"exchangerate" xorm:"EXCHANGERATE"` // 汇率[67]
- ORDERAMOUNT float64 `json:"orderamount" xorm:"ORDERAMOUNT"` // 挂牌金额[账户] [67]= OrderQty * FixedPrice * ExchangeRate /100
- TOTALQTY float64 `json:"totalqty" xorm:"TOTALQTY"` // 总重量
- REMAINQTY float64 `json:"remainqty" xorm:"REMAINQTY"` // 剩余重量
- PageEx `xorm:"extends"` // 页码信息
- }
- func (r *SellOrder) calc() {
- }
- // buildSql 出售大厅
- func (r *SellOrder) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- (t.ORDERQTY / 100) TOTALQTY,
- ((t.ORDERQTY - t.TRADEQTY) / 100) REMAINQTY,
- q.ZSCATEGORYDISPLAY,
- q.SELLUSERNAME,
- q.ZSCATEGORY,
- q.ZSCURRENCYTYPE,
- q.GOODSNO,
- q.ZSCURRENCYTYPEDISPLAY ,
- q.ZSCURRENCYTYPEDISPLAYUNIT ,
- q.WAREHOUSENAMEDISPLAY ,
- q.ZSSHAPETYPEDISPLAY ,
- q.ZSCOLORTYPE1DISPLAY ,
- q.ZSCOLORTYPE2DISPLAY ,
- q.ZSCLARITYTYPE1DISPLAY ,
- q.ZSCLARITYTYPE2DISPLAY ,
- q.ZSCUTTYPE1DISPLAY ,
- q.ZSCUTTYPE2DISPLAY ,
- q.ZSSYMMETRYTYPE1DISPLAY ,
- q.ZSSYMMETRYTYPE2DISPLAY ,
- q.ZSPOLISHTYPE1DISPLAY ,
- q.ZSPOLISHTYPE2DISPLAY ,
- q.ZSFLUORESCENCETYPE1DISPLAY,
- q.ZSFLUORESCENCETYPE2DISPLAY,
- q.ZSCERTTYPEDISPLAY ,
- q.ZSCRYSTALTYPEDISPLAY ,
- q.ZSSTYLETYPEDISPLAY ,
- q.ZSCZCOLOR1TYPEDISPLAY ,
- q.ZSCZCOLOR2TYPEDISPLAY ,
- q.ZSCZCOLOR3TYPEDISPLAY ,
- q.MARKETPRICE ,
- q.IMAGEPATH ,
- q.WRPATH ,
- q.REMARK ,
- q.PRICEPER ,
- q.SIZE1 ,
- q.SIZE2 ,
- q.SIZE3 ,
- q.CERNO ,
- q.ZSCRYSTALTYPE ,
- q.CPCERTNO ,
- q.KPWEIGHT ,
- q.KPPATH ,
- q.STONEDESC ,
- q.SETTINGMATERIAL ,
- q.PRICE,
- CASE WHEN
- q.SIZE1 IS NOT NULL AND q.SIZE2 IS NOT NULL AND q.SIZE2 IS NOT NULL THEN q.SIZE1 || '*' || q.SIZE2 || '*' || q.SIZE3
- ELSE q.SIZE1
- END AS SIZEDISPLAY,
- to_char(t.ORDERTIME, 'yyyy-mm-dd hh24:mi:ss') ORDERTIME1,
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.WRTRADEORDERID ,
- t.TRADEDATE ,
- t.WRTRADETYPE ,
- t.BUYORSELL ,
- t.RELATEDWRTRADEORDERID,
- t.MARKETID ,
- t.ACCOUNTID ,
- t.WRFACTORTYPEID ,
- t.ORDERQTY ,
- t.TRADEQTY ,
- t.CANCELQTY ,
- t.WRPRICETYPE ,
- t.FIXEDPRICE ,
- t.ISSPECIFIED ,
- t.PRICEFACTOR ,
- t.PRICEMOVE ,
- t.FIRSTRATIO ,
- t.WRTRANSFERUSERID ,
- t.TRADEPRICE ,
- t.FREEZEFIRSTAMOUNT ,
- t.UNFREEZEFIRSTAMOUNT ,
- t.PERFORMANCETEMPLATEID,
- t.VALIDTYPE ,
- t.VALIDTIME ,
- t.ORDERTIME ,
- t.CANCELTIME ,
- t.WRTRADEORDERSTATUS ,
- t.CLIENTTICKET ,
- t.ORDERSRC ,
- t.CLIENTTYPE ,
- t.UUID ,
- t.CLIENTORDERTIME ,
- t.RETCODE ,
- t.OPERATORID ,
- t.PRICEDISPLAYMODE ,
- t.FREEZEMARGIN ,
- t.UNFREEZEMARGIN ,
- t.FREEZECHARGE ,
- t.UNFREEZECHARGE ,
- t.MARGINALGORITHM ,
- t.MARGINVALUE ,
- t.CHARGEALGORITHM ,
- t.CHARGEALGORITHMVALUE ,
- t.CHARGEALGORITHMVALUE2,
- t.CANBARGAIN ,
- t.WRBARGAINID ,
- t.ATTACHMENT1 ,
- t.ATTACHMENT2 ,
- t.APPLYID ,
- t.EXCHANGERATE ,
- t.ORDERAMOUNT ,
- t.USERID
- FROM WRTrade_OrderDetail t
- INNER JOIN View_GZ_WRStandard_Ex_Query q ON t.wrstandardid = q.wrstandardid
- WHERE t.marketid=67201 AND t.BuyOrSell = 1 AND t.WRTradeOrderStatus IN (3,7)
- `
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND q.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.AndLike("q.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.AndEx("t.WRTRADEORDERID", r.WRTRADEORDERID, r.WRTRADEORDERID != "")
- sqlId.AndLike("q.SELLUSERNAME", r.SELLUSERNAME)
- sqlId.OrderByDesc("t.WRTRADEORDERID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- // buildQueryDiamond 钻石搜索
- func (r *SellOrder) buildQueryDiamond() string {
- var sqlId utils.SQLVal = `
- SELECT
- (t.ORDERQTY / 100) TOTALQTY,
- ((t.ORDERQTY - t.TRADEQTY) / 100) REMAINQTY,
- q.ZSCATEGORYDISPLAY,
- q.SELLUSERNAME,
- q.ZSCATEGORY,
- q.ZSCURRENCYTYPE,
- q.GOODSNO,
- q.ZSCURRENCYTYPEDISPLAY ,
- q.ZSCURRENCYTYPEDISPLAYUNIT ,
- q.WAREHOUSENAMEDISPLAY ,
- q.ZSSHAPETYPEDISPLAY ,
- q.ZSCOLORTYPE1DISPLAY ,
- q.ZSCOLORTYPE2DISPLAY ,
- q.ZSCLARITYTYPE1DISPLAY ,
- q.ZSCLARITYTYPE2DISPLAY ,
- q.ZSCUTTYPE1DISPLAY ,
- q.ZSCUTTYPE2DISPLAY ,
- q.ZSSYMMETRYTYPE1DISPLAY ,
- q.ZSSYMMETRYTYPE2DISPLAY ,
- q.ZSPOLISHTYPE1DISPLAY ,
- q.ZSPOLISHTYPE2DISPLAY ,
- q.ZSFLUORESCENCETYPE1DISPLAY,
- q.ZSFLUORESCENCETYPE2DISPLAY,
- q.ZSCERTTYPEDISPLAY ,
- q.ZSCRYSTALTYPEDISPLAY ,
- q.ZSSTYLETYPEDISPLAY ,
- q.ZSCZCOLOR1TYPEDISPLAY ,
- q.ZSCZCOLOR2TYPEDISPLAY ,
- q.ZSCZCOLOR3TYPEDISPLAY ,
- q.MARKETPRICE ,
- q.IMAGEPATH ,
- q.WRPATH ,
- q.REMARK ,
- q.PRICEPER ,
- q.SIZE1 ,
- q.SIZE2 ,
- q.SIZE3 ,
- q.CERNO ,
- q.ZSCRYSTALTYPE ,
- q.CPCERTNO ,
- q.KPWEIGHT ,
- q.KPPATH ,
- q.STONEDESC ,
- q.SETTINGMATERIAL ,
- q.PRICE,
- to_char(t.ORDERTIME, 'yyyy-mm-dd hh24:mi:ss') ORDERTIME1,
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.TRADEDATE ,
- t.WRTRADETYPE ,
- t.BUYORSELL ,
- t.RELATEDWRTRADEORDERID,
- t.MARKETID ,
- t.ACCOUNTID ,
- t.WRFACTORTYPEID ,
- t.ORDERQTY ,
- t.TRADEQTY ,
- t.CANCELQTY ,
- t.WRPRICETYPE ,
- t.FIXEDPRICE ,
- t.ISSPECIFIED ,
- t.PRICEFACTOR ,
- t.PRICEMOVE ,
- t.FIRSTRATIO ,
- t.WRTRANSFERUSERID ,
- t.TRADEPRICE ,
- t.FREEZEFIRSTAMOUNT ,
- t.UNFREEZEFIRSTAMOUNT ,
- t.PERFORMANCETEMPLATEID,
- t.VALIDTYPE ,
- t.VALIDTIME ,
- t.ORDERTIME ,
- t.CANCELTIME ,
- t.WRTRADEORDERSTATUS ,
- t.CLIENTTICKET ,
- t.ORDERSRC ,
- t.CLIENTTYPE ,
- t.UUID ,
- t.CLIENTORDERTIME ,
- t.RETCODE ,
- t.OPERATORID ,
- t.PRICEDISPLAYMODE ,
- t.FREEZEMARGIN ,
- t.UNFREEZEMARGIN ,
- t.FREEZECHARGE ,
- t.UNFREEZECHARGE ,
- t.MARGINALGORITHM ,
- t.MARGINVALUE ,
- t.CHARGEALGORITHM ,
- t.CHARGEALGORITHMVALUE ,
- t.CHARGEALGORITHMVALUE2,
- t.CANBARGAIN ,
- t.WRBARGAINID ,
- t.ATTACHMENT1 ,
- t.ATTACHMENT2 ,
- t.APPLYID ,
- t.EXCHANGERATE ,
- t.ORDERAMOUNT,
- t.USERID
- FROM WRTrade_OrderDetail t
- INNER JOIN View_GZ_WRStandard_Ex_Query q ON t.wrstandardid = q.wrstandardid
- WHERE t.marketid=67201 AND t.BuyOrSell = 1 AND t.WRTradeOrderStatus IN (3,7)
- `
- sqlId.And("q.ZSCATEGORY", r.ZSCATEGORY)
- if len(r.ZSCURRENCYTYPE_S) > 0 {
- sqlId.JoinFormat(" AND q.ZSCURRENCYTYPE IN (%v)", strings.Join(r.ZSCURRENCYTYPE_S, ","))
- }
- sqlId.AndEx("q.WAREHOUSEID", r.WAREHOUSEID, r.WAREHOUSEID > 0)
- utils.AndBetween(&sqlId, "q.WEIGHT", r.WEIGHT, r.WEIGHT_END)
- utils.AndBetween(&sqlId, "q.WEIGHTAVG", r.WEIGHTAVG, r.WEIGHTAVG_END)
- sqlId.AndLikes("q.ZSSHAPETYPE", r.ZSSHAPETYPE...)
- for _, t := range r.ZSCOLORTYPE {
- sqlId.LessOrEq("q.ZSCOLORTYPE1", t)
- sqlId.BiggerOrEq("q.ZSCOLORTYPE2", t)
- }
- for _, t := range r.ZSCLARITYTYPE {
- sqlId.LessOrEq("q.ZSCLARITYTYPE1", t)
- sqlId.BiggerOrEq("q.ZSCLARITYTYPE2", t)
- }
- for _, t := range r.ZSCUTTYPE {
- sqlId.LessOrEq("q.ZSCUTTYPE1", t)
- sqlId.BiggerOrEq("q.ZSCUTTYPE2", t)
- }
- for _, t := range r.ZSSYMMETRYTYPE {
- sqlId.LessOrEq("q.ZSSYMMETRYTYPE1", t)
- sqlId.BiggerOrEq("q.ZSSYMMETRYTYPE2", t)
- }
- for _, t := range r.ZSPOLISHTYPE {
- sqlId.LessOrEq("q.ZSPOLISHTYPE1", t)
- sqlId.BiggerOrEq("q.ZSPOLISHTYPE2", t)
- }
- for _, t := range r.ZSFLUORESCENCETYPE {
- sqlId.LessOrEq("q.ZSFLUORESCENCETYPE1", t)
- sqlId.BiggerOrEq("q.ZSFLUORESCENCETYPE2", t)
- }
- if len(r.ZSCERTTYPE) > 0 {
- sqlId.JoinFormat(" AND q.ZSCERTTYPE IN (%v)", strings.Join(r.ZSCERTTYPE, ","))
- }
- sqlId.AndLike("q.ORIGIN", r.ORIGIN)
- if len(r.ZSSTYLETYPE) > 0 {
- sqlId.JoinFormat(" AND q.ZSSTYLETYPE IN (%v)", strings.Join(r.ZSSTYLETYPE, ","))
- }
- if len(r.ZSCZCOLOR1TYPE) > 0 {
- sqlId.JoinFormat(" AND q.ZSCZCOLOR1TYPE IN (%v)", strings.Join(r.ZSCZCOLOR1TYPE, ","))
- }
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *SellOrder) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]SellOrder, 0)
- sql := ""
- if !r.IsQueryDiamond {
- // 出售大厅查询
- sql = r.buildSql()
- } else {
- // 钻石搜索
- sql = r.buildQueryDiamond()
- }
- err := db.GetEngine().SQL(sql).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // MyBuyOrder 我的求购
- type MyBuyOrder struct {
- ZSALLPROPERTIES string `json:"-" xorm:"ZSALLPROPERTIES" form:"zsallproperties"` // 商品(查询字段-模糊查询)
- ZSTABLEDISPLAY string `json:"zstabledisplay" xorm:"ZSTABLEDISPLAY"` // 求购信息
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` //
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPEDISPLAY string `json:"zscolortypedisplay" xorm:"ZSCOLORTYPEDISPLAY"` //
- ZSCLARITYTYPEDISPLAY string `json:"zsclaritytypedisplay" xorm:"ZSCLARITYTYPEDISPLAY"` //
- ZSCUTTYPEDISPLAY string `json:"zscuttypedisplay" xorm:"ZSCUTTYPEDISPLAY"` //
- ZSSYMMETRYTYPEDISPLAY string `json:"zssymmetrytypedisplay" xorm:"ZSSYMMETRYTYPEDISPLAY"` //
- ZSPOLISHTYPEDISPLAY string `json:"zspolishtypedisplay" xorm:"ZSPOLISHTYPEDISPLAY"` //
- ZSFLUORESCENCETYPEDISPLAY string `json:"zsfluorescencetypedisplay" xorm:"ZSFLUORESCENCETYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- WAREHOUSEINFOSDISPLAY string `json:"warehouseinfosdisplay" xorm:"WAREHOUSEINFOSDISPLAY"` //
- WRTRADEORDERID string `json:"wrtradeorderid" xorm:"WRTRADEORDERID1" form:"wrtradeorderid"` // [委托单号]买委托单ID(320+Unix秒时间戳(10位)+xxxxxx)
- USERID int64 `json:"userid" xorm:"USERID" form:"userid" binding:"required"` // 用户ID
- ACCOUNTID int64 `json:"accountid" xorm:"ACCOUNTID"` // 资金账户ID
- WRTRADEORDERSTATUS int32 `json:"wrtradeorderstatus" xorm:"WRTRADEORDERSTATUS"` // 委托状态 - 参考枚举'WRTradeOrderStatus' - 1:委托请求 2:待冻结 3:委托成功 4:委托失败 5:配对成功 6:已撤 7:部成 8:已成 9:部成部撤 10:成交失败 11:委托拒绝 12:经过摘牌(先摘后挂专用) 13:冻结成功(通道交易专用) 14:通道已撤 15:通道部成部撤 16:成交失败违约(荷兰式竞拍专用) 17:冻结PD成功 18:冻结PD失败 19:冻结能量成功 20:冻结能量失败 21:预约已报价 22:过期未付 23:优惠券处理中 24:仓单生成失败 25:首付扣款失败 26:履约失败 27:撤单解冻贷款失败WRTrade_OrderDetail、
- VALIDTIME string `json:"validtime" xorm:"VALIDTIME"` // 有效期限
- ORDERTIME string `json:"ordertime" xorm:"ORDERTIME"` // 委托时间
- PERFORMANCETEMPLATEID int64 `json:"performancetemplateid" xorm:"PERFORMANCETEMPLATEID"` // 履约计划模板ID
- ZSCATEGORY int32 `json:"zscategory" xorm:"ZSCATEGORY"` // 钻石分类 - 枚举”ZSCategory“
- ZSCATEGORYS string `json:"-" form:"zscategorys"` // 钻石分类
- ZSCURRENCYTYPE string `json:"zscurrencytype" xorm:"ZSCURRENCYTYPE"` // 货币类型 - 多个, 逗号分隔
- ZSSHAPETYPE string `json:"zsshapetype" xorm:"ZSSHAPETYPE"` // 形状 - 多个, 逗号分隔
- ZSCOLORTYPE string `json:"zscolortype" xorm:"ZSCOLORTYPE"` // 颜色 - 两个, 逗号分隔
- ZSCLARITYTYPE string `json:"zsclaritytype" xorm:"ZSCLARITYTYPE"` // 净度 - 两个, 逗号分隔
- ZSCUTTYPE string `json:"zscuttype" xorm:"ZSCUTTYPE"` // 切工 - 两个, 逗号分隔
- ZSSYMMETRYTYPE string `json:"zssymmetrytype" xorm:"ZSSYMMETRYTYPE"` // 对称度 - 两个, 逗号分隔
- ZSPOLISHTYPE string `json:"zspolishtype" xorm:"ZSPOLISHTYPE"` // 抛光度 - 两个, 逗号分隔
- ZSFLUORESCENCETYPE string `json:"zsfluorescencetype" xorm:"ZSFLUORESCENCETYPE"` // 荧光 - 多个, 逗号分隔
- ZSSIZE string `json:"zssize" xorm:"ZSSIZE"` // 尺寸 - 两个小数, 逗号分隔
- ZSCRYSTALTYPE string `json:"zscrystaltype" xorm:"ZSCRYSTALTYPE"` // 晶型 - 多个,逗号分隔
- ORIGIN string `json:"origin" xorm:"ORIGIN"` // 原产地
- ZSSTYLETYPE string `json:"zsstyletype" xorm:"ZSSTYLETYPE"` // 款式 - 多个, 逗号分隔
- ZSCZCOLOR1TYPE string `json:"zsczcolor1type" xorm:"ZSCZCOLOR1TYPE"` // 彩钻颜色1, 逗号分隔
- ZSCZCOLOR2TYPE string `json:"zsczcolor2type" xorm:"ZSCZCOLOR2TYPE"` // 彩钻颜色2, 逗号分隔
- ZSCZCOLOR3TYPE string `json:"zsczcolor3type" xorm:"ZSCZCOLOR3TYPE"` // 彩钻颜色3, 逗号分隔
- REMARK string `json:"remark" xorm:"REMARK"` // 备注
- WAREHOUSEIDS string `json:"warehouseids" xorm:"WAREHOUSEIDS"` // 仓库ID - 多个, 逗号分隔
- MARKETID int32 `json:"marketid" xorm:"MARKETID"` // 市场ID
- IsHis bool `json:"-" form:"ishis"` // 是否历史查询
- BeginDate string `json:"-" form:"begindate"` // 开始交易日
- EndDate string `json:"-" form:"enddate"` // 结束交易日
- PageEx `xorm:"extends"` // 页码信息
- }
- func (r *MyBuyOrder) calc() {
- }
- func (r *MyBuyOrder) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.WRTRADEORDERSTATUS,
- to_char(t.VALIDTIME, 'yyyy-mm-dd') VALIDTIME,
- to_char(t.ORDERTIME, 'yyyy-mm-dd hh24:mi:ss') ORDERTIME,
- t.PERFORMANCETEMPLATEID,
- q.*
- FROM WRTrade_OrderDetail t
- INNER JOIN View_GZ_BuyOrderDetail_Query q ON t.wrtradeorderid = q.wrtradeorderid
- WHERE t.marketid=67201 AND t.BuyOrSell = 0 AND t.WRTradeOrderStatus IN (3,7)
- `
- sqlId.And("t.USERID", r.USERID)
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND q.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.AndLike("q.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.AndEx("t.WRTRADEORDERID", r.WRTRADEORDERID, r.WRTRADEORDERID != "")
- sqlId.OrderByDesc("t.WRTRADEORDERID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyBuyOrder) buildSql_His() string {
- var sqlId utils.SQLVal = `
- SELECT
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.WRTRADEORDERSTATUS,
- to_char(t.VALIDTIME, 'yyyy-mm-dd') VALIDTIME,
- to_char(t.ORDERTIME, 'yyyy-mm-dd hh24:mi:ss') ORDERTIME,
- t.PERFORMANCETEMPLATEID,
- q.*
- FROM HIS_WRTrade_OrderDetail t
- INNER JOIN View_GZ_BuyOrderDetail_Query q ON t.wrtradeorderid = q.wrtradeorderid
- WHERE t.isvaliddata =1 AND t.marketid=67201 AND t.BuyOrSell = 0 AND t.WRTradeOrderStatus IN (3,7)
- `
- sqlId.And("t.USERID", r.USERID)
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND q.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.AndLike("q.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.AndEx("t.WRTRADEORDERID", r.WRTRADEORDERID, r.WRTRADEORDERID != "")
- if r.BeginDate != "" && r.EndDate != "" {
- sqlId.JoinFormat(" AND (t.TRADEDATE >= '%v' AND t.TRADEDATE <= '%v')", r.BeginDate, r.EndDate)
- }
- sqlId.OrderByDesc("t.WRTRADEORDERID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyBuyOrder) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]MyBuyOrder, 0)
- sql := ""
- if r.IsHis {
- sql = r.buildSql_His()
- } else {
- sql = r.buildSql()
- }
- err := db.GetEngine().SQL(sql).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // MySellOrder 我的出售
- type MySellOrder struct {
- ZSALLPROPERTIES string `json:"-" xorm:"ZSALLPROPERTIES" form:"zsallproperties"` // 商品(查询字段-模糊查询)
- WRSTANDARDID int64 `json:"wrstandardid" xorm:"WRSTANDARDID"` // 现货商品ID
- USERID int64 `json:"userid" xorm:"USERID" form:"userid" binding:"required"` // 用户ID
- ZSCATEGORY int32 `json:"zscategory" xorm:"ZSCATEGORY"` // 钻石分类 - 枚举”ZSCategory“
- ZSCATEGORYS string `json:"-" form:"zscategorys"` // 钻石分类
- ZSCURRENCYTYPE int32 `json:"zscurrencytype" xorm:"ZSCURRENCYTYPE"` // 货币类型 - 枚举“ZSCurrencyType”
- GOODSNO string `json:"goodsno" xorm:"GOODSNO"` // 商品编号
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` // 钻石分类 - 描述
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSCURRENCYTYPEDISPLAYUNIT string `json:"zscurrencytypedisplayunit" xorm:"ZSCURRENCYTYPEDISPLAYUNIT"` //
- WAREHOUSENAMEDISPLAY string `json:"warehousenamedisplay" xorm:"WAREHOUSENAMEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPE1DISPLAY string `json:"zscolortype1display" xorm:"ZSCOLORTYPE1DISPLAY"` //
- ZSCOLORTYPE2DISPLAY string `json:"zscolortype2display" xorm:"ZSCOLORTYPE2DISPLAY"` //
- ZSCLARITYTYPE1DISPLAY string `json:"zsclaritytype1display" xorm:"ZSCLARITYTYPE1DISPLAY"` //
- ZSCLARITYTYPE2DISPLAY string `json:"zsclaritytype2display" xorm:"ZSCLARITYTYPE2DISPLAY"` //
- ZSCUTTYPE1DISPLAY string `json:"zscuttype1display" xorm:"ZSCUTTYPE1DISPLAY"` //
- ZSCUTTYPE2DISPLAY string `json:"zscuttype2display" xorm:"ZSCUTTYPE2DISPLAY"` //
- ZSSYMMETRYTYPE1DISPLAY string `json:"zssymmetrytype1display" xorm:"ZSSYMMETRYTYPE1DISPLAY"` //
- ZSSYMMETRYTYPE2DISPLAY string `json:"zssymmetrytype2display" xorm:"ZSSYMMETRYTYPE2DISPLAY"` //
- ZSPOLISHTYPE1DISPLAY string `json:"zspolishtype1display" xorm:"ZSPOLISHTYPE1DISPLAY"` //
- ZSPOLISHTYPE2DISPLAY string `json:"zspolishtype2display" xorm:"ZSPOLISHTYPE2DISPLAY"` //
- ZSFLUORESCENCETYPE1DISPLAY string `json:"zsfluorescencetype1display" xorm:"ZSFLUORESCENCETYPE1DISPLAY"` //
- ZSFLUORESCENCETYPE2DISPLAY string `json:"zsfluorescencetype2display" xorm:"ZSFLUORESCENCETYPE2DISPLAY"` //
- ZSCERTTYPEDISPLAY string `json:"zscerttypedisplay" xorm:"ZSCERTTYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- MARKETPRICE string `json:"marketprice" xorm:"MARKETPRICE"` //
- IMAGEPATH string `json:"imagepath" xorm:"IMAGEPATH"` //
- WRPATH string `json:"wrpath" xorm:"WRPATH"` //
- REMARK string `json:"remark" xorm:"REMARK"` //
- PRICEPER string `json:"priceper" xorm:"PRICEPER"` //
- SIZE1 string `json:"size1" xorm:"SIZE1"` //
- SIZE2 string `json:"size2" xorm:"SIZE2"` //
- SIZE3 string `json:"size3" xorm:"SIZE3"` //
- CERNO string `json:"cerno" xorm:"CERNO"` //
- ZSCRYSTALTYPE string `json:"zscrystaltype" xorm:"ZSCRYSTALTYPE"` //
- CPCERTNO string `json:"cpcertno" xorm:"CPCERTNO"` //
- KPWEIGHT string `json:"kpweight" xorm:"KPWEIGHT"` //
- KPPATH string `json:"kppath" xorm:"KPPATH"` //
- STONEDESC string `json:"stonedesc" xorm:"STONEDESC"` //
- SETTINGMATERIAL string `json:"settingmaterial" xorm:"SETTINGMATERIAL"` //
- PRICE float64 `json:"price" xorm:"PRICE"` // 价格
- WRTRADEORDERID string `json:"wrtradeorderid" xorm:"WRTRADEORDERID1" form:"wrtradeorderid"` // 仓单贸易委托单ID(320+Unix秒时间戳(10位)+xxxxxx)
- TRADEDATE string `json:"tradedate" xorm:"TRADEDATE"` // 交易日(yyyyMMdd)
- WRTRADETYPE int32 `json:"wrtradetype" xorm:"WRTRADETYPE"` // 仓单贸易类型 - 1:挂牌 2:摘牌 3:提货卖(文化中国) 4:提货买(文化中国)
- BUYORSELL int32 `json:"buyorsell" xorm:"BUYORSELL"` // 买卖 - 0:买 1:卖
- RELATEDWRTRADEORDERID int64 `json:"relatedwrtradeorderid" xorm:"RELATEDWRTRADEORDERID"` // 关联委托单号(摘牌委托关联挂牌委托单ID)
- MARKETID int64 `json:"marketid" xorm:"MARKETID"` // 市场ID
- ACCOUNTID int64 `json:"accountid" xorm:"ACCOUNTID"` // 资金账号
- WRFACTORTYPEID int64 `json:"wrfactortypeid" xorm:"WRFACTORTYPEID"` // 仓单要素类型ID/商品ID(77)
- ORDERQTY int64 `json:"-" xorm:"ORDERQTY"` // 委托数量
- TRADEQTY int64 `json:"-" xorm:"TRADEQTY"` // 成交数量
- CANCELQTY int64 `json:"cancelqty" xorm:"CANCELQTY"` // 撤销数量
- WRPRICETYPE int32 `json:"wrpricetype" xorm:"WRPRICETYPE"` // 价格方式 - 1:固定价 2-浮动价 - [挂牌]
- FIXEDPRICE float64 `json:"fixedprice" xorm:"FIXEDPRICE"` // [克拉单价]固定价格 - [挂牌]
- ISSPECIFIED int32 `json:"isspecified" xorm:"ISSPECIFIED"` // 是否指定对手 - 0:不指定 1:指定好友(贸易圈) 2:指定对手 - [挂牌]
- PRICEFACTOR float64 `json:"pricefactor" xorm:"PRICEFACTOR"` // 价格系数(浮动价时填写) - [挂牌]
- PRICEMOVE float64 `json:"pricemove" xorm:"PRICEMOVE"` // 升贴水(浮动价时填写) - [挂牌]
- FIRSTRATIO float64 `json:"firstratio" xorm:"FIRSTRATIO"` // 首付比率 - [挂牌时指定,摘牌时使用]
- WRTRANSFERUSERID int64 `json:"wrtransferuserid" xorm:"WRTRANSFERUSERID"` // 仓单受让用户 - [摘牌]
- TRADEPRICE float64 `json:"tradeprice" xorm:"TRADEPRICE"` // 成交价格 - [摘牌] (浮动价 ((商品1价格*商品1价格系数+升贴水)* 商品1重量系数 + 商品2价格*商品2价格系数+商品2升贴水)* 商品2重量系数 ...)* 委托单价格系数 + 委托单升贴水)
- FREEZEFIRSTAMOUNT float64 `json:"freezefirstamount" xorm:"FREEZEFIRSTAMOUNT"` // 冻结首付金额 - [摘牌]
- UNFREEZEFIRSTAMOUNT float64 `json:"unfreezefirstamount" xorm:"UNFREEZEFIRSTAMOUNT"` // 解冻首付金额 - [摘牌]
- PERFORMANCETEMPLATEID int64 `json:"performancetemplateid" xorm:"PERFORMANCETEMPLATEID"` // 履约计划模板ID
- VALIDTYPE int32 `json:"validtype" xorm:"VALIDTYPE"` // 有效类型 - 1当日有效 2本周有效 3指定日期有效 4一直有效
- VALIDTIME time.Time `json:"validtime" xorm:"VALIDTIME"` // 有效期限
- ORDERTIME string `json:"ordertime" xorm:"ORDERTIME1"` // 委托时间
- CANCELTIME time.Time `json:"canceltime" xorm:"CANCELTIME"` // 撤销时间
- WRTRADEORDERSTATUS int32 `json:"wrtradeorderstatus" xorm:"WRTRADEORDERSTATUS"` // 委托状态 - 参考枚举'WRTradeOrderStatus' - 1:委托请求 2:待冻结 3:委托成功 4:委托失败 5:配对成功 6:已撤 7:部成 8:已成 9:部成部撤 10:成交失败 11:委托拒绝 12:经过摘牌(先摘后挂专用) 13:冻结成功(通道交易专用) 14:通道已撤 15:通道部成部撤 16:成交失败违约(荷兰式竞拍专用) 17:冻结PD成功 18:冻结PD失败 19:冻结能量成功 20:冻结能量失败 21:预约已报价 22:过期未付 23:优惠券处理中 24:仓单生成失败 25:首付扣款失败 26:履约失败 27:撤单解冻贷款失败
- CLIENTTICKET string `json:"-" xorm:"CLIENTTICKET"` // 客户端流水号
- ORDERSRC int32 `json:"-" xorm:"ORDERSRC"` // 委托来源 - 1:客户端 2:管理端 3:风控服务 4:交割服务 5:交易服务 6:交易日结
- CLIENTTYPE int32 `json:"-" xorm:"CLIENTTYPE"` // 客户端类型 - 0:保留为未填终端类型 1:PC管理端 2:PC交易端 3:手机客户端_安卓 4:网页客户端 5:微信客户端 6:手机客户端_苹果 7:网上开户客户端 8:无效终端编号 9:报价终端(中江)
- UUID string `json:"uuid" xorm:"UUID"` // 发起端唯一id
- CLIENTORDERTIME time.Time `json:"clientordertime" xorm:"CLIENTORDERTIME"` // 客户端委托时间
- RETCODE int32 `json:"retcode" xorm:"RETCODE"` // 错误代码
- OPERATORID int64 `json:"-" xorm:"OPERATORID"` // 操作员ID
- PRICEDISPLAYMODE int32 `json:"-" xorm:"PRICEDISPLAYMODE"` // 浮动价显示方式 - 1:合并显示 2:分开显示1: 价格显示一个值 :(商品拟合价*价格系统+升贴水)2: 价格显示两个值:(商品拟合价*价格系统) 、 升贴水
- FREEZEMARGIN float64 `json:"freezemargin" xorm:"FREEZEMARGIN"` // 冻结保证金
- UNFREEZEMARGIN float64 `json:"unfreezemargin" xorm:"UNFREEZEMARGIN"` // 解冻保证金
- FREEZECHARGE float64 `json:"freezecharge" xorm:"FREEZECHARGE"` // 冻结手续费
- UNFREEZECHARGE float64 `json:"unfreezecharge" xorm:"UNFREEZECHARGE"` // 解冻手续费
- MARGINALGORITHM int32 `json:"marginalgorithm" xorm:"MARGINALGORITHM"` // 保证金方式 - 1:比率 2:固定
- MARGINVALUE float64 `json:"marginvalue" xorm:"MARGINVALUE"` // 保证金设置值
- CHARGEALGORITHM int32 `json:"chargealgorithm" xorm:"CHARGEALGORITHM"` // 手续费收取方式 1:比率 2:固定
- CHARGEALGORITHMVALUE float64 `json:"chargealgorithmvalue" xorm:"CHARGEALGORITHMVALUE"` // 手续费设置值(交易所部分)
- CHARGEALGORITHMVALUE2 float64 `json:"chargealgorithmvalue2" xorm:"CHARGEALGORITHMVALUE2"` // 手续费设置值(会员部分)
- CANBARGAIN int32 `json:"canbargain" xorm:"CANBARGAIN"` // 是否可议价 - 0:不可 1:可
- WRBARGAINID int64 `json:"wrbargainid" xorm:"WRBARGAINID"` // 议价申请单ID
- ATTACHMENT1 string `json:"attachment1" xorm:"ATTACHMENT1"` // 附件1
- ATTACHMENT2 string `json:"attachment2" xorm:"ATTACHMENT2"` // 附件2
- APPLYID int64 `json:"applyid" xorm:"APPLYID"` // 申请单ID
- EXCHANGERATE float64 `json:"exchangerate" xorm:"EXCHANGERATE"` // 汇率[67]
- ORDERAMOUNT float64 `json:"orderamount" xorm:"ORDERAMOUNT"` // 挂牌金额[账户] [67]= OrderQty * FixedPrice * ExchangeRate /100
- TOTALQTY float64 `json:"totalqty" xorm:"TOTALQTY"` // 总重量
- SELLEDQTY float64 `json:"selledqty" xorm:"SELLEDQTY"` // 成交重量
- IsHis bool `json:"-" form:"ishis"` // 是否历史查询
- BeginDate string `json:"-" form:"begindate"` // 开始交易日
- EndDate string `json:"-" form:"enddate"` // 结束交易日
- PageEx `xorm:"extends"` // 页码信息
- }
- func (r *MySellOrder) calc() {
- }
- func (r *MySellOrder) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- (t.ORDERQTY / 100) TOTALQTY,
- (t.TRADEQTY / 100) SELLEDQTY,
- q.ZSCATEGORY,
- q.ZSCURRENCYTYPE,
- q.GOODSNO,
- q.ZSCURRENCYTYPEDISPLAY ,
- q.ZSCURRENCYTYPEDISPLAYUNIT ,
- q.WAREHOUSENAMEDISPLAY ,
- q.ZSSHAPETYPEDISPLAY ,
- q.ZSCOLORTYPE1DISPLAY ,
- q.ZSCOLORTYPE2DISPLAY ,
- q.ZSCLARITYTYPE1DISPLAY ,
- q.ZSCLARITYTYPE2DISPLAY ,
- q.ZSCUTTYPE1DISPLAY ,
- q.ZSCUTTYPE2DISPLAY ,
- q.ZSSYMMETRYTYPE1DISPLAY ,
- q.ZSSYMMETRYTYPE2DISPLAY ,
- q.ZSPOLISHTYPE1DISPLAY ,
- q.ZSPOLISHTYPE2DISPLAY ,
- q.ZSFLUORESCENCETYPE1DISPLAY,
- q.ZSFLUORESCENCETYPE2DISPLAY,
- q.ZSCERTTYPEDISPLAY ,
- q.ZSCRYSTALTYPEDISPLAY ,
- q.ZSSTYLETYPEDISPLAY ,
- q.ZSCZCOLOR1TYPEDISPLAY ,
- q.ZSCZCOLOR2TYPEDISPLAY ,
- q.ZSCZCOLOR3TYPEDISPLAY ,
- q.MARKETPRICE ,
- q.IMAGEPATH ,
- q.WRPATH ,
- q.REMARK ,
- q.PRICEPER ,
- q.SIZE1 ,
- q.SIZE2 ,
- q.SIZE3 ,
- q.CERNO ,
- q.ZSCRYSTALTYPE ,
- q.CPCERTNO ,
- q.KPWEIGHT ,
- q.KPPATH ,
- q.STONEDESC ,
- q.SETTINGMATERIAL ,
- q.PRICE,
- to_char(t.ORDERTIME, 'yyyy-mm-dd hh24:mi:ss') ORDERTIME1,
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.WRTRADEORDERID ,
- t.TRADEDATE ,
- t.WRTRADETYPE ,
- t.BUYORSELL ,
- t.RELATEDWRTRADEORDERID,
- t.MARKETID ,
- t.ACCOUNTID ,
- t.WRFACTORTYPEID ,
- t.ORDERQTY ,
- t.TRADEQTY ,
- t.CANCELQTY ,
- t.WRPRICETYPE ,
- t.FIXEDPRICE ,
- t.ISSPECIFIED ,
- t.PRICEFACTOR ,
- t.PRICEMOVE ,
- t.FIRSTRATIO ,
- t.WRTRANSFERUSERID ,
- t.TRADEPRICE ,
- t.FREEZEFIRSTAMOUNT ,
- t.UNFREEZEFIRSTAMOUNT ,
- t.PERFORMANCETEMPLATEID,
- t.VALIDTYPE ,
- t.VALIDTIME ,
- t.ORDERTIME ,
- t.CANCELTIME ,
- t.WRTRADEORDERSTATUS ,
- t.CLIENTTICKET ,
- t.ORDERSRC ,
- t.CLIENTTYPE ,
- t.UUID ,
- t.CLIENTORDERTIME ,
- t.RETCODE ,
- t.OPERATORID ,
- t.PRICEDISPLAYMODE ,
- t.FREEZEMARGIN ,
- t.UNFREEZEMARGIN ,
- t.FREEZECHARGE ,
- t.UNFREEZECHARGE ,
- t.MARGINALGORITHM ,
- t.MARGINVALUE ,
- t.CHARGEALGORITHM ,
- t.CHARGEALGORITHMVALUE ,
- t.CHARGEALGORITHMVALUE2,
- t.CANBARGAIN ,
- t.WRBARGAINID ,
- t.ATTACHMENT1 ,
- t.ATTACHMENT2 ,
- t.APPLYID ,
- t.EXCHANGERATE ,
- t.ORDERAMOUNT
- FROM WRTrade_OrderDetail t
- INNER JOIN View_GZ_WRStandard_Ex_Query q ON t.wrstandardid = q.wrstandardid
- WHERE t.marketid=67201 AND t.BuyOrSell = 1 AND t.WRTradeOrderStatus IN (3,7)
- `
- sqlId.And("q.USERID", r.USERID)
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND q.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.AndLike("q.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.AndEx("t.WRTRADEORDERID", r.WRTRADEORDERID, r.WRTRADEORDERID != "")
- sqlId.OrderByDesc("t.WRTRADEORDERID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MySellOrder) buildSql_His() string {
- var sqlId utils.SQLVal = `
- SELECT
- (t.ORDERQTY / 100) TOTALQTY,
- (t.TRADEQTY / 100) SELLEDQTY,
- q.ZSCATEGORY,
- q.ZSCURRENCYTYPE,
- q.GOODSNO,
- q.ZSCURRENCYTYPEDISPLAY ,
- q.ZSCURRENCYTYPEDISPLAYUNIT ,
- q.WAREHOUSENAMEDISPLAY ,
- q.ZSSHAPETYPEDISPLAY ,
- q.ZSCOLORTYPE1DISPLAY ,
- q.ZSCOLORTYPE2DISPLAY ,
- q.ZSCLARITYTYPE1DISPLAY ,
- q.ZSCLARITYTYPE2DISPLAY ,
- q.ZSCUTTYPE1DISPLAY ,
- q.ZSCUTTYPE2DISPLAY ,
- q.ZSSYMMETRYTYPE1DISPLAY ,
- q.ZSSYMMETRYTYPE2DISPLAY ,
- q.ZSPOLISHTYPE1DISPLAY ,
- q.ZSPOLISHTYPE2DISPLAY ,
- q.ZSFLUORESCENCETYPE1DISPLAY,
- q.ZSFLUORESCENCETYPE2DISPLAY,
- q.ZSCERTTYPEDISPLAY ,
- q.ZSCRYSTALTYPEDISPLAY ,
- q.ZSSTYLETYPEDISPLAY ,
- q.ZSCZCOLOR1TYPEDISPLAY ,
- q.ZSCZCOLOR2TYPEDISPLAY ,
- q.ZSCZCOLOR3TYPEDISPLAY ,
- q.MARKETPRICE ,
- q.IMAGEPATH ,
- q.WRPATH ,
- q.REMARK ,
- q.PRICEPER ,
- q.SIZE1 ,
- q.SIZE2 ,
- q.SIZE3 ,
- q.CERNO ,
- q.ZSCRYSTALTYPE ,
- q.CPCERTNO ,
- q.KPWEIGHT ,
- q.KPPATH ,
- q.STONEDESC ,
- q.SETTINGMATERIAL ,
- q.PRICE,
- to_char(t.ORDERTIME, 'yyyy-mm-dd hh24:mi:ss') ORDERTIME1,
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.WRTRADEORDERID ,
- t.TRADEDATE ,
- t.WRTRADETYPE ,
- t.BUYORSELL ,
- t.RELATEDWRTRADEORDERID,
- t.MARKETID ,
- t.ACCOUNTID ,
- t.WRFACTORTYPEID ,
- t.ORDERQTY ,
- t.TRADEQTY ,
- t.CANCELQTY ,
- t.WRPRICETYPE ,
- t.FIXEDPRICE ,
- t.ISSPECIFIED ,
- t.PRICEFACTOR ,
- t.PRICEMOVE ,
- t.FIRSTRATIO ,
- t.WRTRANSFERUSERID ,
- t.TRADEPRICE ,
- t.FREEZEFIRSTAMOUNT ,
- t.UNFREEZEFIRSTAMOUNT ,
- t.PERFORMANCETEMPLATEID,
- t.VALIDTYPE ,
- t.VALIDTIME ,
- t.ORDERTIME ,
- t.CANCELTIME ,
- t.WRTRADEORDERSTATUS ,
- t.CLIENTTICKET ,
- t.ORDERSRC ,
- t.CLIENTTYPE ,
- t.UUID ,
- t.CLIENTORDERTIME ,
- t.RETCODE ,
- t.OPERATORID ,
- t.PRICEDISPLAYMODE ,
- t.FREEZEMARGIN ,
- t.UNFREEZEMARGIN ,
- t.FREEZECHARGE ,
- t.UNFREEZECHARGE ,
- t.MARGINALGORITHM ,
- t.MARGINVALUE ,
- t.CHARGEALGORITHM ,
- t.CHARGEALGORITHMVALUE ,
- t.CHARGEALGORITHMVALUE2,
- t.CANBARGAIN ,
- t.WRBARGAINID ,
- t.ATTACHMENT1 ,
- t.ATTACHMENT2 ,
- t.APPLYID ,
- t.EXCHANGERATE ,
- t.ORDERAMOUNT
- FROM HIS_WRTrade_OrderDetail t
- INNER JOIN View_GZ_WRStandard_Ex_Query q ON t.wrstandardid = q.wrstandardid
- WHERE t.isvaliddata =1 AND t.marketid=67201 AND t.BuyOrSell = 1 AND t.WRTradeOrderStatus IN (3,7)
- `
- sqlId.And("q.USERID", r.USERID)
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND q.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.AndLike("q.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.AndEx("t.WRTRADEORDERID", r.WRTRADEORDERID, r.WRTRADEORDERID != "")
- if r.BeginDate != "" && r.EndDate != "" {
- sqlId.JoinFormat(" AND (t.TRADEDATE >= '%v' AND t.TRADEDATE <= '%v')", r.BeginDate, r.EndDate)
- }
- sqlId.OrderByDesc("t.WRTRADEORDERID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MySellOrder) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]MySellOrder, 0)
- sql := ""
- if r.IsHis {
- sql = r.buildSql_His()
- } else {
- sql = r.buildSql()
- }
- err := db.GetEngine().SQL(sql).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // MyDeListing 我的摘牌
- type MyDeListing struct {
- ZSALLPROPERTIES string `json:"-" xorm:"ZSALLPROPERTIES" form:"zsallproperties"` // 商品(查询字段-模糊查询)
- SELLUSERNAME string `json:"-" xorm:"SELLUSERNAME"` // 卖方
- BUYUSERNAME string `json:"-" xorm:"BUYUSERNAME"` // 买方
- USERID int64 `json:"userid" xorm:"USERID" form:"userid" binding:"required"` // 用户ID
- ZSCATEGORY int32 `json:"zscategory" xorm:"ZSCATEGORY"` // 钻石分类 - 枚举”ZSCategory“
- ZSCATEGORYS string `json:"-" form:"zscategorys"` // 钻石分类
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` //
- ZSCURRENCYTYPE int32 `json:"zscurrencytype" xorm:"ZSCURRENCYTYPE"` // 货币类型 - 枚举“ZSCurrencyType”
- GOODSNO string `json:"goodsno" xorm:"GOODSNO"` // 商品编号
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSCURRENCYTYPEDISPLAYUNIT string `json:"zscurrencytypedisplayunit" xorm:"ZSCURRENCYTYPEDISPLAYUNIT"` //
- WAREHOUSENAMEDISPLAY string `json:"warehousenamedisplay" xorm:"WAREHOUSENAMEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPE1DISPLAY string `json:"zscolortype1display" xorm:"ZSCOLORTYPE1DISPLAY"` //
- ZSCOLORTYPE2DISPLAY string `json:"zscolortype2display" xorm:"ZSCOLORTYPE2DISPLAY"` //
- ZSCLARITYTYPE1DISPLAY string `json:"zsclaritytype1display" xorm:"ZSCLARITYTYPE1DISPLAY"` //
- ZSCLARITYTYPE2DISPLAY string `json:"zsclaritytype2display" xorm:"ZSCLARITYTYPE2DISPLAY"` //
- ZSCUTTYPE1DISPLAY string `json:"zscuttype1display" xorm:"ZSCUTTYPE1DISPLAY"` //
- ZSCUTTYPE2DISPLAY string `json:"zscuttype2display" xorm:"ZSCUTTYPE2DISPLAY"` //
- ZSSYMMETRYTYPE1DISPLAY string `json:"zssymmetrytype1display" xorm:"ZSSYMMETRYTYPE1DISPLAY"` //
- ZSSYMMETRYTYPE2DISPLAY string `json:"zssymmetrytype2display" xorm:"ZSSYMMETRYTYPE2DISPLAY"` //
- ZSPOLISHTYPE1DISPLAY string `json:"zspolishtype1display" xorm:"ZSPOLISHTYPE1DISPLAY"` //
- ZSPOLISHTYPE2DISPLAY string `json:"zspolishtype2display" xorm:"ZSPOLISHTYPE2DISPLAY"` //
- ZSFLUORESCENCETYPE1DISPLAY string `json:"zsfluorescencetype1display" xorm:"ZSFLUORESCENCETYPE1DISPLAY"` //
- ZSFLUORESCENCETYPE2DISPLAY string `json:"zsfluorescencetype2display" xorm:"ZSFLUORESCENCETYPE2DISPLAY"` //
- ZSCERTTYPEDISPLAY string `json:"zscerttypedisplay" xorm:"ZSCERTTYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- SIZEDISPLAY string `json:"sizedisplay" xorm:"SIZEDISPLAY"` // 尺寸
- PRICE float64 `json:"price" xorm:"PRICE"` // 价格
- WRTRADEDETAILID string `json:"wrtradedetailid" xorm:"WRTRADEDETAILID1" form:"wrtradedetailid"` // 仓单贸易成交单ID(321+Unix秒时间戳(10位)+xxxxxx)
- TRADEDATE string `json:"tradedate" xorm:"TRADEDATE"` // 交易日(yyyyMMdd)
- MARKETID int32 `json:"marketid" xorm:"MARKETID"` // 市场ID
- WRFACTORTYPEID int64 `json:"wrfactortypeid" xorm:"WRFACTORTYPEID"` // 仓单要素类型ID
- DELIVERYGOODSID int32 `json:"deliverygoodsid" xorm:"DELIVERYGOODSID"` // 现货品种ID
- WRSTANDARDID int32 `json:"wrstandardid" xorm:"WRSTANDARDID"` // 现货商品ID
- BUYUSERID int64 `json:"buyuserid" xorm:"BUYUSERID"` // 买方用户ID
- BUYACCOUNTID int64 `json:"buyaccountid" xorm:"BUYACCOUNTID"` // 买方账号ID
- SELLUSERID int64 `json:"selluserid" xorm:"SELLUSERID"` // 卖方用户ID
- SELLACCOUNTID int64 `json:"sellaccountid" xorm:"SELLACCOUNTID"` // 卖方账号ID
- TRADETIME string `json:"tradetime" xorm:"TRADETIME1"` // 成交时间
- TRADEPRICE float64 `json:"tradeprice" xorm:"TRADEPRICE"` // 成交价格
- TRADEQTY int64 `json:"-" xorm:"TRADEQTY"` // 成交数量
- TRADEAMOUNT float64 `json:"tradeamount" xorm:"TRADEAMOUNT"` // 成交金额
- PERFORMANCEPLANID string `json:"performanceplanid" xorm:"PERFORMANCEPLANID1"` // 履约计划ID/合同ID
- EXCHANGERATE float64 `json:"exchangerate" xorm:"EXCHANGERATE"` // 汇率
- BUYCHARGEVALUE float64 `json:"buychargevalue" xorm:"BUYCHARGEVALUE"` // 买方手续费
- SELLCHARGEVALUE float64 `json:"sellchargevalue" xorm:"SELLCHARGEVALUE"` // 卖方手续费
- ORITRADEAMOUNT float64 `json:"oritradeamount" xorm:"ORITRADEAMOUNT"` // 成交金额[商品币种]
- QTY float64 `json:"qty" xorm:"QTY"` // 成交重量
- MATCHUSERNAME string `json:"matchusername" form:"matchusername"` // 对手方
- BuyOrSell int64 `json:"-" xorm:"BUYORSELL" form:"buyorsell"` // 方向 - 0:买 1:卖
- BeginDate string `json:"-" form:"begindate"` // 开始交易日
- EndDate string `json:"-" form:"enddate"` // 结束交易日
- PageEx `xorm:"extends"` // 页码信息
- }
- func (r *MyDeListing) calc() {
- // 设置对手方
- if r.BuyOrSell == 0 {
- r.MATCHUSERNAME = r.SELLUSERNAME
- } else {
- r.MATCHUSERNAME = r.BUYUSERNAME
- }
- }
- func (r *MyDeListing) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- %v BUYORSELL,
- ua1.accountname BUYUSERNAME,
- q.SELLUSERNAME,
- q.USERID,
- q.ZSCATEGORY,
- q.ZSCATEGORYDISPLAY,
- q.ZSCURRENCYTYPE,
- q.GOODSNO,
- q.ZSCURRENCYTYPEDISPLAY,
- q.ZSCURRENCYTYPEDISPLAYUNIT,
- q.WAREHOUSENAMEDISPLAY,
- q.ZSSHAPETYPEDISPLAY,
- q.ZSCOLORTYPE1DISPLAY,
- q.ZSCOLORTYPE2DISPLAY,
- q.ZSCLARITYTYPE1DISPLAY,
- q.ZSCLARITYTYPE2DISPLAY,
- q.ZSCUTTYPE1DISPLAY,
- q.ZSCUTTYPE2DISPLAY,
- q.ZSSYMMETRYTYPE1DISPLAY,
- q.ZSSYMMETRYTYPE2DISPLAY,
- q.ZSPOLISHTYPE1DISPLAY,
- q.ZSPOLISHTYPE2DISPLAY,
- q.ZSFLUORESCENCETYPE1DISPLAY,
- q.ZSFLUORESCENCETYPE2DISPLAY,
- q.ZSCERTTYPEDISPLAY,
- q.ZSCRYSTALTYPEDISPLAY,
- q.ZSSTYLETYPEDISPLAY,
- q.ZSCZCOLOR1TYPEDISPLAY,
- q.ZSCZCOLOR2TYPEDISPLAY,
- q.ZSCZCOLOR3TYPEDISPLAY,
- CASE WHEN
- q.SIZE1 IS NOT NULL AND q.SIZE2 IS NOT NULL AND q.SIZE2 IS NOT NULL THEN q.SIZE1 || '*' || q.SIZE2 || '*' || q.SIZE3
- ELSE q.SIZE1
- END AS SIZEDISPLAY,
- q.PRICE,
- (t.TRADEQTY / 100) QTY,
- to_char(t.TRADETIME, 'yyyy-mm-dd hh24:mi:ss') TRADETIME1,
- to_char(t.WRTRADEDETAILID) WRTRADEDETAILID1,
- t.TRADEDATE ,
- t.MARKETID ,
- t.WRFACTORTYPEID ,
- t.DELIVERYGOODSID ,
- t.WRSTANDARDID ,
- t.BUYUSERID ,
- t.BUYACCOUNTID ,
- t.SELLUSERID ,
- t.SELLACCOUNTID ,
- t.TRADEPRICE ,
- t.TRADEQTY ,
- t.TRADEAMOUNT ,
- to_char(t.PERFORMANCEPLANID) PERFORMANCEPLANID1,
- t.EXCHANGERATE ,
- t.BUYCHARGEVALUE ,
- t.SELLCHARGEVALUE ,
- t.ORITRADEAMOUNT
- FROM WRTrade_TradeQuote t
- INNER JOIN View_GZ_WRStandard_Ex_Query q ON t.wrstandardid = q.wrstandardid
- LEFT JOIN UserAccount ua1 ON t.BuyUserID = ua1.userid
- WHERE t.marketid=67201
- `
- sqlId.FormatParam(r.BuyOrSell)
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND q.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.AndLike("q.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.AndEx("t.WRTRADEDETAILID", r.WRTRADEDETAILID, r.WRTRADEDETAILID != "")
- switch r.BuyOrSell {
- case 0:
- // 买
- sqlId.And("t.BUYUSERID", r.USERID)
- if r.MATCHUSERNAME != "" {
- sqlId.AndLike("q.SELLUSERNAME", r.MATCHUSERNAME)
- }
- case 1:
- // 卖
- sqlId.And("t.SELLUSERID", r.USERID)
- if r.MATCHUSERNAME != "" {
- sqlId.AndLike("ua1.accountname", r.MATCHUSERNAME)
- }
- }
- if r.BeginDate != "" && r.EndDate != "" {
- sqlId.JoinFormat(" AND (t.TRADEDATE >= '%v' AND t.TRADEDATE <= '%v')", r.BeginDate, r.EndDate)
- }
- sqlId.OrderByDesc("t.WRTRADEDETAILID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyDeListing) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]MyDeListing, 0)
- err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // MyBargainApply 询价-求购
- type MyBargainApply struct {
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSCURRENCYTYPEDISPLAYUNIT string `json:"zscurrencytypedisplayunit" xorm:"ZSCURRENCYTYPEDISPLAYUNIT"` //
- WAREHOUSENAMEDISPLAY string `json:"warehousenamedisplay" xorm:"WAREHOUSENAMEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPE1DISPLAY string `json:"zscolortype1display" xorm:"ZSCOLORTYPE1DISPLAY"` //
- ZSCOLORTYPE2DISPLAY string `json:"zscolortype2display" xorm:"ZSCOLORTYPE2DISPLAY"` //
- ZSCLARITYTYPE1DISPLAY string `json:"zsclaritytype1display" xorm:"ZSCLARITYTYPE1DISPLAY"` //
- ZSCLARITYTYPE2DISPLAY string `json:"zsclaritytype2display" xorm:"ZSCLARITYTYPE2DISPLAY"` //
- ZSCUTTYPE1DISPLAY string `json:"zscuttype1display" xorm:"ZSCUTTYPE1DISPLAY"` //
- ZSCUTTYPE2DISPLAY string `json:"zscuttype2display" xorm:"ZSCUTTYPE2DISPLAY"` //
- ZSSYMMETRYTYPE1DISPLAY string `json:"zssymmetrytype1display" xorm:"ZSSYMMETRYTYPE1DISPLAY"` //
- ZSSYMMETRYTYPE2DISPLAY string `json:"zssymmetrytype2display" xorm:"ZSSYMMETRYTYPE2DISPLAY"` //
- ZSPOLISHTYPE1DISPLAY string `json:"zspolishtype1display" xorm:"ZSPOLISHTYPE1DISPLAY"` //
- ZSPOLISHTYPE2DISPLAY string `json:"zspolishtype2display" xorm:"ZSPOLISHTYPE2DISPLAY"` //
- ZSFLUORESCENCETYPE1DISPLAY string `json:"zsfluorescencetype1display" xorm:"ZSFLUORESCENCETYPE1DISPLAY"` //
- ZSFLUORESCENCETYPE2DISPLAY string `json:"zsfluorescencetype2display" xorm:"ZSFLUORESCENCETYPE2DISPLAY"` //
- ZSCERTTYPEDISPLAY string `json:"zscerttypedisplay" xorm:"ZSCERTTYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- SIZEDISPLAY string `json:"sizedisplay" xorm:"SIZEDISPLAY"` // 尺寸
- PRICE float64 `json:"price" xorm:"PRICE"` // 价格
- PRICEPER string `json:"priceper" xorm:"PRICEPER"` // 克拉单价 - 类型:1,2,3,5
- GOODSNO string `json:"goodsno" xorm:"GOODSNO"` // 商品编号
- WRBARGAINID string `json:"wrbargainid" xorm:"WRBARGAINID1"` // [询价单号]议价申请单ID(327+Unix秒时间戳(10位)+xxxxxx)
- WRTRADEORDERID string `json:"wrtradeorderid" xorm:"WRTRADEORDERID1" form:"wrtradeorderid"` // 关联委托单ID
- TRADEDATE string `json:"tradedate" xorm:"TRADEDATE"` // 交易日(yyyyMMdd)
- MARKETID int64 `json:"marketid" xorm:"MARKETID"` // 市场ID
- USERID int64 `json:"userid" xorm:"USERID" form:"userid" binding:"required"` // 摘牌人用户ID
- ACCOUNTID int64 `json:"accountid" xorm:"ACCOUNTID"` // 摘牌资金账号
- BUYORSELL int32 `json:"buyorsell" xorm:"BUYORSELL"` // 买卖 - 0:买 1:卖
- APPLYQTY int64 `json:"-" xorm:"APPLYQTY"` // 摘牌数量
- APPLYPRICE string `json:"applyprice" xorm:"APPLYPRICE"` // 申请价格
- APPLYSTATUS int32 `json:"applystatus" xorm:"APPLYSTATUS" form:"applystatus"` // 申请状态 - 1:待确认 2:已确认 3:已拒绝 4:已撤销 5:系统撤销 6:处理失败 7:确认中
- HANDLESTATUS int32 `json:"handlestatus" xorm:"HANDLESTATUS"` // 处理状态
- APPLYTIME string `json:"applytime" xorm:"APPLYTIME1"` // 申请时间
- APPLYREMARK string `json:"applyremark" xorm:"APPLYREMARK"` // 申请备注
- CONFIRMQTY int64 `json:"confirmqty" xorm:"CONFIRMQTY"` // 可接受数量(拒绝时填写)-作废
- CONFIRMPRICE float64 `json:"confirmprice" xorm:"CONFIRMPRICE"` // 可接受价格(拒绝时填写)-作废
- CONFIRMUSERID int64 `json:"confirmuserid" xorm:"CONFIRMUSERID"` // 确认人
- CONFIRMTIME time.Time `json:"confirmtime" xorm:"CONFIRMTIME"` // 确认时间
- CONFIRMREMARK string `json:"confirmremark" xorm:"CONFIRMREMARK"` // 确认备注
- REFPRICE string `json:"refprice" xorm:"REFPRICE"` // 参考价格
- RETCODE int32 `json:"retcode" xorm:"RETCODE"` // 委托返回代码
- MATCHUSERID int64 `json:"matchuserid" xorm:"MATCHUSERID"` // 挂牌方用户ID
- MATCHACCOUNTID int64 `json:"matchaccountid" xorm:"MATCHACCOUNTID"` // 挂牌方资金账号
- LADINGBILLID int64 `json:"ladingbillid" xorm:"LADINGBILLID"` // 摘牌方提单ID [卖]
- SUBNUM int32 `json:"subnum" xorm:"SUBNUM"` // 摘牌方提单子单号 [卖]
- PERFORMANCETEMPLATEID int64 `json:"performancetemplateid" xorm:"PERFORMANCETEMPLATEID"` // 履约计划模板ID
- SELLUSERNAME string `json:"sellusername" xorm:"SELLUSERNAME"` // 卖方
- QTY float64 `json:"qty" xorm:"QTY"` // 申请数量
- TYPE int `json:"-" form:"type"` // 查询类型 - 0:我的询价 1:我订单的询价
- PageEx `xorm:"extends"` // 页码信息
- }
- func (r *MyBargainApply) calc() {
- }
- func (r *MyBargainApply) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- q.ZSCURRENCYTYPEDISPLAY,
- q.ZSCURRENCYTYPEDISPLAYUNIT,
- q.WAREHOUSENAMEDISPLAY,
- q.ZSSHAPETYPEDISPLAY,
- q.ZSCOLORTYPE1DISPLAY,
- q.ZSCOLORTYPE2DISPLAY,
- q.ZSCLARITYTYPE1DISPLAY,
- q.ZSCLARITYTYPE2DISPLAY,
- q.ZSCUTTYPE1DISPLAY,
- q.ZSCUTTYPE2DISPLAY,
- q.ZSSYMMETRYTYPE1DISPLAY,
- q.ZSSYMMETRYTYPE2DISPLAY,
- q.ZSPOLISHTYPE1DISPLAY,
- q.ZSPOLISHTYPE2DISPLAY,
- q.ZSFLUORESCENCETYPE1DISPLAY,
- q.ZSFLUORESCENCETYPE2DISPLAY,
- q.ZSCERTTYPEDISPLAY,
- q.ZSCRYSTALTYPEDISPLAY,
- q.ZSSTYLETYPEDISPLAY,
- q.ZSCZCOLOR1TYPEDISPLAY,
- q.ZSCZCOLOR2TYPEDISPLAY,
- q.ZSCZCOLOR3TYPEDISPLAY,
- q.GOODSNO,
- ua.accountname SELLUSERNAME,
- CASE WHEN
- q.SIZE1 IS NOT NULL AND q.SIZE2 IS NOT NULL AND q.SIZE2 IS NOT NULL THEN q.SIZE1 || '*' || q.SIZE2 || '*' || q.SIZE3
- ELSE q.SIZE1
- END AS SIZEDISPLAY,
- q.PRICE,
- q.PRICEPER,
- (t.APPLYQTY / 100) QTY,
- to_char(t.APPLYTIME, 'yyyy-mm-dd hh24:mi:ss') APPLYTIME1,
- to_char(t.WRBARGAINID) WRBARGAINID1,
- t.WRBARGAINID ,
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.TRADEDATE ,
- t.MARKETID ,
- t.USERID ,
- t.ACCOUNTID ,
- t.BUYORSELL ,
- t.APPLYQTY ,
- t.APPLYPRICE ,
- t.APPLYSTATUS ,
- t.HANDLESTATUS ,
- t.APPLYTIME ,
- t.APPLYREMARK ,
- t.CONFIRMQTY ,
- t.CONFIRMPRICE ,
- t.CONFIRMUSERID ,
- t.CONFIRMTIME ,
- t.CONFIRMREMARK ,
- t.REFPRICE ,
- t.RETCODE ,
- t.MATCHUSERID ,
- t.MATCHACCOUNTID,
- t.LADINGBILLID ,
- t.SUBNUM ,
- d.PERFORMANCETEMPLATEID
- FROM WRTrade_BargainApply t
- LEFT JOIN UserAccount ua ON t.MATCHUSERID = ua.userid
- LEFT JOIN Wrtrade_Orderdetail d ON d.wrtradeorderid = t.wrtradeorderid
- LEFT JOIN view_GZ_WRStandard_Ex_Query q ON d.wrstandardid = q.wrstandardid
- WHERE t.marketid=67201
- `
- if r.TYPE == 0 {
- sqlId.And("t.USERID", r.USERID)
- } else {
- sqlId.And("t.MatchUserID", r.USERID)
- }
- sqlId.AndEx("t.APPLYSTATUS", r.APPLYSTATUS, r.APPLYSTATUS > 0)
- if r.WRTRADEORDERID != "" {
- sqlId.FormatParam(" and t.WRTRADEORDERID = %v", r.WRTRADEORDERID)
- }
- sqlId.OrderByDesc("t.WRBARGAINID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyBargainApply) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]MyBargainApply, 0)
- err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // MyDelistingApply 询价-出售
- type MyDelistingApply struct {
- ZSALLPROPERTIES string `json:"zsallproperties" xorm:"ZSALLPROPERTIES"` //
- ZSTABLEDISPLAY string `json:"zstabledisplay" xorm:"ZSTABLEDISPLAY"` //
- BUYUSERNAME string `json:"buyusername" xorm:"BUYUSERNAME"` //
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` //
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPEDISPLAY string `json:"zscolortypedisplay" xorm:"ZSCOLORTYPEDISPLAY"` //
- ZSCLARITYTYPEDISPLAY string `json:"zsclaritytypedisplay" xorm:"ZSCLARITYTYPEDISPLAY"` //
- ZSCUTTYPEDISPLAY string `json:"zscuttypedisplay" xorm:"ZSCUTTYPEDISPLAY"` //
- ZSSYMMETRYTYPEDISPLAY string `json:"zssymmetrytypedisplay" xorm:"ZSSYMMETRYTYPEDISPLAY"` //
- ZSPOLISHTYPEDISPLAY string `json:"zspolishtypedisplay" xorm:"ZSPOLISHTYPEDISPLAY"` //
- ZSFLUORESCENCETYPEDISPLAY string `json:"zsfluorescencetypedisplay" xorm:"ZSFLUORESCENCETYPEDISPLAY"` //
- ZSSIZEDISPLAY string `json:"zssizedisplay" xorm:"ZSSIZEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- WAREHOUSEINFOSDISPLAY string `json:"warehouseinfosdisplay" xorm:"WAREHOUSEINFOSDISPLAY"` //
- SIZEDISPLAY string `json:"sizedisplay" xorm:"SIZEDISPLAY"` // 尺寸
- GOODSNO string `json:"goodsno" xorm:"GOODSNO"` // 商品编号
- PRICE float64 `json:"price" xorm:"PRICE"` // 价格
- WEIGHT float64 `json:"weight" xorm:"WEIGHT"` // 克拉重量
- SELLDELISTINGAPPLYID string `json:"selldelistingapplyid" xorm:"SELLDELISTINGAPPLYID1"` // [询价单号]卖摘牌申请ID(916+Unix秒时间戳(10位)+xxxxxx)
- BUYWRTRADEORDERID string `json:"buywrtradeorderid" xorm:"BUYWRTRADEORDERID1" form:"buywrtradeorderid"` // 买委托单ID
- BUYUSERID int64 `json:"buyuserid" xorm:"BUYUSERID"` // 买方用户ID
- SELLUSERID int64 `json:"selluserid" xorm:"SELLUSERID" form:"userid" binding:"required"` // 卖方用户ID
- SELLACCOUNTID int64 `json:"sellaccountid" xorm:"SELLACCOUNTID"` // 卖方账户ID
- WRSTANDARDID int64 `json:"wrstandardid" xorm:"WRSTANDARDID"` // 现货商品ID
- WRFACTORTYPEID string `json:"wrfactortypeid" xorm:"WRFACTORTYPEID1"` // 仓单要素类型ID
- APPLYQTY float64 `json:"applyqty" xorm:"APPLYQTY"` // 申请数量
- APPLYPRICE float64 `json:"applyprice" xorm:"APPLYPRICE"` // 申请价格
- APPLYSTATUS int32 `json:"applystatus" xorm:"APPLYSTATUS" form:"applystatus"` // 申请状态 - 1:待确认 2:已确认 3:已拒绝 4:已撤销 5:系统撤销 6:处理失败 7:确认中
- APPLYREMARK string `json:"applyremark" xorm:"APPLYREMARK"` // 申请备注
- APPLYTIME string `json:"applytime" xorm:"APPLYTIME1"` // 申请时间
- AUDITREMARK string `json:"auditremark" xorm:"AUDITREMARK"` // 确认备注
- SELLTRADEORDERID string `json:"selltradeorderid" xorm:"SELLTRADEORDERID1"` // 卖方委托ID(买方确认成交后更新)
- AUDITTIME time.Time `json:"audittime" xorm:"AUDITTIME"` // 确认时间
- LADINGBILLID string `json:"ladingbillid" xorm:"LADINGBILLID1"` // 卖方提单ID
- SUBNUM int32 `json:"subnum" xorm:"SUBNUM"` // 卖方提单子单号
- MARKETID int32 `json:"marketid" xorm:"MARKETID"` // 市场ID
- PERFORMANCETEMPLATEID int64 `json:"performancetemplateid" xorm:"PERFORMANCETEMPLATEID"` // 履约计划模板ID
- TYPE int `json:"-" form:"type"` // 查询类型 - 0:我的询价 1:我订单的询价
- PageEx `xorm:"extends"` // 页码信息
- }
- func (r *MyDelistingApply) calc() {
- }
- func (r *MyDelistingApply) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- q.GOODSNO,
- q.PRICE,
- q.WEIGHT,
- p.ZSALLPROPERTIES ,
- p.ZSTABLEDISPLAY ,
- p.BUYUSERNAME ,
- p.ZSCATEGORYDISPLAY ,
- p.ZSCURRENCYTYPEDISPLAY ,
- p.ZSSHAPETYPEDISPLAY ,
- p.ZSCOLORTYPEDISPLAY ,
- p.ZSCLARITYTYPEDISPLAY ,
- p.ZSCUTTYPEDISPLAY ,
- p.ZSSYMMETRYTYPEDISPLAY ,
- p.ZSPOLISHTYPEDISPLAY ,
- p.ZSFLUORESCENCETYPEDISPLAY,
- p.ZSSIZEDISPLAY ,
- p.ZSCRYSTALTYPEDISPLAY ,
- p.ZSSTYLETYPEDISPLAY ,
- p.ZSCZCOLOR1TYPEDISPLAY ,
- p.ZSCZCOLOR2TYPEDISPLAY ,
- p.ZSCZCOLOR3TYPEDISPLAY ,
- p.WAREHOUSEINFOSDISPLAY ,
- CASE WHEN
- q.SIZE1 IS NOT NULL AND q.SIZE2 IS NOT NULL AND q.SIZE2 IS NOT NULL THEN q.SIZE1 || '*' || q.SIZE2 || '*' || q.SIZE3
- ELSE q.SIZE1
- END AS SIZEDISPLAY,
- to_char(t.APPLYTIME, 'yyyy-mm-dd hh24:mi:ss') APPLYTIME1,
- to_char(t.SELLDELISTINGAPPLYID) SELLDELISTINGAPPLYID1,
- to_char(t.BUYWRTRADEORDERID) BUYWRTRADEORDERID1,
- t.BUYUSERID ,
- t.SELLUSERID ,
- t.SELLACCOUNTID ,
- t.WRSTANDARDID ,
- to_char(t.WRFACTORTYPEID) WRFACTORTYPEID1 ,
- t.APPLYQTY ,
- t.APPLYPRICE ,
- t.APPLYSTATUS ,
- t.APPLYREMARK ,
- t.APPLYTIME ,
- t.AUDITREMARK ,
- to_char(t.SELLTRADEORDERID) SELLTRADEORDERID1,
- t.AUDITTIME ,
- to_char(t.LADINGBILLID) LADINGBILLID1 ,
- t.SUBNUM ,
- t.MARKETID,
- d.PERFORMANCETEMPLATEID
- FROM GZ_SellDelistingApply t
- LEFT JOIN VIEW_GZ_BUYORDERDETAIL_QUERY p ON t.BUYWRTRADEORDERID = p.WRTRADEORDERID
- LEFT JOIN view_GZ_WRStandard_Ex_Query q ON t.WRSTANDARDID = q.WRSTANDARDID
- LEFT JOIN Wrtrade_Orderdetail d ON d.wrtradeorderid = t.BUYWRTRADEORDERID
- WHERE t.marketid=67201
- `
- if r.TYPE == 0 {
- sqlId.And("t.SELLUSERID", r.SELLUSERID)
- } else {
- sqlId.And("t.BuyUserID", r.SELLUSERID)
- }
- sqlId.AndEx("t.APPLYSTATUS", r.APPLYSTATUS, r.APPLYSTATUS > 0)
- if r.BUYWRTRADEORDERID != "" {
- sqlId.FormatParam(" and t.BUYWRTRADEORDERID = %v", r.BUYWRTRADEORDERID)
- }
- sqlId.OrderByDesc("t.SELLDELISTINGAPPLYID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyDelistingApply) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]MyDelistingApply, 0)
- err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // GZGoods 钻石信息
- type GZGoods struct {
- ZSALLPROPERTIES string `json:"-" xorm:"ZSALLPROPERTIES"` // 商品(查询字段-模糊查询)
- SELLUSERNAME string `json:"sellusername" xorm:"SELLUSERNAME"` // 账户名称(机构名称)
- SELLMOBILE string `json:"-" xorm:"SELLMOBILE"` // 手机号码(加密存储)
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` //
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSCURRENCYTYPEDISPLAYUNIT string `json:"zscurrencytypedisplayunit" xorm:"ZSCURRENCYTYPEDISPLAYUNIT"` //
- WAREHOUSENAMEDISPLAY string `json:"warehousenamedisplay" xorm:"WAREHOUSENAMEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPE1DISPLAY string `json:"zscolortype1display" xorm:"ZSCOLORTYPE1DISPLAY"` //
- ZSCOLORTYPE2DISPLAY string `json:"zscolortype2display" xorm:"ZSCOLORTYPE2DISPLAY"` //
- ZSCLARITYTYPE1DISPLAY string `json:"zsclaritytype1display" xorm:"ZSCLARITYTYPE1DISPLAY"` //
- ZSCLARITYTYPE2DISPLAY string `json:"zsclaritytype2display" xorm:"ZSCLARITYTYPE2DISPLAY"` //
- ZSCUTTYPE1DISPLAY string `json:"zscuttype1display" xorm:"ZSCUTTYPE1DISPLAY"` //
- ZSCUTTYPE2DISPLAY string `json:"zscuttype2display" xorm:"ZSCUTTYPE2DISPLAY"` //
- ZSSYMMETRYTYPE1DISPLAY string `json:"zssymmetrytype1display" xorm:"ZSSYMMETRYTYPE1DISPLAY"` //
- ZSSYMMETRYTYPE2DISPLAY string `json:"zssymmetrytype2display" xorm:"ZSSYMMETRYTYPE2DISPLAY"` //
- ZSPOLISHTYPE1DISPLAY string `json:"zspolishtype1display" xorm:"ZSPOLISHTYPE1DISPLAY"` //
- ZSPOLISHTYPE2DISPLAY string `json:"zspolishtype2display" xorm:"ZSPOLISHTYPE2DISPLAY"` //
- ZSFLUORESCENCETYPE1DISPLAY string `json:"zsfluorescencetype1display" xorm:"ZSFLUORESCENCETYPE1DISPLAY"` //
- ZSFLUORESCENCETYPE2DISPLAY string `json:"zsfluorescencetype2display" xorm:"ZSFLUORESCENCETYPE2DISPLAY"` //
- ZSCERTTYPEDISPLAY string `json:"zscerttypedisplay" xorm:"ZSCERTTYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- WRSTANDARDID int64 `json:"wrstandardid" xorm:"WRSTANDARDID"` // 现货商品ID
- USERID int64 `json:"userid" xorm:"USERID"` // 用户ID
- ZSCATEGORY int32 `json:"zscategory" xorm:"ZSCATEGORY"` // 钻石分类 - 枚举”ZSCategory“
- ZSCURRENCYTYPE int32 `json:"zscurrencytype" xorm:"ZSCURRENCYTYPE"` // 货币类型 - 枚举“ZSCurrencyType”
- GOODSNO string `json:"goodsno" xorm:"GOODSNO" form:"goodsno" binding:"required"` // 商品编号
- WAREHOUSEID int64 `json:"warehouseid" xorm:"WAREHOUSEID"` // 仓库ID
- MARKETPRICE string `json:"marketprice" xorm:"MARKETPRICE"` // 市场价
- IMAGEPATH string `json:"imagepath" xorm:"IMAGEPATH"` // 商品照片(相对地址)
- WRPATH string `json:"wrpath" xorm:"WRPATH"` // 仓单扫描件(相对地址)
- REMARK string `json:"remark" xorm:"REMARK"` // 备注
- PRICE float64 `json:"price" xorm:"PRICE"` // 总价(价格) - 类型:1,2,3,4,5
- WEIGHT float64 `json:"weight" xorm:"WEIGHT"` // 总重量(克拉重量) - 类型:1,2,3,4,5
- WEIGHTAVG float64 `json:"weightavg" xorm:"WEIGHTAVG"` // 平均单颗重量 - 类型:1,3
- PRICEPER string `json:"priceper" xorm:"PRICEPER"` // 克拉单价 - 类型:1,2,3,5
- ZSSHAPETYPE string `json:"zsshapetype" xorm:"ZSSHAPETYPE"` // 形状 - 枚举”ZSShapeType“ - 类型:1,2,4,5 ;(1为多个,逗号分隔)
- ZSCOLORTYPE1 int32 `json:"zscolortype1" xorm:"ZSCOLORTYPE1"` // 颜色1 - 枚举”ZSColorType“ - 类型:1,2,3,4
- ZSCOLORTYPE2 int32 `json:"zscolortype2" xorm:"ZSCOLORTYPE2"` // 颜色2 - 枚举”ZSColorType“ - 类型:1,3
- ZSCLARITYTYPE1 int32 `json:"zsclaritytype1" xorm:"ZSCLARITYTYPE1"` // 净度1 - 枚举”ZSClarityType“ - 类型:1,2,3,4,5
- ZSCLARITYTYPE2 int32 `json:"zsclaritytype2" xorm:"ZSCLARITYTYPE2"` // 净度2 - 枚举”ZSClarityType“ - 类型:1,3
- ZSCUTTYPE1 int32 `json:"zscuttype1" xorm:"ZSCUTTYPE1"` // 切工1 - 枚举”ZSCutType“ - 类型:1,2,4,5
- ZSCUTTYPE2 int32 `json:"zscuttype2" xorm:"ZSCUTTYPE2"` // 切工2 - 枚举”ZSCutType“ - 类型:1
- ZSSYMMETRYTYPE1 int32 `json:"zssymmetrytype1" xorm:"ZSSYMMETRYTYPE1"` // 对称度1 - 枚举”ZSSymmetryType“ - 类型:1,2,4,5
- ZSSYMMETRYTYPE2 int32 `json:"zssymmetrytype2" xorm:"ZSSYMMETRYTYPE2"` // 对称度2 - 枚举”ZSSymmetryType“ - 类型:1
- ZSPOLISHTYPE1 int32 `json:"zspolishtype1" xorm:"ZSPOLISHTYPE1"` // 抛光度1 - 枚举”ZSPolishType“ - 类型:1,2,4,5
- ZSPOLISHTYPE2 int32 `json:"zspolishtype2" xorm:"ZSPOLISHTYPE2"` // 抛光度2 - 枚举”ZSPolishType“ - 类型:1
- ZSFLUORESCENCETYPE1 int32 `json:"zsfluorescencetype1" xorm:"ZSFLUORESCENCETYPE1"` // 荧光1 - 枚举”ZSFluorescenceType“ - 类型:1,2,3,4,5
- ZSFLUORESCENCETYPE2 int32 `json:"zsfluorescencetype2" xorm:"ZSFLUORESCENCETYPE2"` // 荧光2 - 枚举”ZSFluorescenceType” - 类型:1,3
- SIZE1 string `json:"size1" xorm:"SIZE1"` // 尺寸1 - 类型:2,4,5
- SIZE2 string `json:"size2" xorm:"SIZE2"` // 尺寸2 - 类型:2,4,5
- SIZE3 string `json:"size3" xorm:"SIZE3"` // 尺寸3 - 类型:2,4,5
- ZSCERTTYPE int32 `json:"zscerttype" xorm:"ZSCERTTYPE"` // 证书类型 - 枚举”ZSCertType“ - 类型:2,4,5
- CERNO string `json:"cerno" xorm:"CERNO"` // 证书编号 - 类型:2,4,5
- ZSCRYSTALTYPE string `json:"zscrystaltype" xorm:"ZSCRYSTALTYPE"` // 晶型范围 - 枚举“ZSCrystalType“ - 类型:3, 多个,逗号分隔
- CPCERTNO string `json:"cpcertno" xorm:"CPCERTNO"` // 金伯利证书编号 - 类型:3
- ORIGIN string `json:"origin" xorm:"ORIGIN"` // 原产地 - 类型:3
- KPWEIGHT string `json:"kpweight" xorm:"KPWEIGHT"` // 金伯利证书重量 - 类型:3
- KPPATH string `json:"kppath" xorm:"KPPATH"` // 金伯利证书图片(相对地址) - 类型:3
- ZSSTYLETYPE int32 `json:"zsstyletype" xorm:"ZSSTYLETYPE"` // 款式 - 类型:4
- STONEDESC string `json:"stonedesc" xorm:"STONEDESC"` // 配石描述 - 类型:4
- SETTINGMATERIAL string `json:"settingmaterial" xorm:"SETTINGMATERIAL"` // 镶嵌材料 - 类型:4
- ZSCZCOLOR1TYPE int32 `json:"zsczcolor1type" xorm:"ZSCZCOLOR1TYPE"` // 彩钻颜色1 - 枚举”ZSCZColor1Type“ - 类型:5
- ZSCZCOLOR2TYPE int32 `json:"zsczcolor2type" xorm:"ZSCZCOLOR2TYPE"` // 彩钻颜色2 - 枚举”ZSCZColor2Type“ - 类型:5
- ZSCZCOLOR3TYPE int32 `json:"zsczcolor3type" xorm:"ZSCZCOLOR3TYPE"` // 彩钻颜色3 - 枚举”ZSCZColor3Type“ - 类型:5
- ISVALID int32 `json:"isvalid" xorm:"ISVALID"` // 是否有效 - 0:无效 1:有效
- WRTRADEORDERID string `json:"wrtradeorderid" xorm:"WRTRADEORDERID1" form:"wrtradeorderid"` // 仓单贸易委托单ID(320+Unix秒时间戳(10位)+xxxxxx)
- PERFORMANCETEMPLATEID int64 `json:"performancetemplateid" xorm:"PERFORMANCETEMPLATEID"` // 履约计划模板ID
- REMAINQTY float64 `json:"remainqty" xorm:"REMAINQTY"` // 剩余重量
- MOBILE string `json:"mobile"` // 手机号码
- }
- func (r *GZGoods) calc() {
- key, _ := hex.DecodeString(utils.AESSecretKey)
- if len(r.SELLMOBILE) > 0 {
- // 手机号码解密
- if phonenum, err := hex.DecodeString(r.SELLMOBILE); err == nil { // hex -> []byte
- if mobile, err := utils.AESDecrypt(phonenum, key); err == nil {
- r.MOBILE = string(mobile)
- }
- }
- }
- }
- func (r *GZGoods) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- t.*,
- u.MOBILE,
- to_char(od.WRTRADEORDERID) WRTRADEORDERID1,
- od.PERFORMANCETEMPLATEID,
- ((od.ORDERQTY - od.TRADEQTY) / 100) REMAINQTY
- FROM View_GZ_WRStandard_Ex_Query t
- LEFT JOIN userinfo u ON u.USERID = t.USERID
- LEFT JOIN WRTrade_OrderDetail od ON od.wrstandardid = t.wrstandardid
- WHERE GOODSNO = '%v'
- `
- sqlId.FormatParam(r.GOODSNO)
- return sqlId.String()
- }
- // GetDataEx 从数据库中查询数据
- func (r *GZGoods) GetDataEx() (interface{}, error) {
- e := db.GetEngine()
- s := e.SQL(r.buildSql())
- var sData GZGoods
- has, err := s.Get(&sData)
- if err != nil {
- return nil, err
- }
- if !has {
- return struct{}{}, nil
- }
- sData.calc()
- return sData, nil
- }
- // MyPerformanc 我的履约
- type MyPerformanc struct {
- PERFORMANCEPLANID string `json:"performanceplanid" xorm:"PERFORMANCEPLANID1"` // 履约计划ID(130+yyMMddHHmmss+xxxx)
- RELATEDORDERID string `json:"relatedorderid" xorm:"RELATEDORDERID1"` // 关联单号(履约类型的关联单号)
- AMOUNT float64 `json:"amount" xorm:"AMOUNT"` // 履约金额
- PAYMENTTYPE int32 `json:"paymenttype" xorm:"PAYMENTTYPE"` // 买方支付方式 - 1:冻结 2:扣款
- PERFORMANCESTATUS int32 `json:"performancestatus" xorm:"PERFORMANCESTATUS"` // 履约状态 - 1:待激活 2:正常 3:处理错误 4:违约待处理 5:违约处理中 6:完成 7.违约已完成 8:释放冻结失败 9:超时待处理 10:超时关闭
- CURSTEPID string `json:"curstepid" xorm:"CURSTEPID1"` // 当前步骤ID
- BUYPAIDAMOUNT float64 `json:"buypaidamount" xorm:"BUYPAIDAMOUNT"` // 买方已冻/已扣金额
- SELLRECEIVEDAMOUNT float64 `json:"sellreceivedamount" xorm:"SELLRECEIVEDAMOUNT"` // 卖方已收金额
- BUYERFREEZEAMOUNT float64 `json:"buyerfreezeamount" xorm:"BUYERFREEZEAMOUNT"` // 买方履约前冻结资金
- BUYERFREEZEAMOUNTREMAIN float64 `json:"buyerfreezeamountremain" xorm:"BUYERFREEZEAMOUNTREMAIN"` // 买方履约前冻结资金剩余
- SELLERFREEZEAMOUNT float64 `json:"sellerfreezeamount" xorm:"SELLERFREEZEAMOUNT"` // 卖方履约前冻结资金
- SELLERFREEZEAMOUNTREMAIN float64 `json:"sellerfreezeamountremain" xorm:"SELLERFREEZEAMOUNTREMAIN"` // 卖方履约前冻结资金剩余
- OVERSHORTAMOUNT float64 `json:"overshortamount" xorm:"OVERSHORTAMOUNT"` // 溢短金额
- BUYERINFO string `json:"buyerinfo" xorm:"BUYERINFO"` // 买方联系信息 - 存JSON字符串, 根据枚举‘BuyerContactInfo',显示\隐藏字段,若数据不为JSON,则直接显示{ "ContactInfo": "xxxxxxxx", "ReceiveInfo": "xxxxxxxxx", "ReceiptInfo": "xxxxxxxxxxxx"}
- SELLERINFO string `json:"sellerinfo" xorm:"SELLERINFO"` // 卖方联系信息 - 存JSON字符串, 根据枚举‘SellerContactInfo',显示\隐藏字段,若数据不为JSON,则直接显示{ "ContactInfo": "xxxxxxxx"}
- BUYACCOUNTID int64 `json:"buyaccountid" xorm:"BUYACCOUNTID"` // 买方账号
- STEPTYPEID int32 `json:"steptypeid" xorm:"STEPTYPEID"` // 履约步骤类型ID - 1:买方支付 2:卖方收款 3:买方自提 4:卖方发货 5:买方确认货 6:卖方发票 7:买方确认票 8:仓单转移 9:释放卖方冻结 10:货款溢短 11:生成合同[中江] 12:运费 90:确认支付 91. 确认放行 92买方支付(直接扣款) 用于-1模板“
- REMAINDAYS int32 `json:"remaindays" xorm:"REMAINDAYS"` // 剩余天数
- ACCOUNTNAME string `json:"accountname" xorm:"ACCOUNTNAME"` // [对手方]账户名称(机构名称)
- ZSALLPROPERTIES string `json:"-" xorm:"ZSALLPROPERTIES" form:"zsallproperties"` // 商品(查询字段-模糊查询)
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` //
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSCURRENCYTYPEDISPLAYUNIT string `json:"zscurrencytypedisplayunit" xorm:"ZSCURRENCYTYPEDISPLAYUNIT"` //
- WAREHOUSENAMEDISPLAY string `json:"warehousenamedisplay" xorm:"WAREHOUSENAMEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPE1DISPLAY string `json:"zscolortype1display" xorm:"ZSCOLORTYPE1DISPLAY"` //
- ZSCOLORTYPE2DISPLAY string `json:"zscolortype2display" xorm:"ZSCOLORTYPE2DISPLAY"` //
- ZSCLARITYTYPE1DISPLAY string `json:"zsclaritytype1display" xorm:"ZSCLARITYTYPE1DISPLAY"` //
- ZSCLARITYTYPE2DISPLAY string `json:"zsclaritytype2display" xorm:"ZSCLARITYTYPE2DISPLAY"` //
- ZSCUTTYPE1DISPLAY string `json:"zscuttype1display" xorm:"ZSCUTTYPE1DISPLAY"` //
- ZSCUTTYPE2DISPLAY string `json:"zscuttype2display" xorm:"ZSCUTTYPE2DISPLAY"` //
- ZSSYMMETRYTYPE1DISPLAY string `json:"zssymmetrytype1display" xorm:"ZSSYMMETRYTYPE1DISPLAY"` //
- ZSSYMMETRYTYPE2DISPLAY string `json:"zssymmetrytype2display" xorm:"ZSSYMMETRYTYPE2DISPLAY"` //
- ZSPOLISHTYPE1DISPLAY string `json:"zspolishtype1display" xorm:"ZSPOLISHTYPE1DISPLAY"` //
- ZSPOLISHTYPE2DISPLAY string `json:"zspolishtype2display" xorm:"ZSPOLISHTYPE2DISPLAY"` //
- ZSFLUORESCENCETYPE1DISPLAY string `json:"zsfluorescencetype1display" xorm:"ZSFLUORESCENCETYPE1DISPLAY"` //
- ZSFLUORESCENCETYPE2DISPLAY string `json:"zsfluorescencetype2display" xorm:"ZSFLUORESCENCETYPE2DISPLAY"` //
- ZSCERTTYPEDISPLAY string `json:"zscerttypedisplay" xorm:"ZSCERTTYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- PRICE float64 `json:"price" xorm:"PRICE"` // 价格
- PRICEPER string `json:"priceper" xorm:"PRICEPER"` // 克拉单价
- SIZEDISPLAY string `json:"sizedisplay" xorm:"SIZEDISPLAY"` // 尺寸
- GOODSNO string `json:"goodsno" xorm:"GOODSNO"` // 商品编号
- USERID int64 `json:"-" form:"userid" binding:"required"` // 用户ID
- BuyOrSell int64 `json:"buyorsell" form:"buyorsell"` // 方向 - 0:买 1:卖
- IsHis bool `json:"-" form:"ishis"` // 是否历史查询
- BeginDate string `json:"-" form:"begindate"` // 开始交易日
- EndDate string `json:"-" form:"enddate"` // 结束交易日
- PageEx `xorm:"extends"` // 页码信息
- }
- func (r *MyPerformanc) calc() {
- }
- func (r *MyPerformanc) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- to_char(pp.PERFORMANCEPLANID) PERFORMANCEPLANID1,
- to_char(pp.RELATEDORDERID) RELATEDORDERID1 ,
- pp.AMOUNT ,
- pp.PAYMENTTYPE ,
- pp.PERFORMANCESTATUS ,
- to_char(pp.CURSTEPID) CURSTEPID1 ,
- pp.BUYPAIDAMOUNT ,
- pp.SELLRECEIVEDAMOUNT ,
- pp.BUYERFREEZEAMOUNT ,
- pp.BUYERFREEZEAMOUNTREMAIN ,
- pp.SELLERFREEZEAMOUNT ,
- pp.SELLERFREEZEAMOUNTREMAIN,
- pp.OVERSHORTAMOUNT ,
- pp.BUYERINFO ,
- pp.SELLERINFO ,
- pp.BUYACCOUNTID,
- ps.STEPTYPEID,
- ua.ACCOUNTNAME ,
- wr.GOODSNO,
- wr.ZSALLPROPERTIES ,
- wr.ZSCATEGORYDISPLAY ,
- wr.ZSCURRENCYTYPEDISPLAY ,
- wr.ZSCURRENCYTYPEDISPLAYUNIT ,
- wr.WAREHOUSENAMEDISPLAY ,
- wr.ZSSHAPETYPEDISPLAY ,
- wr.ZSCOLORTYPE1DISPLAY ,
- wr.ZSCOLORTYPE2DISPLAY ,
- wr.ZSCLARITYTYPE1DISPLAY ,
- wr.ZSCLARITYTYPE2DISPLAY ,
- wr.ZSCUTTYPE1DISPLAY ,
- wr.ZSCUTTYPE2DISPLAY ,
- wr.ZSSYMMETRYTYPE1DISPLAY ,
- wr.ZSSYMMETRYTYPE2DISPLAY ,
- wr.ZSPOLISHTYPE1DISPLAY ,
- wr.ZSPOLISHTYPE2DISPLAY ,
- wr.ZSFLUORESCENCETYPE1DISPLAY,
- wr.ZSFLUORESCENCETYPE2DISPLAY,
- wr.ZSCERTTYPEDISPLAY ,
- wr.ZSCRYSTALTYPEDISPLAY ,
- wr.ZSSTYLETYPEDISPLAY ,
- wr.ZSCZCOLOR1TYPEDISPLAY ,
- wr.ZSCZCOLOR2TYPEDISPLAY ,
- wr.ZSCZCOLOR3TYPEDISPLAY ,
- wr.PRICE ,
- wr.PRICEPER ,
- CASE WHEN
- wr.SIZE1 IS NOT NULL AND wr.SIZE2 IS NOT NULL AND wr.SIZE2 IS NOT NULL THEN wr.SIZE1 || '*' || wr.SIZE2 || '*' || wr.SIZE3
- ELSE wr.SIZE1
- END AS SIZEDISPLAY,
- ps.REMAINDAYS
- FROM PerformancePlan pp
- inner join PerformanceStep ps on pp.curstepid = ps.performancestepid
- inner join wrtrade_tradedetail td on pp.relatedorderid = td.wrtradedetailid
- inner join taaccount ta on td.accountid = ta.accountid
- inner join taaccount ta2 on td.matchaccountid = ta2.accountid
- inner join useraccount ua on ta2.relateduserid = ua.userid
- inner join wrfactortype ft on td.wrfactortypeid = ft.wrfactortypeid
- inner join View_GZ_WRStandard_Ex_Query wr on ft.wrstandardid = wr.wrstandardid
- where 1=1
- `
- sqlId.And("ta.relateduserid", r.USERID)
- sqlId.And("td.buyorsell", r.BuyOrSell)
- sqlId.AndLike("wr.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- sqlId.OrderByDesc("pp.PERFORMANCEPLANID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyPerformanc) buildSql_His() string {
- var sqlId utils.SQLVal = `
- SELECT
- to_char(pp.PERFORMANCEPLANID) PERFORMANCEPLANID1,
- pp.RELATEDORDERID ,
- pp.AMOUNT ,
- pp.PAYMENTTYPE ,
- pp.PERFORMANCESTATUS ,
- pp.CURSTEPID ,
- pp.BUYPAIDAMOUNT ,
- pp.SELLRECEIVEDAMOUNT ,
- pp.BUYERFREEZEAMOUNT ,
- pp.BUYERFREEZEAMOUNTREMAIN ,
- pp.SELLERFREEZEAMOUNT ,
- pp.SELLERFREEZEAMOUNTREMAIN,
- pp.OVERSHORTAMOUNT ,
- pp.BUYERINFO ,
- pp.SELLERINFO ,
- pp.BUYACCOUNTID,
- ps.STEPTYPEID,
- ua.ACCOUNTNAME ,
- wr.GOODSNO,
- wr.ZSALLPROPERTIES ,
- wr.ZSCATEGORYDISPLAY ,
- wr.ZSCURRENCYTYPEDISPLAY ,
- wr.ZSCURRENCYTYPEDISPLAYUNIT ,
- wr.WAREHOUSENAMEDISPLAY ,
- wr.ZSSHAPETYPEDISPLAY ,
- wr.ZSCOLORTYPE1DISPLAY ,
- wr.ZSCOLORTYPE2DISPLAY ,
- wr.ZSCLARITYTYPE1DISPLAY ,
- wr.ZSCLARITYTYPE2DISPLAY ,
- wr.ZSCUTTYPE1DISPLAY ,
- wr.ZSCUTTYPE2DISPLAY ,
- wr.ZSSYMMETRYTYPE1DISPLAY ,
- wr.ZSSYMMETRYTYPE2DISPLAY ,
- wr.ZSPOLISHTYPE1DISPLAY ,
- wr.ZSPOLISHTYPE2DISPLAY ,
- wr.ZSFLUORESCENCETYPE1DISPLAY,
- wr.ZSFLUORESCENCETYPE2DISPLAY,
- wr.ZSCERTTYPEDISPLAY ,
- wr.ZSCRYSTALTYPEDISPLAY ,
- wr.ZSSTYLETYPEDISPLAY ,
- wr.ZSCZCOLOR1TYPEDISPLAY ,
- wr.ZSCZCOLOR2TYPEDISPLAY ,
- wr.ZSCZCOLOR3TYPEDISPLAY ,
- wr.PRICE ,
- wr.PRICEPER ,
- CASE WHEN
- wr.SIZE1 IS NOT NULL AND wr.SIZE2 IS NOT NULL AND wr.SIZE2 IS NOT NULL THEN wr.SIZE1 || '*' || wr.SIZE2 || '*' || wr.SIZE3
- ELSE wr.SIZE1
- END AS SIZEDISPLAY
- FROM HIS_PerformancePlan pp
- inner join HIS_PerformanceStep ps on pp.curstepid = ps.performancestepid
- inner join HIS_wrtrade_tradedetail td on pp.relatedorderid = td.wrtradedetailid
- inner join taaccount ta on td.accountid = ta.accountid
- inner join taaccount ta2 on td.matchaccountid = ta2.accountid
- inner join useraccount ua on ta2.relateduserid = ua.userid
- inner join wrfactortype ft on td.wrfactortypeid = ft.wrfactortypeid
- inner join View_GZ_WRStandard_Ex_Query wr on ft.wrstandardid = wr.wrstandardid
- where pp.isvaliddata =1 and ps.isvaliddata = 1 and td.isvaliddata = 1
- `
- sqlId.And("ta.relateduserid", r.USERID)
- sqlId.And("td.buyorsell", r.BuyOrSell)
- sqlId.AndLike("wr.ZSALLPROPERTIES", r.ZSALLPROPERTIES)
- if r.BeginDate != "" && r.EndDate != "" {
- sqlId.JoinFormat(" AND (pp.createtime between to_date('%v', 'yyyyMMdd') and to_date('%v', 'yyyyMMdd'))", r.BeginDate, r.EndDate)
- }
- sqlId.OrderByDesc("pp.PERFORMANCEPLANID")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyPerformanc) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]MyPerformanc, 0)
- sql := ""
- if r.IsHis {
- sql = r.buildSql_His()
- } else {
- sql = r.buildSql()
- }
- err := db.GetEngine().SQL(sql).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // MyFavorite 我的收藏
- type MyFavorite struct {
- USERID int64 `json:"userid" xorm:"USERID" form:"userid" binding:"required"` // 用户ID
- WRTRADEORDERID string `json:"wrtradeorderid" xorm:"WRTRADEORDERID1"` // 仓单贸易委托单ID(320+Unix秒时间戳(10位)+xxxxxx)
- BUYORSELL int32 `json:"buyorsell" xorm:"BUYORSELL"` // 买卖 - 0:买 1:卖
- WRFACTORTYPEID string `json:"wrfactortypeid" xorm:"WRFACTORTYPEID1"` // 仓单要素类型ID/商品ID(77)
- WRSTANDARDID int64 `json:"wrstandardid" xorm:"WRSTANDARDID"` // 现货商品ID(自增 SEQ_GOODS 确保不重复)
- FAVORITESTATUS int32 `json:"favoritestatus" xorm:"FAVORITESTATUS"` // 收藏状态 - 1:正常 2:失效
- MARKETID int32 `json:"marketid" xorm:"MARKETID"` // 市场ID
- ZSCATEGORYDISPLAY string `json:"zscategorydisplay" xorm:"ZSCATEGORYDISPLAY"` //
- ZSCURRENCYTYPEDISPLAY string `json:"zscurrencytypedisplay" xorm:"ZSCURRENCYTYPEDISPLAY"` //
- ZSCURRENCYTYPEDISPLAYUNIT string `json:"zscurrencytypedisplayunit" xorm:"ZSCURRENCYTYPEDISPLAYUNIT"` //
- WAREHOUSENAMEDISPLAY string `json:"warehousenamedisplay" xorm:"WAREHOUSENAMEDISPLAY"` //
- ZSSHAPETYPEDISPLAY string `json:"zsshapetypedisplay" xorm:"ZSSHAPETYPEDISPLAY"` //
- ZSCOLORTYPE1DISPLAY string `json:"zscolortype1display" xorm:"ZSCOLORTYPE1DISPLAY"` //
- ZSCOLORTYPE2DISPLAY string `json:"zscolortype2display" xorm:"ZSCOLORTYPE2DISPLAY"` //
- ZSCLARITYTYPE1DISPLAY string `json:"zsclaritytype1display" xorm:"ZSCLARITYTYPE1DISPLAY"` //
- ZSCLARITYTYPE2DISPLAY string `json:"zsclaritytype2display" xorm:"ZSCLARITYTYPE2DISPLAY"` //
- ZSCUTTYPE1DISPLAY string `json:"zscuttype1display" xorm:"ZSCUTTYPE1DISPLAY"` //
- ZSCUTTYPE2DISPLAY string `json:"zscuttype2display" xorm:"ZSCUTTYPE2DISPLAY"` //
- ZSSYMMETRYTYPE1DISPLAY string `json:"zssymmetrytype1display" xorm:"ZSSYMMETRYTYPE1DISPLAY"` //
- ZSSYMMETRYTYPE2DISPLAY string `json:"zssymmetrytype2display" xorm:"ZSSYMMETRYTYPE2DISPLAY"` //
- ZSPOLISHTYPE1DISPLAY string `json:"zspolishtype1display" xorm:"ZSPOLISHTYPE1DISPLAY"` //
- ZSPOLISHTYPE2DISPLAY string `json:"zspolishtype2display" xorm:"ZSPOLISHTYPE2DISPLAY"` //
- ZSFLUORESCENCETYPE1DISPLAY string `json:"zsfluorescencetype1display" xorm:"ZSFLUORESCENCETYPE1DISPLAY"` //
- ZSFLUORESCENCETYPE2DISPLAY string `json:"zsfluorescencetype2display" xorm:"ZSFLUORESCENCETYPE2DISPLAY"` //
- ZSCERTTYPEDISPLAY string `json:"zscerttypedisplay" xorm:"ZSCERTTYPEDISPLAY"` //
- ZSCRYSTALTYPEDISPLAY string `json:"zscrystaltypedisplay" xorm:"ZSCRYSTALTYPEDISPLAY"` //
- ZSSTYLETYPEDISPLAY string `json:"zsstyletypedisplay" xorm:"ZSSTYLETYPEDISPLAY"` //
- ZSCZCOLOR1TYPEDISPLAY string `json:"zsczcolor1typedisplay" xorm:"ZSCZCOLOR1TYPEDISPLAY"` //
- ZSCZCOLOR2TYPEDISPLAY string `json:"zsczcolor2typedisplay" xorm:"ZSCZCOLOR2TYPEDISPLAY"` //
- ZSCZCOLOR3TYPEDISPLAY string `json:"zsczcolor3typedisplay" xorm:"ZSCZCOLOR3TYPEDISPLAY"` //
- GOODSNO string `json:"goodsno" xorm:"GOODSNO"` // 商品编号
- PRICE float64 `json:"price" xorm:"PRICE"` // 价格
- PRICEPER string `json:"priceper" xorm:"PRICEPER"` // 克拉单价
- WEIGHT float64 `json:"weight" xorm:"WEIGHT"` // 总重量(克拉重量) - 类型:1,2,3,4,5
- WEIGHTAVG float64 `json:"weightavg" xorm:"WEIGHTAVG"` // 平均单颗重量 - 类型:1,3
- SIZEDISPLAY string `json:"sizedisplay" xorm:"SIZEDISPLAY"` // 尺寸
- ZSCATEGORY int32 `json:"zscategory" xorm:"ZSCATEGORY"` // 钻石分类 - 枚举”ZSCategory“
- PageEx `xorm:"extends"` // 页码信息
- ZSCATEGORYS string `json:"-" form:"zscategorys"` // 钻石分类,格式: 1,2,3
- }
- func (r *MyFavorite) calc() {
- }
- func (r *MyFavorite) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- t.USERID ,
- to_char(t.WRTRADEORDERID) WRTRADEORDERID1,
- t.BUYORSELL ,
- to_char(t.WRFACTORTYPEID) WRFACTORTYPEID1,
- t.WRSTANDARDID ,
- t.FAVORITESTATUS,
- t.MARKETID ,
- q.GOODSNO,
- q.ZSCATEGORYDISPLAY ,
- q.ZSCURRENCYTYPEDISPLAY ,
- q.ZSCURRENCYTYPEDISPLAYUNIT ,
- q.WAREHOUSENAMEDISPLAY ,
- q.ZSSHAPETYPEDISPLAY ,
- q.ZSCOLORTYPE1DISPLAY ,
- q.ZSCOLORTYPE2DISPLAY ,
- q.ZSCLARITYTYPE1DISPLAY ,
- q.ZSCLARITYTYPE2DISPLAY ,
- q.ZSCUTTYPE1DISPLAY ,
- q.ZSCUTTYPE2DISPLAY ,
- q.ZSSYMMETRYTYPE1DISPLAY ,
- q.ZSSYMMETRYTYPE2DISPLAY ,
- q.ZSPOLISHTYPE1DISPLAY ,
- q.ZSPOLISHTYPE2DISPLAY ,
- q.ZSFLUORESCENCETYPE1DISPLAY,
- q.ZSFLUORESCENCETYPE2DISPLAY,
- q.ZSCERTTYPEDISPLAY ,
- q.ZSCRYSTALTYPEDISPLAY ,
- q.ZSSTYLETYPEDISPLAY ,
- q.ZSCZCOLOR1TYPEDISPLAY ,
- q.ZSCZCOLOR2TYPEDISPLAY ,
- q.ZSCZCOLOR3TYPEDISPLAY ,
- q.PRICE ,
- q.PRICEPER ,
- q.WEIGHT,
- q.WEIGHTAVG,
- q.ZSCATEGORY,
- CASE WHEN
- q.SIZE1 IS NOT NULL AND q.SIZE2 IS NOT NULL AND q.SIZE2 IS NOT NULL THEN q.SIZE1 || '*' || q.SIZE2 || '*' || q.SIZE3
- ELSE q.SIZE1
- END AS SIZEDISPLAY
- FROM Wrtrade_Myfavorite t
- LEFT JOIN view_GZ_WRStandard_Ex_Query q ON t.WRSTANDARDID = q.WRSTANDARDID
- WHERE t.marketid=67201
- `
- sqlId.And("t.USERID", r.USERID)
- if r.ZSCATEGORYS != "" {
- sqlId.JoinFormat(" AND q.ZSCATEGORY in (%v)", r.ZSCATEGORYS)
- }
- sqlId.OrderByDesc("t.CREATETIME")
- sqlId.Page(r.Page, r.PageSize)
- return sqlId.String()
- }
- func (r *MyFavorite) GetDataByPage() (interface{}, error, int, int, int) {
- sData := make([]MyFavorite, 0)
- err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
- total := 0
- for i := range sData {
- sData[i].calc()
- total = sData[i].Total
- }
- return sData, err, r.Page, r.PageSize, total
- }
- // Gzrapaportprice Rapaport最新报价表(广钻)
- type Gzrapaportprice struct {
- ZSSHAPE int32 `json:"-" xorm:"ZSSHAPE" form:"zsshape" binding:"required"` // 形状 - 1:BR(圆形) 2:PS(异形)
- ZSSIZESTART float64 `json:"-" xorm:"ZSSIZESTART"` // 尺寸1
- ZSSIZEEND float64 `json:"-" xorm:"ZSSIZEEND"` // 尺寸2
- ZSCOLOR string `json:"-" xorm:"ZSCOLOR" form:"zscolor" binding:"required"` // 颜色(D-M)
- ZSCLARITY string `json:"-" xorm:"ZSCLARITY" form:"zsclarity" binding:"required"` // 净度
- QUOTEDATE time.Time `json:"-" xorm:"QUOTEDATE"` // 报价日期(yyyyMMdd)
- ZSPRICE float64 `json:"-" xorm:"ZSPRICE"` // 价格(美元)
- CREATETIME time.Time `json:"-" xorm:"CREATETIME"` // 创建时间
- ORDERINDEX int64 `json:"-" xorm:"ORDERINDEX"` // 顺序
- WEIGHT float64 `json:"-" form:"weight" binding:"required"` // 重量
- RATE float64 `json:"-" form:"rate" binding:"required"` // 汇率
- DISCOUNT int `json:"-" form:"discount"` // 折扣(%), 方向(加:10, 减:-10 )
- DOLLAR string `json:"dollar"` // 美元
- RMB string `json:"rmb"` // 人民币
- }
- func (r *Gzrapaportprice) calc(weight, rate float64, discount int) {
- // $(美元值): ZSPRICE * (1+(折扣值/100) * 折扣方向), -- 折扣方向(加:1, 减:-1 )
- // ¥(人民币值):美元值* 汇率;
- dollar := r.ZSPRICE * (1 + (float64(discount) / 100)) * weight
- r.DOLLAR = utils.FormatFloat(dollar, 2)
- r.RMB = utils.FormatFloat(dollar*rate, 2)
- }
- func (r *Gzrapaportprice) buildSql() string {
- var sqlId utils.SQLVal = `
- SELECT
- t.zsprice
- FROM GZ_RapaportPrice t
- WHERE t.zsshape = %v AND t.zscolor = '%v' AND t.zsclarity = '%v'
- `
- sqlId.FormatParam(r.ZSSHAPE, r.ZSCOLOR, r.ZSCLARITY)
- sqlId.JoinFormat(" AND t.zssizestart <= %v AND t.zssizeend >= %v", r.WEIGHT, r.WEIGHT)
- return sqlId.String()
- }
- // GetDataEx 从数据库中查询数据
- func (r *Gzrapaportprice) GetDataEx() (interface{}, error) {
- e := db.GetEngine()
- s := e.SQL(r.buildSql())
- sData := make([]Gzrapaportprice, 0)
- if err := s.Find(&sData); err != nil {
- return nil, err
- }
- for i := range sData {
- sData[i].calc(r.WEIGHT, r.RATE, r.DISCOUNT)
- }
- return sData, nil
- }
- // Gzcertaddressconfig 钻石证书地址配置表
- type Gzcertaddressconfig struct {
- CERTTYPE string `json:"certtype" xorm:"CERTTYPE"` // 证书类型
- ORGCNNAME string `json:"orgcnname" xorm:"ORGCNNAME"` // 机构名称(中文)
- ORGENNAME string `json:"orgenname" xorm:"ORGENNAME"` // 机构名称(英文)
- CERTREGION int32 `json:"certregion" xorm:"CERTREGION"` // 证书地域 - 1:国内 2:国际
- QUERYADDRESS string `json:"queryaddress" xorm:"QUERYADDRESS"` // 查询地址
- REMARK string `json:"remark" xorm:"REMARK"` // 备注
- UPDATETIME time.Time `json:"updatetime" xorm:"UPDATETIME"` // 更新时间
- ORDERINDEX int32 `json:"orderindex" xorm:"ORDERINDEX"` // 显示顺序
- }
- // TableName is GZ_CERTADDRESSCONFIG
- func (r *Gzcertaddressconfig) TableName() string {
- return "GZ_CERTADDRESSCONFIG"
- }
- func (r *Gzcertaddressconfig) GetAll() (data []Gzcertaddressconfig, err error) {
- err = db.GetEngine().Find(&data)
- return
- }
- // Gzcertaddressparam 钻石证书地址参数表
- type Gzcertaddressparam struct {
- CERTTYPE string `json:"certtype" xorm:"CERTTYPE"` // 证书类型
- PARAMKEY string `json:"paramkey" xorm:"PARAMKEY"` // 参数Key
- PARAMNAME string `json:"paramname" xorm:"PARAMNAME"` // 参数名称
- ORDERINDEX int32 `json:"orderindex" xorm:"ORDERINDEX"` // 参数顺序
- UPDATETIME time.Time `json:"updatetime" xorm:"UPDATETIME"` // 更新时间
- }
- // TableName is GZ_CERTADDRESSPARAM
- func (r *Gzcertaddressparam) TableName() string {
- return "GZ_CERTADDRESSPARAM"
- }
- func (r *Gzcertaddressparam) GetAll() (data []Gzcertaddressparam, err error) {
- err = db.GetEngine().Find(&data)
- return
- }
- // GZHomeData 广钻首页统计数据
- type GZHomeData struct {
- TransactionsOnSale int `json:"transactionsonsale"` // 出售中的交易
- TransactionInPurchase int `json:"transactioninpurchase"` // 求购中的交易
- PurchasedTransactions int `json:"purchasedtransactions"` // 已购买的交易
- TransactionsSold int `json:"transactionssold"` // 已卖出的交易
- UnhandledMessage int `json:"unhandledmessage"` // 未处理消息
- USERID uint64 `json:"-" form:"userid" binding:"required"` // 用户ID
- }
- func (r *GZHomeData) GetGZHomeData() (err error) {
- w1 := make([]Wrtradeorderdetail, 0)
- if err = db.GetEngine().Table("WRTRADE_ORDERDETAIL").Where("MarketID=67201 AND WRTradeOrderStatus IN (3,7) AND BuyOrSell = 1").And("UserID=?", r.USERID).Find(&w1); err != nil {
- return
- }
- r.TransactionsOnSale = len(w1)
- w2 := make([]Wrtradeorderdetail, 0)
- if err = db.GetEngine().Table("WRTRADE_ORDERDETAIL").Where("MarketID=67201 AND WRTradeOrderStatus IN (3,7) AND BuyOrSell = 0").And("UserID=?", r.USERID).Find(&w2); err != nil {
- return
- }
- r.TransactionInPurchase = len(w2)
- w3 := make([]Wrtradeorderdetail, 0)
- if err = db.GetEngine().Table("WRTRADE_TRADEQUOTE T").Select("T.*").Where("T.MarketID=67201").And("T.BuyUserID=?", r.USERID).Find(&w3); err != nil {
- return
- }
- r.PurchasedTransactions = len(w3)
- w4 := make([]Wrtradeorderdetail, 0)
- if err = db.GetEngine().Table("WRTRADE_TRADEQUOTE T").Select("T.*").Where("T.MarketID=67201").And("T.SellUserID=?", r.USERID).Find(&w4); err != nil {
- return
- }
- r.TransactionsSold = len(w4)
- w5 := make([]Wrtradebargainapply, 0)
- if err = db.GetEngine().Table("WRTRADE_BARGAINAPPLY T").Select("T.*").Where("T.MarketID=67201 AND T.ApplyStatus=1").And("T.MatchUserID=?", r.USERID).Find(&w5); err != nil {
- return
- }
- w6 := make([]Gzselldelistingapply, 0)
- if err = db.GetEngine().Table("GZ_SELLDELISTINGAPPLY T").Select("T.*").Where("T.MarketID=67201 AND T.ApplyStatus=1").And("T.BuyUserID=?", r.USERID).Find(&w6); err != nil {
- return
- }
- r.UnhandledMessage = len(w5) + len(w6)
- return
- }
|