浏览代码

站点列表调整

mxs 6 月之前
父节点
当前提交
d0ccb23f58

+ 22 - 1
src/front/site.go

@@ -24,7 +24,8 @@ type Site struct {
 	deleteSite    xweb.Mapper `xweb:"/center/site/delete"`        //删除站点
 	getLuas       xweb.Mapper `xweb:"/center/site/getluas/(.*)"`  //
 	getLuasBySite xweb.Mapper `xweb:"/center/site/getluasbysite"` //
-	updateSite    xweb.Mapper `xweb:"/center/site/updatesite"`    //更新是否为重点网站
+	updateSite    xweb.Mapper `xweb:"/center/site/updatesite"`    //更新站点信息
+	updateLua     xweb.Mapper `xweb:"/center/site/updatelua"`     //更新爬虫信息
 }
 
 func (s *Site) SiteList() {
@@ -134,6 +135,7 @@ func (s *Site) SaveSite() {
 	isregistered, _ := s.GetInteger("isregistered")     //是否已注册
 	account := s.GetString("account")                   //账号
 	password := s.GetString("password")                 //密码
+	phonenum := s.GetString("phonenum")                 //密码
 	area := s.GetString("area")                         //省份
 	//qy_area := s.GetString("qy_area")                   //辅助省份
 	city := s.GetString("city")             //城市
@@ -174,6 +176,7 @@ func (s *Site) SaveSite() {
 		"isregistered":   isregistered,
 		"account":        account,
 		"password":       password,
+		"phonenum":       phonenum,
 		"f_area":         f_area,
 		"f_city":         f_city,
 		"f_district":     f_district,
@@ -347,6 +350,24 @@ func (s *Site) UpdateSite() {
 	s.Write("n")
 }
 
+func (s *Site) UpdateLua() {
+	defer qu.Catch()
+	code := s.GetString("code")
+	channel := s.GetString("channel")
+	href := s.GetString("href")
+	set := map[string]interface{}{
+		"href":            href,
+		"param_common.11": href,
+		"channel":         channel,
+		"param_common.2":  channel,
+	}
+	if util.MgoEB.Update("luaconfig", map[string]interface{}{"code": code}, map[string]interface{}{"$set": set}, false, false) {
+		s.Write("y")
+		return
+	}
+	s.Write("n")
+}
+
 // UpdateSiteCodeBaseInfo 更新重点网站爬虫信息
 func UpdateSiteCodeBaseInfo(site string, important int) {
 	query := map[string]interface{}{"site": site}

+ 11 - 9
src/vps/vps.go

@@ -21,7 +21,9 @@ type Vps struct {
 	allRelease xweb.Mapper `xweb:"/center/vps/allrelease"` //一键释放
 }
 
-//列表
+// vsw-2zeohlapv0uorsiayr1fv h区
+// vsw-2ze1w617fx53vk90qmi1u f区
+// 列表
 func (vps *Vps) VpsList() {
 	defer qu.Catch()
 	draw, _ := vps.GetInteger("draw")
@@ -48,7 +50,7 @@ func (vps *Vps) VpsList() {
 	}
 }
 
-//申请
+// 申请
 func (vps *Vps) Apply() {
 	defer qu.Catch()
 	vpsname := vps.GetString("vpsname")
@@ -64,7 +66,7 @@ func (vps *Vps) Apply() {
 	vps.ServeJson(map[string]interface{}{"ok": ok})
 }
 
-//更新
+// 更新
 func (vps *Vps) Update() {
 	defer qu.Catch()
 	qu.Debug("更新实例...")
@@ -73,7 +75,7 @@ func (vps *Vps) Update() {
 	vps.ServeJson(map[string]interface{}{"ok": ok})
 }
 
-//延时
+// 延时
 func (vps *Vps) Delay() {
 	defer qu.Catch()
 	delayid := vps.GetString("delayid")
@@ -107,7 +109,7 @@ func (vps *Vps) Delay() {
 	vps.ServeJson(map[string]interface{}{"ok": allOk, "msg": msg})
 }
 
-//释放
+// 释放
 func (vps *Vps) Release() {
 	defer qu.Catch()
 	instanceId := vps.GetString("instanceId")
@@ -123,7 +125,7 @@ func (vps *Vps) Release() {
 	vps.ServeJson(map[string]interface{}{"ok": ok})
 }
 
-//部署
+// 部署
 func (vps *Vps) Deploy() {
 	defer qu.Catch()
 	instanceId := vps.GetString("instanceId")
@@ -156,7 +158,7 @@ func (vps *Vps) Deploy() {
 	vps.ServeJson(map[string]interface{}{"ok": ok})
 }
 
-//一键部署
+// 一键部署
 func (vps *Vps) AllDeploy() {
 	defer qu.Catch()
 	qu.Debug("部署所有实例...")
@@ -190,7 +192,7 @@ func (vps *Vps) AllDeploy() {
 	vps.ServeJson(map[string]interface{}{"ok": allOk, "msg": msg})
 }
 
-//一键释放
+// 一键释放
 func (vps *Vps) AllRelease() {
 	defer qu.Catch()
 	qu.Debug("释放所有实例...")
@@ -213,7 +215,7 @@ func (vps *Vps) AllRelease() {
 	vps.ServeJson(map[string]interface{}{"ok": allOk, "msg": msg})
 }
 
-//删除
+// 删除
 func (vps *Vps) Delete() {
 	defer qu.Catch()
 	instanceId := vps.GetString("instanceId")

+ 2 - 2
src/vpsconfig.json

@@ -6,8 +6,8 @@
     "cn-beijing": {
       "regionname": "北京",
       "zoneids": {
-        "cn-beijing-f": {
-          "vswitchid": "vsw-2ze1w617fx53vk90qmi1u",
+        "cn-beijing-h": {
+          "vswitchid": "vsw-2zeohlapv0uorsiayr1fv",
           "launchtemplateids": {
             "4": "lt-2zecgkiku3ge497fk7ea",
             "8": "lt-2ze9dvtb8f0x7rqw0r51"

+ 2 - 3
src/web/templates/index.html

@@ -343,7 +343,7 @@
 						  text = 10;
 						}else if (text=="已上线"){
 						  text = 11;
-						}else if (test == "无法标注"){
+						}else if (text == "无法标注"){
 							text = 12;
 						}
 						ttable.cell(cell).data(text);
@@ -371,7 +371,6 @@
 					  });
 				  }},
 				//更新优先级
-
 				{"targets":[9], createdCell: function (cell, cellData, rowData, rowIndex, colIndex) {
 					{{if eq (session "auth") 3}}
 					$(cell).click(function () {
@@ -470,7 +469,7 @@
 					}else if(state==11){
 						val="<span class='text-success text-bold'>已上线</span>";
 					}else if(state==12){
-						val="<span class='text-danger text-bold'>无法标注</span>";
+						val="<span class='text-danger text-bold' title='"+row.rollbackreason+"'>无法标注</span>";
 					}
 					return val;
 				}},

+ 114 - 101
src/web/templates/sitelist.html

@@ -98,6 +98,12 @@
                                     <input type="text" name="password" class="form-control" id="edit-password" placeholder="请输入密码">
                                 </div>
                             </div>
+                            <div class="form-group">
+                                <label for="edit-phonenum" class="col-sm-2 control-label">手机号:</label>
+                                <div class="col-sm-10">
+                                    <input type="text" name="phonenum" class="form-control" id="edit-phonenum" placeholder="请输入手机号">
+                                </div>
+                            </div>
                             <div class="form-group">
                                 <label for="edit-area" class="col-sm-2 control-label">省份:</label>
                                 <div class="col-sm-10">
@@ -263,6 +269,12 @@
                                     <input type="text" name="password" class="form-control" id="add-password" placeholder="请输入密码">
                                 </div>
                             </div>
+                            <div class="form-group">
+                                <label for="add-phonenum" class="col-sm-2 control-label">手机号:</label>
+                                <div class="col-sm-10">
+                                    <input type="text" name="phonenum" class="form-control" id="add-phonenum" placeholder="请输入手机号">
+                                </div>
+                            </div>
                             <div class="form-group">
                                 <label for="add-area" class="col-sm-2 control-label">省份:</label>
                                 <div class="col-sm-10">
@@ -443,24 +455,24 @@ $(function(){
             }},
             //平台类型
             {"targets":[9], createdCell: function (cell, cellData, rowData, rowIndex, colIndex) {
-                    var aInput;
-                    $(cell).click(function () {
-                        $(this).html(selectPlateType(rowData._id,rowData.site));
-                        var aInput = $(this).find(":input");
-                        aInput.focus().val(cellData);
-                    });
-                    $(cell).on("click", ":input", function (e) {
-                        e.stopPropagation();
-                    });
-                    $(cell).on("change", ":input", function () {
-                        $(this).blur();
-                    });
-                    $(cell).on("blur", ":input", function () {
-                        var text = $(this).find("option:selected").text();
-                        ttable.cell(cell).data(text);
-                        cellData = text;
-                    });
-                }},
+                var aInput;
+                $(cell).click(function () {
+                    $(this).html(selectPlateType(rowData._id,rowData.site));
+                    var aInput = $(this).find(":input");
+                    aInput.focus().val(cellData);
+                });
+                $(cell).on("click", ":input", function (e) {
+                    e.stopPropagation();
+                });
+                $(cell).on("change", ":input", function () {
+                    $(this).blur();
+                });
+                $(cell).on("blur", ":input", function () {
+                    var text = $(this).find("option:selected").text();
+                    ttable.cell(cell).data(text);
+                    cellData = text;
+                });
+            }},
             //一级类型 toptype
             {"targets":[10], createdCell: function (cell, cellData, rowData, rowIndex, colIndex) {
                 var aInput;
@@ -503,70 +515,70 @@ $(function(){
             }},
             //发布省份
             {"targets":[12], createdCell: function (cell, cellData, rowData, rowIndex, colIndex) {
-                    var aInput;
-                    $(cell).click(function () {
-                        $(this).html(selectArea(rowData._id,rowData.site));
-                        var aInput = $(this).find(":input");
-                        aInput.focus().val(cellData);
-                    });
-                    $(cell).on("click", ":input", function (e) {
-                        e.stopPropagation();
-                    });
-                    $(cell).on("change", ":input", function () {
-                        $(this).blur();
-                    });
-                    $(cell).on("blur", ":input", function () {
-                        var text = $(this).find("option:selected").text();
-                        ttable.cell(cell).data(text);
-                        cellData = text;
-                    });
-                }},
+                var aInput;
+                $(cell).click(function () {
+                    $(this).html(selectArea(rowData._id,rowData.site));
+                    var aInput = $(this).find(":input");
+                    aInput.focus().val(cellData);
+                });
+                $(cell).on("click", ":input", function (e) {
+                    e.stopPropagation();
+                });
+                $(cell).on("change", ":input", function () {
+                    $(this).blur();
+                });
+                $(cell).on("blur", ":input", function () {
+                    var text = $(this).find("option:selected").text();
+                    ttable.cell(cell).data(text);
+                    cellData = text;
+                });
+            }},
             //发布城市
             {"targets":[13], createdCell: function (cell, cellData, rowData, rowIndex, colIndex) {
-                    var aInput;
-                    $(cell).click(function () {
-                        $(this).html(selectCity(rowData._id,rowData.f_area,rowData.site));
-                        var aInput = $(this).find(":input");
-                        aInput.focus().val(cellData);
-                    });
-                    $(cell).on("click", ":input", function (e) {
-                        e.stopPropagation();
-                    });
-                    $(cell).on("change", ":input", function () {
-                        $(this).blur();
-                    });
-                    $(cell).on("blur", ":input", function () {
-                        var text = $(this).find("option:selected").text();
-                        if(text == "--请选择--"){
-                            text = "";
-                        }
-                        ttable.cell(cell).data(text);
-                        cellData = text;
-                    });
-                }},
+                var aInput;
+                $(cell).click(function () {
+                    $(this).html(selectCity(rowData._id,rowData.f_area,rowData.site));
+                    var aInput = $(this).find(":input");
+                    aInput.focus().val(cellData);
+                });
+                $(cell).on("click", ":input", function (e) {
+                    e.stopPropagation();
+                });
+                $(cell).on("change", ":input", function () {
+                    $(this).blur();
+                });
+                $(cell).on("blur", ":input", function () {
+                    var text = $(this).find("option:selected").text();
+                    if(text == "--请选择--"){
+                        text = "";
+                    }
+                    ttable.cell(cell).data(text);
+                    cellData = text;
+                });
+            }},
             //发布县区
             {"targets":[14], createdCell: function (cell, cellData, rowData, rowIndex, colIndex) {
-                    var aInput;
-                    $(cell).click(function () {
-                        $(this).html(selectDistrict(rowData._id,rowData.f_area,rowData.f_city,rowData.site));
-                        var aInput = $(this).find(":input");
-                        aInput.focus().val(cellData);
-                    });
-                    $(cell).on("click", ":input", function (e) {
-                        e.stopPropagation();
-                    });
-                    $(cell).on("change", ":input", function () {
-                        $(this).blur();
-                    });
-                    $(cell).on("blur", ":input", function () {
-                        var text = $(this).find("option:selected").text();
-                        if(text == "--请选择--"){
-                            text = "";
-                        }
-                        ttable.cell(cell).data(text);
-                        cellData = text;
-                    });
-                }},
+                var aInput;
+                $(cell).click(function () {
+                    $(this).html(selectDistrict(rowData._id,rowData.f_area,rowData.f_city,rowData.site));
+                    var aInput = $(this).find(":input");
+                    aInput.focus().val(cellData);
+                });
+                $(cell).on("click", ":input", function (e) {
+                    e.stopPropagation();
+                });
+                $(cell).on("change", ":input", function () {
+                    $(this).blur();
+                });
+                $(cell).on("blur", ":input", function () {
+                    var text = $(this).find("option:selected").text();
+                    if(text == "--请选择--"){
+                        text = "";
+                    }
+                    ttable.cell(cell).data(text);
+                    cellData = text;
+                });
+            }},
 		],
 		"order": [[3,"desc"]],
         "lengthChange":false,
@@ -599,13 +611,13 @@ $(function(){
               return val;
               // return "<a href='http://"+val+"' target='_blank' style='color: #333'>"+val+"</a>"
           }},
-            { "data": "important",render:function(val,a,row){
-                    if(val == 1){
-                        return "是"
-                    }else{
-                        return "否"
-                    }
-                }},
+          { "data": "important",render:function(val,a,row){
+                if(val == 1){
+                    return "是"
+                }else{
+                    return "否"
+                }
+            }},
           { "data": "area"},
           { "data": "city"},
           { "data": "district"},
@@ -628,25 +640,25 @@ $(function(){
           //        }
           //        return "<span title='"+tmpval+"'>"+val+"</span>"
           //     }},
-            { "data": "infotype",render:function (val,a,row) {
-                    if(val){
-                        return val;
-                    }else{
-                        return "";
-                    }
-                }},
+          { "data": "infotype",render:function (val,a,row) {
+                if(val){
+                    return val;
+                }else{
+                    return "";
+                }
+            }},
           { "data": "platform"},
           { "data": "remarktime",width:"50px"},
           { "data": "_id",render:function (val,a,row){
-                    var div=$("<div><div class=\"btn-group\"></div></div>")
-                    var buttonEdit=$('<a type="button" target="_blank" class="btn btn-sm btn-default">编辑</a>');
-                    var buttonDelete=$('<a type="button" class="btn btn-sm btn-default">删除</a>');
-                    buttonEdit.attr("onclick","siteEdit('"+JSON.stringify(row)+"',)");
-                    buttonDelete.attr("onclick","siteDelete('"+val+"')");
-                    div.find(".btn-group").append(buttonEdit);
-                    div.find(".btn-group").append(buttonDelete);
-                    return div.html();
-                }}
+                var div=$("<div><div class=\"btn-group\"></div></div>")
+                var buttonEdit=$('<a type="button" target="_blank" class="btn btn-sm btn-default">编辑</a>');
+                var buttonDelete=$('<a type="button" class="btn btn-sm btn-default">删除</a>');
+                buttonEdit.attr("onclick","siteEdit('"+JSON.stringify(row)+"')");
+                buttonDelete.attr("onclick","siteDelete('"+val+"')");
+                div.find(".btn-group").append(buttonEdit);
+                div.find(".btn-group").append(buttonDelete);
+                return div.html();
+          }}
         ],
 		"fnDrawCallback": function(table) {
 		 	$("ul.pagination").prepend("&nbsp;&nbsp;&nbsp;转到第 <input type='text' id='changePage'   style='width:20px;'> 页    <a type='text' href='javascript:void(0);' id='dataTable-btn' style='text-align:center'>GO</a>");
@@ -958,6 +970,7 @@ function siteEdit(rowjson){
     $("#edit-special_type").val(row.special_type);
     $("#edit-account").val(row.account);
     $("#edit-password").val(row.password);
+    $("#edit-phonenum").val(row.phonenum);
     $("#edit-area").val(row.area);
     // $("#edit-qy_area").val(row.qy_area);
     $("#edit-city").val(row.city);

+ 81 - 4
src/web/templates/sitelualist.html

@@ -1,4 +1,41 @@
 {{include "head.html"}}
+<div class="modal fade" id="site-luaedit" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
+  <div class="modal-dialog">
+    <div class="modal-content" style="max-height: 90vh;overflow-y: scroll;overflow-x: hidden;">
+      <div class="modal-header">
+        <div class="modal-header">
+          <button type="button" class="close" data-dismiss="modal" aria-hidden="true" style="margin-top: -19px">&times;</button>
+          <div class="edit-form">
+            <div class="edit-info">
+              <span class="glyphicon glyphicon-edit" aria-hidden="true" style="margin-left: 20px;"></span>
+              <span class="info">信息修改</span>
+            </div>
+            <form class="form-horizontal" role="form" id="edit-form">
+              <div class="form-group">
+                <label for="site-luaedit-channel" class="col-sm-2 control-label">栏目名称:</label>
+                <div class="col-sm-10">
+                  <input type="text" name="channel" class="form-control" id="site-luaedit-channel" placeholder="请输入栏目名称">
+                </div>
+              </div>
+              <div class="form-group">
+                <label for="site-luaedit-href" class="col-sm-2 control-label">栏目地址:</label>
+                <div class="col-sm-10">
+                  <input type="text" name="href" class="form-control" id="site-luaedit-href" placeholder="请输入栏目地址">
+                </div>
+              </div>
+              <div class="form-group">
+                <div class="col-sm-offset-2 col-sm-10 operateStyle">
+                  <input type="button" onclick="editLua()" class="btn btn-primary" value="保存">
+                  <input type="button" data-dismiss="modal" class="btn btn-default" value="取消">
+                </div>
+              </div>
+            </form>
+          </div>
+        </div>
+      </div>
+    </div><!-- /.modal-content -->
+  </div><!-- /.modal -->
+</div>
 <div class="content-wrapper">
   <section class="content-header">
     <h1>
@@ -25,6 +62,7 @@
             <th>最后修改时间</th>
             <th>状态</th>
             <th>平台</th>
+            <th class="hidden-xs">操作</th>
           </tr>
           </thead>
         </table>
@@ -35,6 +73,8 @@
 
   <script>
     $(function(){
+      var site = {{.T.site}};
+      var editCode = "";
       lualisttable=$('#spider').DataTable({
         "language": {
           "url": "/js/dataTables.chinese.lang"
@@ -49,7 +89,7 @@
         "ajax": {
           "url": "/center/site/getluasbysite/",
           "type": "POST",
-          "data": {"site":{{.T.site}}}
+          "data": {"site":site}
         },
         "columns": [
           { "data": "param_common","width":"200px",render:function(val){
@@ -111,15 +151,52 @@
               }else if(state==10){
                 val="<span class='text-danger text-bold'>已删除</span>"
               }else if(state==11){
-      					val="<span class='text-success text-bold'>已上线</span>"
-      				}
+                val="<span class='text-success text-bold'>已上线</span>"
+              }else if(state==12){
+                val="<span class='text-danger text-bold'>无法标注</span>";
+              }
               return val
             }},
-          { "data": "platform"}
+          { "data": "platform"},
+          { "data": "_id",render:function (val,a,row){
+              var div=$("<div><div class=\"btn-group\"></div></div>")
+              var buttonEdit=$('<a type="button" target="_blank" class="btn btn-sm btn-default">编辑</a>');
+              buttonEdit.attr("onclick","editLuaClick('"+row.code+"','"+row.channel+"','"+row.href+"')");
+              div.find(".btn-group").append(buttonEdit);
+              return div.html();
+            }}
         ]
       });
       common.setActive("index_site");
     })
+
+    function editLuaClick(code,channel,href){
+      editCode = code
+      $("#site-luaedit-channel").val(channel);
+      $("#site-luaedit-href").val(href);
+      $("#site-luaedit").modal("show");
+    }
+
+    function editLua() {
+      var channel = $("#site-luaedit-channel").val();
+      var href =  $("#site-luaedit-href").val();
+      $.ajax({
+        url:"/center/site/updatelua",
+        type:"post",
+        data:{"code":editCode,"channel":channel,"href":href},
+        success:function(r){
+          if(r=="n"){
+            showTip("修改失败", 1000, function() {});
+          }else{
+            $("#site-luaedit").modal("hide");
+            showTip("修改成功", 1000);
+            $('#com-alert').on('hidden.bs.modal', function () {
+              lualisttable.ajax.reload();
+            });
+          }
+        }
+      })
+    }
   </script>
 </div>
 {{include "bottom.html"}}

+ 2 - 2
src/web/templates/spideredit.html

@@ -50,7 +50,7 @@
   						<option value=9>转python</option>
   						<option value=10>需删除</option>
               			<option value=11>已上线</option>
-						<option value=11>无法标注</option>
+						<option value=12>无法标注</option>
   					</select> 
   					<button id="ok" class="btn btn-success btn-sm">确定</button>
   				</div>
@@ -72,7 +72,7 @@
   						<option value=9>转python</option>
   						<option value=10>需删除</option>
               			<option value=11>已上线</option>
-						<option value=11>无法标注</option>
+						<option value=12>无法标注</option>
   					</select> 
   					<button id="ok" class="btn btn-success btn-sm">确定</button>
   				</div>