Browse Source

Merge branch 'dev' of ssh://10.10.100.21/source/saas-platform into dev

guq 7 years ago
parent
commit
f5fdd76352

+ 1 - 0
applications/commons/commons-dto/src/main/java/com/usoftchina/saas/commons/exception/BizExceptionCode.java

@@ -43,6 +43,7 @@ public enum BizExceptionCode implements BaseExceptionCode {
     NULL_DATA(23232,"无数据"),
 
     BOM_SAVE(79401, "产品编号+版本号已存在"),
+    BOM_CODE_REPEAT(74002, "组合件和子件不允许相同"),
     REPEAT_NAME(79501, "名称重复"),
     REPEAT_CODE(79502, "编号重复"),
     REPEAT_CUSTOMERCODE(79503, "客户名称或编号重复"),

+ 1 - 1
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/impl/MaxnumberServiceImpl.java

@@ -128,7 +128,7 @@ public class MaxnumberServiceImpl extends CommonBaseServiceImpl<MaxnumbersMapper
             if (count > 0) {
                 throw new BizException(BizExceptionCode.CODE_EXISTS);
             }
-            return  Result.success(rulecode);
+            return  Result.success(maxcode);
         }
         //与规则匹配的编号
         if (count > 0) {

+ 8 - 1
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/BomServiceImpl.java

@@ -50,11 +50,18 @@ public class BomServiceImpl extends CommonBaseServiceImpl<BomMapper, Bom> implem
         Bom bom = bomList.getMain();
         List<BomDetail> bomDetailList = bomList.getItems();
         DocBaseDTO docBaseDTO = null;
+        //校验组合件和子件不允许相同
+        if (bomDetailList.size() > 0){
+            for (BomDetail bomDetail : bomDetailList){
+                if (bom.getBo_mothercode().equals(bomDetail.getProductDTO().getPr_code())){
+                    throw new BizException(BizExceptionCode.BOM_CODE_REPEAT);
+                }
+            }
+        }
         if(id == 0){
             //校验编号和版本 是否已存在
             int count = getMapper().validCodeAndVersionWhenInsert(bom.getBo_mothercode(), bom.getBo_version(), companyId);
             if(count == 0){
-//                String code = pushMaxnubmer(bom.getBo_mothercode(), bom.getId());
                 String code = bom.getBo_mothercode();
                 bom.setBo_mothercode(code);
                 bom.setBo_statuscode(Status.ENABLE.name());

+ 9 - 0
applications/storage/storage-server/src/main/java/com/usoftchina/saas/storage/service/impl/MakeServiceImpl.java

@@ -98,6 +98,15 @@ public class MakeServiceImpl extends CommonBaseServiceImpl<MakeMapper, Make> imp
         List<MakeMaterial> makeMaterialList = makeListDTO.getItems();
         String code = pushMaxnubmer(make.getMa_code(), make.getId());
         DocBaseDTO docBaseDTO = null;
+        //校验组合件和子件不允许相同
+        if (makeMaterialList.size() > 0){
+            for (MakeMaterial makeMaterial : makeMaterialList){
+                if (make.getMa_prodcode().equals(makeMaterial.getMm_prodcode())){
+                    throw new BizException(BizExceptionCode.BOM_CODE_REPEAT);
+                }
+            }
+        }
+
         if(make.getId() == 0){
             //保存主表
             make.setCompanyId(BaseContextHolder.getCompanyId());

+ 9 - 0
base-servers/account/account-dto/src/main/java/com/usoftchina/saas/account/dto/CompanyRegDTO.java

@@ -25,6 +25,15 @@ public class CompanyRegDTO implements Serializable{
     private String fax;
     private String signet;      //电子章
     private String type;        //所属行业
+    private String dcName;      //数据中心
+
+    public String getDcName() {
+        return dcName;
+    }
+
+    public void setDcName(String dcName) {
+        this.dcName = dcName;
+    }
 
     public String getType() {
         return type;

+ 6 - 5
frontend/saas-portal-web/src/components/conenter/addenterprise.vue

@@ -48,7 +48,7 @@
                             <span class="qy-biaoti left"><span class="xingxing">*</span>公司地址</span>
                             <div class="addbiaoqian">
                                 <!-- <v-distpicker @province= 'qyprovince' @city= 'qycity' @area= 'qyarea'></v-distpicker> -->
-                                <v-distpicker @selected= 'selected' province="广东省" city="广州市" area="荔湾区" placeholders= '{}'></v-distpicker>
+                                <v-distpicker @selected= 'selected' province="广东省" city="广州市" area="荔湾区" :placeholders= 'placeholder'></v-distpicker>
                                 <input ref="address" @change="address" :disabled="disabled" class="qy-xiangxi" type="text" placeholder="输入企业详细地址">
                                 
                             </div>
@@ -104,7 +104,7 @@ import { setTimeout } from 'timers';
                 isemail: true,//验证邮箱
                 disabled: true,
                 isadd: false,//添加成功弹窗
-                placeholder:{province:"", city:"", area:""}
+                placeholder:{province:"", city:"", area:""}
             }
         },
         components:{
@@ -247,15 +247,16 @@ import { setTimeout } from 'timers';
                             .then(res=>{
                                 let id = res.data.data;
                                 let logoUrl = null;
-                                let name = qyname;
-                                let addenterprise = {'id':id, 'logoUrl': logoUrl, 'name': name};
+                                let addenterprise = {'id':id, 'logoUrl': logoUrl, 'name': qyname};
                                 let session = JSON.parse(window.localStorage.getItem('app-state-session'));
                                 session.account.companies.push(addenterprise);
+                                session.account.realname = name;
                                 Session.set(session);
                                 this.isadd = true;
                                 setTimeout(()=>{
                                     document.documentElement.scrollTop = 0;
-                                    this.$router.push({name:'company'})
+                                    // this.$router.push({name:'company'})
+                                    this.$router.push({path: '/enterprise'})
                                 },1000)
                             })
                             this.$refs.tjtishi.innerHTML = '';

+ 47 - 21
frontend/saas-portal-web/src/components/conenter/company.vue

@@ -56,32 +56,44 @@
       </div>
     </div>
 
-        <div class="gs-qiyebox" ref="qiyebox" :class="isheigh ? 'heigh' : ''">
+        <div class="gs-qiyebox over" ref="qiyebox" :class="isheigh ? 'heigh' : ''">
+            <div class="gs-xiangqing dotted">
+                <router-link to="/addenterprise">
+                    <div class="gs-tianja" @click= "addEnterprise">
+                        <!-- <div class="gs-tj"></div> -->
+                        <img src="/static/img/Fill 1.png" alt="">
+                        <p>添加企业</p>
+                    </div>
+                </router-link>
+            </div>
             <!-- 点击查看企业详情 -->
-            <div v-for="(d , i) in arr " :key="i" class="gs-xiangqing xs">
-                <div class="left gs-xqleft" @click= "getEnterpriseInfo(d)">
-                    <div class="gs-lefttext">
-                        <p class="gs-qynema"><span>企业名称:</span>{{d.name}}</p>
-                        <p v-if= "d.saas_" ><span>saas服务管理员:</span>{{d.admin}}</p>
+            <div v-for="(d , i) in arr " :key="i" class="gs-xiangqing">
+                <div class="gs-morentop" :class= "{gsqiye:nowindex == (i+1)}">
+                    <span v-if = "d.default_" class="gs-btn2 xs">取消默认</span>
+                    <span v-else @click="showDefaultWin(i)" class="gs-btn2 xs">设为默认</span>
+                </div>
+                <!-- 上 -->
+                <div class="gs-shang" @click.stop @mousemove="setismoren">
+                    <span @click="setmoren(i)" class="xs">设置</span>
+                    <img v-if = "d.default_" class="gs-morenimg" src="/static/img/moren2x.png" alt="">
+                </div>
+                <!-- 中 -->
+                <div class="gs-xqleft" >
+                    <p class="gs-qynema xs" @click= "getEnterpriseInfo(d)">{{d.name}}</p>
+                </div>
+                <!-- 下 -->
+                <div class="gs-xqright over">
+                    <div v-if= "d.saas_" class="gs-xqright-left left">
+                        <p><span>saas管理员:</span>{{d.admin}}</p>
+                        <p><span>联系方式:</span>{{d.adminMobile}}</p>
                         <p v-if= "d.time"><span>开通日期:</span>{{d.time}}</p>
                     </div>
-                </div>
-                <div class="right gs-xqright">
-                    <div class="gs-border">
+                    <div class="gs-border gs-xqright-right right">
                         <span v-if= "d.saas_" class="gs-btn1 dianji" @click="selectServe(d.id)">进入服务</span>
                         <span v-else @click="showOpenServeWin(d.id , i)" class="gs-btn1 kaitong xs">开通服务</span>
                     </div>
-                    <div>
-                        <span v-if = "d.default_" class="gs-btn2 gs-btn3">默认企业</span>
-                        <span v-else @click="showDefaultWin(i)" class="gs-btn2 xs">设为默认</span>
-                    </div>
                 </div>
             </div>
-            <div class="gs-xiangqing dotted">
-                <p class="gs-tianja">
-                    <span @click= "addEnterprise"><router-link to="/addenterprise">+添加企业</router-link></span>
-                </p>
-            </div>
         </div>
       </div>
 </template>
@@ -105,12 +117,16 @@
                 arr: [],//企业列表信息
                 isheigh:false,//是否添加默认高度
                 admin: '',
-                adminMobile: ''
+                adminMobile: '',
+                ismoren:true,
             }
         },
         computed :{
             setTokenPage() {
                 return this.$url.web + '/set-token.html'
+            },
+            nowindex() {
+                return this.$store.state.ismoren
             }
         },
         watch:{
@@ -152,7 +168,6 @@
                         }
                     }
                     this.$store.commit('Loginfalse')
-                    this.$store.state.email = res.data.data.spaces[0].adminEmail
                 })
                 .catch(err=>{
                     // console.log("请求失败",err)
@@ -245,7 +260,6 @@
                 let uu = this.arr[i].uu;
                 let company = {'name':qyname,'address':address};
                 let account = {'realname':name,'email':email,'mobile':mobile, 'uu':uu}
-                // let id = this.saasid;
                 this.$ajax({
                     url: this.$url.api+"/api/account/accountCenter/companyAccount/save",
                     method: 'post',
@@ -306,6 +320,18 @@
                 this.isNoopen = false;
                 this.isokopensaas = false
             },
+            // 弹出设置
+            setmoren(i){
+                if (this.ismoren) {
+                    this.$store.state.ismoren = i+1
+                } else {
+                    this.$store.state.ismoren = ''
+                }
+                this.ismoren = !this.ismoren
+            },
+            setismoren(){
+                this.ismoren = true
+            },
             //没有内容也要有一定的高度
             boxheight(){
                 let H = this.$refs.qiyebox.offsetHeight;

+ 2 - 4
frontend/saas-portal-web/src/components/conenter/details.vue

@@ -162,10 +162,9 @@
             // 保存修改
             baocunxiugai(){
                 let qyindustry = this.$refs.qyindustry.value;//所属行业
-                if (this.isemail && qyindustry!='') {
+                if (this.isemail) {
                     let email = this.$refs.email.value;
                     let qyname = this.content.name;//公司名字
-                    // let qyindustry = this.$refs.qyindustry.value;//所属行业
                     let address = this.content.address;//公司详细地址
                     let companyId = this.content.id;
                     let name = this.content.realname;//名字
@@ -197,7 +196,7 @@
                         // console.log("请求失败",err)
                     })
                 } else {
-                    this.$refs.Tips.innerHTML= "请填写正确的邮箱或选择行业"
+                    this.$refs.Tips.innerHTML= "请填写正确的邮箱"
                     // this.isTipsmail = true;
                     setTimeout(()=>{
                         this.$refs.Tips.innerHTML= ""
@@ -206,7 +205,6 @@
             },
             //返回
             gobick(){
-                // this.$router.go(-1) 
                 this.$router.push({name:'company'});
             }
         }

+ 120 - 13
frontend/saas-portal-web/src/components/conenter/enterprise.vue

@@ -1,5 +1,5 @@
 <template>
-    <div class="div">
+    <div class="div" @click="onshezhi">
         <div id="navigation" class="navbar-inverse navbar-fixed-top animated-header">
         <div class="container">
             <div class="navbar-header">
@@ -19,10 +19,10 @@
                 <ul id="nav" class="nav navbar-nav menu">
                     <li><router-link to="/home"><a href="#"><span style="color: white">首页</span></a></router-link></li>
                     <li><a href="https://uas.usoftchina.com/about" target="_blank"><span>关于我们</span></a></li>
-                    <li style="margin-left:30px;    margin-top: 13px;    cursor: pointer;">
+                    <li style="margin-left:30px;margin-top: 13px;cursor: pointer;">
                         <span style="color:#fff;font-size: 16px;">
                             <img style="width: 20px;" src="/static/img/assets/denglu3x.png" alt="">
-                            {{mytoken.realname}}
+                            {{mytoken.realname || mytoken.username}}
                         </span>
                         <span style="color:#fff;" @click="loginout">【退出】</span>
                     </li>
@@ -48,7 +48,7 @@
                 </div>
     <!-- 个人信息------------------------------------------------------------------- -->
                 <div :class= "{gsqiye:nowindex == 1}">
-                    <div class="over gr-worp" style="margin-bottom: 30px;">
+                    <div v-if="ismodifyname" class="over gr-worp" style="margin-bottom: 30px;">
                         <div class="left gr-left">
                             <img src="/static/img/qiye/yonghu@2x.png" alt="">
                         </div>
@@ -57,7 +57,7 @@
                                 <li>
                                     <span>姓名</span>
                                     <span>{{mytoken.realname}}</span>
-                                    <!-- <input type="text" :value="mytoken.realname"> -->
+                                    <button class="modifyname dianji" @click="modify">修改</button>
                                 </li>
                                 <li>
                                     <span>UU号</span><span>{{mytoken.uu}}</span>
@@ -71,6 +71,34 @@
                             </ul>
                         </div>
                     </div>
+                    <!-- 修改页面 -->
+                    <div v-else class="over gr-worp" style="margin-bottom: 30px;">
+                        <div class="left gr-left">
+                            <img src="/static/img/qiye/yonghu@2x.png" alt="">
+                        </div>
+                        <div class="left gr-right" style="margin-bottom: 30px;">
+                            <ul>
+                                <li>
+                                    <span><span class="xinghao" style="width:5px">*</span>姓名</span>
+                                    <input @change="regname" class="realname" type="text" ref="realname" :value="mytoken.realname">
+                                    <p class="usname" ref="usname"></p>
+                                </li>
+                                <li>
+                                    <span>UU号</span><span>{{mytoken.uu}}</span>
+                                </li>
+                                <li>
+                                    <span>邮箱</span><span>{{mytoken.email}}</span>
+                                </li>
+                                <li>
+                                    <span>手机号</span><span>{{mytoken.mobile}}</span>
+                                </li>
+                                <li>
+                                    <button class="baocun dianji" @click="Preservation">保存</button>
+                                    <button class="qy-quxiao quxiao" @click="cancel">取消</button>
+                                </li>
+                            </ul>
+                        </div>
+                    </div>
                 </div>
     <!-- 安全信息----------------------------------------------------------------------------- -->
 
@@ -106,6 +134,9 @@ import { setTimeout } from 'timers';
                 tianjiaqiye: true,//添加企业切换
                 mytoken: JSON.parse(localStorage.getItem('app-state-session')).account,//本地储存的用户信息
                 mobile: null,
+                ismodifyname:true,
+                isname:true,//姓名验证
+                reg: new RegExp(/[\@\#\$\%\&\*!\¥]/),//非法字符
                 tab: [
                     {name: '企业信息'},
                     {name: '个人信息'},
@@ -142,17 +173,93 @@ import { setTimeout } from 'timers';
             //修改手机号
             changphone(){
                 window.location.href = this.$url.sso+'/validation/phoneValidation?returnURL='+this.$url.web+'&appId=sp'
-            }
+            },
+            //修改姓名
+            modify(){
+                this.ismodifyname = false
+            },
+            //取消修改姓名
+            cancel(){
+                this.ismodifyname = true
+            },
+            regname(){
+                let name = this.$refs.realname.value.replace(/\s+/g, "");
+                if (name == '') {
+                    this.$refs.usname.innerHTML = '个人姓名不能为空'
+                    this.isname = false
+                } else {
+                    this.isname = true
+                    if (this.reg.test(name)) {
+                        this.$refs.usname.innerHTML = '不能包含非法字符'
+                        this.isname = false
+                    } else {
+                        this.$refs.usname.innerHTML = ''
+                        this.isname = true
+                    }
+                }
+            },
+            // 保存修改姓名
+            Preservation(){
+                if (this.isname) {
+                    let name = this.$refs.realname.value.replace(/\s+/g, "");
+                    console.log(name)
+                }
+            },
+            onshezhi(){
+                this.$store.state.ismoren = ''
+            },
         },
     }
 </script>
 
 <style scoped>
-    .div {
-        padding-top: 100px;
-        background: #FDFDFD;
-    }
-    .gsqiye div:last-child {
-        margin-bottom: 100px;
-    }
+.div {
+    padding-top: 100px;
+    background: #FDFDFD;
+}
+.gsqiye div:last-child {
+    margin-bottom: 100px;
+}
+.modifyname {
+    margin-left: 80px;
+    font-family: PingFangSC-Regular;
+    font-size: 14px;
+    color: #FFFFFF;
+    letter-spacing: 0.25px;
+    text-align: center;
+    padding: 5px 20px;
+    background: #1E88F5;
+    border-radius: 2px;
+    border: 0
+}
+.baocun {
+    font-family: PingFangSC-Regular;
+    font-size: 14px;
+    color: #FFFFFF;
+    letter-spacing: 0.25px;
+    text-align: center;
+    padding: 5px 26px;
+    background: #1E88F5;
+    border-radius: 2px;
+    border: 0
+}
+.quxiao {
+    padding: 5px 26px;
+    margin-left: 30px
+}
+.realname {
+    margin-left: -5px;
+    padding-left: 5px;
+}
+.usname {
+    height: 0px;
+    margin-left: 85px;
+    color: red;
+    font-size: 12px;
+}
+.xinghao {
+    float: left;
+    margin-left: -10px;
+    color: red;
+}
 </style>

+ 3 - 2
frontend/saas-portal-web/src/components/conenter/home.vue

@@ -34,7 +34,7 @@
 								<span id="user-info">{{account.realname || account.username}}</span>
 							</span>
               <span @click="loginout">【退出】</span>    |
-              <router-link to="/enterprise"><a href="#"><span style="color: white">账户中心</span></a></router-link>
+              <router-link to="/enterprise"><a><span @click="home" style="color: white">账户中心</span></a></router-link>
             </li>
           </ul>
         </div>
@@ -315,8 +315,9 @@
           Session.set(session)
           const frame = window.frames[window.frames.length - 1]
           window.addEventListener('message', () => {
-           if(me.isLogin){
+           if(me.isLogin || me.isRegister){
             me.isLogin = false
+            me.isRegister = false
             if (!account.companyId) {
               // 添加企业
               me.$router.push({path: '/enterprise'})

+ 13 - 14
frontend/saas-portal-web/src/components/footer/footer.vue

@@ -11,28 +11,27 @@
 					</div>
 					<div class="link">
 						<ul>
-							<li><span>常用链接</span></li>
-							<li><a href="https://uas.usoftchina.com/" target="_blank">UAS官网</a></li>
-							<li><a href="https://www.usoftchina.com/" target="_blank">U软云</a></li>
-							<li><a href="http://www.yitoa.com/" target="_blank">英唐官网</a></li>
+							<li><span>产品</span></li>
+							<li><a href="#">U企云服</a></li>
+							<li><a href="https://mall.usoftchina.com/" target="_blank">U软商城</a></li>
+							<li><a href="https://fin.yitoa-fintech.com/" target="_blank">U智融</a></li>
+							<li><a href="https://zb.usoftchina.com/" target="_blank">闯客网</a></li>
 						</ul>
 						<ul>
 							<li><span>帮助中心</span></li>
 							<li><a @click="problem">常见问题</a></li>
-							<li><a href="#">操作手册</a></li>
+							<li><a class="no-link">操作手册</a></li>
 						</ul>
 						<ul>
-							<li><span>公司</span></li>
-							<li><a href="https://uas.usoftchina.com/about" target="_blank">关于我们</a></li>
-							<li><a >企业文化</a></li>
-							<li><a >联系我们</a></li>
+							<li><span>常用链接</span></li>
+							<li><a href="https://uas.usoftchina.com/" target="_blank">UAS官网</a></li>
+							<li><a href="https://www.usoftchina.com/" target="_blank">优软云</a></li>
+							<li><a href="http://www.yitoa.com/" target="_blank">英唐官网</a></li>
 						</ul>
 						<ul>
-							<li><span>产品</span></li>
-							<li><a href="#">U企云服</a></li>
-							<li><a href="https://mall.usoftchina.com/" target="_blank">优软商城</a></li>
-							<li><a href="https://fin.yitoa-fintech.com/" target="_blank">优智融</a></li>
-							<li><a href="https://zb.usoftchina.com/" target="_blank">闯客网</a></li>
+							<li><span>公司</span></li>
+							<li><a href="https://uas.usoftchina.com/about" target="_blank">关于我们</a></li>
+							<li><a class="no-link">联系我们</a></li>
 						</ul>
 					</div>
 					

+ 1 - 0
frontend/saas-portal-web/src/pages/index/index.vue

@@ -36,6 +36,7 @@ export default {
   bottom: 0;
   background: rgba(0, 0, 0, 0.7);
   text-align: center;
+  z-index: 990;
 }
 .loadingtxt {
   position: absolute;

+ 1 - 1
frontend/saas-portal-web/src/store/index.js

@@ -4,10 +4,10 @@ Vue.use(Vuex)
 
 export default new Vuex.Store({
     state:{
-        email:'',
         isAutoLogin: false,
         isproblem: '',//常见问题
         isloading:false,
+        ismoren:''
     },
     mutations:{
          Logintrue(state) {

+ 58 - 39
frontend/saas-portal-web/static/css/gongsi.css

@@ -101,88 +101,107 @@
     display: block !important;
     margin-top: 70px;
 }
+.gs-qiyebox {
+    width: 150%;
+    margin-left: -22%;
+}
 .gs-xiangqing {
-    height: 112px;
+    height: 200px;
     background: #FFFFFF;
     border: 1px solid rgba(30,136,245,0.32);
     box-shadow: 0 20px 60px 8px #F4F8FC;
     border-radius: 4px;
     overflow: hidden;
-    margin-bottom: 24px;
+    width: 22%;
+    float: left;
+    margin: 0px 27px 27px 0px;
 }
 .gs-qynema {
     font-weight: 600;
+    color: #243A52;
+    letter-spacing: 0;
 }
 .dotted {
     border: 1px dashed rgba(30,136,245,0.32);
-    line-height: 112px;
+    text-align: center;
+    position: relative;
 }
 .gs-tianja {
-    padding: 0 80px;
     font-family: PingFangSC-Medium;
     color: #BDBEBE;
     letter-spacing: 0.25px;
+    position: absolute;
+    top: 50%;
+    left: 50%;
+    transform: translate(-50%, -50%);
 }
-.gs-tianja span:hover {
-    border: 1px dashed #ccc;
-    padding: 6px 20px;
-    cursor:pointer;
-}
-.gs-xqleft {
+.gs-tianja img {
     width: 70%;
-    height: 100%;
+}
+.gs-shang {
+    height: 30%;
+    padding: 10px;
     position: relative;
 }
-.gs-lefttext {
+.gs-morenimg {
+    width: 20%;
     position: absolute;
-    top: 50%;
-    left: 50%;
-    width: 70%;
-    margin-left: 30%;
-    height: 50%;
-    transform: translate(-100%,-50%);
+    top: 0;
+    right: 0;
+}
+.gs-xqleft {
+    height: 30%;
+    position: relative;
+    padding: 0px 10px;
 }
 .gs-xqright {
-    width: 30%;
-    height: 100%;
-    overflow: hidden;
+    height: 40%;
+    background: #F4F9FE;
+    padding: 10px;
 }
 .gs-xqright div {
-    float: left;
-    width: 50%;
-    text-align: center;
-    line-height: 90px;
-    margin-top: 10px;
+    text-align: left;
+}
+.gs-xqright div p{
+    font-size: 12px;
+    color: #677897;
+    letter-spacing: 0;
 }
 .gs-border {
-    border-right: 1px solid #B7D9FB;
+    margin-top: 8%;
+}
+.gs-morentop {
+    position: absolute;
+    margin-top: -27px;
+    display: none;
 }
 .gs-btn1 {
-    padding: 5px 20px;
-    background: #1E88F5;
-    border-radius: 2px;
+    padding: 5px;
+    background: #4EC66B;;
+    border-radius: 4px;
     color: white;
 }
 .kaitong {
-    background: #F2F9FF;
-    border: 1px solid #1E88F5;
-    border-radius: 2px;
-    color: #1E88F5;
+    background: #1E88F5;
+    border-radius: 4px;
+    color: white;
 }
 .gs-btn2 {
     font-family: PingFangSC-Regular;
     font-size: 14px;
-    padding: 5px 20px;
+    padding: 2px 8px;
     color: #1E88F5;
+    background: #F8FBFF;
     border: 1px solid #1E88F5;
-    border-radius: 2px;
-    letter-spacing: 0.25px;
+    border-radius: 4px;
 }
-.gs-btn3 {
-    border: 0
+.gs-btn2:hover {
+    color: #ffffff;
+    background: #1E88F5;
 }
 
 
+
 /* 添加企业信息-------------------------------------------------------- */
 .qy-quxiao {
     background: #FFFFFF;

+ 6 - 30
frontend/saas-portal-web/static/css/main.css

@@ -41,7 +41,7 @@ p {
     font-size: 15px;
 }
 main > section {
-    padding: 70px 0;
+    /* padding: 70px 0; */
 }
 
 .btn {
@@ -330,7 +330,8 @@ main > section {
 
 .footer{
     width: 100%;
-    background: #383838;
+    background-image: url(../img/footer2x.png);
+    background-size: 100%;
 }
 .db-text {
     background: white;
@@ -373,7 +374,7 @@ main > section {
 }
 .footer-section ul>li:hover a{
     text-decoration: underline ;
-    color: #e41f2b;
+    color: #1E88F5;
 }
 .footer-section ul>li:hover a.no-link{
     text-decoration: none;
@@ -433,43 +434,18 @@ main > section {
 
 .friend-link{
     height: 100px;
-    background: #000;
+    background: #14152D;
     width: 100%;
     line-height: 100px;
     text-align: center;
 }
 .friend-link span {
-    opacity: 0.56;
     font-family: PingFangSC-Regular;
     font-size: 16px;
-    color: #FFFFFF;
+    color: #7C93AD;
     letter-spacing: 0;
     text-align: center;
 }
-.friend-link ul{
-    overflow: hidden;
-    list-style: none ;
-    width: 80%;
-    margin: 0 auto;
-    padding: 0 15px;
-}
-.friend-link ul li{
-    float: left;
-}
-.friend-link ul li span{
-    font-size: 14px;
-    color: #FFFFFF;
-}
-.friend-link ul li a{
-    display: inline-block;
-    margin-right: 20px;
-    font-size: 14px;
-    color: #FFFFFF;
-}
-.friend-link ul li a:hover{
-    text-decoration: underline ;
-    color: #e41f2b;
-}
 
 .section-title p {
     color: #444;

BIN
frontend/saas-portal-web/static/img/Fill 1.png


BIN
frontend/saas-portal-web/static/img/footer2x.png


BIN
frontend/saas-portal-web/static/img/moren2x.png