deptJob_Summary_DoScore.html 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  6. <meta name="apple-mobile-web-app-capable" content="yes">
  7. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  8. <title>部门工作总结评分</title>
  9. <link href="../../../css/mui.min.css" rel="stylesheet" />
  10. <link href="../../../css/OA-style.css" rel="stylesheet" />
  11. </head>
  12. <body>
  13. <header class="mui-bar mui-bar-nav" id="login">
  14. <a class="mui-action-back back mui-pull-left" href="../../office/office.html"><img src="../../../images/back.png"></a>
  15. <h1 class="mui-title">部门工作总结评分</h1>
  16. <!--<a class="mui-icon mui-pull-right" id="save" onclick="saveScore()">
  17. <img src="../../../images/save.png" style="width: 24px;" />
  18. </a>-->
  19. <button id="save" type="button" data-loading-text="保存中" class="mui-pull-right" class="mui-btn" onclick="saveScore()" >保存</button>
  20. </header>
  21. <div class="mui-content" id = "ScoreDiv">
  22. <form action="#" method="post" id="saveForm">
  23. <span id="title" style="text-align: center; display: block; font-size: 17px; margin: 10px;"></span>
  24. <span id="deptname" style="text-align: center; display: block; font-size: 17px; margin: 10px;"></span>
  25. <div class="mui-card" >
  26. <div class="mui-card-header tongzhi_title" id="firstInput" style="display: none;">
  27. <b>部门负责人评分</b>
  28. <b><input type="text" name="job_leader_score" id="job_leader_score" value="" placeholder="分管领导评分(百分制)"/>
  29. </div>
  30. <div class="mui-card-header tongzhi_title" id="secondInput" style="display: none;">
  31. <b>总经理评分</b>
  32. <b><input type="text" name="job_manager_score" id="job_manager_score" value="" placeholder="总经理评分(百分制)"/></b>
  33. </div>
  34. </div>
  35. <template v-for="itemA in itemAs">
  36. <div class="mui-card">
  37. <div class="mui-card-header tongzhi_title"><b>项目:{{itemA.job_project}}-----工作类别:{{itemA.job_type_of_work}}-----工作量占比:{{ Number(itemA.job_workload_share*100).toFixed(0) }}%</b></div>
  38. <div class="mui-card-content">
  39. <div class="mui-card-content-inner">
  40. <div >
  41. <div class="tongzhi_div"><img class="tongzhi_img" src="../../../images/zhiban.png"></div>
  42. <div class="tongzhi_div2">工作内容:{{itemA.job_content}}</div><p></p>
  43. <div class="tongzhi_div"><img class="tongzhi_img" src="../../../images/zhiban.png"></div>
  44. <div class="tongzhi_div2">评分标准:{{itemA.job_score_standard}}</div><p></p>
  45. <div class="tongzhi_div"><img class="tongzhi_img" src="../../../images/zhiban.png"></div>
  46. <div class="tongzhi_div2">评分依据:{{itemA.job_score_basis}}</div><p></p>
  47. <template v-for="it in itemBs">
  48. <!-- 当前评分人员:{{ it.score_user_deptname }}/{{ it.score_username }}
  49. --> <template v-if="it.set_type == 'job_mutual1'">
  50. <!--{{itemA.universialid + '-job_mutual1'}}-->
  51. <input type="text" v-bind:value="itemA.job_mutual1" v-bind:id="itemA.universialid + '-job_mutual1'" v-bind:name="itemA.universialid + '-job_mutual1'" v-bind:placeholder=" it.score_user_deptname + it.score_username "/>
  52. </template>
  53. <template v-if="it.set_type == 'job_mutual2'">
  54. <input type="text" v-bind:value="itemA.job_mutual2" v-bind:id="itemA.universialid + '-job_mutual2'" v-bind:name="itemA.universialid + '-job_mutual2'" v-bind:placeholder=" it.score_user_deptname + it.score_username "/>
  55. </template>
  56. <template v-if="it.set_type == 'job_mutual3'">
  57. <input type="text" v-bind:value="itemA.job_mutual3" v-bind:id="itemA.universialid + '-job_mutual3'" v-bind:name="itemA.universialid + '-job_mutual3'" v-bind:placeholder=" it.score_user_deptname + it.score_username "/>
  58. </template>
  59. <template v-if="it.set_type == 'job_mutual4'">
  60. <input type="text" v-bind:value="itemA.job_mutual4" v-bind:id="itemA.universialid + '-job_mutual4'" v-bind:name="itemA.universialid + '-job_mutual4'" v-bind:placeholder=" it.score_user_deptname + it.score_username "/>
  61. </template>
  62. <template v-if="it.set_type == 'job_mutual5'">
  63. <input type="text" v-bind:value="itemA.job_mutual5" v-bind:id="itemA.universialid + '-job_mutual5'" v-bind:name="itemA.universialid + '-job_mutual5'" v-bind:placeholder=" it.score_user_deptname + it.score_username "/>
  64. </template>
  65. <template v-if="it.set_type == 'job_mutual6'">
  66. <input type="text" v-bind:value="itemA.job_mutual6" v-bind:id="itemA.universialid + '-job_mutual6'" v-bind:name="itemA.universialid + '-job_mutual6'" v-bind:placeholder=" it.score_user_deptname + it.score_username "/>
  67. </template>
  68. </template>
  69. <span class="tongzhi_div"><img class="tongzhi_img" src="../../../images/zhibanshijian.png"></span>
  70. <span class="tongzhi_div1">2018-05-22 16:45</span>
  71. </div>
  72. </div>
  73. </div>
  74. </div>
  75. </template>
  76. </form>
  77. </div>
  78. <script src="../../../js/mui.min.js"></script>
  79. <script type="text/javascript" src="../../../js/jquery-1.11.2.min.js"></script>
  80. <script src="../../../js/config.js"></script>
  81. <script src="../../../js/app.js"></script>
  82. <script src="../../../js/vue.min.js"></script>
  83. <script>
  84. mui.init();
  85. var vmA = new Vue({
  86. el: '#ScoreDiv',
  87. data: {
  88. itemAs: [], //列表信息流数据
  89. itemBs: [] //列表信息流数据
  90. }
  91. });
  92. function saveScore(){
  93. mui("#save").button('loading');
  94. var postData = $("#saveForm").serialize();
  95. var data = postData.replace(/=/g,":'").replace(/&/g,"',")+"'";
  96. var url = API.API_URL();
  97. var state = app.getState(); //获取登陆信息
  98. var staffId = state.user.useId;
  99. var obj = {
  100. 'serviceId': 'oa_2018A1207GetDeptJobScore',
  101. 'params': '{Excelid:"' + Excelid + '",' + data + '}'
  102. };
  103. mui.ajax(url, {
  104. dataType: 'json', //服务器返回json格式数据
  105. type: 'post', //HTTP请求类型
  106. data: obj,
  107. timeout: 10000, //超时时间设置为10秒;
  108. headers: {
  109. 'Accept': 'application/json'
  110. }, //超时时间设置为10秒;
  111. success: function(data) {
  112. if(data.returnCode == "0") {
  113. var resultNum = data.returnParams.resultNum;
  114. if( resultNum > 0 ){
  115. mui("#save").button('reset');
  116. mui.toast('保存成功!');
  117. plus.webview.close("deptJob_folder.html");
  118. setTimeout(function(){
  119. var page = "deptJob_folder.html";
  120. mui.openWindow({
  121. url: page,
  122. extras: {"Excelid":Excelid,
  123. "job_type":job_type,
  124. "title":title,
  125. "deptname":deptname }
  126. });
  127. },1000);
  128. }
  129. }
  130. },
  131. error: function(xhr, type, errorThrown) {}
  132. });
  133. }
  134. var Excelid ;
  135. var job_type;
  136. var title;
  137. var deptname;
  138. mui.plusReady(function() {
  139. var self = plus.webview.currentWebview();
  140. job_type = self.job_type; //类型 工作计划 | 工作总结
  141. title = self.title; //excel标题
  142. deptname = self.deptname; //excel部门
  143. Excelid = self.Excelid; //excel主键
  144. document.getElementById("title").innerHTML = title;
  145. document.getElementById("deptname").innerHTML = deptname;
  146. doDetail(Excelid,job_type);
  147. })(mui);
  148. function doDetail(Excelid,job_type) {
  149. var url = API.API_URL();
  150. var state = app.getState(); //获取登陆信息
  151. var staffId = state.user.useId;
  152. var obj = {
  153. 'serviceId': 'oa_2018A1126GetDeptJobScoreDetail',
  154. 'params': '{Excelid:"' + Excelid + '",useId:"' + staffId + '",jobtype:"' + job_type + '"}'
  155. };
  156. mui.ajax(url, {
  157. dataType: 'json', //服务器返回json格式数据
  158. type: 'post', //HTTP请求类型
  159. data: obj,
  160. timeout: 10000, //超时时间设置为10秒;
  161. headers: {
  162. 'Accept': 'application/json'
  163. }, //超时时间设置为10秒;
  164. success: function(data) {
  165. if(data.returnCode == "0") {
  166. var result = data.returnParams.Rows;
  167. var Rules = data.returnParams.Rules;
  168. if(result.length > 0) {
  169. vmA.itemAs = vmA.itemAs.concat(result);
  170. vmA.itemBs = vmA.itemBs.concat(Rules);
  171. var leader_score = result[0].job_leader_score;
  172. var manager_score = result[0].job_manager_score;
  173. $("#job_leader_score").val(leader_score);
  174. $("#job_manager_score").val(manager_score);
  175. for(var p in Rules){
  176. if( Rules[p].set_type == "job_leader_score" ){
  177. $("#firstInput").show();
  178. }
  179. if( Rules[p].set_type == "job_manager_score" ){
  180. $("#secondInput").show();
  181. }
  182. }
  183. }
  184. }
  185. },
  186. error: function(xhr, type, errorThrown) {}
  187. });
  188. }
  189. </script>
  190. </body>
  191. </html>