oss.js 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. $(function () {
  2. $("#jqGrid").Grid({
  3. url: '../sys/oss/list',
  4. rownumWidth:60,
  5. colModel: [
  6. {label: 'id', name: 'id', key: true, hidden: true},
  7. {label: '图片地址', name: 'url', width: 160},
  8. {label: '创建人', name: 'username', width: 120},
  9. {
  10. label: '创建时间', name: 'createDate', width: 40, formatter: function (value) {
  11. return transDate(value);
  12. }
  13. }
  14. ]
  15. });
  16. new AjaxUpload('#upload', {
  17. action: '../sys/oss/upload',
  18. name: 'file',
  19. autoSubmit: true,
  20. responseType: "json",
  21. onSubmit: function (file, extension) {
  22. if (vm.config.type == null) {
  23. alert("云存储配置未配置");
  24. return false;
  25. }
  26. if (!(extension && /^(jpg|jpeg|png|gif)$/.test(extension.toLowerCase()))) {
  27. alert('只支持jpg、png、gif格式的图片!');
  28. return false;
  29. }
  30. },
  31. onComplete: function (file, r) {
  32. if (r.code == 0) {
  33. alert(r.url);
  34. vm.reload();
  35. } else {
  36. alert(r.msg);
  37. }
  38. }
  39. });
  40. });
  41. var vm = new Vue({
  42. el: '#rrapp',
  43. data: {
  44. showList: true,
  45. title: null,
  46. config: {},
  47. aliRuleValidate: {
  48. aliyunDomain: [
  49. {required: true, message: '阿里云绑定的域名不能为空', trigger: 'blur'}
  50. ],
  51. aliyunAccessKeyId: [
  52. {required: true, message: '阿里云AccessKeyId不能为空', trigger: 'blur'}
  53. ],
  54. aliyunAccessKeySecret: [
  55. {required: true, message: '阿里云AccessKeySecret不能为空', trigger: 'blur'}
  56. ],
  57. aliyunBucketName: [
  58. {required: true, message: '阿里云BucketName不能为空', trigger: 'blur'}
  59. ]
  60. },
  61. qcloudRuleValidate: {
  62. qcloudDomain: [
  63. {required: true, message: '腾讯云绑定的域名不能为空', trigger: 'blur'}
  64. ],
  65. qcloudAppId: [
  66. {required: true, message: '腾讯云AppId不能为空', trigger: 'blur'}
  67. ],
  68. qcloudSecretId: [
  69. {required: true, message: '腾讯云SecretId不能为空', trigger: 'blur'}
  70. ],
  71. qcloudSecretKey: [
  72. {required: true, message: '腾讯云SecretKey不能为空', trigger: 'blur'}
  73. ],
  74. qcloudBucketName: [
  75. {required: true, message: '腾讯云BucketName不能为空', trigger: 'blur'}
  76. ],
  77. qcloudRegion: [
  78. {required: true, message: 'Bucket所属地区不能为空', trigger: 'blur'}
  79. ]
  80. },
  81. diskRuleValidate: {
  82. diskPath: [
  83. {required: true, message: '本地存储路径不能为空', trigger: 'blur'}
  84. ],
  85. proxyServer: [
  86. {required: true, message: '本地存储代理服务器不能为空', trigger: 'blur'}
  87. ]
  88. }
  89. },
  90. created: function () {
  91. this.getConfig();
  92. },
  93. methods: {
  94. query: function () {
  95. vm.reload();
  96. },
  97. getConfig: function () {
  98. Ajax.request({
  99. url: "../sys/oss/config",
  100. async: true,
  101. successCallback: function (r) {
  102. vm.config = r.config;
  103. }
  104. });
  105. },
  106. addConfig: function () {
  107. vm.showList = false;
  108. vm.title = "云存储配置";
  109. },
  110. saveOrUpdate: function () {
  111. var url = "../sys/oss/saveConfig";
  112. Ajax.request({
  113. url: url,
  114. params: JSON.stringify(vm.config),
  115. contentType: "application/json",
  116. type: 'POST',
  117. successCallback: function () {
  118. alert('操作成功', function (index) {
  119. vm.reload();
  120. });
  121. }
  122. });
  123. },
  124. del: function () {
  125. var ossIds = getSelectedRows("#jqGrid");
  126. if (ossIds == null) {
  127. return;
  128. }
  129. confirm('确定要删除选中的记录?', function () {
  130. Ajax.request({
  131. url: "../sys/oss/delete",
  132. params: JSON.stringify(ossIds),
  133. contentType: "application/json",
  134. type: 'POST',
  135. successCallback: function () {
  136. alert('操作成功', function (index) {
  137. vm.reload();
  138. });
  139. }
  140. });
  141. });
  142. },
  143. lookImg: function () {
  144. var grid = $("#jqGrid");
  145. var id = grid.jqGrid('getGridParam', 'selrow');//根据点击行获得点击行的id(id为jsonReader: {id: "id" },)
  146. if (!id) {
  147. alert("请选择一条记录");
  148. return;
  149. }
  150. var ids = grid.jqGrid('getGridParam', 'selarrrow');
  151. var data = [];
  152. for (var i = 0; i < ids.length; i++) {
  153. id = ids[i];
  154. var rowData = grid.jqGrid("getRowData", id);
  155. var url = rowData.url;
  156. data.push({"src": url});
  157. }
  158. eyeImages(data);
  159. },
  160. reload: function () {
  161. vm.showList = true;
  162. var page = $("#jqGrid").jqGrid('getGridParam', 'page');
  163. $("#jqGrid").jqGrid('setGridParam', {
  164. page: page
  165. }).trigger("reloadGrid");
  166. },
  167. handleSubmit: function (name) {
  168. handleSubmitValidate(this, name, function () {
  169. vm.saveOrUpdate()
  170. });
  171. },
  172. handleReset: function (name) {
  173. handleResetForm(this, name);
  174. }
  175. }
  176. });