1 import { Component, EventEmitter, Input, OnInit, Output } from "@angular/core";
2 import { COMMUNICATION_FORM_ITEMS,MASKTEXT } from "./constants";
3 import { Util } from "../../../../../shared/utils/utils";
4 import { SlicingTaskServices } from "../../../../../core/services/slicingTaskServices";
5 import { NzMessageService } from "ng-zorro-antd";
8 selector: "app-business-order",
9 templateUrl: "./business-order.component.html",
10 styleUrls: ["./business-order.component.less"],
12 export class BusinessOrderComponent implements OnInit {
14 private myhttp: SlicingTaskServices,
15 private message: NzMessageService,
20 console.log('MASKTEXT',MASKTEXT)
21 this.masktext = MASKTEXT
25 this.AreaFormatting();
28 COMMUNICATION_FORM_ITEMS.forEach((item, index) => {
29 if(item.key=='coverageAreaNumber'){
30 item["coverflag"] = flag == true ? false:true
35 @Input() showModel: boolean;
36 @Output() cancel = new EventEmitter<boolean>();
37 comunicationFormItems = COMMUNICATION_FORM_ITEMS;
38 slicing_order_info = {
44 resourceSharingLevel: "shared",
45 uEMobilityLevel: "stationary",
47 coverageAreaNumber: null,
50 validateRulesShow: any[] = [];
51 rulesText: any[] = [];
52 areaLevel: number = 4;
53 masktext: string = "";
54 AreaFormatting(): void {
55 let areaList = ["Beijing;Beijing;Haidian District;Wanshoulu Street"];
56 this.areaList = areaList.map((item: any) => {
57 let arr = item.split(";");
58 item = arr.map((it, index) => {
62 } else if (index === 1) {
64 } else if (index === 2) {
72 obj.options = [{ name: it, id: it }];
79 handleCancel(): void {
80 this.showModel = false;
81 this.cancel.emit(this.showModel);
82 this.slicing_order_info = {
88 resourceSharingLevel: "shared",
89 uEMobilityLevel: "stationary",
91 coverageAreaNumber: null,
93 this.validateRulesShow = [];
97 const coverage_list: string[] = [];
100 COMMUNICATION_FORM_ITEMS.forEach((item, index) => {
101 if (item.required && item.type === "input") {
105 this.slicing_order_info[item.key],
108 this.validateRulesShow
112 if (this.validateRulesShow.indexOf(true) > -1) {
116 this.areaList.forEach((item) => {
118 item.forEach((area) => {
119 str += area.selected + ";";
121 coverage_list.push(str.substring(0, str.length - 1));
123 if (coverage_list.length > 1) {
124 coverageAreas = coverage_list.join("|");
126 coverageAreas = coverage_list.toString();
128 const coverageAreaNumber = this.slicing_order_info[
131 if (coverageAreaNumber) {
132 this.slicing_order_info.coverageArea = `${coverageAreas}-${coverageAreaNumber}`;
134 this.slicing_order_info.coverageArea = `${coverageAreas}`;
136 delete this.slicing_order_info.coverageAreaNumber;
139 slicing_order_info: this.slicing_order_info,
141 const csmfSlicingPurchaseFailedCallback = () => {
145 .csmfSlicingPurchase(paramsObj, csmfSlicingPurchaseFailedCallback)
147 const result = res.result_header;
150 result.result_code &&
151 +result.result_code === 200
155 this.message.create("error", "Network error");