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: '
{{d.title}}
' + templet: '
{{d.title}}
' },{ field: 'read', title: '阅读量', diff --git a/app/article/view/index/list.html b/app/article/view/index/list.html index a3b3e3d..b29acc8 100644 --- a/app/article/view/index/list.html +++ b/app/article/view/index/list.html @@ -70,7 +70,7 @@ }, { field: 'title', title: '文章标题', - templet: '
{{d.title}}
' + templet: '
{{d.title}}
' },{ field: 'read', title: '阅读量', diff --git a/app/contract/view/index/archive.html b/app/contract/view/index/archive.html index ca41f71..29e1aae 100644 --- a/app/contract/view/index/archive.html +++ b/app/contract/view/index/archive.html @@ -62,7 +62,7 @@ },{ field: 'name', title: '合同名称', - templet: '
{{d.name}}
' + templet: '
{{d.name}}
' }, { field: 'cate_title', title: '合同类别', diff --git a/app/contract/view/index/index.html b/app/contract/view/index/index.html index cc91266..36a00ed 100644 --- a/app/contract/view/index/index.html +++ b/app/contract/view/index/index.html @@ -78,7 +78,7 @@ },{ field: 'name', title: '合同名称', - templet: '
{{d.name}}
' + templet: '
{{d.name}}
' }, { field: 'cate_title', title: '合同类别', diff --git a/app/contract/view/index/view.html b/app/contract/view/index/view.html index b725e56..b5ccae1 100644 --- a/app/contract/view/index/view.html +++ b/app/contract/view/index/view.html @@ -145,19 +145,21 @@ html{background-color:#fff;}
合同附件
{eq name="$detail.check_status" value="1" }
{/eq} - + +
{volist name="$detail.file_array" id="vo"}
- +
{$vo.name}
- - + +
{/volist} +
@@ -466,11 +468,11 @@ const moduleInit = ['tool','employeepicker']; layer.msg(e.msg); let temp = `
- +
${res.data.name}
- - + +
`; diff --git a/app/contract/view/index/view_set.html b/app/contract/view/index/view_set.html index 9003a8f..606d9e0 100644 --- a/app/contract/view/index/view_set.html +++ b/app/contract/view/index/view_set.html @@ -157,19 +157,21 @@ html{background-color:#fff;}
合同附件
{eq name="$detail.check_status" value="1" }
{/eq} - + +
{volist name="$detail.file_array" id="vo"}
- +
{$vo.name}
- - + +
{/volist} +
@@ -537,10 +539,10 @@ const moduleInit = ['tool','employeepicker']; layer.msg(e.msg); let temp = `
- +
${res.data.name}
- +
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: '
{{d.name}}
' + templet: '
{{d.name}}
' },{ 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: '
{{d.name}}
' + templet: '
{{d.name}}
' },{ 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: '
{{d.name}}
' + templet: '
{{d.name}}
' },{ 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: '
{{d.name}}
' + templet: '
{{d.name}}
' },{ 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"}
- +
{$vo.name}
- - + +
{/volist} +
@@ -223,11 +225,11 @@ const moduleInit = ['tool','employeepicker']; layer.msg(e.msg); let temp = `
- +
${res.data.name}
- - + +
`; diff --git a/app/finance/view/expense/add.html b/app/finance/view/expense/add.html index 18fc99c..957cdcb 100644 --- a/app/finance/view/expense/add.html +++ b/app/finance/view/expense/add.html @@ -478,11 +478,11 @@ const moduleInit = ['tool','employeepicker']; $('#fileList input').attr('value', idsArray.join(',')); let temp = `
- +
${res.data.name}
- +
`; diff --git a/app/finance/view/expense/view.html b/app/finance/view/expense/view.html index d8172ef..95139de 100644 --- a/app/finance/view/expense/view.html +++ b/app/finance/view/expense/view.html @@ -106,7 +106,7 @@ {notempty name="$detail.file_ids"} 相关附件 - +
{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"} -
+
{$vo.name}
- +
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"} -
+
{$vo.name}
- - + +
@@ -422,13 +422,13 @@ function gouguInit() { } idsArray.push(res.data.id); $('#fileList input').attr('value', idsArray.join(',')); - let temp = `
+ let temp = `
- +
${res.data.name}
- - + +
`; 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 @@
+
+
+
+ + +
+
+
+
+
    +
  • 企业公告

  • +
  • 知识列表

  • +
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
项目列表
@@ -49,9 +185,9 @@
-
知识列表
+
任务列表
-
+
@@ -64,6 +200,36 @@
+
系统信息
@@ -135,9 +301,46 @@ {block name="script"}