$params['export_conditions'], 'batch_number' => $params['batch_number'], 'upload_status' => $params['upload_status'], 'payment_status' => $params['payment_status'], ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑 * @param array $params * @return bool * @author likeadmin * @date 2024/12/02 11:55 */ public static function edit(array $params): bool { Db::startTrans(); try { FinancialPaymentRecords::where('id', $params['id'])->update([ 'export_conditions' => $params['export_conditions'], 'batch_number' => $params['batch_number'], 'upload_status' => $params['upload_status'], 'payment_status' => $params['payment_status'], ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 取消 * @param array $params * @return bool * @author likeadmin * @date 2024/12/02 11:55 */ public static function delete(array $params): bool { Db::startTrans(); try { $recordInfo = FinancialPaymentRecords::findOrEmpty($params['id'])->toArray(); if($recordInfo){ if((int)$recordInfo['upload_status'] !== 1){ throw new \Exception('非待上传,不能取消'); } MasterSettlementDetails::where('batch_number',$recordInfo['batch_number'])->where('status','<',3)->update(['status'=>1,'batch_number'=>'']); EngineerSettlement::destroy(['batch_number'=>$recordInfo['batch_number'],'is_deduction'=>['neq',1]]); FinancialPaymentRecords::update(['upload_status'=>2],['id'=>$params['id']]); }else{ throw new \Exception('记录不存在'); } Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 获取详情 * @param $params * @return array * @author likeadmin * @date 2024/12/02 11:55 */ public static function detail($params): array { return FinancialPaymentRecords::findOrEmpty($params['id'])->toArray(); } }