Browse Source

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

hy 7 years ago
parent
commit
a3c9383a9c
50 changed files with 240 additions and 158 deletions
  1. 3 0
      applications/commons/commons-dto/src/main/java/com/usoftchina/saas/commons/po/BillCodeSeq.java
  2. 3 0
      applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/impl/ConfigsServiceImpl.java
  3. 7 4
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/ProductServiceImpl.java
  4. 4 3
      applications/document/document-server/src/main/resources/mapper/BomMapper.xml
  5. 1 1
      applications/document/document-server/src/main/resources/mapper/ProductMapper.xml
  6. 27 0
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/po/AccountDetailsView.java
  7. 12 0
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/po/CustomerCheckView.java
  8. 4 1
      applications/money/money-server/src/main/resources/mapper/AccountDetailsViewMapper.xml
  9. 1 1
      applications/money/money-server/src/main/resources/mapper/CustmonthMapper.xml
  10. 2 0
      applications/money/money-server/src/main/resources/mapper/CustomerCheckViewMapper.xml
  11. 1 1
      applications/money/money-server/src/main/resources/mapper/VendmonthMapper.xml
  12. 1 1
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseMapper.java
  13. 6 2
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java
  14. 4 0
      applications/purchase/purchase-server/src/main/resources/mapper/PurchaseMapper.xml
  15. 4 0
      applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/po/report/SaleProfitView.java
  16. 2 0
      applications/sale/sale-server/src/main/resources/mapper/SaleProfitViewMapper.xml
  17. 1 0
      applications/storage/storage-dto/src/main/java/com/usoftchina/saas/storage/po/Make.java
  18. 3 0
      applications/storage/storage-dto/src/main/java/com/usoftchina/saas/storage/po/report/ProdiodetailView.java
  19. 12 4
      applications/storage/storage-server/src/main/resources/mapper/MakeMapper.xml
  20. 2 0
      applications/storage/storage-server/src/main/resources/mapper/ProdInOutReportMapper.xml
  21. 36 27
      frontend/saas-portal-web/src/components/conenter/addenterprise.vue
  22. 7 7
      frontend/saas-portal-web/src/components/conenter/company.vue
  23. 5 2
      frontend/saas-portal-web/src/components/conenter/details.vue
  24. 23 19
      frontend/saas-portal-web/src/components/conenter/enterprise.vue
  25. 1 3
      frontend/saas-portal-web/src/components/conenter/home.vue
  26. 1 1
      frontend/saas-portal-web/src/pages/index/index.vue
  27. 1 1
      frontend/saas-web/app/view/core/form/field/ConDateField.js
  28. 1 2
      frontend/saas-web/app/view/core/query/QueryGridPanel.scss
  29. 1 1
      frontend/saas-web/app/view/core/report/ReportPanel.js
  30. 1 1
      frontend/saas-web/app/view/main/Main.js
  31. 14 7
      frontend/saas-web/app/view/main/Main.scss
  32. 1 1
      frontend/saas-web/app/view/main/MainController.js
  33. 7 8
      frontend/saas-web/app/view/main/Navigation.js
  34. 27 9
      frontend/saas-web/app/view/main/Navigation.scss
  35. 8 8
      frontend/saas-web/app/view/money/report/AccountDetails.js
  36. 6 7
      frontend/saas-web/app/view/purchase/report/PurchasePay.js
  37. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-中粗-简.ttf
  38. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-中粗-繁.ttf
  39. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-中黑-简.ttf
  40. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-中黑-繁.ttf
  41. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-准-简.ttf
  42. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-准-繁.ttf
  43. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-极细-简.ttf
  44. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-极细-繁.ttf
  45. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-纤细-简.ttf
  46. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-纤细-繁.ttf
  47. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-细-简.ttf
  48. BIN
      frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-细-繁.ttf
  49. 0 1
      frontend/saas-web/packages/local/theme-default/sass/etc/all.scss
  50. 0 35
      frontend/saas-web/packages/local/theme-default/sass/etc/fontset.scss

+ 3 - 0
applications/commons/commons-dto/src/main/java/com/usoftchina/saas/commons/po/BillCodeSeq.java

@@ -50,10 +50,13 @@ public enum  BillCodeSeq {
 
     FUNDTRANSFER ("资金转存","FundTransfer"),
 
+    CONFIGS("参数配置", "Configs"),
+
     ENDPRODUCT ("结账", "ENDPRODUCT"),
 
     UNENDPRODUCT ("反结账", "UNENDPRODUCT"),
 
+
     BOM("BOM资料", "Bom");
 
 

+ 3 - 0
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/impl/ConfigsServiceImpl.java

@@ -97,5 +97,8 @@ public class ConfigsServiceImpl implements ConfigsService{
             con.setCompanyId(BaseContextHolder.getCompanyId());
             configsMapper.updateByCodeSelective(con);
         }
+        DocBaseDTO baseDTO = new DocBaseDTO(null, "Configs", "Configs");
+        //日志记录
+        messageLogService.update(baseDTO);
     }
 }

+ 7 - 4
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/ProductServiceImpl.java

@@ -154,9 +154,12 @@ public class ProductServiceImpl extends CommonBaseServiceImpl<ProductMapper, Pro
                 //找到原始单据,反过账并删除
                 String inoutCode = getMapper().selectProdIOCode(product.getPr_code(), BaseContextHolder.getCompanyId(), "库存初始化");
                 if (!StringUtils.isEmpty(inoutCode)) {
-                    post(inoutCode, "反过账");
-                    getMapper().deleteProdIODetailByCode(inoutCode, BaseContextHolder.getCompanyId());
-                    getMapper().deleteProdIOByCode(inoutCode, BaseContextHolder.getCompanyId());
+                    String[] inoutArr = inoutCode.split(",");
+                    for (int i = 0;i<inoutArr.length;i++){
+                        post(inoutArr[i], "反过账");
+                        getMapper().deleteProdIODetailByCode(inoutArr[i], BaseContextHolder.getCompanyId());
+                        getMapper().deleteProdIOByCode(inoutArr[i], BaseContextHolder.getCompanyId());
+                    }
                 }
                 //此种情况不可能发生明细行数量,只会发生明细行数据修改/新增明细行
                 //a.更新明细行数据
@@ -774,6 +777,6 @@ public class ProductServiceImpl extends CommonBaseServiceImpl<ProductMapper, Pro
             }
             //billCode = maxnumberService.pushMaxnubmer(count, code, BillCodeSeq.PRODUCT.getCaller()).getData();
         }
-        return billCode;
+        return code;
     }
 }

+ 4 - 3
applications/document/document-server/src/main/resources/mapper/BomMapper.xml

@@ -28,13 +28,14 @@
   </resultMap>
   <sql id="Base_Column_List" >
     bo_id, bo_motherid, bo_mothercode, bo_mothername, bo_version, bo_status, bo_statuscode, 
-    companyId, updaterId,updaterName,updateTime, bo_text1,
-    bo_text2, bo_text3, bo_text4, bo_text5,creatorName,creatorId,createTime
+    bom.companyId,  bom.updaterId, bom.updaterName, bom.updateTime, bo_text1,
+    bo_text2, bo_text3, bo_text4, bo_text5, bom.creatorName, bom.creatorId, bom.createTime,
+    pr_spec,pr_brand,pr_orispeccode,pr_unit
   </sql>
   <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Long" >
     select 
     <include refid="Base_Column_List" />
-    from bom
+    from bom left join product on pr_code = bo_mothercode and bom.companyId = product.companyId
     where bo_id = #{id}
   </select>
   <delete id="deleteByPrimaryKey" parameterType="java.lang.Long" >

+ 1 - 1
applications/document/document-server/src/main/resources/mapper/ProductMapper.xml

@@ -907,7 +907,7 @@
         </foreach>
     </update>
     <select id="selectProdIOCode" resultType="java.lang.String">
-        SELECT PI_INOUTNO FROM PRODINOUT
+        SELECT group_concat(PI_INOUTNO) FROM PRODINOUT
         <where>
             <if test="code!=null">
                 AND PI_TEXT1 = #{code}

+ 27 - 0
applications/money/money-server/src/main/java/com/usoftchina/saas/money/po/AccountDetailsView.java

@@ -20,6 +20,33 @@ public class AccountDetailsView {
     private Double total;
     private Date date;
     private Long companyId;
+    private Double sl_orderamount;
+    private Double pbd_nowbalance;
+    private Date pb_date;
+
+    public Double getPbd_nowbalance() {
+        return pbd_nowbalance;
+    }
+
+    public void setPbd_nowbalance(Double pbd_nowbalance) {
+        this.pbd_nowbalance = pbd_nowbalance;
+    }
+
+    public Date getPb_date() {
+        return pb_date;
+    }
+
+    public void setPb_date(Date pb_date) {
+        this.pb_date = pb_date;
+    }
+
+    public Double getSl_orderamount() {
+        return sl_orderamount;
+    }
+
+    public void setSl_orderamount(Double sl_orderamount) {
+        this.sl_orderamount = sl_orderamount;
+    }
 
     public String getCu_name() {
         return cu_name;

+ 12 - 0
applications/money/money-server/src/main/java/com/usoftchina/saas/money/po/CustomerCheckView.java

@@ -37,6 +37,18 @@ public class CustomerCheckView {
 
     private Long companyId;
 
+    private String pr_brand;
+
+    private String pr_orispeccode;
+
+    public String getPr_brand(){return pr_brand;}
+
+    public void setPr_brand(String pr_brand){ this.pr_brand = pr_brand;}
+
+    public String getPr_orispeccode(){return pr_orispeccode;}
+
+    public void setPr_orispeccode(String pr_orispeccode){ this.pr_orispeccode = pr_orispeccode;}
+
     public Long getCompanyId() {
         return companyId;
     }

+ 4 - 1
applications/money/money-server/src/main/resources/mapper/AccountDetailsViewMapper.xml

@@ -12,7 +12,10 @@
     <result column="pb_code" property="pb_code" jdbcType="VARCHAR" />
     <result column="total" property="total" jdbcType="DOUBLE" />
     <result column="date" property="date" jdbcType="TIMESTAMP" />
+    <result column="sl_orderamount" property="sl_orderamount" jdbcType="DOUBLE" />
+    <result column="pb_date" property="pb_date" jdbcType="TIMESTAMP" />
     <result column="companyId" property="companyId" jdbcType="INTEGER" />
+    <result column="pbd_nowbalance" property="pbd_nowbalance" jdbcType="DOUBLE" />
   </resultMap>
   <select id="selectByCondition" resultMap="BaseResultMap">
     select  *  from account_details_view
@@ -24,7 +27,7 @@
         and  companyId = #{companyId}
       </if>
     </where>
-    order by sl_code desc ,date desc
+    order by sl_code desc ,pb_date desc
   </select>
 
   <select id="selectCalculateFields" resultType="string">

+ 1 - 1
applications/money/money-server/src/main/resources/mapper/CustmonthMapper.xml

@@ -29,7 +29,7 @@
         ${con}
       </if>
       <if test="companyId != null">
-        and  companyId = #{companyId} and (cm_endamount +cm_nowamount+ cm_nowpreamount + cm_beginamount) != 0
+        and  companyId = #{companyId} and abs(cm_beginamount)+abs(cm_beginpreamount)+abs(cm_nowamount)+abs(cm_nowpreamount)>0
       </if>
     </where>
     order by cm_yearmonth desc,cm_custcode

+ 2 - 0
applications/money/money-server/src/main/resources/mapper/CustomerCheckViewMapper.xml

@@ -18,6 +18,8 @@
         <result column="pd_total" property="pd_total" jdbcType="DOUBLE" />
         <result column="pd_netprice" property="pd_netprice" jdbcType="DOUBLE" />
         <result column="pd_nettotal" property="pd_nettotal" jdbcType="DOUBLE" />
+        <result column="pr_brand" property="pr_brand" jdbcType="VARCHAR" />
+        <result column="pr_orispeccode" property="pr_orispeccode" jdbcType="VARCHAR" />
     </resultMap>
 
     <select id="selectByCondition" resultMap="BaseResultMap">

+ 1 - 1
applications/money/money-server/src/main/resources/mapper/VendmonthMapper.xml

@@ -29,7 +29,7 @@
         ${con}
       </if>
       <if test="companyId != null">
-        and  companyid = #{companyId} and (vm_endamount+ vm_nowamount+vm_nowpreamount+vm_beginamount) != 0
+        and  companyid = #{companyId} and abs(vm_beginamount)+abs(vm_beginpreamount)+abs(vm_nowamount)+abs(vm_nowpreamount)>0
       </if>
     </where>
     order by vm_yearmonth desc,vm_vendcode

+ 1 - 1
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseMapper.java

@@ -41,5 +41,5 @@ public interface PurchaseMapper extends CommonBaseMapper<Purchase>{
 
     Integer checkPurchaseRequiredField(Long id);
 
-
+    Integer checkClose(Long id);
 }

+ 6 - 2
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java

@@ -522,8 +522,12 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         }
         //检查最小包装数
         result.setMessage(purchasedetailMapper.checkzxbzs(id));
-       /* commonService.commonAudit("purchase", "pu_id=" + id, "pu_status",
-                "pu_statuscode", "pu_auditdate", "pu_auditman");*/
+        //检测单据是否关闭
+        Integer checkClose = purchaseMapper.checkClose(id);
+        if (count > 0) {
+            throw new BizException(BizExceptionCode.SALE_CLOSE.getCode(), String.format(BizExceptionCode.SALE_CLOSE.getMessage(),"审核"));
+        }
+
         Purchase purchase = new Purchase();
         //生成更新对象
         purchase.setId(id);

+ 4 - 0
applications/purchase/purchase-server/src/main/resources/mapper/PurchaseMapper.xml

@@ -463,4 +463,8 @@
     select count(1) from purchase where pu_id = #{id} and (pu_vendid is null or pu_delivery is null or pu_shipaddresscode is null)
   </select>
 
+  <select id="checkClose" parameterType="long" resultType="int">
+    select count(1) from purchase where pu_id = #{id} and PU_ACCEPTSTATUSCODE='CLOSE'
+  </select>
+
 </mapper>

+ 4 - 0
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/po/report/SaleProfitView.java

@@ -60,4 +60,8 @@ public class SaleProfitView {
     private Double pw_costprice;
 
     private Date pi_date;
+
+    private String pr_brand;
+
+    private String pr_orispeccode;
 }

+ 2 - 0
applications/sale/sale-server/src/main/resources/mapper/SaleProfitViewMapper.xml

@@ -27,6 +27,8 @@
     <result column="companyid" property="companyid" jdbcType="INTEGER" />
       <result column="pd_remark" property="pd_remark" jdbcType="VARCHAR" />
     <result column="pw_costprice" property="pw_costprice" jdbcType="DOUBLE" />
+    <result column="pr_orispeccode" property="pr_orispeccode" jdbcType="VARCHAR" />
+    <result column="pr_brand" property="pr_brand" jdbcType="VARCHAR" />
   </resultMap>
   <select id="selectByCondition" resultMap="BaseResultMap">
     select  *  from Sale_Profit_View

+ 1 - 0
applications/storage/storage-dto/src/main/java/com/usoftchina/saas/storage/po/Make.java

@@ -54,5 +54,6 @@ public class Make extends CommonBaseEntity implements Serializable {
 
     private Date ma_auditdate;
 
+    private String ma_prodorispec;
 
 }

+ 3 - 0
applications/storage/storage-dto/src/main/java/com/usoftchina/saas/storage/po/report/ProdiodetailView.java

@@ -32,4 +32,7 @@ public class ProdiodetailView implements Serializable{
 
     private String pd_whname;
 
+    private String pr_brand;
+    private String pr_orispeccode;
+
 }

+ 12 - 4
applications/storage/storage-server/src/main/resources/mapper/MakeMapper.xml

@@ -79,7 +79,7 @@
   <sql id="Base_Column_List" >
     ma_id, ma_code, ma_status, ma_statuscode, ma_type, ma_prodid, ma_prodcode, ma_proddetail, 
     ma_prodspec, ma_version, ma_produnit, ma_qty, ma_whid, ma_whcode, ma_whname,ma_price, ma_total,ma_auditman,ma_auditdate, companyId, updaterId,updaterName,updateTime,creatorid,creatorName,createtime, ma_text1,
-    ma_text2, ma_text3, ma_text4, ma_text5
+    ma_text2, ma_text3, ma_text4, ma_text5,ma_prodorispec
   </sql>
   <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Long" >
     select 
@@ -102,7 +102,7 @@
       ma_whid, ma_whcode, ma_whname, ma_price,
       ma_total, ma_auditman,ma_auditdate,companyId, updaterId,
       updateTime, ma_text1, ma_text2, 
-      ma_text3, ma_text4, ma_text5
+      ma_text3, ma_text4, ma_text5,ma_prodorispec
       )
     values (#{ma_code,jdbcType=VARCHAR}, #{ma_status,jdbcType=VARCHAR}, 
       #{ma_statuscode,jdbcType=VARCHAR}, #{ma_type,jdbcType=VARCHAR}, #{ma_prodid,jdbcType=INTEGER}, 
@@ -111,7 +111,7 @@
       #{ma_whid,jdbcType=INTEGER}, #{ma_whcode,jdbcType=VARCHAR}, #{ma_whname,jdbcType=VARCHAR}, #{ma_price,jdbcType=DOUBLE},
       #{ma_total,jdbcType=DOUBLE}, #{ma_auditman,jdbcType=VARCHAR},#{ma_auditdate.jdbcType=TIMESTAMP},#{companyId,jdbcType=INTEGER}, #{updaterId,jdbcType=INTEGER},
       #{updateTime,jdbcType=TIMESTAMP}, #{ma_text1,jdbcType=VARCHAR}, #{ma_text2,jdbcType=VARCHAR}, 
-      #{ma_text3,jdbcType=VARCHAR}, #{ma_text4,jdbcType=VARCHAR}, #{ma_text5,jdbcType=VARCHAR}
+      #{ma_text3,jdbcType=VARCHAR}, #{ma_text4,jdbcType=VARCHAR}, #{ma_text5,jdbcType=VARCHAR},#{ma_prodorispec,jdbcType=VARCHAR}
       )
   </insert>
   <insert id="insertSelective" parameterType="com.usoftchina.saas.storage.po.Make">
@@ -211,6 +211,9 @@
       <if test="updaterName != null">
         updaterName,
       </if>
+      <if test="ma_prodorispec != null">
+        ma_prodorispec,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
 
@@ -304,6 +307,9 @@
       <if test="updaterName != null">
         #{updaterName,jdbcType=VARCHAR},
       </if>
+      <if test="ma_prodorispec != null">
+        #{ma_prodorispec,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKeySelective" parameterType="com.usoftchina.saas.storage.po.Make" >
@@ -387,6 +393,7 @@
       <if test="ma_text5 != null" >
         ma_text5 = #{ma_text5,jdbcType=VARCHAR},
       </if>
+
     </set>
     where ma_id = #{id}
   </update>
@@ -417,7 +424,8 @@
       ma_text2 = #{ma_text2,jdbcType=VARCHAR},
       ma_text3 = #{ma_text3,jdbcType=VARCHAR},
       ma_text4 = #{ma_text4,jdbcType=VARCHAR},
-      ma_text5 = #{ma_text5,jdbcType=VARCHAR}
+      ma_text5 = #{ma_text5,jdbcType=VARCHAR},
+      ma_prodorispec = #{ma_prodorispec,jdbcType=VARCHAR}
     where ma_id = #{id}
   </update>
   <select id="getListDataByCondition" resultMap="BaseResultMap">

+ 2 - 0
applications/storage/storage-server/src/main/resources/mapper/ProdInOutReportMapper.xml

@@ -21,6 +21,8 @@
     <result column="pd_remark" jdbcType="VARCHAR" property="pd_remark" />
     <result column="companyid" jdbcType="INTEGER" property="companyid" />
     <result column="pd_whname" jdbcType="VARCHAR" property="pd_whname" />
+    <result column="pr_brand" jdbcType="VARCHAR" property="pr_brand" />
+    <result column="pr_orispeccode" jdbcType="VARCHAR" property="pr_orispeccode" />
   </resultMap>
 
 

+ 36 - 27
frontend/saas-portal-web/src/components/conenter/addenterprise.vue

@@ -8,7 +8,7 @@
             <div class="gs-worp qy-worp tj-up">
                 <div class="qy-title" style="position: relative;">
                     <ul class="over">
-                        <li class="left xs" v-for="(d, i) in tab" :key="i" :class= "{qyactive:nowindex == i}" @click="tabwith(i)">{{d.name}}</li>
+                        <li class="left xs" v-for="(d, i) in tab" :key="i" :class= "{qyactive:nowindex == i}" @click="tabwatch(i)">{{d.name}}</li>
                     </ul>
                 </div>
                 <div class="qy-conent" :class= "{showqiye:nowindex == 0}" style="padding-top: 60px;">
@@ -120,7 +120,7 @@ import { setTimeout } from 'timers';
                 // area:'',//区
                 qymingzi: false,//企业名是否注册
                 Email: '',
-                mytoken: JSON.parse(localStorage.getItem('app-state-session')),//本地储存的用户信息
+                mytoken: Session.get(),//本地储存的用户信息
                 reg: new RegExp(/[\@\#\$\%\&\*!\¥]/),//非法字符
                 regname:new RegExp(/[\@\#\$\%\&\*!\¥0-9]/),//非法字符加数字
                 isaddress: false,//公司地址验证
@@ -142,6 +142,7 @@ import { setTimeout } from 'timers';
                 isTestingname:false,
                 isregname:false,
                 companyId:null,
+                admin:null,
                 arr:[]
             }
         },
@@ -153,7 +154,7 @@ import { setTimeout } from 'timers';
             this.$refs.email.value = this.mytoken.account.email;
         },
         methods: {
-            tabwith(i){
+            tabwatch(i){
                 this.nowindex = i;
             },
             //取消添加企业
@@ -219,8 +220,11 @@ import { setTimeout } from 'timers';
                             this.islookup = true;   
                         } else if (res.data.success == false && res.data.message == '公司不存在') {
                             this.$refs.warningqyname.innerHTML = '<img style="width:14px" src="/static/img/warning.png" alt=""> 该企业不存在';
+                            this.islookup = false; 
                         } else {
                             this.$message.error('请求失败,请重试');
+                            this.islookup = false; 
+                            this.$refs.warningqyname.innerHTML = '<img style="width:14px" src="/static/img/warning.png" alt="">'
                         }
                     })
                 }
@@ -260,6 +264,7 @@ import { setTimeout } from 'timers';
             // 选择要加入的企业
             qylist(i){
                 this.companyId = this.arr[i].id,
+                this.admin = this.arr[i].admin,
                 this.newindex = i
             },
             //加入企业提交按钮
@@ -273,30 +278,34 @@ import { setTimeout } from 'timers';
                 } else if (!this.isregname) {
                     this.$message.error('姓名不能包含符号、数字等非法字符');
                 } else if (this.companyId){
-                    this.$ajax({
-                        url: this.$url.api+'/api/account/accountCenter/company/join',
-                        method:'POST',
-                        data:{
-                            username:username,
-                            accountId:this.mytoken.account.id,
-                            companyId:this.companyId,
-                        },
-                        headers:{
-                            "Authorization":token,
-                        }
-                    })
-                    .then(res=>{
-                        if (res.data.success) {
-                            this.$message.success('提交成功,待管理员批准加入');
-                            this.$store.state.ishongdian = true;//显示红点
-                            setTimeout(()=>{
-                                this.$router.push({name:'company'});
-                                document.documentElement.scrollTop = 0;
-                            },3000)
-                        } else {
-                            this.$message.error(res.data.message);
-                        }
-                    })
+                    if (this.admin == this.mytoken.account.realname) {
+                        this.$message.error('账号已在企业服务中,不能重复加入');
+                    } else {
+                        this.$ajax({
+                            url: this.$url.api+'/api/account/accountCenter/company/join',
+                            method:'POST',
+                            data:{
+                                username:username,
+                                accountId:this.mytoken.account.id,
+                                companyId:this.companyId,
+                            },
+                            headers:{
+                                "Authorization":token,
+                            }
+                        })
+                        .then(res=>{
+                            if (res.data.success) {
+                                this.$message.success('提交成功,待管理员批准加入');
+                                this.$store.state.ishongdian = true;//显示红点
+                                setTimeout(()=>{
+                                    this.$router.push({name:'company'});
+                                    document.documentElement.scrollTop = 0;
+                                },3000)
+                            } else {
+                                this.$message.error(res.data.message);
+                            }
+                        })
+                    }
                 } else {
                     this.$message.error('请选择要加入的企业');
                 }

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

@@ -100,7 +100,7 @@
                 </div>
             </div>
         </div>
-      </div>
+    </div>
 </template>
 
 <script>
@@ -118,7 +118,7 @@
                 ktsass: true,//开通saas
                 isDefault: true,//开通默认
                 isAutoLogin: this.$store.state.isAutoLogin,
-                mytoken: JSON.parse(localStorage.getItem('app-state-session')),//本地储存的用户信息
+                mytoken: Session.get(),//本地储存的用户信息
                 list: [],//企业列表信息
                 isheigh:false,//是否添加默认高度
                 admin: '',
@@ -138,7 +138,7 @@
             }
         },
         created(){
-            let mytoken = JSON.parse(localStorage.getItem('app-state-session'));
+            let mytoken = Session.get();
             let token = String(mytoken.token);
             //企业列表
             this.$ajax({
@@ -167,7 +167,7 @@
                                 enterprise.push(addenterprise)
                             }
                         };
-                        let session = JSON.parse(window.localStorage.getItem('app-state-session'));
+                        let session = Session.get();
                         if (enterprise.length != session.account.companies.length) {
                             session.account.companies = enterprise;
                             Session.set(session);
@@ -177,7 +177,7 @@
                         let token = res.data.data.token.token;
                         if (this.isAutoLogin) {
                             if (hasCompany) {
-                                let session=JSON.parse(localStorage.getItem('app-state-session'));
+                                let session = Session.get();
                                 session.account.companyId=companyId;
                                 session.span = session.timestamp - new Date().getTime();
                                 session.token=token;
@@ -260,7 +260,7 @@
                 })
                 .then(res=>{
                     let mytoken = res.data.data.token;
-                    let session=JSON.parse(localStorage.getItem('app-state-session'));
+                    let session = Session.get();
                     session.account.companyId=id;
                     session.span = session.timestamp - new Date().getTime();
                     session.token=mytoken;
@@ -346,8 +346,8 @@
             //查看企业详情
             getEnterpriseInfo(d){
                 document.documentElement.scrollTop = 0;
-                this.$router.push({path:'/details'});
                 window.sessionStorage.setItem('content',JSON.stringify(d))
+                this.$router.push({path:'/details'});
             },
              //添加企业
             addEnterprise(){

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

@@ -97,14 +97,14 @@
 </template>
 
 <script>
-
+import Session from '@/utils/session'
     export default {
         data(){
             return {
                 modify:true,
                 content: JSON.parse(window.sessionStorage.getItem("content")),
                 Email: '',
-                mytoken: JSON.parse(localStorage.getItem('app-state-session')),//本地储存的用户信息
+                mytoken: Session.get(),//本地储存的用户信息
                 isId: false,
                 isemail: true,//正则邮箱
                 ismodifyId: false
@@ -187,6 +187,9 @@
                         if (res.data.success) {
                             document.documentElement.scrollTop = 0;
                             this.modify = true;
+                            let session = Session.get();
+                            session.account.email = email;
+                            Session.set(session);
                             this.content.type = qyindustry;
                             this.content.adminEmail = email
                         };

+ 23 - 19
frontend/saas-portal-web/src/components/conenter/enterprise.vue

@@ -44,8 +44,9 @@
                 <div :class= "{gsqiye:nowindex == 0}"> 
                     
     <!-- 企业列表展示-------添加企业-------------企业详细信息展示 ---------------------------- -->
+                <!-- <keep-alive> -->
                     <router-view></router-view>
-
+                <!-- </keep-alive> -->
                 </div>
     <!-- 个人信息------------------------------------------------------------------- -->
                 <div :class= "{gsqiye:nowindex == 1}">
@@ -150,9 +151,10 @@
                         <div v-if="isnews" class="my-pagination">
                             <el-pagination
                                 background
+                                :page-size=size
                                 @current-change="handleCurrentChange"
                                 layout="prev, pager, next"
-                                :total= list>
+                                :total= listtotal>
                             </el-pagination>
                         </div>
                     </div>
@@ -170,7 +172,7 @@ import { setTimeout } from 'timers';
             return{
                 nowindex: 0,//tab切换
                 tianjiaqiye: true,//添加企业切换
-                mytoken: JSON.parse(localStorage.getItem('app-state-session')).account,//本地储存的用户信息
+                mytoken: Session.get().account,//本地储存的用户信息
                 mobile: null,
                 ismodifyname:true,
                 isname:true,//姓名验证
@@ -184,7 +186,8 @@ import { setTimeout } from 'timers';
                     {name: '消息'},
                 ],
                 arr: [],
-                list:1
+                listtotal:1,
+                size:10,//每页显示数量
             }
         },
         mounted(){
@@ -211,15 +214,15 @@ import { setTimeout } from 'timers';
         methods: {
             // tab切换
             tabswitch(index){
+                this.mytoken = Session.get().account;
                 if (index == 3) {
                     this.nowindex = 3;
-                    let mytoken = Session.get();
-                    let id = mytoken.account.id;
+                    let id = this.mytoken.id;
                     let param = {
                         type:'condition',
                         value:'creatorId='+id+''
                     }
-                    // tab切换到消息的时候执行
+                    // tab切换到消息的时候获取申请列表
                     this.$ajax({
                         url: this.$url.api+'/api/commons/remind/apply/list',
                         method:'GET',
@@ -227,18 +230,18 @@ import { setTimeout } from 'timers';
                         params: {
                             condition:JSON.stringify(param),
                             number:1,
-                            size:10
+                            size:this.size
                         },
                         headers:{
                             'Access-Control-Allow-Origin':'*',
-                            "Authorization":mytoken.token,
+                            "Authorization":Session.getToken(),
                             'Content-Type':'application/json;charset=UTF-8'
                         }
                     })
                     .then(res=>{
                         if (res.data.success) {
                             this.arr = res.data.data.list;
-                            this.list = res.data.data.total;
+                            this.listtotal = res.data.data.total;
                             this.$store.state.ishongdian = false;
                         }
                     })
@@ -247,9 +250,6 @@ import { setTimeout } from 'timers';
                 }
                 
             },
-            setTurnHome(){
-                this.$parent.turnHome = true
-            },
             //重新加入
             Rejoin(i){
                 this.$ajax({
@@ -268,13 +268,14 @@ import { setTimeout } from 'timers';
                     if (res.data.success) {
                         this.$message.success('提交成功,待管理员批准');
                         this.tabswitch(3);//本页面刷新
+                    } else {
+                        this.$message.error(res.data.message);
                     }
                 })
             },
             // 分页
              handleCurrentChange(val) {
-                let mytoken = Session.get();
-                let id = mytoken.account.id;
+                let id = this.mytoken.id;
                 let param = {
                     type:'condition',
                     value:'creatorId='+id+''
@@ -286,11 +287,11 @@ import { setTimeout } from 'timers';
                     params: {
                         condition:JSON.stringify(param),
                         number:val,
-                        size:10
+                        size:this.size
                     },
                     headers:{
                         'Access-Control-Allow-Origin':'*',
-                        "Authorization":mytoken.token,
+                        "Authorization":Session.getToken(),
                         'Content-Type':'application/json;charset=UTF-8'
                     }
                 })
@@ -300,6 +301,9 @@ import { setTimeout } from 'timers';
                     }
                 })
             },
+            setTurnHome(){
+                this.$parent.turnHome = true
+            },
             //退出
             loginout(){
                 const frame = window.frames[window.frames.length - 1]
@@ -369,10 +373,10 @@ import { setTimeout } from 'timers';
                     })
                 }
             },
-            //没有内容也要有一定的高度
+            //内容不足500固定高度
             boxheight(){
                 let H = this.$refs.qiyebox.offsetHeight;
-                if (H <= 500) {
+                if (H < 500) {
                     this.isheigh = true
                 } else {
                     this.isheigh = false

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

@@ -264,8 +264,7 @@
       };
       let token;
       if(localStorage.getItem('app-state-session')){
-        let mytoken = JSON.parse(localStorage.getItem('app-state-session'));
-        token = String(mytoken.token);
+        token = Session.getToken();
       }
       this.$ajax({
         url: this.$url.api+'/api/auth/info',
@@ -424,7 +423,6 @@
                 const frame = window.frames[window.frames.length - 1]
                 frame.postMessage(JSON.stringify(session), '*')
                 window.location.href = me.$url.web
-                // console.log("请求成功",res)
                 phone = ''
             })
             .catch(err=>{

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

@@ -13,7 +13,7 @@ export default {
   name: 'App',
   data(){
     return {
-
+      
     }
   },
   components: {

+ 1 - 1
frontend/saas-web/app/view/core/form/field/ConDateField.js

@@ -122,7 +122,7 @@ Ext.define('saas.view.core.form.field.ConDateField', {
         });
         var t = this.value;
         if(!t || !t in [1,2,3,4,5,6,7]) {
-            t = 3;
+            t = 1;
         }
         this.value = null;
         this.setInitValue(t);

+ 1 - 2
frontend/saas-web/app/view/core/query/QueryGridPanel.scss

@@ -3,8 +3,7 @@
     .x-querygrid-code-column {
 
         .x-grid-cell-inner {
-            text-decoration: underline;
-            color: #3E80F6;
+            color: #53b0f3;
             cursor: pointer;
         }
     }

+ 1 - 1
frontend/saas-web/app/view/core/report/ReportPanel.js

@@ -30,7 +30,7 @@ Ext.define('saas.view.core.report.ReportPanel', {
 
     calculateProperty: 'data.calculate',
     rootProperty: 'data.list.list',
-    totalProperty: 'list.total',
+    totalProperty: 'data.list.total',
 
     initComponent: function () {
         var me = this;

+ 1 - 1
frontend/saas-web/app/view/main/Main.js

@@ -23,7 +23,7 @@ Ext.define('saas.view.main.Main', {
         {
             xtype: 'toolbar',
             cls: 'main-headerbar shadow',
-            height: 64,
+            height: 50,
             itemId: 'headerBar',
             items: [
                 {

+ 14 - 7
frontend/saas-web/app/view/main/Main.scss

@@ -45,6 +45,13 @@ $treelist-nav-ui: (
     
     .x-panel-bodyWrap {
 
+        // &>.x-tab-bar {
+        //     height: 40px;
+        //     &>.x-tab-bar-body {
+        //         height: 40px;
+        //         padding: 0;
+        //     }
+        // }
         #main-tab-panel-body {
             background: #EEF4F9;
 
@@ -55,7 +62,7 @@ $treelist-nav-ui: (
 
 .main-logo-wrap {
     background-color: $base-color;
-    height: 70px;
+    height: 50px;
 
     font-size: 16px;
     font-weight: $font-weight-bold;
@@ -68,7 +75,7 @@ $treelist-nav-ui: (
         img {
             width: 32px;
             height: 32px;
-            top: 16px;
+            top: 8px;
             left: 28px;
             position: relative;
         }
@@ -78,7 +85,7 @@ $treelist-nav-ui: (
             font-size: 14px;
             color: #FFFFFF;
             text-align: left;
-            top: 30px;
+            top: 22px;
             position: absolute;
             left: 64px;
         }
@@ -161,14 +168,14 @@ $treelist-nav-ui: (
 }
 
 .x-gudie-information{
-    width: 64px;
-    height: 64px;
+    width: 50px;
+    height: 50px;
     background: url(../../../../resources/images/guide/information.png) 0 0 no-repeat;
 }
 
 .x-gudie-end{
-    width: 64px;
-    height: 64px;
+    width: 50px;
+    height: 50px;
     background: url(../../../../resources/images/guide/end.png) 0 0 no-repeat;
 }
 

+ 1 - 1
frontend/saas-web/app/view/main/MainController.js

@@ -40,7 +40,7 @@ Ext.define('saas.view.main.MainController', {
         navigationList = refs.navigationTreeList,
         navCollapsed = !navigationList.navCollapsed,
         new_width = navCollapsed ? viewModel.get('smallNavWidth') : viewModel.get('navWidth'),
-        newLogoImgStyle = navCollapsed ? { width: 36, height: 36, top: 12, left: 12 } : { width: 32, height: 32, top: 16, left: 28 },
+        newLogoImgStyle = navCollapsed ? { width: 36, height: 36, top: 6, left: 12 } : { width: 32, height: 32, top: 8, left: 28 },
         newLogoTextStyle = navCollapsed ? {
             5: { opacity: 0 },
             10: { opacity: 0 },

+ 7 - 8
frontend/saas-web/app/view/main/Navigation.js

@@ -10,6 +10,8 @@ Ext.define('saas.view.main.Navigation', {
     navCollapsed: false,
     cls: 'x-navpanel',
 
+    menuPadding: 0,
+
     initComponent: function () {
         var me = this;
         var view = new Ext.DataView({
@@ -87,7 +89,7 @@ Ext.define('saas.view.main.Navigation', {
                         '<div class="menu-content">',
                             '<tpl for="items">',
                             '<div class="menuitem">',
-                                '<div class="item-text" title="{text}" data-config="{config}" data-id="{id}" data-text="{text}" data-type="query" data-viewType="{viewType}">',
+                                '<div class="item-text" data-config="{config}" data-id="{id}" data-text="{text}" data-type="query" data-viewType="{viewType}">',
                                     '{text}',
                                 '</div>',
                                 '<tpl if="{addType}">',
@@ -110,8 +112,8 @@ Ext.define('saas.view.main.Navigation', {
                         var menu = view.up('menu'),
                             menuView = view.el.dom.getElementsByClassName('x-navitem-menu')[0],
                             menuBox = menuView.getBoundingClientRect(),
-                            menuViewWidth = menuBox.width + 12,
-                            menuViewHeight = menuBox.height + 10,
+                            menuViewWidth = menuBox.width + me.menuPadding * 2,
+                            menuViewHeight = menuBox.height + me.menuPadding * 2,
                             menuItem = menuView.getElementsByClassName('menuitem');
 
                         menu.setWidth(menuViewWidth);
@@ -188,11 +190,8 @@ Ext.define('saas.view.main.Navigation', {
                 width: window.innerWidth,
                 cls: 'x-nav-menu',
                 layout: 'fit',
-                bodyPadding: 5,
-                style: {
-                    borderTopRightRadius: '4px',
-                    borderBottomRightRadius: '4px'
-                },
+                shadow: 'drop',
+                bodyPadding: me.menuPadding,
                 items: [view]
             });
         }

+ 27 - 9
frontend/saas-web/app/view/main/Navigation.scss

@@ -84,7 +84,7 @@ $nav-font-color-over: #fff;
                                         width: 0;
                                         height: 0;
                                         border: 8px solid transparent;
-                                        border-right-color: #fff;
+                                        border-right-color: #595B7E;
                                         border-left: none;
                                         position: absolute;
                                         right: 0;
@@ -110,8 +110,8 @@ $nav-font-color-over: #fff;
 }
 
 .x-nav-menu {
-    // border-width: 5px;
-    // border-left: none;
+    border: none;
+    border-radius: 0 4px 4px 0;
 }
 
 .x-navitem-menu {
@@ -127,27 +127,44 @@ $nav-font-color-over: #fff;
         border-bottom-right-radius: 4px;
 
         .menu {
-            width: 200px;
+            width: 188px;
             letter-spacing: 1px;
             display: flex;
             flex-direction: column;
 
             &:nth-child(2) {
                 .menu-content {
-                    border-left: 1px dashed #dce2e4;
+                    border-left: 1px solid #A4ABBC;
+                    &:before {
+                        content: '';
+                        position: absolute;
+                        width: 2px;
+                        height: 22px;
+                        margin-left: -2px;
+                        background: #484A69;
+                    }
+                    &:after {
+                        content: '';
+                        position: absolute;
+                        width: 2px;
+                        height: 22px;
+                        margin-left: -2px;
+                        background: #484A69;
+                        bottom: 0;
+                    }
                 }
             }
 
             .menu-title {
                 padding-left: 30px;
-                background: #EEF9FE;
+                background: #484A69;
 
                 .menu-title-text {
                     height: 40px;
                     line-height: 40px;
                     font-size: 16px;
                     font-weight: bold;
-                    color: #4F5170;
+                    color: #eeeef2;
                     letter-spacing: 0.64px;
                     text-align: left;
                 }
@@ -155,6 +172,7 @@ $nav-font-color-over: #fff;
 
             .menu-content {
                 height: 100%;
+                background: #484A69;
                 
                 .menuitem {
                     padding-left: 25px;
@@ -163,7 +181,7 @@ $nav-font-color-over: #fff;
                     align-content: space-between;
 
                     .item-text {
-                        color: #4F5170;
+                        color: #eeeef2;
                         cursor: pointer;
                         height: 34px;
                         line-height: 34px;
@@ -192,7 +210,7 @@ $nav-font-color-over: #fff;
 
                     &:hover {
                         border-radius: 4px;
-                        background-color: #E4E4E4;
+                        background-color: #595B7E;
 
                         .item-icon {
                             display: block;

+ 8 - 8
frontend/saas-web/app/view/money/report/AccountDetails.js

@@ -30,7 +30,7 @@ Ext.define('saas.view.money.report.AccountDetails', {
             ["销售退货单", "销售退货单"]
         ]
     }, {
-        name: 'date',
+        name: 'pb_date',
         xtype: 'condatefield',
         emptyText: '日期',
         columnWidth: 0.3
@@ -62,11 +62,6 @@ Ext.define('saas.view.money.report.AccountDetails', {
         text: '单据类型',
         dataIndex: 'sl_kind',
         width: 110
-    }, {
-        text: '单据日期',
-        dataIndex: 'date',
-        xtype: 'datecolumn',
-        width: 110
     }, {
         text: '供应商名称',
         dataIndex: 've_name',
@@ -79,9 +74,14 @@ Ext.define('saas.view.money.report.AccountDetails', {
         text: '核销单号',
         dataIndex: 'pb_code',
         width: 200
+    }, {
+        text: '单据日期',
+        dataIndex: 'pb_date',
+        xtype: 'datecolumn',
+        width: 110
     }, {
         text: '本期核销金额',
-        dataIndex: 'sl_amount',
+        dataIndex: 'pbd_nowbalance',
         exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 130,
@@ -93,7 +93,7 @@ Ext.define('saas.view.money.report.AccountDetails', {
         }
     }, {
         text: '总金额',
-        dataIndex: 'total',
+        dataIndex: 'sl_orderamount',
         xtype: 'numbercolumn',
         exportFormat: 'Amount',
         width: 110,

+ 6 - 7
frontend/saas-web/app/view/purchase/report/PurchasePay.js

@@ -58,19 +58,18 @@ Ext.define('saas.view.purchase.report.PurchasePay', {
         exportFormat: 'Amount',
         dataIndex: 'pbd_amount',
         width: 110,
-        summaryType: 'sum',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
             var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
-        summaryRenderer: function(v) {
-            var arr = (v + '.').split('.');
-            var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join('');
-            return Ext.util.Format.number(v, format);
-        }
+        // summaryRenderer: function(v) {
+        //     var arr = (v + '.').split('.');
+        //     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
+        //     var format = '0,000.' + xr.join('');
+        //     return Ext.util.Format.number(v, format);
+        // }
     }, {//∑求和
         text: '本次付款',
         dataIndex: 'pbd_nowbalance',

BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-中粗-简.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-中粗-繁.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-中黑-简.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-中黑-繁.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-准-简.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-准-繁.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-极细-简.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-极细-繁.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-纤细-简.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-纤细-繁.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-细-简.ttf


BIN
frontend/saas-web/packages/local/theme-default/resources/fonts/pingfang/苹方黑体-细-繁.ttf


+ 0 - 1
frontend/saas-web/packages/local/theme-default/sass/etc/all.scss

@@ -1 +0,0 @@
-@import 'fontset.scss';

+ 0 - 35
frontend/saas-web/packages/local/theme-default/sass/etc/fontset.scss

@@ -1,35 +0,0 @@
-$ext-font-path: get-resource-path('fonts');
-
-@font-face {
-    font-family: 'pingFangSC-Regular';
-    src: url('#{$ext-font-path}/pingfang/苹方黑体-准-简.ttf') format('truetype');
-    font-weight: normal;
-    font-style: normal;
-}
-
-@font-face {
-    font-family: 'PingFangSC-Ultralight';
-    src: url('#{$ext-font-path}/pingfang/苹方黑体-极细-简.ttf') format('truetype');
-    font-weight: normal;
-    font-style: normal;
-}
-
-@font-face {
-    font-family: 'PingFangSC-Light';
-    src: url('#{$ext-font-path}/pingfang/苹方黑体-细-简.ttf?t=1541646656813') format('truetype');
-}
-
-@font-face {
-    font-family: 'PingFangSC-Thin';
-    src: url('#{$ext-font-path}/pingfang/苹方黑体-纤细-简.ttf?t=1541646656813') format('truetype');
-}
-
-@font-face {
-    font-family: 'PingFangSC-Medium';
-    src: url('#{$ext-font-path}/pingfang/苹方黑体-中黑-简.ttf?t=1541646656813') format('truetype');
-}
-
-@font-face {
-    font-family: 'PingFangSC-Medium';
-    src: url('#{$ext-font-path}/pingfang/苹方黑体-中粗-简.ttf?t=1541646656813') format('truetype');
-}