shihang 6 tahun lalu
induk
melakukan
fe52af438d

+ 1 - 2
src/dashoo.cn/backend/api/business/items/itemsService.go

@@ -97,8 +97,7 @@ func (s *ItemsService) GetKeyValueItems(code, acccode string) (list []KeyValue)
 		whereCondi := "Enabled=1"
 		if item.TargetTable == "Base_ItemDetails" {
 			whereCondi = whereCondi + " and ParentId=" + utils.ToStr(item.Id)
-			whereCondi = whereCondi + " and AccCode= 'ALL' "
-			whereCondi = whereCondi + " or AccCode='" + acccode + "'"
+			whereCondi = whereCondi + " and AccCode='" + acccode + "'"
 		}
 		s.DBE.Desc("Id").Cols("Id", "Itemname", "Itemvalue").Table(item.TargetTable).Where(whereCondi).Find(&list)
 	}

TEMPAT SAMPAH
src/dashoo.cn/frontend_web/src/assets/img/logo_01.jpg


TEMPAT SAMPAH
src/dashoo.cn/frontend_web/src/assets/img/right_dagang.png


TEMPAT SAMPAH
src/dashoo.cn/frontend_web/src/assets/img/tian.jpg


TEMPAT SAMPAH
src/dashoo.cn/frontend_web/src/assets/img/title_biobank.png


TEMPAT SAMPAH
src/dashoo.cn/frontend_web/src/assets/img/title_dagang2.png


TEMPAT SAMPAH
src/dashoo.cn/frontend_web/src/assets/img/title_left.png


TEMPAT SAMPAH
src/dashoo.cn/frontend_web/src/assets/img/title_right.png


TEMPAT SAMPAH
src/dashoo.cn/frontend_web/src/assets/img/you.png


+ 4 - 4
src/dashoo.cn/frontend_web/src/assets/styles/modules/header.scss

@@ -3,10 +3,10 @@
 
 .header {
   display: flex;
-  padding: 0 .5rem;
-  // padding: 0 0;
-  background-color:#2b3b49;
-  // background-color:#2b3b49;
+  //padding: 0 .5rem;
+  padding: 0 0;
+  //background-color:#2b3b49;
+  background-color:white;
 
   > .brand {
     margin: 0 1rem 0 0;

+ 28 - 88
src/dashoo.cn/frontend_web/src/components/Headbar.vue

@@ -1,45 +1,45 @@
 <template>
   <header class="header">
-    <h1 class="brand" style="text-align:center;margin-left:10px;margin-right:1px;">
+    <div v-if="!isMenuHidden" class="brand" style="background-color:#2B3B49;padding-top:7px;padding-left:20px;width:140px;">
       <router-link to="/">
-        <img src="~/assets/img/logo.png" style="height:32px;">
+        <img src="../assets/img/logo.png" style="height:35px;" />
       </router-link>
-    </h1>
-    <!-- <h1 class="brand" style="text-align:center;margin-left:10px;margin-right:1px;margin-top:10px;">
-      <router-link to="/indexlims">
-        <img src="/img/logo_dagang.png" style="height:26px;">
+    </div>
+    <div v-if="isMenuHidden" class="brand" style="padding-top:7px;padding-left:20px;width:36px;">
+      <router-link to="/">
+        <img src="../assets/img/title.png" style="height:35px;" />
       </router-link>
-    </h1> -->
-    <nav class="toolbar">
+    </div>
+    <nav class="toolbar" style="margin-top: 3px;">
+      <img src="../assets/img/title_biobank.png" style="height:35px;padding-top:5px;" />
       <div style="margin: 10px 0px 0px 20px;"></div>
-      <!--<menu-list :items="header.menus"/>
-      <input type="text" class="headerseach" @keydown="show($event)"  v-model="sampcode" placeholder="样本搜索" >
-      <span class="headerseachclose" :class="{ headerclosehavetxt: sampcode != ''}" onclick="headclearsearch()">x</span>-->
-      <input type="text" class="headerseach" @keydown="show($event)" v-model="sampcode" placeholder="样本搜索">
-      <span class="headerseachclose" :class="{ headerclosehavetxt: sampcode != ''}" @click="headclearsearch()"></span>
-      <ul class="list">
-        <li class="item">
-          <a style="font-size: 90%" href="#" v-if="authUser">
+      <!-- <el-tag type="text" size="mini" style="margin-top:12px">{{department}}</el-tag> -->
+
+      <ul class="list" style="background: #FFF;color: blue">
+        <li class="item" style="background: #FFF">
+          <a style="font-size: 90%;background: #FFF;color: #1D8CE0; font-weight: bold" href="#" v-if="authUser">
             <span style="margin-right: 20px;">
               <el-button type="text" icon="icon icon-shrink" v-if="fullscreen" @click="handleFullScreen"></el-button>
               <el-button type="text" icon="icon icon-enlarge" v-if="!fullscreen" @click="handleFullScreen"></el-button>
             </span>
-            您好, {{department}}{{ authUser.Profile.Realname }}
-            <img v-if="authUser.Profile.Photo" :src="'http://'+authUser.Profile.Host+authUser.Profile.Photo"
-              class="avatar">
-            <img v-else class="avatar" src="~/assets/img/avatar.svg" :alt="authUser.name">
+            您好, {{ authUser.Profile.Realname }}
+            <img v-if="authUser.Profile.Photo" style="background: #FFF; border: hidden"
+              :src="'http://'+authUser.Profile.Host+authUser.Profile.Photo" class="avatar">
+            <img v-else class="avatar" style="background: #FFF; border: hidden" src="~/assets/img/avatar.svg"
+              :alt="authUser.name">
           </a>
-          <ul class="list" style="text-align: center;">
+          <ul class="list" style="text-align: center;background: #FFF;">
             <li class="item">
-              <router-link to="/system/usersetting">账户设置</router-link>
+              <router-link to="/system/usersetting" style="color: #1F2D3D; font-weight: bold">账户设置</router-link>
             </li>
-            <li class="divider"></li>
+            <li class="divider" style="color: ActiveBorder;"></li>
             <li class="item">
-              <a href="#" @click.prevent="logout">注销登录</a>
+              <a href="#" style="color: #1F2D3D; font-weight: bold" @click.prevent="logout">注销登录</a>
             </li>
           </ul>
         </li>
       </ul>
+
     </nav>
   </header>
 </template>
@@ -59,6 +59,7 @@
     },
     data() {
       return {
+
         fullscreen: false,
         sampcode: '',
         department: ''
@@ -66,70 +67,6 @@
     },
     created() {},
     methods: {
-      show: function (ev) {
-        let _this = this
-        if (process.env.appclient == 'lims') {
-          if (ev.keyCode === 13) {
-            if (_this.sampcode !== '') {
-              _this.$axios.get('testsample/judgesampleexist/' + _this.sampcode, {})
-                .then(res => {
-                  if (res.data.items === true) {
-                    _this.$router.push({
-                      path: `/positivereport/detectionresult?SampleCode=${_this.sampcode}`,
-                    })
-                  } else {
-                    _this.$message({
-                      type: 'warning',
-                      message: '该样本编码不存在!'
-                    })
-                  }
-                })
-                .catch(_ => {
-                  // handle error
-                  _this.$message({
-                    type: 'warning',
-                    message: '查询故障!请检查网络是否正常!'
-                  })
-                })
-            }
-          }
-        } else {
-          if (ev.keyCode === 13) {
-            if (_this.sampcode !== '') {
-              _this.$axios.get('sampleoperation/getstationbycode?code=' + _this.sampcode, {})
-                .then(res => {
-                  if (res.data.code === 0) {
-                    let val = res.data.item
-                    let stationstr =
-                      `${val.ShelfX};${val.ShelfY};${val.BoxX};${val.BoxY};${val.Position};${val.Id}`
-                    _this.$router.push({
-                      path: `/equipment/${val.EquipmentId}/manage`,
-                      query: {
-                        station: stationstr
-                      }
-                    })
-                  } else {
-                    _this.$message({
-                      type: 'warning',
-                      message: res.data.message
-                    })
-                  }
-                })
-                .catch(_ => {
-                  // handle error
-                  _this.$message({
-                    type: 'warning',
-                    message: '查询故障!请检查网络是否正常!'
-                  })
-                })
-            }
-          }
-        }
-      },
-      headclearsearch() {
-        this.sampcode = ''
-      },
-
       handleFullScreen() {
         let element = document.documentElement;
         if (this.fullscreen) {
@@ -156,6 +93,9 @@
         }
         this.fullscreen = !this.fullscreen;
       },
+      headclearsearch() {
+        this.sampcode = ''
+      }
     }
   })
   export default class Headbar extends Vue {

+ 39 - 29
src/dashoo.cn/frontend_web/src/components/Headbar1.vue → src/dashoo.cn/frontend_web/src/components/Headbar2.vue

@@ -19,13 +19,19 @@
       <span class="headerseachclose" :class="{ headerclosehavetxt: sampcode != ''}" @click="headclearsearch()"></span>
       <ul class="list">
         <li class="item">
-          <a style="font-size: 90%" href="#" v-if="authUser">您好, {{department}}{{ authUser.Profile.Realname }}
-            <img v-if="authUser.Profile.Photo" :src="'http://'+authUser.Profile.Host+authUser.Profile.Photo" class="avatar">
+          <a style="font-size: 90%" href="#" v-if="authUser">
+            <span style="margin-right: 20px;">
+              <el-button type="text" icon="icon icon-shrink" v-if="fullscreen" @click="handleFullScreen"></el-button>
+              <el-button type="text" icon="icon icon-enlarge" v-if="!fullscreen" @click="handleFullScreen"></el-button>
+            </span>
+            您好, {{department}}{{ authUser.Profile.Realname }}
+            <img v-if="authUser.Profile.Photo" :src="'http://'+authUser.Profile.Host+authUser.Profile.Photo"
+              class="avatar">
             <img v-else class="avatar" src="~/assets/img/avatar.svg" :alt="authUser.name">
           </a>
           <ul class="list" style="text-align: center;">
             <li class="item">
-              <router-link to="/usersetting">账户设置</router-link>
+              <router-link to="/system/usersetting">账户设置</router-link>
             </li>
             <li class="divider"></li>
             <li class="item">
@@ -53,36 +59,13 @@
     },
     data() {
       return {
+        fullscreen: false,
         sampcode: '',
         department: ''
       }
     },
-    created () {
-      this.getdepartment()
-    },
+    created() {},
     methods: {
-      getdepartment(){
-        this.$axios.get('/limsentrust/getshow')
-          .then(res => {
-            console.log(res.data.items, '=========')
-            if (res.data.items === 'yx') {
-              this.department = '宇信公司'
-            } else if  (res.data.items === 'tjz') {
-              this.department = '特检站'
-            } else if  (res.data.items === 'jlny') {
-              this.department = '计量能源站'
-            }else if  (res.data.items === 'gcjd') {
-              this.department = '工程监督中心'
-            }else if  (res.data.items === 'zj') {
-              this.department = '质检中心'
-            }else if  (res.data.items === 'zj') {
-              this.department = '物资商品检验所'
-            }
-          })
-          .catch(err => {
-            console.error(err)
-          })
-      },
       show: function (ev) {
         let _this = this
         if (process.env.appclient == 'lims') {
@@ -145,7 +128,34 @@
       },
       headclearsearch() {
         this.sampcode = ''
-      }
+      },
+
+      handleFullScreen() {
+        let element = document.documentElement;
+        if (this.fullscreen) {
+          if (document.exitFullscreen) {
+            document.exitFullscreen();
+          } else if (document.webkitCancelFullScreen) {
+            document.webkitCancelFullScreen();
+          } else if (document.mozCancelFullScreen) {
+            document.mozCancelFullScreen();
+          } else if (document.msExitFullscreen) {
+            document.msExitFullscreen();
+          }
+        } else {
+          if (element.requestFullscreen) {
+            element.requestFullscreen();
+          } else if (element.webkitRequestFullScreen) {
+            element.webkitRequestFullScreen();
+          } else if (element.mozRequestFullScreen) {
+            element.mozRequestFullScreen();
+          } else if (element.msRequestFullscreen) {
+            // IE11
+            element.msRequestFullscreen();
+          }
+        }
+        this.fullscreen = !this.fullscreen;
+      },
     }
   })
   export default class Headbar extends Vue {

+ 0 - 52
src/dashoo.cn/frontend_web/src/components/sidebar.vue

@@ -10,58 +10,6 @@
   </aside>
 </template>
 
-<!--<template>
-  <aside class="sidebar" id="aside" :class="{ collapse: isMenuHidden }">
-    <div style="height: calc(100vh - 75px); overflow-y: auto; overflow-x: hidden" class="test">
-    <el-menu
-      :collapse="isCollapse"
-      class="el-menu-vertical-demo"
-      :router="true"
-      default-active="/"
-      background-color="#2b3b49"
-      text-color="#fff"
-      active-text-color="#1890FF"
-      :collapse-transition="false"
-    >
-      <template v-for="(item, index) in menus">
-        <el-menu-item v-if="!item.children" :index="item.url" :key="item.id" >
-          <i :class="'icon-before icon-'+item.icon" style="padding-top: 5px; margin-right: 10px;"></i>
-          <span slot="title">{{ item.name }}</span>
-        </el-menu-item>
-
-        <el-submenu v-if="item.children" :index="item.name" :key="item.id">
-          <template slot="title">
-            <i :class="'icon-before icon-'+item.icon" style="padding-top: 5px; margin-right: 10px;"></i>
-            <span slot="title">{{ item.name }}</span>
-          </template>
-          <template v-if="item.children" v-for="sub in item.children" >
-            <el-menu-item v-if="!sub.children"  :index="sub.url"  :key="sub.id">
-
-                <span slot="title">{{ sub.name }}</span>
-            </el-menu-item>
-            <el-submenu v-if="sub.children" :index="sub.name" :key="sub.id">
-              <template slot="title">
-                <i :class="'icon-before icon-'+sub.icon" style="padding-top: 5px; margin-right: 10px;"></i>
-                <span slot="title">{{ sub.name }}</span>
-              </template>
-              <el-menu-item v-for="sub2 in sub.children" :index="sub2.url" :key="sub2.id">
-                <span slot="title">{{ sub2.name }}</span>
-              </el-menu-item>
-            </el-submenu>
-          </template>
-
-        </el-submenu>
-      </template>
-    </el-menu>
-    </div>
-    <footer class="footer">
-      <el-button size="mini" type="text" icon="icon-before icon-circle-right" circle v-if="isCollapse == true" @click="floderMenu"></el-button>
-      <el-button size="mini" type="text" icon="icon-before icon-circle-left" circle v-if="isCollapse == false" @click="floderMenu"></el-button>
-      <div v-if="!isCollapse" class="copyright">©大港油田信息中心</div>
-    </footer>
-  </aside>
-</template>               -->
-
 
 <script>
   import Vue from 'vue'

+ 8 - 8
src/dashoo.cn/frontend_web/src/pages/index.vue

@@ -11,49 +11,49 @@
           </span>
           <div style="margin-left:10px;">
             <router-link :to="'/equipment'">
-              <el-button style="margin-right:5px;">
+              <el-button type="primary" plain style="margin-right:5px;" size="mini">
                 容器总数
                 <span style="color:#0000FF">【{{usertotal.DeviceTotal}}】</span>
               </el-button>
             </router-link>
             <router-link :to="'/samples/stored'">
-              <el-button style="margin-right:5px;">
+              <el-button type="primary" plain style="margin-right:5px;" size="mini">
                 已存储样本
                 <span style="color:#0000FF">【{{usertotal.YILRTotal}}】</span>
               </el-button>
             </router-link>
             <router-link :to="'/samples/prerecorded'">
-              <el-button style="margin-right:5px;">
+              <el-button type="primary" plain style="margin-right:5px;" size="mini">
                 预录入样本
                 <span style="color:#0000FF">【{{usertotal.YULRTotal}}】</span>
               </el-button>
             </router-link>
             <router-link :to="'/samples/waitingstore'">
-              <el-button style="margin-right:5px;">
+              <el-button type="primary" plain style="margin-right:5px;" size="mini">
                 待复存样本
                 <span style="color:#0000FF;">【{{usertotal.DFCTotal}}】</span>
               </el-button>
             </router-link>
             <router-link :to="'/samples/archived'">
-              <el-button style="margin-right:5px;">
+              <el-button type="primary" plain style="margin-right:5px;" size="mini">
                 已归档样本
                 <span style="color:#0000FF">【{{usertotal.YGDTotal}}】</span>
               </el-button>
             </router-link>
             <router-link :to="'/donors/flupplan'">
-              <el-button style="margin-right:5px; margin-top:10px;" v-if="acc =='s5OVE'">
+              <el-button type="primary" plain style="margin-right:5px;" size="mini" v-if="acc =='s5OVE'">
                 待随访
                 <span style="color:#0000FF">【{{usertotal.SFTotal}}】</span>
               </el-button>
             </router-link>
             <router-link :to="'/biobank/sampleRK'">
-              <el-button style="margin-right:5px;" v-if="acc =='s5OVE' && permissions[permissionscode.rkapprove]">
+              <el-button type="primary" plain style="margin-right:5px;" size="mini" v-if="acc =='s5OVE' && permissions[permissionscode.rkapprove]">
                 待审核入库
                 <span style="color:#0000FF">【{{usertotal.RKTotal}}】</span>
               </el-button>
             </router-link>
             <router-link :to="'/biobank/sampleCK'">
-              <el-button style="margin-right:5px; margin-top:10px;" v-if="acc =='s5OVE' && permissions[permissionscode.ckapprove]">
+              <el-button type="primary" plain style="margin-right:5px;" size="mini" v-if="acc =='s5OVE' && permissions[permissionscode.ckapprove]">
                 待审核出库
                 <span style="color:#0000FF">【{{usertotal.CKTotal}}】</span>
               </el-button>

+ 0 - 223
src/dashoo.cn/frontend_web/src/pages/login3.vue

@@ -1,223 +0,0 @@
-<template>
-
-  <div style="height: calc(100vh); width: 100%; background-color:#FFFFFF" >
-    <img src="../assets/img/title_gongfang.png" style="height:60px; margin-top: 20px;margin-left: 100px;"  >
-    <div class="back-width">
-      <div class="login-body">
-        <section class="login">
-          <!--<header class="login-header">
-            <h1 style="text-align:center;margin-top:70px;margin-bottom:40px;"><router-link to="/"><img src="../assets/img/logo.png" style="height:80px;"></router-link></h1>
-            <el-alert v-if="error" :title="error.title" type="warning" :description="error.message" show-icon/>
-          </header>-->
-          <el-form class="login-form" auto-complete="off" :model="model" :rules="rules" ref="user" label-position="top">
-            <h2 class="heading">登录</h2>
-            <el-form-item label="用户名" prop="username">
-              <el-input type="text" v-model="model.username" placeholder="请输入用户名">
-                <el-select v-model="loginMode" slot="append" placeholder="登录类型" style="width: 110px;">
-                  <el-option label="普通账户" :value="1"></el-option>
-                  <el-option label="PTR认证" :value="2"></el-option>
-                </el-select>
-              </el-input>
-            </el-form-item>
-            <el-form-item label="密码" prop="password">
-              <el-input type="password" v-model="model.password" placeholder="请输入密码" @keyup.enter.native="login()" />
-            </el-form-item>
-            <el-button type="primary" :loading="loading" @click="login()">{{ loading ? '登录中...' : '登录' }}</el-button>
-          </el-form>
-
-        </section>
-      </div>
-    </div>
-    <div >
-      <footer class="login-footer" style="color:#A9A9A9">
-        ©大港油田信息中心 版权所有
-      </footer>
-    </div>
-  </div>
-</template>
-
-<script>
-  import Vue from 'vue'
-  import Component from 'class-component'
-  @Component({
-    data() {
-      // form model
-      // TODO: remove default values
-      const model = {
-        username: '',
-        password: ''
-      }
-
-      // form validate rules
-      const rules = {
-        username: [{
-          required: true,
-          message: '请输入用户名'
-        }],
-        password: [{
-          required: true,
-          message: '请输入密码'
-        }]
-      }
-
-      return {
-        loginMode: 1,
-        model: model,
-        rules: rules,
-        error: null,
-        loading: false
-      }
-    }
-  })
-  export default class Login extends Vue {
-    layout() {
-      return 'empty'
-    }
-    login() {
-      this.logging = true
-      this.$refs.user.validate(async (valid) => {
-        try {
-          if (valid) {
-            await this.$store.dispatch('auth/login', {
-              fields: {
-                username: this.model.username.replace(/(^\s*)|(\s*$)/g, ""),
-                password: this.model.password.replace(/(^\s*)|(\s*$)/g, "")
-              }
-            })
-            if (process.env.appclient == 'lims') {
-              this.$router.push(this.$route.query.page || '/')
-            } else if (process.env.appclient == 'cellbank') {
-              this.$router.push(this.$route.query.page || '/indexdqm')
-            } else {
-              this.$router.push(this.$route.query.page || '/')
-            }
-          }
-        } catch (e) {
-          // this.$message.warning(e.message)
-          this.$message.warning('账号或密码错误')
-        } finally {
-          this.logging = false
-        }
-      })
-    }
-    logout() {
-      this.$store.dispatch('logout')
-    }
-  }
-
-</script>
-
-<style lang="scss">
-  @import '../assets/styles/base/variables';
-
-  .back-width {
-    background-color: #2F79F6;
-    position: fixed;
-    margin: auto;
-    left: 0;
-    right: 0;
-    top: 88px;
-    width: 100%;
-    height: 550px;
-  }
-
-  .login-body {
-
-    background: url("../assets/img/tian.png") no-repeat left 50%;
-    font-family: 'Open Sans', sans-serif;
-    background-color: #2469E8;
-    background-size: cover;
-
-    /*background-size: cover;
-    -webkit-background-size: cover;
-    -moz-background-size: cover;
-    -o-background-size: cover;*/
-    /*min-height: 1050px;*/
-
-    position: absolute;
-
-    margin: auto;
-    left: -400px;
-    right: 0;
-    bottom: 0;
-    width: 899px;
-    height: 550px;
-    /*
-    top: 0;
-    right: 0;
-    bottom: 0;
-    left: 0;*/
-  }
-
-  .login-footer {
-    font-size: 10px;
-    clear: both;
-    display: block;
-    text-align: center;
-    margin: 0px auto;
-    position: absolute;
-    bottom: 10px;
-    width: 100%;
-
-    a {
-      color: $brand-color;
-    }
-  }
-
-  .login {
-    /*flex: 1;
-    width: 100%;*/
-    position: relative;
-    max-width: 22rem;
-    top: 60px;
-    left: 850px;
-    font-size: 0.875rem;
-    opacity: 0.9;
-
-    &-header {
-      margin-bottom: 1rem;
-
-      .brand {
-        margin: 4.5rem 0 3.5rem;
-        text-align: center;
-        letter-spacing: 0.125rem;
-
-        a {
-          margin: 0;
-          color: $brand-color;
-          font: 300 3rem sans-serif;
-
-          &:hover {
-            color: $brand-hover-color;
-            text-shadow: 0 0 1rem $brand-hover-color;
-          }
-        }
-      }
-    }
-
-    &-form {
-      margin-bottom: 2.5rem;
-      padding: 1.875rem 1.25rem;
-      background: $login-form-background;
-      color: $login-form-color;
-
-      .heading {
-        margin: 0 0 1rem;
-        font-weight: 400;
-        font-size: 1.5rem;
-      }
-
-      .el-button {
-        margin-top: 0.5rem;
-        width: 100%;
-      }
-    }
-
-
-  }
-
-  .nuxt-progress {
-    display: none;
-  }
-
-</style>