123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939 |
- $PBExportHeader$uo_fx_saletask_custom_tab.sru
- forward
- global type uo_fx_saletask_custom_tab from tab
- end type
- type tabpage_fj from userobject within uo_fx_saletask_custom_tab
- end type
- type cb_fj_commit from commandbutton within tabpage_fj
- end type
- type dw_fj from u_dw_rbtnfilter within tabpage_fj
- end type
- type cb_fj_del from commandbutton within tabpage_fj
- end type
- type cb_fj_upload from commandbutton within tabpage_fj
- end type
- type cbx_fj_ch_all from checkbox within tabpage_fj
- end type
- type tabpage_fj from userobject within uo_fx_saletask_custom_tab
- cb_fj_commit cb_fj_commit
- dw_fj dw_fj
- cb_fj_del cb_fj_del
- cb_fj_upload cb_fj_upload
- cbx_fj_ch_all cbx_fj_ch_all
- end type
- type tabpage_fymx from userobject within uo_fx_saletask_custom_tab
- end type
- type dw_fymx from u_dw_rbtnfilter within tabpage_fymx
- end type
- type tabpage_fymx from userobject within uo_fx_saletask_custom_tab
- dw_fymx dw_fymx
- end type
- type tabpage_sfxm from userobject within uo_fx_saletask_custom_tab
- end type
- type dw_sfxm from u_dw_rbtnfilter within tabpage_sfxm
- end type
- type tabpage_sfxm from userobject within uo_fx_saletask_custom_tab
- dw_sfxm dw_sfxm
- end type
- type tabpage_barcode from userobject within uo_fx_saletask_custom_tab
- end type
- type dw_barcode from u_dw_rbtnfilter within tabpage_barcode
- end type
- type tabpage_barcode from userobject within uo_fx_saletask_custom_tab
- dw_barcode dw_barcode
- end type
- type tabpage_log from userobject within uo_fx_saletask_custom_tab
- end type
- type dw_log from u_dw_rbtnfilter within tabpage_log
- end type
- type tabpage_log from userobject within uo_fx_saletask_custom_tab
- dw_log dw_log
- end type
- end forward
- global type uo_fx_saletask_custom_tab from tab
- integer width = 2542
- integer height = 1160
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long backcolor = 16777215
- boolean raggedright = true
- boolean focusonbuttondown = true
- integer selectedtab = 1
- tabpage_fj tabpage_fj
- tabpage_fymx tabpage_fymx
- tabpage_sfxm tabpage_sfxm
- tabpage_barcode tabpage_barcode
- tabpage_log tabpage_log
- event ue_resize ( )
- event ue_init ( long a_taskid, long a_status, window a_parent )
- event ue_tab_fj_del ( long a_printid )
- event ue_init_with_tid ( long a_taskid, long a_status, string a_tid, window a_parent )
- end type
- global uo_fx_saletask_custom_tab uo_fx_saletask_custom_tab
- type variables
- long ins_taskid, ins_status
- string ins_tid
- window ins_parent
- end variables
- forward prototypes
- public subroutine wf_retr (boolean a_ifforce)
- public subroutine wf_retr_fj ()
- public subroutine wf_retr_fymx ()
- public subroutine wf_retr_sfxm ()
- public subroutine wf_retr_barcode ()
- public subroutine wf_retr_log ()
- public subroutine wf_open ()
- end prototypes
- event ue_resize();// 附件
- tabpage_fj.dw_fj.Width = tabpage_fj.Width
- tabpage_fj.dw_fj.Height = tabpage_fj.Height - tabpage_fj.dw_fj.Y
- // 费用明细
- tabpage_fymx.dw_fymx.Width = tabpage_fymx.Width
- tabpage_fymx.dw_fymx.Height = tabpage_fymx.Height - tabpage_fymx.dw_fymx.Y
- // 收费项目
- tabpage_sfxm.dw_sfxm.Width = tabpage_sfxm.Width
- tabpage_sfxm.dw_sfxm.Height = tabpage_sfxm.Height - tabpage_sfxm.dw_sfxm.Y
- // 条码
- tabpage_barcode.dw_barcode.Width = tabpage_barcode.Width
- tabpage_barcode.dw_barcode.Height = tabpage_barcode.Height - tabpage_barcode.dw_barcode.Y
- // 日志
- tabpage_log.dw_log.Width = tabpage_log.Width
- tabpage_log.dw_log.Height = tabpage_log.Height - tabpage_log.dw_log.Y
- end event
- event ue_init(long a_taskid, long a_status, window a_parent);post event ue_init_with_tid(a_taskid, a_status, '', a_parent)
- end event
- event ue_tab_fj_del(long a_printid);// 删除订单明细,触发删除对应附件事件
- // a_printid--订单明细printid
- long ll_findRow, ll_index = 0
- long ll_arr_rows[]
- string ls_findStr = 'mxprintid = ' + string(a_printid)
- ls_findStr = 'mxprintid = ' + string(a_printid)
- ll_findRow = tabpage_fj.dw_fj.Find(ls_findStr, 1, tabpage_fj.dw_fj.RowCount())
- do while (ll_findRow > 0)
- ll_index++
- ll_arr_rows[ll_index] = ll_findRow
-
- if (ll_findRow + 1 > tabpage_fj.dw_fj.RowCount()) then exit
- ll_findRow = tabpage_fj.dw_fj.Find(ls_findStr, ll_findRow + 1, tabpage_fj.dw_fj.RowCount())
- loop
- if (ll_index > 0) then
- // 退回状态,删除明细,重新添加明细,添加附件,不需要删除fx_saletask_fj,保存接口会处理
-
- for ll_index = UpperBound(ll_arr_rows) to 1 step - 1
- tabpage_fj.dw_fj.DeleteRow(ll_arr_rows[ll_index])
- next
- end if
- end event
- event ue_init_with_tid(long a_taskid, long a_status, string a_tid, window a_parent);ins_taskid = a_taskid
- ins_status = a_status
- ins_tid = a_tid
- ins_parent = a_parent
- wf_retr(true)
- end event
- public subroutine wf_retr (boolean a_ifforce);// 刷新当前tabpage
- // a_ifforce是否强制刷新
- long ll_i, ll_index
- if (a_ifforce) then
- for ll_i = 1 to UpperBound(this.Control)
- this.Control[ll_i].tag = ''
- next
- end if
- if (IsNull(ins_taskid)) then return
- ll_index = this.SelectedTab
- string ls_tabtext, ls_tag
- ls_tabtext = Trim(this.Control[ll_index].text)
- ls_tag = Trim(this.Control[ll_index].tag)
- if (ls_tag <> string(ins_taskid)) then
- //附件,费用明细,收费项目,条码,日志,包件立方
- this.Control[ll_index].tag = string(ins_taskid)
-
- if (ls_tabtext = '附件') then
- wf_retr_fj()
- elseif (ls_tabtext = '费用明细') then
- wf_retr_fymx()
- elseif (ls_tabtext = '收费项目') then
- wf_retr_sfxm()
- elseif (ls_tabtext = '条码') then
- wf_retr_barcode()
- elseif (ls_tabtext = '日志') then
- wf_retr_log()
- // elseif (ls_tabtext = '包件立方') then
-
- end if
- end if
- end subroutine
- public subroutine wf_retr_fj ();// 刷新 附件 tab
- tabpage_fj.dw_fj.Reset()
- tabpage_fj.cb_fj_commit.Enabled = false
- if (IsNull(ins_tid)) then return
- if (Trim(ins_tid) = '') then return
- string arg_msg
- oleobject req, ret
- req = FXAppCom.CreatePbDictionary()
- req.SetString('token', app_token_fx)
- req.SetString('tid', ins_tid)
- ret = FXAppCom.DoExecute('GetTaskFjListByTid', req)
- arg_msg = ret.GetString('ErrMsg')
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- return
- end if
- oleobject list, item
- list = ret.GetPBArray('list')
- long ll_i, ll_insertRow
- tabpage_fj.dw_fj.SetRedraw(false)
- for ll_i = 1 to list.Count
- item = list.GetPBDictionary(ll_i - 1)
-
- ll_insertRow = tabpage_fj.dw_fj.InsertRow(0)
- tabpage_fj.dw_fj.Object.ch[ll_insertRow] = 0
- tabpage_fj.dw_fj.Object.mxprintid[ll_insertRow] = item.GetInt('mxprintid')
- tabpage_fj.dw_fj.Object.fjType[ll_insertRow] = item.GetInt('fjType')
- tabpage_fj.dw_fj.Object.fileName[ll_insertRow] = item.GetString('fileName')
- tabpage_fj.dw_fj.Object.dscrp[ll_insertRow] = item.GetString('dscrp')
- tabpage_fj.dw_fj.Object.opemp[ll_insertRow] = item.GetString('opemp')
- if (not IsNull(item.GetString('opdate'))) then
- tabpage_fj.dw_fj.Object.opdate[ll_insertRow] = item.GetDateTime('opdate')
- end if
- tabpage_fj.dw_fj.Object.taskid[ll_insertRow] = item.GetInt('taskid')
- tabpage_fj.dw_fj.Object.fjprintid[ll_insertRow] = item.GetInt('fjprintid')
- tabpage_fj.dw_fj.Object.fileType[ll_insertRow] = item.GetString('fileType')
- tabpage_fj.dw_fj.Object.filemd5[ll_insertRow] = item.GetString('filemd5')
- tabpage_fj.dw_fj.Object.filepath[ll_insertRow] = ''
- next
- tabpage_fj.dw_fj.AcceptText()
- tabpage_fj.dw_fj.SetRedraw(true)
- end subroutine
- public subroutine wf_retr_fymx ();// 刷新 费用明细 tab
- tabpage_fymx.dw_fymx.Reset()
- if (IsNull(ins_taskid)) then return
- if (ins_taskid <= 0) then return
- string arg_msg
- oleobject req, ret
- req = FXAppCom.CreatePbDictionary()
- req.SetString('token', app_token_fx)
- req.SetString('taskid', ins_taskid)
- ret = FXAppCom.DoExecute('GetCostItem', req)
- arg_msg = ret.GetString('ErrMsg')
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- return
- end if
- oleobject list, item
- list = ret.GetPBArray('items')
- long ll_i, ll_insertRow
- tabpage_fymx.dw_fymx.SetRedraw(false)
- for ll_i = 1 to list.Count
- item = list.GetPBDictionary(ll_i - 1)
-
- ll_insertRow = tabpage_fymx.dw_fymx.InsertRow(0)
- tabpage_fymx.dw_fymx.Object.printid[ll_insertRow] = item.GetInt('printid')
- tabpage_fymx.dw_fymx.Object.itemcode[ll_insertRow] = item.GetString('itemcode')
- tabpage_fymx.dw_fymx.Object.itemname[ll_insertRow] = item.GetString('itemname')
- tabpage_fymx.dw_fymx.Object.itemtype[ll_insertRow] = item.GetString('itemtype')
- tabpage_fymx.dw_fymx.Object.amt[ll_insertRow] = item.GetDouble('amt')
- tabpage_fymx.dw_fymx.Object.mxdscrp[ll_insertRow] = item.GetString('mxdscrp')
- tabpage_fymx.dw_fymx.Object.taskid[ll_insertRow] = item.GetInt('taskid')
- next
- tabpage_fymx.dw_fymx.AcceptText()
- tabpage_fymx.dw_fymx.SetRedraw(true)
- end subroutine
- public subroutine wf_retr_sfxm ();// 刷新 收费项目 tab
- tabpage_sfxm.dw_sfxm.Reset()
- if (IsNull(ins_taskid)) then return
- if (ins_taskid <= 0) then return
- string arg_msg
- oleobject req, ret
- req = FXAppCom.CreatePbDictionary()
- req.SetString('token', app_token_fx)
- req.SetString('taskid', ins_taskid)
- ret = FXAppCom.DoExecute('GetSaletaskPriceItemmx', req)
- arg_msg = ret.GetString('ErrMsg')
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- return
- end if
- oleobject list, item
- list = ret.GetPBArray('list')
- long ll_i, ll_insertRow
- tabpage_sfxm.dw_sfxm.SetRedraw(false)
- for ll_i = 1 to list.Count
- item = list.GetPBDictionary(ll_i - 1)
-
- ll_insertRow = tabpage_sfxm.dw_sfxm.InsertRow(0)
- tabpage_sfxm.dw_sfxm.Object.pid[ll_insertRow] = item.GetInt('pid')
- tabpage_sfxm.dw_sfxm.Object.itemcode[ll_insertRow] = item.GetString('itemcode')
- tabpage_sfxm.dw_sfxm.Object.itemname[ll_insertRow] = item.GetString('itemname')
- tabpage_sfxm.dw_sfxm.Object.subitemname[ll_insertRow] = item.GetString('subitemname')
- tabpage_sfxm.dw_sfxm.Object.calcType[ll_insertRow] = item.GetInt('calcType')
- tabpage_sfxm.dw_sfxm.Object.qty[ll_insertRow] = item.GetDouble('qty')
- tabpage_sfxm.dw_sfxm.Object.itemvalue[ll_insertRow] = item.GetDouble('itemvalue')
- tabpage_sfxm.dw_sfxm.Object.unit[ll_insertRow] = item.GetString('unit')
- tabpage_sfxm.dw_sfxm.Object.taskid[ll_insertRow] = item.GetInt('taskid')
- tabpage_sfxm.dw_sfxm.Object.printid[ll_insertRow] = item.GetInt('printid')
- tabpage_sfxm.dw_sfxm.Object.ifdft[ll_insertRow] = item.GetInt('ifdft')
- tabpage_sfxm.dw_sfxm.Object.p1[ll_insertRow] = item.GetString('p1')
- tabpage_sfxm.dw_sfxm.Object.p2[ll_insertRow] = item.GetString('p2')
- tabpage_sfxm.dw_sfxm.Object.p3[ll_insertRow] = item.GetString('p3')
- tabpage_sfxm.dw_sfxm.Object.rate[ll_insertRow] = item.GetDouble('rate')
- tabpage_sfxm.dw_sfxm.Object.dscrp[ll_insertRow] = item.GetString('dscrp')
- tabpage_sfxm.dw_sfxm.Object.priceDscrp[ll_insertRow] = item.GetString('priceDscrp')
- tabpage_sfxm.dw_sfxm.Object.method[ll_insertRow] = item.GetString('method')
- next
- tabpage_sfxm.dw_sfxm.AcceptText()
- tabpage_sfxm.dw_sfxm.SetRedraw(true)
- end subroutine
- public subroutine wf_retr_barcode ();// 刷新 条码 tab
- tabpage_barcode.dw_barcode.Reset()
- if (IsNull(ins_taskid)) then return
- if (ins_taskid <= 0) then return
- string arg_msg
- oleobject req, ret
- req = FXAppCom.CreatePbDictionary()
- req.SetString('token', app_token_fx)
- req.SetString('taskid', ins_taskid)
- ret = FXAppCom.DoExecute('GetOutwareBarcode', req)
- arg_msg = ret.GetString('ErrMsg')
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- return
- end if
- oleobject list, item
- list = ret.GetPBArray('barcodes')
- long ll_i, ll_insertRow
- tabpage_barcode.dw_barcode.SetRedraw(false)
- for ll_i = 1 to list.Count
- item = list.GetPBDictionary(ll_i - 1)
-
- ll_insertRow = tabpage_barcode.dw_barcode.InsertRow(0)
- tabpage_barcode.dw_barcode.Object.barcode[ll_insertRow] = item.GetString('barcode')
- tabpage_barcode.dw_barcode.Object.flag[ll_insertRow] = item.GetInt('flag')
- tabpage_barcode.dw_barcode.Object.ifcheck[ll_insertRow] = item.GetInt('ifcheck')
- tabpage_barcode.dw_barcode.Object.mtrlcode[ll_insertRow] = item.GetString('mtrlcode')
- tabpage_barcode.dw_barcode.Object.mtrlname[ll_insertRow] = item.GetString('mtrlname')
- tabpage_barcode.dw_barcode.Object.mtrlmode[ll_insertRow] = item.GetString('mtrlmode')
- tabpage_barcode.dw_barcode.Object.status[ll_insertRow] = item.GetString('status')
- tabpage_barcode.dw_barcode.Object.woodcode[ll_insertRow] = item.GetString('woodcode')
- tabpage_barcode.dw_barcode.Object.pcode[ll_insertRow] = item.GetString('pcode')
- tabpage_barcode.dw_barcode.Object.qty[ll_insertRow] = item.GetDouble('qty')
- tabpage_barcode.dw_barcode.Object.packqty[ll_insertRow] = item.GetDouble('packqty')
- tabpage_barcode.dw_barcode.Object.outwarecode[ll_insertRow] = item.GetString('outwarecode')
- if (not IsNull(item.GetDateTime('outwaredate'))) then
- tabpage_barcode.dw_barcode.Object.outwaredate[ll_insertRow] = item.GetDateTime('outwaredate')
- end if
- tabpage_barcode.dw_barcode.Object.freight_emp[ll_insertRow] = item.GetString('freight_emp')
- tabpage_barcode.dw_barcode.Object.freight_phone[ll_insertRow] = item.GetString('freight_phone')
- tabpage_barcode.dw_barcode.Object.taskid[ll_insertRow] = ins_taskid
- next
- tabpage_barcode.dw_barcode.AcceptText()
- tabpage_barcode.dw_barcode.SetRedraw(true)
- end subroutine
- public subroutine wf_retr_log ();// 刷新 日志 tab
- tabpage_log.dw_log.Reset()
- if (IsNull(ins_taskid)) then return
- if (ins_taskid <= 0) then return
- string arg_msg
- oleobject req, ret
- req = FXAppCom.CreatePbDictionary()
- req.SetString('token', app_token_fx)
- req.SetString('taskid', ins_taskid)
- ret = FXAppCom.DoExecute('GetTaskLogs', req)
- arg_msg = ret.GetString('ErrMsg')
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- return
- end if
- oleobject list, item
- list = ret.GetPBArray('logs')
- long ll_i, ll_insertRow
- tabpage_log.dw_log.SetRedraw(false)
- for ll_i = 1 to list.Count
- item = list.GetPBDictionary(ll_i - 1)
-
- ll_insertRow = tabpage_log.dw_log.InsertRow(0)
- tabpage_log.dw_log.Object.opemp[ll_insertRow] = item.GetString('opemp')
- tabpage_log.dw_log.Object.opLog[ll_insertRow] = item.GetString('opLog')
- if (not IsNull(item.GetDateTime('opdate'))) then
- tabpage_log.dw_log.Object.opdate[ll_insertRow] = item.GetDateTime('opdate')
- end if
- next
- tabpage_log.dw_log.AcceptText()
- tabpage_log.dw_log.SetRedraw(true)
- end subroutine
- public subroutine wf_open ();oleobject parm
- parm = FXAppCom.CreatePbDictionary()
- FXAppCom.SaveFileFromFxFileMap(parm)
- end subroutine
- on uo_fx_saletask_custom_tab.create
- this.tabpage_fj=create tabpage_fj
- this.tabpage_fymx=create tabpage_fymx
- this.tabpage_sfxm=create tabpage_sfxm
- this.tabpage_barcode=create tabpage_barcode
- this.tabpage_log=create tabpage_log
- this.Control[]={this.tabpage_fj,&
- this.tabpage_fymx,&
- this.tabpage_sfxm,&
- this.tabpage_barcode,&
- this.tabpage_log}
- end on
- on uo_fx_saletask_custom_tab.destroy
- destroy(this.tabpage_fj)
- destroy(this.tabpage_fymx)
- destroy(this.tabpage_sfxm)
- destroy(this.tabpage_barcode)
- destroy(this.tabpage_log)
- end on
- event selectionchanged;wf_retr(false)
- end event
- type tabpage_fj from userobject within uo_fx_saletask_custom_tab
- event create ( )
- event destroy ( )
- integer x = 18
- integer y = 96
- integer width = 2505
- integer height = 1048
- long backcolor = 16777215
- string text = "附件"
- long tabtextcolor = 33554432
- long picturemaskcolor = 536870912
- cb_fj_commit cb_fj_commit
- dw_fj dw_fj
- cb_fj_del cb_fj_del
- cb_fj_upload cb_fj_upload
- cbx_fj_ch_all cbx_fj_ch_all
- end type
- on tabpage_fj.create
- this.cb_fj_commit=create cb_fj_commit
- this.dw_fj=create dw_fj
- this.cb_fj_del=create cb_fj_del
- this.cb_fj_upload=create cb_fj_upload
- this.cbx_fj_ch_all=create cbx_fj_ch_all
- this.Control[]={this.cb_fj_commit,&
- this.dw_fj,&
- this.cb_fj_del,&
- this.cb_fj_upload,&
- this.cbx_fj_ch_all}
- end on
- on tabpage_fj.destroy
- destroy(this.cb_fj_commit)
- destroy(this.dw_fj)
- destroy(this.cb_fj_del)
- destroy(this.cb_fj_upload)
- destroy(this.cbx_fj_ch_all)
- end on
- type cb_fj_commit from commandbutton within tabpage_fj
- integer x = 864
- integer width = 302
- integer height = 84
- integer taborder = 30
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- boolean enabled = false
- string text = "确认上传"
- end type
- event clicked;if (IsNull(ins_taskid)) then return
- if (ins_taskid <= 0) then return
- if (ins_status = 2) then return
- dw_fj.AcceptText()
- long ll_findRow, ll_i = 0
- long ll_rows[]
- string ls_findStr, arg_msg
- ls_findStr = 'fjprintid <= 0'
- ll_findRow = dw_fj.Find(ls_findStr, 1, dw_fj.RowCount())
- do while (ll_findRow > 0)
- ll_i++
- ll_rows[ll_i] = ll_findRow
-
- if (ll_findRow + 1 > dw_fj.RowCount()) then exit
- ll_findRow = dw_fj.Find(ls_findStr, ll_findRow + 1, dw_fj.RowCount())
- loop
- if (UpperBound(ll_rows) <= 0) then
- MessageBox('提示', '没有需要提交的附件')
- this.Enabled = false
- return
- end if
- // 1-先上传新增附件的md5,与服务器对比,2-返回服务器没有的md5,再上传附件数据
- string ls_arr_1_md5[], ls_arr_1_filepath[]
- for ll_i = 1 to UpperBound(ll_rows)
- ls_arr_1_md5[ll_i] = dw_fj.Object.filemd5[ll_rows[ll_i]]
- ls_arr_1_filepath[ll_i] = dw_fj.Object.filepath[ll_rows[ll_i]]
- next
- if (UpperBound(ls_arr_1_md5) > 0) then
- if (f_chkfxfilemapwithmd5andupload(ls_arr_1_md5, ls_arr_1_filepath, ref arg_msg) <> 1) then
- MessageBox('提示', '上传失败:' + arg_msg)
- return
- end if
- end if
- // PC端需提供fjType、dscrp、fileName、fileType、filemd5
- oleobject files, item
- files = FXAppCom.NewPBArray()
- for ll_i = 1 to UpperBound(ll_rows)
- ll_findRow = ll_rows[ll_i]
- item = FXAppCom.CreatePbDictionary()
-
- item.SetInt('fjType', dw_fj.Object.fjtype[ll_findRow])
- item.SetString('dscrp', Trim(dw_fj.Object.dscrp[ll_findRow]))
- item.SetString('fileName', dw_fj.Object.filename[ll_findRow])
- item.SetString('fileType', dw_fj.Object.fileType[ll_findRow])
- item.SetString('filemd5', dw_fj.Object.filemd5[ll_findRow])
-
- files.AddObject(item)
- next
- // 更新到fx_saletask_fj
- oleobject req, rsp
- req = FXAppCom.CreatePbDictionary()
- req.SetString('token', app_token_fx)
- req.SetInt('taskid', ins_taskid)
- req.SetInt('printid', 1) // 定制产品订单只有一个明细
- req.SetInt('clientMode', 2) // 客户端 0-手机 1-ERP 2-PB客户端
- req.SetObject('files', files)
- rsp = FXAppCom.DoExecute('UploadSaletaskFiles', req)
- arg_msg = rsp.GetString('ErrMsg')
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- return
- else
- wf_retr_fj()
- end if
- end event
- type dw_fj from u_dw_rbtnfilter within tabpage_fj
- integer y = 88
- integer width = 2267
- integer height = 784
- integer taborder = 40
- string dataobject = "dw_fx_buytask_custom_fj"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean hsplitscroll = true
- borderstyle borderstyle = stylebox!
- boolean rbutton_filter_use = true
- boolean rbutton_setposition_use = true
- boolean titleclick_sort_use = true
- end type
- event clicked;call super::clicked;string ls_name, ls_filepath, ls_fileName, ls_fileType, ls_filemd5
- string arg_msg, ls_retPath
- oleobject parm, ret
- if (row > 0) then
- this.SetRow(row)
- this.SelectRow(0, false)
- this.SelectRow(row, true)
-
- ls_name = dwo.Name
- if (ls_name = 'compute_1') then
- ls_filepath = Trim(this.Object.filepath[row])
- ls_fileName = Trim(this.Object.fileName[row])
- ls_fileType = Trim(this.Object.fileType[row])
- ls_filemd5 = Trim(this.Object.filemd5[row])
-
- parm = FXAppCom.CreatePbDictionary()
- parm.SetString('token', app_token_fx)
- parm.SetString('filepath', ls_filepath)
- parm.SetString('filemd5', ls_filemd5)
- parm.SetString('initialDirectory', '')
- parm.SetString('filter', '')
- parm.SetString('defaultExt', '')
- parm.SetString('fileName', ls_fileName)
- parm.SetInt('ifOpenAfterDownload', 1)
-
- ret = FXAppCom.SaveFileFromFxFileMap(parm)
- arg_msg = ret.GetString('ErrMsg')
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- return
- end if
-
- ls_retPath = ret.GetString('fullFilePath')
- if (ls_retPath <> '') then
- this.Object.filepath[row] = ls_retPath
- this.AcceptText()
- end if
- end if
- end if
- end event
- event rowfocuschanged;call super::rowfocuschanged;if (currentrow > 0) then
- this.SetRow(currentrow)
- this.SelectRow(0, false)
- this.SelectRow(currentrow, true)
- end if
- end event
- type cb_fj_del from commandbutton within tabpage_fj
- integer x = 539
- integer width = 302
- integer height = 84
- integer taborder = 30
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- string text = "删除"
- end type
- event clicked;dw_fj.AcceptText()
- long ll_findRow, ll_index = 0
- long ll_arr_rows[]
- string ls_findStr
- ls_findStr = '(ch = 1) and (fjtype = 0 or fjtype = 2) and (opemp = "' + app_username + '")'
- ll_findRow = dw_fj.Find(ls_findStr, 1, dw_fj.RowCount())
- if (ll_findRow > 0) then // 多选
- do while (ll_findRow > 0)
- ll_index++
- ll_arr_rows[ll_index] = ll_findRow
-
- if (ll_findRow + 1 > dw_fj.RowCount()) then exit
- ll_findRow = dw_fj.Find(ls_findStr, ll_findRow + 1, dw_fj.RowCount())
- loop
- else // 单选
- ll_findRow = dw_fj.GetRow()
- if (ll_findRow > 0) then
- if ((dw_fj.Object.fjtype[ll_findRow] = 0 or dw_fj.Object.fjtype[ll_findRow] = 2) &
- and (dw_fj.Object.opemp[ll_findRow] = app_username)) then
- ll_index++
- ll_arr_rows[ll_index] = ll_findRow
- end if
- end if
- end if
- if (ll_index <= 0) then
- MessageBox('提示', '请选中/勾选需要删除的附件~r~n只支持删除类型是"付款凭证"或"下单附件",且为当前账号上传的附件')
- return
- end if
- long ll_fjprintid, ll_i
- oleobject deletePrintids
- deletePrintids = FXAppCom.NewPBArray()
- for ll_index = UpperBound(ll_arr_rows) to 1 step - 1
- ll_fjprintid = dw_fj.Object.fjprintid[ll_arr_rows[ll_index]]
- if ((ins_taskid > 0 and ins_status <> 2) and ll_fjprintid > 0) then // 非新建/退回状态的订单,删除附件操作需要即时提交
- deletePrintids.AddInt(ll_fjprintid)
- end if
-
- dw_fj.DeleteRow(ll_arr_rows[ll_index])
- next
- // 提交需要即时删除的附件,更新到fx_saletask_fj
- oleobject req, rsp
- string arg_msg
- if (deletePrintids.Count > 0) then
- if (MessageBox('提示', '确认删除当前已上传的附件?', Question!, YesNo!) <> 1) then
- wf_retr_fj()
- return
- end if
-
- req = FXAppCom.CreatePbDictionary()
- req.SetString('token', app_token_fx)
- req.SetInt('taskid', ins_taskid)
- req.SetInt('printid', 1) // 定制产品订单只有一个明细
- req.SetInt('clientMode', 2) // 客户端 0-手机 1-ERP 2-PB客户端
- req.SetObject('deletePrintids', deletePrintids)
- rsp = FXAppCom.DoExecute('UploadSaletaskFiles', req)
- arg_msg = rsp.GetString('ErrMsg')
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- return
- else
- wf_retr_fj()
- end if
- end if
- end event
- type cb_fj_upload from commandbutton within tabpage_fj
- integer x = 215
- integer width = 302
- integer height = 84
- integer taborder = 20
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- string text = "上传..."
- end type
- event clicked;// 新建状态可以选多个订单明细,上传附件需要对应当前的明细
- ins_parent.PostEvent('ue_tab_fj_upload')
- // 非新建、非退回状态的订单,需要手动提交附件
- if (ins_taskid > 0 and ins_status <> 2) then
- cb_fj_commit.Enabled = true
- end if
- end event
- type cbx_fj_ch_all from checkbox within tabpage_fj
- integer x = 9
- integer y = 12
- integer width = 192
- integer height = 60
- integer taborder = 10
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 16777215
- string text = "全选"
- end type
- event clicked;long ll_ch, ll_i
- if (this.Checked) then
- ll_ch = 1
- else
- ll_ch = 0
- end if
- for ll_i = 1 to dw_fj.RowCount()
- dw_fj.Object.ch[ll_i] = ll_ch
- next
- dw_fj.AcceptText()
- end event
- type tabpage_fymx from userobject within uo_fx_saletask_custom_tab
- event create ( )
- event destroy ( )
- integer x = 18
- integer y = 96
- integer width = 2505
- integer height = 1048
- long backcolor = 16777215
- string text = "费用明细"
- long tabtextcolor = 33554432
- long tabbackcolor = 16777215
- long picturemaskcolor = 536870912
- dw_fymx dw_fymx
- end type
- on tabpage_fymx.create
- this.dw_fymx=create dw_fymx
- this.Control[]={this.dw_fymx}
- end on
- on tabpage_fymx.destroy
- destroy(this.dw_fymx)
- end on
- type dw_fymx from u_dw_rbtnfilter within tabpage_fymx
- integer width = 2126
- integer height = 700
- integer taborder = 20
- string dataobject = "dw_fx_buytask_itemmx"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean hsplitscroll = true
- borderstyle borderstyle = stylebox!
- boolean rbutton_filter_use = true
- boolean rbutton_setposition_use = true
- boolean titleclick_sort_use = true
- end type
- event clicked;call super::clicked;if (row > 0) then
- this.SetRow(row)
- this.SelectRow(0, false)
- this.SelectRow(row, true)
- end if
- end event
- event rowfocuschanged;call super::rowfocuschanged;if (currentrow > 0) then
- this.SetRow(currentrow)
- this.SelectRow(0, false)
- this.SelectRow(currentrow, true)
- end if
- end event
- type tabpage_sfxm from userobject within uo_fx_saletask_custom_tab
- event create ( )
- event destroy ( )
- integer x = 18
- integer y = 96
- integer width = 2505
- integer height = 1048
- long backcolor = 16777215
- string text = "收费项目"
- long tabtextcolor = 33554432
- long tabbackcolor = 16777215
- long picturemaskcolor = 536870912
- dw_sfxm dw_sfxm
- end type
- on tabpage_sfxm.create
- this.dw_sfxm=create dw_sfxm
- this.Control[]={this.dw_sfxm}
- end on
- on tabpage_sfxm.destroy
- destroy(this.dw_sfxm)
- end on
- type dw_sfxm from u_dw_rbtnfilter within tabpage_sfxm
- integer width = 1947
- integer height = 780
- integer taborder = 20
- string dataobject = "dw_fx_saletask_price_itemmx"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean hsplitscroll = true
- borderstyle borderstyle = stylebox!
- boolean rbutton_filter_use = true
- boolean rbutton_setposition_use = true
- boolean titleclick_sort_use = true
- end type
- type tabpage_barcode from userobject within uo_fx_saletask_custom_tab
- event create ( )
- event destroy ( )
- integer x = 18
- integer y = 96
- integer width = 2505
- integer height = 1048
- long backcolor = 16777215
- string text = "条码"
- long tabtextcolor = 33554432
- long tabbackcolor = 16777215
- long picturemaskcolor = 536870912
- dw_barcode dw_barcode
- end type
- on tabpage_barcode.create
- this.dw_barcode=create dw_barcode
- this.Control[]={this.dw_barcode}
- end on
- on tabpage_barcode.destroy
- destroy(this.dw_barcode)
- end on
- type dw_barcode from u_dw_rbtnfilter within tabpage_barcode
- integer width = 2117
- integer height = 788
- integer taborder = 20
- string dataobject = "dw_fx_outware_barcode"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean hsplitscroll = true
- borderstyle borderstyle = stylebox!
- boolean rbutton_filter_use = true
- boolean rbutton_setposition_use = true
- boolean titleclick_sort_use = true
- end type
- type tabpage_log from userobject within uo_fx_saletask_custom_tab
- event create ( )
- event destroy ( )
- integer x = 18
- integer y = 96
- integer width = 2505
- integer height = 1048
- long backcolor = 16777215
- string text = "日志"
- long tabtextcolor = 33554432
- long tabbackcolor = 16777215
- long picturemaskcolor = 536870912
- dw_log dw_log
- end type
- on tabpage_log.create
- this.dw_log=create dw_log
- this.Control[]={this.dw_log}
- end on
- on tabpage_log.destroy
- destroy(this.dw_log)
- end on
- type dw_log from u_dw_rbtnfilter within tabpage_log
- integer width = 2281
- integer height = 796
- integer taborder = 20
- string dataobject = "dw_fx_saletask_log"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean hsplitscroll = true
- borderstyle borderstyle = stylebox!
- boolean rbutton_filter_use = true
- boolean rbutton_setposition_use = true
- boolean titleclick_sort_use = true
- end type
|