designAfterOrder.zml 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561
  1. ${Styles.htmlOverflowHidden()}
  2. ${yangcai_calc_Left_width_height(340, 110)}
  3. <script>
  4. //查询操作员
  5. var attaTypeMap = new Z.HashMap();
  6. var blameOrgMap = new Z.HashMap();
  7. var orgUserListMap = new Z.HashMap();
  8. Z.onload(function(){
  9. //初始化 文件类型
  10. <#for item : FileTypeConstants.getFileTypeList()>
  11. attaTypeMap.put('${item.value()}', '${item.desc()}')
  12. </#for>
  13. });
  14. function getObject(json)
  15. {
  16. json = json.replace(/\r/g, '');
  17. json = json.replace(/\n/g, '<br/>');
  18. json = json.replace(/\t/g, '&nbsp;&nbsp;&nbsp;&nbsp;');
  19. var reg = /(\u0000)|(\u0001)|(\u0002)|(\u0003)|(\u0004)|(\u0005)|(\u0006)|(\u0007)|(\u000b)|(\u000e)|(\u000f)|(\u0010)|(\u0011)|(\u0012)|(\u0013)|(\u0014)|(\u0015)|(\u0016)|(\u0017)|(\u0018)|(\u0019)|(\u001a)|(\u001b)|(\u001c)|(\u001d)|(\u001e)|(\u001f)/g;
  20. //var reg = //g;
  21. return Z.J.toObject(json.replace(reg, ""));
  22. }
  23. function doShowAfterOrderInfo(obj, designAfsId)
  24. {
  25. if (!designAfsId)
  26. {
  27. Z.alert("请选择一项");
  28. return;
  29. }
  30. var ajax = new Z.Ajax();
  31. ajax.setContextPath('${context.getContextPath()}');
  32. ajax.setClassName("DesignAfterOrderPresenter");
  33. ajax.setMethodName("doQueryAfterOrderDataInfo");
  34. ajax.addParam("designAfsId", designAfsId);
  35. ajax.setFailureAlert();
  36. ajax.setSuccess(function(){
  37. //初始化数据内容
  38. var attamap = new Z.HashMap();
  39. var obj = getObject(this.responseText);
  40. var afterOrder = obj.afterOrder;
  41. var problemType = obj.problemType;
  42. var attaList = obj.afterAttaList;
  43. for (var i=0; i< attaList.length; i++)
  44. {
  45. var atta = attaList[i];
  46. var list = attamap.get(atta.attaModul);
  47. if (!list)
  48. list=[];
  49. list.push(atta);
  50. attamap.put(atta.attaModul, list);
  51. }
  52. var afterRightContent = '';
  53. afterRightContent +='\r\n <table class="z-table z-pd10 z-bordered z-w100p" style="margin-top:;">';
  54. afterRightContent +='\r\n <tr bgcolor="#f5f5f5">';
  55. afterRightContent +='\r\n <td>产品信息:</td>';
  56. afterRightContent +='\r\n </tr>';
  57. afterRightContent +='\r\n <tr>';
  58. afterRightContent +='\r\n <td id="orderText" class="z-lh150p">'+afterOrder.orderText+'</td>';
  59. afterRightContent +='\r\n </tr>';
  60. afterRightContent +='\r\n <tr bgcolor="#f5f5f5">';
  61. afterRightContent +='\r\n <td><span class="z-bold">问题描述:</td>';
  62. afterRightContent +='\r\n </tr>';
  63. afterRightContent +='\r\n <tr>';
  64. afterRightContent +='\r\n <td id="problemDesc" class="z-lh150p">';
  65. afterRightContent +='\r\n <div id="problemDesc" class="z-overflow-y-auto z-w100p" id="atta_EndFile" style="min-height:24px; max-height:100px;">';
  66. afterRightContent +='\r\n '+(afterOrder.problemDesc ? afterOrder.problemDesc : '');
  67. afterRightContent +='\r\n </div>';
  68. afterRightContent +='\r\n </td>';
  69. afterRightContent +='\r\n </tr>';
  70. if (problemType && problemType.problemName)
  71. {
  72. afterRightContent +='\r\n <tr bgcolor="#f5f5f5">';
  73. afterRightContent +='\r\n <td><span class="z-bold">售后原因:</td>';
  74. afterRightContent +='\r\n </tr>';
  75. afterRightContent +='\r\n <tr>';
  76. afterRightContent +='\r\n <td id="problemDesc" class="z-lh150p">';
  77. afterRightContent +='\r\n <div id="problemDesc" class="z-overflow-y-auto z-w100p" id="atta_EndFile" style="min-height:24px; max-height:100px;">';
  78. afterRightContent +='\r\n '+(problemType.problemName);
  79. afterRightContent +='\r\n </div>';
  80. afterRightContent +='\r\n </td>';
  81. afterRightContent +='\r\n </tr>';
  82. }
  83. for (var i=0; i<attamap._keys.length; i++)
  84. {
  85. var attaList = attamap.get(attamap._keys[i]);
  86. if (!attaList || attaList.length == 0)
  87. continue;
  88. if (!attaTypeMap.get(attamap._keys[i]))
  89. continue;//不支持的附件类型
  90. afterRightContent +='\r\n <tr class="z-h40" bgcolor="#efefef">';
  91. afterRightContent +='\r\n <td style="position: relative;">';
  92. afterRightContent +='\r\n <input type="checkbox" class="z-checkbox" data-role="z-checkbox" data-class="z-blue" onclick="Z.FM.doSelectCheckBox(\'atta_'+attamap._keys[i]+'\', this.checked);" >';
  93. afterRightContent +='\r\n <b class="z-pd4">'+attaTypeMap.get(attamap._keys[i])+'</b>';
  94. afterRightContent +='\r\n <button id="download_'+attamap._keys[i]+'" onclick="doDownload(\''+attamap._keys[i]+'\')" class="z-button z-mg-l20 z-float-right z-orange z-mg-r6">下载</button>';
  95. afterRightContent +='\r\n </td>';
  96. afterRightContent +='\r\n </tr>';
  97. afterRightContent +='\r\n <tr class="z-h40">';
  98. afterRightContent +='\r\n <td class="z-pd-l10">';
  99. for (var j=0; j<attaList.length; j++)
  100. {
  101. var atta = attaList[j];
  102. afterRightContent +='\r\n <div class="z-overflow-y-auto z-w100p" style="min-height:24px; max-height:100px;">';
  103. afterRightContent +='\r\n <div id="div_checkbox_'+atta.attaId+'" class="z-text-ellipsis z-w300 z-pointer" onclick="" title="'+atta.fileName+'">';
  104. afterRightContent +='\r\n <input id="atta_'+atta.attaId+'" name="atta_'+atta.attaModul+'" type="checkbox" class="z-checkbox" data-role="z-checkbox" data-class="z-blue" data-attaid="'+atta.attaId+'" data-downloadUrl="'+(atta.ossUrl ? atta.ossUrl : '')+'" value="'+atta.attaId+'"><span class="z-pd6" onclick="Z(this).parent().find(\'zcover>i.z-checkbox\').click();">'+atta.fileName+'</span><br>';
  105. afterRightContent +='\r\n </div>';
  106. afterRightContent +='\r\n </div>';
  107. }
  108. afterRightContent +='\r\n </td>';
  109. afterRightContent +='\r\n </tr>';
  110. }
  111. afterRightContent +='\r\n </table>';
  112. Z("#afterRightContent").htmlc(afterRightContent);
  113. });
  114. ajax.execute();
  115. }
  116. function doDownload(attaType)
  117. {
  118. var attaIds = Z.FM.getCheckBoxValue("atta_" + attaType, "");
  119. if (Z.V.isEmpty(attaIds))
  120. {
  121. parent.Z.alert("请选择需要下载的文件");
  122. return false;
  123. }
  124. var ajax = new Z.Ajax();
  125. ajax.setClassName("UploadFilePresenter");
  126. ajax.setMethodName("doDownloadFile");
  127. ajax.addParam("attaId", attaIds);
  128. ajax.setFailure(function(){
  129. Z.alert(this.responseText,null, {width:320});
  130. });
  131. ajax.setSuccess(function(){
  132. Z.L.href("/downFile.htm?attaId=" + attaIds, zCallFrame);
  133. });
  134. ajax.setLoading('download_'+attaType, '下载', {disabled:true});
  135. ajax.execute();
  136. }
  137. <#if ZmrPathRule.check(request, "/appointAfterBlame.htm")>
  138. var picProblemMap = new Z.HashMap();
  139. function doPreAppointAfterBlame()
  140. {//指定责任
  141. //清空缓存数据
  142. picProblemMap = new Z.HashMap();
  143. var designAfsId = Z.FM.getChecked("designAfsId");
  144. if (Z.V.isEmpty(designAfsId))
  145. {
  146. Z.alert("请选择一条订单");
  147. return;
  148. }
  149. var ajax = new Z.Ajax();
  150. ajax.setContextPath('${context.getContextPath()}');
  151. ajax.setClassName("DesignAfterOrderPresenter");
  152. ajax.setMethodName("doQueryAppointBlameData");
  153. ajax.addParam("designAfsId", designAfsId);
  154. ajax.setFailureAlert();
  155. ajax.setSuccess(function(){
  156. var attamap = new Z.HashMap();
  157. var obj = getObject(this.responseText);
  158. var afterOrder = obj.afterOrder;
  159. var attaList = obj.afterAttaList;
  160. for (var i=0; i< attaList.length; i++)
  161. {
  162. var atta = attaList[i];
  163. var list = attamap.get(atta.attaModul);
  164. if (!list)
  165. list=[];
  166. list.push(atta);
  167. attamap.put(atta.attaModul, list);
  168. }
  169. for (var i = 0; i < obj.problemList.length; i++)
  170. {
  171. var p = obj.problemList[i];
  172. var list = picProblemMap.get(''+p.picType);
  173. if (!list)
  174. list = [];
  175. list.push(p);
  176. picProblemMap.put(''+p.picType, list);
  177. }
  178. var dialogContent ='<form name="appointAfterBlameForm">';
  179. dialogContent +='<input type="hidden" name="designAfsId" value="'+afterOrder.designAfsId+'">';
  180. dialogContent +='<input type="hidden" name="outAfsId" value="'+afterOrder.outAfsId+'">';
  181. dialogContent +='<table class="z-table z-bordered-line z-pd6 z-bg-white z-text-left">';
  182. dialogContent +=' <tr class="z-h40" bgcolor="">';
  183. dialogContent +=' <td align="right">设计订单:</td>';
  184. dialogContent +=' <td >'+afterOrder.designId+'</td>';
  185. dialogContent +=' <td align="right">订单组织:</td>';
  186. dialogContent +=' <td >'+(blameOrgMap.get(''+afterOrder.orgId) ? blameOrgMap.get(''+afterOrder.orgId).orgName : '')+'</td>';
  187. dialogContent +=' <td align="right">订单设计师:</td>';
  188. dialogContent +=' <td >'+afterOrder.designer+'</td>';
  189. dialogContent +=' </tr>';
  190. dialogContent +=' <tr class="z-h40" bgcolor="">';
  191. dialogContent +=' <td align="right">旺旺号:</td>';
  192. dialogContent +=' <td >'+afterOrder.buyerNick+'</td>';
  193. dialogContent +=' <td align="right">产品名:</td>';
  194. dialogContent +=' <td colspan="3" >'+afterOrder.orderText+'</td>';
  195. dialogContent +=' </tr>';
  196. dialogContent +=' <tr class="z-h40">';
  197. dialogContent +=' <td align="right" valign="top">问题描述:</td>';
  198. dialogContent +=' <td colspan="5" valign="top"><div class="z-overflow-y-auto " style="min-height:26px; max-height:160px">'+afterOrder.problemDesc+'</div></td>';
  199. dialogContent +=' </tr>';
  200. dialogContent +=' <tr class="z-h40" bgcolor="">';
  201. dialogContent +=' <td width="100" align="right">责任组织:</td>';
  202. dialogContent +=' <td width="160">';
  203. dialogContent +=' <select id="picOrgId" name="picOrgId" onchange="showOrgOperator(this.value, \'\')" class="z-w140 z-select" data-role="z-select">';
  204. dialogContent +=' <option value="">请选择</option>';
  205. for (var i = 0; i < blameOrgMap._keys.length; i++)
  206. {
  207. var org = blameOrgMap.get(blameOrgMap._keys[i]);
  208. var selcted = (afterOrder.picOrgId == org.orgId) ? "selected" : "";
  209. dialogContent +=' <option value="'+org.orgId+'" '+selcted+'>'+org.orgName+'</option>';
  210. }
  211. dialogContent +=' </select>';
  212. dialogContent +=' </td>';
  213. dialogContent +=' <td width="100" align="right">责任归属:</td>';
  214. dialogContent +=' <td>';
  215. dialogContent +=' <div id="">';
  216. dialogContent +=' <select id="picType" name="picType" onchange="showProblemType(this.value, \'\')" class="z-w140 z-select" data-role="z-select" data-class="z-blue" >';
  217. dialogContent +=' <option value="">请选择</option>';
  218. for (var i = 0; i < obj.picList.length; i++)
  219. {
  220. var picType = obj.picList[i];
  221. var selcted = (afterOrder.picType == picType.picType) ? "selected" : "";
  222. if (Z.V.isEmptyBlank(selcted) && picType.picStatus == 1)
  223. continue;
  224. dialogContent +=' <option value="'+picType.picType+'" '+selcted+'>'+picType.picTypeName+'</option>';
  225. }
  226. dialogContent +=' </select>';
  227. dialogContent +=' </div>';
  228. dialogContent +=' </td>';
  229. dialogContent +=' <td align="right">售后原因:</td>';
  230. dialogContent +=' <td id="picProblemTypeDiv">';
  231. dialogContent +=' <select data-class="z-blue" data-role="z-select-search" id="problemType" name="problemType" class="z-w200 z-select">';
  232. dialogContent +=' <option value="">请选择</option>';
  233. dialogContent +=' </select>';
  234. dialogContent +=' </td>';
  235. dialogContent +=' </tr>';
  236. dialogContent +=' <tr class="z-h40" bgcolor="">';
  237. dialogContent +=' <td align="right">售后责任人:</td>';
  238. dialogContent +=' <td id="afterBlamerDiv">';
  239. dialogContent +=' <select name="afterBlamer" data-class="z-blue" data-role="z-select-search" data-options="maxHeight:180px" id="afsHandler"class="z-w140 z-select">';
  240. dialogContent +=' <option value="">请选择</option>';
  241. dialogContent +=' </select>';
  242. dialogContent +=' </td>';
  243. dialogContent +=' <td align="right">处理人:</td>';
  244. var afterHandler = '${request.getSessionName()}';
  245. dialogContent +=' <td>'+afterHandler+'</td>';
  246. dialogContent +=' <td align="right">损失金额:</td>';
  247. dialogContent +=' <td><input name="lossAmount" class="z-input z-w200" value="'+afterOrder.lossAmount.toFixed(2)+'" data-options="type:Amount2R;paste:true"></td>';
  248. dialogContent +=' </tr>';
  249. dialogContent +='</table>';
  250. dialogContent +='<div class="z-absolute z-w100p z-h60 z-text-center z-bg-gray z-pd10" style="bottom:0;left:0">';
  251. if (afterOrder.afterStatus == ${AfterConstants.CS_0.value()})
  252. dialogContent +=' <button type="button" id="appointBlameBtn" class="z-button z-large z-w120 z-cyan" onclick="doAppointAfterBlame(this.form)">提交</button>';
  253. dialogContent +=' <button type="button" class="z-button z-large z-mg-l10" onclick="Z.Dialog.close();">关闭</button>';
  254. dialogContent +='</div>';
  255. dialogContent +='</form>';
  256. var appointBlameDialog = new Z.Dialog();
  257. appointBlameDialog.id = "appointBlame";
  258. appointBlameDialog.title = "售后订单:["+afterOrder.outAfsId+"]责任分配";
  259. appointBlameDialog.text = "<div id='appointBlame_dialogContent'></div>";
  260. appointBlameDialog.width = 1024;
  261. appointBlameDialog.height = 500;
  262. appointBlameDialog.execute();
  263. Z("#appointBlame_dialogContent").htmlc(dialogContent);
  264. showOrgOperator(afterOrder.picOrgId, afterOrder.afterBlamer);//选中 操作员
  265. showProblemType(afterOrder.picType, afterOrder.problemType)
  266. });
  267. ajax.setLoading("appointAfterBlameBtn", "正在处理", {disabled:true})
  268. ajax.execute();
  269. }
  270. function showOrgOperator(orgId, userName)
  271. {
  272. var org = blameOrgMap.get(''+orgId);
  273. var html ='<select name="afterBlamer" data-class="z-blue" data-role="z-select-search" data-options="maxHeight:180px" id="afsHandler"class="z-w140 z-select">';
  274. html +='\r\n <option value="">请选择</option>';
  275. var userList = orgUserListMap.get(""+orgId);
  276. if (org && userList && userList.length && userList.length > 0)
  277. {
  278. for (var i = 0; i < userList.length; i++)
  279. {
  280. var user = userList[i];
  281. var selected = (''+user.operatorCode == ''+userName) ? "selected" : "";
  282. html +='\r\n<option value="'+user.operatorCode+'" '+selected+'>'+user.operatorCode+'</option>';
  283. }
  284. }
  285. html +='\r\n</select>';
  286. Z("#afterBlamerDiv").htmlc(html);
  287. }
  288. function showProblemType(picTyle, problemType)
  289. {
  290. var html ='<select name="problemType" data-class="z-blue" data-role="z-select-search" data-options="maxHeight:180px" id="afsHandler"class="z-w200 z-select">';
  291. html +='\r\n <option value="">请选择</option>';
  292. var problemList = picProblemMap.get(""+picTyle);
  293. if (picTyle && problemList && problemList.length && problemList.length > 0)
  294. {
  295. for (var i = 0; i < problemList.length; i++)
  296. {
  297. var p = problemList[i];
  298. var selcted = (''+problemType == ''+p.problemType) ? "selected" : "";
  299. if (Z.V.isEmptyBlank(selcted) && p.problemStatus == 1)
  300. continue;
  301. html +='\r\n <option value="'+p.problemType+'" '+selcted+'>'+p.problemName+'</option>';
  302. }
  303. }
  304. html +='\r\n</select>';
  305. Z("#picProblemTypeDiv").htmlc(html);
  306. }
  307. function doAppointAfterBlame(blameForm)
  308. {//提交责任分配
  309. var ajax = new Z.Ajax();
  310. ajax.setContextPath('${context.getContextPath()}');
  311. ajax.setClassName("DesignAfterOrderPresenter");
  312. ajax.setMethodName("doAppointAfterBlame");
  313. ajax.setParamForm(blameForm);
  314. ajax.setFailureAlert();
  315. ajax.setSuccess(function()
  316. {
  317. Z.Dialog.close();
  318. document.theForm.submit();
  319. });
  320. ajax.setLoading("appointBlameBtn", "正在提交", {disabled:true});
  321. ajax.execute();
  322. }
  323. </#if>
  324. //赔付比修改
  325. function doEditDesignAfsId(){
  326. var designAfsId = Z.FM.getChecked("designAfsId");
  327. var lossAmount = Z("#lossAmount_"+designAfsId).val();
  328. var compensateAmount = Z("#compensateAmount_"+designAfsId).val();
  329. var designId = Z("#designId_"+designAfsId).val();
  330. var afterStatus = Z("#afterStatus_"+designAfsId).val();
  331. if (Z.V.isEmpty(designAfsId)){
  332. Z.alert("请选择一条售后单");
  333. return;
  334. };
  335. if (afterStatus < 0 || afterStatus > 300){
  336. Z.alert("该售后单状态不允许修改赔付比");
  337. return;
  338. };
  339. var dialog = new Z.Dialog();
  340. dialog.title = "修改售后赔付比";
  341. dialog.url = "/doEditDesignAfsId.htm?designId=" + designId +"&designAfsId="+designAfsId+"&lossAmount="+lossAmount+"&compensateAmount="+compensateAmount;
  342. dialog.width = 600;
  343. dialog.height = 354;
  344. dialog.execute();
  345. }
  346. </script>
  347. ${zhiqim_manager_breadcrumb("售后单列表")}
  348. ${zhiqim_manager_content()}
  349. <#-- 导航 -->
  350. <div data-role="z-tabnav" class="z-tabnav-main z-mg-b20 ${zmr_color_class}">
  351. <nav>
  352. <ul>
  353. <li class="z-active">售后单列表</li>
  354. </ul>
  355. </nav>
  356. </div>
  357. <#-- 左侧功能 -->
  358. <div id="left" class="z-overflow-y-auto z-overflow-x-hidden z-relative-left">
  359. <#-- 查询条件 -->
  360. ${zhiqim_manager_title("查询条件")}
  361. <form name="theForm" method="post">
  362. <table class="z-table z-bordered z-pd6 z-bg-white">
  363. <tr>
  364. <td width="30%">售后单号:<input name="designAfsId" class="${zmr_color_class} z-input z-w180 z-mg-l4" value="${designAfsId}" maxlength="64" placeholder="订单号"></td>
  365. <td width="34%">订&nbsp;单&nbsp;号 :<input name="designId" class="${zmr_color_class} z-input z-w180 z-mg-l4" value="${designId}" maxlength="64" placeholder="订单号"></td>
  366. <td>
  367. 创建时间:
  368. <input id="startCreateDate" name="startCreateDate" class="z-input z-w90 ${zmr_color_class}" readonly="true" onfocus="Z.date(this);" value="${startCreateDate}">&nbsp;-&nbsp;
  369. <input id="endCreateDate" name="endCreateDate" class="z-input z-mg-l3 z-w90 ${zmr_color_class}" readonly="true" onfocus="Z.date(this);" value="${endCreateDate}">
  370. </td>
  371. </tr>
  372. <tr class="z-h40">
  373. <td>设&nbsp;计&nbsp;师 :
  374. <input name="designer" class="${zmr_color_class} z-input z-w180 z-mg-l4" value="${designer}" maxlength="64" placeholder="设计师">
  375. </td>
  376. <td>处理状态:
  377. <select name="afterStatus" class="z-select z-w180" data-role="z-select" data-class="${zmr_color_class}">
  378. <option value="">全部</option>
  379. <#for item : AfterConstants.getStatusList()>
  380. <option value="${item.value()}" <#if item.value() == afterStatus>selected</#if>>${item.desc()}</option>
  381. </#for>
  382. </select>
  383. </td>
  384. <td>
  385. </td>
  386. </tr>
  387. <tr class="z-h40">
  388. <td colspan="3" class="z-text-center"><button class="z-button z-large z-w120 z-mg-r15 ${zmr_color_class}">查询</button><button class="z-button z-large" type="button" onclick="Z.FM.clearForm(this.form);">清空</button></td>
  389. </tr>
  390. </table>
  391. </form>
  392. <#-- 操作功能 -->
  393. <div class="z-w100p z-mg-t10 z-mg-b3">
  394. <#if ZmrPathRule.check(request, "/designCopiesr.htm")>
  395. <button id="doEditDesignAfsId" type="button" class="z-button z-blue" onclick="doEditDesignAfsId();"><i class="z-font z-modify"></i>赔付比修改</button>
  396. </#if>
  397. </div>
  398. <#-- 列表-->
  399. <div class="z-overflow-auto z-bd-r">
  400. <table class="z-table z-bordered z-h40-tr z-pd5 zi-bd-r-none z-bg-white z-text-center" style="width:2500px">
  401. <tr bgcolor="${zmr_thead_bgcolor}" data-layoutCode="orderList">
  402. <td width="30">选择</td>
  403. <td width="120">售后单号</td>
  404. <td width="100">订单号</td>
  405. <td width="80">设计师</td>
  406. <td width="60">创建时间</td>
  407. <td width="100">处理状态</td>
  408. <td width="60">损失金额</td>
  409. <td width="60">赔付金额<span data-role="z-tooltip" data-options="align:left;width:200px;" class="z-color-red" data-text="2021年10月1日起,设计师售后赔偿金额由损失金额改为赔付金额">&nbsp;*</span></td>
  410. <td width="250">售后原因</td>
  411. <td width="150">产品</td>
  412. <td width="80">店铺</td>
  413. <td width="80">旺旺号</td>
  414. <td width="100">特殊工艺</td>
  415. <td width="60">订单金额</td>
  416. <td width="100">新补单号</td>
  417. <td width="150">申诉拒绝原因</td>
  418. <td width="60">申诉拒绝时间</td>
  419. </tr>
  420. ${zhiqim_manager_tr_no_record(pageResult, 21, "暂时没有订单信息")}
  421. <#for item : pageResult.list()>
  422. <input id="lossAmount_${item.getDesignAfsId()}" type="hidden" value="${item.getLossAmount()}">
  423. <input id="compensateAmount_${item.getDesignAfsId()}" type="hidden" value="${item.getCompensateAmount()}">
  424. <input id="designId_${item.getDesignAfsId()}" type="hidden" value="${item.getDesignId()}">
  425. <input id="afterStatus_${item.getDesignAfsId()}" type="hidden" value="${item.getAfterStatus()}">
  426. <tr class="z-pointer" ${zhiqim_manager_tr_onmouse()} ${zhiqim_manager_tr_click_radio()}>
  427. <td><input id="designAfsId" name="designAfsId" type="radio" data-role="z-radio" data-class="${zmr_color_class}" onclick="doShowAfterOrderInfo(this, this.value)" value="${item.getDesignAfsId()}" data-qq="${item.getUserQq()}" data-wx="${item.getUserWx()}" data-buyerNick="${item.getBuyerNick()}"></td>
  428. <td>${item.getDesignAfsId()}</td>
  429. <td>${item.getDesignId()}</td>
  430. <td>${item.getDesigner()}</td>
  431. <td>${Sqls.toDateTimeString(item.getAfterCreateTime())}</td>
  432. <td>${AfterConstants.statusHtml(item.getAfterStatus())}</td>
  433. <td>${item.getLossAmount()}</td>
  434. <#if item.getAfterCreateTime().getTime() gte lNowTime>
  435. <td>${(item.getCompensateAmount())}</td>
  436. <#else>
  437. <td>${item.getLossAmount()}</td>
  438. </#if>
  439. <td>${item.getProblemDesc()}</td>
  440. <td>${item.getOrderText()}</td>
  441. <td>${item.getShopNick()}</td>
  442. <td id="ww${item.getDesignAfsId()}" data-ww="${item.getBuyerNick()}">${item.getBuyerNick()}</td>
  443. <td>${item.getPrintSpecial()}</td>
  444. <td>${Amounts.toYuanMustRadix(item.getAmount())}</td>
  445. <td><#if item.getNewDesignId() gt 0>${item.getNewDesignId()}</#if></td>
  446. <td>${item.getAfterReturnNote()}</td>
  447. <td>${Sqls.toDateTimeString(item.getAfterBlameReturnTime())}</td>
  448. </tr>
  449. </#for>
  450. </table>
  451. </div>
  452. ${zhiqim_manager_paging(pageResult, "designAfterOrder.htm")}
  453. </div>
  454. ${zhiqim_manager_content_end()}
  455. <#--右侧文件信息-->
  456. <div id="afterRight" class="z-fixed z-pd6 z-bd-l z-bg-white z-h100p" style="top:${zmr_topnav_height}px;right:0;width:340px;z-index:50;">
  457. <div id="afterRightContent" class="zi-mg-t15">
  458. <table class="z-table z-pd10 z-bordered z-w100p" style="margin-top:;">
  459. <tr bgcolor="#f5f5f5">
  460. <td>产品信息:</td>
  461. </tr>
  462. <tr>
  463. <td id="orderText" class="z-lh150p">请选择订单</td>
  464. </tr>
  465. <tr bgcolor="#f5f5f5">
  466. <td><span class="z-bold">问题描述:</span></td>
  467. </tr>
  468. <tr>
  469. <td class="z-lh150p">
  470. <div id="problemDesc" class="z-overflow-y-auto z-w100p" id="atta_EndFile" style="min-height:24px; max-height:100px;">
  471. </div>
  472. </td>
  473. </tr>
  474. <tr class="z-h40" bgcolor="#efefef">
  475. <td style="position: relative;">
  476. <zcover style="float: none; margin: 0px;"><input type="checkbox" class="z-checkbox" data-role="z-checkbox" data-class="z-blue" onclick="Z.FM.doSelectCheckBox('atta_AftersaleFile', this.checked);" data-id="Z_Checkbox_ZaKqqLra8T" style="visibility: hidden; margin: 0px;"><i class="z-checkbox z-role-checkbox z-relative z-blue" id="Z_Checkbox_ZaKqqLra8T" data-id="" data-name="" style="padding: 0px; margin-left: -16px;"></i></zcover>
  477. <b class="z-pd4">售后文件</b>
  478. <button id="download" class="z-button z-mg-l20 z-float-right z-orange z-mg-r6">下载</button>
  479. </td>
  480. </tr>
  481. <tr class="z-h40">
  482. <td class="z-pd-l10">
  483. <div class="z-overflow-y-auto z-w100p" id="atta_AftersaleFile" style="min-height:24px; max-height:100px;">
  484. </div>
  485. </td>
  486. </tr>
  487. <tr class="z-h40" bgcolor="#efefef">
  488. <td style="position: relative;">
  489. <zcover style="float: none; margin: 0px;"><input type="checkbox" class="z-checkbox" data-role="z-checkbox" data-class="z-blue" onclick="Z.FM.doSelectCheckBox('atta_DesginFile', this.checked);" data-id="Z_Checkbox_TsMUgMR9ME" style="visibility: hidden; margin: 0px;"><i class="z-checkbox z-role-checkbox z-relative z-blue" id="Z_Checkbox_TsMUgMR9ME" data-id="" data-name="" style="padding: 0px; margin-left: -16px;"></i></zcover>
  490. <b class="z-pd4">设计文件</b>
  491. <button id="download" class="z-button z-mg-l20 z-float-right z-orange z-mg-r6">下载</button>
  492. </td>
  493. </tr>
  494. <tr class="z-h40">
  495. <td class="z-pd-l10">
  496. <div class="z-overflow-y-auto z-w100p" id="atta_DesginFile" style="min-height:24px; max-height:100px;">
  497. </div>
  498. </td>
  499. </tr>
  500. <tr class="z-h40" bgcolor="#efefef">
  501. <td style="position: relative;">
  502. <zcover style="float: none; margin: 0px;"><input type="checkbox" class="z-checkbox" data-role="z-checkbox" data-class="z-blue" onclick="Z.FM.doSelectCheckBox('atta_EndFile', this.checked);" data-id="Z_Checkbox_7pxVgdChg9" style="visibility: hidden; margin: 0px;"><i class="z-checkbox z-role-checkbox z-relative z-blue" id="Z_Checkbox_7pxVgdChg9" data-id="" data-name="" style="padding: 0px; margin-left: -16px;"></i></zcover>
  503. <b class="z-pd4">印刷文件</b>
  504. <button id="download" class="z-button z-mg-l20 z-float-right z-orange z-mg-r6">下载</button>
  505. </td>
  506. </tr>
  507. <tr class="z-h40">
  508. <td class="z-pd-l10">
  509. <div class="z-overflow-y-auto z-w100p" id="atta_EndFile" style="min-height:24px; max-height:100px;">
  510. </div>
  511. </td>
  512. </tr>
  513. </table>
  514. </div>
  515. </div>
  516. <#-- 联系旺旺&联系QQ弹窗框 -->
  517. <iframe id="openFrm" class="z-hide" src="about:blank"></iframe>