提交 | 用户 | age
|
a6a76f
|
1 |
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> |
F |
2 |
<script type="text/javascript"> |
|
3 |
var savedFunclink16=''; |
|
4 |
var spellPath="/<%=session.getAttribute(SessionKey.DATA_BASE_ID)%>/<%=session.getAttribute(SessionKey.VERSION_ID)%>/<%=session.getAttribute(SessionKey.SYSTEM_LANGUAGE)%>/"; |
|
5 |
var formId=<%=formId%>; |
|
6 |
panelFormId=formId; |
|
7 |
var formType=<%=formType%>; |
|
8 |
var user="<%=userCode%>"; |
|
9 |
var isSuperUser="<%=isSuperUser %>"; |
|
10 |
var cccode='<%=session.getAttribute(SessionKey.CCCODE)%>'; |
|
11 |
//确认前状态 |
|
12 |
var predocstatus="[?predocstatus]"; |
|
13 |
var Custom_Doccode="@CustomDoccode@"; |
|
14 |
var isNew='<%=isNew%>'; |
|
15 |
var grid;// |
|
16 |
var check; |
|
17 |
var panJson;//全局 |
|
18 |
var docodeOK=true;//确定前是否保存 |
|
19 |
var ischeck=false; |
|
20 |
var btnId=null;//决定按钮检查 |
|
21 |
//通过,驳回,时代按钮所需全局变量 |
|
22 |
var panelHasSave=false;//面板是否保存 |
|
23 |
var btnSave=false;//是否这两个按钮保存 |
|
24 |
//这个变量处理显示页面必用 |
|
25 |
var OA="";//全局,针对没有grid的时处理 |
|
26 |
var trandoc=""; |
|
27 |
var url=''; |
|
28 |
var iscanelProc=false; |
|
29 |
var isrevokeProc=false; |
|
30 |
var sumbitUnid=null; |
|
31 |
|
|
32 |
function commitIs(check,flag){ |
904c9d
|
33 |
if(top.approvedDoc){ |
X |
34 |
top.approvedDoc.getCurTabsIndex(); |
|
35 |
} |
|
36 |
//flag标记数据范围检查已通过 |
a6a76f
|
37 |
showLoading(); |
F |
38 |
if(typeof(mygrid)!='undefined'){ |
|
39 |
grid=mygrid; |
|
40 |
} |
|
41 |
var arry=[]; |
|
42 |
var arry1=[]; |
|
43 |
var g; |
|
44 |
var cs; |
|
45 |
var pan1={}; |
|
46 |
var palname=""; |
|
47 |
for(var p in panMain ){ |
|
48 |
g=panMain[p]; |
|
49 |
panIndex=p; |
|
50 |
cs=g.getPanMap(p); |
|
51 |
var _={}; |
|
52 |
var doc=getDoc('doccode',".value"); |
|
53 |
_["panelAction"]=((isNew==1&&doc=="")? "add":"update"); |
|
54 |
_["panelTable"]=g.tableIs; |
|
55 |
_["panelRecords"]=g.getPanMap(p); |
|
56 |
_["doccode"]=doc; |
|
57 |
_["isPrimaryPan"]=g.isPrimaryPan; |
|
58 |
_["auditRecords"]=shenji(panIndex,g,doc); |
|
59 |
if(typeof(mygrid)!='undefined'){ |
|
60 |
if(g.isPrimaryPan==1) grid.setPanelMasFormID(g.tableIs); |
|
61 |
}else{ |
|
62 |
if(g.isPrimaryPan==1) |
|
63 |
palname=g.tableIs; |
|
64 |
_["wherepan"]=(typeof(g.where16_496)!='undefined'?g.where16_496:""); |
|
65 |
} |
|
66 |
if(typeof(g.view)!='undefined'){ |
|
67 |
_["panelAction"]=(((g.view && p!=0) || (isNew!=1&&doc!=""))? "update":_.panelAction); |
|
68 |
} |
58e0f7
|
69 |
arry.push(_) |
a6a76f
|
70 |
arry._YCAUDIT_=shenji(p,cs,doc);//审计处理 操作时间:2014-3-26 17:02:15 ——辛煜波 |
F |
71 |
} |
|
72 |
var cc=check; |
|
73 |
|
e91881
|
74 |
if (typeof (mygrid) != 'undefined') { |
F |
75 |
grid.setPanelActions(arry, 1); |
|
76 |
grid.postDatas(check, function (temp, boo, datas) { |
|
77 |
if (!boo) { |
|
78 |
closeLoading(); |
|
79 |
} |
|
80 |
}); |
|
81 |
} |
a6a76f
|
82 |
|
e91881
|
83 |
if (typeof (grid) != 'undefined') { |
F |
84 |
if (check == 3) { |
|
85 |
grid.tran("", function (showIs, check) { |
|
86 |
parent.errShow.frame = parent.frames[inThisFrame]; |
|
87 |
parent.errShow.show_divErro(showIs, check); |
|
88 |
btnId = null; |
|
89 |
}, 3, flag); |
|
90 |
tranOk = false; |
|
91 |
grid.aflg = 0; |
|
92 |
} else { |
|
93 |
grid.save('', function (showIs, check) { |
|
94 |
parent.errShow.frame = parent.frames[inThisFrame]; |
|
95 |
parent.errShow.show_divErro(showIs, check); |
a6a76f
|
96 |
btnId=null; |
F |
97 |
}, 2,flag); |
|
98 |
} |
|
99 |
}else{ |
|
100 |
var panel={}; |
|
101 |
panel["Change"]=[]; |
|
102 |
panel["grids"]=[]; |
|
103 |
panel["panels"]=arry; |
|
104 |
panel["gType"]=497; |
|
105 |
panel["formid"]=formId; |
|
106 |
panel["oa"]=OA; |
|
107 |
panel["panelTable"]=palname; |
|
108 |
panel["funlink"]=savedFunclink16;//保存后执行功能连接 |
|
109 |
panel["disableDuplicateSubmitUUID"]=systemUuid.uuid; |
904c9d
|
110 |
panel["excludeSelectNextDocument"]=(top.approvedDoc==undefined?"":top.approvedDoc.excludeDocs) || ""; |
9e6422
|
111 |
if(<%=isshowonlinepaymentbutton%> == 1 |
F |
112 |
) |
|
113 |
{ |
|
114 |
panel["onlinePay"] = onlinePay.pay;//在线支付 xin 2022-9-13 17:05:10 |
|
115 |
// panel["clickTran"]=2; //保存时clickTran不能为2。1,2都是表示执行确认操作 by danaus 2024-01-15 08:55 |
|
116 |
} |
|
117 |
var tojson = panel; |
|
118 |
panJson = obj2str(panel); |
|
119 |
if (check == 2) { |
|
120 |
if (iscanelProc) { |
|
121 |
url = "<%=URL%>/gtGrid.do?m=save&formID=<%=formId%>&winType=497@p@0&field=DocCode@p@rowid&doccode="+doc+"&ProcGroupafterSavedoc=0&DealAfterDocSave=&cancelProc="+encodeText("<%=canelProc%>")+"&canPric=1"; |
a6a76f
|
122 |
$.post(url,{"_gt_json":panJson},function(data){show_success1(data)},'text'); |
F |
123 |
} |
|
124 |
else if(isrevokeProc){ |
|
125 |
url="<%=URL%>/gtGrid.do?m=save&formID=<%=formId%>&winType=497@p@0&field=DocCode@p@rowid&doccode="+doc+"&ProcGroupafterSavedoc=0&DealAfterDocSave=&revokeProc="+encodeText("<%=revokeProc%>")+"&revokePric=1"; |
|
126 |
$.post(url,{"_gt_json":panJson},function(data){show_success1(data)},'text'); |
|
127 |
} |
|
128 |
else{ |
|
129 |
url="<%=URL%>/gtGrid.do?m=save&formID=<%=formId%>&winType=497@p@0"; |
|
130 |
$.post(url,{"_gt_json":panJson},function(data){show_success1(data)},'text'); |
|
131 |
} |
|
132 |
} |
|
133 |
else if(check==3){ |
|
134 |
var url="<%=URL%>/gtGrid.do?m=tran&formID=<%=formId%>&winType=497@p@0&hasGrid=many&doccode=<%=doccode%>&trangroup=#transgroupcode#"; |
|
135 |
url=url.replace(/doccode=.*?&/g,"doccode="+encodeText("doccode=\'"+getDoc('doccode','.value')+"\'")+"&"); |
|
136 |
$.post(url,{"_gt_json":getTranInfo(flag,tojson)}, |
|
137 |
function(data){show_success1(data);closeLoading(); |
|
138 |
if(typeof(savedExecFunclink)=='function'){ |
|
139 |
savedExecFunclink();//针对16类型保存后执行功能连接 |
|
140 |
} |
|
141 |
},'text' |
|
142 |
); |
|
143 |
} |
|
144 |
} |
|
145 |
} |
|
146 |
function getTranInfo(flag,panJson){//确认时组装(保存和确认) |
|
147 |
var total={}; |
1c19d5
|
148 |
panJson.dcFlag=(flag==undefined?0:flag); |
a6a76f
|
149 |
total["save"]=panJson; |
F |
150 |
var tt={}; |
|
151 |
tt.panelAction=(isNew==1)? "add":"update"; |
|
152 |
tt.panelTable =panJson["panelTable"]; |
|
153 |
tt.oa = OA; |
|
154 |
tt.gType=497; |
|
155 |
tt.cudoc='@CustomDoccode@'; |
|
156 |
total["tran"]=tt; |
|
157 |
return obj2str(total); |
|
158 |
} |
|
159 |
function getJson(flag){ |
|
160 |
var js=[]; |
|
161 |
var plane=panMain[panIndex].getPanMap(); |
|
162 |
js[0]=plane; |
|
163 |
var jt={} |
|
164 |
jt.panelRecords=js; |
|
165 |
jt.panelAction=(isNew==1)? "add":"update"; |
|
166 |
jt.panelTable =panMain[panIndex].tableIs; |
|
167 |
jt.oa = OA; |
|
168 |
jt.gType=497; |
|
169 |
jt.dcFlag=(flag==undefined?0:flag); |
|
170 |
jt.cudoc='@CustomDoccode@'; |
|
171 |
jt.funlink=savedFunclink16;//保存后执行功能连接 |
|
172 |
//审计数据集 |
|
173 |
var doc=getDoc('doccode','.value'); |
|
174 |
jt.auditRecords=shenji(panIndex,plane,doc); //审计处理 |
|
175 |
return jt; |
|
176 |
} |
|
177 |
var refUrl=""; |
|
178 |
function show_success1(tx,fl){ |
|
179 |
if(tx.indexOf("datacheckError#|#")==0){//处理弹出数据范围检查窗体 |
|
180 |
parent.errShow.frame=parent.frames[inThisFrame]; |
|
181 |
parent.errShow.show_divErro(tx.replace("datacheckError#|#",""),check); |
|
182 |
return; |
|
183 |
} |
|
184 |
if(tx){//保存 |
|
185 |
var txS=tx.split("#|#"); |
962f8d
|
186 |
if(txS.length>1&&txS[1].indexOf("@success")!=-1){//成功处理的 |
X |
187 |
if(txS[1]=="@success"){ |
|
188 |
refUrl="?"+txS[3]; |
|
189 |
}else{ |
|
190 |
//有其他值,是在线支付 |
|
191 |
let onlinePament = JSON.parse(new Base64().decode(txS[1].replace("@success", ""))); |
|
192 |
if (onlinePament != null && onlinePament != "" && onlinePament.onlinePay != -1) { |
|
193 |
let type="commit"; |
|
194 |
if(onlinePament.onlinePay==1){ //在线支付 |
|
195 |
type="pay"; |
|
196 |
} |
|
197 |
OpenPayAndRefund(getDoc('doccode', '.value'), type, formId); |
|
198 |
return; |
|
199 |
} |
|
200 |
} |
a6a76f
|
201 |
if(txS.length==6){//弹出取消确认返回内容 |
F |
202 |
procCallBack(txS[5],1,0); |
|
203 |
} |
|
204 |
if(typeof(savedExecFunclink)!='function'){ |
a1e8c7
|
205 |
if(txS[0]!=null && txS[0]!=""){//下一单 xin 2022-8-1 10:00:01 |
X |
206 |
let nextDoc=txS[0].split(","); |
|
207 |
if(nextDoc.length==2){ |
|
208 |
panPar.nextDocLink(nextDoc[1],true);//跳转 |
|
209 |
return; |
|
210 |
} |
|
211 |
} |
a6a76f
|
212 |
location.href=refUrl;//如果要保存后执行功能链接则不刷新 |
F |
213 |
} |
|
214 |
}else{ |
|
215 |
closeLoading(); |
|
216 |
var st=tx; |
|
217 |
if(tx.indexOf("tranError#|#")==0){ |
|
218 |
st=tx.split("#|#")[1]; |
|
219 |
} |
|
220 |
alert(st); |
|
221 |
} |
|
222 |
}else{//确定 |
|
223 |
if(refTo){ |
59226b
|
224 |
location.href = refUrl; |
F |
225 |
} |
|
226 |
} |
a6a76f
|
227 |
} |
59226b
|
228 |
|
F |
229 |
function save(o, c) { |
|
230 |
var flag = checkSession();//session失效后弹出登录框,flag为true时表示已经失效 |
|
231 |
if (flag) { |
|
232 |
return; |
|
233 |
} |
|
234 |
if (!c || c == 0) { |
|
235 |
if (o == 5) {//表示单据类型直接点保存,是为区分有在线支付功能时,确认也是执行保存操作 |
|
236 |
if ("undefined" != typeof onlinePay && onlinePay != null) { |
|
237 |
onlinePay.pay = 0; |
|
238 |
onlinePay.refund = 0; |
|
239 |
onlinePay.isOnlinePay = false; |
|
240 |
} |
|
241 |
o = 2;//转换为2 |
|
242 |
} |
|
243 |
save$(o); |
|
244 |
} else { |
|
245 |
centerPopup(formId, 2, function () { |
|
246 |
save$(o); |
|
247 |
}, ''); |
|
248 |
} |
a6a76f
|
249 |
} |
59226b
|
250 |
|
F |
251 |
function save$(op) { |
|
252 |
showLoading(); |
|
253 |
var checkbool = true; |
a6a76f
|
254 |
for(var c in panMain ){ //panMain为496的多个子面板集合 |
F |
255 |
panIndex=c;//panIndex子面板元素 |
|
256 |
checkbool=checkUp();//检查必录问题 如果其中一个面板的必录没有录入 则返回false; |
|
257 |
if(!checkbool){break;} |
|
258 |
} |
|
259 |
if(checkbool){ |
|
260 |
check=op; |
|
261 |
commitPan(check); |
|
262 |
}else{closeLoading();} |
|
263 |
} |
|
264 |
function commitPan(check){//确定是凭证状态检查 |
|
265 |
if(check==3){ |
|
266 |
var url='/panState.do?formid='+formId+"&docdate="+getDoc('docdate','.value')+"&periodtype=#periodtype#&companyId="+getDoc('#comanyId#','.value'); |
|
267 |
url=encodeURI(encodeURI(url));//必须两次 |
|
268 |
$.post(url,'',showPanMessge,'text'); |
|
269 |
}else{ |
|
270 |
commitIs(check); |
|
271 |
} |
|
272 |
} |
|
273 |
|
|
274 |
var notOk='';//判断是否检查凭证定义的正确性,''为正确 |
|
275 |
function showPanMessge(date){ |
|
276 |
date=date.substring(0,date.length-1); |
|
277 |
var mass=date.split("#"); |
|
278 |
var in_fo=null; |
|
279 |
notOk=''; |
|
280 |
for(i=0;i<mass.length;i++){ |
|
281 |
if(mass[i]!=""&&mass[i]!=null){ |
|
282 |
in_fo=mass[i].split(";pb;"); |
|
283 |
if(in_fo.length>1&&in_fo[1]=="0"){ |
|
284 |
alert(in_fo[0]); |
|
285 |
// if(confirm(in_fo[0])){ |
|
286 |
notOk='not'; |
|
287 |
// }else{ |
|
288 |
// notOk='not'; |
|
289 |
// } |
|
290 |
}else{ |
|
291 |
if(confirm(in_fo[0])){ |
|
292 |
notOk=''; |
|
293 |
}else{ |
|
294 |
notOk='not'; |
|
295 |
break; |
|
296 |
} |
|
297 |
} |
|
298 |
} |
|
299 |
} |
|
300 |
if(notOk==''){ |
|
301 |
commitIs(check); |
|
302 |
}else{closeLoading();} |
|
303 |
} |
|
304 |
function clearDoc(){//复单 |
|
305 |
isNew="1"; |
|
306 |
var pm=panMain[panIndex]; |
|
307 |
pm.isChange=1; |
|
308 |
// setDoc('doccode',".value=''");//单号 |
|
309 |
// setDoc('docstatus',".value='#predocstatus#'"); //状态 |
|
310 |
var staname=""; |
|
311 |
var staname=""; |
|
312 |
if(typeof(stas)!="undefined"){ |
|
313 |
staname=stas['#predocstatus#']; |
|
314 |
}else{ |
|
315 |
staname='起草'; |
|
316 |
} |
|
317 |
setDocStatuInfo(staname);// |
|
318 |
setDoc('docstatusname',".value='"+staname+"'");//状态描述 |
|
319 |
pm.isAddLong=false;//决定有按钮控件是否还加上一定长度,使整体格式整齐 |
|
320 |
location.href = document.URL+"&isNew=1&cp=1&doccode="+getDoc('doccode','.value'); |
|
321 |
panMain[panIndex].noCopy();//取消不复制字段 |
|
322 |
// loadSet(#predocstatus#);//加载设置 |
|
323 |
cp=true; |
|
324 |
hiddenToolButton(); |
|
325 |
// mygrid.newRecord() |
|
326 |
} |
|
327 |
function delDoc(){ //删单 |
|
328 |
if(confirm("是否真的删除此单据?")) { |
|
329 |
showLoading(); |
|
330 |
$.post("/panDelete.do?docstatus="+getDoc('docstatus','.value'),{"formid":formId,"doccode":getDoc('doccode','.value')},getMess,'text'); |
|
331 |
} |
|
332 |
} |
|
333 |
function disDoc(){ //作废单 |
|
334 |
if(confirm("是否真的作废此单据?")) { |
|
335 |
showLoading(); |
|
336 |
$.post("/panDiscard.do?docstatus="+getDoc('docstatus','.value'),{"formid":formId,"doccode":getDoc('doccode','.value')},getMess,'text'); |
|
337 |
} |
|
338 |
} |
|
339 |
function getMess(data){ |
|
340 |
closeLoading(); |
|
341 |
var json=JSON.parse(data); |
|
342 |
if(json.state==0){ |
|
343 |
alert('已经处理!'); |
|
344 |
if(opener!=null && typeof opener !="undefined" && opener.window!=null){ |
|
345 |
opener.window.location.reload();//刷新父窗口 |
|
346 |
} |
|
347 |
closeme();//关闭当前窗口 |
|
348 |
}else{ |
4a23f4
|
349 |
//by by danaus 2022/9/13 17:52 |
F |
350 |
if(json.msg.indexOf("@p@")) { |
|
351 |
var msg=json.msg.split("@p@"); |
|
352 |
alert(msg[0]); |
|
353 |
redirect(msg[1]); |
|
354 |
}else { |
|
355 |
alert(json.msg);//直接弹出错误 |
|
356 |
} |
a6a76f
|
357 |
} |
F |
358 |
} |
|
359 |
if(navigator.userAgent.match(/iPad|iPhone|Android/i)){ |
|
360 |
try{ |
|
361 |
var myScroll = new IScroll('#scrollbody', { |
|
362 |
mouseWheel: true, |
|
363 |
scrollbars: true, |
|
364 |
zoom: true, |
|
365 |
scrollX: true, |
|
366 |
scrollY: true, |
|
367 |
wheelAction: 'zoom' |
|
368 |
}); |
|
369 |
}catch(e){} |
|
370 |
} |
|
371 |
var iscp=0;//1表示是复单 |
|
372 |
var js_where={};//496页卡格线参数条件查询 |
|
373 |
</script> |