鸿蒙金融理财全栈项目——风险控制、合规审计、产品创新

鸿蒙金融理财全栈项目——风险控制、合规审计、产品创新

《鸿蒙APP开发从入门到精通》第18篇:鸿蒙金融理财全栈项目——风险控制、合规审计、产品创新 📊🛡️🚀

在这里插入图片描述

内容承接与核心价值

这是《鸿蒙APP开发从入门到精通》的第18篇——风险控制、合规审计、产品创新篇100%承接第17篇的金融理财项目架构,并基于金融场景的风险控制、合规审计、产品创新要求,设计并实现鸿蒙金融理财全栈项目的风险控制、合规审计、产品创新功能

学习目标

  • 掌握鸿蒙金融理财项目的风险控制设计与实现;
  • 实现风险评估、风险监控、风险预警;
  • 理解合规审计在金融场景的核心设计与实现;
  • 实现合规检查、合规审计、合规报告;
  • 掌握产品创新在金融场景的设计与实现;
  • 实现产品创新、产品优化、产品推广;
  • 优化金融理财项目的用户体验(风险控制、合规审计、产品创新)。

学习重点

  • 鸿蒙金融理财项目的风险控制设计原则;
  • 合规审计在金融场景的应用;
  • 产品创新在金融场景的设计要点。

一、 风险控制基础 🎯

1.1 风险控制定义

风险控制是指对金融理财项目的风险进行识别、评估、监控、预警的过程,主要包括以下方面:

  • 风险评估:评估用户的风险承受能力;
  • 风险监控:监控金融产品的风险;
  • 风险预警:对风险进行预警。

1.2 风险控制架构

风险控制采用分层架构,由以下部分组成:

  • 风险评估层:负责用户的风险评估;
  • 风险监控层:负责金融产品的风险监控;
  • 风险预警层:负责对风险进行预警。

二、 风险控制实战 🛠️

2.1 实战目标

基于金融场景的风险控制要求,实现以下功能:

  • 风险评估:评估用户的风险承受能力;
  • 风险监控:监控金融产品的风险;
  • 风险预警:对风险进行预警。

2.2 🔧 风险评估实现

1. 风险评估工具类

⌨️ entry/src/main/ets/utils/RiskAssessmentUtil.ets

import risk from'@ohos.risk';// 风险评估工具类exportclassRiskAssessmentUtil{privatestatic instance: RiskAssessmentUtil |null=null;private riskHelper: risk.RiskHelper |null=null;// 单例模式staticgetInstance(): RiskAssessmentUtil {if(!RiskAssessmentUtil.instance){ RiskAssessmentUtil.instance =newRiskAssessmentUtil();}return RiskAssessmentUtil.instance;}// 初始化风险评估工具asyncinit():Promise<void>{if(!this.riskHelper){this.riskHelper = risk.createRiskHelper();}}// 评估用户的风险承受能力asyncassessUserRisk():Promise<risk.RiskAssessmentResult>{if(!this.riskHelper){returnnull;}const result =awaitthis.riskHelper.assessUserRisk();return result;}// 获取用户的风险评估报告asyncgetUserRiskAssessmentReport():Promise<risk.UserRiskAssessmentReport>{if(!this.riskHelper){returnnull;}const result =awaitthis.riskHelper.getUserRiskAssessmentReport();return result;}}
2. 风险评估应用

⌨️ entry/src/main/ets/pages/RiskAssessmentPage.ets

import{ RiskAssessmentUtil }from'../utils/RiskAssessmentUtil';@Entry@Component struct RiskAssessmentPage {@State riskAssessmentResult: risk.RiskAssessmentResult |null=null;build(){Column({ space:16}){Text('风险评估').fontSize(18).fontWeight(FontWeight.Bold).textColor('#000000');ButtonComponent({ text:'进行风险评估',onClick:async()=>{awaitthis.assessUserRisk();}, disabled:false});if(this.riskAssessmentResult){Text(`风险等级:${this.riskAssessmentResult.riskLevel}`).fontSize(14).textColor('#000000');Text(`风险得分:${this.riskAssessmentResult.riskScore}`).fontSize(14).textColor('#666666');Text(`风险描述:${this.riskAssessmentResult.riskDescription}`).fontSize(14).textColor('#666666');}}.width('100%').height('100%').padding(16).backgroundColor('#F5F5F5');}aboutToAppear(){// 初始化风险评估 RiskAssessmentUtil.getInstance().init();}asyncassessUserRisk():Promise<void>{this.riskAssessmentResult =await RiskAssessmentUtil.getInstance().assessUserRisk();}}

2.3 🔧 风险监控实现

1. 风险监控工具类

⌨️ entry/src/main/ets/utils/RiskMonitoringUtil.ets

import monitoring from'@ohos.monitoring';// 风险监控工具类exportclassRiskMonitoringUtil{privatestatic instance: RiskMonitoringUtil |null=null;private monitoringHelper: monitoring.MonitoringHelper |null=null;// 单例模式staticgetInstance(): RiskMonitoringUtil {if(!RiskMonitoringUtil.instance){ RiskMonitoringUtil.instance =newRiskMonitoringUtil();}return RiskMonitoringUtil.instance;}// 初始化风险监控工具asyncinit():Promise<void>{if(!this.monitoringHelper){this.monitoringHelper = monitoring.createMonitoringHelper();}}// 监控金融产品的风险asyncmonitorFinancialProductRisk():Promise<Array<monitoring.FinancialProductRisk>>{if(!this.monitoringHelper){return[];}const result =awaitthis.monitoringHelper.monitorFinancialProductRisk();return result;}// 获取金融产品的风险报告asyncgetFinancialProductRiskReport(productId:number):Promise<monitoring.FinancialProductRiskReport>{if(!this.monitoringHelper){returnnull;}const result =awaitthis.monitoringHelper.getFinancialProductRiskReport(productId);return result;}}
2. 风险监控应用

⌨️ entry/src/main/ets/pages/RiskMonitoringPage.ets

import{ RiskMonitoringUtil }from'../utils/RiskMonitoringUtil';@Entry@Component struct RiskMonitoringPage {@State financialProductRisk:Array<monitoring.FinancialProductRisk>=[];build(){Column({ space:16}){Text('风险监控').fontSize(18).fontWeight(FontWeight.Bold).textColor('#000000');ListComponent({ data:this.financialProductRisk,renderItem:(item: monitoring.FinancialProductRisk, index:number)=>{Row({ space:16}){Text(item.productName).fontSize(16).fontWeight(FontWeight.Bold).textColor('#000000');Text(`风险等级:${item.riskLevel}`).fontSize(14).textColor('#666666');Text(`风险得分:${item.riskScore}`).fontSize(14).textColor('#666666');}.width('100%').height('auto').padding(16).backgroundColor('#FFFFFF').borderRadius(8).margin({ bottom:8});},onItemClick:(item: monitoring.FinancialProductRisk, index:number)=>{ router.pushUrl({ url:'/pages/FinancialProductRiskReportPage', params:{ productId: item.productId }});}});}.width('100%').height('100%').padding(16).backgroundColor('#F5F5F5');}aboutToAppear(){// 初始化风险监控 RiskMonitoringUtil.getInstance().init();// 监控金融产品的风险this.monitorFinancialProductRisk();}asyncmonitorFinancialProductRisk():Promise<void>{this.financialProductRisk =await RiskMonitoringUtil.getInstance().monitorFinancialProductRisk();}}

2.4 🔧 风险预警实现

1. 风险预警工具类

⌨️ entry/src/main/ets/utils/RiskWarningUtil.ets

import warning from'@ohos.warning';// 风险预警工具类exportclassRiskWarningUtil{privatestatic instance: RiskWarningUtil |null=null;private warningHelper: warning.WarningHelper |null=null;// 单例模式staticgetInstance(): RiskWarningUtil {if(!RiskWarningUtil.instance){ RiskWarningUtil.instance =newRiskWarningUtil();}return RiskWarningUtil.instance;}// 初始化风险预警工具asyncinit():Promise<void>{if(!this.warningHelper){this.warningHelper = warning.createWarningHelper();}}// 对风险进行预警asyncissueRiskWarning():Promise<Array<warning.RiskWarning>>{if(!this.warningHelper){return[];}const result =awaitthis.warningHelper.issueRiskWarning();return result;}// 处理风险预警asynchandleRiskWarning(warningId:number):Promise<warning.RiskWarningResult>{if(!this.warningHelper){returnnull;}const result =awaitthis.warningHelper.handleRiskWarning(warningId);return result;}}
2. 风险预警应用

⌨️ entry/src/main/ets/pages/RiskWarningPage.ets

import{ RiskWarningUtil }from'../utils/RiskWarningUtil';@Entry@Component struct RiskWarningPage {@State riskWarning:Array<warning.RiskWarning>=[];build(){Column({ space:16}){Text('风险预警').fontSize(18).fontWeight(FontWeight.Bold).textColor('#000000');ListComponent({ data:this.riskWarning,renderItem:(item: warning.RiskWarning, index:number)=>{Row({ space:16}){Text(item.warningTime).fontSize(16).fontWeight(FontWeight.Bold).textColor('#000000');Text(`警告内容:${item.warningContent}`).fontSize(14).textColor('#666666');Text(`警告级别:${item.warningLevel}`).fontSize(14).textColor('#666666');}.width('100%').height('auto').padding(16).backgroundColor('#FFFFFF').borderRadius(8).margin({ bottom:8});},onItemClick:(item: warning.RiskWarning, index:number)=>{this.handleRiskWarning(item.warningId);}});}.width('100%').height('100%').padding(16).backgroundColor('#F5F5F5');}aboutToAppear(){// 初始化风险预警 RiskWarningUtil.getInstance().init();// 对风险进行预警this.issueRiskWarning();}asyncissueRiskWarning():Promise<void>{this.riskWarning =await RiskWarningUtil.getInstance().issueRiskWarning();}asynchandleRiskWarning(warningId:number):Promise<void>{const result =await RiskWarningUtil.getInstance().handleRiskWarning(warningId);if(result.success){ promptAction.showToast({ message:'风险预警处理成功'});this.issueRiskWarning();}else{ promptAction.showToast({ message:'风险预警处理失败'});}}}

三、 合规审计实战 🛠️

3.1 实战目标

基于金融场景的合规审计要求,实现以下功能:

  • 合规检查:检查金融产品的合规性;
  • 合规审计:审计金融产品的合规性;
  • 合规报告:生成金融产品的合规报告。

3.2 🔧 合规检查实现

1. 合规检查工具类

⌨️ entry/src/main/ets/utils/ComplianceCheckUtil.ets

import compliance from'@ohos.compliance';// 合规检查工具类exportclassComplianceCheckUtil{privatestatic instance: ComplianceCheckUtil |null=null;private complianceHelper: compliance.ComplianceHelper |null=null;// 单例模式staticgetInstance(): ComplianceCheckUtil {if(!ComplianceCheckUtil.instance){ ComplianceCheckUtil.instance =newComplianceCheckUtil();}return ComplianceCheckUtil.instance;}// 初始化合规检查工具asyncinit():Promise<void>{if(!this.complianceHelper){this.complianceHelper = compliance.createComplianceHelper();}}// 检查金融产品的合规性asynccheckFinancialProductCompliance(productId:number):Promise<compliance.ComplianceCheckResult>{if(!this.complianceHelper){returnnull;}const result =awaitthis.complianceHelper.checkFinancialProductCompliance(productId);return result;}// 获取金融产品的合规报告asyncgetFinancialProductComplianceReport(productId:number):Promise<compliance.ComplianceReport>{if(!this.complianceHelper){returnnull;}const result =awaitthis.complianceHelper.getFinancialProductComplianceReport(productId);return result;}}
2. 合规检查应用

⌨️ entry/src/main/ets/pages/ComplianceCheckPage.ets

import{ ComplianceCheckUtil }from'../utils/ComplianceCheckUtil';@Entry@Component struct ComplianceCheckPage {@State complianceCheckResult: compliance.ComplianceCheckResult |null=null;build(){Column({ space:16}){Text('合规检查').fontSize(18).fontWeight(FontWeight.Bold).textColor('#000000');InputComponent({ placeholder:'请输入金融产品ID', value:'',onChange:(value:string)=>{this.productId = value;}, type: InputType.Number });ButtonComponent({ text:'进行合规检查',onClick:async()=>{awaitthis.checkFinancialProductCompliance();}, disabled:!this.productId });if(this.complianceCheckResult){Text(`合规结果:${this.complianceCheckResult.compliant}`).fontSize(14).textColor('#000000');Text(`合规得分:${this.complianceCheckResult.complianceScore}`).fontSize(14).textColor('#666666');Text(`合规描述:${this.complianceCheckResult.complianceDescription}`).fontSize(14).textColor('#666666');}}.width('100%').height('100%').padding(16).backgroundColor('#F5F5F5');}aboutToAppear(){// 初始化合规检查 ComplianceCheckUtil.getInstance().init();}asynccheckFinancialProductCompliance():Promise<void>{this.complianceCheckResult =await ComplianceCheckUtil.getInstance().checkFinancialProductCompliance(parseInt(this.productId));}}

3.3 🔧 合规审计实现

1. 合规审计工具类

⌨️ entry/src/main/ets/utils/ComplianceAuditUtil.ets

import audit from'@ohos.audit';// 合规审计工具类exportclassComplianceAuditUtil{privatestatic instance: ComplianceAuditUtil |null=null;private auditHelper: audit.AuditHelper |null=null;// 单例模式staticgetInstance(): ComplianceAuditUtil {if(!ComplianceAuditUtil.instance){ ComplianceAuditUtil.instance =newComplianceAuditUtil();}return ComplianceAuditUtil.instance;}// 初始化合规审计工具asyncinit():Promise<void>{if(!this.auditHelper){this.auditHelper = audit.createAuditHelper();}}// 审计金融产品的合规性asyncauditFinancialProductCompliance(productId:number):Promise<audit.ComplianceAuditResult>{if(!this.auditHelper){returnnull;}const result =awaitthis.auditHelper.auditFinancialProductCompliance(productId);return result;}// 获取金融产品的合规审计报告asyncgetFinancialProductComplianceAuditReport(productId:number):Promise<audit.ComplianceAuditReport>{if(!this.auditHelper){returnnull;}const result =awaitthis.auditHelper.getFinancialProductComplianceAuditReport(productId);return result;}}
2. 合规审计应用

⌨️ entry/src/main/ets/pages/ComplianceAuditPage.ets

import{ ComplianceAuditUtil }from'../utils/ComplianceAuditUtil';@Entry@Component struct ComplianceAuditPage {@State complianceAuditResult: audit.ComplianceAuditResult |null=null;build(){Column({ space:16}){Text('合规审计').fontSize(18).fontWeight(FontWeight.Bold).textColor('#000000');InputComponent({ placeholder:'请输入金融产品ID', value:'',onChange:(value:string)=>{this.productId = value;}, type: InputType.Number });ButtonComponent({ text:'进行合规审计',onClick:async()=>{awaitthis.auditFinancialProductCompliance();}, disabled:!this.productId });if(this.complianceAuditResult){Text(`审计结果:${this.complianceAuditResult.auditResult}`).fontSize(14).textColor('#000000');Text(`审计得分:${this.complianceAuditResult.auditScore}`).fontSize(14).textColor('#666666');Text(`审计描述:${this.complianceAuditResult.auditDescription}`).fontSize(14).textColor('#666666');}}.width('100%').height('100%').padding(16).backgroundColor('#F5F5F5');}aboutToAppear(){// 初始化合规审计 ComplianceAuditUtil.getInstance().init();}asyncauditFinancialProductCompliance():Promise<void>{this.complianceAuditResult =await ComplianceAuditUtil.getInstance().auditFinancialProductCompliance(parseInt(this.productId));}}

3.4 🔧 合规报告实现

1. 合规报告工具类

⌨️ entry/src/main/ets/utils/ComplianceReportUtil.ets

import report from'@ohos.report';// 合规报告工具类exportclassComplianceReportUtil{privatestatic instance: ComplianceReportUtil |null=null;private reportHelper: report.ReportHelper |null=null;// 单例模式staticgetInstance(): ComplianceReportUtil {if(!ComplianceReportUtil.instance){ ComplianceReportUtil.instance =newComplianceReportUtil();}return ComplianceReportUtil.instance;}// 初始化合规报告工具asyncinit():Promise<void>{if(!this.reportHelper){this.reportHelper = report.createReportHelper();}}// 生成金融产品的合规报告asyncgenerateFinancialProductComplianceReport(productId:number):Promise<report.ComplianceReport>{if(!this.reportHelper){returnnull;}const result =awaitthis.reportHelper.generateFinancialProductComplianceReport(productId);return result;}// 下载金融产品的合规报告asyncdownloadFinancialProductComplianceReport(productId:number):Promise<report.ComplianceReportDownloadResult>{if(!this.reportHelper){returnnull;}const result =awaitthis.reportHelper.downloadFinancialProductComplianceReport(productId);return result;}}
2. 合规报告应用

⌨️ entry/src/main/ets/pages/ComplianceReportPage.ets

import{ ComplianceReportUtil }from'../utils/ComplianceReportUtil';@Entry@Component struct ComplianceReportPage {@State complianceReport: report.ComplianceReport |null=null;build(){Column({ space:16}){Text('合规报告').fontSize(18).fontWeight(FontWeight.Bold).textColor('#000000');InputComponent({ placeholder:'请输入金融产品ID', value:'',onChange:(value:string)=>{this.productId = value;}, type: InputType.Number });ButtonComponent({ text:'生成合规报告',onClick:async()=>{awaitthis.generateFinancialProductComplianceReport();}, disabled:!this.productId });if(this.complianceReport){Text(`报告编号:${this.complianceReport.reportNumber}`).fontSize(14).textColor('#000000');Text(`报告生成时间:${this.complianceReport.reportGenerateTime}`).fontSize(14).textColor('#666666');Text(`报告内容:${this.complianceReport.reportContent}`).fontSize(14).textColor('#666666');}}.width('100%').height('100%').padding(16).backgroundColor('#F5F5F5');}aboutToAppear(){// 初始化合规报告 ComplianceReportUtil.getInstance().init();}asyncgenerateFinancialProductComplianceReport():Promise<void>{this.complianceReport =await ComplianceReportUtil.getInstance().generateFinancialProductComplianceReport(parseInt(this.productId));}}

四、 产品创新实战 🛠️

4.1 实战目标

基于金融场景的产品创新要求,实现以下功能:

  • 产品创新:开发新的金融产品;
  • 产品优化:优化现有金融产品;
  • 产品推广:推广金融产品。

4.2 🔧 产品创新实现

1. 产品创新工具类

⌨️ entry/src/main/ets/utils/ProductInnovationUtil.ets

import innovation from'@ohos.innovation';// 产品创新工具类exportclassProductInnovationUtil{privatestatic instance: ProductInnovationUtil |null=null;private innovationHelper: innovation.InnovationHelper |null=null;// 单例模式staticgetInstance(): ProductInnovationUtil {if(!ProductInnovationUtil.instance){ ProductInnovationUtil.instance =newProductInnovationUtil();}return ProductInnovationUtil.instance;}// 初始化产品创新工具asyncinit():Promise<void>{if(!this.innovationHelper){this.innovationHelper = innovation.createInnovationHelper();}}// 开发新的金融产品asyncdevelopNewFinancialProduct(productData: innovation.FinancialProductData):Promise<innovation.ProductInnovationResult>{if(!this.innovationHelper){returnnull;}const result =awaitthis.innovationHelper.developNewFinancialProduct(productData);return result;}// 优化现有金融产品asyncoptimizeExistingFinancialProduct(productId:number, productData: innovation.FinancialProductData):Promise<innovation.ProductInnovationResult>{if(!this.innovationHelper){returnnull;}const result =awaitthis.innovationHelper.optimizeExistingFinancialProduct(productId, productData);return result;}}
2. 产品创新应用

⌨️ entry/src/main/ets/pages/ProductInnovationPage.ets

import{ ProductInnovationUtil }from'../utils/ProductInnovationUtil';@Entry@Component struct ProductInnovationPage {@State productData: innovation.FinancialProductData ={ productName:'', productDescription:'', expectedReturnRate:0, riskLevel:'', minimumInvestment:0};build(){Column({ space:16}){Text('产品创新').fontSize(18).fontWeight(FontWeight.Bold).textColor('#000000');InputComponent({ placeholder:'请输入产品名称', value:this.productData.productName,onChange:(value:string)=>{this.productData.productName = value;}, type: InputType.Normal });InputComponent({ placeholder:'请输入产品描述', value:this.productData.productDescription,onChange:(value:string)=>{this.productData.productDescription = value;}, type: InputType.MultiLine });InputComponent({ placeholder:'请输入预期收益率', value:`${this.productData.expectedReturnRate}`,onChange:(value:string)=>{this.productData.expectedReturnRate =parseFloat(value);}, type: InputType.Number });InputComponent({ placeholder:'请输入风险等级', value:this.productData.riskLevel,onChange:(value:string)=>{this.productData.riskLevel = value;}, type: InputType.Normal });InputComponent({ placeholder:'请输入最低投资金额', value:`${this.productData.minimumInvestment}`,onChange:(value:string)=>{this.productData.minimumInvestment =parseFloat(value);}, type: InputType.Number });ButtonComponent({ text:'开发新产品',onClick:async()=>{awaitthis.developNewFinancialProduct();}, disabled:!this.productData.productName ||!this.productData.productDescription });}.width('100%').height('100%').padding(16).backgroundColor('#F5F5F5');}aboutToAppear(){// 初始化产品创新 ProductInnovationUtil.getInstance().init();}asyncdevelopNewFinancialProduct():Promise<void>{const result =await ProductInnovationUtil.getInstance().developNewFinancialProduct(this.productData);if(result.success){ promptAction.showToast({ message:'产品开发成功'});// 重置产品数据this.productData ={ productName:'', productDescription:'', expectedReturnRate:0, riskLevel:'', minimumInvestment:0};}else{ promptAction.showToast({ message:'产品开发失败'});}}}

4.3 🔧 产品优化实现

1. 产品优化工具类

⌨️ entry/src/main/ets/utils/ProductOptimizationUtil.ets

import optimization from'@ohos.optimization';// 产品优化工具类exportclassProductOptimizationUtil{privatestatic instance: ProductOptimizationUtil |null=null;private optimizationHelper: optimization.OptimizationHelper |null=null;// 单例模式staticgetInstance(): ProductOptimizationUtil {if(!ProductOptimizationUtil.instance){ ProductOptimizationUtil.instance =newProductOptimizationUtil();}return ProductOptimizationUtil.instance;}// 初始化产品优化工具asyncinit():Promise<void>{if(!this.optimizationHelper){this.optimizationHelper = optimization.createOptimizationHelper();}}// 优化现有金融产品asyncoptimizeExistingFinancialProduct(productId:number, productData: optimization.FinancialProductData):Promise<optimization.ProductOptimizationResult>{if(!this.optimizationHelper){returnnull;}const result =awaitthis.optimizationHelper.optimizeExistingFinancialProduct(productId, productData);return result;}// 分析金融产品的优化建议asyncanalyzeFinancialProductOptimizationSuggestions(productId:number):Promise<Array<optimization.ProductOptimizationSuggestion>>{if(!this.optimizationHelper){return[];}const result =awaitthis.optimizationHelper.analyzeFinancialProductOptimizationSuggestions(productId);return result;}}

4.4 🔧 产品推广实现

1. 产品推广工具类

⌨️ entry/src/main/ets/utils/ProductPromotionUtil.ets

import promotion from'@ohos.promotion';// 产品推广工具类exportclassProductPromotionUtil{privatestatic instance: ProductPromotionUtil |null=null;private promotionHelper: promotion.PromotionHelper |null=null;// 单例模式staticgetInstance(): ProductPromotionUtil {if(!ProductPromotionUtil.instance){ ProductPromotionUtil.instance =newProductPromotionUtil();}return ProductPromotionUtil.instance;}// 初始化产品推广工具asyncinit():Promise<void>{if(!this.promotionHelper){this.promotionHelper = promotion.createPromotionHelper();}}// 推广金融产品asyncpromoteFinancialProduct(productId:number):Promise<promotion.ProductPromotionResult>{if(!this.promotionHelper){returnnull;}const result =awaitthis.promotionHelper.promoteFinancialProduct(productId);return result;}// 获取金融产品的推广报告asyncgetFinancialProductPromotionReport(productId:number):Promise<promotion.ProductPromotionReport>{if(!this.promotionHelper){returnnull;}const result =awaitthis.promotionHelper.getFinancialProductPromotionReport(productId);return result;}}

五、 项目配置与部署 🚀

5.1 配置文件修改

1. module.json5修改

在「entry/src/main/module.json5」中添加风险控制、合规审计、产品创新配置:

{"module":{"requestPermissions":[// ...],"abilities":[// ...],"widgets":[// ...],"pages":[// ...]}}

5.2 🔧 项目部署

1. 编译项目

在DevEco Studio中点击「Build」→「Build HAP」,编译项目。

2. 部署到设备

将编译后的HAP文件部署到鸿蒙设备上。

3. 测试金融理财项目
  • 在应用中查看风险评估的效果;
  • 在应用中查看风险监控的效果;
  • 在应用中查看风险预警的效果;
  • 在应用中查看合规检查的效果;
  • 在应用中查看合规审计的效果;
  • 在应用中查看合规报告的效果;
  • 在应用中查看产品创新的效果;
  • 在应用中查看产品优化的效果;
  • 在应用中查看产品推广的效果。

六、 项目运行与效果验证 📱

6.1 效果验证

风险评估:评估用户的风险承受能力;
风险监控:监控金融产品的风险;
风险预警:对风险进行预警;
合规检查:检查金融产品的合规性;
合规审计:审计金融产品的合规性;
合规报告:生成金融产品的合规报告;
产品创新:开发新的金融产品;
产品优化:优化现有金融产品;
产品推广:推广金融产品。


七、 总结与未来学习路径 🚀

7.1 总结

本文作为《鸿蒙APP开发从入门到精通》的第18篇,完成了:

  • 鸿蒙金融理财项目的风险控制设计与实现;
  • 风险评估、风险监控、风险预警的实现;
  • 合规审计在金融场景的核心设计与实现;
  • 合规检查、合规审计、合规报告的实现;
  • 产品创新在金融场景的设计与实现;
  • 产品创新、产品优化、产品推广的实现。

7.2 未来学习路径

  • 第19篇:鸿蒙金融理财全栈项目——生态合作、用户运营、数据变现;
  • 第20篇:鸿蒙金融理财全栈项目——运维监控、性能优化、安全加固。

八、 结语 ✅

恭喜你!你已经完成了《鸿蒙APP开发从入门到精通》的第18篇,掌握了金融理财项目的风险控制、合规审计、产品创新核心技术。

从现在开始,你已具备了开发风险可控、合规审计完善、产品创新丰富的金融级应用的能力。未来的2篇文章将逐步优化项目的生态合作、用户运营、数据变现,并最终实现应用的上线与变现。

让我们一起期待鸿蒙生态在金融领域的爆发! 🎉🎉🎉

Read more

DeepSeek-R1是真码农福音?我们问了100位开发者……

DeepSeek-R1是真码农福音?我们问了100位开发者……

从GitHub Copilot到DeepSeek-R1,AI编程工具正在引发一场"效率革命",开发者们对这些工具的期待与质疑并存。据Gartner预测,到2028年,将有75%的企业软件工程师使用AI代码助手。 眼看着今年国产选手DeepSeek-R1凭借“深度思考”能力杀入战场,它究竟是真码农福音还是需要打补丁的"潜力股"? ZEEKLOG问卷调研了社区内来自全栈开发、算法工程师、数据工程师、前端、后端等多个技术方向的100位开发者(截止到2月25日),聚焦DeepSeek-R1的代码生成效果、编写效率、语法支持、IDE集成、复杂代码处理等多个维度,一探DeepSeek-R1的开发提效能力。 代码生成效果:有成效但仍需提升 * 代码匹配比例差强人意 在代码生成与实际需求的匹配方面,大部分开发者(58人)遇到生成代码与实际需求完全匹配无需修改的比例在40%-70%区间,12人遇到代码匹配比例在70%-100%这样较高的区间。 然而,有30人代码匹配比例低于40%。这说明DeepSeek-R1在代码生成方面有一定效果,但在部分复杂或特定场景下,仍有很大的提升空间。

By Ne0inhk
在 VSCode 中本地运行 DeepSeek,打造强大的私人 AI

在 VSCode 中本地运行 DeepSeek,打造强大的私人 AI

本文将分步向您展示如何在本地安装和运行 DeepSeek、使用 CodeGPT 对其进行配置以及开始利用 AI 来增强您的软件开发工作流程,所有这些都无需依赖基于云的服务。  步骤 1:在 VSCode 中安装 Ollama 和 CodeGPT         要在本地运行 DeepSeek,我们首先需要安装Ollama,它允许我们在我们的机器上运行 LLM,以及CodeGPT,它是集成这些模型以提供编码辅助的 VSCode 扩展。 安装 Ollama Ollama 是一个轻量级平台,可以轻松运行本地 LLM。 下载Ollama 访问官方网站:https://ollama.com * 下载适合您的操作系统(Windows、macOS 或 Linux)的安装程序。 * 验证安装 安装后,打开终端并运行: ollama --version  如果 Ollama 安装正确,

By Ne0inhk
AI+游戏开发:如何用 DeepSeek 打造高性能贪吃蛇游戏

AI+游戏开发:如何用 DeepSeek 打造高性能贪吃蛇游戏

文章目录 * 一、技术选型与准备 * 1.1 传统开发 vs AI生成 * 1.2 环境搭建与工具选择 * 1.3 DeepSeek API 初步体验 * 二、贪吃蛇游戏基础实现 * 2.1 游戏结构设计 * 2.2 初始化游戏 * 2.3 DeepSeek 生成核心逻辑 * 三、游戏功能扩展 * 3.1 多人联机模式 * 3.2 游戏难度动态调整 * 3.3 游戏本地保存与回放 * 3.4 跨平台移植 * 《Vue.js项目开发全程实录/软件项目开发全程实录》 * 编辑推荐 * 内容简介 * 作者简介 * 目录 一、

By Ne0inhk
[DeepSeek] 入门详细指南(上)

[DeepSeek] 入门详细指南(上)

前言 今天的是 zty 写DeepSeek的第1篇文章,这个系列我也不知道能更多久,大约是一周一更吧,然后跟C++的知识详解换着更。 来冲个100赞兄弟们 最近啊,浙江出现了一匹AI界的黑马——DeepSeek。这个名字可能对很多人来说还比较陌生,但它已经在全球范围内引发了巨大的关注,甚至让一些科技巨头感到了压力。简单来说这 DeepSeek足以改变世界格局                                                   先   赞   后   看    养   成   习   惯  众所周知,一篇文章需要一个头图                                                   先   赞   后   看    养   成   习   惯   上面那行字怎么读呢,让大家来跟我一起读一遍吧,先~赞~后~看~养~成~习~惯~ 想要 DeepSeek从入门到精通.pdf 文件的加这个企鹅群:953793685(

By Ne0inhk