success('请求成功'); } /** * 获取工序大废品惩奖侧边栏 * @ApiMethod (GET) */ public function getTab() { //get请求 if(!$this->request->isGet()){ $this->error('请求方式错误'); } $rows = db()->table('db_大废品') ->field('DISTINCT(LEFT(sys_rq, 7)) AS mouth,LEFT(sys_rq, 10) as date, COUNT(*) as counts') ->group('date') ->order('UniqId desc') ->limit(40) ->select(); $list = []; foreach($rows as $key=>$value){ if (!isset($list[$value['mouth']])){ $list[$value['mouth']] = []; } $arr['date'] = str_replace('-', '.', $rows[$key]['date']); $arr['counts'] = $rows[$key]['counts']; array_push($list[$value['mouth']],$arr); // $list[$value['mouth']]['date'] = str_replace('-', '.', $rows[$key]['date']); } $this->success('成功',$list); } /** * 获取工序大废品惩奖侧边栏根据工单 * @ApiMethod (GET) */ public function getTabByGd() { //get请求 if(!$this->request->isGet()){ $this->error('请求方式错误'); } $rows = db()->table('db_大废品') ->field('sczl_gdbh,rtrim(g.成品名称) as 成品名称') ->join('工单_基本资料 g','g.Gd_gdbh=db_大废品.sczl_gdbh','LEFT') ->group('sczl_gdbh') ->whereTime('db_大废品.sys_rq', '>=', strtotime('-60 days')) ->order('sczl_gdbh desc') ->select(); foreach($rows as $key=>$value){ $data[$key]['label']=$value['sczl_gdbh'].' 【'.$value['成品名称'].'】'; $data[$key]['sczl_gdbh']=$value['sczl_gdbh']; } $this->success('成功',$data); } /** * 获取工序大废品惩奖列表 * @ApiMethod (GET) * @param string $date 时间 */ public function getList() { //get请求 if(!$this->request->isGet()){ $this->error('请求方式错误'); } $req = $this->request->param(); $rq = $req['date']; $page = 1; $limit = 15; if (isset($req['page']) && !empty($req['page'])) $page = $req['page']; if (isset($req['limit']) && !empty($req['limit'])) $limit = $req['limit']; $date = substr($req['date'],0,10); $req['date'] = str_replace('.','-',$date); $where = []; if (isset($req['date']) && !empty($req['date'])){ if (preg_match('/[\x{4e00}-\x{9fa5}]/u', $rq)>0){ $where['sys_rq'] = ['LIKE',$req['date'].'%']; }else{ $where['sczl_rq'] = ['LIKE',$req['date'].'%']; } }else{ $this->error('参数错误'); } $res = db()->table('db_大废品') ->field('sczl_gdbh, LEFT(sczl_rq, 10) as sczl_rq, rtrim(sczl_numDesc) as sczl_numDesc, sczl_ls, sczl_yjno, rtrim(责任部门) as 责任部门,sczl_cl, rtrim(sczl_fplxA) as sczl_fplxA, sczl_fplxB, jl_jtbh as Jl_bzdh, JL_bh1, sczl_jtbh as sczl_bzdh, sczl_bh1, sczl_je1, sczl_bh2, sczl_je2, rtrim(sys_id) as sys_id, sys_rq, UniqId') ->where('sczl_gdbh',$req['date']) ->order('UniqId desc') ->page($page,$limit) ->select(); if($res){ $rows=$res; $total = db()->table('db_大废品')->where('sczl_gdbh',$req['date'])->count();; }else{ $rows = db()->table('db_大废品') ->field('sczl_gdbh, LEFT(sczl_rq, 10) as sczl_rq, rtrim(sczl_numDesc) as sczl_numDesc, sczl_ls, sczl_yjno, rtrim(责任部门) as 责任部门, sczl_cl, rtrim(sczl_fplxA) as sczl_fplxA, sczl_fplxB, jl_jtbh as Jl_bzdh, JL_bh1, sczl_jtbh as sczl_bzdh, sczl_bh1, sczl_je1, sczl_bh2, sczl_je2, rtrim(sys_id) as sys_id, sys_rq, UniqId') ->where($where) ->order('UniqId desc') ->page($page,$limit) ->select(); $total = db()->table('db_大废品')->where($where)->count(); } $gd = db()->table('工单_印件资料')->column('Yj_Gdbh, yj_yjmc'); $rs = db()->table('人事_基本资料')->where('员工姓名','<>','通用编号')->column('员工编号, 员工姓名'); foreach ($rows as $key=>$value) { $rows[$key]['yj_yjmc'] = array_key_exists($value['sczl_gdbh'],$gd) ? sprintf("%02d", $value['sczl_yjno']).'-'.trim($gd[$value['sczl_gdbh']]) : ''; $rows[$key]['JL_bh1'] = array_key_exists($value['JL_bh1'],$rs) ? trim($rs[$value['JL_bh1']]) : ''; $rows[$key]['sczl_bh1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : ''; $rows[$key]['sczl_bh2'] = array_key_exists($value['sczl_bh2'],$rs) ? trim($rs[$value['sczl_bh2']]) : ''; $rows[$key]['sczl_fplxB'] = $value['sczl_fplxB'] == 1 ? '制程废' : ''; if ($rows[$key]['sczl_bh1'] != '' && $value['sczl_je1'] > 0){ $rows[$key]['sczl_bh1'] = $rows[$key]['sczl_bh1'].'(-'.$value['sczl_je1'].')'; } if ($rows[$key]['sczl_bh2'] != '' && $value['sczl_je2'] > 0){ $rows[$key]['sczl_bh2'] = $rows[$key]['sczl_bh2'].'(-'.$value['sczl_je2'].')'; } unset($rows[$key]['sczl_yjno']); } $data = [ 'total' => $total, 'rows' => $rows, ]; $this->success('成功',$data); } /** * 获取工序大废品惩奖信息 * @ApiMethod (GET) * @param string $UniqId UniqId */ public function getInfo() { //get请求 if(!$this->request->isGet()){ $this->error('请求方式错误'); } $req = $this->request->param(); if (isset($req['UniqId']) && !empty($req['UniqId'])){ $UniqId = $req['UniqId']; }else{ $this->error('参数错误'); } $rows = db()->table('db_大废品')->alias('d') ->field('sczl_gdbh,rtrim(g.Gd_cpmc) as Gd_cpmc,sczl_yjno,rtrim(yj.yj_yjmc) as yj_yjmc, rtrim(sczl_gxmc) as sczl_gxmc,sczl_gxh,rtrim(sczl_numDesc) as sczl_numDesc,LEFT(sczl_rq, 10) as sczl_rq,sczl_cl,sczl_ls,rtrim(sczl_fplxA) as sczl_fplxA,sczl_fplxB,rtrim(责任部门) as 责任部门, rtrim(jl_bzdh) as Jl_bzdh,jl_jtbh,JL_bh1,JL_bh2,JL_bh3,JL_bh4,JL_bh5,JL_bh6,JL_bh7,JL_bh8,JL_bh9, rtrim(jl1.员工姓名) as jlname1,rtrim(jl2.员工姓名) as jlname2,rtrim(jl3.员工姓名) as jlname3 ,rtrim(jl4.员工姓名) as jlname4,rtrim(jl5.员工姓名) as jlname5,rtrim(jl6.员工姓名) as jlname6 ,rtrim(jl7.员工姓名) as jlname7,rtrim(jl8.员工姓名) as jlname8,rtrim(jl9.员工姓名) as jlname9 ,JL_Je1,JL_Je2,JL_Je3,JL_Je4,JL_Je5,JL_Je6,JL_Je7,JL_Je8,JL_Je9,rtrim(sczl_bzdh) as sczl_bzdh, sczl_jtbh,sczl_bh1,sczl_bh2,sczl_bh3,sczl_bh4,sczl_bh5,sczl_bh6,sczl_bh7,sczl_bh8,sczl_bh9, rtrim(jl_bzdh) as Jl_bzdh,jl_jtbh,JL_bh1,JL_bh2,JL_bh3,JL_bh4,JL_bh5,JL_bh6,JL_bh7,JL_bh8,JL_bh9, rtrim(zr1.员工姓名) as zrname1,rtrim(zr2.员工姓名) as zrname2,rtrim(zr3.员工姓名) as zrname3 ,rtrim(zr4.员工姓名) as zrname4,rtrim(zr5.员工姓名) as zrname5,rtrim(zr6.员工姓名) as zrname6 ,rtrim(zr7.员工姓名) as zrname7,rtrim(zr8.员工姓名) as zrname8,rtrim(zr9.员工姓名) as zrname9 ,sczl_je1,sczl_je2,sczl_je3,sczl_je4,sczl_je5,sczl_je6,sczl_je7,sczl_je8,sczl_je9') ->join('工单_基本资料 g','g.Gd_gdbh=db_大废品.sczl_gdbh') ->join('工单_印件资料 yj','yj.Yj_Gdbh=db_大废品.sczl_gdbh','LEFT') ->join('人事_基本资料 jl1','jl1.员工编号=db_大废品.JL_bh1','LEFT') ->join('人事_基本资料 jl2','jl2.员工编号=db_大废品.JL_bh2','LEFT') ->join('人事_基本资料 jl3','jl3.员工编号=db_大废品.JL_bh3','LEFT') ->join('人事_基本资料 jl4','jl4.员工编号=db_大废品.JL_bh4','LEFT') ->join('人事_基本资料 jl5','jl5.员工编号=db_大废品.JL_bh5','LEFT') ->join('人事_基本资料 jl6','jl6.员工编号=db_大废品.JL_bh6','LEFT') ->join('人事_基本资料 jl7','jl7.员工编号=db_大废品.JL_bh7','LEFT') ->join('人事_基本资料 jl8','jl8.员工编号=db_大废品.JL_bh8','LEFT') ->join('人事_基本资料 jl9','jl9.员工编号=db_大废品.JL_bh9','LEFT') ->join('人事_基本资料 zr1','zr1.员工编号=db_大废品.sczl_bh1','LEFT') ->join('人事_基本资料 zr2','zr2.员工编号=db_大废品.sczl_bh2','LEFT') ->join('人事_基本资料 zr3','zr3.员工编号=db_大废品.sczl_bh3','LEFT') ->join('人事_基本资料 zr4','zr4.员工编号=db_大废品.sczl_bh4','LEFT') ->join('人事_基本资料 zr5','zr5.员工编号=db_大废品.sczl_bh5','LEFT') ->join('人事_基本资料 zr6','zr6.员工编号=db_大废品.sczl_bh6','LEFT') ->join('人事_基本资料 zr7','zr7.员工编号=db_大废品.sczl_bh7','LEFT') ->join('人事_基本资料 zr8','zr8.员工编号=db_大废品.sczl_bh8','LEFT') ->join('人事_基本资料 zr9','zr9.员工编号=db_大废品.sczl_bh9','LEFT') ->where('d.UniqId',$UniqId)->limit(1)->select(); $this->success('成功',$rows); } /** * 工单编号获取 * @return void * @throws \think\exception\DbException * @throws db\exception\DataNotFoundException * @throws db\exception\ModelNotFoundException */ public function JunkWorkOrderList() { if ($this->request->isGet() === false){ $this->error('非法请求'); } $params = $this->request->param(); if (empty($params['search'])){ $this->error('参数错误'); } $list = \db('工单_基本资料') ->field('rtrim(Gd_gdbh) as 工单编号,rtrim(成品名称) as 产品名称') ->where('Gd_gdbh','like','%'.$params['search'].'%') ->select(); if (empty($list)){ $this->success('未找到工单信息'); } $this->success('成功',$list); } /** * 印件编号获取 * @return void * @throws \think\exception\DbException * @throws db\exception\DataNotFoundException * @throws db\exception\ModelNotFoundException */ public function PrintCodeList() { if ($this->request->isGet() === false){ $this->error('非法请求'); } $param = $this->request->param(); if (empty($param['workorder'])){ $this->error('参数错误'); } $list = \db('工单_印件资料') ->field('rtrim(yj_Yjno) as 印件号,rtrim(yj_yjmc) as 印件名称') ->where('Yj_Gdbh',$param['workorder']) ->select(); if (empty($list)){ $this->success('未找到该工单印件'); } $this->success('成功',$list); } /** * 工单工序获取 * @return void * @throws \think\exception\DbException * @throws db\exception\DataNotFoundException * @throws db\exception\ModelNotFoundException */ public function ProcessList() { if ($this->request->isGet() === false){ $this->error('非法请求'); } $param = $this->request->param(); if (empty($param['workorder']) || empty($param['yjno'])){ $this->error('参数错误'); } $list = \db('工单_工艺资料') ->field('rtrim(Gy0_gxh) as gxh,rtrim(Gy0_gxmc) as gxmc') ->where('Gy0_gdbh',$param['workorder']) ->where('Gy0_yjno',$param['yjno']) ->select(); if (empty($list)){ $this->success('未找到该工单工艺'); } $data = []; foreach ($list as $key=>$value){ if ((int)$value['gxh'] < 10){ $value['gxh'] = '0'.$value['gxh']; } $data[$key] = $value['gxh'].'-'.$value['gxmc']; } $this->success('成功',$data); } /** * 机台编号获取 * @return void * @throws \think\exception\DbException * @throws db\exception\DataNotFoundException * @throws db\exception\ModelNotFoundException */ public function MachineList() { if ($this->request->isGet() === false){ $this->error('非法请求'); } $param = $this->request->param(); $list = \db('设备_产量计酬') ->alias('a') ->join('人事_基本资料 b1','a.sczl_bh1 = b1.员工编号','left') ->join('人事_基本资料 b2','a.sczl_bh2 = b2.员工编号','left') ->join('人事_基本资料 b3','a.sczl_bh3 = b3.员工编号','left') ->join('人事_基本资料 b4','a.sczl_bh4 = b4.员工编号','left') ->join('人事_基本资料 b5','a.sczl_bh5 = b5.员工编号','left') ->join('人事_基本资料 b6','a.sczl_bh6 = b6.员工编号','left') ->join('人事_基本资料 b7','a.sczl_bh7 = b7.员工编号','left') ->join('人事_基本资料 b8','a.sczl_bh8 = b8.员工编号','left') ->join('人事_基本资料 b9','a.sczl_bh9 = b9.员工编号','left') ->join('人事_基本资料 b10','a.sczl_bh10 = b10.员工编号','left') ->field('a.sczl_gxmc as 工序名称,a.sczl_jtbh as 机台编号,a.sczl_bh1 as 员工编号1,rtrim(b1.员工姓名) as 员工姓名1 ,a.sczl_bh2 as 员工编号2,rtrim(b2.员工姓名) as 员工姓名2,a.sczl_bh3 as 员工编号3,rtrim(b3.员工姓名) as 员工姓名3 ,a.sczl_bh4 as 员工编号4,rtrim(b4.员工姓名) as 员工姓名4,a.sczl_bh5 as 员工编号5,rtrim(b5.员工姓名) as 员工姓名5 ,a.sczl_bh6 as 员工编号6,rtrim(b6.员工姓名) as 员工姓名6,a.sczl_bh7 as 员工编号7,rtrim(b7.员工姓名) as 员工姓名7 ,a.sczl_bh8 as 员工编号8,rtrim(b8.员工姓名) as 员工姓名8,a.sczl_bh9 as 员工编号9,rtrim(b9.员工姓名) as 员工姓名9 ,a.sczl_bh10 as 员工编号10,rtrim(b10.员工姓名) as 员工姓名10') ->where('a.sczl_gdbh',$param['gdbh']) ->where('a.sczl_yjno',$param['yjno']) ->where('a.sczl_bzdh','like',substr($param['bzdh'],0,1).'%') ->group('机台编号,员工编号1,员工编号2,员工编号3,员工编号4,员工编号5,员工编号6,员工编号7,员工编号8,员工编号9,员工编号10') ->select(); // $list = \db('设备_基本资料') // ->field('rtrim(设备编号) as 设备编号') // ->where('sys_sbID','<>','') // ->select(); if (empty($list)){ $this->success('未找到机台编号'); } $this->success('成功',$list); } /** * 机台班组获取 * @return void * @throws \think\exception\DbException * @throws db\exception\DataNotFoundException * @throws db\exception\ModelNotFoundException */ public function MachineClassList() { if ($this->request->isGet() === false){ $this->error('非法请求'); } $param = $this->request->param(); if (empty($param['machine'])){ $this->error('参数错误'); } $list = \db('设备_班组资料') ->where('sczl_jtbh',$param['machine']) ->field('rtrim(sczl_bh1) as bh1,rtrim(sczl_bh2) as bh2,rtrim(sczl_bh3) as bh3, rtrim(sczl_bh4) as bh4,rtrim(sczl_bh5) as bh5,rtrim(sczl_bh6) as bh6, rtrim(sczl_bh7) as bh7,rtrim(sczl_bh8) as bh8,rtrim(sczl_bh9) as bh9, rtrim(sczl_bh10) as bh10,rtrim(sczl_bzdh) as 班组代号') ->select(); if (empty($list)){ $this->success('未找到该机台班组'); } foreach ($list as $key=>$value){ for ($i=1;$i<=10;$i++){ if (!empty($value['bh'.$i])){ $name = \db('人事_基本资料')->where('员工编号',$value['bh'.$i])->field('rtrim(员工姓名) as name')->find(); if (isset($name['name'])){ $list[$key]['组员'.$i] = [ '编号' => $value['bh'.$i], '姓名' => $name['name'] ]; } }else{ $list[$key]['组员'.$i] = [ '编号' => '', '姓名' => '' ]; } unset($list[$key]['bh'.$i]); } } $this->success('成功',$list); } /** * 大废品数据修改 * @return void * @throws \think\Exception * @throws \think\exception\PDOException * @throws db\exception\BindParamException */ public function JunkDetailEdit() { // 判断请求方式是否为 POST if (Request::instance()->isPost() === false) { $this->error('非法请求'); } // 获取请求参数 $param = Request::instance()->post(); if (empty($param['sczl_gdbh']) || empty($param['UniqId'])) { $this->error('参数错误'); } $param['mod_rq'] = date('Y-m-d H:i:s', time()); $data = $param['sczl_rq'].' 00:00:00'; // 奖励班组封顶限制【记录是否存在超限的标志】 $over_limit = false; // 遍历 JL_bh1 ~ JL_bh10,检查当天和本月金额限制 for ($i = 1; $i <= 10; $i++) { $jl_bh = 'JL_bh' . $i; // 获取 JL_bh1 到 JL_bh10 $jl_je = 'JL_Je' . $i; // 获取 JL_Je1 到 JL_Je10 if (!empty($param[$jl_bh]) && isset($param[$jl_je])) { // 确保 JL_bh 和 JL_Je 不为空 $person_id = $param[$jl_bh]; // 当前人员的 ID $amount = $param[$jl_je]; // 当前人员的金额 // 获取当天的所有记录金额总和 $daily_total = \db('db_大废品') ->where('sczl_rq', $data) ->sum($jl_je); $daUniqId = \db('db_大废品') ->where('UniqId', $param['UniqId']) ->sum($jl_je); // 将当天的金额总和与接口传过来的金额加起来 $total_amount = ($daily_total + $amount) - $daUniqId; // 假设传入的是 JL_Je1 // 检查金额是否超过 200 元 if ($total_amount > 200) { $this->error("【{$person_id}】当天金额超限!当天金额不能超过 200 元!"); $over_limit = true; break; } // 获取当月的所有记录金额总和 $month = substr($data, 5, 2); $year = substr($data, 0, 4); $start_date = $year . '-' . $month . '-01'; $end_date = date('Y-m-t', strtotime($start_date)); $monthly_total = \db('db_大废品') ->whereBetween('sczl_rq', [$start_date, $end_date]) ->where($jl_bh, $person_id) ->sum($jl_je); // 检查本月是否超过 1500 元 if ($monthly_total + $amount - $daUniqId > 1500) { $this->error("【{$person_id}】本月金额超限!本月金额不能超过 1500 元!"); $over_limit = true; break; } } } // 如果存在超限,停止执行 if ($over_limit) { return; } // 扣罚金额封顶限制 $kfover_limit = false; // 检查 sczl_bh1 的限制(不能超过 1000 元) if (!empty($param['sczl_bh1']) && isset($param['sczl_je1'])) { $person_id = $param['sczl_bh1']; $amount = $param['sczl_je1']; // 获取该人员当天的扣罚金额总和 $daily_total = \db('db_大废品') ->where('sczl_rq', $data) ->where('sczl_bh1', $person_id) ->sum('sczl_je1'); $daUniqId = \db('db_大废品') ->where('UniqId', $param['UniqId']) ->sum("sczl_je1"); // 判断是否超过 1000 元 if (($daily_total + $amount) - $daUniqId > 1000) { $this->error("【{$person_id}】当天扣罚金额超限!当天扣罚金额不能超过 1000 元!"); $kfover_limit = true; } } // 遍历 sczl_bh2 ~ sczl_bh10,检查当天金额是否超过 500 元 for ($i = 2; $i <= 10; $i++) { $sczl_bh = 'sczl_bh' . $i; $sczl_je = 'sczl_je' . $i; if (!empty($param[$sczl_bh]) && isset($param[$sczl_je])) { $person_id = $param[$sczl_bh]; $amount = $param[$sczl_je]; // 获取该人员当天的扣罚金额总和 $daily_total = \db('db_大废品') ->where('sczl_rq', $data) // ->where($sczl_bh, $person_id) ->sum($sczl_je); $daUniqId = \db('db_大废品') ->where('UniqId', $param['UniqId']) ->sum($sczl_je); $total_amount = ($daily_total + $amount) - $daUniqId; // 假设传入的是 JL_Je1 // 判断是否超过 500 元 if ($total_amount > 500) { $this->error("【{$person_id}】当天扣罚金额超限!当天扣罚金额不能超过 500 元!"); $kfover_limit = true; break; // 如果超限,停止检查 } } } // 如果超限就不插入数据 if ($kfover_limit) { return; // 直接终止 } // 执行更新操作 // unset($data['UniqId']); $sql = \db('db_大废品') ->where('UniqId', $param['UniqId']) ->fetchSql(true) ->update($param); $res = \db()->query($sql); if ($res !== false) { $this->success('修改成功'); } else { $this->error('修改失败'); } } /** * 大废品数据添加 * @return void * @throws \think\exception\PDOException * @throws db\exception\BindParamException */ public function JunkDetailAdd() { // 非POST请求不允许提交 if (Request::instance()->isPost() === false) { $this->error('非法请求'); } $param = Request::instance()->post(); // 检查是否传入必要的参数 if (empty($param['sczl_gdbh'])) { $this->error('参数错误'); } // 获取最后一条记录的UniqId $lastID = \db('db_大废品')->order('UniqId desc')->value('UniqId'); // 设置当前时间和其他初始化数据 $param['sys_rq'] = date('Y-m-d H:i:s', time()); $param['mod_rq'] = '1900-01-01 00:00:00'; $param['UniqId'] = $lastID + 1; $data = $param['sczl_rq']; //奖励班组封顶限制【记录是否存在超限的标志】 $over_limit = false; // 遍历参数,检查每个人当天和本月的消费情况 for ($i = 1; $i <= 10; $i++) { $jl_bh = 'JL_bh' . $i; // 获取 JL_bh1 到 JL_bh10 $jl_je = 'JL_Je' . $i; // 获取 JL_Je1 到 JL_Je10 if (!empty($param[$jl_bh]) && isset($param[$jl_je])) { // 确保 JL_bh 和 JL_Je 不为空 $person_id = $param[$jl_bh]; // 获取当前人的 ID $amount = $param[$jl_je]; // 当前人的金额 // 获取当天的所有记录金额总和 $daily_total = \db('db_大废品') ->where('sczl_rq', $data) ->where($jl_bh, $person_id) ->sum($jl_je); // 获取当月的所有记录金额总和 $month = substr($data, 5, 2); $year = substr($data, 0, 4); $start_date = $year . '-' . $month . '-01'; $end_date = date('Y-m-t', strtotime($start_date)); $monthly_total = \db('db_大废品') ->whereBetween('sczl_rq', [$start_date, $end_date]) ->where($jl_bh, $person_id) ->sum($jl_je); // 检查当天是否超过 200 if ($daily_total + $amount > 200) { $this->error("【{$person_id}】当天金额超限!当天金额不能超过200元!"); $over_limit = true; break; } // 检查本月是否超过 1500 if ($monthly_total + $amount > 1500) { $this->error("【{$person_id}】本月金额超限!本月金额不能超过1500元!"); $over_limit = true; break; } } } // 如果超限就不插入数据 if ($over_limit) { // 提示超限后停止执行 return; } // 记录是否存在超限 $kfover_limit = false; // 获取 sczl_bh1 的值,并检查它是否存在 if (!empty($param['sczl_bh1']) && isset($param['sczl_je1'])) { $person_id = $param['sczl_bh1']; $amount = $param['sczl_je1']; // 获取该人员当天的扣罚金额总和 $daily_total = \db('db_大废品') ->where('sczl_rq', $data) ->where('sczl_bh1', $person_id) ->sum('sczl_je1'); // 判断是否超过 1000 if ($daily_total + $amount > 1000) { $this->error("【{$person_id}】当天扣罚金额超限!当天扣罚金额不能超过 1000 元!"); $kfover_limit = true; } } // 遍历 sczl_bh2 ~ sczl_bh10 for ($i = 2; $i <= 10; $i++) { $sczl_bh = 'sczl_bh' . $i; $sczl_je = 'sczl_je' . $i; if (!empty($param[$sczl_bh]) && isset($param[$sczl_je])) { $person_id = $param[$sczl_bh]; $amount = $param[$sczl_je]; // 获取该人员当天的扣罚金额总和 $daily_total = \db('db_大废品') ->where('sczl_rq', $data) ->where($sczl_bh, $person_id) ->sum($sczl_je); // 判断是否超过 500 if ($daily_total + $amount > 500) { $this->error("【{$person_id}】当天扣罚金额超限!当天扣罚金额不能超过 500 元!"); $kfover_limit = true; break; // 只要有一个超限就停止检查 } } } // 如果超限就不插入数据 if ($kfover_limit) { return; // 直接终止 } // 插入数据 $sql = \db('db_大废品')->fetchSql(true)->insert($param); $res = \db()->query($sql); if ($res !== false) { $this->success('添加成功'); } else { $this->error('失败'); } } /** * 大废品数据删除 * @return void * @throws \think\Exception * @throws \think\exception\PDOException */ public function JunkDetailDel() { if ($this->request->isGet() === false){ $this->error('非法请求'); } $param = $this->request->param(); if (empty($param['UniqId'])){ $this->error('参数错误'); } $idList = explode(',',$param['UniqId']); $res = \db('db_大废品') ->whereIn('UniqId',$idList) ->delete(); if ($res !== false){ $this->success('删除成功'); }else{ $this->error('失败'); } } }