personal_frame0.html 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0" />
  6. <meta name="format-detection" content="telephone=no,email=no,date=no,address=no">
  7. <title></title>
  8. <link rel="stylesheet" type="text/css" href="../../css/api.css" />
  9. <link rel="stylesheet" type="text/css" href="../../css/aui.css" />
  10. <link rel="stylesheet" href="../../css/projeck.css">
  11. <style>
  12. .api_layout {
  13. width: 100%;
  14. position: relative;
  15. }
  16. .aui-list .aui-list-item {
  17. border-bottom: 1px #ddd;
  18. }
  19. .aui-toast {
  20. width: 125px;
  21. }
  22. .api-toast {
  23. background: rgba(255, 255, 255, 0);
  24. }
  25. .handwritten_signature_container {
  26. margin: 0 15px;
  27. height: 180px;
  28. }
  29. .signature_container {
  30. display: block;
  31. width: 100%;
  32. /*height: 150px;*/
  33. }
  34. </style>
  35. </head>
  36. <body>
  37. <div class="api_layout">
  38. <ul class="aui-list api_lists">
  39. <li class="aui-list-item" style="height:70px;">
  40. <div class="aui-list-item-inner" style="height:70px;">
  41. <div class="aui-list-item-title">个人照片</div>
  42. <span class="header_img" id="head_img" onclick="actionSheetFun()"></span>
  43. </div>
  44. </li>
  45. <li class="aui-list-item">
  46. <div class="aui-list-item-inner" style="padding-right:35px">
  47. <div class="aui-list-item-title">绑定手机号</div>
  48. <span class="api_bind_phone">无</span>
  49. <i class="api_bind_img" onclick="openBind()"></i>
  50. </div>
  51. </li>
  52. <li class="aui-list-item">
  53. <div class="aui-list-item-inner">
  54. <div class="aui-list-item-title">姓名</div>
  55. <span class="api_name"></span>
  56. </div>
  57. </li>
  58. <li class="aui-list-item">
  59. <div class="aui-list-item-inner">
  60. <div class="aui-list-item-title">员工编码</div>
  61. <span class="api_num"></span>
  62. </div>
  63. </li>
  64. <li class="aui-list-item">
  65. <div class="aui-list-item-inner">
  66. <div class="aui-list-item-title">部门</div>
  67. <span class="api_del"></span>
  68. </div>
  69. </li>
  70. <li class="aui-list-item">
  71. <div class="aui-list-item-inner">
  72. <div class="aui-list-item-title">岗位分类</div>
  73. <span class="api_type"></span>
  74. </div>
  75. </li>
  76. <li class="aui-list-item">
  77. <div class="aui-list-item-inner">
  78. <div class="aui-list-item-title">岗位</div>
  79. <span class="api_post"></span>
  80. </div>
  81. </li>
  82. <li class="aui-list-item">
  83. <div class="aui-list-item-inner">
  84. <div class="aui-list-item-title">职级(职务码)</div>
  85. <span class="api_rank"></span>
  86. </div>
  87. </li>
  88. <li class="aui-list-item">
  89. <div class="aui-list-item-inner">
  90. <div class="aui-list-item-title">性别</div>
  91. <span class="api_sex"></span>
  92. </div>
  93. </li>
  94. <li class="aui-list-item">
  95. <div class="aui-list-item-inner">
  96. <div class="aui-list-item-title">员工组</div>
  97. <span class="api_contract"></span>
  98. </div>
  99. </li>
  100. <li class="aui-list-item">
  101. <div class="aui-list-item-inner">
  102. <div class="aui-list-item-title">员工子组</div>
  103. <span class="api_staff"></span>
  104. </div>
  105. </li>
  106. <li class="aui-list-item">
  107. <div class="aui-list-item-inner">
  108. <div class="aui-list-item-title">籍贯</div>
  109. <span class="api_city"></span>
  110. </div>
  111. </li>
  112. <li class="aui-list-item">
  113. <div class="aui-list-item-inner">
  114. <div class="aui-list-item-title">宗教信仰</div>
  115. <span class="api_religion"></span>
  116. </div>
  117. </li>
  118. <li class="aui-list-item">
  119. <div class="aui-list-item-inner">
  120. <div class="aui-list-item-title">户口性质</div>
  121. <span class="api_residence"></span>
  122. </div>
  123. </li>
  124. <li class="aui-list-item">
  125. <div class="aui-list-item-inner">
  126. <div class="aui-list-item-title">民族</div>
  127. <span class="api_nation"></span>
  128. </div>
  129. </li>
  130. <li class="aui-list-item">
  131. <div class="aui-list-item-inner">
  132. <div class="aui-list-item-title">出生日期</div>
  133. <span class="api_rirth"></span>
  134. </div>
  135. </li>
  136. <li class="aui-list-item">
  137. <div class="aui-list-item-inner">
  138. <div class="aui-list-item-title">身份证号</div>
  139. <span class="api_id"></span>
  140. </div>
  141. </li>
  142. <li class="aui-list-item">
  143. <div class="aui-list-item-inner">
  144. <div class="aui-list-item-title">参加工作时间</div>
  145. <span class="api_job_time"></span>
  146. </div>
  147. </li>
  148. <li class="aui-list-item">
  149. <div class="aui-list-item-inner">
  150. <div class="aui-list-item-title">进入神华系统时间</div>
  151. <span class="api_time1"></span>
  152. </div>
  153. </li>
  154. <li class="aui-list-item">
  155. <div class="aui-list-item-inner">
  156. <div class="aui-list-item-title">进入子分公司时间</div>
  157. <span class="api_time2"></span>
  158. </div>
  159. </li>
  160. <li class="aui-list-item">
  161. <div class="aui-list-item-inner">
  162. <div class="aui-list-item-title">进入本单位时间</div>
  163. <span class="api_time3"></span>
  164. </div>
  165. </li>
  166. <li class="aui-list-item">
  167. <div class="aui-list-item-inner">
  168. <div class="aui-list-item-title">政治面貌</div>
  169. <span class="api_face"></span>
  170. </div>
  171. </li>
  172. <li class="aui-list-item">
  173. <div class="aui-list-item-inner">
  174. <div class="aui-list-item-title">参加党派时间</div>
  175. <span class="api_time4"></span>
  176. </div>
  177. </li>
  178. <li class="aui-list-item handwritten_signature" onclick="handwrittenSignature()">
  179. <div class="aui-list-item-inner">
  180. <div>手写签名</div>
  181. </div>
  182. </li>
  183. <!-- <li class="handwritten_signature_container">
  184. <div class="aui-list-item-inner">
  185. <img class="signature_container" src="" alt="">
  186. </div>
  187. </li> -->
  188. </ul>
  189. <div class="handwritten_signature_container" onclick="handwrittenSignature()">
  190. <img class="signature_container" src="" alt="">
  191. </div>
  192. <div class="api_bottom">
  193. —— 到底了 ——
  194. </div>
  195. </div>
  196. </body>
  197. </html>
  198. <script type="text/javascript" src="../../script/api.js"></script>
  199. <!-- <script src="../../script/aui-toast.js" charset="utf-8"></script> -->
  200. <!-- <script src="../../script/fastclick.min.js"></script> -->
  201. <script src="../../script/config.js" charset="utf-8"></script>
  202. <script type="text/javascript">
  203. apiready = function() {
  204. $api.fixStatusBar($api.dom('header'));
  205. // 更新个人信息
  206. api.addEventListener({
  207. name: 'updateUserInfo'
  208. }, function(ret, err) {
  209. personalCenterInfo()
  210. });
  211. personalCenterInfo()
  212. };
  213. function openBind() {
  214. $event.openTabLayout('bindPhone', '../forgetBind/bindPhone', '绑定手机号', '');
  215. }
  216. // 个人头像
  217. var headImg;
  218. function actionSheetFun() {
  219. api.actionSheet({
  220. title: '选择',
  221. cancelTitle: '取消',
  222. buttons: ['相机', '相册']
  223. }, function(ret, err) {
  224. if (ret.buttonIndex != 3) {
  225. var type = 'camera';
  226. if (ret.buttonIndex == 1) {
  227. type = 'camera';
  228. } else {
  229. type = 'album';
  230. }
  231. api.getPicture({
  232. sourceType: type,
  233. }, function(ret, err) {
  234. if (ret) {
  235. photoTailoring(ret.data);
  236. headImg = ret.data;
  237. }
  238. });
  239. }
  240. });
  241. }
  242. function uploadUrl(imgUrl) {
  243. var upload_avater = $api.byId('head_img');
  244. upload_avater.style.backgroundImage = 'url(' + imgUrl + ')';
  245. }
  246. function uploadHead(imgUrl) {
  247. $http.fileUploadRequest(urlphp + 'api/user/avatar/upload', 'post', {
  248. avatar: imgUrl
  249. })
  250. .then(ret => {
  251. if (ret.code === 0) {
  252. api.toast({
  253. msg: '上传成功',
  254. duration: 2000,
  255. location: 'top'
  256. });
  257. } else {
  258. api.toast({
  259. msg: '上传失败',
  260. duration: 2000,
  261. location: 'top'
  262. });
  263. }
  264. })
  265. .catch(err => {
  266. api.toast({
  267. msg: '网络错误',
  268. duration: 2000,
  269. location: 'top'
  270. });
  271. })
  272. }
  273. // 照片裁剪
  274. function photoTailoring(imgPath) {
  275. var systemType = api.systemType;
  276. if (systemType == 'ios') {
  277. api.openFrame({
  278. name: 'tailoring01',
  279. url: 'tailoring01.html',
  280. rect: {
  281. x: 0,
  282. y: 0,
  283. w: api.winWidth,
  284. h: api.winHeight
  285. },
  286. pageParam: {
  287. tailoring: imgPath
  288. },
  289. bounces: false,
  290. bgColor: 'rgba(0,0,0,0)',
  291. vScrollBarEnabled: false,
  292. hScrollBarEnabled: false,
  293. });
  294. } else if (systemType == 'android') {
  295. var imageCrop = api.require('imageCrop');
  296. imageCrop.clipPhoto({
  297. imgPath: imgPath,
  298. height: api.winHeight,
  299. width: api.winWidth
  300. }, function(ret, err) {
  301. if (ret) {
  302. uploadUrl(ret.imgPath);
  303. uploadHead(ret.imgPath);
  304. }
  305. });
  306. }
  307. }
  308. // 手写签名
  309. function handwrittenSignature() {
  310. $event.openTabLayout('handwrittenSignature', 'handwrittenSignature', '手写签名', '')
  311. }
  312. // 个人信息
  313. function personalCenterInfo() {
  314. $http.requestDataLoging(UrlRouter.userInfoApi, 'post', '')
  315. .then(ret => {
  316. if (ret.code === 0) {
  317. var ret = ret.data;
  318. var phone = $api.dom(".api_bind_phone"),
  319. name = $api.dom(".api_name"),
  320. api_num = $api.dom(".api_num"),
  321. api_del = $api.dom(".api_del"),
  322. api_type = $api.dom(".api_type"),
  323. api_post = $api.dom(".api_post"),
  324. api_rank = $api.dom(".api_rank"),
  325. api_sex = $api.dom(".api_sex"),
  326. api_contract = $api.dom(".api_contract"),
  327. api_staff = $api.dom(".api_staff"),
  328. api_city = $api.dom(".api_city"),
  329. api_religion = $api.dom(".api_religion"),
  330. api_residence = $api.dom(".api_residence"),
  331. api_nation = $api.dom(".api_nation"),
  332. api_rirth = $api.dom(".api_rirth"),
  333. api_id = $api.dom(".api_id"),
  334. api_job_time = $api.dom(".api_job_time"),
  335. api_time1 = $api.dom(".api_time1"),
  336. api_time2 = $api.dom(".api_time2"),
  337. api_time3 = $api.dom(".api_time3"),
  338. api_face = $api.dom(".api_face"),
  339. api_time4 = $api.dom(".api_time4"),
  340. image = 'http://jiewei-icon.oss-cn-beijing.aliyuncs.com/icon/default-avatar.png',
  341. head_img = $api.byId('head_img'),
  342. signatureImg = $api.dom('.signature_container');
  343. if(ret.sign == null) {
  344. $api.css($api.dom('.handwritten_signature_container'), 'height: 0');
  345. } else {
  346. $api.css($api.dom('.handwritten_signature_container'), 'height: 180px');
  347. }
  348. ret.sign == null ? signatureImg.src = '' : signatureImg.src = ret.sign;
  349. ret.avatar == null ? head_img.style.backgroundImage = 'url(' + image + ')' : head_img.style.backgroundImage = 'url(' + ret.avatar + ')';
  350. $api.html(phone, ret.mobile);
  351. $api.html(name, ret.name);
  352. $api.html(api_num, ret.staff_num);
  353. $api.html(api_del, ret.section_fullname);
  354. $api.html(api_type, ret.job_classify);
  355. $api.html(api_post, ret.job);
  356. $api.html(api_rank, ret.duty_num);
  357. $api.html(api_sex, ret.sex);
  358. $api.html(api_contract, ret.group);
  359. $api.html(api_staff, ret.group_sub);
  360. $api.html(api_city, ret.native);
  361. $api.html(api_religion, ret.faith);
  362. $api.html(api_residence, ret.registered);
  363. $api.html(api_nation, ret.nation);
  364. $api.html(api_rirth, ret.birthday);
  365. $api.html(api_id, ret.identity_card);
  366. $api.html(api_job_time, ret.working_date);
  367. $api.html(api_time1, ret.system_date);
  368. $api.html(api_time2, ret.system_sub_date);
  369. $api.html(api_time3, ret.section_date);
  370. $api.html(api_face, ret.politics);
  371. // $api.html(api_id, ret.staff_num);
  372. $api.html(api_time4, ret.politics_date);
  373. }
  374. })
  375. .catch(err => {
  376. api.toast({
  377. msg: '网络错误',
  378. duration: 2000,
  379. location: 'bottom'
  380. });
  381. })
  382. }
  383. </script>