diff --git a/app/article/view/index/index.html b/app/article/view/index/index.html
index 61f2b1a..48a014d 100644
--- a/app/article/view/index/index.html
+++ b/app/article/view/index/index.html
@@ -59,7 +59,7 @@
}, {
field: 'title',
title: '文章标题',
- templet: '
@@ -537,10 +539,10 @@ const moduleInit = ['tool','employeepicker'];
layer.msg(e.msg);
let temp = `
diff --git a/app/customer/view/index/index.html b/app/customer/view/index/index.html
index 768ab2a..8f40a19 100644
--- a/app/customer/view/index/index.html
+++ b/app/customer/view/index/index.html
@@ -91,7 +91,7 @@
},{
field: 'name',
title: '客户名称',
- templet: '
'
+ templet: '
'
},{
field: 'intent_status_name',
title: '客户意向',
diff --git a/app/customer/view/index/rush.html b/app/customer/view/index/rush.html
index d4c4080..12e8c15 100644
--- a/app/customer/view/index/rush.html
+++ b/app/customer/view/index/rush.html
@@ -46,7 +46,7 @@
},{
field: 'name',
title: '客户名称',
- templet: '
'
+ templet: '
'
},{
field: 'user',
title: '联系人',
diff --git a/app/customer/view/index/sea.html b/app/customer/view/index/sea.html
index c264666..e6a6770 100644
--- a/app/customer/view/index/sea.html
+++ b/app/customer/view/index/sea.html
@@ -58,7 +58,7 @@
},{
field: 'name',
title: '客户名称',
- templet: '
'
+ templet: '
'
},{
field: 'user',
title: '联系人',
diff --git a/app/customer/view/index/trash.html b/app/customer/view/index/trash.html
index e1dc56e..48b3540 100644
--- a/app/customer/view/index/trash.html
+++ b/app/customer/view/index/trash.html
@@ -52,7 +52,7 @@
},{
field: 'name',
title: '客户名称',
- templet: '
'
+ templet: '
'
},{
field: 'user',
title: '联系人',
diff --git a/app/customer/view/index/view.html b/app/customer/view/index/view.html
index 0b6d848..78ccfca 100644
--- a/app/customer/view/index/view.html
+++ b/app/customer/view/index/view.html
@@ -90,19 +90,21 @@ html{background-color:#fff;}
相关附件
{eq name="$detail.status" value="1" }
{/eq}
-
+ |
+
{volist name="$detail.file_array" id="vo"}
{/volist}
+
|
相关附件 |
-
+ |
{volist name="$detail.fileArray" id="vo"}
diff --git a/app/finance/view/income/view.html b/app/finance/view/income/view.html
index 37edadb..7ba6a92 100644
--- a/app/finance/view/income/view.html
+++ b/app/finance/view/income/view.html
@@ -104,15 +104,15 @@
{notempty name="$detail.file_ids"}
相关附件 |
-
+ |
{volist name="$detail.fileArray" id="vo"}
-
+
diff --git a/app/finance/view/invoice/add.html b/app/finance/view/invoice/add.html
index 7242235..7230b8b 100644
--- a/app/finance/view/invoice/add.html
+++ b/app/finance/view/invoice/add.html
@@ -170,18 +170,18 @@
|
附件 |
-
+ |
{notempty name="$detail.file_ids"}
{volist name="$detail.fileArray" id="vo"}
-
+
@@ -422,13 +422,13 @@ function gouguInit() {
}
idsArray.push(res.data.id);
$('#fileList input').attr('value', idsArray.join(','));
- let temp = `
+ let temp = ` `;
diff --git a/app/finance/view/invoice/view.html b/app/finance/view/invoice/view.html
index 76c242b..ebebb48 100644
--- a/app/finance/view/invoice/view.html
+++ b/app/finance/view/invoice/view.html
@@ -110,7 +110,7 @@
{notempty name="$detail.file_ids"}
相关附件 |
-
+ |
{volist name="$detail.fileArray" id="vo"}
diff --git a/app/home/controller/Api.php b/app/home/controller/Api.php
index f45c153..bba9c30 100644
--- a/app/home/controller/Api.php
+++ b/app/home/controller/Api.php
@@ -25,7 +25,7 @@ class api extends BaseController
->join('note_cate c', 'a.cate_id = c.id')
->where(['a.status' => 1])
->order('a.end_time desc,a.sort desc,a.create_time desc')
- ->limit(10)
+ ->limit(8)
->select()->toArray();
foreach ($list as $key => $val) {
$list[$key]['create_time'] = date('Y-m-d :H:i', $val['create_time']);
@@ -47,7 +47,7 @@ class api extends BaseController
->join('article_cate c', 'a.cate_id = c.id')
->where(['a.delete_time' => 0])
->order('a.id desc')
- ->limit(10)
+ ->limit(8)
->select()->toArray();
foreach ($list as $key => $val) {
$list[$key]['create_time'] = date('Y-m-d :H:i', $val['create_time']);
@@ -57,7 +57,6 @@ class api extends BaseController
return table_assign(0, '', $res);
}
-
//首页项目
public function get_project_list()
{
@@ -72,7 +71,7 @@ class api extends BaseController
->join('Admin u', 'a.director_uid = u.id')
->where([['a.delete_time', '=', 0], ['a.id', 'in', $project_ids]])
->order('a.id desc')
- ->limit(10)
+ ->limit(8)
->select()->toArray();
foreach ($list as $key => $val) {
$list[$key]['create_time'] = date('Y-m-d :H:i', $val['create_time']);
@@ -84,6 +83,41 @@ class api extends BaseController
return table_assign(0, '', $res);
}
+ //首页任务
+ public function get_task_list()
+ {
+ $prefix = get_config('database.connections.mysql.prefix');//判断是否安装了项目模块
+ $exist = Db::query('show tables like "'.$prefix.'project_task"');
+ $res['data'] = [];
+ if($exist){
+ $where = array();
+ $map1 = [];
+ $map2 = [];
+ $map3 = [];
+ $map1[] = ['admin_id', '=', $this->uid];
+ $map2[] = ['director_uid', '=', $this->uid];
+ $map3[] = ['', 'exp', Db::raw("FIND_IN_SET({$this->uid},assist_admin_ids)")];
+
+ $where[] = ['delete_time', '=', 0];
+ $list = Db::name('ProjectTask')->where($where)
+ ->where(function ($query) use ($map1, $map2, $map3) {
+ $query->where($map1)->whereor($map2)->whereor($map3);
+ })
+ ->withoutField('content,md_content')
+ ->order('flow_status asc')
+ ->order('id desc')
+ ->limit(8)
+ ->select()->toArray();
+ foreach ($list as $key => $val) {
+ $list[$key]['director_name'] = Db::name('Admin')->where(['id' => $val['director_uid']])->value('name');
+ $list[$key]['end_time'] = date('Y-m-d', $val['end_time']);
+ $list[$key]['flow_name'] = \app\project\model\ProjectTask::$FlowStatus[(int) $val['flow_status']];
+ }
+ $res['data'] = $list;
+ }
+ return table_assign(0, '', $res);
+ }
+
//获取访问记录
public function get_view_data()
{
diff --git a/app/home/controller/Index.php b/app/home/controller/Index.php
index 2b5bf81..e7623a6 100644
--- a/app/home/controller/Index.php
+++ b/app/home/controller/Index.php
@@ -115,6 +115,16 @@ class Index extends BaseController
'name' => '发票',
'num' => $invoiceCount,
);
+
+ $handle=[
+ 'approve'=>Db::name('Approve')->where([['', 'exp', Db::raw("FIND_IN_SET('{$this->uid}',check_admin_ids)")]])->count(),
+ 'expenses'=>Db::name('Expense')->where([['', 'exp', Db::raw("FIND_IN_SET('{$this->uid}',check_admin_ids)")],['delete_time', '=', 0]])->count(),
+ 'invoice'=>Db::name('Invoice')->where([['', 'exp', Db::raw("FIND_IN_SET('{$this->uid}',check_admin_ids)")],['delete_time', '=', 0]])->count(),
+ 'income'=>Db::name('Invoice')->where([['is_cash', '<', 2],['admin_id','=',$this->uid],['check_status', '=', 5],['delete_time', '=', 0]])->count(),
+ 'contract'=>0,
+ 'task'=>0
+ ];
+
$module = Db::name('AdminModule')->column('name');
if (in_array('customer', $module)) {
$customerCount = Db::name('Customer')->where([['delete_time', '=', 0]])->count();
@@ -129,6 +139,7 @@ class Index extends BaseController
'name' => '合同',
'num' => $contractCount,
);
+ $handle['contract'] = Db::name('Contract')->where([['', 'exp', Db::raw("FIND_IN_SET('{$this->uid}',check_admin_ids)")],['delete_time', '=', 0]])->count();
}
if (in_array('project', $module)) {
$projectCount = Db::name('Project')->where([['delete_time', '=', 0]])->count();
@@ -141,6 +152,7 @@ class Index extends BaseController
'name' => '任务',
'num' => $taskCount,
);
+ $handle['task'] = Db::name('ProjectTask')->where([['director_uid', '=', $this->uid],['delete_time', '=', 0]])->count();
}
if (in_array('article', $module)) {
$articleCount = Db::name('Article')->where([['delete_time', '=', 0]])->count();
@@ -150,8 +162,41 @@ class Index extends BaseController
);
}
View::assign('total', $total);
+ View::assign('handle', $handle);
View::assign('install', $install);
View::assign('TP_VERSION', \think\facade\App::version());
return View();
}
+
+ //通讯录
+ public function mail_list()
+ {
+ if (request()->isAjax()) {
+ $param = get_params();
+ $where = array();
+ if (!empty($param['keywords'])) {
+ $where[] = ['id|username|name|nickname|mobile|desc', 'like', '%' . $param['keywords'] . '%'];
+ }
+ $where[] = ['status', '<', 2];
+ if (isset($param['status']) && $param['status']!='') {
+ $where[] = ['status', '=', $param['status']];
+ }
+ if (!empty($param['did'])) {
+ $department_array = get_department_son($param['did']);
+ $where[] = ['did', 'in', $department_array];
+ }
+ $rows = empty($param['limit']) ? get_config('app . page_size') : $param['limit'];
+ $admin = \app\user\model\Admin::where($where)
+ ->order('id desc')
+ ->paginate($rows, false, ['query' => $param])
+ ->each(function ($item, $key) {
+ $item->department = Db::name('Department')->where(['id' => $item->did])->value('title');
+ $item->position = Db::name('Position')->where(['id' => $item->position_id])->value('title');
+ $item->entry_time = empty($item->entry_time) ? '-' : date('Y-m-d', $item->entry_time);
+ });
+ return table_assign(0, '', $admin);
+ } else {
+ return view();
+ }
+ }
}
diff --git a/app/home/view/index/mail_list.html b/app/home/view/index/mail_list.html
new file mode 100644
index 0000000..3d3381f
--- /dev/null
+++ b/app/home/view/index/mail_list.html
@@ -0,0 +1,171 @@
+{extend name="../../base/view/common/base" /}
+{block name="style"}
+
+{/block}
+
+{block name="body"}
+
+
+
+{/block}
+
+
+
+{block name="script"}
+
+{/block}
+
\ No newline at end of file
diff --git a/app/home/view/index/main.html b/app/home/view/index/main.html
index 852f2d1..e43c0c6 100644
--- a/app/home/view/index/main.html
+++ b/app/home/view/index/main.html
@@ -5,7 +5,7 @@
.panel-num table {width: 100%;}
.panel-num td {text-align: center; padding: 16px 0; border-left: 1px solid #f1f1f1; position: relative;}
.panel-num td:nth-child(1) { border-left: none}
- .panel-num .num-title { padding-bottom: 10px; color: #999;}
+ .panel-num .num-title { padding-bottom: 16px; color: #999;}
.panel-num .blue {font-size: 20px; font-weight: 300;}
.panel-num td .badge {position: absolute;top: 0; right: 0;}
.panel-num td .badge span { padding: 2px 4px; font-size: 12px; border-radius: 0 0 0 4px;}
@@ -15,6 +15,18 @@
.info-td {width: 90px; text-align: right;background-color: #fafafa; color: #999; padding: 5px 3px;}
.layui-card-body .layui-timeline-title {padding-bottom: 0;font-size: 14px; margin-bottom:4px;}
.layui-card-body .layui-timeline-item {padding-bottom: 5px;}
+ .layui-short-menu li { text-align: center;}
+ .layui-short-menu li .iconfont {display: inline-block; font-weight:600; width: 100%; height: 58px; line-height: 58px; margin-bottom:5px; text-align: center;border-radius: 3px; font-size: 28px; background-color: #F8F8F8; color: #969696; transition: all .3s; -webkit-transition: all .3s;}
+ .layui-short-menu li cite {color: #646464;}
+ .layui-short-menu li:hover .iconfont{color: #187FDD; background-color:#F2F8FF;}
+ .layui-short-menu li:hover cite {color: #187FDD;}
+ .layui-matter-item li a{display: block; padding: 12px; background-color: #f8f8f8; color: #999; border-radius: 3px; transition: all .3s;-webkit-transition: all .3s;}
+ .layui-matter-item li a:hover{background-color:#F2F8FF;}
+ .layui-matter-item li cite {font-size: 24px;font-weight: 300;color: #187FDD;}
+
+ .layui-right-bar a{display: inline-block; width: 100%; height: 64px; text-align: center;border-radius: 3px; background-color: #F8F8F8; color: #969696; transition: all .3s; -webkit-transition: all .3s;}
+ .layui-right-bar a .iconfont{display: inline-block; font-weight:600; width: 100%; height: 37px; line-height: 39px; text-align: center;font-size: 24px;}
+ .layui-right-bar a:hover{color: #187FDD; background-color:#F2F8FF;}
{/block}
@@ -36,12 +48,136 @@
|
+
+
+
+
+
+
+
+
+
+
系统信息
@@ -135,9 +301,46 @@
{block name="script"}
| |