Liuqi 6 ani în urmă
părinte
comite
5ef4227a5f

+ 15 - 0
src/dashoo.cn/backend/api/business/documentmanage/documentmanageService.go

@@ -35,6 +35,21 @@ func (s *DocumentmanageService) GetDocumentNameAndTime(table string, colName, ra
 
 	return List
 }
+//获取文档名与创建时间首页
+func (s *DocumentmanageService) GetDocumentNameAndTimeLogin(table string, colName, rangeType string) []DocumentNameTimeInfo {
+	var err error
+	var sql string
+
+	nowTimeStr := time.Now().Format("2006-01-02 15:04:05")
+
+	sql = "select Name, CreateOn, FileURL from " + table + " WHERE " + colName + " = 1 " + "and ValidityTime >= '" + nowTimeStr + "' and RangeType in (" + rangeType + ")  ORDER BY CreateOn DESC LIMIT 0,3"
+
+	List := make([]DocumentNameTimeInfo, 0)
+	err = utils.DBE.Sql(sql).Find(&List)
+	LogError(err)
+
+	return List
+}
 
 //获取文档信息
 func (s *DocumentmanageService) GetDocumentInfoByWhere(pageIndex, itemsPerPage int64, order, table string, where string) (int64, []DocumentInfo) {

+ 43 - 42
src/dashoo.cn/backend/api/controllers/base.go

@@ -218,47 +218,47 @@ var (
 	LimsReportSignName                       string = "LimsReportSign"              //报告签发
 	LimsReportHistoryName                    string = "LimsReportHistory"           //报告历史
 	LimsCustomerpositionName                 string = "LimsCustomerPosition"
-	LimsPressureLeakName                     string = "LimsPressureLeak"            //阻火器压力损失表
-	LimsSpecifyStandardName                  string = "LimsSpecifyStandard"         //Lims规格型号标准
-	BaseUserName                             string = "Base_User"                   //用户表
-	UserQualificationName                    string = "UserQualification"           //用户资质表
-	LimsInstrumentGroup                      string = "LimsInstrumentGroup"         // 检测仪器关联
-	OilAuditSettingName                      string = "Base_OilAuditSetting"        // 单位审批步骤自定义配置
-	OilAuditUserName                         string = "OilAuditUser"                // 单位审批步骤 --审核人
-	OilBasisBuildName                        string = "OilBasisBuild"               // 基建类资质对照表
-	OilGoodsAptitudeName                     string = "OilGoodsAptitude"            // 物资类项目与资质对照表
-	OilTableFiledSettingName                 string = "OilTableFiledSetting"        // 资质项目与字段对照表
-	OilTechnologyServiceName                 string = "OilTechnologyService"        // 技术服务类资质对照表
-	OilSupplierName                          string = "OilSupplier"                 // 供方基本信息表
-	OilSupplierCertName                      string = "OilSupplierCert"             // 供方准入证书信息表
-	OilSupplierCertSubName                   string = "OilSupplierCertSub"          // 供方对应准入子分类表
-	OilSupplierCertAppendName                string = "OilSupplierCertAppend"       // 供方增项信息表
-	OilSupplierCertAppendSubName             string = "OilSupplierCertAppendSub"    // 供方增项信息分类表
-	OilSupplierFileName                      string = "OilSupplierFile"             // 供方准入文件表
-	OilGoodsAptitudeClassName                string = "OilGoodsAptitudeClass"       // 物资类资质分类层级表
-	OilTechnologyServiceClassName            string = "OilTechnologyServiceClass"   // 技术服务类资质分类层级表
-	OilEnterpriseMajorEquipmentName          string = "OilEnterpriseMajorEquipment" //企业主要装备情况
-	OilThreeYearsPerformanceName             string = "OilThreeYearsPerformance"    //近三年主要工程业绩
-	OilPatentStatisticalName                 string = "OilPatentStatistical"        //拥有专利、专有技术及工法
-	OilWinningProjectName                    string = "OilWinningProject"           //近三年获得省部级及以上主要技术、管理成果、获奖项目
-	OilTechsrvDetailViewName                 string = "oil_techsrv_detail_view"     //技术服务类视图
-	OilGoodsAptDetailViewName                string = "oil_goodsapt_detail_view"    //物資类视图
-	OilTechsrvClassViewName                  string = "oil_techsrv_class_view"      //技术服务类视图
-	OilGoodsAptClassViewName                 string = "oil_goodsapt_class_view"     //物資类视图
-	ImportOilGoodsAptDetailViewName          string = "oil_goodsapt_import_detail_view"    //物資类视图
-	ImportOilGoodsAptClassViewName           string = "oil_goodsapt_import_class_view"     //物資类视图
-	OilClassOrgSettingName                   string = "OilClassOrgSetting"          //分类部门审批配置表
-	OilAnnualAuditName                       string = "OilAnnualAudit"              //年审表
-	OilSupplierOpinionName                   string = "OilSupplierOpinion"          //追加意见表
-	OilInfoChangeItemName                    string = "OilInfoChangeItem"           //信息变更表
-	OilInfoChangeName                        string = "OilInfoChange"               //信息变更表
-	OilQualChangeMainName                    string = "OilQualChangeMain"           //资质变更表
-	OilQualChangeDetailName                  string = "OilQualChangeDetail"         //资质变更表
-	OilQualChangeDetailAnnualName            string = "OilQualChangeDetailAnnual"   //年审资质变更表
-	BaseTableHeader                          string = "Base_TableHeader"            //资质配置字典信息表
-	BaseBadRecord                            string = "BadRecord"                   //不良记录表
-	OilSupplierCert2FileName                 string = "OilSupplierCert2File"        // 准入与资质对应关系表
-	OilCorporateInfoName                     string = "OilCorporateInfo"            //企业用户注册临时表
+	LimsPressureLeakName                     string = "LimsPressureLeak"                //阻火器压力损失表
+	LimsSpecifyStandardName                  string = "LimsSpecifyStandard"             //Lims规格型号标准
+	BaseUserName                             string = "Base_User"                       //用户表
+	UserQualificationName                    string = "UserQualification"               //用户资质表
+	LimsInstrumentGroup                      string = "LimsInstrumentGroup"             // 检测仪器关联
+	OilAuditSettingName                      string = "Base_OilAuditSetting"            // 单位审批步骤自定义配置
+	OilAuditUserName                         string = "OilAuditUser"                    // 单位审批步骤 --审核人
+	OilBasisBuildName                        string = "OilBasisBuild"                   // 基建类资质对照表
+	OilGoodsAptitudeName                     string = "OilGoodsAptitude"                // 物资类项目与资质对照表
+	OilTableFiledSettingName                 string = "OilTableFiledSetting"            // 资质项目与字段对照表
+	OilTechnologyServiceName                 string = "OilTechnologyService"            // 技术服务类资质对照表
+	OilSupplierName                          string = "OilSupplier"                     // 供方基本信息表
+	OilSupplierCertName                      string = "OilSupplierCert"                 // 供方准入证书信息表
+	OilSupplierCertSubName                   string = "OilSupplierCertSub"              // 供方对应准入子分类表
+	OilSupplierCertAppendName                string = "OilSupplierCertAppend"           // 供方增项信息表
+	OilSupplierCertAppendSubName             string = "OilSupplierCertAppendSub"        // 供方增项信息分类表
+	OilSupplierFileName                      string = "OilSupplierFile"                 // 供方准入文件表
+	OilGoodsAptitudeClassName                string = "OilGoodsAptitudeClass"           // 物资类资质分类层级表
+	OilTechnologyServiceClassName            string = "OilTechnologyServiceClass"       // 技术服务类资质分类层级表
+	OilEnterpriseMajorEquipmentName          string = "OilEnterpriseMajorEquipment"     //企业主要装备情况
+	OilThreeYearsPerformanceName             string = "OilThreeYearsPerformance"        //近三年主要工程业绩
+	OilPatentStatisticalName                 string = "OilPatentStatistical"            //拥有专利、专有技术及工法
+	OilWinningProjectName                    string = "OilWinningProject"               //近三年获得省部级及以上主要技术、管理成果、获奖项目
+	OilTechsrvDetailViewName                 string = "oil_techsrv_detail_view"         //技术服务类视图
+	OilGoodsAptDetailViewName                string = "oil_goodsapt_detail_view"        //物資类视图
+	OilTechsrvClassViewName                  string = "oil_techsrv_class_view"          //技术服务类视图
+	OilGoodsAptClassViewName                 string = "oil_goodsapt_class_view"         //物資类视图
+	ImportOilGoodsAptDetailViewName          string = "oil_goodsapt_import_detail_view" //物資类视图
+	ImportOilGoodsAptClassViewName           string = "oil_goodsapt_import_class_view"  //物資类视图
+	OilClassOrgSettingName                   string = "OilClassOrgSetting"              //分类部门审批配置表
+	OilAnnualAuditName                       string = "OilAnnualAudit"                  //年审表
+	OilSupplierOpinionName                   string = "OilSupplierOpinion"              //追加意见表
+	OilInfoChangeItemName                    string = "OilInfoChangeItem"               //信息变更表
+	OilInfoChangeName                        string = "OilInfoChange"                   //信息变更表
+	OilQualChangeMainName                    string = "OilQualChangeMain"               //资质变更表
+	OilQualChangeDetailName                  string = "OilQualChangeDetail"             //资质变更表
+	OilQualChangeDetailAnnualName            string = "OilQualChangeDetailAnnual"       //年审资质变更表
+	BaseTableHeader                          string = "Base_TableHeader"                //资质配置字典信息表
+	BaseBadRecord                            string = "BadRecord"                       //不良记录表
+	OilSupplierCert2FileName                 string = "OilSupplierCert2File"            // 准入与资质对应关系表
+	OilCorporateInfoName                     string = "OilCorporateInfo"                //企业用户注册临时表
 	OilSupplierPauseReasonName               string = "OilSupplierPauseReason"
 	OilPaymentInfoName                       string = "OilPaymentInfo" //交费信息
 	OilActivityName                          string = "OilActivity"    //
@@ -272,7 +272,7 @@ var (
 	DelOilAnnualAuditName                    string = "Del_OilAnnualAudit"
 	DelOilInfoChangeName                     string = "Del_OilInfoChange"
 	SupplierApplyTimeName                    string = "OilSupplierApplyTime"
-	OilAnnualChangeItemName                  string = "OilAnnualChangeItem"           //信息变更表
+	OilAnnualChangeItemName                  string = "OilAnnualChangeItem" //信息变更表
 	Tmp_OilGoodsAptitudeName                 string = "tmp_OilGoodsAptitude"
 	Tmp_OilGoodsAptitudeClassName            string = "tmp_OilGoodsAptitudeClass"
 	TmpOilSupplierCertSubName                string = "tmp_OilSupplierCertSub"
@@ -306,6 +306,7 @@ func (this *BaseController) Prepare() {
 		"/api/uploads/samplestypeimg",
 		"/api/workflow/historyimg/",
 		"/api/document/getdocumentnameandtime",
+		"/api/document/getdocumentnameandtimelogin",
 		"/api/annualaudit/auditcallback",
 		"/api/suppliercert/auditcallback",
 		"/api/register/addentity",

+ 17 - 0
src/dashoo.cn/backend/api/controllers/document/document.go

@@ -69,6 +69,23 @@ func (this *DocumentController) GetDocumentNameAndTime() {
 	this.ServeJSON()
 }
 
+// @Title 获取文件名和创建时间首页
+// @Description get Name,CreateOn
+// @Success 200 {object} models.Userblood
+// @router /getdocumentnameandtimelogin [get]
+func (this *DocumentController) GetDocumentNameAndTimeLogin() {
+	colName := this.GetString("colName")
+	rangeType := this.GetString("RangeType")
+
+	svc := documentmanage.GetDocumentmanageService(utils.DBE)
+	var list []documentmanage.DocumentNameTimeInfo
+	tableName := "s5OVE" + DocumentInfoName
+	list = svc.GetDocumentNameAndTimeLogin(tableName, colName, rangeType)
+
+	this.Data["json"] = &list
+	this.ServeJSON()
+}
+
 // @Title 新增文档信息  DocumentInfo
 // @Param	body	body	business.device.DeviceChannels "需要注意"
 // @Success	200	{object} controllers.Request

BIN
src/dashoo.cn/frontend_web/src/assets/img/GF002.png


BIN
src/dashoo.cn/frontend_web/src/assets/img/GF003.png


+ 6 - 0
src/dashoo.cn/frontend_web/src/middleware/check-auth.js

@@ -28,6 +28,12 @@ export default function ({ isServer, store, req, route, redirect }) {
   if (route.name == 'logingf') {
     return
   }
+  if (route.name == 'documentdown') {
+    return
+  }
+  if (route.name == 'datadown') {
+    return
+  }
   if (!store.getters['auth/loggedIn']) {
     return redirect('/login')
   }

+ 256 - 0
src/dashoo.cn/frontend_web/src/pages/datadown.vue

@@ -0,0 +1,256 @@
+<template>
+  <div style="width: 100%; background-color: white" >
+    <sticky class-name="sub-navbar2">
+      <div class="top-wrapper">
+        <div style="margin-top: 5px; float: left;">
+          <router-link to="/">
+            <img src="../assets/img/title_gongfang.png" style="height:35px;" />
+          </router-link>
+        </div>
+        <div style="float: right;">
+          <router-link :to="'/login'">
+            <el-button type="info" size="small" round>登录系统</el-button>
+          </router-link>
+        </div>
+      </div>
+    </sticky>
+
+    <div style="background-color: white;">
+
+        <el-table :data="noticeList"
+                  border
+                  size="mini"
+                  style="width: 1500px;margin-right: auto;  margin-left: auto;">
+          <el-table-column prop="Name"
+                            align="center"
+                            label="通知">
+            <template slot-scope="scope">
+              <el-link :href="getDownloadFile(scope.row.FileURL)"
+                        target="_blank"
+                        type="primary">{{ scope.row.Name }}</el-link>
+            </template>
+          </el-table-column>
+          <el-table-column prop="CreateOn"
+                            label="发布时间"
+                            width="141">
+            <template slot-scope="scope">{{ jstimehandle(scope.row.CreateOn+'') }}</template>
+          </el-table-column>
+        </el-table>
+    </div>
+
+    <div>
+      <footer class="login-footer1">
+        <div class="foot-wrapper" style="height: 30px; background-color: transparent; color:#A9A9A9; padding-top: 10px; text-align: right">
+          ©企业法规处 版权所有
+        </div>
+      </footer>
+    </div>
+
+  </div>
+</template>
+
+<script>
+
+  import Vue from 'vue'
+  import Component from 'class-component'
+  import Sticky from '@/components/Sticky'
+  import axios from 'axios'
+
+  @Component({
+    data () {
+       var check = (rule, value, callback) => {
+        if (value === '') {
+          callback(new Error('请输入验证码'));
+        } else {
+          this.isPass=false
+        }
+      };
+      return {
+        activeIndex: '1',
+        isVisual: false,
+        isCodePass:true,
+        isPass:true,
+        noticeList: [], // 文档列表
+        formData: {
+          UserName:'',
+          Telephone: '', //用户手机号
+          yzCode: '', //验证码
+          UserPass: '',
+          UserPass2: ''
+        },
+
+        rules: {
+          UserName: [
+            { required: true, message: '请输入用户名', trigger: 'change' }
+          ],
+          Telephone: [
+            { required: true, message: '请输入手机号', trigger: 'change' }
+          ],
+          yzCode: [
+            { required: true, validator: check, trigger: 'change' }
+          ],
+          UserPass: [
+            { required: true, message: '请输入密码', trigger: 'change' }
+          ],
+          UserPass2: [
+            { required: true,
+              message: '请确认密码',
+              trigger: 'change'
+            }
+          ],
+        }
+      }
+    },
+
+    created () {
+      this.initNoticeListData()
+    },
+    components: {
+      Sticky
+    },
+    methods: {
+      initNoticeListData () {
+        let _this = this
+        // 传递列名
+        const params = {
+          colName: 'NoticeTab',
+          RangeType: '1,3'
+        }
+        _this.$axios
+          .get('/document/getdocumentnameandtime', { params })
+          .then(function (response) {
+            _this.noticeList = response.data
+          })
+          .catch(function (error) {
+            console.log(error)
+          })
+      },
+      // 下载文件
+      DownloadFile (row) {
+        let val = row.FileURL
+        let urlArr = val.split('|')
+        location.href = 'http://' + urlArr[0]
+      },
+      getDownloadFile (val) {
+        let urlArr = val.split('|')
+        let retUrl = urlArr[0]
+        // 内网服务器专用
+        if (process.client && retUrl.indexOf('/upfile') === 0) {
+          const myDomain = window.location.host
+          retUrl = myDomain + '/' + retUrl
+        }
+        return 'http://' + retUrl
+      },
+      // 格式化时间
+      jstimehandle (val) {
+        if (val === '') {
+          return '----'
+        } else if (val === '0001-01-01T08:00:00+08:00') {
+          return '----'
+        } else if (val === '5000-01-01T23:59:59+08:00') {
+          return '永久'
+        } else {
+          val = val.replace('T', ' ')
+          return val.substring(0, 10)
+        }
+      },
+
+      handleSelect (key, keyPath) {
+        this.activeIndex = key
+      }
+    }
+
+  })
+  export default class Register extends Vue {
+    layout() {
+      return 'empty'
+    }
+  }
+
+</script>
+
+<style lang="scss">
+  @import '../assets/styles/base/variables';
+
+  body {
+    overflow: auto;
+  }
+  .top-wrapper {
+    margin: 0px auto;
+    width: 1004px;
+    /*text-align: right;
+    alignment: right;*/
+    flex-direction: row;
+  }
+  .home-wrapper{
+    margin:0px auto;
+    width: 1004px;
+    flex-direction: column;
+    margin-bottom: 45px;
+    background-color: white;
+    overflow: auto;
+  }
+
+  .foot-wrapper{
+    margin:0px auto;
+    width: 1004px;
+    display: flex;
+    // alignment: center;
+    align-items: center;
+    flex-direction: column;
+  }
+
+  .back-width1 {
+    background-color: #2F79F6;
+    margin: 0px auto;
+    left: 0;
+    right: 0;
+    top: 20px;
+    width: 1004px;
+  }
+
+
+  .login-footer1 {
+    position: fixed;
+    background-color: #34393D;
+    font-size: 10px;
+    clear: both;
+    display: block;
+    text-align: center;
+    margin: 0px auto;
+    bottom: 0px;
+    width: 100%;
+  }
+
+  .time {
+    font-size: 13px;
+    color: #999;
+  }
+
+  .bottom {
+    margin-top: 13px;
+    line-height: 12px;
+  }
+
+  .button {
+    padding: 0;
+    float: right;
+  }
+
+  .image {
+    width: 100%;
+    display: block;
+  }
+
+  .clearfix:before,
+  .clearfix:after {
+    display: table;
+    content: "";
+  }
+
+  .clearfix:after {
+    clear: both
+  }
+
+</style>
+

+ 257 - 0
src/dashoo.cn/frontend_web/src/pages/documentdown.vue

@@ -0,0 +1,257 @@
+<template>
+  <div style="width: 100%; background-color: white" >
+    <sticky class-name="sub-navbar2">
+      <div class="top-wrapper">
+        <div style="margin-top: 5px; float: left;">
+          <router-link to="/">
+            <img src="../assets/img/title_gongfang.png" style="height:35px;" />
+          </router-link>
+        </div>
+        <div style="float: right;">
+          <router-link :to="'/login'">
+            <el-button type="info" size="small" round>登录系统</el-button>
+          </router-link>
+        </div>
+      </div>
+    </sticky>
+
+    <div style="background-color: white;">
+
+        <el-table :data="fileList"
+                  border
+                  size="mini"
+                  style="width: 1500px;margin-right: auto;  margin-left: auto;">
+          <el-table-column prop="Name"
+                            align="center"
+                            label="资料下载">
+            <template slot-scope="scope">
+              <el-link :href="getDownloadFile(scope.row.FileURL)"
+                        target="_blank"
+                        type="primary">{{ scope.row.Name }}</el-link>
+            </template>
+          </el-table-column>
+          <el-table-column prop="CreateOn"
+                            label="发布时间"
+                            width="141">
+            <template slot-scope="scope">{{ jstimehandle(scope.row.CreateOn+'') }}</template>
+          </el-table-column>
+        </el-table>
+    </div>
+
+    <div>
+      <footer class="login-footer1">
+        <div class="foot-wrapper" style="height: 30px; background-color: transparent; color:#A9A9A9; padding-top: 10px; text-align: right">
+          ©企业法规处 版权所有
+        </div>
+      </footer>
+    </div>
+
+  </div>
+</template>
+
+<script>
+
+  import Vue from 'vue'
+  import Component from 'class-component'
+  import Sticky from '@/components/Sticky'
+  import axios from 'axios'
+
+  @Component({
+    data () {
+       var check = (rule, value, callback) => {
+        if (value === '') {
+          callback(new Error('请输入验证码'));
+        } else {
+          this.isPass=false
+        }
+      };
+      return {
+        activeIndex: '1',
+        isVisual: false,
+        isCodePass:true,
+        isPass:true,
+        fileList: [], // 文档列表
+        formData: {
+          UserName:'',
+          Telephone: '', //用户手机号
+          yzCode: '', //验证码
+          UserPass: '',
+          UserPass2: ''
+        },
+
+        rules: {
+          UserName: [
+            { required: true, message: '请输入用户名', trigger: 'change' }
+          ],
+          Telephone: [
+            { required: true, message: '请输入手机号', trigger: 'change' }
+          ],
+          yzCode: [
+            { required: true, validator: check, trigger: 'change' }
+          ],
+          UserPass: [
+            { required: true, message: '请输入密码', trigger: 'change' }
+          ],
+          UserPass2: [
+            { required: true,
+              message: '请确认密码',
+              trigger: 'change'
+            }
+          ],
+        }
+      }
+    },
+
+    created () {
+      this.initFileListData()
+    },
+    components: {
+      Sticky
+    },
+    methods: {
+      // 获取文件列表
+      initFileListData () {
+        let _this = this
+        // 传递列名
+        const params = {
+          colName: 'DocTab',
+          RangeType: '1,3'
+        }
+        _this.$axios
+          .get('/document/getdocumentnameandtime', { params })
+          .then(function (response) {
+            _this.fileList = response.data
+          })
+          .catch(function (error) {
+            console.log(error)
+          })
+      },
+      // 下载文件
+      DownloadFile (row) {
+        let val = row.FileURL
+        let urlArr = val.split('|')
+        location.href = 'http://' + urlArr[0]
+      },
+      getDownloadFile (val) {
+        let urlArr = val.split('|')
+        let retUrl = urlArr[0]
+        // 内网服务器专用
+        if (process.client && retUrl.indexOf('/upfile') === 0) {
+          const myDomain = window.location.host
+          retUrl = myDomain + '/' + retUrl
+        }
+        return 'http://' + retUrl
+      },
+      // 格式化时间
+      jstimehandle (val) {
+        if (val === '') {
+          return '----'
+        } else if (val === '0001-01-01T08:00:00+08:00') {
+          return '----'
+        } else if (val === '5000-01-01T23:59:59+08:00') {
+          return '永久'
+        } else {
+          val = val.replace('T', ' ')
+          return val.substring(0, 10)
+        }
+      },
+
+      handleSelect (key, keyPath) {
+        this.activeIndex = key
+      }
+    }
+
+  })
+  export default class Register extends Vue {
+    layout() {
+      return 'empty'
+    }
+  }
+
+</script>
+
+<style lang="scss">
+  @import '../assets/styles/base/variables';
+
+  body {
+    overflow: auto;
+  }
+  .top-wrapper {
+    margin: 0px auto;
+    width: 1004px;
+    /*text-align: right;
+    alignment: right;*/
+    flex-direction: row;
+  }
+  .home-wrapper{
+    margin:0px auto;
+    width: 1004px;
+    flex-direction: column;
+    margin-bottom: 45px;
+    background-color: white;
+    overflow: auto;
+  }
+
+  .foot-wrapper{
+    margin:0px auto;
+    width: 1004px;
+    display: flex;
+    // alignment: center;
+    align-items: center;
+    flex-direction: column;
+  }
+
+  .back-width1 {
+    background-color: #2F79F6;
+    margin: 0px auto;
+    left: 0;
+    right: 0;
+    top: 20px;
+    width: 1004px;
+  }
+
+
+  .login-footer1 {
+    position: fixed;
+    background-color: #34393D;
+    font-size: 10px;
+    clear: both;
+    display: block;
+    text-align: center;
+    margin: 0px auto;
+    bottom: 0px;
+    width: 100%;
+  }
+
+  .time {
+    font-size: 13px;
+    color: #999;
+  }
+
+  .bottom {
+    margin-top: 13px;
+    line-height: 12px;
+  }
+
+  .button {
+    padding: 0;
+    float: right;
+  }
+
+  .image {
+    width: 100%;
+    display: block;
+  }
+
+  .clearfix:before,
+  .clearfix:after {
+    display: table;
+    content: "";
+  }
+
+  .clearfix:after {
+    clear: both
+  }
+
+</style>
+

+ 32 - 13
src/dashoo.cn/frontend_web/src/pages/login.vue

@@ -3,6 +3,11 @@
     <div class="back-width">
       <div class="title_png"></div>
       <div class="login-body">
+        <el-carousel arrow="never" indicator-position="none" height="590px">
+          <el-carousel-item v-for="(img,index) in imgList" :key="index">
+            <img style="width: 100%; height: 100%;" v-bind:src="img.url" >
+          </el-carousel-item>
+        </el-carousel>
         <section class="login">
           <el-card class="box-card">
             <div slot="header" class="clearfix">
@@ -117,7 +122,7 @@
                     <template slot-scope="scope">{{ jstimehandle(scope.row.CreateOn+'') }}</template>
                   </el-table-column>
                 </el-table>
-
+                <router-link style="font-size: 10px; float: right; padding: 3px 0" :underline="false" :to="'/datadown'">+更多</router-link>
                 <el-table :data="fileList"
                           size="mini"
                           style="width: 100%; height: 145px;">
@@ -136,6 +141,8 @@
                     <template slot-scope="scope">{{ jstimehandle(scope.row.CreateOn+'') }}</template>
                   </el-table-column>
                 </el-table>
+
+                <router-link style="font-size: 10px; float: right; padding: 3px 0" :underline="false" :to="'/documentdown'">+更多</router-link>
               </el-col>
             </el-row>
 
@@ -197,6 +204,15 @@ import SIdentify from '@/components/VCode.vue'
     }
 
     return {
+      imgList:[
+        {
+          url:require('../assets/img/gf20190628.png')
+        },{
+          url:require('../assets/img/GF002.png')
+        },{
+          url:require('../assets/img/GF003.png')
+        }
+        ],
       loginMode: parseInt(process.client ? (window.localStorage.getItem('loginMode') ? window.localStorage.getItem('loginMode') : 2) : 2),
       model: model,
       rules: rules,
@@ -255,7 +271,7 @@ import SIdentify from '@/components/VCode.vue'
         RangeType: '1,3'
       }
       _this.$axios
-        .get('/document/getdocumentnameandtime', { params })
+        .get('/document/getdocumentnameandtimelogin', { params })
         .then(function (response) {
           _this.noticeList = response.data
         })
@@ -272,7 +288,7 @@ import SIdentify from '@/components/VCode.vue'
         RangeType: '1,3'
       }
       _this.$axios
-        .get('/document/getdocumentnameandtime', { params })
+        .get('/document/getdocumentnameandtimelogin', { params })
         .then(function (response) {
           _this.fileList = response.data
         })
@@ -546,13 +562,14 @@ export default class Login extends Vue {
 }
 
 .login-body {
-  background: url("../assets/img/gf20190715.png");
-  font-family: "Open Sans", sans-serif;
-  background-repeat: no-repeat;
-  background-position: center;
-  background-color: #0483d8;
+  // background: url("../assets/img/gf20190715.png");
+  // font-family: "Open Sans", sans-serif;
+  // background-repeat: no-repeat;
+  // background-position: center;
+  // background-color: #0483d8;
   width: 100%;
-  height: 540px;
+  height: 580px;
+  z-index: -20;
 
   /*margin: auto;
   left: 0px;
@@ -562,7 +579,9 @@ export default class Login extends Vue {
   width: 100%;
   height: calc(100vh - 40px);*/
 }
-
+  .el-carousel{
+    width: 100%;
+  }
 .login-footer {
   font-size: 10px;
   clear: both;
@@ -582,14 +601,14 @@ export default class Login extends Vue {
   position: relative;
   max-width: 52rem;
   margin: 0 auto; /*水平居中*/
-  top: 50%; /*偏移*/
+  top: -280px; /*偏移*/
   transform: translateY(-50%);
   font-size: 0.875rem;
-  opacity: 0.9;
+  opacity: 1;
+  z-index: 200;
 
   &-header {
     margin-bottom: 1rem;
-
     .brand {
       margin: 4.5rem 0 3.5rem;
       text-align: center;