CardAdvTop.ets 1.95 KB
import { CompDTO } from 'wdBean/Index';
import { DateTimeUtils, Logger } from 'wdKit/Index';
import {PageHelper} from '../../viewmodel/PageHelper';
import PageModel from '../../viewmodel/PageModel';

/**
 * @Description: 广告稿件 顶部标签+删除按钮
 * @Author:
 * @Email: liyubing@wondertek.com.cn
 * @CreateDate:
 * @UpdateRemark: 更新说明
 * @Version: 1.0
 */
@Component
export struct CardAdvTop {
  pageModel: PageModel = new PageModel();
  compDTO: CompDTO = {} as CompDTO

  build() {

    Row() {
      Text($r('app.string.comp_advertisement'))
        .fontSize('10fp')
        .fontColor($r('app.color.white'))
        .width(28)
        .height(16)
        .backgroundColor('#4D000000')
        .borderRadius(4)
        .textAlign(TextAlign.Center)

      Blank()

      Stack() {
        Image($r('app.media.comp_adv_close_white'))
          .width(9)
          .height(9)
          .borderRadius({
            topLeft: '4vp',
            topRight: '4vp',
            bottomLeft: '4vp',
            bottomRight: '4vp'
          })
      }
      .width(18)
      .height(14)
      .backgroundColor('#4D000000')
      .borderWidth(0.5)
      .borderColor($r('app.color.white'))
      .borderRadius(4)

    }.width('100%').padding({
      top: 8,
      left: 8,
      right: 8
    }).onClick(() => {
      this.delComp()
    })
  }

  /**
   * 删除稿件
   */
  private delComp() {
    if (this.pageModel) {

      let a = this.compDTO;
      let currentIndex = -1
      for (let i = 0; i < this.pageModel.compList.size(); i++) {
        let b = this.pageModel.compList.getData(i) as CompDTO
        if (a.compStyle == b.compStyle && a.matInfo.id == b.matInfo.id  && a.matInfo.originalPostion == b.matInfo.originalPostion) {
          currentIndex = i
          break;
        }
      }
      if (currentIndex >= 0) {
        this.pageModel.compList.deleteItem(currentIndex)
        PageHelper.updateFirstPageEndIndex(this.pageModel, true, currentIndex)
      }
    }
  }
}