完成简约蓝官网皮肤

This commit is contained in:
augushong
2020-04-19 17:27:12 +08:00
parent 9910dd3e6d
commit 1d93be3280
14 changed files with 524 additions and 6 deletions

View File

@@ -51,10 +51,10 @@ class Category extends Common
// //
$model_category = ModelCategory::with('posts.post')->find($id); $model_category = ModelCategory::with('posts.post')->find($id);
$this->assign('category',$model_category); $this->assign('category',$model_category);
return $this->fetch('read'.$model_category->tpl_name); return $this->fetch('read'.$model_category->getData('tpl_name'));
} }
/** /**

View File

@@ -0,0 +1,93 @@
<?php
declare(strict_types=1);
namespace app\index\controller;
use app\model\Post as ModelPost;
use think\Request;
class Post extends Common
{
/**
* 显示资源列表
*
* @return \think\Response
*/
public function index()
{
//
}
/**
* 显示创建资源表单页.
*
* @return \think\Response
*/
public function create()
{
//
}
/**
* 保存新建的资源
*
* @param \think\Request $request
* @return \think\Response
*/
public function save(Request $request)
{
//
}
/**
* 显示指定的资源
*
* @param int $id
* @return \think\Response
*/
public function read($id)
{
//
$model_post = ModelPost::find($id);
$this->assign('post', $model_post);
return $this->fetch();
}
/**
* 显示编辑资源表单页.
*
* @param int $id
* @return \think\Response
*/
public function edit($id)
{
//
}
/**
* 保存更新的资源
*
* @param \think\Request $request
* @param int $id
* @return \think\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* 删除指定资源
*
* @param int $id
* @return \think\Response
*/
public function delete($id)
{
//
}
}

View File

@@ -4,6 +4,7 @@ declare(strict_types=1);
namespace app\model; namespace app\model;
use think\facade\Config;
use think\Model; use think\Model;
/** /**
@@ -64,4 +65,40 @@ class Category extends Model
return $list_post; return $list_post;
} }
public function getTplNameAttr($value)
{
return Config::get('view_type.category.'.$value);
}
public function getModelParentAttr()
{
$pid = $this->getData('pid');
if($pid == 0){
return $this;
}
return Category::where('id',$pid)->find();
}
// 返回除自身以外的其他的同级同类的分类
public function getModelSiblingsAttr()
{
return Category::where('pid',$this->getData('pid'))
->where('level',$this->getData('level'))
->where('id','<>',$this->getData('id'))
->select();
}
/**
* 获取同一个父元素的分类,包含自身
*
* @return void
*/
public function getModelSameParentAttr()
{
return Category::where('pid',$this->getData('pid'))
->where('level',$this->getData('level'))
->select();
}
} }

View File

@@ -33,6 +33,18 @@ class Post extends Model
return $this->hasMany(PostTag::class,'post_id'); return $this->hasMany(PostTag::class,'post_id');
} }
public function setPublishTimeAttr($value)
{
return strtotime($value);
}
public function getPublishTimeTextAttr()
{
$value = $this->getData('publish_time');
return date('Y-m-d',$value);
}
public function getCategorysListAttr() public function getCategorysListAttr()
{ {
$list_post_categorys = $this->getAttr('categorys'); $list_post_categorys = $this->getAttr('categorys');
@@ -50,8 +62,6 @@ class Post extends Model
$list = array_column($list_post_tags->append(['tag'])->toArray(),'tag'); $list = array_column($list_post_tags->append(['tag'])->toArray(),'tag');
$list = array2level($list);
return $list; return $list;
} }
@@ -66,6 +76,29 @@ class Post extends Model
return $desc; return $desc;
} }
public function getDescListAttr()
{
$desc = $this->getData('desc');
if(empty($desc)){
return '';
}
$list = explode("\n", $desc);
return $list;
}
public function getDescHtmlAttr()
{
$desc = $this->getData('desc');
if(empty($desc)){
return '';
}
return str_replace("\n",'<br>',$desc);
}
public function getStatusNameAttr() public function getStatusNameAttr()
{ {
return self::$stausNameList[$this->getData('status')]; return self::$stausNameList[$this->getData('status')];

View File

@@ -6,7 +6,9 @@ return [
'_product' => '产品:_product', '_product' => '产品:_product',
'_case' => '案例:_case', '_case' => '案例:_case',
'_about' => '关于:_about', '_about_1' => '关于_图块:_about_1',
'_about_2' => '关于_招聘:_about_2',
'_about_3' => '关于_时间轴:_about_3',
], ],
'post' => [ 'post' => [
'' => '普通:', '' => '普通:',

View File

@@ -93,7 +93,7 @@ body{background: #fff;}
.banner .title p{color: #606060; font-size: 36px; text-align: center; line-height: 50px; letter-spacing: 5px;} .banner .title p{color: #606060; font-size: 36px; text-align: center; line-height: 50px; letter-spacing: 5px;}
.banner .title p.en{font-size: 20px; letter-spacing: 3px;} .banner .title p.en{font-size: 20px; letter-spacing: 3px;}
.main-news{padding: 70px 0 80px 0;} .main-news{padding: 70px 0 80px 0;}
.main-news .content > div{padding-bottom: 40px; border-bottom: 1px dashed #eaeaea; position: relative;} .main-news .content > div{padding-bottom: 40px; border-bottom: 1px dashed #eaeaea; position: relative;display: flex;}
.main-news .content .news-img{display: inline-block; width: 30%; vertical-align: top;} .main-news .content .news-img{display: inline-block; width: 30%; vertical-align: top;}
.main-news .content .news-img img{max-width: 90%;} .main-news .content .news-img img{max-width: 90%;}
.main-news .content .news-panel{display: inline-block; width: 70%; vertical-align: top; padding-left: 5px; box-sizing: border-box;} .main-news .content .news-panel{display: inline-block; width: 70%; vertical-align: top; padding-left: 5px; box-sizing: border-box;}

View File

@@ -41,6 +41,7 @@
<tr> <tr>
<th>ID</th> <th>ID</th>
<th>名称</th> <th>名称</th>
<th>模板</th>
<th>操作</th> <th>操作</th>
</tr> </tr>
</thead> </thead>
@@ -50,6 +51,7 @@
<tr class="item" data-id="{$vo.id}"> <tr class="item" data-id="{$vo.id}">
<td>{$vo.id}</td> <td>{$vo.id}</td>
<td> {:str_repeat('|--',$vo.level)} {$vo.title}</td> <td> {:str_repeat('|--',$vo.level)} {$vo.title}</td>
<td>{$vo.tpl_name}</td>
<td> <td>
<div class="layui-btn-container"> <div class="layui-btn-container">
<a class="layui-btn layui-btn-sm" href="{:url('index/Category/read',['id'=>$vo.id])}">查看</a> <a class="layui-btn layui-btn-sm" href="{:url('index/Category/read',['id'=>$vo.id])}">查看</a>

View File

@@ -73,6 +73,7 @@
</td> </td>
<td> <td>
<div class="layui-btn-container"> <div class="layui-btn-container">
<a class="layui-btn layui-btn-sm" href="{:url('index/Post/read',['id'=>$vo.id])}">查看</a>
<a class="layui-btn layui-btn-sm" href="{:url('edit',['id'=>$vo.id])}">编辑</a> <a class="layui-btn layui-btn-sm" href="{:url('edit',['id'=>$vo.id])}">编辑</a>
<div class="layui-btn layui-btn-sm delete">删除</div> <div class="layui-btn layui-btn-sm delete">删除</div>
</div> </div>

View File

@@ -0,0 +1,51 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<title>{:get_system_config('site_name')}-首页</title>
{include file='common/_easy_blue_require'/}
</head>
<body>
{include file='common/_easy_blue_header'/}
<div style="margin-top: 80px;">
<!-- banner部分 -->
<div class="banner product" style="background-image: url('{$category.title_img}');">
<div class="title">
<p>{$category.title}</p>
<p class="en">{$category.desc}</p>
</div>
</div>
<!-- main部分 -->
<div class="main-news">
<div class="layui-container">
<div class="layui-row layui-col-space20">
{volist name='$category.posts_list' id='post'}
<div class="layui-col-lg6 content">
<div>
<div class="news-img"><a href="{:url('Post/read',['id'=>$post.id])}"><img src="{$post.poster}"></a></div>
<div class="news-panel">
<strong><a href="{:url('Post/read',['id'=>$post.id])}">{$post.title}</a></strong>
<p class="detail"><span>{$post.desc_short}</span><a
href="{:url('Post/read',['id'=>$post.id])}">[详细]</a></p>
<p class="read-push">阅读 <span>{$post.hits}</span>&nbsp;&nbsp;&nbsp;&nbsp;发布时间:<span>{$post.publish_time}</span></p>
</div>
</div>
</div>
{/volist}
</div>
</div>
</div>
</div>
{include file='common/_easy_blue_footer'/}
</body>
</html>

View File

@@ -0,0 +1,68 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<title>{:get_system_config('site_name')}-首页</title>
{include file='common/_easy_blue_require'/}
</head>
<body>
{include file='common/_easy_blue_header'/}
<div style="margin-top: 80px;">
<!-- banner部分 -->
<div class="banner about" style="background-image: url('{$category.model_parent.title_img}');">
<div class="title">
<p>{$category.model_parent.title}</p>
<p class="en">{$category.model_parent.desc}</p>
</div>
</div>
<!-- main部分 -->
<div class="main-about">
<div class="layui-container">
<div class="layui-row">
<ul class="aboutab">
{volist name='category.model_same_parent' id='same_parent_category'}
<li {eq name='$category.id' value='$same_parent_category.id' }class="layui-this" {/eq}
onclick="location.href = $(this).data('href')"
data-href="{:url('Category/read',['id'=>$same_parent_category.id])}">{$same_parent_category.title}</li>
{/volist}
</ul>
<div class="tabIntro">
{volist name='$category.posts_list' id='post'}
{if $i%2 == 0 }
<div class="content" style="display: flex;align-items: center;">
<div class="layui-inline img"><img src="{$post.poster}"></div>
<div class="layui-inline panel">
<p>{$post.desc}</p>
</div>
</div>
{else /}
<div class="content" style="display: flex;align-items: center;">
<div class="layui-inline panel p_block">
<p>{$post.desc}</p>
</div>
<div class="layui-inline img"><img src="{$post.poster}"></div>
</div>
{/if}
{/volist}
</div>
</div>
</div>
</div>
</div>
{include file='common/_easy_blue_footer'/}
<!--[if lt IE 9]>
<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</body>
</html>

View File

@@ -0,0 +1,66 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<title>{:get_system_config('site_name')}-首页</title>
{include file='common/_easy_blue_require'/}
</head>
<body>
{include file='common/_easy_blue_header'/}
<div style="margin-top: 80px;">
<!-- banner部分 -->
<div class="banner about" style="background-image: url('{$category.model_parent.title_img}');">
<div class="title">
<p>{$category.model_parent.title}</p>
<p class="en">{$category.model_parent.desc}</p>
</div>
</div>
<!-- main部分 -->
<div class="main-about">
<div class="layui-container">
<div class="layui-row">
<ul class="aboutab">
{volist name='category.model_same_parent' id='same_parent_category'}
<li {eq name='$category.id' value='$same_parent_category.id' }class="layui-this" {/eq}
onclick="location.href = $(this).data('href')"
data-href="{:url('Category/read',['id'=>$same_parent_category.id])}">{$same_parent_category.title}</li>
{/volist}
</ul>
<div class="tabJob" style="display: block;">
{volist name='$category.posts_list' id='post'}
<div class="content">
<p class="title">{$post.title}</p>
<p>> 职位描述</p>
<ol>
{volist name='$post.desc_list' id='li'}
<li>{$li}</li>
{/volist}
</ol>
</div>
{/volist}
</div>
</div>
</div>
</div>
</div>
{include file='common/_easy_blue_footer'/}
<!--[if lt IE 9]>
<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</body>
</html>

View File

@@ -0,0 +1,81 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<title>{:get_system_config('site_name')}-首页</title>
{include file='common/_easy_blue_require'/}
</head>
<body>
{include file='common/_easy_blue_header'/}
<div style="margin-top: 80px;">
<!-- banner部分 -->
<div class="banner about" style="background-image: url('{$category.model_parent.title_img}');">
<div class="title">
<p>{$category.model_parent.title}</p>
<p class="en">{$category.model_parent.desc}</p>
</div>
</div>
<!-- main部分 -->
<div class="main-about">
<div class="layui-container">
<div class="layui-row">
<ul class="aboutab">
{volist name='category.model_same_parent' id='same_parent_category'}
<li {eq name='$category.id' value='$same_parent_category.id' }class="layui-this" {/eq}
onclick="location.href = $(this).data('href')"
data-href="{:url('Category/read',['id'=>$same_parent_category.id])}">{$same_parent_category.title}</li>
{/volist}
</ul>
<div class="tabCour" style="display: block;">
<p class="title">我们的蜕变</p>
<ul class="timeline">
{volist name='$category.posts_list' id='post'}
{if $i%2 == 0 }
<li class="odd">
<div class="cour-img"><img src="{$post.poster}"></div>
<div class="cour-panel layui-col-sm4 layui-col-lg5">
<p class="label">{:date('Y 年 m 月 d 日',$post->publish_time)}</p>
<p>{$post.title}</p>
</div>
</li>
{else /}
<li>
<div class="cour-img"><img src="{$post.poster}"></div>
<div class="cour-panel layui-col-sm4 layui-col-sm-offset8 layui-col-lg5 layui-col-lg-offset7">
<p class="label">{:date('Y 年 m 月 d 日',$post->publish_time)}</p>
<p>{$post.title}</p>
</div>
</li>
{/if}
{/volist}
</ul>
</div>
</div>
</div>
</div>
</div>
{include file='common/_easy_blue_footer'/}
<!--[if lt IE 9]>
<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</body>
</html>

View File

@@ -0,0 +1,44 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<title>{:get_system_config('site_name')}-首页</title>
{include file='common/_easy_blue_require'/}
</head>
<body>
{include file='common/_easy_blue_header'/}
<div style="margin-top: 80px;">
<!-- banner部分 -->
<div class="banner product" style="background-image: url('{$category.title_img}');">
<div class="title">
<p>{$category.title}</p>
<p class="en">{$category.desc}</p>
</div>
</div>
<!-- main部分 -->
<div class="main-case">
<div class="layui-container" style="display: flex;justify-content: space-between;align-items: flex-start;flex-wrap: wrap;">
{volist name='$category.posts_list' id='post'}
<div class="layui-inline content">
<div class="layui-inline case-img"><img src="{$post.poster}"></div>
<p class="lable">{$post.title}</p>
<p>{$post.desc}</p>
</div>
{/volist}
</div>
</div>
</div>
{include file='common/_easy_blue_footer'/}
</body>
</html>

View File

@@ -0,0 +1,40 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<title>{:get_system_config('site_name')}-首页</title>
{include file='common/_easy_blue_require'/}
<link rel="stylesheet" href="/static/lib/quill/quill.snow.css">
</head>
<body>
{include file='common/_easy_blue_header'/}
<div style="margin-top: 80px;">
<div class="main-newsdate">
<div class="layui-container">
<p class="news"><a href="">实时新闻</a> > 新闻详情</p>
<h1>{$post.title}</h1>
<p class="pushtime">发布时间:<span>{$post.publish_time_text}</span></p>
<p class="introTop">{$post.desc_html}</p>
<div class="ql-editor">
{$post.content_html|raw}
</div>
<p class="introBott">
</p>
</div>
</div>
</div>
{include file='common/_easy_blue_footer'/}
<!--[if lt IE 9]>
<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</body>
</html>