diff --git a/app/api/controller/Index.php b/app/api/controller/Index.php index 0bf03d0..b8ed8cc 100644 --- a/app/api/controller/Index.php +++ b/app/api/controller/Index.php @@ -98,6 +98,8 @@ class Index extends BaseController $res['filepath'] = $data['filepath']; $res['name'] = $data['name']; $res['filename'] = $data['filename']; + $res['filesize'] = $data['filesize']; + $res['fileext'] = $data['fileext']; add_log('upload', $data['user_id'], $data); if($sourse == 'editormd'){ //editormd编辑器上传返回 @@ -200,10 +202,22 @@ class Index extends BaseController //获取部门所有员工 public function get_employee_select() { + $keyword = get_params('keyword'); + $selected = []; + if(!empty($keyword)){ + $selected = explode(",",$keyword); + } $employee = Db::name('admin') ->field('id as value,name') ->where(['status' => 1]) - ->select(); + ->select()->toArray(); + + foreach($employee as $k => &$v){ + $v['selected'] = ''; + if(in_array($v['value'],$selected)){ + $v['selected'] = 'selected'; + } + } return to_assign(0, '', $employee); } @@ -361,7 +375,9 @@ class Index extends BaseController foreach ($flowData as $key => &$val) { $val['user_id_info'] = Db::name('Admin')->field('id,name,thumb')->where('id','in',$val['flow_uids'])->select()->toArray(); } - return to_assign(0, '', $flowData); + $data['copy_uids'] = $flow['copy_uids']; + $data['flow_data'] = $flowData; + return to_assign(0, '', $data); } //获取审核流程节点 diff --git a/app/article/view/index/add.html b/app/article/view/index/add.html index a92be35..104589f 100644 --- a/app/article/view/index/add.html +++ b/app/article/view/index/add.html @@ -5,10 +5,10 @@

新增知识文章

- + - + - + - + diff --git a/app/article/view/index/edit.html b/app/article/view/index/edit.html index 1e17362..3855348 100644 --- a/app/article/view/index/edit.html +++ b/app/article/view/index/edit.html @@ -5,10 +5,10 @@

编辑知识文章

文章标题 *文章标题* 文章分类*文章分类*
关键字*关键字* @@ -68,7 +68,7 @@
文章内容*文章内容*
- + - + - + - + - + - + - + - + - + \ @@ -420,23 +439,27 @@ const moduleInit = ['tool','formSelects','employeepicker']; success: function (e) { if (e.code == 0) { var flowLi=''; - for(var a=0;a'+e.data[a].user_id_info[b].name+''; + for(var b=0;b'+flow_data[a].user_id_info[b].name+''; } } flowLi+='
  • \ @@ -446,8 +469,7 @@ const moduleInit = ['tool','formSelects','employeepicker'];
      '+userList+'
    \ \
  • '; - } - + } formHtml = '
    \ - + @@ -34,6 +34,14 @@ + + + + + + + +
    文章标题 *文章标题* 文章分类*文章分类*
    关键字*关键字* @@ -36,7 +36,7 @@
    是否共享*是否共享* @@ -68,7 +68,7 @@
    文章内容*文章内容* diff --git a/app/article/view/index/view.html b/app/article/view/index/view.html index e6cf02d..b2a282b 100644 --- a/app/article/view/index/view.html +++ b/app/article/view/index/view.html @@ -28,7 +28,7 @@

    {$detail.title}

    - 发表于:{$detail.create_time | date='Y-m-d m:i:s'} + 发表于:{$detail.create_time | date='Y-m-d H:i:s'} 发布人:{$detail.user} 部门:{$detail.department} 阅读量:{$detail.read} diff --git a/app/common.php b/app/common.php index 369de6d..88752d0 100644 --- a/app/common.php +++ b/app/common.php @@ -313,6 +313,10 @@ function add_log($type, $param_id = '', $param = []) $data['function'] = strtolower(app('request')->action()); $parameter = $data['module'] . '/' . $data['controller'] . '/' . $data['function']; $rule_menu = Db::name('AdminRule')->where(array('src' => $parameter))->find(); + if($type == 'upload'){ + $data['title'] = $param['name']; + $data['subject'] = '文件'; + } if($rule_menu){ $data['title'] = $rule_menu['title']; $data['subject'] = $rule_menu['name']; @@ -338,11 +342,14 @@ function add_log($type, $param_id = '', $param = []) */ function sendMessage($user_id, $template, $data=[]) { - $content = get_config('message.template')[$template]['template']; + $title = get_config('message.template')[$template]['title']; + $content = get_config('message.template')[$template]['content']; foreach ($data as $key => $val) { + $title = str_replace('{' . $key . '}', $val, $title); $content = str_replace('{' . $key . '}', $val, $content); } if(isSet($data['from_uid'])){ + $title = str_replace('{from_user}', get_admin($data['from_uid'])['name'], $title); $content = str_replace('{from_user}', get_admin($data['from_uid'])['name'], $content); } $content = str_replace('{date}', date('Y-m-d'), $content); @@ -350,7 +357,7 @@ function sendMessage($user_id, $template, $data=[]) if (!$user_id) return false; if (!$content) return false; if (!is_array($user_id)) { - $users[] = $user_id; + $users = explode(",", strval($user_id)); } else { $users = $user_id; } @@ -361,7 +368,7 @@ function sendMessage($user_id, $template, $data=[]) $send_data[] = array( 'to_uid' => $value,//接收人 'action_id' => $data['action_id'], - 'title' => $data['title'], + 'title' => $title, 'content' => $content, 'template' => $template, 'module_name' => strtolower(app('http')->getName()), @@ -375,6 +382,15 @@ function sendMessage($user_id, $template, $data=[]) return $res; } +function getMessageLink($template,$action_id){ + $content=''; + if(isset(get_config('message.template')[$template]['link'])){ + $link = get_config('message.template')[$template]['link']; + $content = str_replace('{action_id}', $action_id, $link); + } + return $content; +} + /** * 邮件发送 * @param $to 接收人 diff --git a/app/finance/controller/Expense.php b/app/finance/controller/Expense.php index d98c458..f55f0d6 100644 --- a/app/finance/controller/Expense.php +++ b/app/finance/controller/Expense.php @@ -223,11 +223,23 @@ class Expense extends BaseController if (!isset($param['check_admin_ids'])) { if($flow[0]['flow_type'] == 1){ //部门负责人 - $param['check_admin_ids'] = get_department_leader($admin_id); + $leader = get_department_leader($this->uid); + if($leader == 0){ + return to_assign(1,'审批流程设置有问题:当前部门负责人还未设置,请联系HR或者管理员'); + } + else{ + $param['check_admin_ids'] = $leader; + } } else if($flow[0]['flow_type'] == 2){ //上级部门负责人 - $param['check_admin_ids'] = get_department_leader($admin_id,1); + $leader = get_department_leader($this->uid,1); + if($leader == 0){ + return to_assign(1,'审批流程设置有问题:上级部门负责人还未设置,请联系HR或者管理员'); + } + else{ + $param['check_admin_ids'] = $leader; + } } else{ $param['check_admin_ids'] = $flow[0]['flow_uids']; @@ -282,6 +294,13 @@ class Expense extends BaseController } } add_log('edit', $exid, $param); + //发送消息通知 + $msg=[ + 'from_uid'=>$this->uid, + 'action_id'=>$param['id'] + ]; + $users = $param['check_admin_ids']; + sendMessage($users,31,$msg); Db::commit(); $dbRes = true; } else { @@ -306,11 +325,23 @@ class Expense extends BaseController if (!isset($param['check_admin_ids'])) { if($flow[0]['flow_type'] == 1){ //部门负责人 - $param['check_admin_ids'] = get_department_leader($admin_id); + $leader = get_department_leader($this->uid); + if($leader == 0){ + return to_assign(1,'审批流程设置有问题:当前部门负责人还未设置,请联系HR或者管理员'); + } + else{ + $param['check_admin_ids'] = $leader; + } } else if($flow[0]['flow_type'] == 2){ //上级部门负责人 - $param['check_admin_ids'] = get_department_leader($admin_id,1); + $leader = get_department_leader($this->uid,1); + if($leader == 0){ + return to_assign(1,'审批流程设置有问题:上级部门负责人还未设置,请联系HR或者管理员'); + } + else{ + $param['check_admin_ids'] = $leader; + } } else{ $param['check_admin_ids'] = $flow[0]['flow_uids']; @@ -358,6 +389,13 @@ class Expense extends BaseController } } add_log('add', $exid, $param); + //发送消息通知 + $msg=[ + 'from_uid'=>$this->uid, + 'action_id'=>$exid + ]; + $users = $param['check_admin_ids']; + sendMessage($users,31,$msg); Db::commit(); $dbRes = true; } else { @@ -378,6 +416,10 @@ class Expense extends BaseController $id = isset($param['id']) ? $param['id'] : 0; if ($id > 0) { $expense = $this->detail($id); + if($expense['file_ids'] !=''){ + $fileArray = Db::name('File')->where('id','in',$expense['file_ids'])->select(); + $expense['fileArray'] = $fileArray; + } View::assign('expense', $expense); } $department = get_login_admin('did'); @@ -415,6 +457,14 @@ class Expense extends BaseController $detail['check_user'] = implode(',',$check_user); } } + if($detail['copy_uids'] !=''){ + $copy_user = Db::name('Admin')->where('id','in',$detail['copy_uids'])->column('name'); + $detail['copy_user'] = implode(',',$copy_user); + } + if($detail['file_ids'] !=''){ + $fileArray = Db::name('File')->where('id','in',$detail['file_ids'])->select(); + $detail['fileArray'] = $fileArray; + } $is_check_admin = 0; $is_create_admin = 0; @@ -468,6 +518,10 @@ class Expense extends BaseController { $param = get_params(); $detail = Db::name('Expense')->where(['id' => $param['id']])->find(); + $check_admin_ids = explode(",", strval($detail['check_admin_ids'])); + if (!in_array($this->uid, $check_admin_ids)){ + return to_assign(1,'您没权限审核该审批'); + } //当前审核节点详情 $step = Db::name('FlowStep')->where(['action_id'=>$detail['id'],'type'=>2,'sort'=>$detail['check_step_sort'],'delete_time'=>0])->find(); //审核通过 @@ -490,6 +544,9 @@ class Expense extends BaseController $param['check_status'] = 2; } } + else{ + $param['check_status'] = 1; + } } else if($step['flow_type'] == 0){ //自由人审批 @@ -556,6 +613,20 @@ class Expense extends BaseController ); $aid = Db::name('FlowRecord')->strict(false)->field(true)->insertGetId($checkData); add_log('check', $param['id'], $param); + //发送消息通知 + $msg=[ + 'from_uid'=>$detail['admin_id'], + 'create_time'=>date('Y-m-d H:i:s',$detail['create_time']), + 'action_id'=>$detail['id'] + ]; + if($param['check_status'] == 1){ + $users = $param['check_admin_ids']; + sendMessage($users,31,$msg); + } + if($param['check_status'] == 2){ + $users = $detail['admin_id']; + sendMessage($users,32,$msg); + } return to_assign(); } else{ @@ -582,6 +653,13 @@ class Expense extends BaseController ); $aid = Db::name('FlowRecord')->strict(false)->field(true)->insertGetId($checkData); add_log('refue', $param['id'], $param); + //发送消息通知 + $msg=[ + 'create_time'=>date('Y-m-d H:i:s',$detail['create_time']), + 'action_id'=>$detail['id'] + ]; + $users = $detail['admin_id']; + sendMessage($users,33,$msg); return to_assign(); } else{ @@ -628,6 +706,14 @@ class Expense extends BaseController $param['pay_time'] = time(); $res = ExpenseList::where('id', $param['id'])->strict(false)->field(true)->update($param); if ($res !== false) { + //发送消息通知 + $detail = Db::name('Expense')->where(['id' => $param['id']])->find(); + $msg=[ + 'create_time'=>date('Y-m-d H:i:s',$detail['create_time']), + 'action_id'=>$detail['id'] + ]; + $users = $detail['admin_id']; + sendMessage($users,34,$msg); return to_assign(); } else { return to_assign(1, "操作失败"); diff --git a/app/finance/controller/Invoice.php b/app/finance/controller/Invoice.php index 31812cd..53bb407 100644 --- a/app/finance/controller/Invoice.php +++ b/app/finance/controller/Invoice.php @@ -201,7 +201,7 @@ class Invoice extends BaseController return to_assign(1, '银行营业网点不能为空'); } if (!$param['invoice_address']) { - return to_assign(1, '银地址不能为空'); + return to_assign(1, '银行地址不能为空'); } } if (!empty($param['id']) && $param['id'] > 0) { @@ -263,6 +263,13 @@ class Invoice extends BaseController $res = InvoiceList::where('id', $param['id'])->strict(false)->field(true)->update($param); if ($res !== false) { add_log('edit', $param['id'], $param); + //发送消息通知 + $msg=[ + 'from_uid'=>$this->uid, + 'action_id'=>$param['id'] + ]; + $users = $param['check_admin_ids']; + sendMessage($users,41,$msg); return to_assign(); } else { return to_assign(1, '操作失败'); @@ -323,11 +330,17 @@ class Invoice extends BaseController ); //增加审核流程 Db::name('FlowStep')->strict(false)->field(true)->insertGetId($flow_step); - } - + } if ($exid) { add_log('apply', $exid, $param); + //发送消息通知 + $msg=[ + 'from_uid'=>$this->uid, + 'action_id'=>$exid + ]; + $users = $param['check_admin_ids']; + sendMessage($users,41,$msg); return to_assign(); } else { return to_assign(1, '操作失败'); @@ -337,6 +350,10 @@ class Invoice extends BaseController $id = isset($param['id']) ? $param['id'] : 0; if ($id > 0) { $detail = $this->detail($id); + if($detail['file_ids'] !=''){ + $fileArray = Db::name('File')->where('id','in',$detail['file_ids'])->select(); + $detail['fileArray'] = $fileArray; + } View::assign('detail', $detail); } $department = get_login_admin('did'); @@ -373,6 +390,15 @@ class Invoice extends BaseController } } + if($detail['copy_uids'] !=''){ + $copy_user = Db::name('Admin')->where('id','in',$detail['copy_uids'])->column('name'); + $detail['copy_user'] = implode(',',$copy_user); + } + if($detail['file_ids'] !=''){ + $fileArray = Db::name('File')->where('id','in',$detail['file_ids'])->select(); + $detail['fileArray'] = $fileArray; + } + $is_check_admin = 0; $is_create_admin = 0; if($detail['admin_id'] == $this->uid){ @@ -424,6 +450,10 @@ class Invoice extends BaseController { $param = get_params(); $detail = Db::name('Invoice')->where(['id' => $param['id']])->find(); + $check_admin_ids = explode(",", strval($detail['check_admin_ids'])); + if (!in_array($this->uid, $check_admin_ids)){ + return to_assign(1,'您没权限审核该审批'); + } //当前审核节点详情 $step = Db::name('FlowStep')->where(['action_id'=>$detail['id'],'type'=>3,'sort'=>$detail['check_step_sort'],'delete_time'=>0])->find(); //审核通过 @@ -446,6 +476,9 @@ class Invoice extends BaseController $param['check_status'] = 2; } } + else{ + $param['check_status'] = 1; + } } else if($step['flow_type'] == 0){ //自由人审批 @@ -512,6 +545,20 @@ class Invoice extends BaseController ); $aid = Db::name('FlowRecord')->strict(false)->field(true)->insertGetId($checkData); add_log('check', $param['id'], $param); + //发送消息通知 + $msg=[ + 'from_uid'=>$detail['admin_id'], + 'create_time'=>date('Y-m-d H:i:s',$detail['create_time']), + 'action_id'=>$detail['id'] + ]; + if($param['check_status'] == 1){ + $users = $param['check_admin_ids']; + sendMessage($users,41,$msg); + } + if($param['check_status'] == 2){ + $users = $detail['admin_id']; + sendMessage($users,42,$msg); + } return to_assign(); } else{ @@ -538,6 +585,13 @@ class Invoice extends BaseController ); $aid = Db::name('FlowRecord')->strict(false)->field(true)->insertGetId($checkData); add_log('refue', $param['id'], $param); + //发送消息通知 + $msg=[ + 'create_time'=>date('Y-m-d H:i:s',$detail['create_time']), + 'action_id'=>$detail['id'] + ]; + $users = $detail['admin_id']; + sendMessage($users,43,$msg); return to_assign(); } else{ diff --git a/app/finance/view/expense/add.html b/app/finance/view/expense/add.html index c0a71e9..675a02b 100644 --- a/app/finance/view/expense/add.html +++ b/app/finance/view/expense/add.html @@ -9,6 +9,21 @@ .select-1,.select-2{display:none;} .layui-table-min th{font-size:13px; text-align:center; background-color:#f8f8f8;} .layui-table-min td{font-size:13px; padding:6px;text-align:center;} +.file-card {background: #fff;border: 1px solid #f1f1f1;border-radius: 2px; padding:8px 0; margin:4px 8px 4px 0; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} +.file-card .file-icon{font-size:36px; color:#646464; margin-right: 4px;} +.file-card .file-title {font-size: 12px; letter-spacing: 0; margin-right: 8px; line-height: 16px; word-break: break-all; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; + -webkit-line-clamp: 2; + line-clamp: 2; + -webkit-box-orient: vertical;width: calc(100% - 110px); +} +.file-card .file-tool .layui-icon{font-size:22px; padding:2px; cursor:pointer;} {/block} @@ -28,21 +43,21 @@
    报销凭证编号*报销凭证编号* 原始单据日期*原始单据日期* 入账月份*入账月份*
    报销选项*报销选项*
    @@ -70,6 +85,14 @@ + + + + + + + +
    附件
    +
    + +
    +
    审批流程* @@ -87,6 +110,12 @@
    抄送人 + +
    {else/} @@ -97,21 +126,21 @@ - + - + - + - + {if condition="$type eq 1"} - + - + {else/} - + - + {/if} - + - + - + - + - + diff --git a/app/note/view/index/view.html b/app/note/view/index/view.html index bf0b244..f060a0a 100644 --- a/app/note/view/index/view.html +++ b/app/note/view/index/view.html @@ -28,7 +28,7 @@

    {$note.title}

    - 发表于:{$note.create_time | date='Y-m-d m:i:s'}公告分类:{$note.cate_title} + 发表于:{$note.create_time | date='Y-m-d H:i:s'}公告分类:{$note.cate_title} 展示期间:{$note.start_time | date='Y-m-d'} - {$note.end_time | date='Y-m-d'}
    diff --git a/app/oa/controller/Approve.php b/app/oa/controller/Approve.php index 9c57ad8..6e1e8a6 100644 --- a/app/oa/controller/Approve.php +++ b/app/oa/controller/Approve.php @@ -102,7 +102,7 @@ class Approve extends BaseController ->join('Admin a', 'a.id = f.create_admin_id', 'left') ->join('Department d', 'd.id = f.department_id', 'left') ->join('FlowType t', 't.id = f.type', 'left') - ->whereOr($map1) + ->where($map1) ->order('f.id desc') ->group('f.id') ->paginate(['list_rows' => $rows, 'query' => $param]) @@ -139,8 +139,41 @@ class Approve extends BaseController } return table_assign(0, '', $list); } else { - $list = Db::name('FlowType')->where(['status'=>1])->select()->toArray(); - View::assign('list', $list); + return view(); + } + } + + public function copy() + { + if (request()->isAjax()) { + $param = get_params(); + $user_id = $this->uid; + //查询条件 + $map = []; + $map[] = ['check_status', '=', 2]; + $map[] = ['', 'exp', Db::raw("FIND_IN_SET('{$user_id}',copy_uids)")]; + $rows = empty($param['limit']) ? get_config('app . page_size') : $param['limit']; + $list = Db::name('Approve') + ->field('f.*,a.name,d.title as department_name,t.title as flow_type') + ->alias('f') + ->join('Admin a', 'a.id = f.create_admin_id', 'left') + ->join('Department d', 'd.id = f.department_id', 'left') + ->join('FlowType t', 't.id = f.type', 'left') + ->where($map) + ->order('f.id desc') + ->group('f.id') + ->paginate(['list_rows' => $rows, 'query' => $param]) + ->each(function($item, $key){ + $item['create_time'] = date('Y-m-d H:i', $item['create_time']); + $item['check_user'] = '-'; + if($item['check_status']<2 && !empty($item['check_admin_ids'])){ + $check_user = Db::name('Admin')->where('id','in',$item['check_admin_ids'])->column('name'); + $item['check_user'] = implode(',',$check_user); + } + return $item; + }); + return table_assign(0, '', $list); + } else { return view(); } } @@ -177,6 +210,7 @@ class Approve extends BaseController $param['update_time'] = time(); $param['check_status'] = 0; $param['check_step_sort'] = 0; + //删除原来的审核流程和审核记录 Db::name('FlowStep')->where(['action_id'=>$param['id'],'type'=>1,'delete_time'=>0])->update(['delete_time'=>time()]); Db::name('FlowRecord')->where(['action_id'=>$param['id'],'type'=>1,'delete_time'=>0])->update(['delete_time'=>time()]); @@ -222,6 +256,14 @@ class Approve extends BaseController $res = Db::name('FlowStep')->strict(false)->field(true)->insertGetId($flow_step); } add_log('edit', $param['id'], $param); + //发送消息通知 + $msg=[ + 'from_uid'=>$this->uid, + 'title' => Db::name('FlowType')->where('id',$param['type'])->value('title'), + 'action_id'=>$param['id'] + ]; + $users = $param['check_admin_ids']; + sendMessage($users,21,$msg); } else { $param['create_admin_id'] = $this->uid; $param['department_id'] = get_login_admin('did'); @@ -269,6 +311,14 @@ class Approve extends BaseController $res = Db::name('FlowStep')->strict(false)->field(true)->insertGetId($flow_step); } add_log('add', $aid, $param); + //给审核人发送消息通知 + $msg=[ + 'from_uid'=>$this->uid, + 'title' => Db::name('FlowType')->where('id',$param['type'])->value('title'), + 'action_id'=>$aid + ]; + $users = $param['check_admin_ids']; + sendMessage($users,21,$msg); } return to_assign(); } else { @@ -285,6 +335,10 @@ class Approve extends BaseController $detail['days'] = floor($detail['duration']*10/75); $detail['hours'] = (($detail['duration']*10)%75)/10; $type = $detail['type']; + if($detail['file_ids'] !=''){ + $fileArray = Db::name('File')->where('id','in',$detail['file_ids'])->select(); + $detail['fileArray'] = $fileArray; + } View::assign('detail', $detail); } $department = get_login_admin('did'); @@ -329,6 +383,7 @@ class Approve extends BaseController $detail['create_user'] = Db::name('Admin')->where('id',$detail['create_admin_id'])->value('name'); $flows = Db::name('FlowStep')->where(['action_id'=>$detail['id'],'type'=>1,'sort'=>$detail['check_step_sort'],'delete_time'=>0])->find(); $detail['check_user'] = '-'; + $detail['copy_user'] = '-'; $check_user_ids = []; if($detail['check_status']<2){ if($flows['flow_type']==1){ @@ -345,6 +400,14 @@ class Approve extends BaseController $detail['check_user'] = implode(',',$check_user); } } + if($detail['copy_uids'] !=''){ + $copy_user = Db::name('Admin')->where('id','in',$detail['copy_uids'])->column('name'); + $detail['copy_user'] = implode(',',$copy_user); + } + if($detail['file_ids'] !=''){ + $fileArray = Db::name('File')->where('id','in',$detail['file_ids'])->select(); + $detail['fileArray'] = $fileArray; + } $is_check_admin = 0; $is_create_admin = 0; @@ -383,6 +446,10 @@ class Approve extends BaseController { $param = get_params(); $detail = Db::name('Approve')->where('id',$param['id'])->find(); + $check_admin_ids = explode(",", strval($detail['check_admin_ids'])); + if (!in_array($this->uid, $check_admin_ids)){ + return to_assign(1,'您没权限审核该审批'); + } //当前审核节点详情 $step = Db::name('FlowStep')->where(['action_id'=>$detail['id'],'type'=>1,'sort'=>$detail['check_step_sort'],'delete_time'=>0])->find(); //审核通过 @@ -408,6 +475,9 @@ class Approve extends BaseController $param['check_admin_ids'] =''; } } + else{ + $param['check_status'] = 1; + } } else if($step['flow_type'] == 0){ //自由人审批 @@ -471,6 +541,22 @@ class Approve extends BaseController ); $aid = Db::name('FlowRecord')->strict(false)->field(true)->insertGetId($checkData); add_log('check', $param['id'], $param); + + //发送消息通知 + $msg=[ + 'from_uid'=>$detail['create_admin_id'], + 'create_time'=>date('Y-m-d H:i:s',$detail['create_time']), + 'title' => Db::name('FlowType')->where('id',$detail['type'])->value('title'), + 'action_id'=>$detail['id'] + ]; + if($param['check_status'] == 1){ + $users = $param['check_admin_ids']; + sendMessage($users,21,$msg); + } + if($param['check_status'] == 2){ + $users = $detail['create_admin_id']; + sendMessage($users,22,$msg); + } return to_assign(); } else{ @@ -496,6 +582,14 @@ class Approve extends BaseController ); $aid = Db::name('FlowRecord')->strict(false)->field(true)->insertGetId($checkData); add_log('refue', $param['id'], $param); + //发送消息通知 + $msg=[ + 'create_time'=>date('Y-m-d H:i:s',$detail['create_time']), + 'title' => Db::name('FlowType')->where('id',$detail['type'])->value('title'), + 'action_id'=>$detail['id'] + ]; + $users = $detail['create_admin_id']; + sendMessage($users,23,$msg); return to_assign(); } else{ diff --git a/app/oa/controller/Work.php b/app/oa/controller/Work.php index c176081..116ec13 100644 --- a/app/oa/controller/Work.php +++ b/app/oa/controller/Work.php @@ -190,7 +190,7 @@ class Work extends BaseController } $sender = get_admin($detail['admin_id']); $detail['person_name'] = $sender['name']; - $detail['send_time'] = date('Y-m-d h:i:s',$detail['create_time']); + $detail['send_time'] = date('Y-m-d H:i:s',$detail['create_time']); //当前消息的附件 $file_array = Db::name('WorkFileInterfix') ->field('wf.id,wf.wid,wf.file_id,f.name,f.filesize,f.filepath') @@ -206,7 +206,7 @@ class Work extends BaseController $detail['read_users'] = implode(",", $read_user_names); $detail['type_title'] = WorkRecord::$Type[$detail['type']]; if($detail['update_time']>0){ - $detail['update_time_str'] = date('Y-m-d h:i:s',$detail['update_time']); + $detail['update_time_str'] = date('Y-m-d H:i:s',$detail['update_time']); } View::assign('detail', $detail); return view(); diff --git a/app/oa/view/approve/add.html b/app/oa/view/approve/add.html index a9c2de4..f031e5b 100644 --- a/app/oa/view/approve/add.html +++ b/app/oa/view/approve/add.html @@ -33,7 +33,7 @@
    - + @@ -59,7 +59,7 @@ - + @@ -116,6 +116,12 @@ + + + +
    {$expense.department}
    报销凭证编号*报销凭证编号* 原始单据日期*原始单据日期* 入账月份*入账月份*
    报销选项*报销选项*
    @@ -141,6 +170,28 @@ + + + + + + + +
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -158,6 +209,12 @@
    抄送人 + +
    {/if} @@ -181,9 +238,76 @@ {block name="script"} +{/block} \ No newline at end of file diff --git a/app/message/view/index/reply.html b/app/message/view/index/reply.html index 18ec9f0..e965c92 100644 --- a/app/message/view/index/reply.html +++ b/app/message/view/index/reply.html @@ -19,7 +19,7 @@
    收件人*收件人* @@ -28,14 +28,14 @@
    主题*主题*
    收件人*收件人* @@ -44,14 +44,14 @@
    主题*主题*
    内容*内容* diff --git a/app/note/controller/Index.php b/app/note/controller/Index.php index a66450d..d3c8444 100644 --- a/app/note/controller/Index.php +++ b/app/note/controller/Index.php @@ -77,7 +77,12 @@ class Index extends BaseController if ($sid) { add_log('add', $sid, $param); $users= Db::name('Admin')->field('id as from_uid')->where(['status' => 1])->column('id'); - sendMessage($users,1,['title'=>$param['title'],'action_id'=>$sid]); + $msg=[ + 'from_uid'=>$this->uid, + 'title' => $param['title'], + 'action_id'=>$sid + ]; + sendMessage($users,1,$msg); } return to_assign(); diff --git a/app/note/view/index/add.html b/app/note/view/index/add.html index 902dacf..8c34c84 100644 --- a/app/note/view/index/add.html +++ b/app/note/view/index/add.html @@ -14,7 +14,7 @@ 公告分类*公告分类*
    展示期间*展示期间*
    @@ -41,7 +41,7 @@
    状态*状态* {if condition="$id eq 0"} @@ -65,7 +65,7 @@
    公告内容*公告内容*
    开始时间 *开始时间* 结束时间 *结束时间*
    抄送人 + +
    {else/} @@ -137,7 +143,7 @@ - + @@ -163,7 +169,7 @@ - + @@ -220,6 +226,12 @@ + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    抄送人 + +
    {/eq}
    @@ -402,6 +414,13 @@ const moduleInit = ['tool','formSelects','employeepicker']; return false; }); + //选择抄送人员 + var copy_uids = $('#copy_uids').attr('xm-selected'); + formSelects.data('selectcopy', 'server', { + url: '/api/index/get_employee_select', + keyword: copy_uids, + }); + form.on('select(flowtype)', function(data){ var check_type = data.elem[data.elem.selectedIndex].title; var formHtml='
    审核人*审批流程\
      '+flowLi+'
    \ @@ -457,7 +479,7 @@ const moduleInit = ['tool','formSelects','employeepicker']; } }) } - }); + }); } {/block} diff --git a/app/oa/view/approve/add_caigou.html b/app/oa/view/approve/add_caigou.html index 9c9919c..0ba2fd8 100644 --- a/app/oa/view/approve/add_caigou.html +++ b/app/oa/view/approve/add_caigou.html @@ -11,7 +11,7 @@
    物品名称* 期望交互日期 *期望交互日期*
    附件
    +
    + +
    +
    审批流程* @@ -51,13 +59,19 @@
    抄送人 + +
    {else/} - + @@ -80,6 +94,28 @@ + + + + + + + +
    物品名称* 期望交互日期 *期望交互日期*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -97,6 +133,12 @@
    抄送人 + +
    {/eq}
    @@ -112,9 +154,75 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_chuchai.html b/app/oa/view/approve/add_chuchai.html index 6b7e56a..a838f93 100644 --- a/app/oa/view/approve/add_chuchai.html +++ b/app/oa/view/approve/add_chuchai.html @@ -9,7 +9,7 @@ {eq name="$id" value="0"} - + @@ -41,7 +41,7 @@ - + @@ -85,6 +85,14 @@ + + + + + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    附件
    +
    + +
    +
    审批流程* @@ -102,11 +110,17 @@
    抄送人 + +
    {else/} - + @@ -138,7 +152,7 @@ - + @@ -182,6 +196,28 @@ + + + + + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -199,6 +235,12 @@
    抄送人 + +
    {/eq}
    @@ -214,9 +256,30 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_fukuan.html b/app/oa/view/approve/add_fukuan.html index 2d4ed77..3b63450 100644 --- a/app/oa/view/approve/add_fukuan.html +++ b/app/oa/view/approve/add_fukuan.html @@ -24,7 +24,7 @@ - 付款日期 * + 付款日期* @@ -32,11 +32,11 @@ 收款人全称* - 银行账号* - - 开户行 * + 银行账号 + + 开户行 - + @@ -51,6 +51,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -68,6 +76,12 @@ + + 抄送人 + + + + {else/} @@ -87,7 +101,7 @@ - + @@ -95,11 +109,11 @@ - - - + + + @@ -114,6 +128,28 @@ + + + + + + + +
    付款日期 *付款日期*
    收款人全称* 银行账号*开户行 *银行账号开户行 - +
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -131,6 +167,12 @@
    抄送人 + +
    {/eq}
    @@ -146,9 +188,75 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_gongwen.html b/app/oa/view/approve/add_gongwen.html index c0c5a7f..1ec2b3d 100644 --- a/app/oa/view/approve/add_gongwen.html +++ b/app/oa/view/approve/add_gongwen.html @@ -24,7 +24,7 @@ 来文单位* - 来文日期 * + 来文日期* @@ -57,6 +57,12 @@ + + 抄送人 + + + + {else/} @@ -76,7 +82,7 @@ - + @@ -108,6 +114,12 @@ + + + +
    来文单位* 来文日期 *来文日期*
    抄送人 + +
    {/eq}
    @@ -123,9 +135,9 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_huiyishi.html b/app/oa/view/approve/add_huiyishi.html index c23be58..7bb188b 100644 --- a/app/oa/view/approve/add_huiyishi.html +++ b/app/oa/view/approve/add_huiyishi.html @@ -9,7 +9,7 @@ {eq name="$id" value="0"} - + @@ -41,7 +41,7 @@ - + @@ -102,11 +102,17 @@ + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    抄送人 + +
    {else/} - + @@ -138,7 +144,7 @@ - + @@ -199,6 +205,12 @@ + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    抄送人 + +
    {/eq}
    @@ -214,9 +226,9 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_huodong.html b/app/oa/view/approve/add_huodong.html index 1bd7bf3..960c7a7 100644 --- a/app/oa/view/approve/add_huodong.html +++ b/app/oa/view/approve/add_huodong.html @@ -21,7 +21,7 @@ - 开始时间 * + 开始时间* @@ -53,7 +53,7 @@ - 结束时间 * + 结束时间* @@ -93,6 +93,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -110,6 +118,12 @@ + + 抄送人 + + + + {else/} @@ -126,7 +140,7 @@ - + @@ -158,7 +172,7 @@ - + @@ -198,6 +212,28 @@ + + + + + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -215,6 +251,12 @@
    抄送人 + +
    {/eq}
    @@ -230,9 +272,75 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_jiaban.html b/app/oa/view/approve/add_jiaban.html index 64e6334..087e0cb 100644 --- a/app/oa/view/approve/add_jiaban.html +++ b/app/oa/view/approve/add_jiaban.html @@ -9,7 +9,7 @@ {eq name="$id" value="0"} - + @@ -64,7 +64,7 @@ - + @@ -148,11 +148,17 @@ + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    抄送人 + +
    {else/} - + @@ -207,7 +213,7 @@ - + @@ -291,6 +297,12 @@ + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    抄送人 + +
    {/eq}
    @@ -331,9 +343,9 @@ function leaveTime() { } -const moduleInit = ['tool','employeepicker']; +const moduleInit = ['tool','formSelects','employeepicker']; function gouguInit() { - var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate; + var form = layui.form,tool=layui.tool, formSelects = layui.formSelects, employeepicker = layui.employeepicker,laydate = layui.laydate; //日期时间范围 laydate.render({ elem: '#start_time_a', @@ -419,6 +431,13 @@ const moduleInit = ['tool','employeepicker']; return false; }); + //选择抄送人员 + var copy_uids = $('#copy_uids').attr('xm-selected'); + formSelects.data('selectcopy', 'server', { + url: '/api/index/get_employee_select', + keyword: copy_uids, + }); + form.on('select(flowtype)', function(data){ var check_type = data.elem[data.elem.selectedIndex].title; var formHtml='审核人*\ @@ -437,23 +456,27 @@ const moduleInit = ['tool','employeepicker']; success: function (e) { if (e.code == 0) { var flowLi=''; - for(var a=0;a'+e.data[a].user_id_info[b].name+''; + for(var b=0;b'+flow_data[a].user_id_info[b].name+''; } } flowLi+='
  • \ @@ -463,8 +486,7 @@ const moduleInit = ['tool','employeepicker'];
      '+userList+'
    \
  • \ '; - } - + } formHtml = '审批流程\ \
      '+flowLi+'
    \ @@ -474,9 +496,7 @@ const moduleInit = ['tool','employeepicker']; } }) } - - }); - + }); } {/block} diff --git a/app/oa/view/approve/add_jiangli.html b/app/oa/view/approve/add_jiangli.html index 6c4cf3b..5872056 100644 --- a/app/oa/view/approve/add_jiangli.html +++ b/app/oa/view/approve/add_jiangli.html @@ -11,7 +11,7 @@ 奖励金额* - 奖励日期 * + 奖励日期* @@ -28,6 +28,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -45,13 +53,19 @@ + + 抄送人 + + + + {else/} - + @@ -68,6 +82,28 @@ + + + + + + + +
    奖励金额* 奖励日期 *奖励日期*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -85,6 +121,12 @@
    抄送人 + +
    {/eq}
    @@ -100,9 +142,75 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_jiekuan.html b/app/oa/view/approve/add_jiekuan.html index 4eb0bae..13b134f 100644 --- a/app/oa/view/approve/add_jiekuan.html +++ b/app/oa/view/approve/add_jiekuan.html @@ -20,7 +20,7 @@ {/volist} - 申请日期 * + 申请日期* @@ -30,7 +30,7 @@ 银行账号* - 开户行 * + 开户行* @@ -64,6 +64,12 @@ + + 抄送人 + + + + {else/} @@ -79,7 +85,7 @@ {/volist} - + @@ -89,7 +95,7 @@ - + @@ -123,6 +129,12 @@ + + + +
    申请日期 *申请日期* 银行账号* 开户行 *开户行*
    抄送人 + +
    {/eq}
    @@ -138,9 +150,9 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_lizhi.html b/app/oa/view/approve/add_lizhi.html index f3282b9..648d31c 100644 --- a/app/oa/view/approve/add_lizhi.html +++ b/app/oa/view/approve/add_lizhi.html @@ -11,7 +11,7 @@ 员工姓名* - 入职日期 * + 入职日期* @@ -50,6 +50,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -67,13 +75,19 @@ + + 抄送人 + + + + {else/} - + @@ -112,6 +126,28 @@ + + + + + + + +
    员工姓名* 入职日期 *入职日期*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -129,6 +165,12 @@
    抄送人 + +
    {/eq}
    @@ -144,9 +186,75 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_qingjia.html b/app/oa/view/approve/add_qingjia.html index f4e6d1a..918dd5c 100644 --- a/app/oa/view/approve/add_qingjia.html +++ b/app/oa/view/approve/add_qingjia.html @@ -26,7 +26,7 @@ - 开始时间 * + 开始时间* @@ -52,7 +52,7 @@ - 结束时间 * + 结束时间* @@ -92,6 +92,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -109,6 +117,12 @@ + + 抄送人 + + + + {else/} @@ -130,7 +144,7 @@ - + @@ -156,7 +170,7 @@ - + @@ -196,6 +210,28 @@ + + + + + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -213,6 +249,12 @@
    抄送人 + +
    {/eq}
    @@ -292,9 +334,31 @@ function leaveTime() { return hour; } +// 查找指定的元素在数组中的位置 +Array.prototype.indexOf = function (val) { + for (var i = 0; i < this.length; i++) { + if (this[i] == val) { + return i; + } + } + return -1; +}; +// 通过索引删除数组元素 +Array.prototype.remove = function (val) { + var index = this.indexOf(val); + if (index > -1) { + this.splice(index, 1); + } +}; + const moduleInit = ['tool','formSelects','employeepicker']; function gouguInit() { - var form = layui.form,tool=layui.tool, formSelects = layui.formSelects, employeepicker = layui.employeepicker,laydate = layui.laydate; + var form = layui.form, + upload = layui.upload, + tool=layui.tool, + formSelects = layui.formSelects, + employeepicker = layui.employeepicker, + laydate = layui.laydate; //日期时间范围 laydate.render({ elem: '#start_time_a', @@ -318,6 +382,50 @@ const moduleInit = ['tool','formSelects','employeepicker']; } }); + //多附件上传 + upload.render({ + elem: '#upFile' + ,url: "/api/index/upload" + ,multiple: true + ,accept: 'file' //普通文件 + ,exts: 'png|jpg|gif|jpeg|doc|docx|ppt|pptx|xls|xlsx|pdf|zip|rar|7z' //只允许上传文件格式 + ,done: function(res){ + //如果上传失败 + if (res.code == 1) { + layer.msg('上传失败') + return false; + } + //上传成功 + var idsStr = $('#fileList input').val(),idsArray = []; + if (idsStr != '') { + idsArray = idsStr.split(","); + } + idsArray.push(res.data.id); + $('#fileList input').attr('value', idsArray.join(',')); + let temp = `
    +
    + +
    ${res.data.name}
    +
    + + +
    +
    +
    `; + $('#fileList').append(temp); + } + }); + $('#fileList').on('click', '.btn-delete', function () { + var _id = $(this).data('id'); + var idsStr = $('#fileList input').val(),idsArray = []; + if (idsStr != '') { + idsArray = idsStr.split(","); + } + idsArray.remove(_id); + $('#fileList input').attr('value', idsArray.join(',')); + $('#uploadImg' + _id).remove(); + }) + //日期时间范围 laydate.render({ elem: '#end_time_a', @@ -372,8 +480,7 @@ const moduleInit = ['tool','formSelects','employeepicker']; $('[name="check_admin_name"]').val(names); } }); - }) - + }) //监听提交 form.on('submit(webform)', function(data){ console.log(data.field); @@ -395,6 +502,13 @@ const moduleInit = ['tool','formSelects','employeepicker']; return false; }); + //选择抄送人员 + var copy_uids = $('#copy_uids').attr('xm-selected'); + formSelects.data('selectcopy', 'server', { + url: '/api/index/get_employee_select', + keyword: copy_uids, + }); + form.on('select(flowtype)', function(data){ var check_type = data.elem[data.elem.selectedIndex].title; var formHtml='审核人*\ @@ -413,23 +527,27 @@ const moduleInit = ['tool','formSelects','employeepicker']; success: function (e) { if (e.code == 0) { var flowLi=''; - for(var a=0;a'+e.data[a].user_id_info[b].name+''; + for(var b=0;b'+flow_data[a].user_id_info[b].name+''; } } flowLi+='
  • \ @@ -439,8 +557,7 @@ const moduleInit = ['tool','formSelects','employeepicker'];
      '+userList+'
    \
  • \ '; - } - + } formHtml = '审批流程\ \
      '+flowLi+'
    \ @@ -450,9 +567,7 @@ const moduleInit = ['tool','formSelects','employeepicker']; } }) } - - }); - + }); } {/block} diff --git a/app/oa/view/approve/add_ruzhi.html b/app/oa/view/approve/add_ruzhi.html index effa68d..4a4a39a 100644 --- a/app/oa/view/approve/add_ruzhi.html +++ b/app/oa/view/approve/add_ruzhi.html @@ -11,7 +11,7 @@ 员工姓名* - 入职日期 * + 入职日期* @@ -68,13 +68,19 @@ + + 抄送人 + + + + {else/} - + @@ -131,6 +137,12 @@ + + + +
    员工姓名* 入职日期 *入职日期*
    抄送人 + +
    {/eq}
    @@ -146,9 +158,9 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_style.html b/app/oa/view/approve/add_style.html index 08e6d45..7beb22f 100644 --- a/app/oa/view/approve/add_style.html +++ b/app/oa/view/approve/add_style.html @@ -5,4 +5,19 @@ .layui-form-item .layui-btn-danger{display:none; margin-top:-8px} .layui-form-item:hover .layui-btn-danger{display:inline-block;} .select-1,.select-2{display:none;} +.file-card {background: #fff;border: 1px solid #f1f1f1;border-radius: 2px; padding:8px 0; margin:4px 8px 4px 0; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} +.file-card .file-icon{font-size:36px; color:#646464; margin-right: 4px;} +.file-card .file-title {font-size: 12px; letter-spacing: 0; margin-right: 8px; line-height: 16px; word-break: break-all; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; + -webkit-line-clamp: 2; + line-clamp: 2; + -webkit-box-orient: vertical;width: calc(100% - 110px); +} +.file-card .file-tool .layui-icon{font-size:22px; padding:2px; cursor:pointer;} \ No newline at end of file diff --git a/app/oa/view/approve/add_tongyong.html b/app/oa/view/approve/add_tongyong.html index e4da8ef..1e9eeb0 100644 --- a/app/oa/view/approve/add_tongyong.html +++ b/app/oa/view/approve/add_tongyong.html @@ -22,11 +22,19 @@ - 审批详细描述* + 详细描述* + +
    附件
    + +
    + +
    + + 审批流程* @@ -44,6 +52,12 @@ + + 抄送人 + + + + {else/} @@ -61,11 +75,33 @@ - + + + + + + + + +
    审批详细描述*详细描述*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -83,6 +119,12 @@
    抄送人 + +
    {/eq}
    @@ -98,9 +140,75 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_waichu.html b/app/oa/view/approve/add_waichu.html index 9c2c990..0fa4b47 100644 --- a/app/oa/view/approve/add_waichu.html +++ b/app/oa/view/approve/add_waichu.html @@ -13,7 +13,7 @@ - 开始时间 * + 开始时间* @@ -39,7 +39,7 @@ - 结束时间 * + 结束时间* @@ -79,6 +79,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -96,6 +104,12 @@ + + 抄送人 + + + + {else/} @@ -104,7 +118,7 @@ - + @@ -130,7 +144,7 @@ - + @@ -170,6 +184,28 @@ + + + + + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -187,6 +223,12 @@
    抄送人 + +
    {/eq}
    @@ -266,10 +308,31 @@ function leaveTime() { return hour; } +// 查找指定的元素在数组中的位置 +Array.prototype.indexOf = function (val) { + for (var i = 0; i < this.length; i++) { + if (this[i] == val) { + return i; + } + } + return -1; +}; +// 通过索引删除数组元素 +Array.prototype.remove = function (val) { + var index = this.indexOf(val); + if (index > -1) { + this.splice(index, 1); + } +}; -const moduleInit = ['tool','employeepicker']; +const moduleInit = ['tool','formSelects','employeepicker']; function gouguInit() { - var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate; + var form = layui.form, + upload = layui.upload, + tool=layui.tool, + formSelects = layui.formSelects, + employeepicker = layui.employeepicker, + laydate = layui.laydate; //日期时间范围 laydate.render({ elem: '#start_time_a', @@ -331,6 +394,50 @@ const moduleInit = ['tool','employeepicker']; } $('[name="duration"]').val(hours/10); }); + + //多附件上传 + upload.render({ + elem: '#upFile' + ,url: "/api/index/upload" + ,multiple: true + ,accept: 'file' //普通文件 + ,exts: 'png|jpg|gif|jpeg|doc|docx|ppt|pptx|xls|xlsx|pdf|zip|rar|7z' //只允许上传文件格式 + ,done: function(res){ + //如果上传失败 + if (res.code == 1) { + layer.msg('上传失败') + return false; + } + //上传成功 + var idsStr = $('#fileList input').val(),idsArray = []; + if (idsStr != '') { + idsArray = idsStr.split(","); + } + idsArray.push(res.data.id); + $('#fileList input').attr('value', idsArray.join(',')); + let temp = `
    +
    + +
    ${res.data.name}
    +
    + + +
    +
    +
    `; + $('#fileList').append(temp); + } + }); + $('#fileList').on('click', '.btn-delete', function () { + var _id = $(this).data('id'); + var idsStr = $('#fileList input').val(),idsArray = []; + if (idsStr != '') { + idsArray = idsStr.split(","); + } + idsArray.remove(_id); + $('#fileList input').attr('value', idsArray.join(',')); + $('#uploadImg' + _id).remove(); + }) //选择人员 $('.layui-form').on('click','[name="check_admin_name"]',function(){ @@ -368,6 +475,13 @@ const moduleInit = ['tool','employeepicker']; return false; }); + //选择抄送人员 + var copy_uids = $('#copy_uids').attr('xm-selected'); + formSelects.data('selectcopy', 'server', { + url: '/api/index/get_employee_select', + keyword: copy_uids, + }); + form.on('select(flowtype)', function(data){ var check_type = data.elem[data.elem.selectedIndex].title; var formHtml='审核人*\ @@ -386,23 +500,27 @@ const moduleInit = ['tool','employeepicker']; success: function (e) { if (e.code == 0) { var flowLi=''; - for(var a=0;a'+e.data[a].user_id_info[b].name+''; + for(var b=0;b'+flow_data[a].user_id_info[b].name+''; } } flowLi+='
  • \ @@ -412,8 +530,7 @@ const moduleInit = ['tool','employeepicker'];
      '+userList+'
    \
  • \ '; - } - + } formHtml = '审批流程\ \
      '+flowLi+'
    \ @@ -423,7 +540,7 @@ const moduleInit = ['tool','employeepicker']; } }) } - }); + }); } {/block} diff --git a/app/oa/view/approve/add_weixiu.html b/app/oa/view/approve/add_weixiu.html index d216420..5805fd9 100644 --- a/app/oa/view/approve/add_weixiu.html +++ b/app/oa/view/approve/add_weixiu.html @@ -24,7 +24,7 @@ 预计维修费用* - 报修日期 * + 报修日期* @@ -35,6 +35,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -52,6 +60,12 @@ + + 抄送人 + + + + {else/} @@ -71,7 +85,7 @@ - + @@ -82,6 +96,28 @@ + + + + + + + +
    预计维修费用* 报修日期 *报修日期*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -99,6 +135,12 @@
    抄送人 + +
    {/eq}
    @@ -114,9 +156,31 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_yongche.html b/app/oa/view/approve/add_yongche.html index 760a630..45575dc 100644 --- a/app/oa/view/approve/add_yongche.html +++ b/app/oa/view/approve/add_yongche.html @@ -9,7 +9,7 @@ {eq name="$id" value="0"} - + @@ -64,7 +64,7 @@ - + @@ -161,11 +161,17 @@ + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    抄送人 + +
    {else/} - + @@ -220,7 +226,7 @@ - + @@ -317,6 +323,12 @@ + + + +
    开始时间 *开始时间* 结束时间 *结束时间*
    抄送人 + +
    {/eq}
    @@ -356,9 +368,9 @@ function leaveTime() { return hours; } -const moduleInit = ['tool','employeepicker']; +const moduleInit = ['tool','formSelects','employeepicker']; function gouguInit() { - var form = layui.form,tool=layui.tool, employeepicker = layui.employeepicker,laydate = layui.laydate; + var form = layui.form,tool=layui.tool, formSelects = layui.formSelects, employeepicker = layui.employeepicker,laydate = layui.laydate; //日期时间范围 laydate.render({ @@ -443,6 +455,13 @@ const moduleInit = ['tool','employeepicker']; return false; }); + //选择抄送人员 + var copy_uids = $('#copy_uids').attr('xm-selected'); + formSelects.data('selectcopy', 'server', { + url: '/api/index/get_employee_select', + keyword: copy_uids, + }); + form.on('select(flowtype)', function(data){ var check_type = data.elem[data.elem.selectedIndex].title; var formHtml='审核人*\ @@ -461,23 +480,27 @@ const moduleInit = ['tool','employeepicker']; success: function (e) { if (e.code == 0) { var flowLi=''; - for(var a=0;a'+e.data[a].user_id_info[b].name+''; + for(var b=0;b'+flow_data[a].user_id_info[b].name+''; } } flowLi+='
  • \ @@ -487,8 +510,7 @@ const moduleInit = ['tool','employeepicker'];
      '+userList+'
    \
  • \ '; - } - + } formHtml = '审批流程\ \
      '+flowLi+'
    \ @@ -498,7 +520,7 @@ const moduleInit = ['tool','employeepicker']; } }) } - }); + }); } {/block} diff --git a/app/oa/view/approve/add_yongcheguihai.html b/app/oa/view/approve/add_yongcheguihai.html index fffc6b0..0c332b5 100644 --- a/app/oa/view/approve/add_yongcheguihai.html +++ b/app/oa/view/approve/add_yongcheguihai.html @@ -18,7 +18,7 @@ {/volist} - 归还时间 * + 归还时间* @@ -52,6 +52,12 @@ + + 抄送人 + + + + {else/} @@ -65,7 +71,7 @@ {/volist} - + @@ -99,6 +105,12 @@ + + + +
    归还时间 *归还时间*
    抄送人 + +
    {/eq}
    @@ -114,9 +126,9 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_yongzhang.html b/app/oa/view/approve/add_yongzhang.html index d0d6a74..e0ecacb 100644 --- a/app/oa/view/approve/add_yongzhang.html +++ b/app/oa/view/approve/add_yongzhang.html @@ -9,7 +9,7 @@ {eq name="$id" value="0"} - + @@ -40,7 +40,7 @@ - + @@ -51,6 +51,14 @@ + + + + + + + +
    用印日期 *用印日期* 文件份数 *文件份数*
    附件
    +
    + +
    +
    审批流程* @@ -68,11 +76,17 @@
    抄送人 + +
    {else/} - + @@ -103,7 +117,7 @@ - + @@ -114,6 +128,28 @@ + + + + + + + +
    用印日期 *用印日期* 文件份数 *文件份数*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -131,6 +167,12 @@
    抄送人 + +
    {/eq}
    @@ -146,9 +188,31 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_zhaopin.html b/app/oa/view/approve/add_zhaopin.html index debd929..3048d0f 100644 --- a/app/oa/view/approve/add_zhaopin.html +++ b/app/oa/view/approve/add_zhaopin.html @@ -18,7 +18,7 @@ {/volist} - 期望到岗日期 * + 期望到岗日期* @@ -33,23 +33,31 @@ {/volist} - 招聘人数 * + 招聘人数* - 岗位职责 * + 岗位职责* - 任职要求 * + 任职要求* + +
    附件
    + +
    + +
    + + 审批流程* @@ -67,6 +75,12 @@ + + 抄送人 + + + + {else/} @@ -80,7 +94,7 @@ {/volist} - + @@ -95,23 +109,45 @@ {/volist} - + - + - + + + + + + + + +
    期望到岗日期 *期望到岗日期* 招聘人数 *招聘人数*
    岗位职责 *岗位职责*
    任职要求 *任职要求*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -129,6 +165,12 @@
    抄送人 + +
    {/eq}
    @@ -144,9 +186,75 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_zhuangang.html b/app/oa/view/approve/add_zhuangang.html index aa4d356..271ffed 100644 --- a/app/oa/view/approve/add_zhuangang.html +++ b/app/oa/view/approve/add_zhuangang.html @@ -11,7 +11,7 @@ 员工姓名* - 入职日期 * + 入职日期* @@ -70,6 +70,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -87,13 +95,19 @@ + + 抄送人 + + + + {else/} - + @@ -152,6 +166,28 @@ + + + + + + + +
    员工姓名* 入职日期 *入职日期*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -169,6 +205,12 @@
    抄送人 + +
    {/eq}
    @@ -184,9 +226,75 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/add_zhuanzheng.html b/app/oa/view/approve/add_zhuanzheng.html index fb90976..ff363e8 100644 --- a/app/oa/view/approve/add_zhuanzheng.html +++ b/app/oa/view/approve/add_zhuanzheng.html @@ -11,7 +11,7 @@ 员工姓名* - 转正日期 * + 转正日期* @@ -42,6 +42,14 @@ + +
    附件
    + +
    + +
    + + 审批流程* @@ -59,13 +67,19 @@ + + 抄送人 + + + + {else/} - + @@ -96,6 +110,28 @@ + + + + + + + +
    员工姓名* 转正日期 *转正日期*
    附件
    +
    + + {notempty name="$detail.file_ids"} + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + + +
    +
    +
    + {/volist} + {/notempty} +
    +
    审批流程* @@ -113,6 +149,12 @@
    抄送人 + +
    {/eq}
    @@ -128,9 +170,31 @@ {block name="script"} {/block} diff --git a/app/oa/view/approve/copy.html b/app/oa/view/approve/copy.html new file mode 100644 index 0000000..8a053d6 --- /dev/null +++ b/app/oa/view/approve/copy.html @@ -0,0 +1,53 @@ +{extend name="../../base/view/common/base" /} + +{block name="body"} +
    +
    +
    + +{/block} + + + +{block name="script"} + +{/block} + \ No newline at end of file diff --git a/app/oa/view/approve/index.html b/app/oa/view/approve/index.html index 57b212e..fb86f7f 100644 --- a/app/oa/view/approve/index.html +++ b/app/oa/view/approve/index.html @@ -87,7 +87,7 @@
    {/block} diff --git a/app/oa/view/approve/list.html b/app/oa/view/approve/list.html index 16e9400..800be1b 100644 --- a/app/oa/view/approve/list.html +++ b/app/oa/view/approve/list.html @@ -16,7 +16,7 @@
    {/block} diff --git a/app/oa/view/approve/view_caigou.html b/app/oa/view/approve/view_caigou.html index 921014d..d6649b0 100644 --- a/app/oa/view/approve/view_caigou.html +++ b/app/oa/view/approve/view_caigou.html @@ -10,7 +10,7 @@ 物品名称 {$detail.amount} - 期望交互日期 + 期望交互日期 {$detail.detail_time} @@ -27,8 +27,27 @@ 备注 {$detail.remark} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_chuchai.html b/app/oa/view/approve/view_chuchai.html index 619585a..7d689fd 100644 --- a/app/oa/view/approve/view_chuchai.html +++ b/app/oa/view/approve/view_chuchai.html @@ -19,8 +19,27 @@ 出差事由 {$detail.content} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_fukuan.html b/app/oa/view/approve/view_fukuan.html index 344dd33..d07aecd 100644 --- a/app/oa/view/approve/view_fukuan.html +++ b/app/oa/view/approve/view_fukuan.html @@ -24,7 +24,7 @@ {$detail.detail_time} - 收款人全称 + 收款人全称 {$detail.name} 银行账号 {$detail.bank} @@ -39,8 +39,27 @@ 备注 {$detail.remark} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_gongwen.html b/app/oa/view/approve/view_gongwen.html index 102a15f..9c05027 100644 --- a/app/oa/view/approve/view_gongwen.html +++ b/app/oa/view/approve/view_gongwen.html @@ -31,8 +31,27 @@ 备注 {$detail.remark} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_huodong.html b/app/oa/view/approve/view_huodong.html index 4c7d4de..29541e8 100644 --- a/app/oa/view/approve/view_huodong.html +++ b/app/oa/view/approve/view_huodong.html @@ -23,8 +23,27 @@ 备注 {$detail.remark} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_jiangli.html b/app/oa/view/approve/view_jiangli.html index b7b7005..4183194 100644 --- a/app/oa/view/approve/view_jiangli.html +++ b/app/oa/view/approve/view_jiangli.html @@ -21,8 +21,27 @@ 备注 {$detail.remark} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_lizhi.html b/app/oa/view/approve/view_lizhi.html index 49f438b..9d306ae 100644 --- a/app/oa/view/approve/view_lizhi.html +++ b/app/oa/view/approve/view_lizhi.html @@ -28,17 +28,36 @@ - 申请离职日期 + 申请离职日期 {$detail.start_time} - 预计离职日期 + 预计离职日期 {$detail.end_time} - 申请离职原因 + 申请离职原因 {$detail.content} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_qingjia.html b/app/oa/view/approve/view_qingjia.html index a3fdf51..fada8ae 100644 --- a/app/oa/view/approve/view_qingjia.html +++ b/app/oa/view/approve/view_qingjia.html @@ -33,6 +33,26 @@ 请假事由 {$detail.content} + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} {include file="/approve/view_step" /}
    diff --git a/app/oa/view/approve/view_step.html b/app/oa/view/approve/view_step.html index 96a9f10..f599cc1 100644 --- a/app/oa/view/approve/view_step.html +++ b/app/oa/view/approve/view_step.html @@ -10,10 +10,14 @@ 当前审核人 {$detail.check_user} + 抄送人 + + {$detail.copy_user} + 审批流程 - +
    @@ -28,7 +32,7 @@ {eq name="$flows.flow_type" value="0"} 审批节点 * - +
    @@ -39,7 +43,7 @@ {/eq} 审批意见 * - + diff --git a/app/oa/view/approve/view_style.html b/app/oa/view/approve/view_style.html index c9a8a86..5e4d4ea 100644 --- a/app/oa/view/approve/view_style.html +++ b/app/oa/view/approve/view_style.html @@ -40,4 +40,19 @@ .layui-timeline-content ul{font-size:12px;} .check-status{color:#999; margin-left:5px;} .check-remark{padding:6px; margin-top:6px; margin-bottom:10px; border-radius:4px; background-color:#f5f5f5;} +.file-card {background: #fff;border: 1px solid #f1f1f1;border-radius: 2px; padding:8px 0; margin:4px 8px 4px 0; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} +.file-card .file-icon{font-size:36px; color:#646464; margin-right: 4px;} +.file-card .file-title {font-size: 12px; letter-spacing: 0; margin-right: 8px; line-height: 16px; word-break: break-all; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; + -webkit-line-clamp: 2; + line-clamp: 2; + -webkit-box-orient: vertical;width: calc(100% - 80px); +} +.file-card .file-tool .layui-icon{font-size:22px; padding:2px; cursor:pointer;} \ No newline at end of file diff --git a/app/oa/view/approve/view_tongyong.html b/app/oa/view/approve/view_tongyong.html index 245df06..077793b 100644 --- a/app/oa/view/approve/view_tongyong.html +++ b/app/oa/view/approve/view_tongyong.html @@ -21,8 +21,27 @@ 审批详细描述 {$detail.content} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_waichu.html b/app/oa/view/approve/view_waichu.html index f2cb891..ae09dc1 100644 --- a/app/oa/view/approve/view_waichu.html +++ b/app/oa/view/approve/view_waichu.html @@ -25,8 +25,27 @@ 外出事由 {$detail.content} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_weixiu.html b/app/oa/view/approve/view_weixiu.html index 2294b76..33de0f4 100644 --- a/app/oa/view/approve/view_weixiu.html +++ b/app/oa/view/approve/view_weixiu.html @@ -27,8 +27,27 @@ 故障描述 {$detail.content} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_yongzhang.html b/app/oa/view/approve/view_yongzhang.html index 55e134d..1e1277b 100644 --- a/app/oa/view/approve/view_yongzhang.html +++ b/app/oa/view/approve/view_yongzhang.html @@ -38,8 +38,27 @@ 用印事由 {$detail.content} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_zhaopin.html b/app/oa/view/approve/view_zhaopin.html index 3edaf0a..4da214f 100644 --- a/app/oa/view/approve/view_zhaopin.html +++ b/app/oa/view/approve/view_zhaopin.html @@ -35,8 +35,27 @@ 任职要求 {$detail.remark} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_zhuangang.html b/app/oa/view/approve/view_zhuangang.html index 3a3abf6..0fc5b81 100644 --- a/app/oa/view/approve/view_zhuangang.html +++ b/app/oa/view/approve/view_zhuangang.html @@ -51,8 +51,27 @@ 申请转岗原因 {$detail.content} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/approve/view_zhuanzheng.html b/app/oa/view/approve/view_zhuanzheng.html index f3f0954..2fbe9e3 100644 --- a/app/oa/view/approve/view_zhuanzheng.html +++ b/app/oa/view/approve/view_zhuanzheng.html @@ -31,8 +31,27 @@ 试用期评价 {$detail.content} - - + {notempty name="$detail.file_ids"} + + 相关附件 + +
    + {volist name="$detail.fileArray" id="vo"} +
    +
    + +
    {$vo.name}
    +
    + +
    +
    +
    + {/volist} +
    + + + {/notempty} + {include file="/approve/view_step" /}
    {/block} diff --git a/app/oa/view/plan/calendar.html b/app/oa/view/plan/calendar.html index c640223..d73bc43 100644 --- a/app/oa/view/plan/calendar.html +++ b/app/oa/view/plan/calendar.html @@ -128,19 +128,19 @@ user-select: none;} var content='\ \ \ - \ + \ \ - \ + \ \ \ \ - \ + \ \ - \ + \ \ diff --git a/app/oa/view/plan/index.html b/app/oa/view/plan/index.html index 2a804c8..329732d 100644 --- a/app/oa/view/plan/index.html +++ b/app/oa/view/plan/index.html @@ -274,19 +274,19 @@ var content='\
    日程时间范围 *日程时间范围*\
    \
    提醒 *提醒*\
    '+remind_type+'
    \
    日程内容 *日程内容*优先级 *优先级*\
    '+type+'
    \
    \ \ - \ + \ \ - \ + \ \ \ \ - \ + \ \ - \ + \ \ diff --git a/app/oa/view/schedule/calendar.html b/app/oa/view/schedule/calendar.html index a54ceaf..a19d24b 100644 --- a/app/oa/view/schedule/calendar.html +++ b/app/oa/view/schedule/calendar.html @@ -94,17 +94,17 @@ user-select: none;} var content='\
    日程时间范围 *日程时间范围*\
    \
    优先级 *优先级*\
    '+type+'
    \
    日程内容 *日程内容*提醒 *提醒*\
    '+remind_type+'
    \
    \ \ - \ + \ \ - \ + \ \ \ \ - \ + \ \ \ \ diff --git a/app/oa/view/schedule/index.html b/app/oa/view/schedule/index.html index 7338bf7..d59cbf2 100644 --- a/app/oa/view/schedule/index.html +++ b/app/oa/view/schedule/index.html @@ -130,7 +130,7 @@ var content='\
    工作时间范围 *工作时间范围*\
    \
    工作类型 *工作类型*\ \
    工作内容 *工作内容*
    \ \ - \ + \ \ @@ -262,15 +262,15 @@ var content='\
    工作时间范围 *工作时间范围*\
    \
    \ \ - \ + \ \ - \ + \ \ \ \ - \ + \ \ \ \ @@ -391,17 +391,17 @@ var content='\
    工作时间范围 *工作时间范围*'+data.start_time+' '+data.start_time_1+' 至 '+data.end_time_1+'工作类型 *工作类型*\ \
    工作内容 *工作内容*
    \ \ - \ + \ \ - \ + \ \ \ \ - \ + \ \ \ \ diff --git a/app/oa/view/work/add.html b/app/oa/view/work/add.html index 4ec07ec..0aca20c 100644 --- a/app/oa/view/work/add.html +++ b/app/oa/view/work/add.html @@ -5,7 +5,7 @@ {if condition="$id eq 0"}
    工作时间范围 *工作时间范围*\
    \
    工作类型 *工作类型*\ \
    工作内容 *工作内容*
    - + {if condition="($type == 1)"} - + @@ -31,7 +31,7 @@ {elseif condition="($type == 2)"} - + @@ -43,7 +43,7 @@ {elseif condition="($type == 3)"} - + @@ -101,7 +101,7 @@ {if condition="($type == 1)"} - + @@ -113,7 +113,7 @@ {elseif condition="($type == 2)"} - + @@ -125,7 +125,7 @@ {elseif condition="($type == 3)"} - + diff --git a/app/user/view/user/edit_password.html b/app/user/view/user/edit_password.html index 88fab5c..0d68713 100644 --- a/app/user/view/user/edit_password.html +++ b/app/user/view/user/edit_password.html @@ -8,7 +8,7 @@

    重置密码

    接收人*接收人* @@ -19,7 +19,7 @@
    今日工作*今日工作*
    本周工作*本周工作*
    本月工作*本月工作*
    今日工作*今日工作*
    本周工作*本周工作*
    本月工作*本月工作*
    - + @@ -16,11 +16,11 @@ - + - + diff --git a/config/message.php b/config/message.php index a1832a9..e8cb8da 100644 --- a/config/message.php +++ b/config/message.php @@ -8,40 +8,59 @@ return [ // 系统消息模板 'template' => [ 1 => [ - 'name' => '公告', - 'template' => '您有一个新公告:{title} ,请及时查看。', + 'title' => '{from_user}发了一个新『公告』,请及时查看', + 'content' => '您有一个新公告:{title}。', + 'link' => '查看详情', ], - 2 => [ - 'type' => '报销审批', - 'template' => '{from_user} 提交 {title} 报销审批,请及时处理。', + 21 => [ + 'title' => '{from_user}提交了一个『{title}申请』,请及时审批', + 'content' => '您有一个新的『{title}审批』需要处理。', + 'link' => '去审批', ], - 3 => [ - 'type' => '报销审批', - 'template' => '{from_user} 拒绝您的 {title} 报销审批,拒绝理由:{remark},请及时处理。', + 22 => [ + 'title' => '您提交的『{title}申请』已被审批通过', + 'content' => '您在{create_time}提交的『{title}申请』已于{date}被审批通过。', + 'link' => '查看详情', ], - 4 => [ - 'type' => '报销审批', - 'template' => '您的 {title} 报销已经审批通过,请及时查看。', + 23 => [ + 'title' => '您提交的『{title}申请』已被驳回拒绝', + 'content' => '您在{create_time}提交的『{title}申请』已于{date}被驳回拒绝。', + 'link' => '查看详情', ], - 5 => [ - 'type' => '报销发放', - 'template' => '您的 {title} 报销已经发放,请查看是否到账。', + 31 => [ + 'title' => '{from_user}提交了一个『报销申请』,请及时审批', + 'content' => '您有一个新的『报销审批』需要处理。', + 'link' => '去审批', ], - 6 => [ - 'type' => '发票审批', - 'template' => '{from_user} 提交 {title} 发票审批待您处理,请及时查看。', + 32 => [ + 'title' => '您提交的『报销申请』已被审批通过', + 'content' => '您在{create_time}提交的『报销申请』已于{date}被审批通过。', + 'link' => '查看详情', ], - 7 => [ - 'type' => '发票审批', - 'template' => '{from_user} 拒绝您的 {title} 发票审批,请及时处理。', + 33 => [ + 'title' => '您提交的『报销申请』已被驳回拒绝', + 'content' => '您在{create_time}提交的『报销申请』已于{date}被驳回拒绝。', + 'link' => '查看详情', ], - 8 => [ - 'type' => '发票审批', - 'template' => '您的 {title} 发票已经审批通过,请及时查看。', + 34 => [ + 'title' => '您提交的『报销申请』已发放', + 'content' => '您在{create_time}提交的『报销申请』已经发放,请查看是否到账。', + 'link' => '查看详情', ], - 9 => [ - 'type' => '发票审批', - 'template' => '您的 {title} 发票已经开票成功,请及时查看。', + 41 => [ + 'title' => '{from_user}提交了一个『发票申请』,请及时审批', + 'content' => '您有一个新的『发票申请』需要处理。', + 'link' => '去审批', ], - ], + 42 => [ + 'title' => '您提交的『发票申请』已被审批通过', + 'content' => '您在{create_time}提交的『发票申请』已于{date}被审批通过。', + 'link' => '查看详情', + ], + 43 => [ + 'title' => '您提交的『发票申请』已被驳回拒绝', + 'content' => '您在{create_time}提交的『发票申请』已于{date}被驳回拒绝。', + 'link' => '查看详情', + ], + ] ]; diff --git a/public/static/assets/gougu/css/gougu.css b/public/static/assets/gougu/css/gougu.css index 908065f..4fdd940 100644 --- a/public/static/assets/gougu/css/gougu.css +++ b/public/static/assets/gougu/css/gougu.css @@ -53,8 +53,8 @@ html {background-color: #F6F8FA; color: #162a48} html,body{height:100%;} body.right-open{overflow:hidden;} -a.tab-a,a.open-a,a.open-link,a.right-a{color:#1E9FFF; cursor:pointer;} -a.tab-a:hover,a:hover,a.open-a:hover,a.open-link:hover,a.right-a:hover{color:#1E9FFF; opacity:0.8} +a.tab-a,a.open-a,a.link-a,a.right-a{color:#1E9FFF; cursor:pointer;} +a.tab-a:hover,a:hover,a.open-a:hover,a.link-a:hover,a.right-a:hover{color:#1E9FFF; opacity:0.8} .left{float:left;} .right{float:right;} .h1,h1{font-size:24px; font-weight: 600;} diff --git a/public/static/assets/gougu/module/admin.js b/public/static/assets/gougu/module/admin.js index 6f71bf2..1fc3ee3 100644 --- a/public/static/assets/gougu/module/admin.js +++ b/public/static/assets/gougu/module/admin.js @@ -195,7 +195,8 @@ layui.define(['element'], function (exports) { //左上角清除缓存 $('#GouguApp').on('click', '[gg-event="cache"]', function (e) { - var that = $(this); + let that = $(this); + let url = $(this).data('href'); if (that.attr('class') === 'clearThis') { layer.tips('正在努力清理中...', this); return false; @@ -203,7 +204,7 @@ layui.define(['element'], function (exports) { layer.tips('正在清理系统缓存...', this); that.attr('class', 'clearThis'); $.ajax({ - url: "/admin/api/cache_clear", + url: url, success: function (res) { if (res.code == 1) { setTimeout(function () { diff --git a/public/static/assets/gougu/module/tool.js b/public/static/assets/gougu/module/tool.js index a3efc8b..ab5e46e 100644 --- a/public/static/assets/gougu/module/tool.js +++ b/public/static/assets/gougu/module/tool.js @@ -3,7 +3,7 @@ layui.define([], function (exports) { var tool = { loading: false, side: function (url, width) { - var sideWidth = window.innerWidth > 1280 ? '1200px' : '960px'; + var sideWidth = window.innerWidth > 1280 ? '1200px' : '996px'; if (width && width > 0) { sideWidth = width + 'px'; } @@ -30,7 +30,7 @@ layui.define([], function (exports) { }) }) $(window).resize(function () { - width = window.innerWidth > 1280 ? '1200' : '960'; + width = window.innerWidth > 1280 ? '1200' : '996'; $('.layui-anim-rl').width(width); }) } @@ -231,5 +231,12 @@ layui.define([], function (exports) { } return false; }); + $('body').on('click', '.link-a', function () { + let url = $(this).data('href'); + if (url && url !== '') { + window.location.href=url; + } + return false; + }); exports(MOD_NAME, tool); }); \ No newline at end of file
    旧密码*旧密码* {$admin.username}
    新密码 *新密码* 确认新密码 *确认新密码*