1.2.0部分代码

This commit is contained in:
xiaoxiao
2025-08-27 16:11:20 +08:00
parent ca7d1dd379
commit e89a5f15ce
74 changed files with 2704 additions and 192 deletions
+5 -1
View File
@@ -109,4 +109,8 @@ export { customAttachment } from './src/main/ets/models/customAttachment'
export { ImageUtil } from './src/main/ets/utils/ImageUtil'
export { compressedImage,saveImageToGallery,CompressedImageInfo } from './src/main/ets/utils/ImageCompressUtils'
export { compressedImage,saveImageToGallery,CompressedImageInfo } from './src/main/ets/utils/ImageCompressUtils'
export { ScreeningView } from './src/main/ets/Views/ScreeningView'
export { TagListModel, TagList} from './src/main/ets/models/TagListModel'
@@ -0,0 +1,107 @@
import { TagList, TagListModel } from "../models/TagListModel";
import { promptAction } from "@kit.ArkUI";
import { HashMap } from "@kit.ArkTS";
import { BusinessError } from "@kit.BasicServicesKit";
import { hdHttp, HdResponse } from "../utils/request";
import { BasicConstant } from "../constants/BasicConstant";
@Component
export struct ScreeningView {
@State tags:TagList[] = []
@Prop selectedArray:TagList[] = []
@Prop type:string = '0'
private isSelectedItem?: (value: TagList[]) => void;
aboutToAppear(): void {
let hashMap: HashMap<string, string> = new HashMap();
hdHttp.post<string>(BasicConstant.tagList,{
type:this.type
} as TagModel).then(async (res: HdResponse<string>) => {
let json:TagListModel = JSON.parse(res+'') as TagListModel;
if (json.code == '1') {
this.tags = json.data
}
}).catch((err: BusinessError) => {
console.error('Response tagList'+err)
})
}
build() {
Column() {
Grid() {
ForEach(this.tags, (item: TagList, index: number) => {
GridItem() {
Text(item.NAME)
.height(25)
.width('100%')
.padding({left:5,right:5})
.fontWeight(FontWeight.Regular)
.fontSize(13)
.maxLines(1)
.textOverflow({ overflow: TextOverflow.Ellipsis })
.fontColor(this.selectedArray.some(selected=>selected.ID === item.ID)?$r('app.color.top_title'): $r('app.color.999999'))
// .fontColor(this.selectedArray.indexOf(item)!=-1 ? $r('app.color.top_title'): $r('app.color.999999'))
.textAlign(TextAlign.Center)
.border({ width: 1, color:this.selectedArray.some(selected=>selected.ID === item.ID)? $r('app.color.top_title'): '#999999' })
.borderRadius(30)
.onClick(() => {
const targetIndex = this.selectedArray.findIndex(
selected => selected.ID === item.ID
);
if(targetIndex !== -1) {
const newSelected = [...this.selectedArray];
newSelected.splice(targetIndex, 1);
this.selectedArray = newSelected;
} else {
if (this.selectedArray.length >= 3) {
promptAction.showToast({ message: '最多选择三个标签!', duration: 1000 });
return;
}
this.selectedArray.push(item)
}
})
}
})
}
.padding(10)
.columnsTemplate('1fr 1fr 1fr 1fr')
.columnsGap(10)
.rowsGap(10)
.backgroundColor(Color.White)
.height('100%')
.width('100%')
.layoutWeight(1)
Row() {
Text('重置').height(40)
.textAlign(TextAlign.Center)
.fontColor($r('app.color.top_title') )
.border({ width: 1, color: $r('app.color.top_title') })
.borderRadius(5)
.layoutWeight(1)
.margin({left:15})
.onClick(()=>{
this.selectedArray= [];
})
Text('确定')
.height(40)
.fontColor(Color.White).textAlign(TextAlign.Center)
.border({ width: 1, color: $r('app.color.top_title') })
.borderRadius(5)
.layoutWeight(1)
.backgroundColor($r('app.color.top_title'))
.margin({left:10,right:15})
.onClick(()=>{
this.isSelectedItem?.(this.selectedArray)
})
}.width('100%')
.height(60)
.backgroundColor(Color.White)
}
.width('100%')
.height('100%')
}
}
interface TagModel {
type:string
}
@@ -22,8 +22,12 @@ export struct HdNav {
@Prop
rightIcon: ResourceStr = $r('sys.media.ohos_ic_public_more')
@Prop
twoRightIcon: ResourceStr = $r('sys.media.ohos_ic_public_more')
@Prop
showRightIcon: boolean = true
@Prop
showTwoRightItem: boolean = false
@Prop
showLeftIcon: boolean = true
@Prop
showRightText: boolean = false
@@ -41,6 +45,8 @@ export struct HdNav {
isLeftAction: boolean = false
// 添加右侧点击函数
private rightItemAction:()=> void = () => {};
// 添加右侧第二个按钮的点击函数
private twoRightItemAction:()=> void = () => {};
// 添加左侧点击函数
private leftItemAction:()=> void = () => {};
@@ -74,20 +80,29 @@ export struct HdNav {
this.titleBuilder()
}
}
.margin({left:this.showTwoRightItem?20:0})
.height(56)
.width(150)
.layoutWeight(1)
if (this.showRightIcon) {
Row()
{
Row() {
Image(this.rightIcon)
.size({ width: 24, height: 24 })
.objectFit(ImageFit.Contain)
.bindMenu(this.menuBuilder)
.onClick(()=>this.rightItemAction())
if (this.showTwoRightItem) {
Image(this.twoRightIcon)
.margin({left:15})
.size({ width: 24, height: 24 })
.objectFit(ImageFit.Contain)
.bindMenu(this.menuBuilder)
.onClick(()=>this.twoRightItemAction())
}
}
.size({ width: 50, height: 50 }).justifyContent(FlexAlign.End)
.size(this.showTwoRightItem?{width:70,height:50}:{ width: 50, height: 50 })
.justifyContent(FlexAlign.End)
} else if (this.showRightText) {
Text(this.rightText)
@@ -6,27 +6,28 @@ export class BasicConstant {
static readonly getzcxy = "https://doc.igandan.com/app/integral/hmos_expert_zcxy.html";// 注册协议正式地址
//测试环境
// static readonly urlExpertAPI = "https://dev-app.igandan.com/app/expertAPI/";
// static readonly urlExpertApp = "https://dev-app.igandan.com/app/expertApp/"
// static readonly urlHtml = "http://dev-doc.igandan.com/app/"
// static readonly urlImage = "https://dev-doc.igandan.com/app/"
// static readonly urlExpert = "https://dev-app.igandan.com/app/expert/"
// static readonly wxUrl = "https://dev-wx.igandan.com/";
// static readonly polvId = "11";//保利威视学员id
// static readonly urlApp="https://dev-app.igandan.com/app/"
static readonly urlExpertAPI = "https://dev-app.igandan.com/app/expertAPI/";
static readonly urlExpertApp = "https://dev-app.igandan.com/app/expertApp/"
static readonly urlHtml = "http://dev-doc.igandan.com/app/"
static readonly urlImage = "https://dev-doc.igandan.com/app/"
static readonly urlExpert = "https://dev-app.igandan.com/app/expert/"
static readonly wxUrl = "https://dev-wx.igandan.com/";
static readonly polvId = "11";//保利威视学员id
static readonly urlApp="https://dev-app.igandan.com/app/"
//正式环境
static readonly urlExpertAPI = "https://app.igandan.com/app/expertAPI/";
static readonly urlExpertApp = "http://app.igandan.com/app/expertApp/"
static readonly urlHtml = "http://doc.igandan.com/app/"
static readonly urlImage = "http://doc.igandan.com/app/"
static readonly urlExpert = "http://app.igandan.com/app/expert/"
static readonly wxUrl = "https://wx.igandan.com/";// 微信服务器地址
static readonly polvId = "21";//保利威视学员id
static readonly urlApp="http://app.igandan.com/app/"
// static readonly urlExpertAPI = "https://app.igandan.com/app/expertAPI/";
// static readonly urlExpertApp = "http://app.igandan.com/app/expertApp/"
// static readonly urlHtml = "http://doc.igandan.com/app/"
// static readonly urlImage = "http://doc.igandan.com/app/"
// static readonly urlExpert = "http://app.igandan.com/app/expert/"
// static readonly wxUrl = "https://wx.igandan.com/";// 微信服务器地址
// static readonly polvId = "21";//保利威视学员id
// static readonly urlApp="http://app.igandan.com/app/"
static readonly getSystemTimeStamp = BasicConstant.urlApp+'manager/getSystemTimeStamp'
static readonly addBonusPoints = BasicConstant.urlExpertApp+'addBonusPoints'
static readonly indexV2 = BasicConstant.urlExpertAPI+'indexV2';//首页轮播
static readonly getAppActivity = BasicConstant.urlExpertAPI+'getAppActivity'
static readonly applyList = BasicConstant.urlExpert+'applyList'
static readonly groupList = BasicConstant.urlExpertApp+'groupList'
static readonly isMaiLanExpert = BasicConstant.urlExpertAPI+'isMaiLanExpert'
@@ -72,7 +73,11 @@ export class BasicConstant {
static readonly meetingHistoryList = BasicConstant.urlExpertAPI + "meetingHistoryList";
static readonly videoRoll = BasicConstant.urlExpertAPI + "videoRoll";
static readonly expertVideoTypeList = BasicConstant.urlExpertAPI + "expertVideoTypeList";
static readonly patientVideoNew = BasicConstant.urlExpertApp + 'patientVideoNew';
static readonly videoByKeyWordsNew = BasicConstant.urlExpertApp + "videoByKeyWordsNew";
static readonly patientVideoByKeyWordsNew = BasicConstant.urlExpertApp + 'patientVideoByKeyWordsNew'
static readonly feedBack = BasicConstant.urlExpert+'feedBack'
static readonly ganDanFileByKeyWords = BasicConstant.urlExpertAPI+'ganDanFileByKeyWords'//肝胆课件
static readonly tagList = BasicConstant.urlExpertApp + "tagList";
static readonly meetingListBySearch = BasicConstant.urlExpertAPI + "meetingListBySearch";
static readonly videoBySearchNew = BasicConstant.urlExpertApp+'videoBySearchNew';//搜索肝胆视频列表
@@ -52,7 +52,9 @@ export interface Data{
state:number;
realName:string;
specialy:Array<object>;
special:SpecialDisease[];
YX_accid:string;
YX_token:string
}
export interface BaseBean{
@@ -0,0 +1,15 @@
export interface TagListModel {
code:string;
data:TagList[];
message:string;
}
export interface TagList{
DES:string;
ID:string;
sort:string;
create_date:string;
TYPE:string;
NAME:string;
}
@@ -0,0 +1,31 @@
export interface TeachModel {
code:string;
data:PatientTBean[];
message:string;
totalPage:number
}
export interface PatientTBean{
expertName:string;
imgPath:string;
topic:string;
publisherUuid:string;
recommendedUuid:string;
isOriginal:string;
isThrough:string;
filePath:number;
uuid:string;
agreenum:number;
readnum:number;
submitDate:string;
modifyDate:string;
summary:string;
type:string;
path:string;
tags:string;
content:string;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB