couple.js 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. Namespace.register("Couple");//注册命名空间
  2. Couple.Bind=function () {
  3. Couple.userName.innerText = U.UF.Cookie.get("usestudiosso","username")[0];//登陆者名称
  4. U.A.Request(Couple.Cd,[Couple.Db, Couple.SqlName, "GetProductByUserId",Couple.UserId],function (r){//获取项目列表
  5. if(r.value){
  6. for(var i=0;i<r.value.length;i++){
  7. var li=$$("li", {
  8. "className": "asideItem","productId":r.value[i].ProductId
  9. }, Couple.ul);
  10. var span=$$("span", {
  11. "className": "asideItemText","innerText":r.value[i].ProductName
  12. }, li);
  13. Couple.ul.onclick = function(ev) {//点击项目列表
  14. ev = ev || event;
  15. var target = ev.target || ev.srcElement;
  16. var icon=$$("i", {"className": "active",});
  17. for(var i=0;i<Couple.ul.children.length;i++){
  18. if(Couple.ul.children[i].children.length>=2){
  19. Couple.ul.children[i].setAttribute("class","asideItem");
  20. Couple.ul.children[i].removeChild(Couple.ul.children[i].children[1])
  21. }
  22. }
  23. Couple.logoTitle.innerHTML = "反馈后台信息管理"+":"+target.innerText;
  24. if( target.tagName=="LI"){
  25. target.appendChild(icon);
  26. target.setAttribute("class","asideItembg asideItem");
  27. }else{
  28. target.parentNode.appendChild(icon);
  29. target.parentNode.setAttribute("class","asideItembg asideItem");
  30. }
  31. var productId = target.parentNode.productId;
  32. if(Couple.informationtInfo.firstChild !== null){
  33. Couple.informationtInfo.removeChild(Couple.informationtInfo.firstChild);
  34. }
  35. if(Couple.informationtTime.firstChild !==null){
  36. Couple.informationtTime.removeChild(Couple.informationtTime.firstChild);
  37. }
  38. if(Couple.informationtOperation.firstChild !== null){
  39. Couple.informationtOperation.removeChild(Couple.informationtOperation.firstChild)
  40. }
  41. if(Couple.informationtPermissions.firstChild !== null){
  42. Couple.informationtPermissions.style.display = "none";
  43. }
  44. if(Couple.AddUserMembers.firstChild !== null){
  45. Couple.AddUserMembers.removeChild(Couple.AddUserMembers.firstChild)
  46. Couple.informationtAddUser.style.display = "none";
  47. }
  48. if(Couple.informationtcreateItem.firstChild !== null){
  49. Couple.informationtcreateItem.removeChild(Couple.informationtcreateItem.firstChild)
  50. Couple.informationtcreateItem.style.display = "none";
  51. }
  52. Couple.itemOperation(productId);
  53. Couple.createInfo(productId);
  54. Couple.OnclickTime(productId,'30days');
  55. };
  56. }
  57. }
  58. })
  59. Couple.Permissions();
  60. }
  61. Couple.Permissions=function(){
  62. U.A.Request(Couple.Cd,[Couple.Db,Couple.SqlName,"GetUser"],function (r){//查询用户
  63. if(r.value){
  64. var tbody = $$("table", {//创建表格
  65. "className": "tbMain",
  66. }, Couple.permissionsMembers);
  67. for(var i=0;i<r.value.length;i++){
  68. var trow = Couple.getMembersRow(r.value[i],i+1);
  69. tbody.appendChild(trow);
  70. }
  71. }
  72. })
  73. U.A.Request(Couple.Cd,[Couple.Db,Couple.SqlName,"GetJurisdictionName",Couple.UserId],function (r){//传入用户Id获取权限名称
  74. if(r.value){
  75. if(r.value[0].JurisdictionName === "administrator"){
  76. Couple.informationtSet.style.display = "inline-block";
  77. Couple.informationtSet.onclick=function(){
  78. Couple.informationtPermissions.style.display = "block"
  79. }
  80. }
  81. }
  82. })
  83. }
  84. Couple.OnclickcreateItem=function(){//创建新项目
  85. U.A.Request(Couple.Cd,[Couple.Db,Couple.SqlName,"InsertProductList",$(".createItemName")[0].value],function (r){//查询用户
  86. if(r.value){
  87. U.A.Request(Couple.Cd,[Couple.Db,Couple.SqlName,"InsertUserProduct",Couple.UserId,r.value[0].ProductId],function (r){//查询用户
  88. location.reload()
  89. })
  90. }
  91. })
  92. }
  93. Couple.OnclickaddUser=function(r,productId){//给项目添加可查看的成员
  94. if(r=="admin"){
  95. Couple.informationtAddUser.style.display = "block";
  96. if(Couple.AddUserMembers.firstChild == null){}else{
  97. Couple.AddUserMembers.removeChild(Couple.AddUserMembers.firstChild);
  98. }
  99. U.A.Request(Couple.Cd,[Couple.Db, Couple.SqlName, "GetUserIdByProductId",productId],function (r){//获取没有权限用户的列表
  100. if(r.value){
  101. Couple.NoPowerMembers.innerText = r.value.length;
  102. var tbody = $$("table", {//创建表格
  103. "className": "tbMain",
  104. }, Couple.AddUserMembers);
  105. for(var i=0;i<r.value.length;i++){
  106. var trow = Couple.getUserRow(r.value[i],productId);
  107. tbody.appendChild(trow);
  108. }
  109. }
  110. })
  111. }else{
  112. alert("你无权限!");
  113. }
  114. }
  115. Couple.itemOperation=function(productId){//管理员功能
  116. U.A.Request(Couple.Cd,[Couple.Db,Couple.SqlName,"GetJurisdictionName",Couple.UserId],function (r){
  117. if(r.value[0].JurisdictionName=="admin"){
  118. Couple.informationtOperation.style.display = "block";
  119. var actionItem=$$("div", {
  120. "className": "actionItem"
  121. }, Couple.informationtOperation);
  122. var delItem=$$("button", {
  123. "className": "delItem","innerText":"删除项目","onclick":"Couple.OnclickdelITem('"+productId+"')"
  124. }, actionItem);
  125. var addUser=$$("button", {
  126. "className": "addUser","innerText":"添加用户","onclick":"Couple.OnclickaddUser('"+r.value[0].JurisdictionName+"','"+productId+"')"
  127. }, actionItem);
  128. var addItem=$$("button", {
  129. "className": "addUser","innerText":"创建项目","onclick":"Couple.AddItem()"
  130. }, actionItem);
  131. }
  132. })
  133. }
  134. Couple.OnclickdelITem=function(productId){//删除该项目
  135. if(confirm("确定啥删除该项目吗")){
  136. U.A.Request(Couple.Cd,[Couple.Db,Couple.SqlName,"DeleteProductList",productId],function (r){
  137. if(r.value){
  138. U.A.Request(Couple.Cd,[Couple.Db,Couple.SqlName,"DeleteProduct",productId],function (r){})
  139. location.reload();
  140. }
  141. })
  142. }
  143. }
  144. Couple.OnclickTime=function(id,time){//点击时间对应获取信息
  145. U.A.Request(Couple.Cd,[Couple.Db,Couple.SqlName,"GetFeedback",id,time],function (r){//获取产品的反馈信息
  146. if(r.value){
  147. if(Couple.informationtInfo.firstChild !== null){
  148. Couple.informationtInfo.removeChild(Couple.informationtInfo.firstChild);
  149. }
  150. var tbody = $$("table", {//创建表格
  151. "className": "tbMain",
  152. }, Couple.informationtInfo);
  153. var tr = $$("tr", {}, tbody);
  154. var td = $$("td", {
  155. "className":"infoTitle","innerText":"排序"
  156. }, tr);
  157. var td = $$("td", {
  158. "className":"infoTitle trTitle","innerText":"标题"
  159. }, tr);
  160. var td = $$("td", {
  161. "className":"infoTitle trContent","innerText":"内容",
  162. }, tr);
  163. var td = $$("td", {
  164. "className":"infoTitle trCoupleTime","innerText":"反馈时间"
  165. }, tr);
  166. if(r.value.length === 0){
  167. var coupleData = $$("div", {
  168. "className":"coupleData","innerText":"暂无数据"
  169. }, tbody);
  170. }
  171. var td = $$("td", {
  172. "className":"infoTitle infoHandle","innerText":"操作"
  173. }, tr);
  174. for(var i=0;i<r.value.length;i++){
  175. var trow = Couple.getDataRow(r.value[i],i+1);
  176. tbody.appendChild(trow);
  177. }
  178. }
  179. })
  180. }
  181. Couple.AddItem=function(){//创建添加项目模块
  182. if(Couple.informationtcreateItem.firstChild!==null){
  183. Couple.informationtcreateItem.removeChild(Couple.informationtcreateItem.firstChild);
  184. }
  185. var form = $$("div", {}, Couple.informationtcreateItem);
  186. var input = $$("input", {
  187. "className":"createItemName","placeholder":"请输入项目名称","type":"text"
  188. }, form);
  189. var createItem = $$("button", {
  190. "className":"createItem","innerHTML":"创建","onclick":"Couple.OnclickcreateItem()"
  191. }, form);
  192. Couple.informationtcreateItem.style.display = "block";
  193. }
  194. Couple.createInfo=function(productId){//创建项目日期分类
  195. Date.prototype.Format = function (fmt) {//时间处理对Date的扩展
  196. var o = {
  197. "M+": this.getMonth() + 1, // 月份
  198. "d+": this.getDate(), // 日
  199. "h+": this.getHours(), // 小时
  200. "m+": this.getMinutes(), // 分
  201. "s+": this.getSeconds(), // 秒
  202. "q+": Math.floor((this.getMonth() + 3) / 3), // 季度
  203. "S": this.getMilliseconds() // 毫秒
  204. };
  205. if (/(y+)/.test(fmt))
  206. fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
  207. for (var k in o)
  208. if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
  209. return fmt;
  210. }
  211. var time = (new Date()).Format("yyyy-MM-dd hh:mm:ss");//获取时间
  212. var timeSequence=$$("div", {
  213. "className":"timeSequence"
  214. },Couple.informationtTime);
  215. var oneDay=$$("button", {
  216. "className": "timeItem","innerText":"今天","onclick":"Couple.OnclickTime('"+productId+"','today')"
  217. },timeSequence);
  218. var threeDay=$$("button", {
  219. "className": "timeItem","innerText":"最近三天","onclick":"Couple.OnclickTime('"+productId+"','3days')"
  220. },timeSequence);
  221. var oneWeek=$$("button", {
  222. "className": "timeItem","innerText":"最近一周","onclick":"Couple.OnclickTime('"+productId+"','7days')"
  223. },timeSequence)
  224. var oneMonth=$$("button", {
  225. "className": "timeItem","innerText":"最近一月","onclick":"Couple.OnclickTime('"+productId+"','30days')"
  226. },timeSequence)
  227. }
  228. Couple.getUserRow = function(h,productId){//创建表格下用户数据库循环数据
  229. var row = document.createElement('tr');
  230. var trUserId = document.createElement('td');
  231. trUserId.setAttribute('class','trUserId');
  232. trUserId.innerText = h.UserId;
  233. row.appendChild(trUserId);
  234. var trUserName = document.createElement('td');
  235. trUserName.setAttribute('class','trUserName');
  236. trUserName.innerText = h.UserName;
  237. row.appendChild(trUserName);
  238. var trJurisdictionName = document.createElement('td');
  239. trJurisdictionName.setAttribute('class','trJurisdictionName');
  240. trJurisdictionName.innerText = h.JurisdictionName;
  241. row.appendChild(trJurisdictionName);
  242. var setCell = document.createElement('td');
  243. setCell.setAttribute('class','trAdd');
  244. row.appendChild(setCell);
  245. var btnAdd = document.createElement('input');
  246. btnAdd.setAttribute('type','button');
  247. btnAdd.setAttribute('value','添加权限');
  248. btnAdd.setAttribute('class','btnAdd');
  249. btnAdd.onclick=function(){ //设置操作
  250. if(confirm("确定添加权限吗")){
  251. this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);
  252. U.A.Request(Couple.Cd,[Couple.Db, Couple.SqlName, "InsertUserProduct",h.UserId,productId],function (r){})//插入用户权限
  253. Couple.NoPowerMembers.innerHTML=Couple.NoPowerMembers.innerHTML-1;
  254. }
  255. }
  256. setCell.appendChild(btnAdd);
  257. return row;
  258. }
  259. Couple.getDataRow = function(h,i){//创建表格下的反馈数据库循环数据
  260. var row = document.createElement('tr');
  261. var sortCell = document.createElement('td');
  262. sortCell.innerText = i;
  263. row.appendChild(sortCell);
  264. var trTitle = document.createElement('td');
  265. trTitle.setAttribute('class','trTitle');
  266. trTitle.innerText = h.FeedbackName;
  267. row.appendChild(trTitle);
  268. var trContent = document.createElement('td');
  269. trContent.setAttribute('class','trContent');
  270. trContent.innerText = h.FeedbackContent;
  271. row.appendChild(trContent);
  272. var trCoupleTime = document.createElement('td');
  273. trCoupleTime.setAttribute('class','trCoupleTime');
  274. trCoupleTime.innerText = U.UF.D.getYearMonthDay(h.FeedbackTime)
  275. row.appendChild(trCoupleTime);
  276. //每行末尾添加删除按钮
  277. var delCell = document.createElement('td');
  278. delCell.setAttribute('class','trDel');
  279. row.appendChild(delCell);
  280. var btnDel = document.createElement('input');
  281. btnDel.setAttribute('type','button');
  282. btnDel.setAttribute('value','删除');
  283. btnDel.setAttribute('class','delectInfo');
  284. btnDel.onclick=function(){ //删除操作
  285. if(confirm("确定删除这一行嘛?")){
  286. this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);
  287. }
  288. U.A.Request(Couple.Cd,[Couple.Db, Couple.SqlName, "DeleteFeedback",h.FeedbackId],function (r){})
  289. }
  290. delCell.appendChild(btnDel);
  291. return row;
  292. }
  293. Couple.getMembersRow = function(h,i){//创建表格下的用户数据库循环数据
  294. var row = document.createElement('tr');
  295. var trUserId = document.createElement('td');
  296. trUserId.setAttribute('class','trUserId');
  297. trUserId.innerText = h.UserId;
  298. row.appendChild(trUserId);
  299. var trUserName = document.createElement('td');
  300. trUserName.setAttribute('class','trUserName');
  301. trUserName.innerText = h.UserName;
  302. row.appendChild(trUserName);
  303. var trJurisdictionName = document.createElement('td');
  304. trJurisdictionName.setAttribute('class','trJurisdictionName');
  305. trJurisdictionName.innerText = h.JurisdictionName;
  306. row.appendChild(trJurisdictionName);
  307. var setCell = document.createElement('td');
  308. setCell.setAttribute('class','trSet');
  309. row.appendChild(setCell);
  310. var btnSet = document.createElement('input');
  311. btnSet.setAttribute('type','button');
  312. btnSet.setAttribute('value','设为管理员');
  313. btnSet.setAttribute('class','setInfo');
  314. btnSet.onclick=function(){ //设置操作
  315. if(confirm("确定修改管理员信息吗")){
  316. if(this.parentNode.parentNode.children[2].innerText != "admin" && this.parentNode.parentNode.children[2].innerText!=="administrator"){
  317. this.parentNode.parentNode.children[2].innerHTML = "admin"
  318. U.A.Request(Couple.Cd,[Couple.Db, Couple.SqlName, "UpdateJurisdictionName",this.parentNode.parentNode.children[0].innerText,"admin"],function (r){//修改权限
  319. console.log(r)
  320. })
  321. }else{
  322. alert("你已经是管理员!")
  323. }
  324. }
  325. }
  326. setCell.appendChild(btnSet);
  327. //每行末尾添加删除按钮
  328. var delCell = document.createElement('td');
  329. delCell.setAttribute('class','trDel');
  330. row.appendChild(delCell);
  331. var btnDel = document.createElement('input');
  332. btnDel.setAttribute('type','button');
  333. btnDel.setAttribute('value','删除');
  334. btnDel.setAttribute('class','delectInfo');
  335. btnDel.onclick=function(){ //删除操作
  336. if(confirm("确定删除这一行嘛?")){
  337. this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);
  338. U.A.Request(Couple.Cd,[Couple.Db, Couple.SqlName, "DeleteFeedback",h.FeedbackId],function (r){})
  339. }
  340. }
  341. delCell.appendChild(btnDel);
  342. return row;
  343. }
  344. Couple.logout=function(){//退出
  345. U.UF.CD.loadAjaxCrossDomain(function(){
  346. U.A.Request(US.AUTH, ["UserOffline", Couple.UserId],function(r){
  347. U.UF.Cookie.del("usestudiosso");
  348. window.location.href="http://feedback.1473.cn/";
  349. });
  350. });
  351. }
  352. Couple.Init=function () {
  353. Couple.informationtSet = $(".informationtSet")[0]//获取管理员设置
  354. Couple.informationtPermissions = $(".informationtPermissions")[0];//获取成员管理
  355. Couple.permissionsMembers = $(".permissionsMembers")[0];//获取用户成员信息
  356. // Couple.AddItem = $(".AddItem")[0];//获取创建项目
  357. Couple.informationtcreateItem = $(".informationtcreateItem")[0]//获取创建项目
  358. Couple.informationtOperation = $(".informationtOperation")[0]
  359. Couple.userName=$(".userName")[0]//获取用户名
  360. Couple.ul = $(".asideMenu ul")[0];//获取项目列表ul
  361. Couple.timeSequence = $(".timeSequence")[0]
  362. Couple.logoTitle = $(".logoTitle")[0]//反馈标题位置
  363. Couple.informationtInfo = $(".informationtInfo")[0];//获取反馈信息
  364. Couple.informationtTime = $(".informationtTime")[0];//获取反馈时间
  365. Couple.informationtAddUser = $(".informationtAddUser")[0];
  366. Couple.AddUserMembers = $(".AddUserMembers")[0];
  367. Couple.NoPowerMembers = $(".NoPowerMembers")[0];//该项目没有权限的人数
  368. Couple.Cd = "http://cd.1473.cn/net";
  369. Couple.Db = "db.1473.cn";
  370. Couple.SqlName = "UseStudio_FeedBack";
  371. Couple.UserId = U.UF.Cookie.get("usestudiosso","userid")[0];
  372. Couple.Bind();
  373. }();