{"version":3,"mappings":"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ACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAGA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAGA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;;UAGMza;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC9lBQya;;AAAiEA;;AAAeA;;;;;;AAAnCA;;AAAoBA;;AAAAA;;;;;;AAInEA;;AAA+DA;;AAAYA;;;;;;AAAhCA;;AAAoBA;;AAAAA;;;;;;;;AAwB3DA;;AAA0BA;AAAAA;;AAAA;;AAAA;;AAAA,oCAAkB,KAAlB,EAAuBkd,QAAvB;AAAuB,WA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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAGA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAGA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;;UAGMza;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7lBQya;;AAAiEA;;AAAeA;;;;;;AAAnCA;;AAAoBA;;AAAAA;;;;;;AAInEA;;AAA+DA;;AAAYA;;;;;;AAAhCA;;AAAoBA;;AAAAA;;;;;;;;AAyB3DA;;AAA0BA;AAAAA;;AAAA;;AAAA;;AAAA,oCAAkB,KAAlB,EAAuBkd,QAAvB;AAAuB,WAAvB;;AACzBld;;AAAiDA;;AAAkCA;;AACpFA;;;;;;;;AACAA;;AAA2BA;AAAAA;;AAAA;;AAAA;;AAAA,oCAAkB,IAAlB,EAAsBkd,QAAtB;AAAsB,WAAtB;;AACzBld;;AACFA;;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","names":["e","webpackEmptyAsyncContext","module","socialLinks","url","target","icon","DATA_SERVICES","provide","_data_users__WEBPACK_IMPORTED_MODULE_2__","useClass","_mock_users_service__WEBPACK_IMPORTED_MODULE_21__","_data_electricity__WEBPACK_IMPORTED_MODULE_3__","_mock_electricity_service__WEBPACK_IMPORTED_MODULE_22__","_data_smart_table__WEBPACK_IMPORTED_MODULE_4__","_mock_smart_table_service__WEBPACK_IMPORTED_MODULE_23__","_data_user_activity__WEBPACK_IMPORTED_MODULE_5__","_mock_user_activity_service__WEBPACK_IMPORTED_MODULE_24__","_data_orders_chart__WEBPACK_IMPORTED_MODULE_6__","_mock_orders_chart_service__WEBPACK_IMPORTED_MODULE_25__","_data_profit_chart__WEBPACK_IMPORTED_MODULE_7__","_mock_profit_chart_service__WEBPACK_IMPORTED_MODULE_26__","_data_traffic_list__WEBPACK_IMPORTED_MODULE_8__","_mock_traffic_list_service__WEBPACK_IMPORTED_MODULE_27__","_data_earning__WEBPACK_IMPORTED_MODULE_9__","_mock_earning_service__WEBPACK_IMPORTED_MODULE_28__","_data_orders_profit_chart__WEBPACK_IMPORTED_MODULE_10__","_mock_orders_profit_chart_service__WEBPACK_IMPORTED_MODULE_29__","_data_traffic_bar__WEBPACK_IMPORTED_MODULE_11__","_mock_traffic_bar_service__WEBPACK_IMPORTED_MODULE_30__","_data_profit_bar_animation_chart__WEBPACK_IMPORTED_MODULE_12__","_mock_profit_bar_animation_chart_service__WEBPACK_IMPORTED_MODULE_31__","_data_temperature_humidity__WEBPACK_IMPORTED_MODULE_13__","_mock_temperature_humidity_service__WEBPACK_IMPORTED_MODULE_32__","_data_solar__WEBPACK_IMPORTED_MODULE_14__","_mock_solar_service__WEBPACK_IMPORTED_MODULE_33__","_data_traffic_chart__WEBPACK_IMPORTED_MODULE_15__","_mock_traffic_chart_service__WEBPACK_IMPORTED_MODULE_34__","_data_stats_bar__WEBPACK_IMPORTED_MODULE_16__","_mock_stats_bar_service__WEBPACK_IMPORTED_MODULE_35__","_data_country_order__WEBPACK_IMPORTED_MODULE_17__","_mock_country_order_service__WEBPACK_IMPORTED_MODULE_36__","_data_stats_progress_bar__WEBPACK_IMPORTED_MODULE_18__","_mock_stats_progress_bar_service__WEBPACK_IMPORTED_MODULE_37__","_data_visitors_analytics__WEBPACK_IMPORTED_MODULE_19__","_mock_visitors_analytics_service__WEBPACK_IMPORTED_MODULE_38__","_data_security_cameras__WEBPACK_IMPORTED_MODULE_20__","_mock_security_cameras_service__WEBPACK_IMPORTED_MODULE_39__","NbSimpleRoleProvider","_nebular_security__WEBPACK_IMPORTED_MODULE_41__","NB_CORE_PROVIDERS","_mock_mock_data_module__WEBPACK_IMPORTED_MODULE_40__","providers","_nebular_auth__WEBPACK_IMPORTED_MODULE_43__","strategies","name","delay","forms","login","register","accessControl","guest","view","user","parent","create","edit","remove","_utils__WEBPACK_IMPORTED_MODULE_1__","CoreModule","parentModule","forRoot","ngModule","_angular_core__WEBPACK_IMPORTED_MODULE_44__","_angular_common__WEBPACK_IMPORTED_MODULE_45__","imports","exports","CountryOrderData","EarningData","ElectricityData","OrdersChartData","OrdersProfitChartData","ProfitBarAnimationChartData","ProfitChartData","SecurityCamerasData","SmartTableData","SolarData","StatsBarData","StatsProgressBarData","TemperatureHumidityData","TrafficBarData","TrafficChartData","TrafficListData","UserActivityData","UserData","VisitorsAnalyticsData","CountryOrderService","countriesCategories","length","nPoints","Array","from","map","Math","round","random","country","generateRandomData","countriesCategoriesLength","_data_country_order__WEBPACK_IMPORTED_MODULE_0__","t","factory","EarningService","Date","value","bitcoin","liveChart","delta","up","dailyIncome","tether","ethereum","elementsNumber","currentDate","currentValue","generateRandomLiveChartData","ONE_DAY","getFullYear","getMonth","getDate","join","currency","data","liveUpdateChartData","toLowerCase","newValue","shift","push","getDefaultLiveChartData","pieChartData","_data_earning__WEBPACK_IMPORTED_MODULE_0__","ElectricityService","title","months","month","down","kWatts","cost","active","chartData","chartPoints","p","index","label","listData","_data_electricity__WEBPACK_IMPORTED_MODULE_0__","SERVICES","_users_service__WEBPACK_IMPORTED_MODULE_0__","_electricity_service__WEBPACK_IMPORTED_MODULE_1__","_smart_table_service__WEBPACK_IMPORTED_MODULE_2__","_user_activity_service__WEBPACK_IMPORTED_MODULE_3__","_orders_chart_service__WEBPACK_IMPORTED_MODULE_4__","_profit_chart_service__WEBPACK_IMPORTED_MODULE_5__","_traffic_list_service__WEBPACK_IMPORTED_MODULE_6__","_periods_service__WEBPACK_IMPORTED_MODULE_7__","_earning_service__WEBPACK_IMPORTED_MODULE_8__","_orders_profit_chart_service__WEBPACK_IMPORTED_MODULE_9__","_traffic_bar_service__WEBPACK_IMPORTED_MODULE_10__","_profit_bar_animation_chart_service__WEBPACK_IMPORTED_MODULE_11__","_temperature_humidity_service__WEBPACK_IMPORTED_MODULE_12__","_solar_service__WEBPACK_IMPORTED_MODULE_13__","_traffic_chart_service__WEBPACK_IMPORTED_MODULE_14__","_stats_bar_service__WEBPACK_IMPORTED_MODULE_15__","_country_order_service__WEBPACK_IMPORTED_MODULE_16__","_stats_progress_bar_service__WEBPACK_IMPORTED_MODULE_17__","_visitors_analytics_service__WEBPACK_IMPORTED_MODULE_18__","_security_cameras_service__WEBPACK_IMPORTED_MODULE_19__","MockDataModule","_angular_common__WEBPACK_IMPORTED_MODULE_21__","OrdersChartService","period","week","getDataForWeekPeriod","getDataForMonthPeriod","year","getDataForYearPeriod","chartLabel","getDataLabels","getWeeks","linesData","getMonths","labelsArray","labelsArrayLength","step","item","dataIndex","_data_orders_chart__WEBPACK_IMPORTED_MODULE_0__","_angular_core__WEBPACK_IMPORTED_MODULE_2__","OrdersProfitChartService","ordersChartService","profitChartService","summary","getOrdersChartData","getProfitChartData","_data_orders_profit_chart__WEBPACK_IMPORTED_MODULE_0__","_angular_core__WEBPACK_IMPORTED_MODULE_4__","PeriodsService","ProfitBarAnimationChartService","firstLine","getDataForFirstLine","secondLine","getDataForSecondLine","createEmptyArray","_","oneFifth","sin","cos","_data_profit_bar_animation_chart__WEBPACK_IMPORTED_MODULE_0__","ProfitChartService","nPoint","getRandomData","_data_profit_chart__WEBPACK_IMPORTED_MODULE_0__","SecurityCamerasService","source","cameras","_data_security_cameras__WEBPACK_IMPORTED_MODULE_0__","SmartTableService","id","firstName","lastName","username","email","age","_data_smart_table__WEBPACK_IMPORTED_MODULE_0__","SolarService","_data_solar__WEBPACK_IMPORTED_MODULE_0__","StatsBarService","statsBarData","_data_stats_bar__WEBPACK_IMPORTED_MODULE_0__","StatsProgressBarService","activeProgress","description","progressInfoData","_data_stats_progress_bar__WEBPACK_IMPORTED_MODULE_0__","TemperatureHumidityService","min","max","temperatureDate","humidityDate","_data_temperature_humidity__WEBPACK_IMPORTED_MODULE_0__","TrafficBarService","labels","formatter","getYears","_data_traffic_bar__WEBPACK_IMPORTED_MODULE_0__","_angular_core__WEBPACK_IMPORTED_MODULE_3__","TrafficChartService","_data_traffic_chart__WEBPACK_IMPORTED_MODULE_0__","TrafficListService","roundTo","getDataWeek","getDataMonth","getDataYear","getFirstDateInPeriod","weeks","reduceData","years","parseInt","timePeriods","reduce","result","timePeriod","hasResult","prevDate","comparison","nextDate","prevValue","nextValue","getRandom","deltaValue","date","abs","_data_traffic_list__WEBPACK_IMPORTED_MODULE_0__","UserActivityService","periods","pagesVisitCount","deltaUp","newVisits","generateUserActivityRandomData","days","_data_user_activity__WEBPACK_IMPORTED_MODULE_0__","UserService","nick","picture","eva","jack","lee","alan","kate","mobile","home","work","users","type","types","time","setHours","contacts","recentUsers","_data_users__WEBPACK_IMPORTED_MODULE_0__","VisitorsAnalyticsService","periodService","outerLinePointsLength","outerLinePoints","monthsLength","monthIndex","innerLinePoints","generateOutlineLineData","pieChartValue","_data_visitors_analytics__WEBPACK_IMPORTED_MODULE_0__","throwIfAlreadyLoaded","moduleName","Error","AnalyticsService","location","router","enabled","events","pipe","event","_angular_router__WEBPACK_IMPORTED_MODULE_1__","subscribe","ga","hitType","page","path","eventName","LayoutService","rxjs__WEBPACK_IMPORTED_MODULE_0__","layoutSize$","refCount","next","layoutSizeChange$","Track","PlayerService","artist","cover","current","floor","playlist","getNextTrack","getPrevTrack","SeoService","document","platformId","isBrowser","dom","createCanonicalTag","destroy$","complete","linkCanonical","createElement","setAttribute","head","appendChild","getCanonicalUrl","_angular_router__WEBPACK_IMPORTED_MODULE_3__","origin","pathname","_angular_core__WEBPACK_IMPORTED_MODULE_5__","_nebular_theme__WEBPACK_IMPORTED_MODULE_6__","StateService","directionService","selected","layouts","sidebars","onDirectionChange","alive","updateSidebarIcons","direction","getDirection","startSidebar","endSidebar","isLtr","_nebular_theme__WEBPACK_IMPORTED_MODULE_2__","startIconClass","endIconClass","state","layoutState$","asObservable","sidebarState$","FooterComponent","selectors","decls","vars","consts","template","_angular_core__WEBPACK_IMPORTED_MODULE_0__","ctx_r2","HeaderComponent","sidebarService","menuService","themeService","userService","layoutService","cookieService","_router","breakpointService","http","ms","hs","rxjs__WEBPACK_IMPORTED_MODULE_6__","console","log","menuSub","onItemClick","logout","AuthUpdata$","val","getStoreList","USR_POSEmployeeInfo_ID","get","USR_AccountInfo_ID","USR_EmployeeInfo_ID","ORG_Company_ID","cookie_sid","ORG_Store_ID","currentTheme","Object","CompanyName","getBreakpointsMap","xl","onMediaQueryChange","currentBreakpoint","width","isLessThanXl","userPictureOnly","onThemeChange","themeName","unsubscribe","toggle","changeLayoutSize","post","storeSelectList","LIST","forEach","selectItem","selectData","element","content","StoreName","obj","find","x","selectORG_Store_ID","selectStoreChange","upSelect","error","set","AuthChangeSubject","getMenu","GetContractRd","ctx","SearchInputComponent","isInputShown","input","nativeElement","focus","search","emit","viewQuery","TinyMCEComponent","host","locationStrategy","tinymce","init","plugins","skin_url","getBaseHref","setup","editor","on","editorKeyup","getContent","height","outputs","encapsulation","OneColumnLayoutComponent","ngContentSelectors","SimpleLayoutComponent","ThreeColumnsLayoutComponent","TwoColumnsLayoutComponent","CapitalizePipe","charAt","toUpperCase","slice","pure","NumberWithCommasPipe","Intl","NumberFormat","format","PluralPipe","pluralLabel","RoundPipe","TimingPipe","minutes","seconds","initZero","baseThemeVariables","_nebular_theme__WEBPACK_IMPORTED_MODULE_0__","CORPORATE_THEME","base","variables","temperature","arcFill","arcEmpty","bg2","thumbBg","thumbBorder","solar","gradientLeft","primary","gradientRight","shadowColor","secondSeriesFill","radius","traffic","tooltipBg","bg","tooltipBorderColor","border2","tooltipExtraCss","tooltipTextColor","fgText","tooltipFontWeight","yAxisSplitLine","lineBg","lineShadowBlur","itemColor","border4","itemBorderColor","itemEmphasisBorderColor","primaryLight","shadowLineDarkBg","shadowLineShadow","gradFrom","gradTo","electricity","tooltipLineColor","tooltipLineWidth","axisLineColor","border3","xAxisTextColor","fg","separator","lineStyle","lineWidth","lineGradFrom","lineGradTo","lineShadow","areaGradFrom","areaGradTo","bubbleMap","titleColor","areaColor","bg4","areaHoverColor","fgHighlight","areaBorderColor","border5","profitBarAnimationEchart","textColor","firstAnimationBarColor","secondAnimationBarColor","success","splitLineStyleOpacity","splitLineStyleWidth","splitLineStyleColor","tooltipFontSize","tooltipBorderWidth","trafficBarEchart","gradientFrom","warningLight","gradientTo","warning","shadow","shadowBlur","axisTextColor","axisFontSize","countryOrders","countryBorderColor","countryFillColor","countryBorderWidth","hoveredCountryBorderColor","hoveredCountryFillColor","hoveredCountryBorderWidth","chartAxisLineColor","chartAxisTextColor","chartAxisFontSize","chartGradientTo","chartGradientFrom","chartAxisSplitLine","chartShadowLineColor","chartLineBottomShadowColor","chartInnerLineColor","echarts","splitLineColor","itemHoverShadowColor","tooltipBackgroundColor","areaOpacity","chartjs","orders","firstAreaGradFrom","bg3","firstAreaGradTo","firstShadowLineDarkBg","secondLineGradFrom","secondLineGradTo","secondAreaGradFrom","secondAreaGradTo","secondShadowLineDarkBg","thirdLineGradFrom","thirdLineGradTo","successLight","thirdAreaGradFrom","thirdAreaGradTo","thirdShadowLineDarkBg","profit","firstLineGradFrom","firstLineGradTo","firstLineShadow","secondLineShadow","thirdLineShadow","orderProfitLegend","firstItem","secondItem","thirdItem","visitors","innerLineStyle","innerLineWidth","innerAreaGradFrom","innerAreaGradTo","visitorsLegend","firstIcon","secondIcon","visitorsPie","firstPieGradientLeft","firstPieGradientRight","firstPieShadowColor","firstPieRadius","secondPieGradientLeft","secondPieGradientRight","secondPieShadowColor","secondPieRadius","shadowOffsetX","shadowOffsetY","visitorsPieLegend","firstSection","secondSection","earningPie","center","fontSize","thirdPieGradientLeft","thirdPieGradientRight","thirdPieShadowColor","earningLine","COSMIC_THEME","DARK_THEME","DEFAULT_THEME","NB_MODULES","_nebular_theme__WEBPACK_IMPORTED_MODULE_7__","_nebular_security__WEBPACK_IMPORTED_MODULE_8__","_nebular_eva_icons__WEBPACK_IMPORTED_MODULE_9__","COMPONENTS","_components__WEBPACK_IMPORTED_MODULE_0__","_layouts__WEBPACK_IMPORTED_MODULE_2__","PIPES","_pipes__WEBPACK_IMPORTED_MODULE_1__","ThemeModule","_styles_theme_default__WEBPACK_IMPORTED_MODULE_3__","_styles_theme_cosmic__WEBPACK_IMPORTED_MODULE_4__","_styles_theme_corporate__WEBPACK_IMPORTED_MODULE_5__","_styles_theme_dark__WEBPACK_IMPORTED_MODULE_6__","_angular_common__WEBPACK_IMPORTED_MODULE_11__","declarations","routes","loadChildren","Promise","then","m","MainModule","__webpack_require__","UserModule","redirectTo","pathMatch","config","useHash","AppRoutingModule","AppComponent","analytics","seoService","nbIconLibraries","trackPageViews","trackCanonicalChanges","AppModule","bootstrap","_app_component__WEBPACK_IMPORTED_MODULE_2__","ngx_cookie_service__WEBPACK_IMPORTED_MODULE_9__","_app_tool_service_api_service__WEBPACK_IMPORTED_MODULE_6__","_angular_common_http__WEBPACK_IMPORTED_MODULE_10__","_basic_auth_htpp_interceptor_service__WEBPACK_IMPORTED_MODULE_7__","multi","_angular_forms__WEBPACK_IMPORTED_MODULE_12__","_nebular_theme__WEBPACK_IMPORTED_MODULE_13__","_techiediaries_ngx_qrcode__WEBPACK_IMPORTED_MODULE_14__","ngx_dropzone__WEBPACK_IMPORTED_MODULE_15__","_angular_platform_browser__WEBPACK_IMPORTED_MODULE_16__","_angular_platform_browser_animations__WEBPACK_IMPORTED_MODULE_17__","_app_routing_module__WEBPACK_IMPORTED_MODULE_3__","messageGoogleMapKey","_core_core_module__WEBPACK_IMPORTED_MODULE_0__","_theme_theme_module__WEBPACK_IMPORTED_MODULE_1__","_tool_tool_module__WEBPACK_IMPORTED_MODULE_5__","_main_main_module__WEBPACK_IMPORTED_MODULE_4__","BasicAuthHtppInterceptorService","req","clone","setHeaders","handle","providedIn","component","_main_component__WEBPACK_IMPORTED_MODULE_0__","children","_sys_home_home_component__WEBPACK_IMPORTED_MODULE_1__","StoreManageModule","AuthManageModule","ProductModule","ReportModule","PosOrderModule","OrderModule","EOSModule","MainRoutingModule","MainComponent","menu","isPhone","tag","window","innerWidth","info","autoCollapse","useragent","navigator","userAgent","rules","regex","RegExp","ans","Boolean","match","hostBindings","_angular_common__WEBPACK_IMPORTED_MODULE_5__","_theme_theme_module__WEBPACK_IMPORTED_MODULE_0__","_main_routing_module__WEBPACK_IMPORTED_MODULE_2__","ng2_smart_table__WEBPACK_IMPORTED_MODULE_7__","_main_component__WEBPACK_IMPORTED_MODULE_1__","_sys_home_home_component__WEBPACK_IMPORTED_MODULE_3__","HomeComponent","GetMainList","PerPage","Source","ng2_smart_table__WEBPACK_IMPORTED_MODULE_1__","setPaging","v","perPage","getPaging","pagingConf","RESULT","alert","dataList","StoreList","StoreShow","load","Total","sid","TipContant","my","getElementById","mytext","innerHTML","style","display","MyBarComponent","theme","themeSubscription","getJsTheme","colors","options","backgroundColor","color","infoLight","dangerLight","legend","orgData","line","tooltip","trigger","params","html","axisValue","idx","marker","grid","left","right","bottom","containLabel","toolbox","xAxis","axisLabel","interval","rotate","yAxis","series","inputs","emitList","lineData","MyLineComponent","boundaryGap","MyPieComponent","text","top","orient","datatitle","itemStyle","borderColor","borderWidth","alignTo","minMargin","bleedMargin","lineHeight","rich","labelLine","length2","maxSurfaceAngle","labelLayout","isLeft","labelRect","points","labelLinePoints","pieData","MyPointComponent","dataBJ","dataGZ","dataSH","schema","opacity","textStyle","param","seriesName","nameGap","nameTextStyle","splitLine","show","nameLocation","visualMap","itemWidth","itemHeight","textGap","controller","inRange","dimension","symbolSize","_angular_core__WEBPACK_IMPORTED_MODULE_1__","CalendarComponent","createCale","insertInfo","infoList","YYYY","MM","DD","monthDays","mYear","a","startWeekday","getDay","dayList","i","PrintDayObj","toString","printDays","lodash__WEBPACK_IMPORTED_MODULE_0__","empty","printMonth","emitMonth","typeMonthFlag","dayDate","emitDate","row","day","infoDay","dayObj","ev","json","JSON","stringify","dataTransfer","setData","tdData","preventDefault","jsonStr","getData","parse","msg","emitDateDrow","dropEffect","features","InfoObj","Input_InfoListObj","Output_InfoListObj","ctx_r22","ctx_r23","ctx_r13","f_r41","ctx_r55","ctx_r56","item_r51","ctx_r20","ctx_r67","ctx_r68","ref_r10","ctx_r1","ctx_r82","ctx_r84","ctx_r4","ctx_r86","ctx_r88","ctx_r5","ctx_r90","ctx_r92","ctx_r6","ctx_r94","ctx_r96","ctx_r98","ctx_r100","ctx_r8","EditEOSProductComponent","dialogService","datePipe","file","resolve","reject","reader","FileReader","readAsDataURL","onload","onerror","isShow","other","attList","onOpen","SelectAttMMO","onSave","mealData","AttachItemGroupJsonDatas","list","findIndex","PRDMenuAttachItemGroupNo","No","Sorting","concat","onClose","SelectAttGM","GroupNo","moType","orgType","EditEOSAttachGMO","PRDAttachItemGroupNo","showData","self","SalesOutletSetting","ProductStoreMapJsonData","filter","IsSell","storeName","ProductStoreMapJsonDatas","test","storeID","EOSProductNo","IsDelete","sourceData","cash","StoreSaleCashSetting","change","SaleCash","isChecked","onDel","onAddShow","ProductStoreCashMapJsonData","changeData","orgStoreIdStr","numbersSet","Set","split","data2","groupedBySaleCash","acc","values","TaxRateList","ModifyPRDProductReq","toSalesOutletDetail","toStoreSaleCashDetail","moTitle","EOSProductGroupNo","PRDMenuProductGroupNo","toProductDetail","getProductDetail","title2","SupplyQTY","pdShowType","modalRef","open","Modal","emitClose","Cash","supplyPeriod","FirstSupplyStartTime","transform","startTime","FirstSupplyEndTime","endTime","SecondSupplyStartTime","SecondSupplyEndTime","files","Image","attachItemGroups","AttachItemGroupJsonData","ProductStoreCashData","_a","rest","undefined","Main","ProductName","ProductContant","TaxRate","TaxType","Detail","IsOpenTakeout","IsOpenDelivery","IsOpenDining","IsOpenSelfPickup","IsOpenReserveDining","UplimitQTY","SupplyDay","ProductStoreCashMapJsonDatas","splice","dayModalRef","DayModal","str","supplyTimeMonday","supplyTimeTuesday","supplyTimeWednesday","supplyTimeThursday","supplyTimeFriday","supplyTimeSaturday","supplyTimeSunday","supplyDayStr","close","dataBox","addedFiles","formData","FormData","append","imgdata","fileToBase64","base64String","base64","functionType","IsLoding","stopPropagation","getGroupList","assign","myArray","showSupplyTime","tmp","_b","storeList","store","Sort","has","storeSaleCash","storename","z","y","obj2","callback","par","PRDProductGroupNo","toPromise","Item","CopyStoreID","CreateStore","groupList","GroupName","isChange_Group","AttachItemGroupJsonDataDTO","ImageFile","File","ProductStoreMapJsonDataDTO","ProductStoreCashMapJsonDataDTO","StoreCashData","ref_r3","EditAnnouncementComponent","searchKey","query","mainDataList","selectedIds","announcement","isSelectAll","every","EditAttachComponent","att","PRDAttachItemReq","MinSelectTimes","isRequired","MaxSelectTimes","Quantity","ctx_r16","ctx_r17","ctx_r18","ctx_r34","ctx_r36","ctx_r37","att_r38","ctx_r75","ctx_r81","ctx_r91","ctx_r97","ref_r11","ctx_r125","item_r129","ctx_r122","ctx_r133","ref_r119","item_r140","ctx_r139","ctx_r144","ref_r137","ctx_r148","ctx_r150","ctx_r152","ctx_r7","ctx_r155","ctx_r157","ctx_r159","ctx_r161","ctx_r9","EditAttachgroupComponent","ng2_smart_table__WEBPACK_IMPORTED_MODULE_2__","selectType","EditAttachMO","attGroup","AttachItemKind","IsRequired","PRDAttachItemList","onDelete","isDelete","confirm","updateisdelete","ProductListMO","PRDProductNo","Name","ItemName","pdList","AttachListMO","PRDAttachItemNo","ProductEditMo","getDataAPI_Setting","getGroupListAPI_Setting","PRDGroupNo","fun","storeId","selectStore","List","TypeName","Type","EditAttAKAMo","AttachItemName","EditAttAKAMoRef","EditAttAKAMoDOM","EditLanguageMo","EditLanguageMoRef","EditLanguageMoDOM","PRDAttachItemGroupReq","IsConsistent","ModelNoList","ModelList","PRDMenuAttachItemModelNo","GetGroupDetail","rep","SelectMinLimit","SelectUpLimit","omin","omax","nullmax","objL","IsDefault","no","GetGroupDetailAPI_useing","GetGroupDetailAPI_setting","GroupList","field","attachItemSource","ctx_r33","f_r52","ctx_r19","ctx_r66","ctx_r80","item_r73","ctx_r21","ctx_r83","date_r95","_r100","_r101","ctx_r110","ctx_r112","item_r114","ctx_r127","ctx_r140","ref_r9","ctx_r154","ctx_r156","ctx_r158","ctx_r160","ctx_r162","ctx_r164","ctx_r166","ctx_r168","EditProductComponent","USR_MemberLevel_IDList","ProductLevelSettingMO","memberTypeList","usrMemberLevelIDs","trim","Number","ProductLevel","ProductLevelMapJsonData","filteredList","member","USR_MemberLevel_ID","memberLevelNames","MemberLevelName","removableNos","removableNames","itemNos","itemNames","includes","takeoutSaleCash","deliverySaleCash","diningSaleCash","selfPickupSaleCash","EditAttachGMO","checkMember","key","ids","names","IsChangeCash","checks","size","img","src","URL","createObjectURL","all","validFiles","ProductLevelMapJsonDataDTO","memberData","InfoEOSDetailComponent","EosNo","getOrderDetail","ordno","orderDetail","setTimeout","print","InfoEOSOrdComponent","eosNo","InfoOrdComponent","ordNo","_r6","ReportReconciliationComponent","currentYear","currentMonth","YearList","ceil","selectedFile","fileName","response","DATA","generateExcel","sheetData","InvoiceNumber","ORDNo","CheckoutDateTime","CDate","CancelDateTime","TotalCash","Mismatches","wb","xlsx__WEBPACK_IMPORTED_MODULE_1__","ws","ref_r5","ref_r22","SelectAttachMoudleComponent","getPdGroupList","ProductList","g","ProductGroup","k","PDList","IsOK_Group","group","getPdList","op","IsOK_Product","IsOK_Product_Count","useData","tranfOrgData","selectList","groupData","insertData","showListPd","PdModalRef","PdModal","GID","isAdd","Keyword","use","CountStr","Product","item_r10","SelectAttachPrintComponent","showType","status","onQuery","getInfoList","showList","judgeSame","isSelect","filterShowType","judgeSelectAll","some","SelectAttachComponent","SelectattachgroupComponent","SelectBillmachineMoudleComponent","SYS_PrintMachine_ID","PrintMachine_Type","SelectMemberTypeComponent","item_r8","SelectPermissionsgroupComponent","SYS_PermissionGroupID","permissionGroups","e_r28","ref_r26","SelectProductComponent","AllSelectCount","PRD_PlatformType_ID","getProductList","CreateStoreName","pd","sumSelect","AddSelectData","selectCount","allcount","CountSum","SelectSalesOutletComponent","SelectStoreSaleCashComponent","SelectStoreComponent","SelectStoresComponent","storeListString","selectedStoreIds","selectedItems","ShowDataComponent","CreateBy","statusName","CreateDate","get_EOS_Status_History","EOSNo","Page","statusHistory","StatusName","StatusUpdateModalComponent","ID","CanClick","ShowDataMo","get_EOS_Status_List","getURL","statusList","updateURL","EOS_Status_ID","LastUpdateBy","InputFormatDirective","el","onlyEn","noCH","_input","_labelDom","previousElementSibling","span","classList","add","innerText","_span","Judge","regu","AutoSelectComponent","filteredGroups$","inputFormControl","_angular_forms__WEBPACK_IMPORTED_MODULE_2__","onClick","emitValue","filterValue","glist","clist","child","_r0","IsExistPipe","IsInvaildPipe","returnT","returnF","judge","KeywordPipe","Field","getAllStr","isEqual","indexOf","isArray","valid_field","dataKey","f","TranfPipe","fieldA","fieldB","ApiService","version","href","isHaveAll","menuTypeList","ordTypeList","StoreID","paymentList","SYS_PaymentKind_ID","PaymentKindName","SubscriptService","AuthUpdataSubject","MyMenuService","MENU_LINK","registerFontPack","packClass","iconClassPrefix","navigate","canLink","menuItem","ModuleName","ModuleCode","Path","pack","cid","stag","Child","childMenu","childItem","FunctioningName","FunctioningCode","link","Dev","EXP","ToolModule","ngx_dropzone__WEBPACK_IMPORTED_MODULE_36__","_angular_forms__WEBPACK_IMPORTED_MODULE_37__","_angular_common__WEBPACK_IMPORTED_MODULE_38__","_theme_theme_module__WEBPACK_IMPORTED_MODULE_26__","_nebular_theme__WEBPACK_IMPORTED_MODULE_39__","ngx_echarts__WEBPACK_IMPORTED_MODULE_40__","_pipe_tranf_pipe__WEBPACK_IMPORTED_MODULE_0__","_pipe_is_invaild_pipe__WEBPACK_IMPORTED_MODULE_1__","_pipe_is_exist_pipe__WEBPACK_IMPORTED_MODULE_2__","_pipe_keyword_pipe__WEBPACK_IMPORTED_MODULE_3__","_directive_input_email_directive__WEBPACK_IMPORTED_MODULE_4__","_component_calendar_calendar_component__WEBPACK_IMPORTED_MODULE_5__","_component_select_product_select_product_component__WEBPACK_IMPORTED_MODULE_6__","_component_edit_attach_edit_attach_component__WEBPACK_IMPORTED_MODULE_7__","_component_select_store_select_store_component__WEBPACK_IMPORTED_MODULE_8__","_component_edit_product_edit_product_component__WEBPACK_IMPORTED_MODULE_9__","_component_edit_EOS_product_edit_EOS_product_component__WEBPACK_IMPORTED_MODULE_10__","_component_edit_attachgroup_edit_attachgroup_component__WEBPACK_IMPORTED_MODULE_11__","_component_select_attachgroup_select_attachgroup_component__WEBPACK_IMPORTED_MODULE_12__","_component_select_attach_select_attach_component__WEBPACK_IMPORTED_MODULE_13__","_component_select_salesOutlet_select_salesOutlet_component__WEBPACK_IMPORTED_MODULE_14__","_component_select_storeSaleCash_select_storeSaleCash_component__WEBPACK_IMPORTED_MODULE_15__","_chart_my_pie_component__WEBPACK_IMPORTED_MODULE_23__","_chart_my_line_component__WEBPACK_IMPORTED_MODULE_24__","_chart_my_point_component__WEBPACK_IMPORTED_MODULE_25__","_component_select_attach_moudle_select_attach_moudle_component__WEBPACK_IMPORTED_MODULE_27__","_component_select_permissionsgroup_select_permissionsgroup_component__WEBPACK_IMPORTED_MODULE_28__","_component_info_ord_info_ord_component__WEBPACK_IMPORTED_MODULE_29__","_object_auto_select_auto_select_component__WEBPACK_IMPORTED_MODULE_30__","_chart_my_bar_component__WEBPACK_IMPORTED_MODULE_31__","_component_info_EOS_ord_info_EOS_ord_component__WEBPACK_IMPORTED_MODULE_32__","_component_info_EOS_detail_info_EOS_detail_component__WEBPACK_IMPORTED_MODULE_33__","_component_status_update_modal_status_update_modal_component__WEBPACK_IMPORTED_MODULE_34__","_component_show_data_show_data_component__WEBPACK_IMPORTED_MODULE_16__","_component_select_memberType_select_memberType_component__WEBPACK_IMPORTED_MODULE_17__","_component_edit_announcement_edit_announcement_component__WEBPACK_IMPORTED_MODULE_18__","_component_select_attach_print_select_attach_print_component__WEBPACK_IMPORTED_MODULE_19__","_component_select_stores_select_stores_component__WEBPACK_IMPORTED_MODULE_20__","_component_report_reconciliation_report_reconciliation_component__WEBPACK_IMPORTED_MODULE_21__","_component_select_billmachine_moudle_select_billmachine_moudle_component__WEBPACK_IMPORTED_MODULE_22__","environment","production","_environments_environment__WEBPACK_IMPORTED_MODULE_1__","_angular_platform_browser__WEBPACK_IMPORTED_MODULE_3__","bootstrapModule","_app_app_module__WEBPACK_IMPORTED_MODULE_0__","err"],"sources":["webpack:///$_lazy_route_resources|lazy|groupOptions:%20%7B%7D|namespace%20object","webpack:///src/app/@core/core.module.ts","webpack:///src/app/@core/data/country-order.ts","webpack:///src/app/@core/data/earning.ts","webpack:///src/app/@core/data/electricity.ts","webpack:///src/app/@core/data/orders-chart.ts","webpack:///src/app/@core/data/orders-profit-chart.ts","webpack:///src/app/@core/data/profit-bar-animation-chart.ts","webpack:///src/app/@core/data/profit-chart.ts","webpack:///src/app/@core/data/security-cameras.ts","webpack:///src/app/@core/data/smart-table.ts","webpack:///src/app/@core/data/solar.ts","webpack:///src/app/@core/data/stats-bar.ts","webpack:///src/app/@core/data/stats-progress-bar.ts","webpack:///src/app/@core/data/temperature-humidity.ts","webpack:///src/app/@core/data/traffic-bar.ts","webpack:///src/app/@core/data/traffic-chart.ts","webpack:///src/app/@core/data/traffic-list.ts","webpack:///src/app/@core/data/user-activity.ts","webpack:///src/app/@core/data/users.ts","webpack:///src/app/@core/data/visitors-analytics.ts","webpack:///src/app/@core/mock/country-order.service.ts","webpack:///src/app/@core/mock/earning.service.ts","webpack:///src/app/@core/mock/electricity.service.ts","webpack:///src/app/@core/mock/mock-data.module.ts","webpack:///src/app/@core/mock/orders-chart.service.ts","webpack:///src/app/@core/mock/orders-profit-chart.service.ts","webpack:///src/app/@core/mock/periods.service.ts","webpack:///src/app/@core/mock/profit-bar-animation-chart.service.ts","webpack:///src/app/@core/mock/profit-chart.service.ts","webpack:///src/app/@core/mock/security-cameras.service.ts","webpack:///src/app/@core/mock/smart-table.service.ts","webpack:///src/app/@core/mock/solar.service.ts","webpack:///src/app/@core/mock/stats-bar.service.ts","webpack:///src/app/@core/mock/stats-progress-bar.service.ts","webpack:///src/app/@core/mock/temperature-humidity.service.ts","webpack:///src/app/@core/mock/traffic-bar.service.ts","webpack:///src/app/@core/mock/traffic-chart.service.ts","webpack:///src/app/@core/mock/traffic-list.service.ts","webpack:///src/app/@core/mock/user-activity.service.ts","webpack:///src/app/@core/mock/users.service.ts","webpack:///src/app/@core/mock/visitors-analytics.service.ts","webpack:///src/app/@core/module-import-guard.ts","webpack:///src/app/@core/utils/analytics.service.ts","webpack:///src/app/@core/utils/layout.service.ts","webpack:///src/app/@core/utils/player.service.ts","webpack:///src/app/@core/utils/seo.service.ts","webpack:///src/app/@core/utils/state.service.ts","webpack:///src/app/@theme/components/footer/footer.component.ts","webpack:///src/app/@theme/components/header/header.component.html","webpack:///src/app/@theme/components/header/header.component.ts","webpack:///src/app/@theme/components/search-input/search-input.component.ts","webpack:///src/app/@theme/components/tiny-mce/tiny-mce.component.ts","webpack:///src/app/@theme/layouts/one-column/one-column.layout.ts","webpack:///src/app/@theme/layouts/simple-layout/simple.layout.ts","webpack:///src/app/@theme/layouts/three-columns/three-columns.layout.ts","webpack:///src/app/@theme/layouts/two-columns/two-columns.layout.ts","webpack:///src/app/@theme/pipes/capitalize.pipe.ts","webpack:///src/app/@theme/pipes/number-with-commas.pipe.ts","webpack:///src/app/@theme/pipes/plural.pipe.ts","webpack:///src/app/@theme/pipes/round.pipe.ts","webpack:///src/app/@theme/pipes/timing.pipe.ts","webpack:///src/app/@theme/styles/theme.corporate.ts","webpack:///src/app/@theme/styles/theme.cosmic.ts","webpack:///src/app/@theme/styles/theme.dark.ts","webpack:///src/app/@theme/styles/theme.default.ts","webpack:///src/app/@theme/theme.module.ts","webpack:///src/app/app-routing.module.ts","webpack:///src/app/app.component.ts","webpack:///src/app/app.module.ts","webpack:///src/app/basic-auth-htpp-interceptor.service.ts","webpack:///src/app/main/main-routing.module.ts","webpack:///src/app/main/main.component.ts","webpack:///src/app/main/main.module.ts","webpack:///src/app/main/sys/home/home.component.html","webpack:///src/app/main/sys/home/home.component.ts","webpack:///src/app/tool/chart/my-bar.component.ts","webpack:///src/app/tool/chart/my-line.component.ts","webpack:///src/app/tool/chart/my-pie.component.ts","webpack:///src/app/tool/chart/my-point.component.ts","webpack:///src/app/tool/component/calendar/calendar.component.html","webpack:///src/app/tool/component/calendar/calendar.component.ts","webpack:///src/app/tool/component/edit-EOS-product/edit-EOS-product.component.html","webpack:///src/app/tool/component/edit-EOS-product/edit-EOS-product.component.ts","webpack:///src/app/tool/component/edit-announcement/edit-announcement.component.html","webpack:///src/app/tool/component/edit-announcement/edit-announcement.component.ts","webpack:///src/app/tool/component/edit-attach/edit-attach.component.html","webpack:///src/app/tool/component/edit-attach/edit-attach.component.ts","webpack:///src/app/tool/component/edit-attachgroup/edit-attachgroup.component.html","webpack:///src/app/tool/component/edit-attachgroup/edit-attachgroup.component.ts","webpack:///src/app/tool/component/edit-product/edit-product.component.html","webpack:///src/app/tool/component/edit-product/edit-product.component.ts","webpack:///src/app/tool/component/info-EOS-detail/info-EOS-detail.component.html","webpack:///src/app/tool/component/info-EOS-detail/info-EOS-detail.component.ts","webpack:///src/app/tool/component/info-EOS-ord/info-EOS-ord.component.html","webpack:///src/app/tool/component/info-EOS-ord/info-EOS-ord.component.ts","webpack:///src/app/tool/component/info-ord/info-ord.component.html","webpack:///src/app/tool/component/info-ord/info-ord.component.ts","webpack:///src/app/tool/component/report-reconciliation/report-reconciliation.component.html","webpack:///src/app/tool/component/report-reconciliation/report-reconciliation.component.ts","webpack:///src/app/tool/component/select-attach-moudle/select-attach-moudle.component.html","webpack:///src/app/tool/component/select-attach-moudle/select-attach-moudle.component.ts","webpack:///src/app/tool/component/select-attach-print/select-attach-print.component.html","webpack:///src/app/tool/component/select-attach-print/select-attach-print.component.ts","webpack:///src/app/tool/component/select-attach/select-attach.component.html","webpack:///src/app/tool/component/select-attach/select-attach.component.ts","webpack:///src/app/tool/component/select-attachgroup/select-attachgroup.component.html","webpack:///src/app/tool/component/select-attachgroup/select-attachgroup.component.ts","webpack:///src/app/tool/component/select-billmachine-moudle/select-billmachine-moudle.component.html","webpack:///src/app/tool/component/select-billmachine-moudle/select-billmachine-moudle.component.ts","webpack:///src/app/tool/component/select-memberType/select-memberType.component.html","webpack:///src/app/tool/component/select-memberType/select-memberType.component.ts","webpack:///src/app/tool/component/select-permissionsgroup/select-permissionsgroup.component.html","webpack:///src/app/tool/component/select-permissionsgroup/select-permissionsgroup.component.ts","webpack:///src/app/tool/component/select-product/select-product.component.html","webpack:///src/app/tool/component/select-product/select-product.component.ts","webpack:///src/app/tool/component/select-salesOutlet/select-salesOutlet.component.html","webpack:///src/app/tool/component/select-salesOutlet/select-salesOutlet.component.ts","webpack:///src/app/tool/component/select-storeSaleCash/select-storeSaleCash.component.html","webpack:///src/app/tool/component/select-storeSaleCash/select-storeSaleCash.component.ts","webpack:///src/app/tool/component/select-store/select-store.component.html","webpack:///src/app/tool/component/select-store/select-store.component.ts","webpack:///src/app/tool/component/select-stores/select-stores.component.html","webpack:///src/app/tool/component/select-stores/select-stores.component.ts","webpack:///src/app/tool/component/show-data/show-data.component.html","webpack:///src/app/tool/component/show-data/show-data.component.ts","webpack:///src/app/tool/component/status-update-modal/status-update-modal.component.html","webpack:///src/app/tool/component/status-update-modal/status-update-modal.component.ts","webpack:///src/app/tool/directive/input-email.directive.ts","webpack:///src/app/tool/object/auto-select/auto-select.component.html","webpack:///src/app/tool/object/auto-select/auto-select.component.ts","webpack:///src/app/tool/pipe/is-exist.pipe.ts","webpack:///src/app/tool/pipe/is-invaild.pipe.ts","webpack:///src/app/tool/pipe/keyword.pipe.ts","webpack:///src/app/tool/pipe/tranf.pipe.ts","webpack:///src/app/tool/service/api.service.ts","webpack:///src/app/tool/service/header.service.ts","webpack:///src/app/tool/service/menu.service.ts","webpack:///src/app/tool/tool.module.ts","webpack:///src/environments/environment.ts","webpack:///src/main.ts"],"sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 98255;\nmodule.exports = webpackEmptyAsyncContext;","import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NbAuthModule, NbDummyAuthStrategy } from '@nebular/auth';\r\nimport { NbSecurityModule, NbRoleProvider } from '@nebular/security';\r\nimport { of as observableOf } from 'rxjs';\r\n\r\nimport { throwIfAlreadyLoaded } from './module-import-guard';\r\nimport {\r\n AnalyticsService,\r\n LayoutService,\r\n PlayerService,\r\n SeoService,\r\n StateService,\r\n} from './utils';\r\nimport { UserData } from './data/users';\r\nimport { ElectricityData } from './data/electricity';\r\nimport { SmartTableData } from './data/smart-table';\r\nimport { UserActivityData } from './data/user-activity';\r\nimport { OrdersChartData } from './data/orders-chart';\r\nimport { ProfitChartData } from './data/profit-chart';\r\nimport { TrafficListData } from './data/traffic-list';\r\nimport { EarningData } from './data/earning';\r\nimport { OrdersProfitChartData } from './data/orders-profit-chart';\r\nimport { TrafficBarData } from './data/traffic-bar';\r\nimport { ProfitBarAnimationChartData } from './data/profit-bar-animation-chart';\r\nimport { TemperatureHumidityData } from './data/temperature-humidity';\r\nimport { SolarData } from './data/solar';\r\nimport { TrafficChartData } from './data/traffic-chart';\r\nimport { StatsBarData } from './data/stats-bar';\r\nimport { CountryOrderData } from './data/country-order';\r\nimport { StatsProgressBarData } from './data/stats-progress-bar';\r\nimport { VisitorsAnalyticsData } from './data/visitors-analytics';\r\nimport { SecurityCamerasData } from './data/security-cameras';\r\n\r\nimport { UserService } from './mock/users.service';\r\nimport { ElectricityService } from './mock/electricity.service';\r\nimport { SmartTableService } from './mock/smart-table.service';\r\nimport { UserActivityService } from './mock/user-activity.service';\r\nimport { OrdersChartService } from './mock/orders-chart.service';\r\nimport { ProfitChartService } from './mock/profit-chart.service';\r\nimport { TrafficListService } from './mock/traffic-list.service';\r\nimport { EarningService } from './mock/earning.service';\r\nimport { OrdersProfitChartService } from './mock/orders-profit-chart.service';\r\nimport { TrafficBarService } from './mock/traffic-bar.service';\r\nimport { ProfitBarAnimationChartService } from './mock/profit-bar-animation-chart.service';\r\nimport { TemperatureHumidityService } from './mock/temperature-humidity.service';\r\nimport { SolarService } from './mock/solar.service';\r\nimport { TrafficChartService } from './mock/traffic-chart.service';\r\nimport { StatsBarService } from './mock/stats-bar.service';\r\nimport { CountryOrderService } from './mock/country-order.service';\r\nimport { StatsProgressBarService } from './mock/stats-progress-bar.service';\r\nimport { VisitorsAnalyticsService } from './mock/visitors-analytics.service';\r\nimport { SecurityCamerasService } from './mock/security-cameras.service';\r\nimport { MockDataModule } from './mock/mock-data.module';\r\n\r\nconst socialLinks = [\r\n {\r\n url: 'https://github.com/akveo/nebular',\r\n target: '_blank',\r\n icon: 'github',\r\n },\r\n {\r\n url: 'https://www.facebook.com/akveo/',\r\n target: '_blank',\r\n icon: 'facebook',\r\n },\r\n {\r\n url: 'https://twitter.com/akveo_inc',\r\n target: '_blank',\r\n icon: 'twitter',\r\n },\r\n];\r\n\r\nconst DATA_SERVICES = [\r\n { provide: UserData, useClass: UserService },\r\n { provide: ElectricityData, useClass: ElectricityService },\r\n { provide: SmartTableData, useClass: SmartTableService },\r\n { provide: UserActivityData, useClass: UserActivityService },\r\n { provide: OrdersChartData, useClass: OrdersChartService },\r\n { provide: ProfitChartData, useClass: ProfitChartService },\r\n { provide: TrafficListData, useClass: TrafficListService },\r\n { provide: EarningData, useClass: EarningService },\r\n { provide: OrdersProfitChartData, useClass: OrdersProfitChartService },\r\n { provide: TrafficBarData, useClass: TrafficBarService },\r\n { provide: ProfitBarAnimationChartData, useClass: ProfitBarAnimationChartService },\r\n { provide: TemperatureHumidityData, useClass: TemperatureHumidityService },\r\n { provide: SolarData, useClass: SolarService },\r\n { provide: TrafficChartData, useClass: TrafficChartService },\r\n { provide: StatsBarData, useClass: StatsBarService },\r\n { provide: CountryOrderData, useClass: CountryOrderService },\r\n { provide: StatsProgressBarData, useClass: StatsProgressBarService },\r\n { provide: VisitorsAnalyticsData, useClass: VisitorsAnalyticsService },\r\n { provide: SecurityCamerasData, useClass: SecurityCamerasService },\r\n];\r\n\r\nexport class NbSimpleRoleProvider extends NbRoleProvider {\r\n getRole() {\r\n // here you could provide any role based on any auth flow\r\n return observableOf('guest');\r\n }\r\n}\r\n\r\nexport const NB_CORE_PROVIDERS = [\r\n ...MockDataModule.forRoot().providers,\r\n ...DATA_SERVICES,\r\n ...NbAuthModule.forRoot({\r\n\r\n strategies: [\r\n NbDummyAuthStrategy.setup({\r\n name: 'email',\r\n delay: 3000,\r\n }),\r\n ],\r\n forms: {\r\n login: {\r\n socialLinks: socialLinks,\r\n },\r\n register: {\r\n socialLinks: socialLinks,\r\n },\r\n },\r\n }).providers,\r\n\r\n NbSecurityModule.forRoot({\r\n accessControl: {\r\n guest: {\r\n view: '*',\r\n },\r\n user: {\r\n parent: 'guest',\r\n create: '*',\r\n edit: '*',\r\n remove: '*',\r\n },\r\n },\r\n }).providers,\r\n\r\n {\r\n provide: NbRoleProvider, useClass: NbSimpleRoleProvider,\r\n },\r\n AnalyticsService,\r\n LayoutService,\r\n PlayerService,\r\n SeoService,\r\n StateService,\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n NbAuthModule,\r\n ],\r\n declarations: [],\r\n})\r\nexport class CoreModule {\r\n constructor(@Optional() @SkipSelf() parentModule: CoreModule) {\r\n throwIfAlreadyLoaded(parentModule, 'CoreModule');\r\n }\r\n\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: CoreModule,\r\n providers: [\r\n ...NB_CORE_PROVIDERS,\r\n ],\r\n };\r\n }\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport abstract class CountryOrderData {\r\n abstract getCountriesCategories(): Observable;\r\n abstract getCountriesCategoriesData(country: string): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface LiveUpdateChart {\r\n liveChart: { value: [string, number] }[];\r\n delta: {\r\n up: boolean;\r\n value: number;\r\n };\r\n dailyIncome: number;\r\n}\r\n\r\nexport interface PieChart {\r\n value: number;\r\n name: string;\r\n}\r\n\r\nexport abstract class EarningData {\r\n abstract getEarningLiveUpdateCardData(currency: string): Observable;\r\n abstract getEarningCardData(currency: string): Observable;\r\n abstract getEarningPieChartData(): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface Month {\r\n month: string;\r\n delta: string;\r\n down: boolean;\r\n kWatts: string;\r\n cost: string;\r\n}\r\n\r\nexport interface Electricity {\r\n title: string;\r\n active?: boolean;\r\n months: Month[];\r\n}\r\n\r\nexport interface ElectricityChart {\r\n label: string;\r\n value: number;\r\n}\r\n\r\nexport abstract class ElectricityData {\r\n abstract getListData(): Observable;\r\n abstract getChartData(): Observable;\r\n}\r\n","export interface OrdersChart {\r\n chartLabel: string[];\r\n linesData: number[][];\r\n}\r\n\r\nexport abstract class OrdersChartData {\r\n abstract getOrdersChartData(period: string): OrdersChart;\r\n}\r\n","import { Observable } from 'rxjs';\r\nimport { OrdersChart } from './orders-chart';\r\nimport { ProfitChart } from './profit-chart';\r\n\r\nexport interface OrderProfitChartSummary {\r\n title: string;\r\n value: number;\r\n}\r\n\r\nexport abstract class OrdersProfitChartData {\r\n abstract getOrderProfitChartSummary(): Observable;\r\n abstract getOrdersChartData(period: string): Observable;\r\n abstract getProfitChartData(period: string): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport abstract class ProfitBarAnimationChartData {\r\n abstract getChartData(): Observable<{ firstLine: number[]; secondLine: number[]; }>;\r\n}\r\n","export interface ProfitChart {\r\n chartLabel: string[];\r\n data: number[][];\r\n}\r\n\r\nexport abstract class ProfitChartData {\r\n abstract getProfitChartData(period: string): ProfitChart;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface Camera {\r\n title: string;\r\n source: string;\r\n}\r\n\r\nexport abstract class SecurityCamerasData {\r\n abstract getCamerasData(): Observable;\r\n}\r\n","\r\nexport abstract class SmartTableData {\r\n abstract getData(): any[];\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport abstract class SolarData {\r\n abstract getSolarData(): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport abstract class StatsBarData {\r\n abstract getStatsBarData(): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface ProgressInfo {\r\n title: string;\r\n value: number;\r\n activeProgress: number;\r\n description: string;\r\n}\r\n\r\nexport abstract class StatsProgressBarData {\r\n abstract getProgressInfoData(): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface Temperature {\r\n value: number;\r\n min: number;\r\n max: number;\r\n}\r\n\r\nexport abstract class TemperatureHumidityData {\r\n abstract getTemperatureData(): Observable;\r\n abstract getHumidityData(): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface TrafficBar {\r\n data: number[];\r\n labels: string[];\r\n formatter: string;\r\n}\r\n\r\nexport abstract class TrafficBarData {\r\n abstract getTrafficBarData(period: string): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport abstract class TrafficChartData {\r\n abstract getTrafficChartData(): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface TrafficList {\r\n date: string;\r\n value: number;\r\n delta: {\r\n up: boolean;\r\n value: number;\r\n };\r\n comparison: {\r\n prevDate: string;\r\n prevValue: number;\r\n nextDate: string;\r\n nextValue: number;\r\n };\r\n}\r\n\r\nexport abstract class TrafficListData {\r\n abstract getTrafficListData(period: string): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface UserActive {\r\n date: string;\r\n pagesVisitCount: number;\r\n deltaUp: boolean;\r\n newVisits: number;\r\n}\r\n\r\nexport abstract class UserActivityData {\r\n abstract getUserActivityData(period: string): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface User {\r\n name: string;\r\n picture: string;\r\n}\r\n\r\nexport interface Contacts {\r\n user: User;\r\n type: string;\r\n}\r\n\r\nexport interface RecentUsers extends Contacts {\r\n time: number;\r\n}\r\n\r\nexport abstract class UserData {\r\n abstract getUsers(): Observable;\r\n abstract getContacts(): Observable;\r\n abstract getRecentUsers(): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface OutlineData {\r\n label: string;\r\n value: number;\r\n}\r\n\r\nexport abstract class VisitorsAnalyticsData {\r\n abstract getInnerLineChartData(): Observable;\r\n abstract getOutlineLineChartData(): Observable;\r\n abstract getPieChartData(): Observable;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { CountryOrderData } from '../data/country-order';\r\n\r\n@Injectable()\r\nexport class CountryOrderService extends CountryOrderData {\r\n\r\n private countriesCategories = [\r\n 'Sofas',\r\n 'Furniture',\r\n 'Lighting',\r\n 'Tables',\r\n 'Textiles',\r\n ];\r\n private countriesCategoriesLength = this.countriesCategories.length;\r\n private generateRandomData(nPoints: number): number[] {\r\n return Array.from(Array(nPoints)).map(() => {\r\n return Math.round(Math.random() * 20);\r\n });\r\n }\r\n\r\n getCountriesCategories(): Observable {\r\n return observableOf(this.countriesCategories);\r\n }\r\n\r\n getCountriesCategoriesData(country: string): Observable {\r\n return observableOf(this.generateRandomData(this.countriesCategoriesLength));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { LiveUpdateChart, PieChart, EarningData } from '../data/earning';\r\n\r\n@Injectable()\r\nexport class EarningService extends EarningData {\r\n\r\n private currentDate: Date = new Date();\r\n private currentValue = Math.random() * 1000;\r\n private ONE_DAY = 24 * 3600 * 1000;\r\n\r\n private pieChartData = [\r\n {\r\n value: 50,\r\n name: 'Bitcoin',\r\n },\r\n {\r\n value: 25,\r\n name: 'Tether',\r\n },\r\n {\r\n value: 25,\r\n name: 'Ethereum',\r\n },\r\n ];\r\n\r\n private liveUpdateChartData = {\r\n bitcoin: {\r\n liveChart: [],\r\n delta: {\r\n up: true,\r\n value: 4,\r\n },\r\n dailyIncome: 45895,\r\n },\r\n tether: {\r\n liveChart: [],\r\n delta: {\r\n up: false,\r\n value: 9,\r\n },\r\n dailyIncome: 5862,\r\n },\r\n ethereum: {\r\n liveChart: [],\r\n delta: {\r\n up: false,\r\n value: 21,\r\n },\r\n dailyIncome: 584,\r\n },\r\n };\r\n\r\n getDefaultLiveChartData(elementsNumber: number) {\r\n this.currentDate = new Date();\r\n this.currentValue = Math.random() * 1000;\r\n\r\n return Array.from(Array(elementsNumber))\r\n .map(item => this.generateRandomLiveChartData());\r\n }\r\n\r\n generateRandomLiveChartData() {\r\n this.currentDate = new Date(+this.currentDate + this.ONE_DAY);\r\n this.currentValue = this.currentValue + Math.random() * 20 - 11;\r\n\r\n if (this.currentValue < 0) {\r\n this.currentValue = Math.random() * 100;\r\n }\r\n\r\n return {\r\n value: [\r\n [\r\n this.currentDate.getFullYear(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getDate(),\r\n ].join('/'),\r\n Math.round(this.currentValue),\r\n ],\r\n };\r\n }\r\n\r\n getEarningLiveUpdateCardData(currency): Observable {\r\n const data = this.liveUpdateChartData[currency.toLowerCase()];\r\n const newValue = this.generateRandomLiveChartData();\r\n\r\n data.liveChart.shift();\r\n data.liveChart.push(newValue);\r\n\r\n return observableOf(data.liveChart);\r\n }\r\n\r\n getEarningCardData(currency: string): Observable {\r\n const data = this.liveUpdateChartData[currency.toLowerCase()];\r\n\r\n data.liveChart = this.getDefaultLiveChartData(150);\r\n\r\n return observableOf(data);\r\n }\r\n\r\n getEarningPieChartData(): Observable {\r\n return observableOf(this.pieChartData);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { Electricity, ElectricityChart, ElectricityData } from '../data/electricity';\r\n\r\n@Injectable()\r\nexport class ElectricityService extends ElectricityData {\r\n\r\n private listData: Electricity[] = [\r\n {\r\n title: '2015',\r\n months: [\r\n { month: 'Jan', delta: '0.97', down: true, kWatts: '816', cost: '97' },\r\n { month: 'Feb', delta: '1.83', down: true, kWatts: '806', cost: '95' },\r\n { month: 'Mar', delta: '0.64', down: true, kWatts: '803', cost: '94' },\r\n { month: 'Apr', delta: '2.17', down: false, kWatts: '818', cost: '98' },\r\n { month: 'May', delta: '1.32', down: true, kWatts: '809', cost: '96' },\r\n { month: 'Jun', delta: '0.05', down: true, kWatts: '808', cost: '96' },\r\n { month: 'Jul', delta: '1.39', down: false, kWatts: '815', cost: '97' },\r\n { month: 'Aug', delta: '0.73', down: true, kWatts: '807', cost: '95' },\r\n { month: 'Sept', delta: '2.61', down: true, kWatts: '792', cost: '92' },\r\n { month: 'Oct', delta: '0.16', down: true, kWatts: '791', cost: '92' },\r\n { month: 'Nov', delta: '1.71', down: true, kWatts: '786', cost: '89' },\r\n { month: 'Dec', delta: '0.37', down: false, kWatts: '789', cost: '91' },\r\n ],\r\n },\r\n {\r\n title: '2016',\r\n active: true,\r\n months: [\r\n { month: 'Jan', delta: '1.56', down: true, kWatts: '789', cost: '91' },\r\n { month: 'Feb', delta: '0.33', down: false, kWatts: '791', cost: '92' },\r\n { month: 'Mar', delta: '0.62', down: true, kWatts: '790', cost: '92' },\r\n { month: 'Apr', delta: '1.93', down: true, kWatts: '783', cost: '87' },\r\n { month: 'May', delta: '2.52', down: true, kWatts: '771', cost: '83' },\r\n { month: 'Jun', delta: '0.39', down: false, kWatts: '774', cost: '85' },\r\n { month: 'Jul', delta: '1.61', down: true, kWatts: '767', cost: '81' },\r\n { month: 'Aug', delta: '1.41', down: true, kWatts: '759', cost: '76' },\r\n { month: 'Sept', delta: '1.03', down: true, kWatts: '752', cost: '74' },\r\n { month: 'Oct', delta: '2.94', down: false, kWatts: '769', cost: '82' },\r\n { month: 'Nov', delta: '0.26', down: true, kWatts: '767', cost: '81' },\r\n { month: 'Dec', delta: '1.62', down: true, kWatts: '760', cost: '76' },\r\n ],\r\n },\r\n {\r\n title: '2017',\r\n months: [\r\n { month: 'Jan', delta: '1.34', down: false, kWatts: '789', cost: '91' },\r\n { month: 'Feb', delta: '0.95', down: false, kWatts: '793', cost: '93' },\r\n { month: 'Mar', delta: '0.25', down: true, kWatts: '791', cost: '92' },\r\n { month: 'Apr', delta: '1.72', down: false, kWatts: '797', cost: '95' },\r\n { month: 'May', delta: '2.62', down: true, kWatts: '786', cost: '90' },\r\n { month: 'Jun', delta: '0.72', down: false, kWatts: '789', cost: '91' },\r\n { month: 'Jul', delta: '0.78', down: true, kWatts: '784', cost: '89' },\r\n { month: 'Aug', delta: '0.36', down: true, kWatts: '782', cost: '88' },\r\n { month: 'Sept', delta: '0.55', down: false, kWatts: '787', cost: '90' },\r\n { month: 'Oct', delta: '1.81', down: true, kWatts: '779', cost: '86' },\r\n { month: 'Nov', delta: '1.12', down: true, kWatts: '774', cost: '84' },\r\n { month: 'Dec', delta: '0.52', down: false, kWatts: '776', cost: '95' },\r\n ],\r\n },\r\n ];\r\n\r\n private chartPoints = [\r\n 490, 490, 495, 500,\r\n 505, 510, 520, 530,\r\n 550, 580, 630, 720,\r\n 800, 840, 860, 870,\r\n 870, 860, 840, 800,\r\n 720, 200, 145, 130,\r\n 130, 145, 200, 570,\r\n 635, 660, 670, 670,\r\n 660, 630, 580, 460,\r\n 380, 350, 340, 340,\r\n 340, 340, 340, 340,\r\n 340, 340, 340,\r\n ];\r\n\r\n chartData: ElectricityChart[];\r\n\r\n constructor() {\r\n super();\r\n this.chartData = this.chartPoints.map((p, index) => ({\r\n label: (index % 5 === 3) ? `${Math.round(index / 5)}` : '',\r\n value: p,\r\n }));\r\n }\r\n\r\n getListData(): Observable {\r\n return observableOf(this.listData);\r\n }\r\n\r\n getChartData(): Observable {\r\n return observableOf(this.chartData);\r\n }\r\n}\r\n","import { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { UserService } from './users.service';\r\nimport { ElectricityService } from './electricity.service';\r\nimport { SmartTableService } from './smart-table.service';\r\nimport { UserActivityService } from './user-activity.service';\r\nimport { OrdersChartService } from './orders-chart.service';\r\nimport { ProfitChartService } from './profit-chart.service';\r\nimport { TrafficListService } from './traffic-list.service';\r\nimport { PeriodsService } from './periods.service';\r\nimport { EarningService } from './earning.service';\r\nimport { OrdersProfitChartService } from './orders-profit-chart.service';\r\nimport { TrafficBarService } from './traffic-bar.service';\r\nimport { ProfitBarAnimationChartService } from './profit-bar-animation-chart.service';\r\nimport { TemperatureHumidityService } from './temperature-humidity.service';\r\nimport { SolarService } from './solar.service';\r\nimport { TrafficChartService } from './traffic-chart.service';\r\nimport { StatsBarService } from './stats-bar.service';\r\nimport { CountryOrderService } from './country-order.service';\r\nimport { StatsProgressBarService } from './stats-progress-bar.service';\r\nimport { VisitorsAnalyticsService } from './visitors-analytics.service';\r\nimport { SecurityCamerasService } from './security-cameras.service';\r\n\r\nconst SERVICES = [\r\n UserService,\r\n ElectricityService,\r\n SmartTableService,\r\n UserActivityService,\r\n OrdersChartService,\r\n ProfitChartService,\r\n TrafficListService,\r\n PeriodsService,\r\n EarningService,\r\n OrdersProfitChartService,\r\n TrafficBarService,\r\n ProfitBarAnimationChartService,\r\n TemperatureHumidityService,\r\n SolarService,\r\n TrafficChartService,\r\n StatsBarService,\r\n CountryOrderService,\r\n StatsProgressBarService,\r\n VisitorsAnalyticsService,\r\n SecurityCamerasService,\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n providers: [\r\n ...SERVICES,\r\n ],\r\n})\r\nexport class MockDataModule {\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: MockDataModule,\r\n providers: [\r\n ...SERVICES,\r\n ],\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { PeriodsService } from './periods.service';\r\nimport { OrdersChart, OrdersChartData } from '../data/orders-chart';\r\n\r\n@Injectable()\r\nexport class OrdersChartService extends OrdersChartData {\r\n\r\n private year = [\r\n '2012',\r\n '2013',\r\n '2014',\r\n '2015',\r\n '2016',\r\n '2017',\r\n '2018',\r\n ];\r\n\r\n private data = { };\r\n\r\n constructor(private period: PeriodsService) {\r\n super();\r\n this.data = {\r\n week: this.getDataForWeekPeriod(),\r\n month: this.getDataForMonthPeriod(),\r\n year: this.getDataForYearPeriod(),\r\n };\r\n }\r\n\r\n private getDataForWeekPeriod(): OrdersChart {\r\n return {\r\n chartLabel: this.getDataLabels(42, this.period.getWeeks()),\r\n linesData: [\r\n [\r\n 184, 267, 326, 366, 389, 399,\r\n 392, 371, 340, 304, 265, 227,\r\n 191, 158, 130, 108, 95, 91, 97,\r\n 109, 125, 144, 166, 189, 212,\r\n 236, 259, 280, 300, 316, 329,\r\n 338, 342, 339, 329, 312, 288,\r\n 258, 221, 178, 128, 71,\r\n ],\r\n [\r\n 158, 178, 193, 205, 212, 213,\r\n 204, 190, 180, 173, 168, 164,\r\n 162, 160, 159, 158, 159, 166,\r\n 179, 195, 215, 236, 257, 276,\r\n 292, 301, 304, 303, 300, 293,\r\n 284, 273, 262, 251, 241, 234,\r\n 232, 232, 232, 232, 232, 232,\r\n ],\r\n [\r\n 58, 137, 202, 251, 288, 312,\r\n 323, 324, 311, 288, 257, 222,\r\n 187, 154, 124, 100, 81, 68, 61,\r\n 58, 61, 69, 80, 96, 115, 137,\r\n 161, 186, 210, 233, 254, 271,\r\n 284, 293, 297, 297, 297, 297,\r\n 297, 297, 297, 297, 297,\r\n ],\r\n ],\r\n };\r\n }\r\n\r\n private getDataForMonthPeriod(): OrdersChart {\r\n return {\r\n chartLabel: this.getDataLabels(47, this.period.getMonths()),\r\n linesData: [\r\n [\r\n 5, 63, 113, 156, 194, 225,\r\n 250, 270, 283, 289, 290,\r\n 286, 277, 264, 244, 220,\r\n 194, 171, 157, 151, 150,\r\n 152, 155, 160, 166, 170,\r\n 167, 153, 135, 115, 97,\r\n 82, 71, 64, 63, 62, 61,\r\n 62, 65, 73, 84, 102,\r\n 127, 159, 203, 259, 333,\r\n ],\r\n [\r\n 6, 83, 148, 200, 240,\r\n 265, 273, 259, 211,\r\n 122, 55, 30, 28, 36,\r\n 50, 68, 88, 109, 129,\r\n 146, 158, 163, 165,\r\n 173, 187, 208, 236,\r\n 271, 310, 346, 375,\r\n 393, 400, 398, 387,\r\n 368, 341, 309, 275,\r\n 243, 220, 206, 202,\r\n 207, 222, 247, 286, 348,\r\n ],\r\n [\r\n 398, 348, 315, 292, 274,\r\n 261, 251, 243, 237, 231,\r\n 222, 209, 192, 172, 152,\r\n 132, 116, 102, 90, 80, 71,\r\n 64, 58, 53, 49, 48, 54, 66,\r\n 84, 104, 125, 142, 156, 166,\r\n 172, 174, 172, 167, 159, 149,\r\n 136, 121, 105, 86, 67, 45, 22,\r\n ],\r\n ],\r\n };\r\n }\r\n\r\n private getDataForYearPeriod(): OrdersChart {\r\n return {\r\n chartLabel: this.getDataLabels(42, this.year),\r\n linesData: [\r\n [\r\n 190, 269, 327, 366, 389, 398,\r\n 396, 387, 375, 359, 343, 327,\r\n 312, 298, 286, 276, 270, 268,\r\n 265, 258, 247, 234, 220, 204,\r\n 188, 172, 157, 142, 128, 116,\r\n 106, 99, 95, 94, 92, 89, 84,\r\n 77, 69, 60, 49, 36, 22,\r\n ],\r\n [\r\n 265, 307, 337, 359, 375, 386,\r\n 393, 397, 399, 397, 390, 379,\r\n 365, 347, 326, 305, 282, 261,\r\n 241, 223, 208, 197, 190, 187,\r\n 185, 181, 172, 160, 145, 126,\r\n 105, 82, 60, 40, 26, 19, 22,\r\n 43, 82, 141, 220, 321,\r\n ],\r\n [\r\n 9, 165, 236, 258, 244, 206,\r\n 186, 189, 209, 239, 273, 307,\r\n 339, 365, 385, 396, 398, 385,\r\n 351, 300, 255, 221, 197, 181,\r\n 170, 164, 162, 161, 159, 154,\r\n 146, 135, 122, 108, 96, 87,\r\n 83, 82, 82, 82, 82, 82, 82,\r\n ],\r\n ],\r\n };\r\n }\r\n\r\n getDataLabels(nPoints: number, labelsArray: string[]): string[] {\r\n const labelsArrayLength = labelsArray.length;\r\n const step = Math.round(nPoints / labelsArrayLength);\r\n\r\n return Array.from(Array(nPoints)).map((item, index) => {\r\n const dataIndex = Math.round(index / step);\r\n\r\n return index % step === 0 ? labelsArray[dataIndex] : '';\r\n });\r\n }\r\n\r\n getOrdersChartData(period: string): OrdersChart {\r\n return this.data[period];\r\n }\r\n}\r\n","import { of as observableOf, Observable } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { OrdersChart, OrdersChartData } from '../data/orders-chart';\r\nimport { OrderProfitChartSummary, OrdersProfitChartData } from '../data/orders-profit-chart';\r\nimport { ProfitChart, ProfitChartData } from '../data/profit-chart';\r\n\r\n@Injectable()\r\nexport class OrdersProfitChartService extends OrdersProfitChartData {\r\n\r\n private summary = [\r\n {\r\n title: 'Marketplace',\r\n value: 3654,\r\n },\r\n {\r\n title: 'Last Month',\r\n value: 946,\r\n },\r\n {\r\n title: 'Last Week',\r\n value: 654,\r\n },\r\n {\r\n title: 'Today',\r\n value: 230,\r\n },\r\n ];\r\n\r\n constructor(private ordersChartService: OrdersChartData,\r\n private profitChartService: ProfitChartData) {\r\n super();\r\n }\r\n\r\n getOrderProfitChartSummary(): Observable {\r\n return observableOf(this.summary);\r\n }\r\n\r\n getOrdersChartData(period: string): Observable {\r\n return observableOf(this.ordersChartService.getOrdersChartData(period));\r\n }\r\n\r\n getProfitChartData(period: string): Observable {\r\n return observableOf(this.profitChartService.getProfitChartData(period));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class PeriodsService {\r\n getYears() {\r\n return [\r\n '2010', '2011', '2012',\r\n '2013', '2014', '2015',\r\n '2016', '2017', '2018',\r\n ];\r\n }\r\n\r\n getMonths() {\r\n return [\r\n 'Jan', 'Feb', 'Mar',\r\n 'Apr', 'May', 'Jun',\r\n 'Jul', 'Aug', 'Sep',\r\n 'Oct', 'Nov', 'Dec',\r\n ];\r\n }\r\n\r\n getWeeks() {\r\n return [\r\n 'Mon',\r\n 'Tue',\r\n 'Wed',\r\n 'Thu',\r\n 'Fri',\r\n 'Sat',\r\n 'Sun',\r\n ];\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { ProfitBarAnimationChartData } from '../data/profit-bar-animation-chart';\r\n\r\n@Injectable()\r\nexport class ProfitBarAnimationChartService extends ProfitBarAnimationChartData {\r\n\r\n private data: any;\r\n\r\n constructor() {\r\n super();\r\n this.data = {\r\n firstLine: this.getDataForFirstLine(),\r\n secondLine: this.getDataForSecondLine(),\r\n };\r\n }\r\n\r\n getDataForFirstLine(): number[] {\r\n return this.createEmptyArray(100)\r\n .map((_, index) => {\r\n const oneFifth = index / 5;\r\n\r\n return (Math.sin(oneFifth) * (oneFifth - 10) + index / 6) * 5;\r\n });\r\n }\r\n\r\n getDataForSecondLine(): number[] {\r\n return this.createEmptyArray(100)\r\n .map((_, index) => {\r\n const oneFifth = index / 5;\r\n\r\n return (Math.cos(oneFifth) * (oneFifth - 10) + index / 6) * 5;\r\n });\r\n }\r\n\r\n createEmptyArray(nPoints: number) {\r\n return Array.from(Array(nPoints));\r\n }\r\n\r\n getChartData(): Observable<{ firstLine: number[]; secondLine: number[]; }> {\r\n return observableOf(this.data);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { PeriodsService } from './periods.service';\r\nimport { ProfitChart, ProfitChartData } from '../data/profit-chart';\r\n\r\n@Injectable()\r\nexport class ProfitChartService extends ProfitChartData {\r\n\r\n private year = [\r\n '2012',\r\n '2013',\r\n '2014',\r\n '2015',\r\n '2016',\r\n '2017',\r\n '2018',\r\n ];\r\n\r\n private data = { };\r\n\r\n constructor(private period: PeriodsService) {\r\n super();\r\n this.data = {\r\n week: this.getDataForWeekPeriod(),\r\n month: this.getDataForMonthPeriod(),\r\n year: this.getDataForYearPeriod(),\r\n };\r\n }\r\n\r\n private getDataForWeekPeriod(): ProfitChart {\r\n const nPoint = this.period.getWeeks().length;\r\n\r\n return {\r\n chartLabel: this.period.getWeeks(),\r\n data: [\r\n this.getRandomData(nPoint),\r\n this.getRandomData(nPoint),\r\n this.getRandomData(nPoint),\r\n ],\r\n };\r\n }\r\n\r\n private getDataForMonthPeriod(): ProfitChart {\r\n const nPoint = this.period.getMonths().length;\r\n\r\n return {\r\n chartLabel: this.period.getMonths(),\r\n data: [\r\n this.getRandomData(nPoint),\r\n this.getRandomData(nPoint),\r\n this.getRandomData(nPoint),\r\n ],\r\n };\r\n }\r\n\r\n private getDataForYearPeriod(): ProfitChart {\r\n const nPoint = this.year.length;\r\n\r\n return {\r\n chartLabel: this.year,\r\n data: [\r\n this.getRandomData(nPoint),\r\n this.getRandomData(nPoint),\r\n this.getRandomData(nPoint),\r\n ],\r\n };\r\n }\r\n\r\n private getRandomData(nPoints: number): number[] {\r\n return Array.from(Array(nPoints)).map(() => {\r\n return Math.round(Math.random() * 500);\r\n });\r\n }\r\n\r\n getProfitChartData(period: string): ProfitChart {\r\n return this.data[period];\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { Camera, SecurityCamerasData } from '../data/security-cameras';\r\n\r\n@Injectable()\r\nexport class SecurityCamerasService extends SecurityCamerasData {\r\n\r\n private cameras: Camera[] = [\r\n {\r\n title: 'Camera #1',\r\n source: 'assets/images/camera1.jpg',\r\n },\r\n {\r\n title: 'Camera #2',\r\n source: 'assets/images/camera2.jpg',\r\n },\r\n {\r\n title: 'Camera #3',\r\n source: 'assets/images/camera3.jpg',\r\n },\r\n {\r\n title: 'Camera #4',\r\n source: 'assets/images/camera4.jpg',\r\n },\r\n ];\r\n\r\n getCamerasData(): Observable {\r\n return observableOf(this.cameras);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { SmartTableData } from '../data/smart-table';\r\n\r\n@Injectable()\r\nexport class SmartTableService extends SmartTableData {\r\n\r\n data = [{\r\n id: 1,\r\n firstName: 'Mark',\r\n lastName: 'Otto',\r\n username: '@mdo',\r\n email: 'mdo@gmail.com',\r\n age: '28',\r\n }, {\r\n id: 2,\r\n firstName: 'Jacob',\r\n lastName: 'Thornton',\r\n username: '@fat',\r\n email: 'fat@yandex.ru',\r\n age: '45',\r\n }, {\r\n id: 3,\r\n firstName: 'Larry',\r\n lastName: 'Bird',\r\n username: '@twitter',\r\n email: 'twitter@outlook.com',\r\n age: '18',\r\n }, {\r\n id: 4,\r\n firstName: 'John',\r\n lastName: 'Snow',\r\n username: '@snow',\r\n email: 'snow@gmail.com',\r\n age: '20',\r\n }, {\r\n id: 5,\r\n firstName: 'Jack',\r\n lastName: 'Sparrow',\r\n username: '@jack',\r\n email: 'jack@yandex.ru',\r\n age: '30',\r\n }, {\r\n id: 6,\r\n firstName: 'Ann',\r\n lastName: 'Smith',\r\n username: '@ann',\r\n email: 'ann@gmail.com',\r\n age: '21',\r\n }, {\r\n id: 7,\r\n firstName: 'Barbara',\r\n lastName: 'Black',\r\n username: '@barbara',\r\n email: 'barbara@yandex.ru',\r\n age: '43',\r\n }, {\r\n id: 8,\r\n firstName: 'Sevan',\r\n lastName: 'Bagrat',\r\n username: '@sevan',\r\n email: 'sevan@outlook.com',\r\n age: '13',\r\n }, {\r\n id: 9,\r\n firstName: 'Ruben',\r\n lastName: 'Vardan',\r\n username: '@ruben',\r\n email: 'ruben@gmail.com',\r\n age: '22',\r\n }, {\r\n id: 10,\r\n firstName: 'Karen',\r\n lastName: 'Sevan',\r\n username: '@karen',\r\n email: 'karen@yandex.ru',\r\n age: '33',\r\n }, {\r\n id: 11,\r\n firstName: 'Mark',\r\n lastName: 'Otto',\r\n username: '@mark',\r\n email: 'mark@gmail.com',\r\n age: '38',\r\n }, {\r\n id: 12,\r\n firstName: 'Jacob',\r\n lastName: 'Thornton',\r\n username: '@jacob',\r\n email: 'jacob@yandex.ru',\r\n age: '48',\r\n }, {\r\n id: 13,\r\n firstName: 'Haik',\r\n lastName: 'Hakob',\r\n username: '@haik',\r\n email: 'haik@outlook.com',\r\n age: '48',\r\n }, {\r\n id: 14,\r\n firstName: 'Garegin',\r\n lastName: 'Jirair',\r\n username: '@garegin',\r\n email: 'garegin@gmail.com',\r\n age: '40',\r\n }, {\r\n id: 15,\r\n firstName: 'Krikor',\r\n lastName: 'Bedros',\r\n username: '@krikor',\r\n email: 'krikor@yandex.ru',\r\n age: '32',\r\n }, {\r\n 'id': 16,\r\n 'firstName': 'Francisca',\r\n 'lastName': 'Brady',\r\n 'username': '@Gibson',\r\n 'email': 'franciscagibson@comtours.com',\r\n 'age': 11,\r\n }, {\r\n 'id': 17,\r\n 'firstName': 'Tillman',\r\n 'lastName': 'Figueroa',\r\n 'username': '@Snow',\r\n 'email': 'tillmansnow@comtours.com',\r\n 'age': 34,\r\n }, {\r\n 'id': 18,\r\n 'firstName': 'Jimenez',\r\n 'lastName': 'Morris',\r\n 'username': '@Bryant',\r\n 'email': 'jimenezbryant@comtours.com',\r\n 'age': 45,\r\n }, {\r\n 'id': 19,\r\n 'firstName': 'Sandoval',\r\n 'lastName': 'Jacobson',\r\n 'username': '@Mcbride',\r\n 'email': 'sandovalmcbride@comtours.com',\r\n 'age': 32,\r\n }, {\r\n 'id': 20,\r\n 'firstName': 'Griffin',\r\n 'lastName': 'Torres',\r\n 'username': '@Charles',\r\n 'email': 'griffincharles@comtours.com',\r\n 'age': 19,\r\n }, {\r\n 'id': 21,\r\n 'firstName': 'Cora',\r\n 'lastName': 'Parker',\r\n 'username': '@Caldwell',\r\n 'email': 'coracaldwell@comtours.com',\r\n 'age': 27,\r\n }, {\r\n 'id': 22,\r\n 'firstName': 'Cindy',\r\n 'lastName': 'Bond',\r\n 'username': '@Velez',\r\n 'email': 'cindyvelez@comtours.com',\r\n 'age': 24,\r\n }, {\r\n 'id': 23,\r\n 'firstName': 'Frieda',\r\n 'lastName': 'Tyson',\r\n 'username': '@Craig',\r\n 'email': 'friedacraig@comtours.com',\r\n 'age': 45,\r\n }, {\r\n 'id': 24,\r\n 'firstName': 'Cote',\r\n 'lastName': 'Holcomb',\r\n 'username': '@Rowe',\r\n 'email': 'coterowe@comtours.com',\r\n 'age': 20,\r\n }, {\r\n 'id': 25,\r\n 'firstName': 'Trujillo',\r\n 'lastName': 'Mejia',\r\n 'username': '@Valenzuela',\r\n 'email': 'trujillovalenzuela@comtours.com',\r\n 'age': 16,\r\n }, {\r\n 'id': 26,\r\n 'firstName': 'Pruitt',\r\n 'lastName': 'Shepard',\r\n 'username': '@Sloan',\r\n 'email': 'pruittsloan@comtours.com',\r\n 'age': 44,\r\n }, {\r\n 'id': 27,\r\n 'firstName': 'Sutton',\r\n 'lastName': 'Ortega',\r\n 'username': '@Black',\r\n 'email': 'suttonblack@comtours.com',\r\n 'age': 42,\r\n }, {\r\n 'id': 28,\r\n 'firstName': 'Marion',\r\n 'lastName': 'Heath',\r\n 'username': '@Espinoza',\r\n 'email': 'marionespinoza@comtours.com',\r\n 'age': 47,\r\n }, {\r\n 'id': 29,\r\n 'firstName': 'Newman',\r\n 'lastName': 'Hicks',\r\n 'username': '@Keith',\r\n 'email': 'newmankeith@comtours.com',\r\n 'age': 15,\r\n }, {\r\n 'id': 30,\r\n 'firstName': 'Boyle',\r\n 'lastName': 'Larson',\r\n 'username': '@Summers',\r\n 'email': 'boylesummers@comtours.com',\r\n 'age': 32,\r\n }, {\r\n 'id': 31,\r\n 'firstName': 'Haynes',\r\n 'lastName': 'Vinson',\r\n 'username': '@Mckenzie',\r\n 'email': 'haynesmckenzie@comtours.com',\r\n 'age': 15,\r\n }, {\r\n 'id': 32,\r\n 'firstName': 'Miller',\r\n 'lastName': 'Acosta',\r\n 'username': '@Young',\r\n 'email': 'milleryoung@comtours.com',\r\n 'age': 55,\r\n }, {\r\n 'id': 33,\r\n 'firstName': 'Johnston',\r\n 'lastName': 'Brown',\r\n 'username': '@Knight',\r\n 'email': 'johnstonknight@comtours.com',\r\n 'age': 29,\r\n }, {\r\n 'id': 34,\r\n 'firstName': 'Lena',\r\n 'lastName': 'Pitts',\r\n 'username': '@Forbes',\r\n 'email': 'lenaforbes@comtours.com',\r\n 'age': 25,\r\n }, {\r\n 'id': 35,\r\n 'firstName': 'Terrie',\r\n 'lastName': 'Kennedy',\r\n 'username': '@Branch',\r\n 'email': 'terriebranch@comtours.com',\r\n 'age': 37,\r\n }, {\r\n 'id': 36,\r\n 'firstName': 'Louise',\r\n 'lastName': 'Aguirre',\r\n 'username': '@Kirby',\r\n 'email': 'louisekirby@comtours.com',\r\n 'age': 44,\r\n }, {\r\n 'id': 37,\r\n 'firstName': 'David',\r\n 'lastName': 'Patton',\r\n 'username': '@Sanders',\r\n 'email': 'davidsanders@comtours.com',\r\n 'age': 26,\r\n }, {\r\n 'id': 38,\r\n 'firstName': 'Holden',\r\n 'lastName': 'Barlow',\r\n 'username': '@Mckinney',\r\n 'email': 'holdenmckinney@comtours.com',\r\n 'age': 11,\r\n }, {\r\n 'id': 39,\r\n 'firstName': 'Baker',\r\n 'lastName': 'Rivera',\r\n 'username': '@Montoya',\r\n 'email': 'bakermontoya@comtours.com',\r\n 'age': 47,\r\n }, {\r\n 'id': 40,\r\n 'firstName': 'Belinda',\r\n 'lastName': 'Lloyd',\r\n 'username': '@Calderon',\r\n 'email': 'belindacalderon@comtours.com',\r\n 'age': 21,\r\n }, {\r\n 'id': 41,\r\n 'firstName': 'Pearson',\r\n 'lastName': 'Patrick',\r\n 'username': '@Clements',\r\n 'email': 'pearsonclements@comtours.com',\r\n 'age': 42,\r\n }, {\r\n 'id': 42,\r\n 'firstName': 'Alyce',\r\n 'lastName': 'Mckee',\r\n 'username': '@Daugherty',\r\n 'email': 'alycedaugherty@comtours.com',\r\n 'age': 55,\r\n }, {\r\n 'id': 43,\r\n 'firstName': 'Valencia',\r\n 'lastName': 'Spence',\r\n 'username': '@Olsen',\r\n 'email': 'valenciaolsen@comtours.com',\r\n 'age': 20,\r\n }, {\r\n 'id': 44,\r\n 'firstName': 'Leach',\r\n 'lastName': 'Holcomb',\r\n 'username': '@Humphrey',\r\n 'email': 'leachhumphrey@comtours.com',\r\n 'age': 28,\r\n }, {\r\n 'id': 45,\r\n 'firstName': 'Moss',\r\n 'lastName': 'Baxter',\r\n 'username': '@Fitzpatrick',\r\n 'email': 'mossfitzpatrick@comtours.com',\r\n 'age': 51,\r\n }, {\r\n 'id': 46,\r\n 'firstName': 'Jeanne',\r\n 'lastName': 'Cooke',\r\n 'username': '@Ward',\r\n 'email': 'jeanneward@comtours.com',\r\n 'age': 59,\r\n }, {\r\n 'id': 47,\r\n 'firstName': 'Wilma',\r\n 'lastName': 'Briggs',\r\n 'username': '@Kidd',\r\n 'email': 'wilmakidd@comtours.com',\r\n 'age': 53,\r\n }, {\r\n 'id': 48,\r\n 'firstName': 'Beatrice',\r\n 'lastName': 'Perry',\r\n 'username': '@Gilbert',\r\n 'email': 'beatricegilbert@comtours.com',\r\n 'age': 39,\r\n }, {\r\n 'id': 49,\r\n 'firstName': 'Whitaker',\r\n 'lastName': 'Hyde',\r\n 'username': '@Mcdonald',\r\n 'email': 'whitakermcdonald@comtours.com',\r\n 'age': 35,\r\n }, {\r\n 'id': 50,\r\n 'firstName': 'Rebekah',\r\n 'lastName': 'Duran',\r\n 'username': '@Gross',\r\n 'email': 'rebekahgross@comtours.com',\r\n 'age': 40,\r\n }, {\r\n 'id': 51,\r\n 'firstName': 'Earline',\r\n 'lastName': 'Mayer',\r\n 'username': '@Woodward',\r\n 'email': 'earlinewoodward@comtours.com',\r\n 'age': 52,\r\n }, {\r\n 'id': 52,\r\n 'firstName': 'Moran',\r\n 'lastName': 'Baxter',\r\n 'username': '@Johns',\r\n 'email': 'moranjohns@comtours.com',\r\n 'age': 20,\r\n }, {\r\n 'id': 53,\r\n 'firstName': 'Nanette',\r\n 'lastName': 'Hubbard',\r\n 'username': '@Cooke',\r\n 'email': 'nanettecooke@comtours.com',\r\n 'age': 55,\r\n }, {\r\n 'id': 54,\r\n 'firstName': 'Dalton',\r\n 'lastName': 'Walker',\r\n 'username': '@Hendricks',\r\n 'email': 'daltonhendricks@comtours.com',\r\n 'age': 25,\r\n }, {\r\n 'id': 55,\r\n 'firstName': 'Bennett',\r\n 'lastName': 'Blake',\r\n 'username': '@Pena',\r\n 'email': 'bennettpena@comtours.com',\r\n 'age': 13,\r\n }, {\r\n 'id': 56,\r\n 'firstName': 'Kellie',\r\n 'lastName': 'Horton',\r\n 'username': '@Weiss',\r\n 'email': 'kellieweiss@comtours.com',\r\n 'age': 48,\r\n }, {\r\n 'id': 57,\r\n 'firstName': 'Hobbs',\r\n 'lastName': 'Talley',\r\n 'username': '@Sanford',\r\n 'email': 'hobbssanford@comtours.com',\r\n 'age': 28,\r\n }, {\r\n 'id': 58,\r\n 'firstName': 'Mcguire',\r\n 'lastName': 'Donaldson',\r\n 'username': '@Roman',\r\n 'email': 'mcguireroman@comtours.com',\r\n 'age': 38,\r\n }, {\r\n 'id': 59,\r\n 'firstName': 'Rodriquez',\r\n 'lastName': 'Saunders',\r\n 'username': '@Harper',\r\n 'email': 'rodriquezharper@comtours.com',\r\n 'age': 20,\r\n }, {\r\n 'id': 60,\r\n 'firstName': 'Lou',\r\n 'lastName': 'Conner',\r\n 'username': '@Sanchez',\r\n 'email': 'lousanchez@comtours.com',\r\n 'age': 16,\r\n }];\r\n\r\n getData() {\r\n return this.data;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { SolarData } from '../data/solar';\r\n\r\n@Injectable()\r\nexport class SolarService extends SolarData {\r\n private value = 42;\r\n\r\n getSolarData(): Observable {\r\n return observableOf(this.value);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { StatsBarData } from '../data/stats-bar';\r\n\r\n@Injectable()\r\nexport class StatsBarService extends StatsBarData {\r\n\r\n private statsBarData: number[] = [\r\n 300, 520, 435, 530,\r\n 730, 620, 660, 860,\r\n ];\r\n\r\n getStatsBarData(): Observable {\r\n return observableOf(this.statsBarData);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { ProgressInfo, StatsProgressBarData } from '../data/stats-progress-bar';\r\n\r\n@Injectable()\r\nexport class StatsProgressBarService extends StatsProgressBarData {\r\n private progressInfoData: ProgressInfo[] = [\r\n {\r\n title: 'Today’s Profit',\r\n value: 572900,\r\n activeProgress: 70,\r\n description: 'Better than last week (70%)',\r\n },\r\n {\r\n title: 'New Orders',\r\n value: 6378,\r\n activeProgress: 30,\r\n description: 'Better than last week (30%)',\r\n },\r\n {\r\n title: 'New Comments',\r\n value: 200,\r\n activeProgress: 55,\r\n description: 'Better than last week (55%)',\r\n },\r\n ];\r\n\r\n getProgressInfoData(): Observable {\r\n return observableOf(this.progressInfoData);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { TemperatureHumidityData, Temperature } from '../data/temperature-humidity';\r\n\r\n@Injectable()\r\nexport class TemperatureHumidityService extends TemperatureHumidityData {\r\n\r\n private temperatureDate: Temperature = {\r\n value: 24,\r\n min: 12,\r\n max: 30,\r\n };\r\n\r\n private humidityDate: Temperature = {\r\n value: 87,\r\n min: 0,\r\n max: 100,\r\n };\r\n\r\n getTemperatureData(): Observable {\r\n return observableOf(this.temperatureDate);\r\n }\r\n\r\n getHumidityData(): Observable {\r\n return observableOf(this.humidityDate);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { PeriodsService } from './periods.service';\r\nimport { TrafficBarData, TrafficBar } from '../data/traffic-bar';\r\n\r\n@Injectable()\r\nexport class TrafficBarService extends TrafficBarData {\r\n\r\n private data = { };\r\n\r\n constructor(private period: PeriodsService) {\r\n super();\r\n this.data = {\r\n week: this.getDataForWeekPeriod(),\r\n month: this.getDataForMonthPeriod(),\r\n year: this.getDataForYearPeriod(),\r\n };\r\n }\r\n\r\n getDataForWeekPeriod(): TrafficBar {\r\n return {\r\n data: [10, 15, 19, 7, 20, 13, 15],\r\n labels: this.period.getWeeks(),\r\n formatter: '{c0} MB',\r\n };\r\n }\r\n\r\n getDataForMonthPeriod(): TrafficBar {\r\n return {\r\n data: [0.5, 0.3, 0.8, 0.2, 0.3, 0.7, 0.8, 1, 0.7, 0.8, 0.6, 0.7],\r\n labels: this.period.getMonths(),\r\n formatter: '{c0} GB',\r\n };\r\n }\r\n\r\n getDataForYearPeriod(): TrafficBar {\r\n return {\r\n data: [10, 15, 19, 7, 20, 13, 15, 19, 11],\r\n labels: this.period.getYears(),\r\n formatter: '{c0} GB',\r\n };\r\n }\r\n\r\n getTrafficBarData(period: string): Observable {\r\n return observableOf(this.data[period]);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { TrafficChartData } from '../data/traffic-chart';\r\n\r\n@Injectable()\r\nexport class TrafficChartService extends TrafficChartData {\r\n\r\n private data: number[] = [\r\n 300, 520, 435, 530,\r\n 730, 620, 660, 860,\r\n ];\r\n\r\n getTrafficChartData(): Observable {\r\n return observableOf(this.data);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { PeriodsService } from './periods.service';\r\nimport { TrafficList, TrafficListData } from '../data/traffic-list';\r\n\r\n@Injectable()\r\nexport class TrafficListService extends TrafficListData {\r\n\r\n private getRandom = (roundTo: number) => Math.round(Math.random() * roundTo);\r\n private data = {};\r\n\r\n constructor(private period: PeriodsService) {\r\n super();\r\n this.data = {\r\n week: this.getDataWeek(),\r\n month: this.getDataMonth(),\r\n year: this.getDataYear(),\r\n };\r\n }\r\n\r\n private getDataWeek(): TrafficList[] {\r\n const getFirstDateInPeriod = () => {\r\n const weeks = this.period.getWeeks();\r\n\r\n return weeks[weeks.length - 1];\r\n };\r\n\r\n return this.reduceData(this.period.getWeeks(), getFirstDateInPeriod);\r\n }\r\n\r\n private getDataMonth(): TrafficList[] {\r\n const getFirstDateInPeriod = () => {\r\n const months = this.period.getMonths();\r\n\r\n return months[months.length - 1];\r\n };\r\n\r\n return this.reduceData(this.period.getMonths(), getFirstDateInPeriod);\r\n }\r\n\r\n private getDataYear(): TrafficList[] {\r\n const getFirstDateInPeriod = () => {\r\n const years = this.period.getYears();\r\n\r\n return `${parseInt(years[0], 10) - 1}`;\r\n };\r\n\r\n return this.reduceData(this.period.getYears(), getFirstDateInPeriod);\r\n }\r\n\r\n private reduceData(timePeriods: string[], getFirstDateInPeriod: () => string): TrafficList[] {\r\n return timePeriods.reduce((result, timePeriod, index) => {\r\n const hasResult = result[index - 1];\r\n const prevDate = hasResult ?\r\n result[index - 1].comparison.nextDate :\r\n getFirstDateInPeriod();\r\n const prevValue = hasResult ?\r\n result[index - 1].comparison.nextValue :\r\n this.getRandom(100);\r\n const nextValue = this.getRandom(100);\r\n const deltaValue = prevValue - nextValue;\r\n\r\n const item = {\r\n date: timePeriod,\r\n value: this.getRandom(1000),\r\n delta: {\r\n up: deltaValue <= 0,\r\n value: Math.abs(deltaValue),\r\n },\r\n comparison: {\r\n prevDate,\r\n prevValue,\r\n nextDate: timePeriod,\r\n nextValue,\r\n },\r\n };\r\n\r\n return [...result, item];\r\n }, []);\r\n }\r\n\r\n getTrafficListData(period: string): Observable {\r\n return observableOf(this.data[period]);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { PeriodsService } from './periods.service';\r\nimport { UserActive, UserActivityData } from '../data/user-activity';\r\n\r\n@Injectable()\r\nexport class UserActivityService extends UserActivityData {\r\n\r\n private getRandom = (roundTo: number) => Math.round(Math.random() * roundTo);\r\n private generateUserActivityRandomData(date) {\r\n return {\r\n date,\r\n pagesVisitCount: this.getRandom(1000),\r\n deltaUp: this.getRandom(1) % 2 === 0,\r\n newVisits: this.getRandom(100),\r\n };\r\n }\r\n\r\n data = {};\r\n\r\n constructor(private periods: PeriodsService) {\r\n super();\r\n this.data = {\r\n week: this.getDataWeek(),\r\n month: this.getDataMonth(),\r\n year: this.getDataYear(),\r\n };\r\n }\r\n\r\n private getDataWeek(): UserActive[] {\r\n return this.periods.getWeeks().map((week) => {\r\n return this.generateUserActivityRandomData(week);\r\n });\r\n }\r\n\r\n private getDataMonth(): UserActive[] {\r\n const currentDate = new Date();\r\n const days = currentDate.getDate();\r\n const month = this.periods.getMonths()[currentDate.getMonth()];\r\n\r\n return Array.from(Array(days)).map((_, index) => {\r\n const date = `${index + 1} ${month}`;\r\n\r\n return this.generateUserActivityRandomData(date);\r\n });\r\n }\r\n\r\n private getDataYear(): UserActive[] {\r\n return this.periods.getYears().map((year) => {\r\n return this.generateUserActivityRandomData(year);\r\n });\r\n }\r\n\r\n getUserActivityData(period: string): Observable {\r\n return observableOf(this.data[period]);\r\n }\r\n}\r\n","import { of as observableOf, Observable } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { Contacts, RecentUsers, UserData } from '../data/users';\r\n\r\n@Injectable()\r\nexport class UserService extends UserData {\r\n\r\n private time: Date = new Date;\r\n\r\n private users = {\r\n nick: { name: 'Nick Jones', picture: 'assets/images/nick.png' },\r\n eva: { name: 'Eva Moor', picture: 'assets/images/eva.png' },\r\n jack: { name: 'Jack Williams', picture: 'assets/images/jack.png' },\r\n lee: { name: 'Lee Wong', picture: 'assets/images/lee.png' },\r\n alan: { name: 'Alan Thompson', picture: 'assets/images/alan.png' },\r\n kate: { name: 'Kate Martinez', picture: 'assets/images/kate.png' },\r\n };\r\n private types = {\r\n mobile: 'mobile',\r\n home: 'home',\r\n work: 'work',\r\n };\r\n private contacts: Contacts[] = [\r\n { user: this.users.nick, type: this.types.mobile },\r\n { user: this.users.eva, type: this.types.home },\r\n { user: this.users.jack, type: this.types.mobile },\r\n { user: this.users.lee, type: this.types.mobile },\r\n { user: this.users.alan, type: this.types.home },\r\n { user: this.users.kate, type: this.types.work },\r\n ];\r\n private recentUsers: RecentUsers[] = [\r\n { user: this.users.alan, type: this.types.home, time: this.time.setHours(21, 12)},\r\n { user: this.users.eva, type: this.types.home, time: this.time.setHours(17, 45)},\r\n { user: this.users.nick, type: this.types.mobile, time: this.time.setHours(5, 29)},\r\n { user: this.users.lee, type: this.types.mobile, time: this.time.setHours(11, 24)},\r\n { user: this.users.jack, type: this.types.mobile, time: this.time.setHours(10, 45)},\r\n { user: this.users.kate, type: this.types.work, time: this.time.setHours(9, 42)},\r\n { user: this.users.kate, type: this.types.work, time: this.time.setHours(9, 31)},\r\n { user: this.users.jack, type: this.types.mobile, time: this.time.setHours(8, 0)},\r\n ];\r\n\r\n getUsers(): Observable {\r\n return observableOf(this.users);\r\n }\r\n\r\n getContacts(): Observable {\r\n return observableOf(this.contacts);\r\n }\r\n\r\n getRecentUsers(): Observable {\r\n return observableOf(this.recentUsers);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\nimport { PeriodsService } from './periods.service';\r\nimport { OutlineData, VisitorsAnalyticsData } from '../data/visitors-analytics';\r\n\r\n@Injectable()\r\nexport class VisitorsAnalyticsService extends VisitorsAnalyticsData {\r\n\r\n constructor(private periodService: PeriodsService) {\r\n super();\r\n }\r\n\r\n private pieChartValue = 75;\r\n private innerLinePoints: number[] = [\r\n 94, 188, 225, 244, 253, 254, 249, 235, 208,\r\n 173, 141, 118, 105, 97, 94, 96, 104, 121, 147,\r\n 183, 224, 265, 302, 333, 358, 375, 388, 395,\r\n 400, 400, 397, 390, 377, 360, 338, 310, 278,\r\n 241, 204, 166, 130, 98, 71, 49, 32, 20, 13, 9,\r\n ];\r\n private outerLinePoints: number[] = [\r\n 85, 71, 59, 50, 45, 42, 41, 44 , 58, 88,\r\n 136 , 199, 267, 326, 367, 391, 400, 397,\r\n 376, 319, 200, 104, 60, 41, 36, 37, 44,\r\n 55, 74, 100 , 131, 159, 180, 193, 199, 200,\r\n 195, 184, 164, 135, 103, 73, 50, 33, 22, 15, 11,\r\n ];\r\n private generateOutlineLineData(): OutlineData[] {\r\n const months = this.periodService.getMonths();\r\n const outerLinePointsLength = this.outerLinePoints.length;\r\n const monthsLength = months.length;\r\n\r\n return this.outerLinePoints.map((p, index) => {\r\n const monthIndex = Math.round(index / 4);\r\n const label = (index % Math.round(outerLinePointsLength / monthsLength) === 0)\r\n ? months[monthIndex]\r\n : '';\r\n\r\n return {\r\n label,\r\n value: p,\r\n };\r\n });\r\n }\r\n\r\n getInnerLineChartData(): Observable {\r\n return observableOf(this.innerLinePoints);\r\n }\r\n\r\n getOutlineLineChartData(): Observable {\r\n return observableOf(this.generateOutlineLineData());\r\n }\r\n\r\n getPieChartData(): Observable {\r\n return observableOf(this.pieChartValue);\r\n }\r\n}\r\n","export function throwIfAlreadyLoaded(parentModule: any, moduleName: string) {\r\n if (parentModule) {\r\n throw new Error(`${moduleName} has already been loaded. Import Core modules in the AppModule only.`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { Location } from '@angular/common';\r\nimport { filter } from 'rxjs/operators';\r\n\r\ndeclare const ga: any;\r\n\r\n@Injectable()\r\nexport class AnalyticsService {\r\n private enabled: boolean;\r\n\r\n constructor(private location: Location, private router: Router) {\r\n this.enabled = false;\r\n }\r\n\r\n trackPageViews() {\r\n if (this.enabled) {\r\n this.router.events.pipe(\r\n filter((event) => event instanceof NavigationEnd),\r\n )\r\n .subscribe(() => {\r\n ga('send', {hitType: 'pageview', page: this.location.path()});\r\n });\r\n }\r\n }\r\n\r\n trackEvent(eventName: string) {\r\n if (this.enabled) {\r\n ga('send', 'event', eventName);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { delay, shareReplay, debounceTime } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class LayoutService {\r\n\r\n protected layoutSize$ = new Subject();\r\n protected layoutSizeChange$ = this.layoutSize$.pipe(\r\n shareReplay({ refCount: true }),\r\n );\r\n\r\n changeLayoutSize() {\r\n this.layoutSize$.next();\r\n }\r\n\r\n onChangeLayoutSize(): Observable {\r\n return this.layoutSizeChange$.pipe(delay(1));\r\n }\r\n\r\n onSafeChangeLayoutSize(): Observable {\r\n return this.layoutSizeChange$.pipe(\r\n debounceTime(350),\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nexport class Track {\r\n name: string;\r\n artist: string;\r\n url: string;\r\n cover: string;\r\n}\r\n\r\n@Injectable()\r\nexport class PlayerService {\r\n current: number;\r\n playlist: Track[] = [\r\n {\r\n name: 'Don\\'t Wanna Fight',\r\n artist: 'Alabama Shakes',\r\n url: 'https://p.scdn.co/mp3-preview/6156cdbca425a894972c02fca9d76c0b70e001af',\r\n cover: 'assets/images/cover1.jpg',\r\n },\r\n {\r\n name: 'Harder',\r\n artist: 'Daft Punk',\r\n url: 'https://p.scdn.co/mp3-preview/92a04c7c0e96bf93a1b1b1cae7dfff1921969a7b',\r\n cover: 'assets/images/cover2.jpg',\r\n },\r\n {\r\n name: 'Come Together',\r\n artist: 'Beatles',\r\n url: 'https://p.scdn.co/mp3-preview/83090a4db6899eaca689ae35f69126dbe65d94c9',\r\n cover: 'assets/images/cover3.jpg',\r\n },\r\n ];\r\n\r\n random(): Track {\r\n this.current = Math.floor(Math.random() * this.playlist.length);\r\n return this.playlist[this.current];\r\n }\r\n\r\n next(): Track {\r\n return this.getNextTrack();\r\n }\r\n\r\n prev() {\r\n return this.getPrevTrack();\r\n }\r\n\r\n private getNextTrack(): Track {\r\n if (this.current === this.playlist.length - 1) {\r\n this.current = 0;\r\n } else {\r\n this.current++;\r\n }\r\n\r\n return this.playlist[this.current];\r\n }\r\n\r\n private getPrevTrack(): Track {\r\n if (this.current === 0) {\r\n this.current = this.playlist.length - 1;\r\n } else {\r\n this.current--;\r\n }\r\n\r\n return this.playlist[this.current];\r\n }\r\n}\r\n","import { Injectable, Inject, PLATFORM_ID, OnDestroy } from '@angular/core';\r\nimport { isPlatformBrowser } from '@angular/common';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { NB_DOCUMENT } from '@nebular/theme';\r\nimport { filter, takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class SeoService implements OnDestroy {\r\n\r\n private readonly destroy$ = new Subject();\r\n private readonly dom: Document;\r\n private readonly isBrowser: boolean;\r\n private linkCanonical: HTMLLinkElement;\r\n\r\n constructor(\r\n private router: Router,\r\n @Inject(NB_DOCUMENT) document,\r\n @Inject(PLATFORM_ID) platformId,\r\n ) {\r\n this.isBrowser = isPlatformBrowser(platformId);\r\n this.dom = document;\r\n\r\n if (this.isBrowser) {\r\n this.createCanonicalTag();\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n\r\n createCanonicalTag() {\r\n this.linkCanonical = this.dom.createElement('link');\r\n this.linkCanonical.setAttribute('rel', 'canonical');\r\n this.dom.head.appendChild(this.linkCanonical);\r\n this.linkCanonical.setAttribute('href', this.getCanonicalUrl());\r\n }\r\n\r\n trackCanonicalChanges() {\r\n if (!this.isBrowser) {\r\n return;\r\n }\r\n\r\n this.router.events.pipe(\r\n filter((event) => event instanceof NavigationEnd),\r\n takeUntil(this.destroy$),\r\n )\r\n .subscribe(() => {\r\n this.linkCanonical.setAttribute('href', this.getCanonicalUrl());\r\n });\r\n }\r\n\r\n private getCanonicalUrl(): string {\r\n return this.dom.location.origin + this.dom.location.pathname;\r\n }\r\n}\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { of as observableOf, Observable, BehaviorSubject } from 'rxjs';\r\nimport { takeWhile } from 'rxjs/operators';\r\n\r\nimport { NbLayoutDirectionService, NbLayoutDirection } from '@nebular/theme';\r\n\r\n@Injectable()\r\nexport class StateService implements OnDestroy {\r\n\r\n protected layouts: any = [\r\n {\r\n name: 'One Column',\r\n icon: 'nb-layout-default',\r\n id: 'one-column',\r\n selected: true,\r\n },\r\n {\r\n name: 'Two Column',\r\n icon: 'nb-layout-two-column',\r\n id: 'two-column',\r\n },\r\n {\r\n name: 'Center Column',\r\n icon: 'nb-layout-centre',\r\n id: 'center-column',\r\n },\r\n ];\r\n\r\n protected sidebars: any = [\r\n {\r\n name: 'Sidebar at layout start',\r\n icon: 'nb-layout-sidebar-left',\r\n id: 'start',\r\n selected: true,\r\n },\r\n {\r\n name: 'Sidebar at layout end',\r\n icon: 'nb-layout-sidebar-right',\r\n id: 'end',\r\n },\r\n ];\r\n\r\n protected layoutState$ = new BehaviorSubject(this.layouts[0]);\r\n protected sidebarState$ = new BehaviorSubject(this.sidebars[0]);\r\n\r\n alive = true;\r\n\r\n constructor(directionService: NbLayoutDirectionService) {\r\n directionService.onDirectionChange()\r\n .pipe(takeWhile(() => this.alive))\r\n .subscribe(direction => this.updateSidebarIcons(direction));\r\n\r\n this.updateSidebarIcons(directionService.getDirection());\r\n }\r\n\r\n ngOnDestroy() {\r\n this.alive = false;\r\n }\r\n\r\n private updateSidebarIcons(direction: NbLayoutDirection) {\r\n const [ startSidebar, endSidebar ] = this.sidebars;\r\n const isLtr = direction === NbLayoutDirection.LTR;\r\n const startIconClass = isLtr ? 'nb-layout-sidebar-left' : 'nb-layout-sidebar-right';\r\n const endIconClass = isLtr ? 'nb-layout-sidebar-right' : 'nb-layout-sidebar-left';\r\n startSidebar.icon = startIconClass;\r\n endSidebar.icon = endIconClass;\r\n }\r\n\r\n setLayoutState(state: any): any {\r\n this.layoutState$.next(state);\r\n }\r\n\r\n getLayoutStates(): Observable {\r\n return observableOf(this.layouts);\r\n }\r\n\r\n onLayoutState(): Observable {\r\n return this.layoutState$.asObservable();\r\n }\r\n\r\n setSidebarState(state: any): any {\r\n this.sidebarState$.next(state);\r\n }\r\n\r\n getSidebarStates(): Observable {\r\n return observableOf(this.sidebars);\r\n }\r\n\r\n onSidebarState(): Observable {\r\n return this.sidebarState$.asObservable();\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ngx-footer',\r\n styleUrls: ['./footer.component.scss'],\r\n template: `\r\n \r\n © 優果科技股份有限公司版權所有,轉載、編輯必究\r\n Copyright © 2024 YOUGUO Technology Co., Ltd. All Right Reserved\r\n \r\n `,\r\n})\r\nexport class FooterComponent {\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n {{CompanyName}}\r\n \r\n \r\n {{ theme.content }}\r\n \r\n \r\n {{ theme.content }}\r\n \r\n\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { NbMediaBreakpointsService, NbMenuService, NbSidebarService, NbThemeService } from '@nebular/theme';\r\n\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { UserData } from '../../../@core/data/users';\r\nimport { LayoutService } from '../../../@core/utils';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\n\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MyMenuService } from '../../../tool/service/menu.service';\r\n\r\nimport { HomeComponent } from '../../../main/sys/home/home.component';\r\n\r\nimport { SubscriptService } from '../../../tool/service/header.service';\r\nimport { Subject, Observable } from 'rxjs';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'ngx-header',\r\n styleUrls: ['./header.component.scss'],\r\n templateUrl: './header.component.html',\r\n})\r\nexport class HeaderComponent implements OnInit, OnDestroy {\r\n\r\n private destroy$: Subject = new Subject();\r\n userPictureOnly: boolean = false;\r\n user: any;\r\n\r\n themes = [\r\n {\r\n value: 'default',\r\n name: 'Light',\r\n },\r\n {\r\n value: 'dark',\r\n name: 'Dark',\r\n },\r\n {\r\n value: 'cosmic',\r\n name: 'Cosmic',\r\n },\r\n {\r\n value: 'corporate',\r\n name: 'Corporate',\r\n },\r\n ];\r\n\r\n currentTheme = 'default';\r\n\r\n userMenu = [{ title: '登出' }];\r\n\r\n //基本資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n CompanyName:string;\r\n authChangeSub:any;\r\n USR_POSEmployeeInfo_ID: string;\r\n //查詢的門市\r\n storeSelectList: selectData[];\r\n selectORG_Store_ID: number;\r\n menuSub : any\r\n\r\n constructor(\r\n private sidebarService: NbSidebarService,\r\n private menuService: NbMenuService,\r\n private themeService: NbThemeService,\r\n private userService: UserData,\r\n private layoutService: LayoutService,\r\n private cookieService: CookieService,\r\n private _router: Router,\r\n private breakpointService: NbMediaBreakpointsService,\r\n private http: HttpClient,\r\n private ms: MyMenuService,\r\n private hs: SubscriptService,\r\n private home: HomeComponent) {\r\n\r\n \r\n\r\n console.log(\"註冊大菜單\")\r\n this.menuSub = menuService.onItemClick().subscribe((event) => {\r\n console.log(event);\r\n if (event.item.title == \"登出\") {\r\n this.ms.logout();\r\n }\r\n \r\n });\r\n\r\n console.log('已訂閱 content AuthUpdata$') \r\n this.hs.AuthUpdata$.subscribe(val => {\r\n console.log('hs 已收到content變動',val)\r\n this.getStoreList()\r\n });\r\n \r\n }\r\n\r\n\r\n ngOnInit() {\r\n \r\n \r\n\r\n\r\n this.USR_POSEmployeeInfo_ID = this.cookieService.get('USR_POSEmployeeInfo_ID');\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null\r\n \r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID');\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'));\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID = (cookie_sid && cookie_sid != '') ? parseInt(cookie_sid) : null\r\n\r\n\r\n\r\n\r\n this.currentTheme = this.themeService.currentTheme;\r\n // this.userService.getUsers()\r\n // .pipe(takeUntil(this.destroy$))\r\n // .subscribe((users: any) => this.user = users.nick);\r\n\r\n this.user = new Object();\r\n this.user.name = this.cookieService.get('NickName');\r\n this.user.picture = this.cookieService.get('PhotoURL');\r\n this.CompanyName = this.cookieService.get('CompanyName'); \r\n\r\n const { xl } = this.breakpointService.getBreakpointsMap();\r\n this.themeService.onMediaQueryChange()\r\n .pipe(\r\n map(([, currentBreakpoint]) => currentBreakpoint.width < xl),\r\n takeUntil(this.destroy$),\r\n )\r\n .subscribe((isLessThanXl: boolean) => this.userPictureOnly = isLessThanXl);\r\n\r\n this.themeService.onThemeChange()\r\n .pipe(\r\n map(({ name }) => name),\r\n takeUntil(this.destroy$),\r\n )\r\n .subscribe(themeName => this.currentTheme = themeName);\r\n\r\n\r\n if (this.USR_AccountInfo_ID != null) {\r\n this.getStoreList();\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n\r\n if (this.menuSub) {\r\n this.menuSub.unsubscribe();\r\n }\r\n\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n\r\n \r\n //開關左邊欄\r\n toggleSidebar(): boolean {\r\n \r\n this.sidebarService.toggle(true, 'menu-sidebar');\r\n this.layoutService.changeLayoutSize();\r\n\r\n return false;\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n upSelect: boolean = false;\r\n //取得門市清單\r\n getStoreList() {//取得門市清單 USP_YOPOSWebGetStoreList\r\n\r\n console.log('hs 更新門市清單')\r\n\r\n\r\n this.http.post('api/ORGStore/StoreList', {\r\n USR_AccountInfo_ID: this.USR_AccountInfo_ID ? this.USR_AccountInfo_ID : 'empty',\r\n USR_EmployeeInfo_ID: this.USR_EmployeeInfo_ID,\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n USR_POSEmployeeInfo_ID: this.USR_POSEmployeeInfo_ID,\r\n }).subscribe({\r\n next: data => {\r\n this.storeSelectList = [];\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.storeSelectList.push(selectItem);\r\n });\r\n\r\n // 預設點第一個\r\n if (this.storeSelectList.length > 0) {\r\n let obj = this.storeSelectList.find(x=>x.value == this.ORG_Store_ID )\r\n if(obj) {\r\n this.selectORG_Store_ID = obj.value\r\n this.selectStoreChange(obj.value)\r\n } \r\n else{\r\n this.selectORG_Store_ID = this.storeSelectList[0].value\r\n this.selectStoreChange(this.storeSelectList[0].value)\r\n }\r\n \r\n }\r\n this.upSelect = !this.upSelect\r\n\r\n\r\n\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n }\r\n //選擇門市\r\n selectStoreChange(event) {\r\n\r\n \r\n \r\n this.cookieService.set('ORG_Store_ID', event,1,'/');\r\n this.selectORG_Store_ID = event\r\n this.ORG_Store_ID = event\r\n\r\n console.log('hs變更了內容!')\r\n this.hs.AuthChangeSubject.next(event)\r\n \r\n\r\n this.ms.getMenu()\r\n this.home.GetContractRd();\r\n }\r\n\r\n\r\n\r\n\r\n\r\n // changeTheme(themeName: string) {\r\n // this.themeService.changeTheme(themeName);\r\n // }\r\n\r\n // navigateHome() {\r\n // this.menuService.navigateHome();\r\n // return false;\r\n // }\r\n\r\n\r\n\r\n}\r\n\r\n\r\nclass selectData {\r\n value: number;//\r\n content: string;//\r\n\r\n}\r\n","import { Component, ElementRef, EventEmitter, Output, ViewChild } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ngx-search-input',\r\n styleUrls: ['./search-input.component.scss'],\r\n template: `\r\n \r\n \r\n `,\r\n})\r\nexport class SearchInputComponent {\r\n @ViewChild('input', { static: true }) input: ElementRef;\r\n\r\n @Output() search: EventEmitter = new EventEmitter();\r\n\r\n isInputShown = false;\r\n\r\n showInput() {\r\n this.isInputShown = true;\r\n this.input.nativeElement.focus();\r\n }\r\n\r\n hideInput() {\r\n this.isInputShown = false;\r\n }\r\n\r\n onInput(val: string) {\r\n this.search.emit(val);\r\n }\r\n}\r\n","import { Component, OnDestroy, AfterViewInit, Output, EventEmitter, ElementRef } from '@angular/core';\r\nimport { LocationStrategy } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'ngx-tiny-mce',\r\n template: '',\r\n})\r\nexport class TinyMCEComponent implements OnDestroy, AfterViewInit {\r\n\r\n @Output() editorKeyup = new EventEmitter();\r\n\r\n editor: any;\r\n\r\n constructor(\r\n private host: ElementRef,\r\n private locationStrategy: LocationStrategy,\r\n ) { }\r\n\r\n ngAfterViewInit() {\r\n tinymce.init({\r\n target: this.host.nativeElement,\r\n plugins: ['link', 'paste', 'table'],\r\n skin_url: `${this.locationStrategy.getBaseHref()}assets/skins/lightgray`,\r\n setup: editor => {\r\n this.editor = editor;\r\n editor.on('keyup', () => {\r\n this.editorKeyup.emit(editor.getContent());\r\n });\r\n },\r\n height: '320',\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n tinymce.remove(this.editor);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ngx-one-column-layout',\r\n styleUrls: ['./one-column.layout.scss'],\r\n template: `\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n `,\r\n})\r\nexport class OneColumnLayoutComponent {}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-simple-layout',\r\n template: ``,\r\n})\r\nexport class SimpleLayoutComponent {}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ngx-three-columns-layout',\r\n styleUrls: ['./three-columns.layout.scss'],\r\n template: `\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n `,\r\n})\r\nexport class ThreeColumnsLayoutComponent {}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ngx-two-columns-layout',\r\n styleUrls: ['./two-columns.layout.scss'],\r\n template: `\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n `,\r\n})\r\nexport class TwoColumnsLayoutComponent {}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'ngxCapitalize' })\r\nexport class CapitalizePipe implements PipeTransform {\r\n\r\n transform(input: string): string {\r\n return input && input.length\r\n ? (input.charAt(0).toUpperCase() + input.slice(1).toLowerCase())\r\n : input;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'ngxNumberWithCommas' })\r\nexport class NumberWithCommasPipe implements PipeTransform {\r\n\r\n transform(input: number): string {\r\n return new Intl.NumberFormat().format(input);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'ngxPlural' })\r\nexport class PluralPipe implements PipeTransform {\r\n\r\n transform(input: number, label: string, pluralLabel: string = ''): string {\r\n input = input || 0;\r\n return input === 1\r\n ? `${input} ${label}`\r\n : pluralLabel\r\n ? `${input} ${pluralLabel}`\r\n : `${input} ${label}s`;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'ngxRound' })\r\nexport class RoundPipe implements PipeTransform {\r\n\r\n transform(input: number): number {\r\n return Math.round(input);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'timing' })\r\nexport class TimingPipe implements PipeTransform {\r\n transform(time: number): string {\r\n if (time) {\r\n const minutes = Math.floor(time / 60);\r\n const seconds = Math.floor(time % 60);\r\n return `${this.initZero(minutes)}${minutes}:${this.initZero(seconds)}${seconds}`;\r\n }\r\n\r\n return '00:00';\r\n }\r\n\r\n private initZero(time: number): string {\r\n return time < 10 ? '0' : '';\r\n }\r\n}\r\n","import { NbJSThemeOptions, CORPORATE_THEME as baseTheme } from '@nebular/theme';\r\n\r\nconst baseThemeVariables = baseTheme.variables;\r\n\r\nexport const CORPORATE_THEME = {\r\n name: 'corporate',\r\n base: 'corporate',\r\n variables: {\r\n temperature: {\r\n arcFill: [ '#ffa36b', '#ffa36b', '#ff9e7a', '#ff9888', '#ff8ea0' ],\r\n arcEmpty: baseThemeVariables.bg2,\r\n thumbBg: baseThemeVariables.bg2,\r\n thumbBorder: '#ffa36b',\r\n },\r\n\r\n solar: {\r\n gradientLeft: baseThemeVariables.primary,\r\n gradientRight: baseThemeVariables.primary,\r\n shadowColor: 'rgba(0, 0, 0, 0)',\r\n secondSeriesFill: baseThemeVariables.bg2,\r\n radius: ['80%', '90%'],\r\n },\r\n\r\n traffic: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n\r\n yAxisSplitLine: 'rgba(0, 0, 0, 0)',\r\n\r\n lineBg: baseThemeVariables.primary,\r\n lineShadowBlur: '0',\r\n itemColor: baseThemeVariables.border4,\r\n itemBorderColor: baseThemeVariables.border4,\r\n itemEmphasisBorderColor: baseThemeVariables.primaryLight,\r\n shadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n shadowLineShadow: 'rgba(0, 0, 0, 0)',\r\n gradFrom: baseThemeVariables.bg,\r\n gradTo: baseThemeVariables.bg,\r\n },\r\n\r\n electricity: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: baseThemeVariables.fgText,\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n\r\n axisLineColor: baseThemeVariables.border3,\r\n xAxisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'solid',\r\n lineWidth: '4',\r\n lineGradFrom: baseThemeVariables.primary,\r\n lineGradTo: baseThemeVariables.primary,\r\n lineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n areaGradFrom: 'rgba(0, 0, 0, 0)',\r\n areaGradTo: 'rgba(0, 0, 0, 0)',\r\n shadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n bubbleMap: {\r\n titleColor: baseThemeVariables.fgText,\r\n areaColor: baseThemeVariables.bg4,\r\n areaHoverColor: baseThemeVariables.fgHighlight,\r\n areaBorderColor: baseThemeVariables.border5,\r\n },\r\n\r\n profitBarAnimationEchart: {\r\n textColor: baseThemeVariables.fgText,\r\n\r\n firstAnimationBarColor: baseThemeVariables.primary,\r\n secondAnimationBarColor: baseThemeVariables.success,\r\n\r\n splitLineStyleOpacity: '1',\r\n splitLineStyleWidth: '1',\r\n splitLineStyleColor: baseThemeVariables.separator,\r\n\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '16',\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipBorderWidth: '1',\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n },\r\n\r\n trafficBarEchart: {\r\n gradientFrom: baseThemeVariables.warningLight,\r\n gradientTo: baseThemeVariables.warning,\r\n shadow: baseThemeVariables.warningLight,\r\n shadowBlur: '0',\r\n\r\n axisTextColor: baseThemeVariables.fgText,\r\n axisFontSize: '12',\r\n\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n },\r\n\r\n countryOrders: {\r\n countryBorderColor: baseThemeVariables.border4,\r\n countryFillColor: baseThemeVariables.bg4,\r\n countryBorderWidth: '1',\r\n hoveredCountryBorderColor: baseThemeVariables.primary,\r\n hoveredCountryFillColor: baseThemeVariables.primaryLight,\r\n hoveredCountryBorderWidth: '1',\r\n\r\n chartAxisLineColor: baseThemeVariables.border4,\r\n chartAxisTextColor: baseThemeVariables.fg,\r\n chartAxisFontSize: '16',\r\n chartGradientTo: baseThemeVariables.primary,\r\n chartGradientFrom: baseThemeVariables.primaryLight,\r\n chartAxisSplitLine: baseThemeVariables.separator,\r\n chartShadowLineColor: baseThemeVariables.primaryLight,\r\n\r\n chartLineBottomShadowColor: baseThemeVariables.primary,\r\n\r\n chartInnerLineColor: baseThemeVariables.bg2,\r\n },\r\n\r\n echarts: {\r\n bg: baseThemeVariables.bg,\r\n textColor: baseThemeVariables.fgText,\r\n axisLineColor: baseThemeVariables.fgText,\r\n splitLineColor: baseThemeVariables.separator,\r\n itemHoverShadowColor: 'rgba(0, 0, 0, 0.5)',\r\n tooltipBackgroundColor: baseThemeVariables.primary,\r\n areaOpacity: '0.7',\r\n },\r\n\r\n chartjs: {\r\n axisLineColor: baseThemeVariables.separator,\r\n textColor: baseThemeVariables.fgText,\r\n },\r\n\r\n orders: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: 'rgba(0, 0, 0, 0)',\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '20',\r\n\r\n axisLineColor: baseThemeVariables.border4,\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'solid',\r\n lineWidth: '4',\r\n\r\n // first line\r\n firstAreaGradFrom: baseThemeVariables.bg3,\r\n firstAreaGradTo: baseThemeVariables.bg3,\r\n firstShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n\r\n // second line\r\n secondLineGradFrom: baseThemeVariables.primary,\r\n secondLineGradTo: baseThemeVariables.primary,\r\n\r\n secondAreaGradFrom: 'rgba(0, 0, 0, 0)',\r\n secondAreaGradTo: 'rgba(0, 0, 0, 0)',\r\n secondShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n\r\n // third line\r\n thirdLineGradFrom: baseThemeVariables.success,\r\n thirdLineGradTo: baseThemeVariables.successLight,\r\n\r\n thirdAreaGradFrom: 'rgba(0, 0, 0, 0)',\r\n thirdAreaGradTo: 'rgba(0, 0, 0, 0)',\r\n thirdShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n profit: {\r\n bg: baseThemeVariables.bg,\r\n textColor: baseThemeVariables.fgText,\r\n axisLineColor: baseThemeVariables.border4,\r\n splitLineColor: baseThemeVariables.separator,\r\n areaOpacity: '1',\r\n\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n\r\n // first bar\r\n firstLineGradFrom: baseThemeVariables.bg3,\r\n firstLineGradTo: baseThemeVariables.bg3,\r\n firstLineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n // second bar\r\n secondLineGradFrom: baseThemeVariables.primary,\r\n secondLineGradTo: baseThemeVariables.primary,\r\n secondLineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n // third bar\r\n thirdLineGradFrom: baseThemeVariables.success,\r\n thirdLineGradTo: baseThemeVariables.success,\r\n thirdLineShadow: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n orderProfitLegend: {\r\n firstItem: baseThemeVariables.success,\r\n secondItem: baseThemeVariables.primary,\r\n thirdItem: baseThemeVariables.bg3,\r\n },\r\n\r\n visitors: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: 'rgba(0, 0, 0, 0)',\r\n tooltipLineWidth: '1',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '20',\r\n\r\n axisLineColor: baseThemeVariables.border4,\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'dotted',\r\n lineWidth: '6',\r\n lineGradFrom: '#ffffff',\r\n lineGradTo: '#ffffff',\r\n lineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n areaGradFrom: baseThemeVariables.primary,\r\n areaGradTo: baseThemeVariables.primaryLight,\r\n\r\n innerLineStyle: 'solid',\r\n innerLineWidth: '1',\r\n\r\n innerAreaGradFrom: baseThemeVariables.success,\r\n innerAreaGradTo: baseThemeVariables.success,\r\n },\r\n\r\n visitorsLegend: {\r\n firstIcon: baseThemeVariables.success,\r\n secondIcon: baseThemeVariables.primary,\r\n },\r\n\r\n visitorsPie: {\r\n firstPieGradientLeft: baseThemeVariables.success,\r\n firstPieGradientRight: baseThemeVariables.success,\r\n firstPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n firstPieRadius: ['65%', '90%'],\r\n\r\n secondPieGradientLeft: baseThemeVariables.warning,\r\n secondPieGradientRight: baseThemeVariables.warningLight,\r\n secondPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n secondPieRadius: ['63%', '92%'],\r\n shadowOffsetX: '-4',\r\n shadowOffsetY: '-4',\r\n },\r\n\r\n visitorsPieLegend: {\r\n firstSection: baseThemeVariables.warning,\r\n secondSection: baseThemeVariables.success,\r\n },\r\n\r\n earningPie: {\r\n radius: ['65%', '100%'],\r\n center: ['50%', '50%'],\r\n\r\n fontSize: '22',\r\n\r\n firstPieGradientLeft: baseThemeVariables.success,\r\n firstPieGradientRight: baseThemeVariables.success,\r\n firstPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n\r\n secondPieGradientLeft: baseThemeVariables.primary,\r\n secondPieGradientRight: baseThemeVariables.primary,\r\n secondPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n\r\n thirdPieGradientLeft: baseThemeVariables.warning,\r\n thirdPieGradientRight: baseThemeVariables.warning,\r\n thirdPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n earningLine: {\r\n gradFrom: baseThemeVariables.primary,\r\n gradTo: baseThemeVariables.primary,\r\n\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '16',\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipBorderWidth: '1',\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n },\r\n },\r\n} as NbJSThemeOptions;\r\n","import { NbJSThemeOptions, COSMIC_THEME as baseTheme } from '@nebular/theme';\r\n\r\nconst baseThemeVariables = baseTheme.variables;\r\n\r\nexport const COSMIC_THEME = {\r\n name: 'cosmic',\r\n base: 'cosmic',\r\n variables: {\r\n temperature: {\r\n arcFill: [ '#2ec7fe', '#31ffad', '#7bff24', '#fff024', '#f7bd59' ],\r\n arcEmpty: baseThemeVariables.bg2,\r\n thumbBg: '#ffffff',\r\n thumbBorder: '#ffffff',\r\n },\r\n\r\n solar: {\r\n gradientLeft: baseThemeVariables.primary,\r\n gradientRight: baseThemeVariables.primary,\r\n shadowColor: 'rgba(0, 0, 0, 0)',\r\n secondSeriesFill: baseThemeVariables.bg2,\r\n radius: ['70%', '90%'],\r\n },\r\n\r\n traffic: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'box-shadow: 0px 2px 46px 0 rgba(50, 50, 89); border-radius: 10px; padding: 4px 16px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n lineBg: baseThemeVariables.border2,\r\n lineShadowBlur: '14',\r\n itemColor: baseThemeVariables.border2,\r\n itemBorderColor: baseThemeVariables.border2,\r\n itemEmphasisBorderColor: baseThemeVariables.primary,\r\n shadowLineDarkBg: baseThemeVariables.border3,\r\n shadowLineShadow: baseThemeVariables.border3,\r\n gradFrom: baseThemeVariables.bg,\r\n gradTo: baseThemeVariables.bg2,\r\n },\r\n\r\n electricity: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: baseThemeVariables.fgText,\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'box-shadow: 0px 2px 46px 0 rgba(0, 255, 170, 0.35); border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n\r\n axisLineColor: baseThemeVariables.border3,\r\n xAxisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.border2,\r\n lineStyle: 'dotted',\r\n lineWidth: '6',\r\n lineGradFrom: baseThemeVariables.success,\r\n lineGradTo: baseThemeVariables.warning,\r\n lineShadow: baseThemeVariables.bg4,\r\n\r\n areaGradFrom: baseThemeVariables.bg2,\r\n areaGradTo: baseThemeVariables.bg3,\r\n shadowLineDarkBg: baseThemeVariables.bg3,\r\n },\r\n\r\n bubbleMap: {\r\n titleColor: baseThemeVariables.fgText,\r\n areaColor: baseThemeVariables.bg4,\r\n areaHoverColor: baseThemeVariables.fgHighlight,\r\n areaBorderColor: baseThemeVariables.border5,\r\n },\r\n\r\n profitBarAnimationEchart: {\r\n textColor: baseThemeVariables.fgText,\r\n\r\n firstAnimationBarColor: baseThemeVariables.primary,\r\n secondAnimationBarColor: baseThemeVariables.success,\r\n\r\n splitLineStyleOpacity: '1',\r\n splitLineStyleWidth: '1',\r\n splitLineStyleColor: baseThemeVariables.border2,\r\n\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '16',\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipBorderWidth: '1',\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n },\r\n\r\n trafficBarEchart: {\r\n gradientFrom: baseThemeVariables.warningLight,\r\n gradientTo: baseThemeVariables.warning,\r\n shadow: baseThemeVariables.warningLight,\r\n shadowBlur: '5',\r\n\r\n axisTextColor: baseThemeVariables.fgText,\r\n axisFontSize: '12',\r\n\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n },\r\n\r\n countryOrders: {\r\n countryBorderColor: baseThemeVariables.border4,\r\n countryFillColor: baseThemeVariables.bg3,\r\n countryBorderWidth: '1',\r\n hoveredCountryBorderColor: baseThemeVariables.primary,\r\n hoveredCountryFillColor: baseThemeVariables.primaryLight,\r\n hoveredCountryBorderWidth: '1',\r\n\r\n chartAxisLineColor: baseThemeVariables.border4,\r\n chartAxisTextColor: baseThemeVariables.fg,\r\n chartAxisFontSize: '16',\r\n chartGradientTo: baseThemeVariables.primary,\r\n chartGradientFrom: baseThemeVariables.primaryLight,\r\n chartAxisSplitLine: baseThemeVariables.separator,\r\n chartShadowLineColor: baseThemeVariables.primaryLight,\r\n\r\n chartLineBottomShadowColor: baseThemeVariables.primary,\r\n\r\n chartInnerLineColor: baseThemeVariables.bg2,\r\n },\r\n\r\n echarts: {\r\n bg: baseThemeVariables.bg,\r\n textColor: baseThemeVariables.fgText,\r\n axisLineColor: baseThemeVariables.fgText,\r\n splitLineColor: baseThemeVariables.separator,\r\n itemHoverShadowColor: 'rgba(0, 0, 0, 0.5)',\r\n tooltipBackgroundColor: baseThemeVariables.primary,\r\n areaOpacity: '1',\r\n },\r\n\r\n chartjs: {\r\n axisLineColor: baseThemeVariables.separator,\r\n textColor: baseThemeVariables.fgText,\r\n },\r\n\r\n orders: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: 'rgba(0, 0, 0, 0)',\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '20',\r\n\r\n axisLineColor: baseThemeVariables.border4,\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'solid',\r\n lineWidth: '4',\r\n\r\n // first line\r\n firstAreaGradFrom: baseThemeVariables.bg2,\r\n firstAreaGradTo: baseThemeVariables.bg2,\r\n firstShadowLineDarkBg: baseThemeVariables.bg2,\r\n\r\n // second line\r\n secondLineGradFrom: baseThemeVariables.primary,\r\n secondLineGradTo: baseThemeVariables.primary,\r\n\r\n secondAreaGradFrom: 'rgba(161, 110, 255, 0.8)',\r\n secondAreaGradTo: 'rgba(161, 110, 255, 0.5)',\r\n secondShadowLineDarkBg: baseThemeVariables.primary,\r\n\r\n // third line\r\n thirdLineGradFrom: baseThemeVariables.success,\r\n thirdLineGradTo: baseThemeVariables.successLight,\r\n\r\n thirdAreaGradFrom: 'rgba(0, 214, 143, 0.7)',\r\n thirdAreaGradTo: 'rgba(0, 214, 143, 0.4)',\r\n thirdShadowLineDarkBg: baseThemeVariables.success,\r\n },\r\n\r\n profit: {\r\n bg: baseThemeVariables.bg,\r\n textColor: baseThemeVariables.fgText,\r\n axisLineColor: baseThemeVariables.border4,\r\n splitLineColor: baseThemeVariables.separator,\r\n areaOpacity: '1',\r\n\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n\r\n // first bar\r\n firstLineGradFrom: baseThemeVariables.bg2,\r\n firstLineGradTo: baseThemeVariables.bg2,\r\n firstLineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n // second bar\r\n secondLineGradFrom: baseThemeVariables.primary,\r\n secondLineGradTo: baseThemeVariables.primary,\r\n secondLineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n // third bar\r\n thirdLineGradFrom: baseThemeVariables.success,\r\n thirdLineGradTo: baseThemeVariables.successLight,\r\n thirdLineShadow: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n orderProfitLegend: {\r\n firstItem: baseThemeVariables.success,\r\n secondItem: baseThemeVariables.primary,\r\n thirdItem: baseThemeVariables.bg2,\r\n },\r\n\r\n visitors: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: 'rgba(0, 0, 0, 0)',\r\n tooltipLineWidth: '1',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '20',\r\n\r\n axisLineColor: baseThemeVariables.border4,\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'dotted',\r\n lineWidth: '6',\r\n lineGradFrom: '#ffffff',\r\n lineGradTo: '#ffffff',\r\n lineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n areaGradFrom: baseThemeVariables.primary,\r\n areaGradTo: baseThemeVariables.primaryLight,\r\n\r\n innerLineStyle: 'solid',\r\n innerLineWidth: '1',\r\n\r\n innerAreaGradFrom: baseThemeVariables.success,\r\n innerAreaGradTo: baseThemeVariables.success,\r\n },\r\n\r\n visitorsLegend: {\r\n firstIcon: baseThemeVariables.success,\r\n secondIcon: baseThemeVariables.primary,\r\n },\r\n\r\n visitorsPie: {\r\n firstPieGradientLeft: baseThemeVariables.success,\r\n firstPieGradientRight: baseThemeVariables.successLight,\r\n firstPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n firstPieRadius: ['70%', '90%'],\r\n\r\n secondPieGradientLeft: baseThemeVariables.warning,\r\n secondPieGradientRight: baseThemeVariables.warningLight,\r\n secondPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n secondPieRadius: ['60%', '95%'],\r\n shadowOffsetX: '0',\r\n shadowOffsetY: '3',\r\n },\r\n\r\n visitorsPieLegend: {\r\n firstSection: baseThemeVariables.warning,\r\n secondSection: baseThemeVariables.success,\r\n },\r\n\r\n earningPie: {\r\n radius: ['65%', '100%'],\r\n center: ['50%', '50%'],\r\n\r\n fontSize: '22',\r\n\r\n firstPieGradientLeft: baseThemeVariables.success,\r\n firstPieGradientRight: baseThemeVariables.success,\r\n firstPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n\r\n secondPieGradientLeft: baseThemeVariables.primary,\r\n secondPieGradientRight: baseThemeVariables.primary,\r\n secondPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n\r\n thirdPieGradientLeft: baseThemeVariables.warning,\r\n thirdPieGradientRight: baseThemeVariables.warning,\r\n thirdPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n earningLine: {\r\n gradFrom: baseThemeVariables.primary,\r\n gradTo: baseThemeVariables.primary,\r\n\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '16',\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipBorderWidth: '1',\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n },\r\n },\r\n} as NbJSThemeOptions;\r\n","import { NbJSThemeOptions, DARK_THEME as baseTheme } from '@nebular/theme';\r\n\r\nconst baseThemeVariables = baseTheme.variables;\r\n\r\nexport const DARK_THEME = {\r\n name: 'dark',\r\n base: 'dark',\r\n variables: {\r\n temperature: {\r\n arcFill: [\r\n baseThemeVariables.primary,\r\n baseThemeVariables.primary,\r\n baseThemeVariables.primary,\r\n baseThemeVariables.primary,\r\n baseThemeVariables.primary,\r\n ],\r\n arcEmpty: baseThemeVariables.bg2,\r\n thumbBg: baseThemeVariables.bg2,\r\n thumbBorder: baseThemeVariables.primary,\r\n },\r\n\r\n solar: {\r\n gradientLeft: baseThemeVariables.primary,\r\n gradientRight: baseThemeVariables.primary,\r\n shadowColor: 'rgba(0, 0, 0, 0)',\r\n secondSeriesFill: baseThemeVariables.bg2,\r\n radius: ['80%', '90%'],\r\n },\r\n\r\n traffic: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n lineBg: baseThemeVariables.border4,\r\n lineShadowBlur: '1',\r\n itemColor: baseThemeVariables.border4,\r\n itemBorderColor: baseThemeVariables.border4,\r\n itemEmphasisBorderColor: baseThemeVariables.primary,\r\n shadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n shadowLineShadow: 'rgba(0, 0, 0, 0)',\r\n gradFrom: baseThemeVariables.bg2,\r\n gradTo: baseThemeVariables.bg2,\r\n },\r\n\r\n electricity: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: baseThemeVariables.fgText,\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n\r\n axisLineColor: baseThemeVariables.border3,\r\n xAxisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'solid',\r\n lineWidth: '4',\r\n lineGradFrom: baseThemeVariables.primary,\r\n lineGradTo: baseThemeVariables.primary,\r\n lineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n areaGradFrom: baseThemeVariables.bg2,\r\n areaGradTo: baseThemeVariables.bg2,\r\n shadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n bubbleMap: {\r\n titleColor: baseThemeVariables.fgText,\r\n areaColor: baseThemeVariables.bg4,\r\n areaHoverColor: baseThemeVariables.fgHighlight,\r\n areaBorderColor: baseThemeVariables.border5,\r\n },\r\n\r\n profitBarAnimationEchart: {\r\n textColor: baseThemeVariables.fgText,\r\n\r\n firstAnimationBarColor: baseThemeVariables.primary,\r\n secondAnimationBarColor: baseThemeVariables.success,\r\n\r\n splitLineStyleOpacity: '1',\r\n splitLineStyleWidth: '1',\r\n splitLineStyleColor: baseThemeVariables.separator,\r\n\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '16',\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipBorderWidth: '1',\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n },\r\n\r\n trafficBarEchart: {\r\n gradientFrom: baseThemeVariables.warningLight,\r\n gradientTo: baseThemeVariables.warning,\r\n shadow: baseThemeVariables.warningLight,\r\n shadowBlur: '0',\r\n\r\n axisTextColor: baseThemeVariables.fgText,\r\n axisFontSize: '12',\r\n\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n },\r\n\r\n countryOrders: {\r\n countryBorderColor: baseThemeVariables.border4,\r\n countryFillColor: baseThemeVariables.bg3,\r\n countryBorderWidth: '1',\r\n hoveredCountryBorderColor: baseThemeVariables.primary,\r\n hoveredCountryFillColor: baseThemeVariables.primaryLight,\r\n hoveredCountryBorderWidth: '1',\r\n\r\n chartAxisLineColor: baseThemeVariables.border4,\r\n chartAxisTextColor: baseThemeVariables.fg,\r\n chartAxisFontSize: '16',\r\n chartGradientTo: baseThemeVariables.primary,\r\n chartGradientFrom: baseThemeVariables.primaryLight,\r\n chartAxisSplitLine: baseThemeVariables.separator,\r\n chartShadowLineColor: baseThemeVariables.primaryLight,\r\n\r\n chartLineBottomShadowColor: baseThemeVariables.primary,\r\n\r\n chartInnerLineColor: baseThemeVariables.bg2,\r\n },\r\n\r\n echarts: {\r\n bg: baseThemeVariables.bg,\r\n textColor: baseThemeVariables.fgText,\r\n axisLineColor: baseThemeVariables.fgText,\r\n splitLineColor: baseThemeVariables.separator,\r\n itemHoverShadowColor: 'rgba(0, 0, 0, 0.5)',\r\n tooltipBackgroundColor: baseThemeVariables.primary,\r\n areaOpacity: '0.7',\r\n },\r\n\r\n chartjs: {\r\n axisLineColor: baseThemeVariables.separator,\r\n textColor: baseThemeVariables.fgText,\r\n },\r\n\r\n orders: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: 'rgba(0, 0, 0, 0)',\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '20',\r\n\r\n axisLineColor: baseThemeVariables.border4,\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'solid',\r\n lineWidth: '4',\r\n\r\n // first line\r\n firstAreaGradFrom: baseThemeVariables.bg3,\r\n firstAreaGradTo: baseThemeVariables.bg3,\r\n firstShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n\r\n // second line\r\n secondLineGradFrom: baseThemeVariables.primary,\r\n secondLineGradTo: baseThemeVariables.primary,\r\n\r\n secondAreaGradFrom: 'rgba(51, 102, 255, 0.2)',\r\n secondAreaGradTo: 'rgba(51, 102, 255, 0)',\r\n secondShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n\r\n // third line\r\n thirdLineGradFrom: baseThemeVariables.success,\r\n thirdLineGradTo: baseThemeVariables.successLight,\r\n\r\n thirdAreaGradFrom: 'rgba(0, 214, 143, 0.2)',\r\n thirdAreaGradTo: 'rgba(0, 214, 143, 0)',\r\n thirdShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n profit: {\r\n bg: baseThemeVariables.bg,\r\n textColor: baseThemeVariables.fgText,\r\n axisLineColor: baseThemeVariables.border4,\r\n splitLineColor: baseThemeVariables.separator,\r\n areaOpacity: '1',\r\n\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n\r\n // first bar\r\n firstLineGradFrom: baseThemeVariables.bg3,\r\n firstLineGradTo: baseThemeVariables.bg3,\r\n firstLineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n // second bar\r\n secondLineGradFrom: baseThemeVariables.primary,\r\n secondLineGradTo: baseThemeVariables.primary,\r\n secondLineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n // third bar\r\n thirdLineGradFrom: baseThemeVariables.success,\r\n thirdLineGradTo: baseThemeVariables.successLight,\r\n thirdLineShadow: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n orderProfitLegend: {\r\n firstItem: baseThemeVariables.success,\r\n secondItem: baseThemeVariables.primary,\r\n thirdItem: baseThemeVariables.bg3,\r\n },\r\n\r\n visitors: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: 'rgba(0, 0, 0, 0)',\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '20',\r\n\r\n axisLineColor: baseThemeVariables.border4,\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'dotted',\r\n lineWidth: '6',\r\n lineGradFrom: '#ffffff',\r\n lineGradTo: '#ffffff',\r\n lineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n areaGradFrom: baseThemeVariables.primary,\r\n areaGradTo: baseThemeVariables.primaryLight,\r\n\r\n innerLineStyle: 'solid',\r\n innerLineWidth: '1',\r\n\r\n innerAreaGradFrom: baseThemeVariables.success,\r\n innerAreaGradTo: baseThemeVariables.success,\r\n },\r\n\r\n visitorsLegend: {\r\n firstIcon: baseThemeVariables.success,\r\n secondIcon: baseThemeVariables.primary,\r\n },\r\n\r\n visitorsPie: {\r\n firstPieGradientLeft: baseThemeVariables.success,\r\n firstPieGradientRight: baseThemeVariables.success,\r\n firstPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n firstPieRadius: ['70%', '90%'],\r\n\r\n secondPieGradientLeft: baseThemeVariables.warning,\r\n secondPieGradientRight: baseThemeVariables.warningLight,\r\n secondPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n secondPieRadius: ['60%', '97%'],\r\n shadowOffsetX: '0',\r\n shadowOffsetY: '0',\r\n },\r\n\r\n visitorsPieLegend: {\r\n firstSection: baseThemeVariables.warning,\r\n secondSection: baseThemeVariables.success,\r\n },\r\n\r\n earningPie: {\r\n radius: ['65%', '100%'],\r\n center: ['50%', '50%'],\r\n\r\n fontSize: '22',\r\n\r\n firstPieGradientLeft: baseThemeVariables.success,\r\n firstPieGradientRight: baseThemeVariables.success,\r\n firstPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n\r\n secondPieGradientLeft: baseThemeVariables.primary,\r\n secondPieGradientRight: baseThemeVariables.primary,\r\n secondPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n\r\n thirdPieGradientLeft: baseThemeVariables.warning,\r\n thirdPieGradientRight: baseThemeVariables.warning,\r\n thirdPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n earningLine: {\r\n gradFrom: baseThemeVariables.primary,\r\n gradTo: baseThemeVariables.primary,\r\n\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '16',\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipBorderWidth: '1',\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n },\r\n },\r\n} as NbJSThemeOptions;\r\n","import { NbJSThemeOptions, DEFAULT_THEME as baseTheme } from '@nebular/theme';\r\n\r\nconst baseThemeVariables = baseTheme.variables;\r\n\r\nexport const DEFAULT_THEME = {\r\n name: 'default',\r\n base: 'default',\r\n variables: {\r\n temperature: {\r\n arcFill: [\r\n baseThemeVariables.primary,\r\n baseThemeVariables.primary,\r\n baseThemeVariables.primary,\r\n baseThemeVariables.primary,\r\n baseThemeVariables.primary,\r\n ],\r\n arcEmpty: baseThemeVariables.bg2,\r\n thumbBg: baseThemeVariables.bg2,\r\n thumbBorder: baseThemeVariables.primary,\r\n },\r\n\r\n solar: {\r\n gradientLeft: baseThemeVariables.primary,\r\n gradientRight: baseThemeVariables.primary,\r\n shadowColor: 'rgba(0, 0, 0, 0)',\r\n secondSeriesFill: baseThemeVariables.bg2,\r\n radius: ['80%', '90%'],\r\n },\r\n\r\n traffic: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n lineBg: baseThemeVariables.border4,\r\n lineShadowBlur: '1',\r\n itemColor: baseThemeVariables.border4,\r\n itemBorderColor: baseThemeVariables.border4,\r\n itemEmphasisBorderColor: baseThemeVariables.primary,\r\n shadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n shadowLineShadow: 'rgba(0, 0, 0, 0)',\r\n gradFrom: baseThemeVariables.bg2,\r\n gradTo: baseThemeVariables.bg2,\r\n },\r\n\r\n electricity: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: baseThemeVariables.fgText,\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n\r\n axisLineColor: baseThemeVariables.border3,\r\n xAxisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'solid',\r\n lineWidth: '4',\r\n lineGradFrom: baseThemeVariables.primary,\r\n lineGradTo: baseThemeVariables.primary,\r\n lineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n areaGradFrom: baseThemeVariables.bg2,\r\n areaGradTo: baseThemeVariables.bg2,\r\n shadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n bubbleMap: {\r\n titleColor: baseThemeVariables.fgText,\r\n areaColor: baseThemeVariables.bg4,\r\n areaHoverColor: baseThemeVariables.fgHighlight,\r\n areaBorderColor: baseThemeVariables.border5,\r\n },\r\n\r\n profitBarAnimationEchart: {\r\n textColor: baseThemeVariables.fgText,\r\n\r\n firstAnimationBarColor: baseThemeVariables.primary,\r\n secondAnimationBarColor: baseThemeVariables.success,\r\n\r\n splitLineStyleOpacity: '1',\r\n splitLineStyleWidth: '1',\r\n splitLineStyleColor: baseThemeVariables.separator,\r\n\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '16',\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipBorderWidth: '1',\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n },\r\n\r\n trafficBarEchart: {\r\n gradientFrom: baseThemeVariables.warningLight,\r\n gradientTo: baseThemeVariables.warning,\r\n shadow: baseThemeVariables.warningLight,\r\n shadowBlur: '0',\r\n\r\n axisTextColor: baseThemeVariables.fgText,\r\n axisFontSize: '12',\r\n\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n },\r\n\r\n countryOrders: {\r\n countryBorderColor: baseThemeVariables.border4,\r\n countryFillColor: baseThemeVariables.bg3,\r\n countryBorderWidth: '1',\r\n hoveredCountryBorderColor: baseThemeVariables.primary,\r\n hoveredCountryFillColor: baseThemeVariables.primaryLight,\r\n hoveredCountryBorderWidth: '1',\r\n\r\n chartAxisLineColor: baseThemeVariables.border4,\r\n chartAxisTextColor: baseThemeVariables.fg,\r\n chartAxisFontSize: '16',\r\n chartGradientTo: baseThemeVariables.primary,\r\n chartGradientFrom: baseThemeVariables.primaryLight,\r\n chartAxisSplitLine: baseThemeVariables.separator,\r\n chartShadowLineColor: baseThemeVariables.primaryLight,\r\n\r\n chartLineBottomShadowColor: baseThemeVariables.primary,\r\n\r\n chartInnerLineColor: baseThemeVariables.bg2,\r\n },\r\n\r\n echarts: {\r\n bg: baseThemeVariables.bg,\r\n textColor: baseThemeVariables.fgText,\r\n axisLineColor: baseThemeVariables.fgText,\r\n splitLineColor: baseThemeVariables.separator,\r\n itemHoverShadowColor: 'rgba(0, 0, 0, 0.5)',\r\n tooltipBackgroundColor: baseThemeVariables.primary,\r\n areaOpacity: '0.7',\r\n },\r\n\r\n chartjs: {\r\n axisLineColor: baseThemeVariables.separator,\r\n textColor: baseThemeVariables.fgText,\r\n },\r\n\r\n orders: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: 'rgba(0, 0, 0, 0)',\r\n tooltipLineWidth: '0',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '20',\r\n\r\n axisLineColor: baseThemeVariables.border4,\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'solid',\r\n lineWidth: '4',\r\n\r\n // first line\r\n firstAreaGradFrom: baseThemeVariables.bg3,\r\n firstAreaGradTo: baseThemeVariables.bg3,\r\n firstShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n\r\n // second line\r\n secondLineGradFrom: baseThemeVariables.primary,\r\n secondLineGradTo: baseThemeVariables.primary,\r\n\r\n secondAreaGradFrom: 'rgba(51, 102, 255, 0.2)',\r\n secondAreaGradTo: 'rgba(51, 102, 255, 0)',\r\n secondShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n\r\n // third line\r\n thirdLineGradFrom: baseThemeVariables.success,\r\n thirdLineGradTo: baseThemeVariables.successLight,\r\n\r\n thirdAreaGradFrom: 'rgba(0, 214, 143, 0.2)',\r\n thirdAreaGradTo: 'rgba(0, 214, 143, 0)',\r\n thirdShadowLineDarkBg: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n profit: {\r\n bg: baseThemeVariables.bg,\r\n textColor: baseThemeVariables.fgText,\r\n axisLineColor: baseThemeVariables.border4,\r\n splitLineColor: baseThemeVariables.separator,\r\n areaOpacity: '1',\r\n\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n\r\n // first bar\r\n firstLineGradFrom: baseThemeVariables.bg3,\r\n firstLineGradTo: baseThemeVariables.bg3,\r\n firstLineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n // second bar\r\n secondLineGradFrom: baseThemeVariables.primary,\r\n secondLineGradTo: baseThemeVariables.primary,\r\n secondLineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n // third bar\r\n thirdLineGradFrom: baseThemeVariables.success,\r\n thirdLineGradTo: baseThemeVariables.successLight,\r\n thirdLineShadow: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n orderProfitLegend: {\r\n firstItem: baseThemeVariables.success,\r\n secondItem: baseThemeVariables.primary,\r\n thirdItem: baseThemeVariables.bg3,\r\n },\r\n\r\n visitors: {\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipLineColor: 'rgba(0, 0, 0, 0)',\r\n tooltipLineWidth: '1',\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipExtraCss: 'border-radius: 10px; padding: 8px 24px;',\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '20',\r\n\r\n axisLineColor: baseThemeVariables.border4,\r\n axisFontSize: '16',\r\n axisTextColor: baseThemeVariables.fg,\r\n yAxisSplitLine: baseThemeVariables.separator,\r\n\r\n itemBorderColor: baseThemeVariables.primary,\r\n lineStyle: 'dotted',\r\n lineWidth: '6',\r\n lineGradFrom: '#ffffff',\r\n lineGradTo: '#ffffff',\r\n lineShadow: 'rgba(0, 0, 0, 0)',\r\n\r\n areaGradFrom: baseThemeVariables.primary,\r\n areaGradTo: baseThemeVariables.primaryLight,\r\n\r\n innerLineStyle: 'solid',\r\n innerLineWidth: '1',\r\n\r\n innerAreaGradFrom: baseThemeVariables.success,\r\n innerAreaGradTo: baseThemeVariables.success,\r\n },\r\n\r\n visitorsLegend: {\r\n firstIcon: baseThemeVariables.success,\r\n secondIcon: baseThemeVariables.primary,\r\n },\r\n\r\n visitorsPie: {\r\n firstPieGradientLeft: baseThemeVariables.success,\r\n firstPieGradientRight: baseThemeVariables.success,\r\n firstPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n firstPieRadius: ['70%', '90%'],\r\n\r\n secondPieGradientLeft: baseThemeVariables.warning,\r\n secondPieGradientRight: baseThemeVariables.warningLight,\r\n secondPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n secondPieRadius: ['60%', '97%'],\r\n shadowOffsetX: '0',\r\n shadowOffsetY: '0',\r\n },\r\n\r\n visitorsPieLegend: {\r\n firstSection: baseThemeVariables.warning,\r\n secondSection: baseThemeVariables.success,\r\n },\r\n\r\n earningPie: {\r\n radius: ['65%', '100%'],\r\n center: ['50%', '50%'],\r\n\r\n fontSize: '22',\r\n\r\n firstPieGradientLeft: baseThemeVariables.success,\r\n firstPieGradientRight: baseThemeVariables.success,\r\n firstPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n\r\n secondPieGradientLeft: baseThemeVariables.primary,\r\n secondPieGradientRight: baseThemeVariables.primary,\r\n secondPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n\r\n thirdPieGradientLeft: baseThemeVariables.warning,\r\n thirdPieGradientRight: baseThemeVariables.warning,\r\n thirdPieShadowColor: 'rgba(0, 0, 0, 0)',\r\n },\r\n\r\n earningLine: {\r\n gradFrom: baseThemeVariables.primary,\r\n gradTo: baseThemeVariables.primary,\r\n\r\n tooltipTextColor: baseThemeVariables.fgText,\r\n tooltipFontWeight: 'normal',\r\n tooltipFontSize: '16',\r\n tooltipBg: baseThemeVariables.bg,\r\n tooltipBorderColor: baseThemeVariables.border2,\r\n tooltipBorderWidth: '1',\r\n tooltipExtraCss: 'border-radius: 10px; padding: 4px 16px;',\r\n },\r\n },\r\n} as NbJSThemeOptions;\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n NbActionsModule,\r\n NbLayoutModule,\r\n NbMenuModule,\r\n NbSearchModule,\r\n NbSidebarModule,\r\n NbUserModule,\r\n NbContextMenuModule,\r\n NbButtonModule,\r\n NbSelectModule,\r\n NbIconModule,\r\n NbThemeModule,\r\n} from '@nebular/theme';\r\nimport { NbEvaIconsModule } from '@nebular/eva-icons';\r\nimport { NbSecurityModule } from '@nebular/security';\r\n\r\nimport {\r\n FooterComponent,\r\n HeaderComponent,\r\n SearchInputComponent,\r\n TinyMCEComponent,\r\n} from './components';\r\nimport {\r\n CapitalizePipe,\r\n PluralPipe,\r\n RoundPipe,\r\n TimingPipe,\r\n NumberWithCommasPipe,\r\n} from './pipes';\r\nimport {\r\n OneColumnLayoutComponent,\r\n ThreeColumnsLayoutComponent,\r\n TwoColumnsLayoutComponent,\r\n SimpleLayoutComponent,\r\n} from './layouts';\r\nimport { DEFAULT_THEME } from './styles/theme.default';\r\nimport { COSMIC_THEME } from './styles/theme.cosmic';\r\nimport { CORPORATE_THEME } from './styles/theme.corporate';\r\nimport { DARK_THEME } from './styles/theme.dark';\r\n\r\nconst NB_MODULES = [\r\n NbLayoutModule,\r\n NbMenuModule,\r\n NbUserModule,\r\n NbActionsModule,\r\n NbSearchModule,\r\n NbSidebarModule,\r\n NbContextMenuModule,\r\n NbSecurityModule,\r\n NbButtonModule,\r\n NbSelectModule,\r\n NbIconModule,\r\n NbEvaIconsModule,\r\n];\r\nconst COMPONENTS = [\r\n HeaderComponent,\r\n FooterComponent,\r\n SearchInputComponent,\r\n TinyMCEComponent,\r\n OneColumnLayoutComponent,\r\n ThreeColumnsLayoutComponent,\r\n TwoColumnsLayoutComponent,\r\n SimpleLayoutComponent,\r\n];\r\nconst PIPES = [\r\n CapitalizePipe,\r\n PluralPipe,\r\n RoundPipe,\r\n TimingPipe,\r\n NumberWithCommasPipe,\r\n];\r\n\r\n@NgModule({\r\n imports: [CommonModule, ...NB_MODULES],\r\n exports: [CommonModule, ...PIPES, ...COMPONENTS],\r\n declarations: [...COMPONENTS, ...PIPES],\r\n})\r\nexport class ThemeModule {\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: ThemeModule,\r\n providers: [\r\n ...NbThemeModule.forRoot(\r\n {\r\n name: 'default',\r\n },\r\n [ DEFAULT_THEME, COSMIC_THEME, CORPORATE_THEME, DARK_THEME ],\r\n ).providers,\r\n ],\r\n };\r\n }\r\n}\r\n","import { ExtraOptions, RouterModule, Routes } from '@angular/router';\r\nimport { NgModule } from '@angular/core';\r\nimport { SimpleLayoutComponent } from './@theme/layouts/simple-layout/simple.layout';\r\n\r\nexport const routes: Routes = [ \r\n {\r\n path: '',\r\n loadChildren: () => import('./main/main.module')\r\n .then(m => m.MainModule),\r\n },\r\n {\r\n path: 'user',\r\n loadChildren: () => import('./main/user/user.module')\r\n .then(m => m.UserModule),\r\n },\r\n {\r\n path: '**',\r\n redirectTo: '',\r\n pathMatch: 'full',\r\n },\r\n];\r\n\r\nconst config: ExtraOptions = {\r\n useHash: false,\r\n};\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, config)],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {\r\n}\r\n","/**\r\n * @license\r\n * Copyright Akveo. All Rights Reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n */\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { AnalyticsService } from './@core/utils/analytics.service';\r\nimport { SeoService } from './@core/utils/seo.service';\r\nimport { NbIconLibraries } from '@nebular/theme';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MyMenuService } from './tool/service/menu.service';\r\n\r\n@Component({\r\n selector: 'ngx-app',\r\n template: `\r\n `,\r\n styleUrls: []\r\n})\r\nexport class AppComponent implements OnInit {\r\n\r\n constructor(private analytics: AnalyticsService, \r\n private seoService: SeoService,\r\n private http: HttpClient,\r\n private nbIconLibraries:NbIconLibraries,\r\n private ms :MyMenuService,) {\r\n }\r\n\r\n version = null\r\n IntervalRef = null\r\n\r\n ngOnInit(): void {\r\n this.analytics.trackPageViews();\r\n this.seoService.trackCanonicalChanges();\r\n\r\n // let my = this\r\n // this.IntervalRef = setInterval(()=>{\r\n // my.GetVersion()\r\n \r\n\r\n // },180000)\r\n\r\n }\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","/**\r\n * @license\r\n * Copyright Akveo. All Rights Reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n */\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { NgModule } from '@angular/core';\r\nimport { HttpClientModule,HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { CoreModule } from './@core/core.module';\r\nimport { ThemeModule } from './@theme/theme.module';\r\nimport { AppComponent } from './app.component';\r\nimport { LoginComponent } from './main/user/login/login.component';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { NgxDropzoneModule } from 'ngx-dropzone'; \r\nimport { NgxQRCodeModule } from '@techiediaries/ngx-qrcode';\r\nimport { UserModule } from './main/user/user.module';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { MainModule } from './main/main.module';\r\nimport { MainRoutingModule } from './main/main-routing.module';\r\nimport { ToolModule } from './tool/tool.module';\r\nimport { ApiService } from '../app/tool/service/api.service';\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport { BasicAuthHtppInterceptorService } from './basic-auth-htpp-interceptor.service';\r\nimport {\r\n NbActionsModule,\r\n NbButtonModule,\r\n NbCardModule,\r\n NbCheckboxModule,\r\n NbIconModule,\r\n NbInputModule,\r\n NbRadioModule,\r\n NbSelectModule,\r\n NbUserModule,\r\n NbPopoverModule,\r\n NbTabsetModule,\r\n NbTooltipModule,\r\n NbSpinnerModule,\r\n\r\n NbChatModule,\r\n NbTimepickerModule,\r\n NbDatepickerModule,\r\n NbDialogModule,\r\n NbMenuModule,\r\n NbToastrModule,\r\n NbWindowModule,\r\n NbSidebarModule,\r\n NbLayoutModule,\r\n} from '@nebular/theme';\r\nimport { NbPasswordAuthStrategy, NbAuthModule ,NbAuthJWTToken} from '@nebular/auth';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent\r\n ],\r\n imports: [ \r\n \r\n FormsModule,\r\n NbActionsModule,\r\n NbButtonModule,\r\n NbCardModule,\r\n NbCheckboxModule,\r\n NbIconModule,\r\n NbInputModule,\r\n NbRadioModule,\r\n NbSelectModule,\r\n NbUserModule,\r\n NbPopoverModule,\r\n NbTabsetModule,\r\n NbTooltipModule,\r\n NbSpinnerModule,\r\n NgxQRCodeModule,\r\n NgxDropzoneModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n AppRoutingModule,\r\n NbLayoutModule,\r\n NbSidebarModule.forRoot(),\r\n NbMenuModule.forRoot(),\r\n NbDatepickerModule.forRoot(),\r\n NbTimepickerModule.forRoot(),\r\n NbDialogModule.forRoot(),\r\n NbWindowModule.forRoot(),\r\n NbToastrModule.forRoot(),\r\n NbChatModule.forRoot({\r\n messageGoogleMapKey: 'AIzaSyA_wNuCzia92MAmdLRzmqitRGvCF7wCZPY',\r\n }),\r\n CoreModule.forRoot(),\r\n ThemeModule.forRoot(),\r\n ToolModule.forRoot(),\r\n MainModule\r\n \r\n ],\r\n providers: [\r\n CookieService,\r\n ApiService,\r\n {\r\n \r\n /*加入此設定*/\r\n provide: HTTP_INTERCEPTORS, \r\n useClass: BasicAuthHtppInterceptorService, \r\n multi: true \r\n },\r\n CurrencyPipe\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpInterceptor, HttpRequest, HttpHandler } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BasicAuthHtppInterceptorService implements HttpInterceptor {\r\n\r\n constructor() { }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler) {\r\n req = req.clone({\r\n setHeaders: { /*有關CORS的參數就可以改在這裡了*/\r\n 'Access-Control-Allow-Origin': '*',\r\n 'Access-Control-Allow-Credentials': 'true',\r\n 'Access-Control-Allow-Methods': 'GET, PUT, POST, DELETE, OPTIONS, PATCH',\r\n 'Access-Control-Max-Age': '86400'\r\n }\r\n });\r\n return next.handle(req);\r\n\r\n }\r\n}","import { RouterModule, Routes } from '@angular/router';\r\nimport { NgModule } from '@angular/core';\r\nimport { MainComponent } from './main.component'\r\nimport { HomeComponent } from './sys/home/home.component'\r\n\r\nconst routes: Routes = [{\r\n path: '', \r\n component: MainComponent,\r\n children: [ \r\n \r\n {\r\n path: 'Home',\r\n component: HomeComponent,\r\n },\r\n {\r\n path: '',\r\n redirectTo: 'Home',\r\n pathMatch: 'full',\r\n },\r\n // {\r\n // path: '**',\r\n // redirectTo: '/Product/Setting',\r\n // }, \r\n {\r\n path: 'Store',\r\n loadChildren: () => import('./storemanage/storemanage.module')\r\n .then(m => m.StoreManageModule),\r\n },\r\n {\r\n path: 'Auth', loadChildren: () => import( './auth-manage/auth-manage.module')\r\n .then(m => m.AuthManageModule),\r\n },\r\n \r\n {\r\n path: 'Product',\r\n loadChildren: () => import( './product/product.module')\r\n .then(m => m.ProductModule),\r\n }, \r\n {\r\n path: 'Report', loadChildren: () => import( './report/report.module')\r\n .then(m => m.ReportModule),\r\n },\r\n {\r\n path: 'PosOrder', loadChildren: () => import( './pos-order/pos-order.module')\r\n .then(m => m.PosOrderModule),\r\n },\r\n\r\n //--------------------------------------------\r\n\r\n {\r\n path: 'order', loadChildren: () => import('./order/order.module')\r\n .then(m => m.OrderModule),\r\n },\r\n {\r\n path: 'EOS', loadChildren: () => import('./EOS/EOS.module')\r\n .then(m => m.EOSModule),\r\n },\r\n\r\n\r\n // {\r\n // path: 'basic-info',\r\n // loadChildren: () => import('./basic-info/basic-info.module')\r\n // .then(m => m.BasicInfoModule),\r\n // }, \r\n // {\r\n // path: 'permissiongroup',\r\n // loadChildren: () => import('./permissiongroup/permissiongroup.module')\r\n // .then(m => m.PermissionGroupModule),\r\n // },\r\n \r\n // {\r\n // path: 'pospermissions',\r\n // loadChildren: () => import('./pospermissions/pospermissions.module')\r\n // .then(m => m.POSPermissionsModule),\r\n // },\r\n\r\n ],\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class MainRoutingModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MyMenuService } from '../tool/service/menu.service';\r\nimport { SubscriptService } from '../tool/service/header.service';\r\nimport { LayoutService } from '../@core/utils';\r\nimport { NbSidebarService, NbMenuService, NbMenuItem } from '@nebular/theme';\r\nimport { Router } from '@angular/router';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { HostListener } from '@angular/core';\r\n\r\n//2024.02.20 增加側選單內間距,點選後需要自動收合\r\n@Component({\r\n selector: 'ngx-main',\r\n template: `\r\n\r\n \r\n \r\n \r\n \r\n \r\n`,\r\n styleUrls: []\r\n})\r\nexport class MainComponent implements OnInit {\r\n\r\n info = {\r\n menu : []\r\n }\r\n menuSub : any\r\n\r\n //2024.02.20 增加側選單點選後需要自動收合\r\n autoCollapse: boolean = this.isPhone();\r\n\r\n constructor(\r\n private sidebarService: NbSidebarService,\r\n private layoutService: LayoutService,\r\n private ms :MyMenuService,\r\n private hs: SubscriptService,\r\n private menuService: NbMenuService,\r\n private _router: Router,\r\n private cookieService: CookieService,) { \r\n\r\n this.menuSub = this.menuService.onItemClick().subscribe((event) => { \r\n if (event.tag == \"sys-menu\") { \r\n \r\n this.hs.AuthChangeSubject.next(event)\r\n\r\n if(window.innerWidth < 750 || this.isPhone()){\r\n console.log('...')\r\n this.sidebarService.toggle(true, 'menu-sidebar');\r\n } \r\n\r\n this.layoutService.changeLayoutSize();\r\n \r\n //失效登出\r\n if(!this.cookieService.get('ORG_Company_ID')){\r\n this.ms.logout();\r\n }\r\n }\r\n\r\n \r\n\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.menuSub) {\r\n this.menuSub.unsubscribe();\r\n }\r\n }\r\n ngOnInit(): void {\r\n this.ms.getMenu()\r\n this.info.menu = this.ms.menu \r\n }\r\n\r\n //2024.02.20 監聽螢幕尺寸變更\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event) {\r\n this.autoCollapse = this.isPhone();\r\n console.log(this.autoCollapse)\r\n }\r\n\r\n //判斷手機版\r\n isPhone() {\r\n let useragent = navigator.userAgent;\r\n let rules = ['WebView', '(iPhone|iPod|iPad)(?!.*Safari\\/)', 'Android.*(wv|\\.0\\.0\\.0)'];\r\n let regex = new RegExp(`(${rules.join('|')})`, 'ig');\r\n let ans = Boolean(useragent.match(regex));\r\n return ans\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n\r\n\r\n","\r\nimport { NgModule } from '@angular/core';\r\nimport { ThemeModule } from '../@theme/theme.module';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n NbMenuModule,\r\n NbButtonModule,\r\n NbCardModule,\r\n NbIconModule,\r\n NbDialogModule,\r\n NbAccordionModule\r\n} from '@nebular/theme';\r\n\r\n\r\nimport { MainComponent } from './main.component';\r\nimport { MainRoutingModule } from './main-routing.module';\r\nimport { HomeComponent } from './sys/home/home.component';\r\nimport { Ng2SmartTableModule, ɵw as PagerModule } from 'ng2-smart-table';\r\n\r\n\r\n@NgModule({ \r\n imports: [\r\n CommonModule,\r\n NbCardModule,\r\n NbButtonModule,\r\n NbDialogModule.forChild(),\r\n NbIconModule,\r\n NbAccordionModule,\r\n ThemeModule,\r\n NbMenuModule,\r\n MainRoutingModule,\r\n Ng2SmartTableModule,\r\n PagerModule\r\n ],\r\n declarations: [\r\n MainComponent,\r\n HomeComponent,\r\n \r\n \r\n ],\r\n})\r\nexport class MainModule {\r\n\r\n \r\n} \r\n\r\n\r\n","\r\n \r\n 合約提醒:\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n 公告 \r\n \r\n\r\n\r\n\r\n \r\n\r\n \r\n \r\n
\r\n
{{ item.Title}}
\r\n
{{ item.StartDateTime }}
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n        {{item.Content}}\r\n      
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { LocalDataSource, ServerDataSource } from \"ng2-smart-table\";\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ngx-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.scss']\r\n})\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class HomeComponent implements OnInit {\r\n\r\n dataList = []\r\n Source: LocalDataSource ;\r\n\r\n //基本資料\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n\r\n cntractRd:string;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n\r\n ) { \r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'));\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID = (cookie_sid && cookie_sid != '') ? parseInt(cookie_sid) : null\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.GetMainList();\r\n\r\n let PerPage = 10\r\n this.Source = new LocalDataSource();\r\n this.Source.setPaging(1,PerPage,false)\r\n\r\n this.GetContractRd();\r\n }\r\n\r\n\r\n onPage(v){\r\n console.log('page',v)\r\n this.GetMainList()\r\n }\r\n\r\n GetMainList(){\r\n let perPage = 10\r\n let page = 1;\r\n if (this.Source && this.Source.getPaging()) {\r\n let pagingConf = this.Source.getPaging();\r\n page = pagingConf.page\r\n perPage = pagingConf.perPage\r\n }\r\n\r\n console.log(\"第幾頁\",page)\r\n\r\n this.http.get(\"api/News/GetNews?\"+ \r\n \"Page=\"+page+\r\n \"&PerPage=\"+perPage+\r\n \"&IsDelete=true\").subscribe({\r\n next: (data) => {\r\n if (data.RESULT != null && data.RESULT != \"\") {\r\n alert(data.RESULT);\r\n } else {\r\n this.dataList = data.LIST\r\n\r\n if(!this.dataList)\r\n this.dataList=[]\r\n\r\n\r\n this.dataList.forEach(x=>{\r\n if(x.StoreList){\r\n x.StoreShow = x.StoreList.map(x=>x.StoreName).join(\"、\")\r\n } \r\n })\r\n\r\n this.Source.load(new Array(data.Total));\r\n \r\n \r\n }\r\n },\r\n error: (error) => {},\r\n });\r\n\r\n }\r\n\r\n GetContractRd(){\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n let sid = (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null \r\n this.http.post('api/Contract/ContractRemind',{\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: sid == 0 ? null : sid,\r\n }).subscribe({\r\n next: data=> {\r\n console.log( data.TipContant);\r\n let my = document.getElementById('contract');\r\n let mytext = document.getElementById('contracttext');\r\n if(data.TipContant){\r\n mytext.innerHTML= '合約提醒:
'+data.TipContant;\r\n my.style.display='flex';\r\n }else{\r\n my.style.display='none';\r\n\r\n }\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n },\r\n )};\r\n \r\n\r\n \r\n\r\n}\r\n","import { AfterViewInit, Component, OnDestroy,Input, Output, EventEmitter} from '@angular/core';\r\nimport { NbThemeService } from '@nebular/theme';\r\n\r\n@Component({\r\n selector: 'app-my-bar',\r\n template: `\r\n
\r\n
\r\n
\r\n `,\r\n})\r\nexport class MyBarComponent implements AfterViewInit, OnDestroy {\r\n\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: lineData; //已選資料_來源\r\n // {\r\n // x: 標\r\n // line:資料\r\n // title:小標\r\n // }\r\n\r\n options: any = {};\r\n themeSubscription: any;\r\n\r\n constructor(private theme: NbThemeService) {\r\n }\r\n\r\n\r\n\r\n\r\n\r\n ngAfterViewInit() {\r\n\r\n \r\n\r\n\r\n\r\n this.themeSubscription = this.theme.getJsTheme().subscribe(config => {\r\n\r\n const colors = config.variables;\r\n const echarts: any = config.variables.echarts;\r\n\r\n this.options = {\r\n backgroundColor: echarts.bg,\r\n color: [colors.warningLight, colors.infoLight, colors.dangerLight, colors.successLight, colors.primaryLight],\r\n legend: {\r\n data: this.orgData.line.map(x=>x.name)\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n formatter: function (params) {\r\n \r\n\r\n let title = ['本期','上期']\r\n\r\n let html = `${params[0].axisValue}
`\r\n\r\n for (const idx in params) {\r\n let x = params[idx]\r\n html+= `\r\n ${x.marker} ${title[idx]}\r\n ${x.value}
\r\n `\r\n\r\n }\r\n return html;\r\n },\r\n },\r\n grid: {\r\n \r\n left: '3%',\r\n right: '4%',\r\n bottom: '3%',\r\n containLabel: true\r\n },\r\n toolbox: {\r\n // feature: {\r\n // saveAsImage: {} //圖片下載功能XD\r\n // }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n \r\n data: this.orgData.x,//['11/18', '11/19', '11/20', '11/21', '11/22', '11/23', '11/24'],\r\n axisLabel: {\r\n interval: 0,\r\n rotate: 30 \r\n }\r\n },\r\n \r\n yAxis: {\r\n type: 'value'\r\n },\r\n series: this.orgData.line.map(x=>{\r\n return {\r\n id: x.name,\r\n name: x.name,\r\n type: 'bar',\r\n data: x.value\r\n }\r\n })\r\n \r\n };\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.themeSubscription.unsubscribe();\r\n }\r\n}\r\n\r\n\r\nclass lineData {\r\n x:string[] = [\"e\"]\r\n line:{ \r\n name:string ,\r\n value:number[]\r\n }[]\r\n}\r\n","import { AfterViewInit, Component, OnDestroy,Input, Output, EventEmitter} from '@angular/core';\r\nimport { NbThemeService } from '@nebular/theme';\r\n\r\n@Component({\r\n selector: 'app-my-line',\r\n template: `\r\n
\r\n
\r\n
\r\n `,\r\n})\r\nexport class MyLineComponent implements AfterViewInit, OnDestroy {\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: lineData; //已選資料_來源\r\n // {\r\n // x: 標\r\n // line:資料\r\n // title:小標\r\n // }\r\n\r\n options: any = {};\r\n themeSubscription: any;\r\n\r\n constructor(private theme: NbThemeService) {\r\n }\r\n\r\n\r\n\r\n\r\n\r\n ngAfterViewInit() {\r\n\r\n \r\n\r\n\r\n\r\n this.themeSubscription = this.theme.getJsTheme().subscribe(config => {\r\n\r\n const colors = config.variables;\r\n const echarts: any = config.variables.echarts;\r\n\r\n this.options = {\r\n backgroundColor: echarts.bg,\r\n color: [colors.warningLight, colors.infoLight, colors.dangerLight, colors.successLight, colors.primaryLight],\r\n legend: {\r\n data: this.orgData.line.map(x=>x.name)\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n formatter: function (params) {\r\n \r\n\r\n let title = ['本期','上期']\r\n\r\n let html = `${params[0].axisValue}
`\r\n\r\n for (const idx in params) {\r\n let x = params[idx]\r\n html+= `\r\n ${x.marker} ${title[idx]}\r\n ${x.value}
\r\n `\r\n\r\n }\r\n return html;\r\n },\r\n },\r\n grid: {\r\n \r\n left: '3%',\r\n right: '4%',\r\n bottom: '3%',\r\n containLabel: true\r\n },\r\n toolbox: {\r\n // feature: {\r\n // saveAsImage: {} //圖片下載功能XD\r\n // }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n boundaryGap: false,\r\n data: this.orgData.x,//['11/18', '11/19', '11/20', '11/21', '11/22', '11/23', '11/24']\r\n },\r\n yAxis: {\r\n type: 'value'\r\n },\r\n series: this.orgData.line.map(x=>{\r\n return {\r\n id: x.name,\r\n name: x.name,\r\n type: 'line',\r\n data: x.value\r\n }\r\n })\r\n // [\r\n // {\r\n // name: '本期',\r\n // type: 'line',\r\n // stack: 'Total',\r\n // data: [120, 132, 101, 134, 90, 230, 210]\r\n // },\r\n // {\r\n // name: '上期',\r\n // type: 'line',\r\n // stack: 'Total',\r\n // data: [220, 182, 191, 234, 290, 330, 310]\r\n // }, \r\n // ]\r\n };\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.themeSubscription.unsubscribe();\r\n }\r\n}\r\n\r\n\r\nclass lineData {\r\n x:string[] = [\"e\"]\r\n line:{ \r\n name:string ,\r\n value:number[]\r\n }[]\r\n}","import { AfterViewInit, Component, OnDestroy ,Input, Output,EventEmitter} from '@angular/core';\r\nimport { NbThemeService } from '@nebular/theme';\r\nimport * as internal from 'stream';\r\n\r\n@Component({\r\n selector: 'app-my-pie',\r\n template: `\r\n
\r\n
\r\n
\r\n `,\r\n})\r\nexport class MyPieComponent implements AfterViewInit, OnDestroy {\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: pieData; //已選資料_來源\r\n @Input() title: string; \r\n @Input() datatitle: string; \r\n\r\n\r\n options: any = {};\r\n themeSubscription: any;\r\n\r\n constructor(private theme: NbThemeService) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.themeSubscription = this.theme.getJsTheme().subscribe(config => {\r\n\r\n const colors = config.variables;\r\n const echarts: any = config.variables.echarts;\r\n\r\n this.options = {\r\n title: {\r\n text: this.title,\r\n left: 'center',\r\n top:0,\r\n \r\n },\r\n height:250,\r\n color: [colors.warningLight, colors.infoLight, colors.dangerLight, colors.successLight, colors.primaryLight],\r\n tooltip: {\r\n trigger: 'item',\r\n formatter: '{a}
{b} : {c} ({d}%)',\r\n },\r\n legend: {\r\n orient: 'vertical',\r\n left: 'left',\r\n data: ['USA', 'Germany', 'France', 'Canada', 'Russia'],\r\n // textStyle: {\r\n // color: echarts.textColor,\r\n // },\r\n },\r\n series: [\r\n {\r\n top:10,\r\n name: this.datatitle ? this.datatitle : this.title,\r\n type: 'pie',\r\n data: this.orgData ,\r\n // [\r\n // { name: '银河帝国5:迈向基地', value: 18.8 },\r\n // { name: '俞军产品方法论', value: 25.3 },\r\n // { name: '艺术的逃难', value: 12.2 },\r\n // { name: '第一次世界大战回忆录(全五卷)', value: 1.3 },\r\n // { name: 'Scrum 精髓', value: 1.2 },\r\n // { name: '其它', value: 15.7 }\r\n // ],\r\n radius: [30, 100],\r\n itemStyle: {\r\n borderColor: '#fff',\r\n borderWidth: 1\r\n },\r\n label: {\r\n alignTo: 'labelLine',\r\n // formatter: '{name|{b}}\\n{time|{c} 小时}',\r\n minMargin: 15,\r\n bleedMargin: 10,\r\n lineHeight: 15,\r\n rich: {\r\n time: {\r\n fontSize: 10,\r\n color: '#999'\r\n }\r\n }\r\n },\r\n labelLine: {\r\n length: 15,\r\n length2: 0,\r\n maxSurfaceAngle: 80\r\n },\r\n labelLayout: function (params) {\r\n const isLeft = params.labelRect.x < 100 / 2;\r\n const points = params.labelLinePoints as number[][];\r\n // Update the end point.\r\n points[2][0] = isLeft\r\n ? params.labelRect.x\r\n : params.labelRect.x + params.labelRect.width;\r\n \r\n return {\r\n labelLinePoints: points\r\n };\r\n },\r\n \r\n \r\n },\r\n ],\r\n };\r\n });\r\n\r\n\r\n\r\n\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.themeSubscription.unsubscribe();\r\n }\r\n}\r\n\r\n\r\nclass pieData {\r\n name:string\r\n value:internal\r\n}\r\n","import { AfterViewInit, Component, OnDestroy,Input, Output, EventEmitter} from '@angular/core';\r\nimport { NbThemeService } from '@nebular/theme';\r\n\r\n@Component({\r\n selector: 'app-my-point',\r\n template: `\r\n
\r\n
\r\n
\r\n `,\r\n})\r\nexport class MyPointComponent implements AfterViewInit, OnDestroy {\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: lineData; //已選資料_來源\r\n\r\n options: any = {};\r\n themeSubscription: any;\r\n\r\n constructor(private theme: NbThemeService) {\r\n }\r\n\r\n\r\n\r\n\r\n\r\n ngAfterViewInit() {\r\n\r\n \r\n\r\n\r\n\r\n this.themeSubscription = this.theme.getJsTheme().subscribe(config => {\r\n\r\n const colors = config.variables;\r\n const echarts: any = config.variables.echarts;\r\n\r\n\r\n const dataBJ = [\r\n [1, 55, 9, 56, 0.46, 18, 6, '良'],\r\n [2, 25, 11, 21, 0.65, 34, 9, '优'],\r\n [3, 56, 7, 63, 0.3, 14, 5, '良'],\r\n [4, 33, 7, 29, 0.33, 16, 6, '优'],\r\n [5, 42, 24, 44, 0.76, 40, 16, '优'],\r\n [6, 82, 58, 90, 1.77, 68, 33, '良'],\r\n [7, 74, 49, 77, 1.46, 48, 27, '良'],\r\n [8, 78, 55, 80, 1.29, 59, 29, '良'],\r\n [9, 267, 216, 280, 4.8, 108, 64, '重度污染'],\r\n [10, 185, 127, 216, 2.52, 61, 27, '中度污染'],\r\n [11, 39, 19, 38, 0.57, 31, 15, '优'],\r\n [12, 41, 11, 40, 0.43, 21, 7, '优'],\r\n [13, 64, 38, 74, 1.04, 46, 22, '良'],\r\n [14, 108, 79, 120, 1.7, 75, 41, '轻度污染'],\r\n [15, 108, 63, 116, 1.48, 44, 26, '轻度污染'],\r\n [16, 33, 6, 29, 0.34, 13, 5, '优'],\r\n [17, 94, 66, 110, 1.54, 62, 31, '良'],\r\n [18, 186, 142, 192, 3.88, 93, 79, '中度污染'],\r\n [19, 57, 31, 54, 0.96, 32, 14, '良'],\r\n [20, 22, 8, 17, 0.48, 23, 10, '优'],\r\n [21, 39, 15, 36, 0.61, 29, 13, '优'],\r\n [22, 94, 69, 114, 2.08, 73, 39, '良'],\r\n [23, 99, 73, 110, 2.43, 76, 48, '良'],\r\n [24, 31, 12, 30, 0.5, 32, 16, '优'],\r\n [25, 42, 27, 43, 1, 53, 22, '优'],\r\n [26, 154, 117, 157, 3.05, 92, 58, '中度污染'],\r\n [27, 234, 185, 230, 4.09, 123, 69, '重度污染'],\r\n [28, 160, 120, 186, 2.77, 91, 50, '中度污染'],\r\n [29, 134, 96, 165, 2.76, 83, 41, '轻度污染'],\r\n [30, 52, 24, 60, 1.03, 50, 21, '良'],\r\n [31, 46, 5, 49, 0.28, 10, 6, '优']\r\n ];\r\n const dataGZ = [\r\n [1, 26, 37, 27, 1.163, 27, 13, '优'],\r\n [2, 85, 62, 71, 1.195, 60, 8, '良'],\r\n [3, 78, 38, 74, 1.363, 37, 7, '良'],\r\n [4, 21, 21, 36, 0.634, 40, 9, '优'],\r\n [5, 41, 42, 46, 0.915, 81, 13, '优'],\r\n [6, 56, 52, 69, 1.067, 92, 16, '良'],\r\n [7, 64, 30, 28, 0.924, 51, 2, '良'],\r\n [8, 55, 48, 74, 1.236, 75, 26, '良'],\r\n [9, 76, 85, 113, 1.237, 114, 27, '良'],\r\n [10, 91, 81, 104, 1.041, 56, 40, '良'],\r\n [11, 84, 39, 60, 0.964, 25, 11, '良'],\r\n [12, 64, 51, 101, 0.862, 58, 23, '良'],\r\n [13, 70, 69, 120, 1.198, 65, 36, '良'],\r\n [14, 77, 105, 178, 2.549, 64, 16, '良'],\r\n [15, 109, 68, 87, 0.996, 74, 29, '轻度污染'],\r\n [16, 73, 68, 97, 0.905, 51, 34, '良'],\r\n [17, 54, 27, 47, 0.592, 53, 12, '良'],\r\n [18, 51, 61, 97, 0.811, 65, 19, '良'],\r\n [19, 91, 71, 121, 1.374, 43, 18, '良'],\r\n [20, 73, 102, 182, 2.787, 44, 19, '良'],\r\n [21, 73, 50, 76, 0.717, 31, 20, '良'],\r\n [22, 84, 94, 140, 2.238, 68, 18, '良'],\r\n [23, 93, 77, 104, 1.165, 53, 7, '良'],\r\n [24, 99, 130, 227, 3.97, 55, 15, '良'],\r\n [25, 146, 84, 139, 1.094, 40, 17, '轻度污染'],\r\n [26, 113, 108, 137, 1.481, 48, 15, '轻度污染'],\r\n [27, 81, 48, 62, 1.619, 26, 3, '良'],\r\n [28, 56, 48, 68, 1.336, 37, 9, '良'],\r\n [29, 82, 92, 174, 3.29, 0, 13, '良'],\r\n [30, 106, 116, 188, 3.628, 101, 16, '轻度污染'],\r\n [31, 118, 50, 0, 1.383, 76, 11, '轻度污染']\r\n ];\r\n const dataSH = [\r\n [1, 91, 45, 125, 0.82, 34, 23, '良'],\r\n [2, 65, 27, 78, 0.86, 45, 29, '良'],\r\n [3, 83, 60, 84, 1.09, 73, 27, '良'],\r\n [4, 109, 81, 121, 1.28, 68, 51, '轻度污染'],\r\n [5, 106, 77, 114, 1.07, 55, 51, '轻度污染'],\r\n [6, 109, 81, 121, 1.28, 68, 51, '轻度污染'],\r\n [7, 106, 77, 114, 1.07, 55, 51, '轻度污染'],\r\n [8, 89, 65, 78, 0.86, 51, 26, '良'],\r\n [9, 53, 33, 47, 0.64, 50, 17, '良'],\r\n [10, 80, 55, 80, 1.01, 75, 24, '良'],\r\n [11, 117, 81, 124, 1.03, 45, 24, '轻度污染'],\r\n [12, 99, 71, 142, 1.1, 62, 42, '良'],\r\n [13, 95, 69, 130, 1.28, 74, 50, '良'],\r\n [14, 116, 87, 131, 1.47, 84, 40, '轻度污染'],\r\n [15, 108, 80, 121, 1.3, 85, 37, '轻度污染'],\r\n [16, 134, 83, 167, 1.16, 57, 43, '轻度污染'],\r\n [17, 79, 43, 107, 1.05, 59, 37, '良'],\r\n [18, 71, 46, 89, 0.86, 64, 25, '良'],\r\n [19, 97, 71, 113, 1.17, 88, 31, '良'],\r\n [20, 84, 57, 91, 0.85, 55, 31, '良'],\r\n [21, 87, 63, 101, 0.9, 56, 41, '良'],\r\n [22, 104, 77, 119, 1.09, 73, 48, '轻度污染'],\r\n [23, 87, 62, 100, 1, 72, 28, '良'],\r\n [24, 168, 128, 172, 1.49, 97, 56, '中度污染'],\r\n [25, 65, 45, 51, 0.74, 39, 17, '良'],\r\n [26, 39, 24, 38, 0.61, 47, 17, '优'],\r\n [27, 39, 24, 39, 0.59, 50, 19, '优'],\r\n [28, 93, 68, 96, 1.05, 79, 29, '良'],\r\n [29, 188, 143, 197, 1.66, 99, 51, '中度污染'],\r\n [30, 174, 131, 174, 1.55, 108, 50, '中度污染'],\r\n [31, 187, 143, 201, 1.39, 89, 53, '中度污染']\r\n ];\r\n const schema = [\r\n { name: 'date', index: 0, text: '日' },\r\n { name: 'AQIindex', index: 1, text: 'AQI指数' },\r\n { name: 'PM25', index: 2, text: 'PM2.5' },\r\n { name: 'PM10', index: 3, text: 'PM10' },\r\n { name: 'CO', index: 4, text: '一氧化碳(CO)' },\r\n { name: 'NO2', index: 5, text: '二氧化氮(NO2)' },\r\n { name: 'SO2', index: 6, text: '二氧化硫(SO2)' }\r\n ];\r\n const itemStyle = {\r\n opacity: 0.8,\r\n shadowBlur: 10,\r\n shadowOffsetX: 0,\r\n shadowOffsetY: 0,\r\n shadowColor: 'rgba(0,0,0,0.3)'\r\n };\r\n this.options = {\r\n color: [colors.warningLight, colors.infoLight, colors.dangerLight, colors.successLight, colors.primaryLight],\r\n \r\n legend: {\r\n top: 10,\r\n data: ['商品類A', '商品類B', '商品類C'],\r\n textStyle: {\r\n fontSize: 16\r\n }\r\n },\r\n grid: {\r\n left: '10%',\r\n right: 150,\r\n top: '18%',\r\n bottom: '10%'\r\n },\r\n tooltip: {\r\n formatter: function (param) {\r\n var value = param.value;\r\n // prettier-ignore\r\n return '
'\r\n + param.seriesName + ' ' + value[0] + '日:'\r\n + value[7]\r\n + '
'\r\n + schema[1].text + ':' + value[1] + '
'\r\n + schema[2].text + ':' + value[2] + '
'\r\n + schema[3].text + ':' + value[3] + '
'\r\n + schema[4].text + ':' + value[4] + '
'\r\n + schema[5].text + ':' + value[5] + '
'\r\n + schema[6].text + ':' + value[6] + '
';\r\n }\r\n },\r\n xAxis: {\r\n type: 'value',\r\n name: '點選率',\r\n nameGap: 16,\r\n nameTextStyle: {\r\n fontSize: 16\r\n },\r\n splitLine: {\r\n show: true\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n name: '單價',\r\n nameLocation: 'end',\r\n nameGap: 20,\r\n nameTextStyle: {\r\n fontSize: 16\r\n },\r\n splitLine: {\r\n show: false\r\n }\r\n },\r\n visualMap: [\r\n {\r\n left: 'right',\r\n bottom: '5%',\r\n itemWidth: 30,\r\n itemHeight: 180, \r\n text: ['圆形大小:銷售量'],\r\n textGap: 10,\r\n controller: {\r\n inRange: {\r\n color: ['#39C']\r\n },\r\n },\r\n \r\n dimension: 2,\r\n inRange: {\r\n symbolSize: [10, 60]\r\n },\r\n \r\n },\r\n \r\n ],\r\n series: [\r\n {\r\n name: '商品類A',\r\n type: 'scatter',\r\n itemStyle: itemStyle,\r\n data: dataBJ\r\n },\r\n {\r\n name: '商品類B',\r\n type: 'scatter',\r\n itemStyle: itemStyle,\r\n data: dataSH\r\n },\r\n {\r\n name: '商品類C',\r\n type: 'scatter',\r\n itemStyle: itemStyle,\r\n data: dataGZ\r\n }\r\n ]\r\n };\r\n\r\n \r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.themeSubscription.unsubscribe();\r\n }\r\n}\r\n\r\n\r\nclass lineData {\r\n x:string[] = [\"e\"]\r\n line:{ \r\n name:string ,\r\n value:number[]\r\n }[]\r\n}","\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n {{ day.DD }}\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{mon}}
\r\n
\r\n
\r\n
","import { Component, OnInit, Output, EventEmitter, Input,OnChanges } from '@angular/core';\r\n\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-calendar',\r\n templateUrl: './calendar.component.html',\r\n styleUrls: ['./calendar.component.css']\r\n})\r\n\r\nexport class CalendarComponent implements OnInit ,OnChanges{\r\n @Output() emitDate = new EventEmitter();\r\n @Output() emitMonth = new EventEmitter();\r\n @Output() emitDateDrow = new EventEmitter();\r\n\r\n @Input() infoList = Array();\r\n\r\n\r\n YYYY = null;\r\n MM = null;\r\n DD = null;\r\n\r\n\r\n typeMonthFlag = false;//日曆與月曆\r\n printDays: Array>;\r\n printMonth: Array;\r\n\r\n infoColor=[\r\n \"#338a96\",\r\n \"rgb(64 176 191 / 85%)\",\r\n \"#52cbdb\",\r\n \"rgb(64 176 191 / 45%)\"\r\n ]\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n this.createCale()\r\n this.insertInfo();\r\n }\r\n\r\n ngOnChanges(){\r\n console.log('change infoList',this.infoList)\r\n this.insertInfo();\r\n }\r\n\r\n //建立日歷\r\n createCale() {\r\n\r\n let date = new Date();\r\n //date.setFullYear(y);\r\n // date.setMonth(m);\r\n\r\n\r\n\r\n //預設當前時段\r\n if (this.YYYY == null) this.YYYY = date.getFullYear();\r\n //else date.setFullYear(this.YYYY)\r\n if (this.MM == null) this.MM = date.getMonth();\r\n //else date.setMonth(this.MM)\r\n if (this.DD == null) this.DD = date.getDate();\r\n\r\n\r\n //每月日數陣列\r\n let monthDays = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);\r\n\r\n // 閏年判斷\t \r\n let mYear = this.YYYY;\r\n if (((mYear % 4 == 0) && (mYear % 100 != 0)) || (mYear % 400 == 0)) monthDays[1] = 29;\r\n\r\n //起始星期幾判斷 \r\n let a = new Date(this.YYYY + '/' + (this.MM + 1) + '/01');\r\n let startWeekday = a.getDay();\r\n console.log(this.YYYY + '/' + (this.MM + 1) + '/' + this.DD + '星' + a + '..' + a.getDay())\r\n\r\n\r\n //-----日曆內容填入------ \r\n let dayList = [];\r\n //1號之前的空白星期 當前格式日 一 二... 如替換成 一 二 三...weekday須減1\r\n for (let i = 0; i < startWeekday; i++) {\r\n let obj = new PrintDayObj();\r\n obj.DD=\"\";\r\n dayList.push(obj);\r\n }\r\n\r\n //日期碼 \r\n for (let i = 1; i <= monthDays[this.MM]; i++) {\r\n let obj = new PrintDayObj();\r\n obj.DD=i.toString();\r\n dayList.push(obj);\r\n }\r\n //分割成七天一列\r\n this.printDays = _.chunk(dayList, 7)\r\n\r\n //補上剩下的空白\r\n let empty = 7 - this.printDays[this.printDays.length - 1].length\r\n for (let i = 0; i < empty; i++) {\r\n\r\n let obj = new PrintDayObj();\r\n obj.DD=\"\";\r\n this.printDays[this.printDays.length - 1].push(obj);\r\n\r\n }\r\n\r\n\r\n //月份顯示\r\n this.printMonth = ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月']\r\n this.printMonth = _.chunk(this.printMonth, 3)\r\n\r\n\r\n this.emitMonth.emit(this.YYYY+'/'+(this.MM+1)+'/01')\r\n\r\n }\r\n\r\n //下一月\r\n setdown() {\r\n if (this.MM == 0) {\r\n this.MM = 11;\r\n this.YYYY--;\r\n }\r\n else this.MM--;\r\n\r\n this.createCale();\r\n }\r\n\r\n //上一月\r\n setup() {\r\n if (this.MM == 11) {\r\n this.MM = 0;\r\n this.YYYY++;\r\n }\r\n else this.MM++;\r\n\r\n this.createCale();\r\n }\r\n\r\n //下一年\r\n setYdown() {\r\n this.YYYY--;\r\n this.createCale();\r\n }\r\n\r\n //上一年\r\n setYup() {\r\n this.YYYY++;\r\n this.createCale();\r\n }\r\n\r\n //選擇月份\r\n selectM(m) {\r\n\r\n this.MM = m;\r\n this.createCale();\r\n this.typeMonthFlag = false\r\n }\r\n\r\n //選擇日期\r\n selectD(dayDate) {\r\n this.DD = dayDate.DD\r\n \r\n let obj:Output_InfoListObj = {\r\n date: this.YYYY + '/' + (this.MM < 9 ? '0' : '') + (this.MM + 1) + '/' + (this.DD < 9 ? '0' : '') + this.DD,\r\n content: dayDate.info\r\n }\r\n this.emitDate.emit(obj);\r\n console.log('送出:',obj)\r\n\r\n }\r\n\r\n //寫入Info資訊\r\n insertInfo(){\r\n\r\n //歸零\r\n _.each(this.printDays,row => { \r\n row.forEach(day=> {\r\n day.info =[]\r\n })\r\n })\r\n\r\n \r\n let infoList= this.infoList\r\n infoList.forEach(x=>{\r\n let infoDay = new Date(x.date)\r\n \r\n _.each(this.printDays,row => { \r\n let dayObj = _.find(row, day => { \r\n \r\n if( infoDay.getFullYear() == this.YYYY &&\r\n infoDay.getMonth() == this.MM &&\r\n infoDay.getDate().toString() == day.DD\r\n ){ \r\n return true //找到目標日\r\n } \r\n })\r\n\r\n \r\n if(dayObj){\r\n dayObj.info = x.content;\r\n console.log('insert!!');\r\n return false //跳出整個迴圈\r\n }\r\n\r\n });\r\n \r\n })\r\n\r\n console.log('printDays', this.printDays)\r\n\r\n \r\n\r\n\r\n\r\n\r\n }\r\n\r\n //托拽開始\r\n dragstart_handler(ev,info,date) {\r\n let json = JSON.stringify({\r\n date:date,\r\n info:info\r\n })\r\n\r\n ev.dataTransfer.setData(\"text/plain\", json);\r\n \r\n }\r\n\r\n //托拽結束\r\n drop_handler(ev,tdData){\r\n ev.preventDefault();\r\n let jsonStr = ev.dataTransfer.getData(\"text\");\r\n // console.log('time',time)\r\n // console.log('tdData',tdData)\r\n let data = JSON.parse( jsonStr )\r\n console.log('data',data)\r\n \r\n if(data.date == tdData.DD) return\r\n\r\n if(tdData.info){ \r\n tdData.info.push({\r\n color: data.info.color ? data.info.color : null,\r\n msg : data.info.msg,\r\n id:data.id\r\n })\r\n }\r\n else{\r\n tdData = _.assign(tdData, {info:[{\r\n color: data.info.color ? data.info.color : null,\r\n msg : data.info.msg,\r\n id:data.id\r\n }]})\r\n }\r\n\r\n let obj:Output_InfoListObj = {\r\n date: this.YYYY + '/' + (this.MM < 9 ? '0' : '') + (this.MM + 1) + '/' + (this.DD < 9 ? '0' : '') + tdData.DD,\r\n content: tdData.info\r\n }\r\n\r\n this.emitDateDrow.emit(obj);\r\n\r\n console.log(\"GO\",obj)\r\n }\r\n //托拽移入過\r\n dragover_handler(ev){\r\n ev.preventDefault();\r\n ev.dataTransfer.dropEffect = \"move\"\r\n }\r\n\r\n}\r\n\r\n//日曆內容\r\nclass PrintDayObj {\r\n DD: string;\r\n info: Array;\r\n}\r\n\r\n//日曆資訊格式\r\nclass InfoObj {\r\n color: string;\r\n msg: string;\r\n id:string;\r\n}\r\n\r\n//對外接收資料的格式\r\nclass Input_InfoListObj {\r\n date: string;\r\n content: Array;\r\n}\r\n\r\n\r\n//對外送出資料格式\r\nclass Output_InfoListObj {\r\n date: string;\r\n content: Array;\r\n}\r\n\r\n\r\n","\r\n\r\n
\r\n \r\n \r\n {{ moTitle }}商品 \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n
\r\n \r\n \r\n \r\n {{ e.content }}\r\n \r\n\r\n \r\n \r\n {{ e.content }}\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {{ e.content }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n \r\n 請將圖片拖放置此,或點此開啟資料夾 !\r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n {{\r\n tax.content\r\n }}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{\r\n tax.content\r\n }}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
販售門市
\r\n {{mealData.ProductStoreMapJsonData}}\r\n \r\n 管理\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
售價門市
\r\n \r\n \r\n {{item.storeName}}\r\n \r\n 管理\r\n 刪除\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n {{title2}}\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n 設定供應時間 \r\n \r\n
\r\n 星期一\r\n 星期二\r\n 星期三\r\n 星期四\r\n 星期五\r\n 星期六\r\n 星期日\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n Input,\r\n ViewChild,\r\n TemplateRef,\r\n} from \"@angular/core\";\r\nimport { NbDialogService } from \"@nebular/theme\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport * as _ from \"lodash\";\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: \"app-edit-EOS-product\",\r\n templateUrl: \"./edit-EOS-product.component.html\",\r\n styleUrls: [\"./edit-EOS-product.component.scss\"],\r\n})\r\nexport class EditEOSProductComponent implements OnInit {\r\n @Output() emitList = new EventEmitter();\r\n @Output() emitClose = new EventEmitter();\r\n @Input() orgData: ModifyPRDProductReq; //已選資料_來源\r\n @Input() info: {\r\n IsLoding:boolean,\r\n moType: number; //目前編輯狀態 1.新增 2.編輯 3.複製 4.查看\r\n orgType: number; //來源類型 1.設定檔&設定檔附加品項中 2.菜單檔 3.使用中菜單檔&使用中菜單檔附加品項中 \r\n pdShowType: number; //1.商品 2.附加品項中商品\r\n pfType:number;//平台類型 1.POS 2.享online 3.uber 4.panda\r\n ORG_Store_ID:null\r\n groupList: selectData[]; \r\n isChange_Group : boolean;\r\n EOSProductGroupNo:null\r\n PRDMenuProductGroupNo:null\r\n storeList: selectData[];\r\n \r\n\r\n //-------old------------\r\n PRDProductGroupNo: null;\r\n EOSProductNo: null;\r\n };\r\n //標題\r\n moTitle: string;\r\n title2: string;\r\n //主要資料\r\n mealData: ModifyPRDProductReq;\r\n\r\n //操作者資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n authChangeSub:any;\r\n\r\n //圖片\r\n testFiles;\r\n\r\n //---------------選項列表-------->--------------//\r\n //稅率列表\r\n TaxRateList = [];\r\n TaxTypeList = [\r\n { value: 1, content: \"免稅\" },\r\n { value: 2, content: \"應稅\" },\r\n { value: 3, content: \"零稅\" },\r\n ];\r\n\r\n //-------<--------選項列表----------------------//\r\n\r\n @ViewChild(\"Modal\") Modal: TemplateRef;\r\n modalRef = null; //談窗鉤子\r\n @ViewChild(\"DayModal\") DayModal: TemplateRef;\r\n dayModalRef = null; //談窗鉤子\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private dialogService: NbDialogService,\r\n private cookieService: CookieService,\r\n private datePipe: DatePipe,\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null\r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID')\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID= (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null\r\n }\r\n \r\n ngOnInit(): void {\r\n for (let i = 1; i < 100; i++) {\r\n this.TaxRateList.push({ value: i, content: i + \"%\" });\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info, this.orgData)\r\n }\r\n\r\n onOpen(info, data) {\r\n if (info) this.info = info;\r\n\r\n this.mealData = new ModifyPRDProductReq();\r\n this.getStoreList()\r\n this.toSalesOutletDetail(data);\r\n this.toStoreSaleCashDetail(data);\r\n \r\n if (this.info.moType == 1) {\r\n this.moTitle = \"新增\";\r\n\r\n this.mealData.EOSProductGroupNo = this.info.EOSProductGroupNo\r\n this.mealData.PRDMenuProductGroupNo= this.info.PRDMenuProductGroupNo\r\n }\r\n else if (this.info.moType == 2) {\r\n this.moTitle = \"編輯\";\r\n if (data) {\r\n this.toProductDetail(data);\r\n } \r\n }\r\n else if (this.info.moType == 3) {\r\n this.moTitle = \"複製\";\r\n if (data) {\r\n this.toProductDetail(data);\r\n this.mealData.EOSProductNo = null;\r\n }\r\n\r\n if(this.info.orgType == 1){\r\n this.getStoreList()\r\n }\r\n\r\n }\r\n else if (this.info.moType == 4) {\r\n this.moTitle = \"查看\";\r\n if (data) {\r\n this.toProductDetail(data);\r\n } else {\r\n this.getProductDetail(null);\r\n }\r\n }\r\n\r\n if (this.info.orgType == 1) {\r\n this.title2 = \"預設資料\";\r\n }\r\n else if (this.info.orgType == 2) {\r\n this.title2 = \"可調整資料\";\r\n if(!this.mealData.SupplyQTY)\r\n this.mealData.SupplyQTY = 10000;\r\n }\r\n else if (this.info.orgType == 3) {\r\n this.title2 = \"販售資料\";\r\n }\r\n\r\n if(!info.pdShowType){\r\n info.pdShowType=1\r\n }\r\n\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n onSave() {\r\n if (!this.mealData.Cash && this.mealData.Cash != 0) {\r\n alert(\"商品原價必須填!\");\r\n return null;\r\n }\r\n if (!this.mealData.SaleCash && this.mealData.SaleCash != 0) {\r\n alert(\"商品售價必須填!\");\r\n return null;\r\n }\r\n\r\n //轉換營業時段\r\n if (this.mealData.supplyPeriod && this.mealData.supplyPeriod.length ) {\r\n if (this.mealData.supplyPeriod.length >= 1) {\r\n this.mealData.FirstSupplyStartTime = \r\n this.datePipe.transform(this.mealData.supplyPeriod[0].startTime, 'yyyy/MM/dd HH:mm:ss')\r\n \r\n this.mealData.FirstSupplyEndTime = \r\n this.datePipe.transform(this.mealData.supplyPeriod[0].endTime, 'yyyy/MM/dd HH:mm:ss')\r\n\r\n if(this.mealData.supplyPeriod[0].startTime > this.mealData.supplyPeriod[0].endTime){\r\n alert(\"開始日期不可大於結束日期!\")\r\n return \r\n }\r\n }\r\n \r\n\r\n\r\n if (this.mealData.supplyPeriod.length >= 2) {\r\n this.mealData.SecondSupplyStartTime = \r\n this.datePipe.transform(this.mealData.supplyPeriod[1].startTime, 'yyyy/MM/dd HH:mm:ss')\r\n this.mealData.SecondSupplyEndTime = \r\n this.datePipe.transform(this.mealData.supplyPeriod[1].endTime, 'yyyy/MM/dd HH:mm:ss')\r\n\r\n if(this.mealData.supplyPeriod[1].startTime > this.mealData.supplyPeriod[1].endTime){\r\n alert(\"開始日期不可大於結束日期!\")\r\n return\r\n }\r\n }\r\n }\r\n else{\r\n this.mealData.FirstSupplyStartTime = \"\"\r\n this.mealData.FirstSupplyEndTime = \"\"\r\n this.mealData.SecondSupplyStartTime = \"\"\r\n this.mealData.SecondSupplyEndTime = \"\"\r\n }\r\n\r\n \r\n \r\n //圖片處理\r\n if (this.mealData.files && this.mealData.files.length > 0) {\r\n this.mealData.Image = this.mealData.files[0].path;\r\n }\r\n\r\n //加購品項\r\n let attachItemGroups: string = \"\";\r\n if (this.mealData.AttachItemGroupJsonDatas) {\r\n let data = _.orderBy(this.mealData.AttachItemGroupJsonDatas,x=>['Sorting'], ['asc'])\r\n data.forEach((item) => {\r\n if (attachItemGroups == \"\") {\r\n attachItemGroups = item.PRDMenuAttachItemGroupNo;\r\n } else {\r\n attachItemGroups = attachItemGroups + \",\" + item.PRDMenuAttachItemGroupNo;\r\n }\r\n\r\n item.Sorting = item.Sorting*1\r\n });\r\n }\r\n this.mealData.AttachItemGroupJsonData = attachItemGroups;\r\n\r\n let ProductStoreCashData = this.mealData.ProductStoreCashMapJsonData ?\r\n this.mealData.ProductStoreCashMapJsonData\r\n .filter(item => item.SaleCash !== null) \r\n .map(({ storeName, ...rest }) => ({ ...rest })) :\r\n [];\r\n\r\n if (this.mealData.ProductStoreMapJsonDatas === undefined){\r\n this.mealData.ProductStoreMapJsonDatas = []\r\n }\r\n \r\n //格式處理\r\n let Main = {\r\n ProductName: this.mealData.ProductName,\r\n ProductContant: this.mealData.ProductContant,\r\n Image: this.mealData.Image,\r\n TaxRate: this.mealData.TaxRate,\r\n TaxType: this.mealData.TaxType,\r\n Cash: this.mealData.Cash,\r\n }\r\n let Detail = {\r\n SaleCash: this.mealData.SaleCash,\r\n Sorting: this.mealData.Sorting,\r\n IsOpenTakeout: this.mealData.IsOpenTakeout,\r\n IsOpenDelivery: this.mealData.IsOpenDelivery,\r\n IsOpenDining: this.mealData.IsOpenDining,\r\n IsOpenSelfPickup: this.mealData.IsOpenSelfPickup,\r\n IsOpenReserveDining: this.mealData.IsOpenReserveDining,\r\n SupplyQTY: this.mealData.SupplyQTY,\r\n UplimitQTY: this.mealData.UplimitQTY,\r\n SupplyDay: this.mealData.SupplyDay,\r\n FirstSupplyStartTime: this.mealData.FirstSupplyStartTime,\r\n FirstSupplyEndTime: this.mealData.FirstSupplyEndTime,\r\n SecondSupplyStartTime: this.mealData.SecondSupplyStartTime,\r\n SecondSupplyEndTime: this.mealData.SecondSupplyEndTime,\r\n AttachItemGroupJsonDatas: this.mealData.AttachItemGroupJsonDatas,\r\n ProductStoreMapJsonDatas: this.mealData.ProductStoreMapJsonDatas,\r\n ProductStoreCashMapJsonDatas: ProductStoreCashData,\r\n }\r\n this.mealData.Main = Main\r\n this.mealData.Detail = Detail\r\n this.mealData.ORG_Company_ID = this.ORG_Company_ID;\r\n this.mealData.USR_EmployeeInfo_ID = parseInt(this.USR_EmployeeInfo_ID);\r\n this.mealData.USR_AccountInfo_ID = this.USR_AccountInfo_ID; //建立者;\r\n\r\n console.log('送出',this.mealData)\r\n\r\n this.emitList.emit(this.mealData);\r\n // this.modalRef.close();\r\n }\r\n\r\n\r\n //商品彈窗 新增供應時段\r\n addSupplyData() {\r\n if (this.mealData.supplyPeriod == null) {\r\n this.mealData.supplyPeriod = [];\r\n }\r\n if (this.mealData.supplyPeriod.length >= 2) {\r\n return;\r\n }\r\n this.mealData.supplyPeriod.push(new supplyPeriod());\r\n }\r\n\r\n //商品彈窗 刪除供應時段\r\n delSupplyData(idx) {\r\n this.mealData.supplyPeriod.splice(idx, 1);\r\n }\r\n\r\n //商品彈窗 供應日期 設定\r\n addSupplyTime() {\r\n this.dayModalRef = this.dialogService.open(this.DayModal, {});\r\n }\r\n //商品彈窗 供應日期 顯示\r\n showSupplyTime() {\r\n var str = [];\r\n var value = [];\r\n this.mealData.SupplyDay = \"\";\r\n if (this.mealData.supplyTimeMonday) {\r\n str.push(\"星期一\");\r\n value.push(\"1\");\r\n }\r\n if (this.mealData.supplyTimeTuesday) {\r\n str.push(\"星期二\");\r\n value.push(\"2\");\r\n }\r\n if (this.mealData.supplyTimeWednesday) {\r\n str.push(\"星期三\");\r\n value.push(\"3\");\r\n }\r\n if (this.mealData.supplyTimeThursday) {\r\n str.push(\"星期四\");\r\n value.push(\"4\");\r\n }\r\n if (this.mealData.supplyTimeFriday) {\r\n str.push(\"星期五\");\r\n value.push(\"5\");\r\n }\r\n if (this.mealData.supplyTimeSaturday) {\r\n str.push(\"星期六\");\r\n value.push(\"6\");\r\n }\r\n if (this.mealData.supplyTimeSunday) {\r\n str.push(\"星期日\");\r\n value.push(\"7\");\r\n }\r\n if (str.length > 0) {\r\n //去掉第一個逗號\r\n this.mealData.supplyDayStr = str.join(\",\");\r\n this.mealData.SupplyDay = value.join(\",\");\r\n }\r\n\r\n if (this.dayModalRef)\r\n this.dayModalRef.close()\r\n\r\n return str;\r\n }\r\n\r\n //商品彈窗 上傳圖片用\r\n fileToBase64 = (file: File): Promise => {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => resolve(reader.result.toString());\r\n reader.onerror = (error) => reject(error);\r\n });\r\n };\r\n\r\n\r\n //商品彈窗 圖片上傳\r\n onSelect(event,dataBox) {\r\n console.log(event);\r\n dataBox.files = [];\r\n if (event.addedFiles == null || event.addedFiles.length == 0) {\r\n return;\r\n }\r\n\r\n \r\n dataBox.files.push(event.addedFiles[0]);\r\n \r\n const formData = new FormData();\r\n\r\n for (var i = 0; i < dataBox.files.length; i++) {\r\n formData.append(\"file[]\", dataBox.files[i]);\r\n }\r\n\r\n let imgdata = {}\r\n if (dataBox.files && dataBox.files[0]) {\r\n for (let i = 0; i < dataBox.files.length; i++) {\r\n this.fileToBase64(dataBox.files[i]).then((result) => {\r\n const base64String = result;\r\n\r\n imgdata = {\r\n base64: base64String,\r\n functionType: \"1\",\r\n ORG_Company_ID:this.ORG_Company_ID,\r\n ORG_Store_ID:this.info.ORG_Store_ID\r\n };\r\n \r\n this.info.IsLoding = true;\r\n this.http\r\n .post(\"api/ImageUpload/ImageUpload\", imgdata)\r\n .subscribe({\r\n next: (data) => {\r\n console.log(data);\r\n dataBox.files[0].path = data.path;\r\n console.log(dataBox.files[0].path);\r\n this.info.IsLoding = false;\r\n },\r\n error: (error) => {\r\n console.error(\"There was an error!\", error);\r\n },\r\n });\r\n });\r\n }\r\n }\r\n\r\n\r\n \r\n }\r\n\r\n //商品彈窗 圖片清除\r\n onRemove(event,dataBox) {\r\n console.log(event);\r\n // dataBox.files.splice(dataBox.files.indexOf(event), 1);\r\n dataBox.files = []\r\n if(dataBox.Image)\r\n dataBox.Image = '' \r\n \r\n event.stopPropagation();\r\n }\r\n\r\n //商品彈窗 變更目標商店\r\n onSelectStore(){\r\n this.getGroupList()\r\n }\r\n\r\n\r\n //處理商品資料\r\n toProductDetail(data) {\r\n \r\n if(this.info.orgType != 3 ) {\r\n this.mealData = Object.assign(this.mealData, data,data.Main,data.Detail)\r\n }\r\n else{\r\n this.mealData = Object.assign(this.mealData, data)\r\n }\r\n\r\n //如果供應時間有值,拆解字串\r\n if (\r\n this.mealData.SupplyDay != null &&\r\n this.mealData.SupplyDay != \"\"\r\n ) {\r\n const myArray = this.mealData.SupplyDay.split(\",\");\r\n myArray.forEach((day) => {\r\n if (\"1\" == day) {\r\n this.mealData.supplyTimeMonday = true;\r\n }\r\n if (\"2\" == day) {\r\n this.mealData.supplyTimeTuesday = true;\r\n }\r\n if (\"3\" == day) {\r\n this.mealData.supplyTimeWednesday = true;\r\n }\r\n if (\"4\" == day) {\r\n this.mealData.supplyTimeThursday = true;\r\n }\r\n if (\"5\" == day) {\r\n this.mealData.supplyTimeFriday = true;\r\n }\r\n if (\"6\" == day) {\r\n this.mealData.supplyTimeSaturday = true;\r\n }\r\n if (\"7\" == day) {\r\n this.mealData.supplyTimeSunday = true;\r\n }\r\n });\r\n this.showSupplyTime()\r\n }\r\n //填充供應時間\r\n this.mealData.supplyPeriod = [];\r\n if (this.mealData.FirstSupplyStartTime != null) {\r\n var tmp = new supplyPeriod();\r\n tmp.startTime = new Date(this.mealData.FirstSupplyStartTime);\r\n tmp.endTime = new Date(this.mealData.FirstSupplyEndTime);\r\n this.mealData.supplyPeriod.push(tmp);\r\n\r\n if (this.mealData.SecondSupplyStartTime != null) {\r\n var tmp = new supplyPeriod();\r\n tmp.startTime = new Date(this.mealData.SecondSupplyStartTime);\r\n tmp.endTime = new Date(this.mealData.SecondSupplyEndTime);\r\n this.mealData.supplyPeriod.push(tmp);\r\n }\r\n }\r\n }\r\n\r\n \r\n async toSalesOutletDetail(data) {\r\n await this.getStoreList();\r\n \r\n \r\n if (this.info.moType != 1){\r\n\r\n const numbersSet = new Set(data.Detail.ProductStoreMapJsonDatas?.[0]?.ORG_Store_ID.split(',') || []);\r\n\r\n const showData = this.info.storeList.map((store, index) => ({\r\n storeID: store.value,\r\n storeName: store.content,\r\n Sort: index + 1,\r\n IsSell: numbersSet.has(store.value.toString()),\r\n }));\r\n \r\n this.mealData.ProductStoreMapJsonData = showData\r\n .filter(item => item.IsSell)\r\n .map(item => item.storeName)\r\n .join('、');\r\n\r\n this.SalesOutletSetting.showData = showData;\r\n } else {\r\n const showData = this.info.storeList.map((store, index) => ({\r\n storeID: store.value,\r\n storeName: store.content,\r\n Sort: index + 1,\r\n IsSell: false,\r\n }));\r\n\r\n this.SalesOutletSetting.showData = showData;\r\n }\r\n }\r\n\r\n\r\n async toStoreSaleCashDetail(data) {\r\n await this.getStoreList();\r\n const storeSaleCash = data.Detail.ProductStoreCashMapJsonDatas\r\n this.mealData.ProductStoreCashMapJsonData = []\r\n let i = 0\r\n let showData = this.info.storeList.map((store, index) => ({\r\n ORG_Store_ID: store.value,\r\n storeName: store.content,\r\n Sort: index + 1,\r\n SaleCash: null,\r\n }));\r\n\r\n if (this.info.moType != 1){\r\n\r\n if (storeSaleCash){\r\n storeSaleCash.forEach(x => {\r\n const orgStoreIdStr = storeSaleCash?.[i]?.ORG_Store_ID.toString();\r\n const numbersSet = new Set(orgStoreIdStr.split(',') || []);\r\n\r\n let storename = [];\r\n\r\n numbersSet.forEach(y => {\r\n let obj = showData.find(z => z.ORG_Store_ID == y)\r\n if (obj){\r\n obj.SaleCash = x.SaleCash\r\n }\r\n let obj2 = this.info.storeList.find(z => z.value == y)\r\n if (obj2){\r\n storename.push({storeName: obj2.content})\r\n }\r\n })\r\n\r\n this.mealData.ProductStoreCashMapJsonData.push({\r\n EOSProductNo: this.mealData.EOSProductNo,\r\n ORG_Company_ID: this.mealData.ORG_Company_ID,\r\n ORG_Store_ID: orgStoreIdStr,\r\n SaleCash: storeSaleCash?.[i]?.SaleCash,\r\n Sorting: 1,\r\n IsDelete: false,\r\n storeName: storename.map(obj => obj.storeName).join('、'),\r\n })\r\n\r\n this.mealData.ProductStoreCashMapJsonData = this.mealData.ProductStoreCashMapJsonData.filter( data => data.SaleCash !== null)\r\n i++\r\n });\r\n }\r\n \r\n this.StoreSaleCashSetting.showData = showData;\r\n\r\n } else {\r\n const showData = this.info.storeList.map((store, index) => ({\r\n storeID: store.value,\r\n storeName: store.content,\r\n Sort: index + 1,\r\n SaleCash: null,\r\n }));\r\n\r\n this.StoreSaleCashSetting.showData = showData;\r\n }\r\n }\r\n\r\n\r\n //附加品項分類 \r\n @ViewChild('SelectAttMMO_Tmp', { static: false }) SelectAttMMO_Tmp\r\n SelectAttMMO = {\r\n info: {\r\n },\r\n isShow: false,\r\n data: null,\r\n other: {\r\n attList: [],\r\n },\r\n onOpen: () => {\r\n let my = this.SelectAttMMO\r\n my.info = {\r\n }\r\n\r\n my.data = []\r\n // if (this.mealData.AttachItemGroupJsonDatas){\r\n // my.data = _.cloneDeep(this.mealData.AttachItemGroupJsonDatas);\r\n // my.data.forEach(x=>{\r\n // x.No = x.PRDMenuAttachItemGroupNo \r\n // })\r\n // }\r\n\r\n my.isShow = true\r\n //this.SelectAttMMO_Tmp.onOpen(my.info,pdList)\r\n },\r\n onSave: (data) => {\r\n let my = this.SelectAttMMO\r\n\r\n if (!this.mealData.AttachItemGroupJsonDatas)\r\n this.mealData.AttachItemGroupJsonDatas = []\r\n let list = []\r\n\r\n data.forEach(p=>{\r\n if(this.mealData.AttachItemGroupJsonDatas\r\n .findIndex(x=>x.PRDMenuAttachItemGroupNo==p.No)==-1){\r\n p.Sorting=0\r\n list.push(p)\r\n }\r\n })\r\n \r\n this.mealData.AttachItemGroupJsonDatas =\r\n this.mealData.AttachItemGroupJsonDatas.concat(list) \r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n }\r\n }\r\n\r\n\r\n //附加品項群組 選擇\r\n @ViewChild(\"SelectAttGMO_Tmp\", { static: false }) SelectAttGMO_Tmp;\r\n SelectAttGM = {\r\n info: {\r\n ORG_Company_ID: null,\r\n ORG_Store_ID: null,\r\n },\r\n isShow: false,\r\n data: null,\r\n onOpen: () => {\r\n let my = this.SelectAttGM;\r\n if (this.mealData.AttachItemGroupJsonDatas)\r\n my.data = _.cloneDeep(this.mealData.AttachItemGroupJsonDatas);\r\n\r\n my.info = {\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: this.ORG_Store_ID,\r\n }\r\n //this.SelectAttGMO_Tmp.onOpen(my.info, my.data);\r\n my.isShow = true\r\n },\r\n onSave: (data) => {\r\n let my = this.SelectAttGM;\r\n this.mealData.AttachItemGroupJsonDatas = data\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n }\r\n };\r\n\r\n\r\n //附加品項群組 查看 \r\n @ViewChild('EditEOSAttachGMO_Tmp', { static: false }) EditEOSAttachGMO_Tmp\r\n EditEOSAttachGMO = {\r\n info: {\r\n ORG_Company_ID: null,\r\n ORG_Store_ID: null,\r\n GroupNo: null,\r\n moType: null,\r\n orgType:null,\r\n },\r\n isShow: false,\r\n data: {},\r\n onOpen: (type, data) => {\r\n let my = this.EditEOSAttachGMO\r\n my.info = {\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: this.info.ORG_Store_ID,\r\n GroupNo: data ? data.PRDMenuAttachItemGroupNo ? data.PRDMenuAttachItemGroupNo : data.PRDAttachItemGroupNo : null, \r\n moType: type,\r\n orgType:this.info.orgType,\r\n }\r\n\r\n\r\n //事件會早於屬性匯入前執行 因此必須改使用參數\r\n //this.EditEOSAttachMO_Tmp.onOpen(my.info,my.data)\r\n my.isShow = true\r\n },\r\n onSave: (data) => {\r\n if (data.ORG_Store_ID != this.ORG_Store_ID) {\r\n alert(\"群組門市需要與商品門市一致!\")\r\n return\r\n }\r\n\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n }\r\n }\r\n\r\n\r\n //-----------------------販售門市設定 >------------------------------\r\n @ViewChild('SalesOutletSetting_Tmp', { static: false }) SalesOutletSetting_Tmp\r\n SalesOutletSetting = {\r\n data: null, //彈窗的項目\r\n showData:[\r\n // Idx:null,\r\n // Size:null,\r\n // TagNameList:null,\r\n ], //顯示的資料\r\n isShow: false,\r\n //管理\r\n onOpen: () => {\r\n const self = this;\r\n let my = self.SalesOutletSetting\r\n\r\n my.data = []\r\n my.data = my.showData\r\n my.isShow = true\r\n my.init()\r\n }, \r\n onSave: (data) => {\r\n const self = this;\r\n let my = self.SalesOutletSetting\r\n\r\n self.mealData.ProductStoreMapJsonData = data\r\n .filter(item => item.IsSell === true) \r\n .map(item => item.storeName)\r\n .join('、');\r\n \r\n my.showData = data\r\n my.init()\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n },\r\n init:()=>{\r\n let my = this.SalesOutletSetting\r\n this.mealData.ProductStoreMapJsonDatas=[]\r\n\r\n let test : string\r\n test = my.showData\r\n .filter(item => item.IsSell === true) \r\n .map(item => item.storeID)\r\n .join(',');\r\n\r\n this.mealData.ProductStoreMapJsonDatas.push({\r\n EOSProductNo: this.mealData.EOSProductNo,\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: test,\r\n IsSell: true,\r\n Sorting: 1,\r\n IsDelete: false,\r\n })\r\n }\r\n }\r\n\r\n\r\n //-----------------------販售門市金額設定 >------------------------------\r\n @ViewChild('StoreSaleCashSetting_Tmp', { static: false }) StoreSaleCashSetting_Tmp\r\n StoreSaleCashSetting = {\r\n data: null, //彈窗的項目\r\n showData:[\r\n // Idx:null,\r\n // Size:null,\r\n // TagNameList:null,\r\n ], //顯示的資料\r\n isShow: false,\r\n sourceData: null,\r\n cash: null,\r\n //管理\r\n onOpen: (item) => {\r\n const self = this;\r\n let my = self.StoreSaleCashSetting\r\n my.change()\r\n my.data = []\r\n\r\n my.cash = item.SaleCash\r\n my.data = my.showData\r\n if (my.cash == null){\r\n alert(\"請先填寫售價!\");\r\n return null;\r\n } \r\n my.isShow = true\r\n }, \r\n onSave: (data) => {\r\n const self = this;\r\n let my = self.StoreSaleCashSetting\r\n my.change()\r\n\r\n my.showData = data.map(e => ({\r\n ...e,\r\n SaleCash: e.isChecked \r\n ? my.cash\r\n : (e.SaleCash === my.cash ? null : e.SaleCash) \r\n }));\r\n\r\n my.init()\r\n },\r\n onDel:(item)=>{\r\n const self = this;\r\n let my = self.StoreSaleCashSetting\r\n my.change()\r\n\r\n my.showData = my.showData.map(e => ({\r\n ...e,\r\n SaleCash: e.SaleCash === item.SaleCash ? null : e.SaleCash \r\n }));\r\n my.init()\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n },\r\n onAddShow:()=>{ \r\n const self = this;\r\n let my = self.StoreSaleCashSetting\r\n\r\n self.mealData.ProductStoreCashMapJsonData.push({\r\n EOSProductNo: this.mealData.EOSProductNo,\r\n ORG_Company_ID: this.mealData.ORG_Company_ID,\r\n ORG_Store_ID: null,\r\n SaleCash: null,\r\n Sorting: 1,\r\n IsDelete: false,\r\n storeName: '',\r\n }) \r\n },\r\n change:()=>{\r\n let my = this.StoreSaleCashSetting\r\n let i = 0\r\n let changeData = this.mealData.ProductStoreCashMapJsonData.filter(item => item.ORG_Store_ID !== null);\r\n \r\n changeData.forEach(data =>{\r\n const orgStoreIdStr = data.ORG_Store_ID.toString();\r\n const numbersSet = new Set(orgStoreIdStr.split(',') || []);\r\n\r\n numbersSet.forEach( data2 => {\r\n let obj = my.showData.find(x => x.ORG_Store_ID == data2)\r\n if (obj){\r\n obj.SaleCash = data.SaleCash\r\n }\r\n })\r\n i++\r\n })\r\n },\r\n init:()=>{\r\n let my = this.StoreSaleCashSetting\r\n\r\n const groupedBySaleCash = my.showData.reduce((acc, {ORG_Store_ID, storeName, SaleCash }) => {\r\n // 如果累加器中已存在該SaleCash的條目,則追加storeName,否則新增條目\r\n if (SaleCash === null) {\r\n return acc;\r\n }\r\n if (acc[SaleCash]) {\r\n acc[SaleCash].storeName += `、${storeName}`;\r\n acc[SaleCash].ORG_Store_ID += `,${ORG_Store_ID}`;\r\n } else {\r\n acc[SaleCash] = { storeName, ORG_Store_ID: ORG_Store_ID.toString(), SaleCash };\r\n } \r\n acc[SaleCash].EOSProductNo = this.mealData.EOSProductNo\r\n acc[SaleCash].ORG_Company_ID = this.mealData.ORG_Company_ID\r\n acc[SaleCash].Sorting = 1\r\n acc[SaleCash].IsDelete = false\r\n return acc;\r\n }, {});\r\n \r\n // 將物件轉換為陣列\r\n this.mealData.ProductStoreCashMapJsonData = Object.values(groupedBySaleCash);\r\n }\r\n }\r\n\r\n\r\n //附加品項群組 刪除\r\n DelAttachG(index) {\r\n this.mealData.AttachItemGroupJsonDatas.splice(index, 1)\r\n }\r\n\r\n\r\n\r\n //取得使用中菜單檔 商品細項API\r\n getProductDetail(callback) {\r\n let par = {\r\n EOSProductGroupNo :this.info.EOSProductGroupNo, \r\n EOSProductNo :this.info.EOSProductNo,\r\n ORG_Store_ID : this.info.ORG_Store_ID \r\n }\r\n this.http\r\n .post(\r\n \"api/UsingMenu/GetProductDetail\",par)\r\n .subscribe({\r\n next: (data) => {\r\n if (data.LIST.length > 0) {\r\n let obj = data.LIST[0]\r\n obj.EOSProductGroupNo = obj.PRDProductGroupNo\r\n this.toProductDetail(obj)\r\n }\r\n },\r\n error: (error) => {\r\n console.error(\"取得商品細項API error!\", error);\r\n },\r\n });\r\n }\r\n\r\n// 修改 getStoreList() 方法使其返回一個 Promise\r\ngetStoreList(): Promise {\r\n return this.http.post('api/ORGStore/StoreList', {\r\n USR_AccountInfo_ID: this.USR_AccountInfo_ID, \r\n ORG_Company_ID: this.ORG_Company_ID.toString(),\r\n ORG_Store_ID: this.ORG_Store_ID.toString(),\r\n }).toPromise().then(data => {\r\n this.info.storeList = [];\r\n\r\n //門市共用下拉選單\r\n let Item: any = {};\r\n Item.value = 0;\r\n Item.content = '總部';\r\n this.info.storeList.push(Item);\r\n\r\n if (this.ORG_Store_ID) {\r\n //門市共用下拉選單\r\n let Item: any = {};\r\n Item.value = this.ORG_Store_ID;\r\n Item.content = data.LIST.find(x => x.ORG_Store_ID == this.ORG_Store_ID).StoreName;\r\n this.info.storeList.push(Item);\r\n } else {\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.info.storeList.push(selectItem);\r\n });\r\n }\r\n\r\n // 預設點第一個\r\n if (this.info.storeList.length > 0) {\r\n this.mealData.CopyStoreID = this.info.storeList[0].value;\r\n }\r\n\r\n return data; // 返回數據以供進一步處理\r\n }).catch(error => {\r\n console.error('There was an error!', error);\r\n throw error; // 重新拋出錯誤以便調用者處理\r\n });\r\n}\r\n\r\n\r\n\r\n //取得群組\r\n getGroupList(){\r\n\r\n if(this.info.orgType == 1){\r\n let par = {\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n CreateStore: this.mealData.CopyStoreID == null ? 0 : this.mealData.CopyStoreID,\r\n IsDelete: false,\r\n } \r\n \r\n this.http.post('api/ProductSetting/GetProductGroup', par).subscribe({\r\n next: data => {\r\n this.info.groupList = []\r\n data.LIST.forEach(element => {\r\n let item = new selectData();\r\n item.value = element.EOSProductGroupNo;\r\n item.content = element.GroupName;\r\n this.info.groupList.push(item);\r\n });\r\n\r\n if(this.info.groupList.length>0)\r\n this.mealData.EOSProductGroupNo = this.info.groupList[0].value.toString() \r\n\r\n this.info.isChange_Group = !this.info.isChange_Group\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n \r\n }\r\n });\r\n\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\nclass ModifyPRDProductReq {\r\n //商品\r\n EOSProductGroupNo: string; //\r\n PRDMenuProductGroupNo: string; //\r\n EOSProductNo: string; // \r\n Main: any;\r\n Detail: any;\r\n USR_EmployeeInfo_ID: number; //\r\n USR_AccountInfo_ID: string; //\r\n ORG_Company_ID: number; //\r\n\r\n //---------------------------------main---------------------- \r\n\r\n ProductName: string; //\r\n ProductContant: string; //\r\n Image: string; // \r\n TaxRate: number = 5; //\r\n TaxType: number = 2; //\r\n Cash: number; //\r\n\r\n //---------------------------------detail---------------------- \r\n SaleCash: number; //\r\n Sorting: number; //\r\n //2024.2.19 新增商品點餐方式(外帶/外送/內用/自取)預設開啟\r\n IsOpenTakeout: boolean = true;\r\n IsOpenDelivery: boolean = true;\r\n IsOpenDining: boolean = true;\r\n IsOpenReserveDining: boolean = false;\r\n IsOpenSelfPickup: boolean = true;\r\n SupplyQTY: number; //\r\n UplimitQTY: number; //\r\n SupplyDay: string; //供應日 用,區分,1:週一 2:週二 3:週三 4:週四 5:週五 6:週六 7:週日\r\n FirstSupplyStartTime: string; //\r\n FirstSupplyEndTime: string; //\r\n SecondSupplyStartTime: string; //\r\n SecondSupplyEndTime: string; // \r\n AttachItemGroupJsonDatas: AttachItemGroupJsonDataDTO[];\r\n AttachItemGroupJsonData: string; //已存在的附加品項清單 用,分隔\r\n ProductStoreMapJsonDatas: ProductStoreMapJsonDataDTO[]; // 販售門市對應\r\n ProductStoreMapJsonData: string; // 已存在的販售門市\r\n ProductStoreCashMapJsonDatas: ProductStoreCashMapJsonDataDTO[]; // 販售門市金額對應\r\n ProductStoreCashMapJsonData: StoreCashData[]; // 已存在的販售門市金額對應\r\n\r\n //---------------------------------顯示用----------------------\r\n supplyPeriod?: Array; //供應時段 \r\n supplyDayStr: string;\r\n supplyTimeMonday?: boolean;\r\n supplyTimeTuesday?: boolean;\r\n supplyTimeWednesday?: boolean;\r\n supplyTimeThursday?: boolean;\r\n supplyTimeFriday?: boolean;\r\n supplyTimeSaturday?: boolean;\r\n supplyTimeSunday?: boolean;\r\n files: ImageFile[] = [];\r\n\r\n //---------------------------------old----------------------\r\n ORG_Store_ID?: number; //\r\n CopyStoreID?: number; //複製用,目標商店ID\r\n\r\n}\r\n\r\nclass supplyPeriod {\r\n startTime: Date;\r\n endTime: Date;\r\n}\r\n\r\nclass AttachItemGroupJsonDataDTO {\r\n PRDMenuAttachItemGroupNo: string; //附加品項群組編號\r\n GroupName: string\r\n Content: string\r\n AttachItemKindName: string\r\n IsRequiredName: string\r\n Sorting:number\r\n}\r\n\r\n\r\nclass ImageFile extends File {\r\n path: string;\r\n}\r\n\r\nclass selectData {\r\n value: number; //\r\n content: string; //\r\n}\r\n\r\nclass ProductStoreMapJsonDataDTO {\r\n EOSProductNo: string;\r\n ORG_Company_ID: number\r\n ORG_Store_ID: string\r\n IsSell: boolean\r\n Sorting: number\r\n IsDelete: boolean\r\n}\r\n\r\nclass ProductStoreCashMapJsonDataDTO {\r\n EOSProductNo: string;\r\n ORG_Company_ID: number\r\n ORG_Store_ID: string\r\n SaleCash: number\r\n Sorting: number\r\n IsDelete: boolean\r\n}\r\n\r\nclass StoreCashData {\r\n EOSProductNo: string;\r\n ORG_Company_ID: number\r\n ORG_Store_ID: string\r\n SaleCash: number\r\n Sorting: number\r\n IsDelete: boolean\r\n storeName: string;\r\n}","\r\n\r\n \r\n \r\n 新增公告\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
門市發佈
全選\r\n \r\n \r\n
{{ e.content }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n 查看公告\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n {{orgData.announcementDetail.StoreDTOs}}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from'@angular/core';\r\nimport { HttpClient } from'@angular/common/http';\r\nimport { NbDialogService } from'@nebular/theme';\r\nimport { CookieService } from'ngx-cookie-service';\r\nimport * as _ from'lodash';\r\n\r\n@Component({\r\n selector:'app-edit-announcement',\r\n templateUrl:'./edit-announcement.component.html',\r\n styleUrls: ['./edit-announcement.component.scss']\r\n})\r\nexport class EditAnnouncementComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array;\r\n @Input() info: {\r\n IsLoding:boolean,\r\n moType: number; //目前編輯狀態 1.新增 2.編輯 3.複製 4.查看\r\n };\r\n \r\n //---------\"與父組件共用,不可改位址------->---------------------\r\n @Input() ProductList: Array; //細項清單\r\n\r\n //-----------------------彈窗----------------------------\r\n\r\n modalRef = null; //彈窗鉤子\r\n PdModalRef = null; //彈窗鉤子\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n @ViewChild('PdModal') PdModal :TemplateRef\r\n\r\n //--------------------------------------------------------\r\n //資料清單\r\n mainDataList: Array; //已選資料\r\n showList: Array;\r\n query = { //查詢選項\r\n searchKey : \"\",\r\n ORG_Company_ID:null\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n isChecked: boolean = false;\r\n announcement: null;\r\n\r\n isSelectAll: boolean = false;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) \r\n {\r\n this.query.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n ngAfterViewInit(){ \r\n this.onOpen(this.orgData)\r\n }\r\n\r\n\r\n onOpen(dataList) {\r\n if (this.info.moType ==1){\r\n this.mainDataList = _.cloneDeep(dataList.storeSelectList)\r\n this.mainDataList = this.mainDataList.map(item => {\r\n return {...item, isChecked: false};\r\n });\r\n }\r\n \r\n //開啟彈窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //處存區塊\r\n onSave() {\r\n const selectedIds = this.mainDataList\r\n .filter(item => item.isChecked)\r\n .map(item => item.value)\r\n .join(',');\r\n\r\n this.emitList.emit({\r\n announcement: this.announcement,\r\n selectedIds: selectedIds\r\n });\r\n this.modalRef.close()\r\n }\r\n\r\n\r\n toggleSelectAll() {\r\n this.mainDataList = this.mainDataList.map(item => {\r\n return { ...item, isChecked: this.isSelectAll };\r\n });\r\n }\r\n\r\n \r\n onStoreToggle() {\r\n this.isSelectAll = this.mainDataList.every(item => item.isChecked);\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n
\r\n \r\n \r\n 新增附加品項選項\r\n \r\n \r\n 編輯附加品項選項 \r\n \r\n \r\n 查看附加品項選項\r\n \r\n\r\n \r\n \r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n
PS: 修改後會連動到其他使用同選項的群組中,修改前請確認!
\r\n\r\n\r\n\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
","\r\nimport { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-edit-attach',\r\n templateUrl: './edit-attach.component.html',\r\n styleUrls: ['./edit-attach.component.scss']\r\n})\r\nexport class EditAttachComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: PRDAttachItemReq; //已選資料_來源\r\n @Input() info: {\r\n IsLoding:false,\r\n moType: number ;//目前編輯狀態 1.新增 2.編輯 4.查看\r\n selectType:number; //1:單選 2:複選\r\n isRequired:number;//必填\r\n }; \r\n @ViewChild('Modal') Modal :TemplateRef\r\n \r\n \r\n modalRef = null; //談窗鉤子\r\n\r\n //編輯附加品項談窗中 資料\r\n att: PRDAttachItemReq;\r\n\r\n\r\n //---------------選項列表-------->--------------//\r\n //稅率列表\r\n TaxRateList = []\r\n TaxTypeList = [\r\n {value:1,content:\"免稅\"},\r\n {value:2,content:\"應稅\"},\r\n {value:3,content:\"零稅\"}]\r\n //-------<--------選項列表----------------------//\r\n\r\n\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n ) {\r\n\r\n \r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n for(let i = 1 ; i<100;i++ ){\r\n this.TaxRateList.push({value:i , content:i+'%'})\r\n }\r\n }\r\n\r\n ngAfterViewInit(){ \r\n this.onOpen(this.info, this.orgData)\r\n }\r\n\r\n onOpen(info,data){\r\n if(info)\r\n this.info = info\r\n \r\n if(data)\r\n this.orgData = data\r\n\r\n\r\n this.att = new PRDAttachItemReq();\r\n \r\n\r\n\r\n if(this.info.moType == 1){\r\n //新增群組資料\r\n \r\n \r\n this.att= new PRDAttachItemReq();\r\n this.att.IsSell = true;\r\n this.att.TaxRate = 5;\r\n this.att.TaxType = 2;\r\n this.att.MinSelectTimes = this.info.isRequired == 1 ? 1 : 0;\r\n this.att.MaxSelectTimes = 1;\r\n this.att.SaleCash = 0 \r\n this.att.Cash = 0 \r\n this.att.Quantity = 1\r\n \r\n }\r\n else if(this.info.moType == 2){\r\n \r\n this.att = _.cloneDeep(this.orgData)\r\n }\r\n else if(this.info.moType == 4){\r\n this.att = _.cloneDeep(this.orgData)\r\n }\r\n \r\n\r\n \r\n \r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n\r\n \r\n }\r\n\r\n onSave(){\r\n\r\n \r\n this.emitList.emit(this.att)\r\n this.modalRef.close()\r\n }\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nexport class PRDAttachItemReq {\r\n PRDProductGroupNo: string//商品群組編號\r\n PRDAttachItemNo: string;//附加品項編號\r\n PRDProductNo: string;//商品編號 \r\n ItemName: string;//附加品項名稱\r\n TaxRate:number;\r\n TaxType:number;\r\n Note:string;\r\n Quantity: number;//數量\r\n Cash: number;//金額\r\n MaxSelectTimes:number; //最多可選\r\n MinSelectTimes:number; //最少可選\r\n SaleCash: number;//販售金額\r\n IsSell: boolean;//是否販售\r\n \r\n Sorting: number;//排序\r\n}\r\n","\r\n\r\n \r\n\r\n
\r\n \r\n \r\n 新增附加品項群組\r\n \r\n 編輯附加品項群組\r\n \r\n 複製附加品項群組\r\n \r\n 查看附加品項群組\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{ item.content }} \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n 單選\r\n 複選\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n 必選\r\n 非必選\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n
排序選項名稱數量原價售價POS、線上點餐
最多可選量
線上點餐
最少可選量
POS、
線上點餐預設
類型\r\n 停售\r\n 出單不顯示數量計入小計數量管理
\r\n \r\n {{att.Sorting}} \r\n \r\n \r\n \r\n\r\n {{att.ItemName}}\r\n
\r\n \r\n
\r\n {{att.Quantity}}\r\n \r\n {{att.Cash}}\r\n \r\n {{att.SaleCash}}\r\n \r\n \r\n {{att.MaxSelectTimes}}\r\n \r\n \r\n {{att.MinSelectTimes}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ att.PRDProductNo ? '商品' : '選項'}}\r\n \r\n {{ att.IsSell ? '否' : '是'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 查看\r\n \r\n \r\n 查看\r\n \r\n\r\n \r\n \r\n 編輯 \r\n \r\n \r\n 編輯別名 \r\n \r\n \r\n 編輯多語言 \r\n \r\n \r\n 刪除\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n 編輯-{{EditAttAKAMo.info.ProductName}}-商品別名\r\n \r\n\r\n \r\n \r\n
\r\n 選擇門市\r\n
\r\n \r\n \r\n {{ e.content }}\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n {{item.TypeName}}\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n \r\n 編輯-{{EditLanguageMo.info.ProductName}}-附加商品多語言\r\n \r\n\r\n \r\n
\r\n {{item.LanguageName}}\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { LocalDataSource } from 'ng2-smart-table';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-edit-attachgroup',\r\n templateUrl: './edit-attachgroup.component.html',\r\n styleUrls: ['./edit-attachgroup.component.scss']\r\n})\r\nexport class EditAttachgroupComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: PRDAttachItemGroupReq; //已選資料_來源\r\n @Input() info: {\r\n IsLoding:false,\r\n ORG_Company_ID: number,\r\n ORG_Store_ID:number,\r\n USR_AccountInfo_ID: string,\r\n moType: number;//目前編輯狀態 1.新增 2.編輯 3.複製\r\n orgType: number ; //來源類型 0/null 附加品項設定 1商品設定檔 2菜單檔 3使用中菜單檔\r\n GroupNo: string\r\n ModelNoList:any[]\r\n };\r\n\r\n @ViewChild('Modal') Modal: TemplateRef\r\n modalRef = null; //談窗鉤子\r\n\r\n //編輯附加品項談窗中 資料\r\n attGroup: PRDAttachItemGroupReq;\r\n\r\n //編輯附加品項談窗中 附加品項table列表\r\n attachItemSource: LocalDataSource = new LocalDataSource();\r\n\r\n //---------------選項列表-------->--------------//\r\n //稅率列表\r\n // TaxRateList = []\r\n // TaxTypeList = [\r\n // {value:1,content:\"免稅\"},\r\n // {value:2,content:\"應稅\"},\r\n // {value:3,content:\"零稅\"}]\r\n\r\n GroupList : selectData[]\r\n\r\n storeSelectList = []\r\n\r\n //-------<--------選項列表----------------------//\r\n\r\n\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.getStoreList();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info, this.orgData)\r\n \r\n }\r\n\r\n onOpen(info, data) {\r\n console.log('mydata', data)\r\n if(!this.info.orgType)\r\n this.getGroupList()\r\n\r\n if (info)\r\n this.info = info\r\n\r\n\r\n\r\n this.attGroup = new PRDAttachItemGroupReq();\r\n \r\n if (this.info.moType == 1) {\r\n\r\n //新增群組資料 \r\n \r\n this.attGroup.AttachItemKind = \"1\";\r\n this.attGroup.IsRequired = \"1\";\r\n this.attGroup.IsConsistent = \"0\";\r\n this.attGroup.PRDAttachItemList = []\r\n this.attGroup.ModelNoList = this.info.ModelNoList\r\n }\r\n\r\n\r\n else if (this.info.moType == 2 || this.info.moType == 4 ) {\r\n \r\n\r\n if (data.PRDMenuAttachItemGroupNo) {\r\n this.orgData = data\r\n this.attGroup = _.cloneDeep(this.orgData)\r\n this.attGroup.ModelNoList = this.attGroup.ModelList.map(x=>x.PRDMenuAttachItemModelNo)\r\n // this.sortItemAndReload();\r\n }\r\n else {\r\n this.GetGroupDetail(this.info.GroupNo, (rep) => {\r\n this.orgData = rep\r\n this.attGroup = _.cloneDeep(this.orgData)\r\n this.attGroup.ModelNoList = this.attGroup.ModelList.map(x=>x.PRDMenuAttachItemModelNo)\r\n // this.sortItemAndReload();\r\n })\r\n }\r\n\r\n\r\n }\r\n else if (this.info.moType == 3) {\r\n\r\n if (data.PRDMenuAttachItemGroupNo) {\r\n this.orgData = data\r\n this.attGroup = _.cloneDeep(this.orgData)\r\n this.attGroup.ModelNoList = this.attGroup.ModelList.map(x=>x.PRDMenuAttachItemModelNo)\r\n this.attGroup.PRDMenuAttachItemGroupNo = null;\r\n \r\n // this.sortItemAndReload();\r\n }\r\n else {\r\n this.GetGroupDetail(this.info.GroupNo, (rep) => {\r\n this.orgData = rep\r\n this.attGroup = _.cloneDeep(this.orgData)\r\n this.attGroup.ModelNoList = this.attGroup.ModelList.map(x=>x.PRDMenuAttachItemModelNo)\r\n this.attGroup.PRDMenuAttachItemGroupNo = null;\r\n // this.sortItemAndReload();\r\n })\r\n }\r\n\r\n }\r\n \r\n\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n\r\n\r\n\r\n }\r\n\r\n initData(data) {\r\n this.orgData = data\r\n\r\n if (this.info.moType == 2) {\r\n\r\n this.attGroup = _.cloneDeep(this.orgData)\r\n // this.sortItemAndReload();\r\n }\r\n else if (this.info.moType == 3) {\r\n\r\n this.attGroup = _.cloneDeep(this.orgData)\r\n this.attGroup.PRDMenuAttachItemGroupNo = null;\r\n // this.sortItemAndReload();\r\n }\r\n }\r\n\r\n\r\n //取得門市清單\r\n getStoreList() {//取得門市清單 USP_YOPOSWebGetStoreList\r\n this.http.post('api/ORGStore/StoreList', {\r\n ORG_Company_ID: this.info.ORG_Company_ID,\r\n ORG_Store_ID: this.info.ORG_Store_ID,\r\n }).subscribe({\r\n next: data => {\r\n\r\n this.storeSelectList = [];\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.storeSelectList.push(selectItem);\r\n });\r\n \r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n onSave() {\r\n\r\n if(this.attGroup.AttachItemKind == \"2\" ){\r\n if ( this.attGroup.IsRequired == \"1\" && this.attGroup.SelectMinLimit < 1) {\r\n alert(\"群組為必填時,最少可選數量需大於0!\")\r\n return\r\n }\r\n\r\n if( this.attGroup.SelectUpLimit != null &&\r\n this.attGroup.SelectUpLimit < this.attGroup.SelectMinLimit){\r\n alert(\"群組的最少可選數量不可大於最大可選數量!\")\r\n return\r\n }\r\n\r\n //當品項最小可選數量是1時,群組為必填,跳警告\r\n let list = this.attGroup.PRDAttachItemList\r\n if (list && list.length) {\r\n let obj = list.find(x => x.MinSelectTimes > 0)\r\n if (obj && this.attGroup.IsRequired == \"2\") {\r\n alert(\"有選項的最少可選數量>0,群組需設為必填!\")\r\n return\r\n }\r\n\r\n let obj2 = list.find(x => x.MaxSelectTimes !=null && x.MinSelectTimes > x.MaxSelectTimes)\r\n if (obj2) {\r\n alert(\"選項的最少可選數量不可大於最大可選數量!\")\r\n return\r\n }\r\n\r\n let omin = 0\r\n let omax = 0\r\n let nullmax = 0 \r\n list.forEach(x => {\r\n if(x.MinSelectTimes)\r\n omin += x.MinSelectTimes \r\n\r\n if(x.MaxSelectTimes)\r\n omax += x.MaxSelectTimes \r\n else (x.MaxSelectTimes!=0)\r\n nullmax += 1\r\n })\r\n\r\n if (this.attGroup.SelectMinLimit!= null && omin > this.attGroup.SelectMinLimit ) {\r\n alert(\"群組最少可選數量,不可小於選項的最少可選數量加總!\")\r\n return\r\n }\r\n\r\n //當選項中沒有無限數量時\r\n if (nullmax ==0 && this.attGroup.SelectUpLimit!= null && omax != this.attGroup.SelectUpLimit ) {\r\n alert(\"群組最多可選數量,不符合選項的最多可選數量加總!\")\r\n return\r\n }\r\n \r\n }\r\n\r\n \r\n\r\n\r\n }else{\r\n\r\n let list = this.attGroup.PRDAttachItemList\r\n if (list && list.length) {\r\n let objL = this.attGroup.PRDAttachItemList.filter(x=>x.IsDefault)\r\n if (objL && objL.length>1) {\r\n alert(\"單選時,只能有一個預設選項!\")\r\n return\r\n }\r\n }\r\n }\r\n\r\n\r\n this.attGroup.ORG_Company_ID = this.info.ORG_Company_ID;\r\n this.attGroup.USR_AccountInfo_ID = this.info.USR_AccountInfo_ID;\r\n\r\n this.emitList.emit(this.attGroup)\r\n // this.modalRef.close(() => { })\r\n }\r\n\r\n\r\n //取得群組資料 API\r\n GetGroupDetail(no, fun) {\r\n if(this.info.orgType == 3) {\r\n this.GetGroupDetailAPI_useing(no, fun)\r\n }\r\n else{ \r\n this.GetGroupDetailAPI_setting(no, fun)\r\n }\r\n\r\n }\r\n\r\n \r\n\r\n //取得附加品項詳資 API 設定檔\r\n GetGroupDetailAPI_setting(no, fun){\r\n this.http\r\n .get(\r\n \"api/AttachItemSetting/GetAttachItemDetail/\" + no\r\n )\r\n .subscribe({\r\n next: (data) => {\r\n if (fun)\r\n fun(data)\r\n },\r\n error: (error) => {\r\n console.error(\"取得附加品項API error!\", error);\r\n },\r\n });\r\n }\r\n\r\n //取得附加品項詳資 API 使用中檔\r\n GetGroupDetailAPI_useing(no, fun){\r\n this.http\r\n .get(\r\n \"api/UsingMenu/GetPRDAttachItemGroupDetail/\" + no\r\n )\r\n .subscribe({\r\n next: (data) => {\r\n if (data.LIST) {\r\n if (fun)\r\n fun(data.LIST[0])\r\n }\r\n },\r\n error: (error) => {\r\n console.error(\"取得附加品項API error!\", error);\r\n },\r\n });\r\n }\r\n\r\n\r\n //取得分類列表\r\n getGroupList() {\r\n let par = {\r\n ORG_Company_ID: this.info.ORG_Company_ID,\r\n IsDelete: false,\r\n }\r\n \r\n\r\n this.http.post('api/AttachItemSetting/GetAttachItemGroup', par).subscribe({\r\n next: data => {\r\n\r\n this.GroupList = [];\r\n data.LIST.forEach(element => {\r\n let item = new selectData();\r\n item.value = element.PRDMenuAttachItemModelNo;\r\n item.content = element.GroupName;\r\n this.GroupList.push(item);\r\n });\r\n\r\n\r\n },\r\n error: error => {\r\n //this.errorMessage = error.message;\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n //-------------------------附加品項細項--------------------------\r\n\r\n\r\n //附加品項細項 單選\r\n selectDefault(obj,field){\r\n let x = obj[field]\r\n\r\n if(this.attGroup.AttachItemKind == '1'){\r\n this.attGroup.PRDAttachItemList.forEach(x=>{\r\n x[field] = false \r\n }) \r\n } \r\n \r\n obj[field] = !x\r\n }\r\n\r\n \r\n\r\n\r\n //附加品項細項 刪除\r\n onDel(index: number) {\r\n this.attGroup.PRDAttachItemList.splice(index, 1);\r\n // this.sortItemAndReload();\r\n }\r\n\r\n //附加品項細項 重新計算順序 並且重載列表資料\r\n sortItemAndReload() {\r\n if (!this.attGroup.PRDAttachItemList) return\r\n var i = 1;\r\n this.attGroup.PRDAttachItemList.forEach(function (data) {\r\n data.Sorting = i;\r\n i++\r\n });\r\n this.attachItemSource.load(this.attGroup.PRDAttachItemList);\r\n }\r\n\r\n\r\n\r\n //附加品項細項 編輯\r\n @ViewChild('EditAttachMO_Tmp', { static: false }) EditAttachMO_Tmp\r\n EditAttachMO = {\r\n info: {\r\n moType: null, //1:新增 2:編輯\r\n selectType: null,\r\n isRequired: null,\r\n CreateStore:null,\r\n },\r\n isShow: false,\r\n data: null,\r\n onOpen: (type, data) => {\r\n let my = this.EditAttachMO\r\n if (data)\r\n my.data = data\r\n\r\n my.info = {\r\n moType: type,\r\n selectType: this.attGroup.AttachItemKind,\r\n isRequired: this.attGroup.IsRequired,\r\n CreateStore:null\r\n }\r\n //this.EditAttachMO_Tmp.onOpen(my.info,data)\r\n my.isShow = true\r\n },\r\n onSave: (data) => {\r\n let my = this.EditAttachMO\r\n\r\n if (my.info.moType == 1) {\r\n\r\n if (!this.attGroup.PRDAttachItemList ) \r\n this.attGroup.PRDAttachItemList = [];\r\n data.CreateStore = this.info.ORG_Store_ID\r\n\r\n this.attGroup.PRDAttachItemList.push(data)\r\n this.attGroup.PRDAttachItemList.forEach((item, index) => {\r\n item.Sorting = index + 1;\r\n });\r\n }\r\n else {\r\n _.assign(my.data, data)\r\n }\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n },\r\n onDelete:(data, isDelete) => {\r\n let str = isDelete ? '停用' : '啟用'\r\n if (window.confirm(`確認${str}?`)) {\r\n data.IsDelete = isDelete ? true : false;\r\n this.EditAttachMO.updateisdelete(isDelete);\r\n } else {\r\n data.confirm.reject();\r\n }\r\n },\r\n updateisdelete:(isDelete) => {\r\n this.http.post('api/UsingMenu/UpdateAttachStatus', {\r\n USR_AccountInfo_ID: this.info.USR_AccountInfo_ID, //建立者,\r\n ORG_Company_ID: this.info.ORG_Company_ID,\r\n ORG_Store_ID: this.info.ORG_Store_ID,\r\n IsDelete: isDelete\r\n }).subscribe({\r\n next: data => {\r\n this.onOpen(this.info, this.orgData)\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n }\r\n }\r\n\r\n\r\n //附加品項細項 選擇已存在的商品\r\n @ViewChild('ProductListMO_Tmp', { static: false }) ProductListMO_Tmp\r\n ProductListMO = {\r\n info: {\r\n },\r\n isShow: false,\r\n data: null,\r\n other: {\r\n attList: [],\r\n },\r\n onOpen: () => {\r\n let my = this.ProductListMO\r\n my.info = {\r\n }\r\n\r\n if(this.attGroup.PRDAttachItemList){\r\n my.other.attList = this.attGroup.PRDAttachItemList.filter(x => !x.PRDProductNo)\r\n my.data = this.attGroup.PRDAttachItemList.filter(x => x.PRDProductNo)\r\n my.data.forEach(x=>{\r\n x.Name = x.ItemName\r\n x.No = x.PRDProductNo \r\n Name: x.ProductName\r\n })\r\n }else{\r\n my.data = []\r\n my.other.attList = []\r\n }\r\n my.isShow = true\r\n //this.ProductListMO_Tmp.onOpen(my.info,pdList)\r\n },\r\n onSave: (data) => {\r\n let my = this.ProductListMO\r\n\r\n let list = []\r\n data.forEach(p => {\r\n list.push(p)\r\n })\r\n\r\n list.forEach(x => {\r\n if (x.SaleCash == null)\r\n x.SaleCash = 0\r\n if (x.Quantity == null)\r\n x.Quantity = 1\r\n if(this.attGroup.AttachItemKind == '2'){\r\n x.MaxSelectTimes = 1\r\n x.MinSelectTimes = 0\r\n }\r\n x.PRDProductNo = x.No\r\n x.ItemName = x.Name\r\n\r\n let p = my.data.find(p=>p.PRDProductNo == x.No)\r\n if(p)\r\n x.Sorting = p.Sorting\r\n })\r\n\r\n if(!this.attGroup.PRDAttachItemList)\r\n this.attGroup.PRDAttachItemList = []\r\n\r\n let result = _.concat(my.other.attList, list)\r\n // this.attGroup.PRDAttachItemList = _.orderBy(result,['Sorting'],['asc'])\r\n \r\n result.forEach((item, index) => {\r\n item.Sorting = index + 1;\r\n });\r\n \r\n this.attGroup.PRDAttachItemList = result;\r\n \r\n\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n }\r\n }\r\n\r\n\r\n\r\n //附加品項細項 選擇已存在的附加品項\r\n @ViewChild('AttachListMO_Tmp', { static: false }) AttachListMO_Tmp\r\n AttachListMO = {\r\n info: {\r\n ORG_Company_ID: null,\r\n },\r\n isShow: false,\r\n other: {\r\n pdList: []\r\n },\r\n data: null,\r\n onOpen: () => {\r\n let my = this.AttachListMO\r\n my.info = {\r\n ORG_Company_ID: this.info.ORG_Company_ID\r\n }\r\n\r\n if(this.attGroup.PRDAttachItemList){\r\n my.data = this.attGroup.PRDAttachItemList.filter(x => !x.PRDProductNo)\r\n my.other.pdList = this.attGroup.PRDAttachItemList.filter(x => x.PRDProductNo)\r\n }else{\r\n my.data = []\r\n my.other.pdList = []\r\n }\r\n\r\n my.isShow = true\r\n //this.AttachListMO_Tmp.onOpen(my.info,attList)\r\n },\r\n onSave: (data) => {\r\n let my = this.AttachListMO \r\n\r\n console.log('加入附加品項', data)\r\n data.forEach(x => {\r\n \r\n if (x.SaleCash == null)\r\n x.SaleCash = 0\r\n if (x.Quantity == null)\r\n x.Quantity = 1\r\n if(this.attGroup.AttachItemKind == '2'){\r\n if (x.MaxSelectTimes == null)\r\n x.MaxSelectTimes = 1\r\n if (x.MinSelectTimes == null)\r\n x.MinSelectTimes = 0\r\n }\r\n\r\n\r\n let p = my.data.find(p=>p.PRDAttachItemNo == x.PRDAttachItemNo)\r\n if(p)\r\n x.Sorting = p.Sorting\r\n \r\n })\r\n\r\n if(!this.attGroup.PRDAttachItemList)\r\n this.attGroup.PRDAttachItemList = []\r\n\r\n let result = _.concat(data, my.other.pdList)\r\n this.attGroup.PRDAttachItemList = _.orderBy(result,['Sorting'],['asc'])\r\n\r\n\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n }\r\n\r\n }\r\n\r\n\r\n //附加品項細項 查看商品詳情\r\n @ViewChild('ProductEditMo_Tmp', { static: false }) ProductEditMo_Tmp\r\n ProductEditMo = {\r\n info: {\r\n moType: 4, //1:新增 2:編輯\r\n pdShowType:2,\r\n ORG_Store_ID:null,\r\n PRDProductNo:null,\r\n orgType: null,\r\n groupList: [],\r\n },\r\n isShow: false,\r\n data: {\r\n PRDProductNo: null,\r\n },\r\n onOpen: (type, PRDProductNo) => {\r\n let my = this.ProductEditMo\r\n my.info.moType= 4 ;\r\n my.info.orgType= this.info.orgType != 3 ? 1 : 3 ;\r\n my.info.PRDProductNo = PRDProductNo\r\n my.info.ORG_Store_ID = this.info.ORG_Store_ID\r\n my.info.pdShowType = 2\r\n\r\n let groupList = [] \r\n if(my.info.orgType == 1 ){\r\n\r\n my.getDataAPI_Setting((data) => {\r\n\r\n my.getGroupListAPI_Setting((data) => {\r\n //共用下拉選單\r\n data.forEach(element => {\r\n let item = new selectData();\r\n item.value = element.PRDGroupNo;\r\n item.content = element.GroupName;\r\n groupList.push(item);\r\n }); \r\n })\r\n\r\n \r\n my.info.groupList= groupList ;\r\n\r\n my.data = data\r\n my.isShow = true\r\n })\r\n\r\n }\r\n else{\r\n \r\n my.data = null\r\n my.isShow = true\r\n }\r\n\r\n },\r\n onClose: (v) => {\r\n let my = this.ProductEditMo\r\n my.isShow = false\r\n },\r\n getDataAPI_Setting: (fun) => {\r\n let my = this.ProductEditMo\r\n let par = {\r\n PRDProductNo: my.info.PRDProductNo\r\n\r\n }\r\n\r\n this.http.post('api/ProductSetting/GetProductDetail', par).subscribe({\r\n next: data => {\r\n if (fun)\r\n fun(data)\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n },\r\n getGroupListAPI_Setting: (fun) => {\r\n let my = this.ProductEditMo\r\n \r\n let par = {\r\n ORG_Company_ID: this.info.ORG_Company_ID.toString(),\r\n IsDelete: false,\r\n }\r\n this.http.post('api/ProductSetting/GetProductGroup', par).subscribe({\r\n next: data => { \r\n fun(data.LIST)\r\n },\r\n error: error => {\r\n }\r\n });\r\n\r\n\r\n },\r\n \r\n }\r\n\r\n//商品 編輯\r\n@ViewChild('EditAttAKAMoDOM', { static: false }) EditAttAKAMoDOM\r\nEditAttAKAMoRef = null;\r\nEditAttAKAMo = {\r\n info: {\r\n IsLoding: false,\r\n moType: null, //1:新增 2:編輯\r\n PRDAttachItemNo: null,\r\n storeId: null,\r\n ProductName: null,\r\n },\r\n data: {\r\n selectStore: null,\r\n List: [{\r\n TypeName: \"POS顯示\",\r\n Type: 1,\r\n Name: \"\"\r\n }, {\r\n TypeName: \"訂單明細\",\r\n Type: 2,\r\n Name: \"\"\r\n }, {\r\n TypeName: \"廚房聯\",\r\n Type: 3,\r\n Name: \"\"\r\n }, {\r\n TypeName: \"顧客聯\",\r\n Type: 4,\r\n Name: \"\"\r\n }, {\r\n TypeName: \"標籤\",\r\n Type: 5,\r\n Name: \"\"\r\n }, {\r\n TypeName: \"關帳小結\",\r\n Type: 6,\r\n Name: \"\"\r\n }\r\n // ,{\r\n // TypeName:\"Ubereat\",\r\n // Type:7,\r\n // Name:\"\"\r\n // },{\r\n // TypeName:\"FoodPanda\",\r\n // Type:8,\r\n // Name:\"\"\r\n // },{\r\n // TypeName:\"線上點餐\",\r\n // Type:9,\r\n // Name:\"\"\r\n // }\r\n ]\r\n },\r\n onOpen: (type, data) => {\r\n let my = this.EditAttAKAMo\r\n my.info.moType = type\r\n my.info.PRDAttachItemNo = data.PRDAttachItemNo\r\n my.info.ProductName = data.AttachItemName\r\n my.info.storeId = data.CreateStore\r\n\r\n my.getData(() => {\r\n this.EditAttAKAMoRef = this.dialogService.open(this.EditAttAKAMoDOM, {})\r\n })\r\n\r\n my.data.selectStore = this.storeSelectList[0].value\r\n },\r\n onSave: (data) => {\r\n let my = this.EditAttAKAMo\r\n my.info.IsLoding = true\r\n let req = {\r\n PRDAttachItemNo: my.info.PRDAttachItemNo,\r\n ORG_Store_ID: my.info.storeId == 0 ? my.data.selectStore : my.info.storeId,\r\n USR_AccountInfo_ID: this.info.USR_AccountInfo_ID, //建立者,\r\n LIST: my.data.List\r\n\r\n }\r\n this.http.post('api/AttachItemSetting/ModifyAttachAKA', req).subscribe({\r\n next: data => {\r\n console.log(data);\r\n if (data.RESULT != null && data.RESULT != '') {\r\n alert(data.RESULT);\r\n } else {\r\n this.EditAttAKAMoRef.close()\r\n }\r\n my.info.IsLoding = false\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n my.info.IsLoding = false\r\n }\r\n })\r\n\r\n },\r\n\r\n getData: (fun) => {\r\n let my = this.EditAttAKAMo\r\n let par = {\r\n PRDAttachItemNo: my.info.PRDAttachItemNo,\r\n ORG_Store_ID: my.info.storeId == 0 ? my.data.selectStore : my.info.storeId,\r\n }\r\n\r\n this.http.post('api/AttachItemSetting/GetAttachAKAList', par).subscribe({\r\n next: data => {\r\n if (!data.LIST)\r\n data.LIST = []\r\n\r\n my.data.List.forEach(x => x.Name = \"\")\r\n\r\n data.LIST.forEach(x => {\r\n let obj = my.data.List.find(y => y.Type == x.Type);\r\n obj.Name = x.Name\r\n })\r\n\r\n if (fun)\r\n fun()\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n },\r\n}\r\n\r\n\r\n//商品 編輯\r\n@ViewChild('EditLanguageMoDOM', { static: false }) EditLanguageMoDOM\r\nEditLanguageMoRef = null;\r\nEditLanguageMo = {\r\n info: {\r\n IsLoding: false,\r\n moType: null, //1:新增 2:編輯\r\n PRDAttachItemNo: null,\r\n storeId: null,\r\n ProductName: null,\r\n },\r\n data: {\r\n selectStore: null,\r\n List: [] as LanguageListDTO[]\r\n },\r\n onOpen: (data) => {\r\n let my = this.EditLanguageMo\r\n my.info.PRDAttachItemNo = data.PRDAttachItemNo\r\n my.info.ProductName = data.ProductName\r\n my.info.storeId = data.CreateStore\r\n\r\n my.getData(() => {\r\n this.EditLanguageMoRef = this.dialogService.open(this.EditLanguageMoDOM, {})\r\n })\r\n\r\n my.data.selectStore = this.storeSelectList[0].value\r\n\r\n\r\n },\r\n onSave: (data) => {\r\n let my = this.EditLanguageMo\r\n my.info.IsLoding = true\r\n let req = {\r\n PRDAttachItemNo: my.info.PRDAttachItemNo,\r\n ORG_Store_ID: my.info.storeId == 0 ? my.data.selectStore : my.info.storeId,\r\n USR_AccountInfo_ID: this.info.USR_AccountInfo_ID, //建立者,\r\n LIST: my.data.List\r\n\r\n }\r\n this.http.post('api/ProductSetting/ModifyAttachItemLanguage', req).subscribe({\r\n next: data => {\r\n console.log(data);\r\n if (data.RESULT != null && data.RESULT != '') {\r\n alert(data.RESULT);\r\n } else {\r\n this.EditLanguageMoRef.close()\r\n }\r\n my.info.IsLoding = false\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n my.info.IsLoding = false\r\n }\r\n })\r\n\r\n },\r\n\r\n getData: (fun) => {\r\n let my = this.EditLanguageMo\r\n let par = {\r\n ORG_Company_ID: this.info.ORG_Company_ID,\r\n ORG_Store_ID: this.info.ORG_Store_ID,\r\n PRDAttachItemNo: my.info.PRDAttachItemNo\r\n }\r\n\r\n this.http.post('api/ProductSetting/GetAttachItemLanguageList', par).subscribe({\r\n next: data => {\r\n if (data.LIST) {\r\n // 過濾掉已停用的語言\r\n my.data.List = data.LIST.filter(x => !x.IsDelete);\r\n }\r\n\r\n if (fun) fun();\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n },\r\n\r\n\r\n\r\n}\r\n\r\n\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nclass PRDAttachItemGroupReq {\r\n ModelNoList:string[];\r\n\r\n ModelList:any;\r\n PRDMenuAttachItemGroupNo: string; //附加品項群組編號\r\n ORG_Company_ID: number; //公司ID\r\n GroupName: string; //附加品項群組名稱\r\n AttachItemKind: string; //群組類型:1:單選 2:複選\r\n IsRequired: string; //是否必填:1:必填 2:非必填\r\n IsConsistent:string; //是否規則一致:1:是 2:否\r\n SelectUpLimit: number; //最多可選\r\n SelectMinLimit: number; //最少可選\r\n Sorting?: number; //IsDelete\r\n IsNoDisplayQuantity: Boolean; //出單不顯示數量\r\n PRDAttachItemList: PRDAttachItemReq[]; //附加品項群組\r\n IsSumSubtotalQty: string; //計入小計數量\r\n\r\n IsDelete: boolean; //IsDelete\r\n USR_AccountInfo_ID: string; //建立者\r\n}\r\nexport class PRDAttachItemReq {\r\n PRDProductGroupNo: string //商品群組編號\r\n PRDAttachItemNo: string; //附加品項編號\r\n PRDProductNo: string; //商品編號\r\n Name: string //商品名稱;\r\n TaxRate: number;\r\n TaxType: number;\r\n Note: string;\r\n Quantity: number; //數量\r\n Cash: number; //金額\r\n\r\n MaxSelectTimes: number; //最多可選\r\n MinSelectTimes: number; //最少可選\r\n SaleCash: number; //販售金額\r\n IsSell: boolean; //是否販售\r\n IsDefault:boolean; //預設使用\r\n IsNoDisplayQuantity: Boolean; //出單不顯示數量\r\n Sorting: number; //排序\r\n IsSumSubtotalQty: string; //計入小計數量\r\n}\r\nclass selectData {\r\n value: number;\r\n content: string;\r\n\r\n}\r\n\r\ninterface LanguageListDTO {\r\n SYS_Language_ID: number;\r\n Name: string;\r\n IsDelete: boolean;\r\n}","\r\n\r\n
\r\n \r\n \r\n {{ moTitle }}商品 \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n {{ e.content }}\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n {{ e.content }}\r\n \r\n\r\n \r\n \r\n {{ e.content }}\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {{ e.content }}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n \r\n 請將圖片拖放置此,或點此開啟資料夾
\r\n 支援最大2000x2000像素、10MB以下的圖片怪\r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{\r\n tax.content\r\n }}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{\r\n tax.content\r\n }}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n {{title2}}\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
適用會員適用會員編號外帶售價外送售價內用售價自取售價
\r\n {{item.memberLevelNames}}\r\n \r\n {{item.usrMemberLevelIDs}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 管理\r\n 刪除\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n ~ \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n ~ \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n \r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
排序附加品項群組標題選項類型必選
\r\n \r\n {{item.Sorting}} \r\n {{item.GroupName}} {{item.AttachItemKindName}}{{item.IsRequiredName}} \r\n 查看 \r\n 刪除\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n 設定供應時間 \r\n \r\n
\r\n 星期一\r\n 星期二\r\n 星期三\r\n 星期四\r\n 星期五\r\n 星期六\r\n 星期日\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n Output,\r\n EventEmitter,\r\n Input,\r\n ViewChild,\r\n TemplateRef,\r\n} from \"@angular/core\";\r\nimport { NbDialogService } from \"@nebular/theme\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { CookieService } from \"ngx-cookie-service\";\r\nimport * as _ from \"lodash\";\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: \"app-edit-product\",\r\n templateUrl: \"./edit-product.component.html\",\r\n styleUrls: [\"./edit-product.component.scss\"],\r\n})\r\nexport class EditProductComponent implements OnInit {\r\n @Output() emitList = new EventEmitter();\r\n @Output() emitClose = new EventEmitter();\r\n @Input() orgData: ModifyPRDProductReq; //已選資料_來源\r\n @Input() info: {\r\n IsLoding:boolean,\r\n moType: number; //目前編輯狀態 1.新增 2.編輯 3.複製 4.查看\r\n orgType: number; //來源類型 1.設定檔&設定檔附加品項中 2.菜單檔 3.使用中菜單檔&使用中菜單檔附加品項中 \r\n pdShowType: number; //1.商品 2.附加品項中商品\r\n pfType:number;//平台類型 1.POS 2.享online 3.uber 4.panda\r\n ORG_Store_ID:null\r\n groupList: selectData[]; \r\n isChange_Group : boolean;\r\n PRDGroupNo:null\r\n PRDMenuProductGroupNo:null\r\n storeList: selectData[];\r\n memberTypeList: memberData[];//會員類型清單\r\n \r\n //-------old------------\r\n PRDProductGroupNo: null;\r\n PRDProductNo: null;\r\n };\r\n //標題\r\n moTitle: string;\r\n title2: string;\r\n //主要資料\r\n mealData: ModifyPRDProductReq;\r\n\r\n //操作者資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n authChangeSub:any;\r\n\r\n //圖片\r\n testFiles;\r\n\r\n //---------------選項列表-------->--------------//\r\n //稅率列表\r\n TaxRateList = [];\r\n TaxTypeList = [\r\n { value: 1, content: \"免稅\" },\r\n { value: 2, content: \"應稅\" },\r\n { value: 3, content: \"零稅\" },\r\n ];\r\n\r\n //-------<--------選項列表----------------------//\r\n\r\n @ViewChild(\"Modal\") Modal: TemplateRef;\r\n modalRef = null; //談窗鉤子\r\n @ViewChild(\"DayModal\") DayModal: TemplateRef;\r\n dayModalRef = null; //談窗鉤子\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private dialogService: NbDialogService,\r\n private cookieService: CookieService,\r\n private datePipe: DatePipe,\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null\r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID')\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID= (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null\r\n\r\n\r\n \r\n }\r\n \r\n \r\n\r\n\r\n ngOnInit(): void {\r\n for (let i = 1; i < 100; i++) {\r\n this.TaxRateList.push({ value: i, content: i + \"%\" });\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info, this.orgData)\r\n\r\n }\r\n\r\n\r\n onOpen(info, data) {\r\n if (info) this.info = info;\r\n\r\n this.mealData = new ModifyPRDProductReq();\r\n \r\n \r\n if (this.info.moType == 1) {\r\n this.moTitle = \"新增\";\r\n\r\n this.mealData.PRDGroupNo = this.info.PRDGroupNo\r\n this.mealData.PRDMenuProductGroupNo= this.info.PRDMenuProductGroupNo\r\n }\r\n else if (this.info.moType == 2) {\r\n this.moTitle = \"編輯\";\r\n if (data) {\r\n this.toProductDetail(data);\r\n } \r\n }\r\n else if (this.info.moType == 3) {\r\n this.moTitle = \"複製\";\r\n if (data) {\r\n this.toProductDetail(data);\r\n this.mealData.PRDProductNo = null;\r\n }\r\n\r\n if(this.info.orgType == 1){\r\n this.getStoreList()\r\n }\r\n\r\n }\r\n else if (this.info.moType == 4) {\r\n this.moTitle = \"查看\";\r\n if (data) {\r\n this.toProductDetail(data);\r\n } else {\r\n this.getProductDetail(null);\r\n }\r\n }\r\n\r\n if (this.info.orgType == 1) {\r\n this.title2 = \"預設資料\";\r\n }\r\n else if (this.info.orgType == 2) {\r\n this.title2 = \"可調整資料\";\r\n if(!this.mealData.SupplyQTY)\r\n this.mealData.SupplyQTY = 10000;\r\n }\r\n else if (this.info.orgType == 3) {\r\n this.title2 = \"販售資料\";\r\n }\r\n\r\n if(!info.pdShowType){\r\n info.pdShowType=1\r\n }\r\n\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n onSave() {\r\n if (!this.mealData.Cash && this.mealData.Cash != 0) {\r\n alert(\"商品原價必須填!\");\r\n return null;\r\n }\r\n if (!this.mealData.SaleCash && this.mealData.SaleCash != 0) {\r\n alert(\"商品售價必須填!\");\r\n return null;\r\n }\r\n\r\n //轉換營業時段\r\n if (this.mealData.supplyPeriod && this.mealData.supplyPeriod.length ) {\r\n if (this.mealData.supplyPeriod.length >= 1) {\r\n this.mealData.FirstSupplyStartTime = \r\n this.datePipe.transform(this.mealData.supplyPeriod[0].startTime, 'yyyy/MM/dd HH:mm:ss')\r\n \r\n this.mealData.FirstSupplyEndTime = \r\n this.datePipe.transform(this.mealData.supplyPeriod[0].endTime, 'yyyy/MM/dd HH:mm:ss')\r\n\r\n if(this.mealData.supplyPeriod[0].startTime > this.mealData.supplyPeriod[0].endTime){\r\n alert(\"開始日期不可大於結束日期!\")\r\n return \r\n }\r\n }\r\n \r\n if (this.mealData.supplyPeriod.length >= 2) {\r\n this.mealData.SecondSupplyStartTime = \r\n this.datePipe.transform(this.mealData.supplyPeriod[1].startTime, 'yyyy/MM/dd HH:mm:ss')\r\n this.mealData.SecondSupplyEndTime = \r\n this.datePipe.transform(this.mealData.supplyPeriod[1].endTime, 'yyyy/MM/dd HH:mm:ss')\r\n\r\n if(this.mealData.supplyPeriod[1].startTime > this.mealData.supplyPeriod[1].endTime){\r\n alert(\"開始日期不可大於結束日期!\")\r\n return\r\n }\r\n }\r\n }\r\n else{\r\n this.mealData.FirstSupplyStartTime = \"\"\r\n this.mealData.FirstSupplyEndTime = \"\"\r\n this.mealData.SecondSupplyStartTime = \"\"\r\n this.mealData.SecondSupplyEndTime = \"\"\r\n }\r\n\r\n var checkMember = null\r\n if (this.mealData.ProductLevelMapJsonData) {\r\n checkMember = this.mealData.ProductLevelMapJsonData.map(item => JSON.parse(JSON.stringify(item)));\r\n for (let i = 0; i < checkMember.length; i++) {\r\n const item = checkMember[i];\r\n for (const key in item) {\r\n if (item[key] === \"\" || item[key] === null) {\r\n alert(\"特殊價格設定未填寫完整!\");\r\n return;\r\n }\r\n }\r\n const ids = item.usrMemberLevelIDs.split(',');\r\n const names = item.memberLevelNames.split('、');\r\n if (ids.includes(\"0\") && names.includes(\"全部適用\")) {\r\n item.usrMemberLevelIDs = null;\r\n item.memberLevelNames = \"\";\r\n }\r\n }\r\n }\r\n\r\n\r\n //圖片處理\r\n if (this.mealData.files && this.mealData.files.length > 0) {\r\n this.mealData.Image = this.mealData.files[0].path;\r\n }\r\n\r\n //加購品項\r\n let attachItemGroups: string = \"\";\r\n if (this.mealData.AttachItemGroupJsonDatas) {\r\n let data = _.orderBy(this.mealData.AttachItemGroupJsonDatas,x=>['Sorting'], ['asc'])\r\n data.forEach((item) => {\r\n if (attachItemGroups == \"\") {\r\n attachItemGroups = item.PRDMenuAttachItemGroupNo;\r\n } else {\r\n attachItemGroups = attachItemGroups + \",\" + item.PRDMenuAttachItemGroupNo;\r\n }\r\n\r\n item.Sorting = item.Sorting*1\r\n });\r\n }\r\n this.mealData.AttachItemGroupJsonData = attachItemGroups;\r\n\r\n \r\n\r\n\r\n //格式處理\r\n let Main = {\r\n ProductName: this.mealData.ProductName,\r\n ProductContant: this.mealData.ProductContant,\r\n Image: this.mealData.Image,\r\n TaxRate: this.mealData.TaxRate,\r\n TaxType: this.mealData.TaxType,\r\n Cash: this.mealData.Cash,\r\n }\r\n let Detail = {\r\n SaleCash: this.mealData.SaleCash,\r\n Sorting: this.mealData.Sorting,\r\n IsOpenTakeout: this.mealData.IsOpenTakeout,\r\n IsOpenDelivery: this.mealData.IsOpenDelivery,\r\n IsOpenDining: this.mealData.IsOpenDining,\r\n IsOpenSelfPickup: this.mealData.IsOpenSelfPickup,\r\n IsOpenReserveDining: this.mealData.IsOpenReserveDining,\r\n IsChangeCash:this.mealData.IsChangeCash,\r\n SupplyQTY: this.mealData.SupplyQTY,\r\n UplimitQTY: this.mealData.UplimitQTY,\r\n SupplyDay: this.mealData.SupplyDay,\r\n FirstSupplyStartTime: this.mealData.FirstSupplyStartTime,\r\n FirstSupplyEndTime: this.mealData.FirstSupplyEndTime,\r\n SecondSupplyStartTime: this.mealData.SecondSupplyStartTime,\r\n SecondSupplyEndTime: this.mealData.SecondSupplyEndTime,\r\n AttachItemGroupJsonDatas: this.mealData.AttachItemGroupJsonDatas,\r\n AttachItemGroupJsonData: this.mealData.AttachItemGroupJsonData,\r\n ProductLevelMapJsonData: checkMember,\r\n }\r\n this.mealData.Main = Main\r\n this.mealData.Detail = Detail\r\n this.mealData.ORG_Company_ID = this.ORG_Company_ID;\r\n this.mealData.USR_EmployeeInfo_ID = parseInt(this.USR_EmployeeInfo_ID);\r\n this.mealData.USR_AccountInfo_ID = this.USR_AccountInfo_ID; //建立者;\r\n\r\n console.log('送出',this.mealData)\r\n\r\n this.emitList.emit(this.mealData);\r\n // this.modalRef.close();\r\n }\r\n\r\n\r\n \r\n\r\n\r\n //商品彈窗 新增供應時段\r\n addSupplyData() {\r\n if (this.mealData.supplyPeriod == null) {\r\n this.mealData.supplyPeriod = [];\r\n }\r\n if (this.mealData.supplyPeriod.length >= 2) {\r\n return;\r\n }\r\n this.mealData.supplyPeriod.push(new supplyPeriod());\r\n }\r\n\r\n //商品彈窗 刪除供應時段\r\n delSupplyData(idx) {\r\n this.mealData.supplyPeriod.splice(idx, 1);\r\n }\r\n\r\n //商品彈窗 供應日期 設定\r\n addSupplyTime() {\r\n this.dayModalRef = this.dialogService.open(this.DayModal, {});\r\n }\r\n //商品彈窗 供應日期 顯示\r\n showSupplyTime() {\r\n var str = [];\r\n var value = [];\r\n this.mealData.SupplyDay = \"\";\r\n if (this.mealData.supplyTimeMonday) {\r\n str.push(\"星期一\");\r\n value.push(\"1\");\r\n }\r\n if (this.mealData.supplyTimeTuesday) {\r\n str.push(\"星期二\");\r\n value.push(\"2\");\r\n }\r\n if (this.mealData.supplyTimeWednesday) {\r\n str.push(\"星期三\");\r\n value.push(\"3\");\r\n }\r\n if (this.mealData.supplyTimeThursday) {\r\n str.push(\"星期四\");\r\n value.push(\"4\");\r\n }\r\n if (this.mealData.supplyTimeFriday) {\r\n str.push(\"星期五\");\r\n value.push(\"5\");\r\n }\r\n if (this.mealData.supplyTimeSaturday) {\r\n str.push(\"星期六\");\r\n value.push(\"6\");\r\n }\r\n if (this.mealData.supplyTimeSunday) {\r\n str.push(\"星期日\");\r\n value.push(\"7\");\r\n }\r\n if (str.length > 0) {\r\n //去掉第一個逗號\r\n this.mealData.supplyDayStr = str.join(\",\");\r\n this.mealData.SupplyDay = value.join(\",\");\r\n }\r\n\r\n if (this.dayModalRef)\r\n this.dayModalRef.close()\r\n\r\n return str;\r\n }\r\n\r\n //商品彈窗 上傳圖片用\r\n fileToBase64 = (file: File): Promise => {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = () => resolve(reader.result.toString());\r\n reader.onerror = (error) => reject(error);\r\n });\r\n };\r\n\r\n\r\n //商品彈窗 圖片上傳\r\n onSelect(event,dataBox) {\r\n console.log(event);\r\n dataBox.files = [];\r\n\r\n if (event.addedFiles == null || event.addedFiles.length == 0) {\r\n return;\r\n }\r\n\r\n const self = this;\r\n const checks = event.addedFiles.map(file => {\r\n return new Promise((resolve, reject) => {\r\n // 檢查圖片大小\r\n if (file.size > 20 * 1024 * 1024) {\r\n alert(\"檔案大小不能超過20MB\");\r\n return reject();\r\n }\r\n \r\n // 檢查圖片尺寸\r\n const img = new Image();\r\n img.src = URL.createObjectURL(file);\r\n img.onload = () => {\r\n if (img.width > 2000 || img.height > 2000) {\r\n alert(\"圖片的長和寬都要小於2000像素\");\r\n return reject();\r\n }\r\n if (img.width < 320 || img.height < 320) {\r\n alert(\"圖片的長和寬都要大於320像素\");\r\n return reject();\r\n }\r\n resolve(file);\r\n };\r\n });\r\n });\r\n \r\n Promise.all(checks).then((validFiles) => {\r\n dataBox.files.push(event.addedFiles[0]);\r\n const formData = new FormData();\r\n \r\n for (var i = 0; i < dataBox.files.length; i++) {\r\n formData.append(\"file[]\", dataBox.files[i]);\r\n }\r\n \r\n let imgdata = {}\r\n\r\n if (dataBox.files && dataBox.files[0]) {\r\n for (let i = 0; i < dataBox.files.length; i++) {\r\n self.fileToBase64(dataBox.files[i]).then((result) => {\r\n const base64String = result;\r\n \r\n imgdata = {\r\n base64: base64String,\r\n functionType: \"1\",\r\n ORG_Company_ID:self.ORG_Company_ID,\r\n ORG_Store_ID:self.info.ORG_Store_ID\r\n };\r\n \r\n self.info.IsLoding = true;\r\n self.http\r\n .post(\"api/ImageUpload/ImageUpload\", imgdata)\r\n .subscribe({\r\n next: (data) => {\r\n console.log(data);\r\n dataBox.files[0].path = data.path;\r\n console.log(dataBox.files[0].path);\r\n self.info.IsLoding = false;\r\n },\r\n error: (error) => {\r\n console.error(\"There was an error!\", error);\r\n },\r\n });\r\n });\r\n }\r\n }\r\n }).catch(() => {\r\n // 如果有文件不符合要求\r\n self.info.IsLoding = false;\r\n console.log(\"有圖片不符合要求,不執行上傳\");\r\n });\r\n \r\n }\r\n\r\n //商品彈窗 圖片清除\r\n onRemove(event,dataBox) {\r\n console.log(event);\r\n // dataBox.files.splice(dataBox.files.indexOf(event), 1);\r\n dataBox.files = []\r\n if(dataBox.Image)\r\n dataBox.Image = '' \r\n \r\n event.stopPropagation();\r\n }\r\n\r\n\r\n //商品彈窗 圖片清除\r\n Remove(event,dataBox) {\r\n dataBox.files = []\r\n if(dataBox.Image)\r\n dataBox.Image = ''\r\n }\r\n\r\n //商品彈窗 變更目標商店\r\n onSelectStore(){\r\n this.getGroupList()\r\n }\r\n\r\n\r\n //處理商品資料\r\n toProductDetail(data) {\r\n \r\n if(this.info.orgType != 3 ) {\r\n this.mealData = Object.assign(this.mealData, data,data.Main,data.Detail)\r\n }\r\n else{\r\n this.mealData = Object.assign(this.mealData, data)\r\n }\r\n\r\n\r\n //如果供應時間有值,拆解字串\r\n if (\r\n this.mealData.SupplyDay != null &&\r\n this.mealData.SupplyDay != \"\"\r\n ) {\r\n const myArray = this.mealData.SupplyDay.split(\",\");\r\n myArray.forEach((day) => {\r\n if (\"1\" == day) {\r\n this.mealData.supplyTimeMonday = true;\r\n }\r\n if (\"2\" == day) {\r\n this.mealData.supplyTimeTuesday = true;\r\n }\r\n if (\"3\" == day) {\r\n this.mealData.supplyTimeWednesday = true;\r\n }\r\n if (\"4\" == day) {\r\n this.mealData.supplyTimeThursday = true;\r\n }\r\n if (\"5\" == day) {\r\n this.mealData.supplyTimeFriday = true;\r\n }\r\n if (\"6\" == day) {\r\n this.mealData.supplyTimeSaturday = true;\r\n }\r\n if (\"7\" == day) {\r\n this.mealData.supplyTimeSunday = true;\r\n }\r\n });\r\n this.showSupplyTime()\r\n }\r\n //填充供應時間\r\n this.mealData.supplyPeriod = [];\r\n if (this.mealData.FirstSupplyStartTime != null) {\r\n var tmp = new supplyPeriod();\r\n tmp.startTime = new Date(this.mealData.FirstSupplyStartTime);\r\n tmp.endTime = new Date(this.mealData.FirstSupplyEndTime);\r\n this.mealData.supplyPeriod.push(tmp);\r\n\r\n if (this.mealData.SecondSupplyStartTime != null) {\r\n var tmp = new supplyPeriod();\r\n tmp.startTime = new Date(this.mealData.SecondSupplyStartTime);\r\n tmp.endTime = new Date(this.mealData.SecondSupplyEndTime);\r\n this.mealData.supplyPeriod.push(tmp);\r\n }\r\n }\r\n }\r\n\r\n //-----------------------特殊價格設定 >------------------------------\r\n @ViewChild('ProductLevelSettingMO_Tmp', { static: false }) ProductLevelSettingMO_Tmp\r\n ProductLevelSettingMO = {\r\n data: null, //彈窗的項目(會員類型資料)\r\n USR_MemberLevel_IDList: null, //已有的會員\r\n showData:[], //顯示的資料\r\n isShow: false,\r\n index: null,\r\n //管理\r\n onOpen: (data, index) => {\r\n const self = this;\r\n let my = self.ProductLevelSettingMO\r\n\r\n my.data = []\r\n my.data = self.info.memberTypeList\r\n my.USR_MemberLevel_IDList = []\r\n if (data.usrMemberLevelIDs && data.usrMemberLevelIDs.trim() !== '') {\r\n my.USR_MemberLevel_IDList = data.usrMemberLevelIDs.split(',').map(Number);\r\n } else {\r\n my.USR_MemberLevel_IDList = [];\r\n }\r\n my.index = index\r\n my.isShow = true\r\n }, \r\n onSave: (data) => {\r\n const self = this;\r\n let ProductLevel = self.mealData.ProductLevelMapJsonData\r\n\r\n ProductLevel[data.index].usrMemberLevelIDs = data.filteredList.map(member => member.USR_MemberLevel_ID).join(',');\r\n ProductLevel[data.index].memberLevelNames = data.filteredList.map(member => member.MemberLevelName).join('、');\r\n\r\n // 提取出需要被移除的資料\r\n const removableNos = data.filteredList.map(member => member.USR_MemberLevel_ID).join(',');\r\n const removableNames = data.filteredList.map(member => member.MemberLevelName).join('、');\r\n\r\n // 更新 ProductLevel 數組,刪除指定的 USR_MemberLevel_ID 和 MemberLevelName\r\n ProductLevel.forEach((item, index) => {\r\n if (index !== data.index) {\r\n let itemNos = item.usrMemberLevelIDs.split(',');\r\n let itemNames = item.memberLevelNames.split('、');\r\n \r\n // 移除對應的 USR_MemberLevel_ID 和 MemberLevelName\r\n itemNos = itemNos.filter(no => !removableNos.includes(no));\r\n itemNames = itemNames.filter(name => !removableNames.includes(name));\r\n \r\n // 重新組合回字串格式\r\n item.usrMemberLevelIDs = itemNos.join(',');\r\n item.memberLevelNames = itemNames.join('、');\r\n }\r\n });\r\n },\r\n onDel:(index: number)=>{\r\n const self = this;\r\n let ProductLevel = self.mealData.ProductLevelMapJsonData\r\n ProductLevel.splice(index, 1);\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n },\r\n onAddShow:()=>{ \r\n const self = this;\r\n if (!self.mealData.ProductLevelMapJsonData) {\r\n self.mealData.ProductLevelMapJsonData = [];\r\n }\r\n let ProductLevel = self.mealData.ProductLevelMapJsonData\r\n \r\n ProductLevel.push({\r\n usrMemberLevelIDs: '',\r\n memberLevelNames: '',\r\n takeoutSaleCash: null,\r\n deliverySaleCash: null,\r\n diningSaleCash: null,\r\n selfPickupSaleCash: null\r\n }) \r\n }\r\n }\r\n\r\n //附加品項分類 \r\n @ViewChild('SelectAttMMO_Tmp', { static: false }) SelectAttMMO_Tmp\r\n SelectAttMMO = {\r\n info: {\r\n },\r\n isShow: false,\r\n data: null,\r\n other: {\r\n attList: [],\r\n },\r\n onOpen: () => {\r\n let my = this.SelectAttMMO\r\n my.info = {\r\n }\r\n\r\n my.data = []\r\n // if (this.mealData.AttachItemGroupJsonDatas){\r\n // my.data = _.cloneDeep(this.mealData.AttachItemGroupJsonDatas);\r\n // my.data.forEach(x=>{\r\n // x.No = x.PRDMenuAttachItemGroupNo \r\n // })\r\n // }\r\n my.isShow = true\r\n //this.SelectAttMMO_Tmp.onOpen(my.info,pdList)\r\n },\r\n onSave: (data) => {\r\n let my = this.SelectAttMMO\r\n\r\n if (!this.mealData.AttachItemGroupJsonDatas)\r\n this.mealData.AttachItemGroupJsonDatas = []\r\n\r\n let list = []\r\n data.forEach(p=>{\r\n if(this.mealData.AttachItemGroupJsonDatas\r\n .findIndex(x=>x.PRDMenuAttachItemGroupNo==p.No)==-1){\r\n p.Sorting=0\r\n list.push(p)\r\n }\r\n })\r\n \r\n this.mealData.AttachItemGroupJsonDatas =\r\n this.mealData.AttachItemGroupJsonDatas.concat(list) \r\n this.mealData.AttachItemGroupJsonDatas.forEach((item, index) => {\r\n item.Sorting = index + 1;\r\n });\r\n\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n }\r\n }\r\n\r\n\r\n //附加品項群組 選擇\r\n @ViewChild(\"SelectAttGMO_Tmp\", { static: false }) SelectAttGMO_Tmp;\r\n SelectAttGM = {\r\n info: {\r\n ORG_Company_ID: null,\r\n ORG_Store_ID: null,\r\n },\r\n isShow: false,\r\n data: null,\r\n onOpen: () => {\r\n let my = this.SelectAttGM;\r\n if (this.mealData.AttachItemGroupJsonDatas)\r\n my.data = _.cloneDeep(this.mealData.AttachItemGroupJsonDatas);\r\n\r\n my.info = {\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: this.ORG_Store_ID,\r\n }\r\n //this.SelectAttGMO_Tmp.onOpen(my.info, my.data);\r\n my.isShow = true\r\n },\r\n onSave: (data) => {\r\n let my = this.SelectAttGM;\r\n this.mealData.AttachItemGroupJsonDatas = data\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n }\r\n };\r\n\r\n\r\n //附加品項群組 查看 \r\n @ViewChild('EditAttachGMO_Tmp', { static: false }) EditAttachGMO_Tmp\r\n EditAttachGMO = {\r\n info: {\r\n ORG_Company_ID: null,\r\n ORG_Store_ID: null,\r\n GroupNo: null,\r\n moType: null,\r\n orgType:null,\r\n },\r\n isShow: false,\r\n data: {},\r\n onOpen: (type, data) => {\r\n let my = this.EditAttachGMO\r\n my.info = {\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: this.info.ORG_Store_ID,\r\n GroupNo: data ? data.PRDMenuAttachItemGroupNo ? data.PRDMenuAttachItemGroupNo : data.PRDAttachItemGroupNo : null, \r\n moType: type,\r\n orgType:this.info.orgType,\r\n }\r\n //事件會早於屬性匯入前執行 因此必須改使用參數\r\n //this.EditAttachMO_Tmp.onOpen(my.info,my.data)\r\n my.isShow = true\r\n },\r\n onSave: (data) => {\r\n if (data.ORG_Store_ID != this.ORG_Store_ID) {\r\n alert(\"群組門市需要與商品門市一致!\")\r\n return\r\n }\r\n },\r\n onClose(v) {\r\n this.isShow = false\r\n }\r\n }\r\n\r\n\r\n //附加品項群組 刪除\r\n DelAttachG(index) {\r\n this.mealData.AttachItemGroupJsonDatas.splice(index, 1)\r\n }\r\n\r\n\r\n //取得使用中菜單檔 商品細項API\r\n getProductDetail(callback) {\r\n let par = {\r\n PRDGroupNo :this.info.PRDGroupNo, \r\n PRDProductNo :this.info.PRDProductNo,\r\n ORG_Store_ID : this.info.ORG_Store_ID \r\n }\r\n this.http\r\n .post(\r\n \"api/UsingMenu/GetProductDetail\",par)\r\n .subscribe({\r\n next: (data) => {\r\n if (data.LIST.length > 0) {\r\n let obj = data.LIST[0]\r\n obj.PRDGroupNo = obj.PRDProductGroupNo\r\n this.toProductDetail(obj)\r\n }\r\n },\r\n error: (error) => {\r\n console.error(\"取得商品細項API error!\", error);\r\n },\r\n });\r\n }\r\n\r\n\r\n //取得門市清單 API\r\n getStoreList() {//取得門市清單 \r\n this.http.post('api/ORGStore/StoreList', {\r\n USR_AccountInfo_ID: this.USR_AccountInfo_ID, \r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: this.ORG_Store_ID,\r\n }).subscribe({\r\n next: data => {\r\n this.info.storeList = [];\r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = 0;\r\n Item.content = '總部';\r\n this.info.storeList.push(Item);\r\n \r\n if(this.ORG_Store_ID ){\r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = this.ORG_Store_ID;\r\n Item.content = data.LIST.find(x=>x.ORG_Store_ID == this.ORG_Store_ID ).StoreName;\r\n this.info.storeList.push(Item);\r\n }else{\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.info.storeList.push(selectItem);\r\n });\r\n }\r\n \r\n // 預設點第一個\r\n if (this.info.storeList.length > 0) {\r\n this.mealData.CopyStoreID = this.info.storeList[0].value\r\n }\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n }\r\n\r\n //取得群組\r\n getGroupList(){\r\n\r\n if(this.info.orgType == 1){\r\n let par = {\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n CreateStore: this.mealData.CopyStoreID == null ? 0 : this.mealData.CopyStoreID,\r\n IsDelete: false,\r\n } \r\n this.http.post('api/ProductSetting/GetProductGroup', par).subscribe({\r\n next: data => {\r\n this.info.groupList = []\r\n data.LIST.forEach(element => {\r\n let item = new selectData();\r\n item.value = element.PRDGroupNo;\r\n item.content = element.GroupName;\r\n this.info.groupList.push(item);\r\n });\r\n\r\n if(this.info.groupList.length>0)\r\n this.mealData.PRDGroupNo = this.info.groupList[0].value.toString() \r\n\r\n this.info.isChange_Group = !this.info.isChange_Group\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n \r\n }\r\n });\r\n\r\n }\r\n\r\n }\r\n\r\n trackByFn(i: number) {\r\n return i;\r\n }\r\n}\r\n\r\nclass ModifyPRDProductReq {\r\n //商品\r\n PRDGroupNo: string; //\r\n PRDMenuProductGroupNo: string; //\r\n PRDProductNo: string; // \r\n Main: any;\r\n Detail: any;\r\n USR_EmployeeInfo_ID: number; //\r\n USR_AccountInfo_ID: string; //\r\n ORG_Company_ID: number; //\r\n \r\n\r\n //---------------------------------main---------------------- \r\n ProductName: string; //\r\n ProductContant: string; //\r\n Image: string; // \r\n TaxRate: number = 5; //\r\n TaxType: number = 2; //\r\n Cash: number; //\r\n\r\n //---------------------------------detail---------------------- \r\n SaleCash: number; //\r\n Sorting: number; //\r\n //2024.2.19 新增商品點餐方式(外帶/外送/內用/自取)預設開啟\r\n IsOpenTakeout: boolean = true;\r\n IsOpenDelivery: boolean = true;\r\n IsOpenDining: boolean = true;\r\n IsOpenReserveDining: boolean = false;\r\n IsOpenSelfPickup: boolean = true;\r\n IsChangeCash: boolean = true;//是否改價\r\n SupplyQTY: number; //\r\n UplimitQTY: number; //\r\n SupplyDay: string; //供應日 用,區分,1:週一 2:週二 3:週三 4:週四 5:週五 6:週六 7:週日\r\n FirstSupplyStartTime: string; //\r\n FirstSupplyEndTime: string; //\r\n SecondSupplyStartTime: string; //\r\n SecondSupplyEndTime: string; // \r\n AttachItemGroupJsonDatas: AttachItemGroupJsonDataDTO[];\r\n AttachItemGroupJsonData: string; //已存在的附加品項清單 用,分隔\r\n\r\n ProductLevelMapJsonData: ProductLevelMapJsonDataDTO[]; // 特殊價格設定\r\n\r\n //---------------------------------顯示用----------------------\r\n supplyPeriod?: Array; //供應時段 \r\n supplyDayStr: string;\r\n supplyTimeMonday?: boolean;\r\n supplyTimeTuesday?: boolean;\r\n supplyTimeWednesday?: boolean;\r\n supplyTimeThursday?: boolean;\r\n supplyTimeFriday?: boolean;\r\n supplyTimeSaturday?: boolean;\r\n supplyTimeSunday?: boolean;\r\n files: ImageFile[] = [];\r\n\r\n //---------------------------------old----------------------\r\n ORG_Store_ID?: number; //\r\n CopyStoreID?: number; //複製用,目標商店ID\r\n\r\n}\r\n\r\nclass supplyPeriod {\r\n startTime: Date;\r\n endTime: Date;\r\n}\r\n\r\nclass AttachItemGroupJsonDataDTO {\r\n PRDMenuAttachItemGroupNo: string; //附加品項群組編號\r\n GroupName: string\r\n Content: string\r\n AttachItemKindName: string\r\n IsRequiredName: string\r\n Sorting:number\r\n}\r\n\r\nclass ProductLevelMapJsonDataDTO{\r\n usrMemberLevelIDs: string; //適用會員類型編號\r\n memberLevelNames: string; //適用會員類型名字\r\n takeoutSaleCash: number; //外帶會員售價\r\n deliverySaleCash: number; //外送會員售價\r\n diningSaleCash: number; //內用會員售價\r\n selfPickupSaleCash: number; //自取會員售價\r\n}\r\n\r\nclass ImageFile extends File {\r\n path: string;\r\n}\r\n\r\nclass selectData {\r\n value: number; //\r\n content: string; //\r\n}\r\nclass memberData {\r\n USR_MemberLevel_ID: string;\r\n MemberLevelName: string;\r\n isChecked: false;\r\n}\r\n\r\n","\r\n \r\n \r\n
\r\n
\r\n
\r\n

出貨明細

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
項次商品名稱數量單價小計
{{ index+1 }}{{pd.EOSProductName}}{{pd.Quantity}}{{pd.EOSProductCash | currency : null : true :'1.0'}}{{pd.ProductTotalCash | currency : null : true :'1.0'}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, Input, OnInit, TemplateRef, ViewChild,Output,EventEmitter } from '@angular/core';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { SubscriptService } from '../../service/header.service';\r\nimport { DatePipe } from '@angular/common'\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport { CurrencyPipe} from '@angular/common';\r\nimport * as _ from 'lodash';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-info-EOS-detail',\r\n templateUrl: './info-EOS-detail.component.html',\r\n styleUrls: ['./info-EOS-detail.component.scss']\r\n})\r\nexport class InfoEOSDetailComponent implements OnInit {\r\n\r\n @Output() emitList = new EventEmitter();\r\n @Output() emitClose = new EventEmitter();\r\n @Input() EosNo: string;\r\n\r\n @ViewChild(\"Modal\") Modal: TemplateRef;\r\n modalRef = null; //談窗鉤子\r\n\r\n\r\n //基本資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n authChangeSub:any;\r\n\r\n orderDetail:any;\r\n\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n private router: Router,\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null;\r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID')\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID= (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.EosNo)\r\n \r\n }\r\n\r\n\r\n onOpen(EosNo){\r\n this.getOrderDetail(EosNo) \r\n\r\n\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n \r\n\r\n //取得詳細資料\r\n getOrderDetail(ordno) {\r\n\r\n this.http.get('api/EOS/OrderManage/GetOrderDetail?EOSNo=' + ordno).subscribe({\r\n next: data => {\r\n this.orderDetail = _.assign(data.LIST[0])\r\n setTimeout(() => window.print(), 0);\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n onClose(){\r\n this.modalRef.close()\r\n }\r\n\r\n}\r\n"," \r\n \r\n \r\n 查看訂單\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
{{orderDetail.EOSNo}}
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
{{orderDetail.CreateDate }}
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n
{{orderDetail.StatusName}}
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
{{ orderDetail.Name ? orderDetail.Name : '無'}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.Phone ? orderDetail.Phone : '無'}}
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
{{ orderDetail.Address ? orderDetail.Address : '無'}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.TableName ? orderDetail.TableName : '無'}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.Adults }} | {{ orderDetail.Children }}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.Note ? orderDetail.Note : '無'}}
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n 付款資訊\r\n
\r\n
\r\n \r\n
{{orderDetail.PayStatusName}}
\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n
{{e.ReceivedCash | currency : null : true :'1.0'}} | {{e.ChangeCash | currency : null : true :'1.0'}}
\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n\r\n
\r\n \r\n
{{ orderDetail.Cash | currency : null : true :'1.0'}}
\r\n \r\n
\r\n \r\n
\r\n \r\n
{{ orderDetail.ShippingFee | currency : null : true :'1.0'}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.TotalCash | currency : null : true :'1.0'}}
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n 刷卡資訊\r\n
\r\n
\r\n \r\n
{{orderDetail.NCCCData.MerchantID}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.NCCCData.TerminalID}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.CardType}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.CardNo}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.CreateDate}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.ApprovalNo}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.ReceiptNo}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.BatchNo}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.TransAmount}}
\r\n \r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n 商品詳情\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n • {{a.AttachItemName}} \r\n {{a.AttachItemCash | currency : null : true :'1.0'}}\r\n x {{a.AttachItemQuantity}} \r\n
\r\n
\r\n • {{pp.ProductName}} \r\n {{pp.ProductCash | currency : null : true :'1.0'}}\r\n x {{pp.Quantity}}\r\n
\r\n \r\n
\r\n
\r\n\r\n
","import { Component, Input, OnInit, TemplateRef, ViewChild,Output,EventEmitter } from '@angular/core';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { SubscriptService } from '../../service/header.service';\r\nimport { DatePipe } from '@angular/common'\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport { CurrencyPipe} from '@angular/common';\r\nimport * as _ from 'lodash';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-info-EOS-ord',\r\n templateUrl: './info-EOS-ord.component.html',\r\n styleUrls: ['./info-EOS-ord.component.scss']\r\n})\r\nexport class InfoEOSOrdComponent implements OnInit {\r\n\r\n @Output() emitList = new EventEmitter();\r\n @Output() emitClose = new EventEmitter();\r\n @Input() info: {\r\n moType: number; //目前編輯狀態 4.查看\r\n orgType: number; //1.訂單紀錄 2.發票紀錄 \r\n eosNo:string;\r\n };\r\n\r\n @ViewChild(\"Modal\") Modal: TemplateRef;\r\n modalRef = null; //談窗鉤子\r\n\r\n\r\n //基本資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n authChangeSub:any;\r\n\r\n orderDetail:any;\r\n\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n private router: Router\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null;\r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID')\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID= (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info)\r\n\r\n }\r\n\r\n\r\n onOpen(info){\r\n this.getOrderDetail(info.eosNo) \r\n\r\n\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n \r\n\r\n\r\n \r\n //取得詳細資料\r\n getOrderDetail(ordno) {\r\n\r\n this.http.get('api/EOS/OrderManage/GetOrderDetail?EOSNo=' + ordno).subscribe({\r\n next: data => {\r\n this.orderDetail = _.assign(data.LIST[0])\r\n\r\n \r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n onClose(){\r\n this.modalRef.close()\r\n }\r\n\r\n\r\n}\r\n"," \r\n \r\n 查看訂單\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
{{orderDetail.ORDNo}}
\r\n
\r\n\r\n
\r\n \r\n \r\n
{{orderDetail.PickupNumber}}
\r\n
\r\n\r\n
\r\n \r\n \r\n
{{orderDetail.CreateDate }}
\r\n
\r\n\r\n
\r\n \r\n
{{orderDetail.ORDKindName}}
\r\n \r\n
\r\n
\r\n \r\n
{{orderDetail.ORDStatusName}}
\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
{{ orderDetail.Name ? orderDetail.Name : '無'}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.Phone ? orderDetail.Phone : '無'}}
\r\n
\r\n\r\n
\r\n \r\n
{{orderDetail.MealTime ? orderDetail.MealTime : '無' }}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.Address ? orderDetail.Address : '無'}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.TableName ? orderDetail.TableName : '無'}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.Adults }} | {{ orderDetail.Children }}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.Note ? orderDetail.Note : '無'}}
\r\n \r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.EmployeeName ? orderDetail.EmployeeName : '無'}}
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n 付款資訊\r\n
\r\n
\r\n \r\n
{{orderDetail.PayStatusName}}
\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n
{{e.ReceivedCash | currency : null : true :'1.0'}} | {{e.ChangeCash | currency : null : true :'1.0'}}
\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n\r\n
\r\n \r\n
{{ orderDetail.Cash | currency : null : true :'1.0'}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.DiscountCash | currency : null : true :'1.0'}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.ServiceFee | currency : null : true :'1.0'}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.ShippingFee | currency : null : true :'1.0'}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.TotalCash | currency : null : true :'1.0'}}
\r\n \r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n 刷卡資訊\r\n
\r\n
\r\n \r\n
{{orderDetail.NCCCData.MerchantID}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.NCCCData.TerminalID}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.CardType}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.CardNo}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.CreateDate}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.ApprovalNo}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.ReceiptNo}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.BatchNo}}
\r\n \r\n
\r\n
\r\n \r\n
{{ orderDetail.NCCCData.TransAmount}}
\r\n \r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n 發票資訊\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.InvStatusName }}
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n
{{ orderDetail.InvoiceNumber }}
\r\n
\r\n \r\n
\r\n \r\n
{{ orderDetail.POSName }}
\r\n
\r\n\r\n\r\n
\r\n \r\n
{{ orderDetail.VoidReason }}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.VoidTime }}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.TaxSaleAmount | currency : null : true :'1.0'}}
\r\n
\r\n
\r\n \r\n
{{ orderDetail.TaxFreeSaleAmount | currency : null : true :'1.0'}}
\r\n
\r\n
\r\n \r\n
{{ orderDetail.TaxZeroSaleAmount | currency : null : true :'1.0'}}
\r\n
\r\n\r\n
\r\n \r\n
{{ orderDetail.TaxAmount | currency : null : true :'1.0'}}
\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n \r\n
{{ orderDetail.BarCode }}
\r\n
\r\n \r\n
\r\n \r\n
{{ orderDetail.TaxID }}
\r\n
\r\n \r\n
\r\n \r\n
{{ orderDetail.InvCompanyName }}
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n 商品詳情\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n 優惠詳情\r\n
\r\n
\r\n {{item.DiscountName}}${{item.TotalDiscountCash}}\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n • {{a.AttachItemName}} \r\n {{a.AttachItemCash | currency : null : true :'1.0'}}\r\n x {{a.AttachItemQuantity}} \r\n
\r\n
\r\n • {{pp.ProductName}} \r\n {{pp.ProductCash | currency : null : true :'1.0'}}\r\n x {{pp.Quantity}}\r\n
\r\n \r\n
\r\n
\r\n\r\n
","import { Component, Input, OnInit, TemplateRef, ViewChild,Output,EventEmitter } from '@angular/core';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { SubscriptService } from '../../../tool/service/header.service';\r\nimport { DatePipe } from '@angular/common'\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport { CurrencyPipe} from '@angular/common';\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-info-ord',\r\n templateUrl: './info-ord.component.html',\r\n styleUrls: ['./info-ord.component.scss']\r\n})\r\nexport class InfoOrdComponent implements OnInit {\r\n\r\n @Output() emitList = new EventEmitter();\r\n @Output() emitClose = new EventEmitter();\r\n @Input() info: {\r\n moType: number; //目前編輯狀態 4.查看\r\n orgType: number; //1.訂單紀錄 2.發票紀錄 \r\n ordNo:string;\r\n };\r\n\r\n @ViewChild(\"Modal\") Modal: TemplateRef;\r\n modalRef = null; //談窗鉤子\r\n\r\n\r\n //基本資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n authChangeSub:any;\r\n\r\n orderDetail:any;\r\n\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null;\r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID')\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID= (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null\r\n\r\n\r\n \r\n \r\n\r\n\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info)\r\n\r\n }\r\n\r\n\r\n onOpen(info){\r\n this.getOrderDetail(info.ordNo) \r\n\r\n\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n \r\n\r\n\r\n \r\n //取得詳細資料\r\n getOrderDetail(ordno) {\r\n\r\n this.http.get('api/OrderManage/GetOrderDetail?ORDNo=' + ordno).subscribe({\r\n next: data => {\r\n this.orderDetail = _.assign(data.LIST[0])\r\n\r\n \r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n onClose(){\r\n this.modalRef.close()\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n \r\n \r\n 媒體申報檔對帳\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n {{e.content}}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{e.content}}\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n\r\n
","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from'@angular/core';\r\nimport { HttpClient, HttpResponse } from'@angular/common/http';\r\nimport { NbDialogService } from'@nebular/theme';\r\nimport { CookieService } from'ngx-cookie-service';\r\nimport * as XLSX from 'xlsx';\r\n\r\nimport * as _ from'lodash';\r\n\r\n@Component({\r\n selector:'app-report-reconciliation',\r\n templateUrl:'./report-reconciliation.component.html',\r\n styleUrls: ['./report-reconciliation.component.scss']\r\n})\r\nexport class ReportReconciliationComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() info: {\r\n ORG_Company_ID: number,\r\n ORG_Store_ID: number;\r\n };\r\n\r\n \r\n //---------\"與父組件共用,不可改位址------->---------------------\r\n @Input() ProductList: Array; //細項清單\r\n\r\n //-----------------------彈窗----------------------------\r\n\r\n modalRef = null; //彈窗鉤子\r\n PdModalRef = null; //彈窗鉤子\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n @ViewChild('PdModal') PdModal :TemplateRef\r\n\r\n //--------------------------------------------------------\r\n //資料清單\r\n year: number;\r\n month: number;\r\n\r\n YearList: any[] = [];\r\n MonthList: any[] = [\r\n { value: 1, content: '1月2月' },\r\n { value: 2, content: '3月4月' },\r\n { value: 3, content: '5月6月' },\r\n { value: 4, content: '7月8月' },\r\n { value: 5, content: '9月10月' },\r\n { value: 6, content: '11月12月' },\r\n ];\r\n\r\n selectedFile: File = null;\r\n fileName: string = '';\r\n uploadProgress: number = 0;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) \r\n {\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n ngAfterViewInit(){ \r\n this.onOpen()\r\n }\r\n\r\n onOpen() {\r\n const currentDate = new Date();\r\n const currentYear = currentDate.getFullYear();\r\n const currentMonth = currentDate.getMonth() + 1;\r\n \r\n // 生成年份列表\r\n this.YearList = Array.from({ length: 5 }, (_, i) => {\r\n const year = currentYear - 4 + i;\r\n return { value: year, content: `${year}年` };\r\n });\r\n \r\n // 設置年份\r\n this.year = currentYear;\r\n \r\n // 設置月份\r\n if (currentMonth >= 3) {\r\n this.month = Math.ceil((currentMonth - 2) / 2);\r\n } else {\r\n this.year--;\r\n this.month = 6;\r\n }\r\n \r\n // 開啟彈窗\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(() => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //上傳媒體申報檔\r\n onFileSelected(event: any) {\r\n const file = event.target.files[0];\r\n if (file) {\r\n this.selectedFile = file;\r\n this.fileName = file.name;\r\n }\r\n }\r\n\r\n\r\n onUpdate() {\r\n if (this.selectedFile) {\r\n const formData = new FormData();\r\n formData.append('file', this.selectedFile, this.selectedFile.name);\r\n formData.append('ORG_Company_ID', this.info.ORG_Company_ID.toString());\r\n formData.append('ORG_Store_ID', this.info.ORG_Store_ID.toString());\r\n formData.append('year', this.year.toString());\r\n formData.append('month', this.month.toString());\r\n \r\n this.http.post('api/InvoiceLogReport/UploadMediaReport', formData).subscribe({\r\n next: (response: InvoiceLogReportREP) => {\r\n if (response.DATA && response.DATA.LIST) {\r\n if (response.DATA.LIST.length > 0) {\r\n this.generateExcel(response.DATA.LIST);\r\n alert(`發現 ${response.DATA.LIST.length} 筆不匹配的發票`);\r\n } else {\r\n alert('所有發票都匹配');\r\n }\r\n } else {\r\n alert('處理失敗'+ response.RESULT);\r\n }\r\n },\r\n error: (error) => {\r\n alert('上傳過程中發生錯誤'+ error);\r\n }\r\n });\r\n } else {\r\n alert('沒有選擇文件');\r\n }\r\n }\r\n\r\n generateExcel(data: InvoiceLogDTO[]) {\r\n let sheetData = data.map(e => ({\r\n '發票號碼': e.InvoiceNumber,\r\n '訂單號碼': e.ORDNo || '',\r\n '結帳日期': e.CheckoutDateTime || '',\r\n '發票開立日期': e.CDate || '',\r\n '取消日期': e.CancelDateTime || '',\r\n '總金額': e.TotalCash || '',\r\n '不匹配原因': e.Mismatches ? e.Mismatches.join(', ') : '',\r\n }));\r\n \r\n const wb: XLSX.WorkBook = XLSX.utils.book_new();\r\n const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet(sheetData);\r\n \r\n XLSX.utils.book_append_sheet(wb, ws, \"對帳結果\");\r\n \r\n XLSX.writeFile(wb, '發票對帳結果.xlsx');\r\n }\r\n}\r\n\r\n\r\ninterface InvoiceLogDTO {\r\n InvoiceNumber: string;\r\n ORDNo?: string;\r\n CreateDate?: string;\r\n CDate?: string;\r\n CheckoutDateTime?: string;\r\n CancelDateTime?: string;\r\n ORDKindName?: string;\r\n StoreName?: string;\r\n Cash?: number;\r\n ServiceFee?: number;\r\n ShippingFee?: number;\r\n TotalDiscountCash?: number;\r\n TotalCash?: number;\r\n Name?: string;\r\n Phone?: string;\r\n Status?: string;\r\n TaxType?: string;\r\n TaxAmount?: number;\r\n ORG_Company_ID?: number;\r\n ORG_Store_ID?: number;\r\n CreateBy?: string;\r\n POSName?: string;\r\n Mismatches?: string[];\r\n}\r\n\r\ninterface InvoiceLogReportREP {\r\n DATA: {\r\n LIST: InvoiceLogDTO[];\r\n Total: number;\r\n TotalPages: number;\r\n Page: number;\r\n PerPage: number;\r\n };\r\n RESULT: string;\r\n Tag?: any;\r\n}","\r\n\r\n \r\n \r\n 選擇附加品項分類\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n {{ e.content }}\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
分類名稱選擇建立門市
{{ e.GroupName }}{{e.CreateStoreName}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n 選擇附加品項群組\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
建立門市附加品項群組標題選項內容選項類型必選選擇
{{item.CreateStoreName}}{{item.GroupName}}{{item.Content}}{{item.AttachItemKindName}}{{item.IsRequiredName}}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n ","\r\n import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\n import { HttpClient } from '@angular/common/http';\r\n import { NbDialogService } from '@nebular/theme';\r\n import { CookieService } from 'ngx-cookie-service';\r\n \r\n import * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-select-attachmoudle',\r\n templateUrl: './select-attach-moudle.component.html',\r\n styleUrls: ['./select-attach-moudle.component.scss']\r\n})\r\nexport class SelectAttachMoudleComponent implements OnInit {\r\n\r\n\r\n USR_AccountInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array; //已選資料_來源\r\n @Input() info: {\r\n IsLoding:boolean\r\n ORG_Store_ID: number,\r\n };\r\n\r\n //-----------------------談窗----------------------------\r\n\r\n modalRef = null; //談窗鉤子\r\n PdModalRef = null; //談窗鉤子\r\n\r\n @ViewChild('Modal') Modal: TemplateRef\r\n @ViewChild('PdModal') PdModal: TemplateRef\r\n\r\n //--------------------------------------------------------\r\n //資料清單\r\n mainDataList: Array; //選單資料\r\n showList: Array; //群組顯示資料 \r\n showListPd: Array; //商品顯示資料 \r\n selectList : Array = []; \r\n query = { //查詢選項\r\n searchKey: \"\"\r\n }\r\n status: { //當前狀態\r\n isSelectAll: boolean //是否已全選\r\n showType: number // 顯示有選過的\r\n }\r\n\r\n //查詢的門市\r\n storeSelectList: selectData[];\r\n selectORG_Store_ID: number;\r\n\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null;\r\n \r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID = (cookie_sid && cookie_sid != '') ? parseInt(cookie_sid) : null\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'));\r\n }\r\n\r\n\r\n\r\n ngOnInit(): void {\r\n\r\n \r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info, this.orgData)\r\n }\r\n\r\n\r\n \r\n //取得門市清單 API\r\n getStoreList(fun) {//取得門市清單 USP_YOPOSWebGetStoreList\r\n\r\n \r\n\r\n\r\n\r\n this.http.post('api/ORGStore/StoreList', {\r\n \r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: this.ORG_Store_ID,\r\n }).subscribe({\r\n next: data => {\r\n \r\n this.storeSelectList = [];\r\n \r\n \r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = 0;\r\n Item.content = '總部';\r\n this.storeSelectList.push(Item);\r\n \r\n if(this.ORG_Store_ID ){\r\n \r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = this.ORG_Store_ID;\r\n Item.content = data.LIST.find(x=>x.ORG_Store_ID == this.ORG_Store_ID ).StoreName;\r\n this.storeSelectList.push(Item);\r\n \r\n }else{\r\n \r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.storeSelectList.push(selectItem);\r\n });\r\n \r\n \r\n }\r\n \r\n // 預設點第一個\r\n if (this.storeSelectList.length > 0) {\r\n this.selectORG_Store_ID = this.storeSelectList[0].value\r\n }\r\n\r\n if(fun)\r\n fun()\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n \r\n }\r\n\r\n\r\n onOpen(info, dataList) {\r\n\r\n \r\n\r\n if (info)\r\n this.info = info\r\n\r\n this.getStoreList(()=>{\r\n\r\n //api抓資料\r\n this.getPdGroupList((data) => {\r\n this.showData(data, dataList)\r\n\r\n })\r\n })\r\n\r\n\r\n //開啟談窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n // 組資料\r\n showData(data, orgData) {\r\n \r\n let ProductList = [];\r\n data.forEach(k => { \r\n let g = new ProductGroup()\r\n Object.assign(g,k) \r\n if (!orgData) {\r\n g.PDList = null \r\n g.IsOK_Group = false\r\n }\r\n ProductList.push(g)\r\n });\r\n\r\n //判斷是否勾選,並撈取有勾選得群組商品資料\r\n if (orgData) { //orgData 格式 {GroupNo:y.GroupNo,No:y.No}\r\n let list = _.groupBy(orgData, 'GroupNo');\r\n let key = _.keys(list)\r\n key.forEach(x=>{\r\n let group = _.find(ProductList, a => a.GroupNo == x)\r\n if (group) {\r\n group.IsOK_Group = true\r\n if(!group.PDList){\r\n this.getPdList(group,()=>{ \r\n _.forEach(group.PDList, p => {\r\n if(_.findIndex(orgData, op => p.No == op.No)>-1){\r\n p.IsOK_Group = true\r\n p.IsOK_Product = true\r\n } \r\n });\r\n \r\n group.IsOK_Product_Count()\r\n }) \r\n } \r\n \r\n }\r\n })\r\n \r\n }\r\n \r\n this.mainDataList = ProductList\r\n //合併到原始資料\r\n this.orgData = _.cloneDeep(this.mainDataList)\r\n }\r\n\r\n \r\n\r\n //---------------------------------------------------\r\n\r\n //查詢\r\n onQuery() {\r\n\r\n //組合舊資料\r\n let useData = this.tranfOrgData(this.selectList)\r\n \r\n\r\n\r\n this.getPdGroupList((data) => {\r\n this.showData(data, useData)\r\n })\r\n\r\n }\r\n\r\n //商品群組 選擇\r\n onSelectG(groupData) {\r\n if (!groupData.PDList ) {\r\n this.getPdList(groupData,()=>{ \r\n\r\n _.forEach(groupData.PDList, p => {\r\n p.IsOK_Group = groupData.IsOK_Group\r\n p.IsOK_Product = groupData.IsOK_Group\r\n this.insertData(p,groupData.IsOK_Group)\r\n });\r\n groupData.IsOK_Product_Count()\r\n\r\n \r\n \r\n })\r\n }else{\r\n _.forEach(groupData.PDList, p => {\r\n p.IsOK_Group = groupData.IsOK_Group\r\n p.IsOK_Product = groupData.IsOK_Group\r\n this.insertData(p,groupData.IsOK_Group)\r\n });\r\n groupData.IsOK_Product_Count()\r\n }\r\n\r\n \r\n }\r\n\r\n \r\n \r\n\r\n //處存商品群組\r\n onSavePdG() {\r\n\r\n let useData= []\r\n if(this.mainDataList){\r\n useData = this.tranfOrgData(this.selectList) \r\n }\r\n\r\n \r\n \r\n this.emitList.emit(useData)\r\n this.modalRef.close()\r\n }\r\n\r\n\r\n \r\n \r\n\r\n //---------------------------------------------------\r\n\r\n\r\n //商品 打開彈窗\r\n onOpenPd(groupData) {\r\n if (!groupData.PDList) {\r\n this.getPdList(groupData,()=>{\r\n this.showListPd = _.cloneDeep(groupData.PDList) \r\n this.PdModalRef = this.dialogService.open(this.PdModal, {})\r\n })\r\n }else{\r\n\r\n this.showListPd = _.cloneDeep(groupData.PDList) \r\n this.PdModalRef = this.dialogService.open(this.PdModal, {})\r\n \r\n }\r\n \r\n }\r\n\r\n //商品 處存\r\n onSavePd() {\r\n \r\n\r\n let GID = this.showListPd[0].PRDMenuAttachItemModelNo\r\n let group = _.find(this.mainDataList, a => a.PRDMenuAttachItemModelNo == GID)\r\n \r\n _.assign(group.PDList, this.showListPd)\r\n group.IsOK_Group = _.findIndex(group.PDList, 'IsOK_Product') > -1\r\n group.IsOK_Product_Count()\r\n this.PdModalRef.close()\r\n }\r\n\r\n //---------------------------------------------------\r\n\r\n //將畫面型資料轉成結果資料\r\n tranfOrgData(dataList){\r\n let useData = []\r\n dataList.forEach(x=>{\r\n // if(x.PDList){\r\n // x.PDList.forEach(y=>{\r\n // if(y.IsOK_Product)\r\n if(x.IsOK_Product)\r\n // useData.push(y)\r\n useData.push(x)\r\n })\r\n // } \r\n // })\r\n\r\n return useData\r\n }\r\n\r\n //將選擇的資料和併入selectList\r\n insertData(data,isAdd){\r\n if(isAdd){\r\n this.selectList.push(data)\r\n }else{\r\n this.selectList = this.selectList.filter(x=>x.No!=data.No)\r\n }\r\n \r\n }\r\n\r\n\r\n //取得可用商品資料\r\n getPdGroupList(fun) {\r\n let par = {\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n CreateStore : this.selectORG_Store_ID,\r\n IsDelete: false,\r\n Keyword: this.query.searchKey,\r\n }\r\n\r\n this.info.IsLoding= true\r\n this.http.post('api/AttachItemSetting/GetAttachItemGroup', par).subscribe({\r\n next: data => {\r\n this.info.IsLoding= false\r\n data.LIST.forEach(x=>x.GroupNo = x.PRDMenuAttachItemModelNo)\r\n\r\n if (fun)\r\n fun(data.LIST)\r\n\r\n \r\n\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n this.info.IsLoding= false\r\n\r\n }\r\n });\r\n }\r\n\r\n //取得內容清單\r\n getPdList(groupData,fun) {\r\n\r\n this.info.IsLoding= true\r\n this.http.get('api/AttachItemSetting/GetAttachItemList?PRDMenuAttachItemModelNo=' +\r\n groupData.PRDMenuAttachItemModelNo +\r\n `${this.ORG_Store_ID !=null ? \"&ORG_Store_ID=\" + this.ORG_Store_ID : ''}`+\r\n '&IsDelete=false&Page=1&PerPage=9999' \r\n ).subscribe({\r\n next: data => {\r\n groupData.PDList = data.LIST\r\n groupData.PDList.forEach(x=>{\r\n x.GroupNo = groupData.GroupNo\r\n x.No = x.PRDMenuAttachItemGroupNo\r\n })\r\n\r\n if (fun) \r\n fun(data.LIST)\r\n\r\n this.info.IsLoding= false\r\n\r\n \r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n this.info.IsLoding= false\r\n\r\n }\r\n });\r\n\r\n\r\n\r\n\r\n }\r\n \r\n\r\n\r\n}\r\n\r\nclass ProductGroup {\r\n GroupNo: string;\r\n GroupName: string;\r\n IsOK_Group: boolean;\r\n PDList: Product[];\r\n CountStr: string;\r\n IsOK_Product_Count() {\r\n // console.log('go')\r\n let use = _.filter(this.PDList, 'IsOK_Product').length\r\n this.CountStr = (this.PDList && use == this.PDList.length) ? '已全選' : `已選${use}項`\r\n }\r\n\r\n}\r\n\r\nclass Product {\r\n No: string; \r\n IsOK_Group: boolean;\r\n IsOK_Product: boolean;\r\n //-----------------其他\r\n\r\n}\r\n\r\n\r\nclass selectData {\r\n value: number;//\r\n content: string;//\r\n info:string\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n"," \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n {{title}} \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ e.content }}\r\n \r\n \r\n {{ e.name }}\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
選取選項名稱數量原價建立門市
\r\n \r\n \r\n \r\n \r\n {{item.ItemName}}\r\n
\r\n
{{item.Quantity}}{{item.Cash}}{{item.CreateStoreName}}
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","\r\nimport { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport * as _ from 'lodash';\r\n\r\n\r\n@Component({\r\n selector: 'app-select-attach-print',\r\n templateUrl: './select-attach-print.component.html',\r\n styleUrls: ['./select-attach-print.component.scss']\r\n})\r\nexport class SelectAttachPrintComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array; //已選資料_來源\r\n @Input() title: string; \r\n mainDataList: Array; //已選資料\r\n infoList: Array; //選項資料\r\n showList: Array; //顯示資料\r\n @Input() info : {//其他設定\r\n ORG_Company_ID: number,\r\n ORG_Store_ID: number,\r\n IsLoding:boolean\r\n }; \r\n query : { //查詢選項\r\n searchKey : string\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n list={\r\n showType : [\r\n {name:\"全部\",value:0},\r\n {name:\"已選\",value:1},\r\n {name:\"未選\",value:2}]\r\n }\r\n\r\n\r\n modalRef = null; //談窗鉤子\r\n \r\n //查詢的門市\r\n storeSelectList: selectData[];\r\n selectORG_Store_ID: number;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n ) { }\r\n\r\n //info 資料來源 = callAPI / 外部丟入\r\n //data 來源 = MainData[ListName]\r\n \r\n //全選功能:\r\n // 撈取全部資料以提供全選 - 那麼分頁將不再重要 : 建議改成設定欄位\r\n // 全選讀取設定,非全選讀取陣列 \r\n // 同上問題,在經過搜尋之後的全選將有所刪減,因此除了\"全選設定欄位\",還要加上查詢欄位,在後端進行查詢\r\n // 同上問題,過程中的其他方的新增,可能導致有額外資料產生。\r\n // 但不管是丟設定到後端查後取資,一開始取全資但顯示還是每頁只抓當頁資料,都可能造成以上問題。\r\n // 因此最佳處理還是一開始就丟出全部到前端顯示。 但如此行為可能導致效能緩慢? \r\n // 單頁全選-可以正常運作\r\n\r\n ngOnInit(): void {\r\n this.query = { searchKey :\"\"}\r\n \r\n \r\n }\r\n\r\n\r\n ngAfterViewInit(){ console.log('sa',this.info)\r\n this.onOpen(this.info, this.orgData)\r\n\r\n \r\n }\r\n\r\n\r\n\r\n //取得門市清單 API\r\n getStoreList() {//取得門市清單 USP_YOPOSWebGetStoreList\r\n\r\n \r\n\r\n\r\n\r\n this.http.post('api/ORGStore/StoreList', {\r\n\r\n ORG_Company_ID: this.info.ORG_Company_ID,\r\n ORG_Store_ID: this.info.ORG_Store_ID,\r\n }).subscribe({\r\n next: data => {\r\n\r\n this.storeSelectList = [];\r\n\r\n\r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = 0;\r\n Item.content = '總部';\r\n this.storeSelectList.push(Item);\r\n \r\n if(this.info.ORG_Store_ID ){\r\n \r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = this.info.ORG_Store_ID;\r\n Item.content = data.LIST.find(x=>x.ORG_Store_ID == this.info.ORG_Store_ID ).StoreName;\r\n this.storeSelectList.push(Item);\r\n \r\n }else{\r\n\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.storeSelectList.push(selectItem);\r\n });\r\n \r\n \r\n }\r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n // 預設點第一個\r\n if (this.storeSelectList.length > 0) {\r\n this.selectORG_Store_ID = this.storeSelectList[0].value\r\n }\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n}\r\n\r\n\r\n\r\n //打開選擇附加品項\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n onOpen(info,data) {\r\n this.getStoreList()\r\n\r\n if(info){\r\n this.info = info\r\n }\r\n if(data){\r\n this.orgData = data\r\n }\r\n \r\n //初始化查詢資料\r\n this.query.searchKey = \"\"\r\n this.mainDataList = []\r\n this.status= { \r\n isSelectAll : true,\r\n showType:0\r\n }\r\n \r\n //處理已選資料\r\n if(this.orgData && this.orgData.length > 0){ \r\n this.mainDataList = _.cloneDeep(this.orgData)\r\n // this.orgDataList.forEach(x => {\r\n // let obj = _.assign({}, x)\r\n // this.mainDataList.push(obj)\r\n // })\r\n } \r\n \r\n //撈取可選資料 並合成已選資料\r\n this.onQuery() \r\n\r\n //開啟談窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //查詢\r\n onQuery( ) {\r\n \r\n this.getInfoList((data)=>{\r\n \r\n //初始化\r\n this.infoList = data\r\n this.showList = data\r\n this.showList.forEach(x => {\r\n\r\n let obj = _.find(this.mainDataList, y => this.judgeSame(y,x))\r\n if (obj) {\r\n x.isSelect = true\r\n } else {\r\n x.isSelect = false\r\n }\r\n })\r\n\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n\r\n });\r\n\r\n }\r\n\r\n onShowType(){\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n }\r\n\r\n //選擇\r\n onSelect(isAdd:boolean, item ) {\r\n if(isAdd){\r\n item.isSelect = true\r\n item.Sorting = 0\r\n this.mainDataList.push(item);\r\n\r\n }else{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n } \r\n\r\n this.judgeSelectAll()\r\n }\r\n\r\n //全選\r\n onSelectAll(){\r\n \r\n \r\n if(this.status.isSelectAll){\r\n this.showList.forEach(item=>{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n })\r\n }\r\n else{ \r\n this.showList.forEach(item=>{\r\n item.isSelect = true\r\n item.Sorting = 0\r\n this.mainDataList.push(item);\r\n })\r\n }\r\n \r\n this.status.isSelectAll = !this.status.isSelectAll\r\n }\r\n\r\n //處存\r\n onSave() {\r\n \r\n this.orgData.splice(0,this.orgData.length );\r\n let i = 1;\r\n this.mainDataList.forEach(x=>{ \r\n // x.Sorting = i;\r\n // i++\r\n this.orgData.push(x)\r\n })\r\n\r\n \r\n //TODO 確認附加品項表格中修改後 會影響到此嗎? 應該禁止修改名稱\r\n this.emitList.emit(this.orgData)\r\n this.modalRef.close()\r\n\r\n\r\n //重新計算順序 並且重載列表資料\r\n // var i = 1;\r\n // this.mainDataList.forEach(function (data) {\r\n // data.Sorting = i;\r\n // i++\r\n // });\r\n // this.orgDataList.load(this.mainDataList);\r\n\r\n }\r\n\r\n //--------------------------------------------------------------------\r\n \r\n \r\n //過濾已選未選等\r\n filterShowType(){\r\n if(this.status.showType==0){\r\n this.showList = _.concat([],this.infoList)\r\n }\r\n else if(this.status.showType==1){\r\n this.showList = _.filter(this.infoList,x=>x.isSelect)\r\n }\r\n else{\r\n this.showList = _.filter(this.infoList,x=> !x.isSelect)\r\n }\r\n }\r\n\r\n //判斷是否全選\r\n judgeSelectAll(){\r\n if(!this.showList || this.showList.length==0){\r\n return true\r\n } \r\n \r\n this.status.isSelectAll = this.showList.every(x=>{\r\n return this.mainDataList.some(y=>this.judgeSame(y,x)) \r\n })\r\n \r\n\r\n }\r\n\r\n\r\n//--------------------------------------------客製化------------------------------------------------------\r\n //比較\r\n judgeSame(y , x){\r\n return y.PRDAttachItemNo == x.PRDAttachItemNo\r\n // y.PRDProductNo == x.PRDProductNo &&\r\n // y.PRDProductGroupNo == x.PRDProductGroupNo \r\n \r\n }\r\n\r\n //取得選擇附加品項清單\r\n getInfoList( callback) {\r\n //取得含有商品的附加品項\r\n this.info.IsLoding= true\r\n this.http.get(\r\n `api/AttachItemSetting/GetAttachPrintItemOptionList?` + \r\n `ORG_Company_ID=${this.info.ORG_Company_ID}`+\r\n ((this.query.searchKey == null || this.query.searchKey == '') ? '' : ('&keyword=' + this.query.searchKey)) +\r\n `${this.selectORG_Store_ID !=null ? \"&CreateStore=\" + this.selectORG_Store_ID : ''}`+\r\n '&IsDelete=' + false +'&Page=' + 1+'&PerPage=' + 2147483647\r\n ).subscribe({\r\n next: data => {\r\n\r\n if(callback)\r\n callback(data.LIST)\r\n\r\n // data.LIST.forEach(element => {\r\n // //門市共用下拉選單\r\n // let item = {};\r\n // item.PRDAttachItemNo = element.PRDAttachItemNo;\r\n // item.AttachItemName = element.AttachItemName;\r\n // item.PRDProductGroupNo = element.PRDProductGroupNo;\r\n // item.PRDProductNo = element.PRDProductNo;\r\n // item.Quantity = element.Quantity;\r\n // item.Cash = element.Cash;\r\n // item.ProductName = element.ProductName;\r\n // item.ItemName = element.ItemName;\r\n\r\n // });\r\n\r\n\r\n this.info.IsLoding= false\r\n },\r\n error: error => {\r\n //this.errorMessage = error.message;\r\n console.error('There was an error!', error);\r\n this.info.IsLoding= false\r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n// 參考資料\r\n// $scope.shared.quickStoreNew = {\r\n// mOName: \"#shared-quickStoreNew\",\r\n// disableChoose: null, //禁止選擇\r\n// motype: null,// 1:普通,2:公司已固定\r\n// type: null, //標題類型\r\n// SelectType: 2, // 1-單選 2-多選\r\n// pagelistinfo: null, //分頁資料\r\n// companyId: \"\",//公司ID\r\n// condiName: \"\",//查詢文字 \r\n// returnObj: [],//結果物件 多選[] 單選{}\r\n// detail: [], //單頁資料\r\n// allDetail: [], //全部資料\r\n// resultFun: null,//回傳時觸發 \r\n// allSelectName: '全選',\r\n// onePageSelectName: '本頁全選',\r\n// keyFN: {\r\n// S_list: 'storeId', //商店列表關鍵字\r\n// S_return: 'storeId', //回傳物件關鍵字\r\n// },\r\n// transf_return: function (obj_list, active) { ///回傳物件需求欄位\r\n// return {\r\n// storeId: obj_list.storeId,\r\n// store: obj_list.store,\r\n// companyId: obj_list.companyId,\r\n// company: obj_list.company,\r\n// active: active\r\n// }\r\n// },\r\n// transf_list: function (obj_api) { ///商店列表需求欄位\r\n// return {\r\n// storeId: obj_api.storeId,\r\n// store: obj_api.store,\r\n// companyId: obj_api.companyId,\r\n// company: obj_api.company,\r\n// active: false\r\n// }\r\n// },\r\n// API_getAllList: svr_marketing.shared.getAllStores,\r\n// API_getList: svr_marketing.shared.getStores,\r\n// open: function (obj, disableChoose, defCompany, SelectType, resultFun) {\r\n// let my = $scope.shared.quickStoreNew\r\n// $(my.mOName).modal('show')\r\n// my.disableChoose = !disableChoose ? false : disableChoose;\r\n\r\n\r\n// //初始化 \r\n// my.condiName = '';\r\n// if (my.pagelistinfo)\r\n// my.pagelistinfo.pageindex = 1\r\n\r\n\r\n// //取得原始資料\r\n// if (defCompany) {\r\n// my.companyId = defCompany;\r\n// }\r\n\r\n// my.title = '選擇門市';\r\n// if (!obj) obj = [];\r\n// my.returnObj = obj;\r\n// if (!SelectType) SelectType = 2\r\n// my.SelectType = SelectType\r\n// my.resultFun = resultFun\r\n\r\n// my.find()\r\n// },\r\n// find: function () {\r\n// let my = $scope.shared.quickStoreNew\r\n// //取得單頁資料\r\n// my.getDetail(function () {\r\n// my.showItem(my.detail)\r\n// my.showBtnName(2)\r\n// });\r\n// //取得全部資料\r\n// my.getAllDetail(function () {\r\n// my.showBtnName(1)\r\n// });\r\n// },\r\n// onPage: function () {\r\n// let my = $scope.shared.quickStoreNew\r\n// //取得單頁資料\r\n// my.getDetail(function () {\r\n// my.showItem(my.detail)\r\n// my.showBtnName(2)\r\n// });\r\n// },\r\n// onSelect: function (x, active) {\r\n// let my = $scope.shared.quickStoreNew\r\n// switch (my.SelectType) {\r\n\r\n// case 1:\r\n// // my.returnObj.store = x.store;\r\n// // my.returnObj.storeId = x.storeId;\r\n// Object.assign(my.returnObj, transf(x, null))\r\n// $(mOName).modal('hide');\r\n// break;\r\n// default:\r\n// let arr = []\r\n// arr.push(x)\r\n\r\n// my.showItem(arr, active)\r\n// my.showBtnName(1)\r\n// my.showBtnName(2)\r\n\r\n\r\n// break;\r\n\r\n// }\r\n\r\n// if (my.resultFun)\r\n// my.resultFun()\r\n// },\r\n// onSelectAll: function (type) {\r\n// let my = $scope.shared.quickStoreNew\r\n// let storeList = {}\r\n// if (type == 1)\r\n// storeList = my.allDetail\r\n// else\r\n// storeList = my.detail\r\n\r\n// let active = 1\r\n// let t_Num = 0\r\n\r\n// //判斷 T or F :項目非以全選時 改成全部取消\r\n// storeList.forEach(x => {\r\n// let foo = my.returnObj.find(y => y[my.keyFN.S_return] == x[my.keyFN.S_list] && y.active)\r\n// if (foo) {\r\n// t_Num++;\r\n// }\r\n// })\r\n// if (t_Num == storeList.length) {\r\n// active = 0\r\n// }\r\n// else {\r\n// active = 1\r\n// }\r\n\r\n// //塞入\r\n// my.showItem(storeList, active)\r\n// my.showBtnName(1)\r\n// my.showBtnName(2)\r\n\r\n// if (my.resultFun)\r\n// my.resultFun()\r\n\r\n// },\r\n// showItem: function (dataList, active) {\r\n// let my = $scope.shared.quickStoreNew\r\n// //判斷是否塞入\r\n// dataList.forEach(x => {\r\n// //待回傳資料\r\n\r\n// let apiD = null\r\n// if (my.SelectType == 2) //多選\r\n// apiD = my.returnObj.find(y => y[my.keyFN.S_return] == x[my.keyFN.S_list])\r\n// else //單選\r\n// apiD = my.returnObj\r\n\r\n// //初始化資料 : 單頁\r\n// if (active == null || active == undefined) {\r\n// if (apiD) {\r\n// x.active = apiD.active\r\n// }\r\n// }\r\n// //點擊事件 :全選、頁選、單選\r\n// else {\r\n// let pageD = my.detail.find(y => y[my.keyFN.S_list] == x[my.keyFN.S_list])\r\n// if (pageD)\r\n// pageD.active = active\r\n\r\n// //灌入資料\r\n// if (apiD) {\r\n// apiD.active = active;\r\n// }\r\n// else {\r\n// my.returnObj.push(\r\n// my.transf_return(x, active))\r\n\r\n// }\r\n// }\r\n\r\n\r\n// })\r\n// },\r\n// showBtnName: function (type) {\r\n// let my = $scope.shared.quickStoreNew\r\n// //只有多選需要執行此工作\r\n// if (my.SelectType != 2) return\r\n\r\n// let storeList = {}\r\n// if (type == 1)\r\n// storeList = my.allDetail\r\n// else\r\n// storeList = my.detail\r\n\r\n\r\n// //項目非已全選時 改成全部取消\r\n// let t_NumA = 0\r\n\r\n// storeList.forEach(x => {\r\n// let foo = my.returnObj.find(y => y[my.keyFN.S_return] == x[my.keyFN.S_list] && y.active)\r\n// if (foo) {\r\n// t_NumA++;\r\n// }\r\n// })\r\n\r\n// if (type == 1)\r\n// my.allSelectName =\r\n// (t_NumA == storeList.length) ? '取消' : '全選'\r\n// else\r\n// my.onePageSelectName =\r\n// (t_NumA == storeList.length) ? '本頁取消' : '本頁全選'\r\n// },\r\n// getAllDetail: function (callback) {\r\n// let my = $scope.shared.quickStoreNew\r\n// //只有多選需要執行此工作\r\n// if (my.SelectType != 2) return\r\n\r\n// //初始化\r\n// my.allDetail = [];\r\n// //參數\r\n\r\n// let par = {}\r\n// par.store = my.condiName\r\n// par.companyId = my.companyId\r\n// //呼叫\r\n// my.API_getAllList(par, function (data) {\r\n// let result = data.contentData.content\r\n// my.allDetail = result.map(x => my.transf_list(x));\r\n\r\n// callback()\r\n// });\r\n// },\r\n// getDetail: function (callback) {\r\n// let my = $scope.shared.quickStoreNew\r\n// //初始化\r\n// my.detail = [];\r\n// //參數 \r\n// let par = null\r\n// if (my.pagelistinfo)\r\n// par = { pageindex: my.pagelistinfo.pageindex };\r\n// else\r\n// par = { pageindex: 1 };\r\n// par.store = my.condiName;\r\n// par.companyId = my.companyId\r\n// //呼叫\r\n// my.API_getList(par, function (data) {\r\n// let result = data.contentData.content\r\n// my.detail = result.map(x => my.transf_list(x));\r\n// my.pagelistinfo = data.contentData.pageinfo;\r\n\r\n// callback()\r\n// });\r\n\r\n\r\n// },\r\n// }\r\n\r\n\r\nclass selectData {\r\n value: number;//\r\n content: string;//\r\n info:string\r\n}"," \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n {{title}} \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ e.content }}\r\n \r\n \r\n {{ e.name }}\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
選取選項名稱數量原價建立門市
\r\n \r\n \r\n \r\n \r\n {{item.ItemName}}\r\n
\r\n
{{item.Quantity}}{{item.Cash}}{{item.CreateStoreName}}
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","\r\nimport { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport * as _ from 'lodash';\r\n\r\n\r\n@Component({\r\n selector: 'app-select-attach',\r\n templateUrl: './select-attach.component.html',\r\n styleUrls: ['./select-attach.component.scss']\r\n})\r\nexport class SelectAttachComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array; //已選資料_來源\r\n @Input() title: string; \r\n mainDataList: Array; //已選資料\r\n infoList: Array; //選項資料\r\n showList: Array; //顯示資料\r\n @Input() info : {//其他設定\r\n ORG_Company_ID: number,\r\n ORG_Store_ID: number,\r\n IsLoding:boolean\r\n }; \r\n query : { //查詢選項\r\n searchKey : string\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n list={\r\n showType : [\r\n {name:\"全部\",value:0},\r\n {name:\"已選\",value:1},\r\n {name:\"未選\",value:2}]\r\n }\r\n\r\n\r\n modalRef = null; //談窗鉤子\r\n \r\n //查詢的門市\r\n storeSelectList: selectData[];\r\n selectORG_Store_ID: number;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n ) { }\r\n\r\n //info 資料來源 = callAPI / 外部丟入\r\n //data 來源 = MainData[ListName]\r\n \r\n //全選功能:\r\n // 撈取全部資料以提供全選 - 那麼分頁將不再重要 : 建議改成設定欄位\r\n // 全選讀取設定,非全選讀取陣列 \r\n // 同上問題,在經過搜尋之後的全選將有所刪減,因此除了\"全選設定欄位\",還要加上查詢欄位,在後端進行查詢\r\n // 同上問題,過程中的其他方的新增,可能導致有額外資料產生。\r\n // 但不管是丟設定到後端查後取資,一開始取全資但顯示還是每頁只抓當頁資料,都可能造成以上問題。\r\n // 因此最佳處理還是一開始就丟出全部到前端顯示。 但如此行為可能導致效能緩慢? \r\n // 單頁全選-可以正常運作\r\n\r\n ngOnInit(): void {\r\n this.query = { searchKey :\"\"}\r\n \r\n \r\n }\r\n\r\n\r\n ngAfterViewInit(){ console.log('sa',this.info)\r\n this.onOpen(this.info, this.orgData)\r\n\r\n \r\n }\r\n\r\n\r\n\r\n //取得門市清單 API\r\n getStoreList() {//取得門市清單 USP_YOPOSWebGetStoreList\r\n\r\n \r\n\r\n\r\n\r\n this.http.post('api/ORGStore/StoreList', {\r\n\r\n ORG_Company_ID: this.info.ORG_Company_ID,\r\n ORG_Store_ID: this.info.ORG_Store_ID,\r\n }).subscribe({\r\n next: data => {\r\n\r\n this.storeSelectList = [];\r\n\r\n\r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = 0;\r\n Item.content = '總部';\r\n this.storeSelectList.push(Item);\r\n \r\n if(this.info.ORG_Store_ID ){\r\n \r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = this.info.ORG_Store_ID;\r\n Item.content = data.LIST.find(x=>x.ORG_Store_ID == this.info.ORG_Store_ID ).StoreName;\r\n this.storeSelectList.push(Item);\r\n \r\n }else{\r\n\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.storeSelectList.push(selectItem);\r\n });\r\n \r\n \r\n }\r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n // 預設點第一個\r\n if (this.storeSelectList.length > 0) {\r\n this.selectORG_Store_ID = this.storeSelectList[0].value\r\n }\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n}\r\n\r\n\r\n\r\n //打開選擇附加品項\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n onOpen(info,data) {\r\n this.getStoreList()\r\n\r\n if(info){\r\n this.info = info\r\n }\r\n if(data){\r\n this.orgData = data\r\n }\r\n \r\n //初始化查詢資料\r\n this.query.searchKey = \"\"\r\n this.mainDataList = []\r\n this.status= { \r\n isSelectAll : true,\r\n showType:0\r\n }\r\n \r\n //處理已選資料\r\n if(this.orgData && this.orgData.length > 0){ \r\n this.mainDataList = _.cloneDeep(this.orgData)\r\n // this.orgDataList.forEach(x => {\r\n // let obj = _.assign({}, x)\r\n // this.mainDataList.push(obj)\r\n // })\r\n } \r\n \r\n //撈取可選資料 並合成已選資料\r\n this.onQuery() \r\n\r\n //開啟談窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //查詢\r\n onQuery( ) {\r\n \r\n this.getInfoList((data)=>{\r\n \r\n //初始化\r\n this.infoList = data\r\n this.showList = data\r\n this.showList.forEach(x => {\r\n\r\n let obj = _.find(this.mainDataList, y => this.judgeSame(y,x))\r\n if (obj) {\r\n x.isSelect = true\r\n } else {\r\n x.isSelect = false\r\n }\r\n })\r\n\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n\r\n });\r\n\r\n }\r\n\r\n onShowType(){\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n }\r\n\r\n //選擇\r\n onSelect(isAdd:boolean, item ) {\r\n if(isAdd){\r\n item.isSelect = true\r\n item.Sorting = 0\r\n this.mainDataList.push(item);\r\n\r\n }else{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n } \r\n\r\n this.judgeSelectAll()\r\n }\r\n\r\n //全選\r\n onSelectAll(){\r\n \r\n \r\n if(this.status.isSelectAll){\r\n this.showList.forEach(item=>{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n })\r\n }\r\n else{ \r\n this.showList.forEach(item=>{\r\n item.isSelect = true\r\n item.Sorting = 0\r\n this.mainDataList.push(item);\r\n })\r\n }\r\n \r\n this.status.isSelectAll = !this.status.isSelectAll\r\n }\r\n\r\n //處存\r\n onSave() {\r\n \r\n this.orgData.splice(0,this.orgData.length );\r\n let i = 1;\r\n this.mainDataList.forEach(x=>{ \r\n x.Sorting = i;\r\n i++\r\n this.orgData.push(x)\r\n })\r\n\r\n \r\n //TODO 確認附加品項表格中修改後 會影響到此嗎? 應該禁止修改名稱\r\n this.emitList.emit(this.orgData)\r\n this.modalRef.close()\r\n\r\n\r\n //重新計算順序 並且重載列表資料\r\n // var i = 1;\r\n // this.mainDataList.forEach(function (data) {\r\n // data.Sorting = i;\r\n // i++\r\n // });\r\n // this.orgDataList.load(this.mainDataList);\r\n\r\n }\r\n\r\n //--------------------------------------------------------------------\r\n \r\n \r\n //過濾已選未選等\r\n filterShowType(){\r\n if(this.status.showType==0){\r\n this.showList = _.concat([],this.infoList)\r\n }\r\n else if(this.status.showType==1){\r\n this.showList = _.filter(this.infoList,x=>x.isSelect)\r\n }\r\n else{\r\n this.showList = _.filter(this.infoList,x=> !x.isSelect)\r\n }\r\n }\r\n\r\n //判斷是否全選\r\n judgeSelectAll(){\r\n if(!this.showList || this.showList.length==0){\r\n return true\r\n } \r\n \r\n this.status.isSelectAll = this.showList.every(x=>{\r\n return this.mainDataList.some(y=>this.judgeSame(y,x)) \r\n })\r\n \r\n\r\n }\r\n\r\n\r\n//--------------------------------------------客製化------------------------------------------------------\r\n //比較\r\n judgeSame(y , x){\r\n return y.PRDAttachItemNo == x.PRDAttachItemNo &&\r\n y.PRDProductNo == x.PRDProductNo &&\r\n y.PRDProductGroupNo == x.PRDProductGroupNo \r\n \r\n }\r\n\r\n //取得選擇附加品項清單\r\n getInfoList( callback) {\r\n //取得含有商品的附加品項\r\n this.info.IsLoding= true\r\n this.http.get(\r\n `api/AttachItemSetting/GetAttachItemOptionList?` + \r\n `ORG_Company_ID=${this.info.ORG_Company_ID}`+\r\n ((this.query.searchKey == null || this.query.searchKey == '') ? '' : ('&keyword=' + this.query.searchKey)) +\r\n `${this.selectORG_Store_ID !=null ? \"&CreateStore=\" + this.selectORG_Store_ID : ''}`+\r\n '&IsDelete=' + false +'&Page=' + 1+'&PerPage=' + 2147483647\r\n ).subscribe({\r\n next: data => {\r\n\r\n if(callback)\r\n callback(data.LIST)\r\n\r\n // data.LIST.forEach(element => {\r\n // //門市共用下拉選單\r\n // let item = {};\r\n // item.PRDAttachItemNo = element.PRDAttachItemNo;\r\n // item.AttachItemName = element.AttachItemName;\r\n // item.PRDProductGroupNo = element.PRDProductGroupNo;\r\n // item.PRDProductNo = element.PRDProductNo;\r\n // item.Quantity = element.Quantity;\r\n // item.Cash = element.Cash;\r\n // item.ProductName = element.ProductName;\r\n // item.ItemName = element.ItemName;\r\n\r\n // });\r\n\r\n\r\n this.info.IsLoding= false\r\n },\r\n error: error => {\r\n //this.errorMessage = error.message;\r\n console.error('There was an error!', error);\r\n this.info.IsLoding= false\r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n// 參考資料\r\n// $scope.shared.quickStoreNew = {\r\n// mOName: \"#shared-quickStoreNew\",\r\n// disableChoose: null, //禁止選擇\r\n// motype: null,// 1:普通,2:公司已固定\r\n// type: null, //標題類型\r\n// SelectType: 2, // 1-單選 2-多選\r\n// pagelistinfo: null, //分頁資料\r\n// companyId: \"\",//公司ID\r\n// condiName: \"\",//查詢文字 \r\n// returnObj: [],//結果物件 多選[] 單選{}\r\n// detail: [], //單頁資料\r\n// allDetail: [], //全部資料\r\n// resultFun: null,//回傳時觸發 \r\n// allSelectName: '全選',\r\n// onePageSelectName: '本頁全選',\r\n// keyFN: {\r\n// S_list: 'storeId', //商店列表關鍵字\r\n// S_return: 'storeId', //回傳物件關鍵字\r\n// },\r\n// transf_return: function (obj_list, active) { ///回傳物件需求欄位\r\n// return {\r\n// storeId: obj_list.storeId,\r\n// store: obj_list.store,\r\n// companyId: obj_list.companyId,\r\n// company: obj_list.company,\r\n// active: active\r\n// }\r\n// },\r\n// transf_list: function (obj_api) { ///商店列表需求欄位\r\n// return {\r\n// storeId: obj_api.storeId,\r\n// store: obj_api.store,\r\n// companyId: obj_api.companyId,\r\n// company: obj_api.company,\r\n// active: false\r\n// }\r\n// },\r\n// API_getAllList: svr_marketing.shared.getAllStores,\r\n// API_getList: svr_marketing.shared.getStores,\r\n// open: function (obj, disableChoose, defCompany, SelectType, resultFun) {\r\n// let my = $scope.shared.quickStoreNew\r\n// $(my.mOName).modal('show')\r\n// my.disableChoose = !disableChoose ? false : disableChoose;\r\n\r\n\r\n// //初始化 \r\n// my.condiName = '';\r\n// if (my.pagelistinfo)\r\n// my.pagelistinfo.pageindex = 1\r\n\r\n\r\n// //取得原始資料\r\n// if (defCompany) {\r\n// my.companyId = defCompany;\r\n// }\r\n\r\n// my.title = '選擇門市';\r\n// if (!obj) obj = [];\r\n// my.returnObj = obj;\r\n// if (!SelectType) SelectType = 2\r\n// my.SelectType = SelectType\r\n// my.resultFun = resultFun\r\n\r\n// my.find()\r\n// },\r\n// find: function () {\r\n// let my = $scope.shared.quickStoreNew\r\n// //取得單頁資料\r\n// my.getDetail(function () {\r\n// my.showItem(my.detail)\r\n// my.showBtnName(2)\r\n// });\r\n// //取得全部資料\r\n// my.getAllDetail(function () {\r\n// my.showBtnName(1)\r\n// });\r\n// },\r\n// onPage: function () {\r\n// let my = $scope.shared.quickStoreNew\r\n// //取得單頁資料\r\n// my.getDetail(function () {\r\n// my.showItem(my.detail)\r\n// my.showBtnName(2)\r\n// });\r\n// },\r\n// onSelect: function (x, active) {\r\n// let my = $scope.shared.quickStoreNew\r\n// switch (my.SelectType) {\r\n\r\n// case 1:\r\n// // my.returnObj.store = x.store;\r\n// // my.returnObj.storeId = x.storeId;\r\n// Object.assign(my.returnObj, transf(x, null))\r\n// $(mOName).modal('hide');\r\n// break;\r\n// default:\r\n// let arr = []\r\n// arr.push(x)\r\n\r\n// my.showItem(arr, active)\r\n// my.showBtnName(1)\r\n// my.showBtnName(2)\r\n\r\n\r\n// break;\r\n\r\n// }\r\n\r\n// if (my.resultFun)\r\n// my.resultFun()\r\n// },\r\n// onSelectAll: function (type) {\r\n// let my = $scope.shared.quickStoreNew\r\n// let storeList = {}\r\n// if (type == 1)\r\n// storeList = my.allDetail\r\n// else\r\n// storeList = my.detail\r\n\r\n// let active = 1\r\n// let t_Num = 0\r\n\r\n// //判斷 T or F :項目非以全選時 改成全部取消\r\n// storeList.forEach(x => {\r\n// let foo = my.returnObj.find(y => y[my.keyFN.S_return] == x[my.keyFN.S_list] && y.active)\r\n// if (foo) {\r\n// t_Num++;\r\n// }\r\n// })\r\n// if (t_Num == storeList.length) {\r\n// active = 0\r\n// }\r\n// else {\r\n// active = 1\r\n// }\r\n\r\n// //塞入\r\n// my.showItem(storeList, active)\r\n// my.showBtnName(1)\r\n// my.showBtnName(2)\r\n\r\n// if (my.resultFun)\r\n// my.resultFun()\r\n\r\n// },\r\n// showItem: function (dataList, active) {\r\n// let my = $scope.shared.quickStoreNew\r\n// //判斷是否塞入\r\n// dataList.forEach(x => {\r\n// //待回傳資料\r\n\r\n// let apiD = null\r\n// if (my.SelectType == 2) //多選\r\n// apiD = my.returnObj.find(y => y[my.keyFN.S_return] == x[my.keyFN.S_list])\r\n// else //單選\r\n// apiD = my.returnObj\r\n\r\n// //初始化資料 : 單頁\r\n// if (active == null || active == undefined) {\r\n// if (apiD) {\r\n// x.active = apiD.active\r\n// }\r\n// }\r\n// //點擊事件 :全選、頁選、單選\r\n// else {\r\n// let pageD = my.detail.find(y => y[my.keyFN.S_list] == x[my.keyFN.S_list])\r\n// if (pageD)\r\n// pageD.active = active\r\n\r\n// //灌入資料\r\n// if (apiD) {\r\n// apiD.active = active;\r\n// }\r\n// else {\r\n// my.returnObj.push(\r\n// my.transf_return(x, active))\r\n\r\n// }\r\n// }\r\n\r\n\r\n// })\r\n// },\r\n// showBtnName: function (type) {\r\n// let my = $scope.shared.quickStoreNew\r\n// //只有多選需要執行此工作\r\n// if (my.SelectType != 2) return\r\n\r\n// let storeList = {}\r\n// if (type == 1)\r\n// storeList = my.allDetail\r\n// else\r\n// storeList = my.detail\r\n\r\n\r\n// //項目非已全選時 改成全部取消\r\n// let t_NumA = 0\r\n\r\n// storeList.forEach(x => {\r\n// let foo = my.returnObj.find(y => y[my.keyFN.S_return] == x[my.keyFN.S_list] && y.active)\r\n// if (foo) {\r\n// t_NumA++;\r\n// }\r\n// })\r\n\r\n// if (type == 1)\r\n// my.allSelectName =\r\n// (t_NumA == storeList.length) ? '取消' : '全選'\r\n// else\r\n// my.onePageSelectName =\r\n// (t_NumA == storeList.length) ? '本頁取消' : '本頁全選'\r\n// },\r\n// getAllDetail: function (callback) {\r\n// let my = $scope.shared.quickStoreNew\r\n// //只有多選需要執行此工作\r\n// if (my.SelectType != 2) return\r\n\r\n// //初始化\r\n// my.allDetail = [];\r\n// //參數\r\n\r\n// let par = {}\r\n// par.store = my.condiName\r\n// par.companyId = my.companyId\r\n// //呼叫\r\n// my.API_getAllList(par, function (data) {\r\n// let result = data.contentData.content\r\n// my.allDetail = result.map(x => my.transf_list(x));\r\n\r\n// callback()\r\n// });\r\n// },\r\n// getDetail: function (callback) {\r\n// let my = $scope.shared.quickStoreNew\r\n// //初始化\r\n// my.detail = [];\r\n// //參數 \r\n// let par = null\r\n// if (my.pagelistinfo)\r\n// par = { pageindex: my.pagelistinfo.pageindex };\r\n// else\r\n// par = { pageindex: 1 };\r\n// par.store = my.condiName;\r\n// par.companyId = my.companyId\r\n// //呼叫\r\n// my.API_getList(par, function (data) {\r\n// let result = data.contentData.content\r\n// my.detail = result.map(x => my.transf_list(x));\r\n// my.pagelistinfo = data.contentData.pageinfo;\r\n\r\n// callback()\r\n// });\r\n\r\n\r\n// },\r\n// }\r\n\r\n\r\nclass selectData {\r\n value: number;//\r\n content: string;//\r\n info:string\r\n}"," \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n 選擇附加品項群組\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n {{ e.content }}\r\n \r\n \r\n {{ e.name }}\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
選取附加品項群組標題內容選項類型必選建立門市
\r\n \r\n \r\n \r\n {{item.GroupName}}{{item.Content}}{{item.AttachItemKindName}}{{item.IsRequiredName}}{{item.CreateStoreName}}
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","\r\nimport { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-select-attachgroup',\r\n templateUrl: './select-attachgroup.component.html',\r\n styleUrls: ['./select-attachgroup.component.scss']\r\n})\r\nexport class SelectattachgroupComponent implements OnInit {\r\n\r\n \r\n\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array; //已選資料_來源\r\n @Input() title: string = \"選擇附加品項群組\"; \r\n mainDataList: Array; //已選資料\r\n infoList: Array; //選項資料\r\n showList: Array; //顯示資料\r\n @Input() info : {//其他設定\r\n IsLoding:boolean\r\n ORG_Company_ID: number,\r\n ORG_Store_ID: number,\r\n }; \r\n query : { //查詢選項\r\n searchKey : string\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n list={\r\n showType : [\r\n {name:\"全部\",value:0},\r\n {name:\"已選\",value:1},\r\n {name:\"未選\",value:2}]\r\n }\r\n modalRef = null; //談窗鉤子\r\n\r\n //查詢的門市\r\n storeSelectList: selectData[];\r\n selectORG_Store_ID: number;\r\n \r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n ) {\r\n\r\n }\r\n\r\n //info 資料來源 = callAPI / 外部丟入\r\n //data 來源 = MainData[ListName]\r\n \r\n //全選功能:\r\n // 撈取全部資料以提供全選 - 那麼分頁將不再重要 : 建議改成設定欄位\r\n // 全選讀取設定,非全選讀取陣列 \r\n // 同上問題,在經過搜尋之後的全選將有所刪減,因此除了\"全選設定欄位\",還要加上查詢欄位,在後端進行查詢\r\n // 同上問題,過程中的其他方的新增,可能導致有額外資料產生。\r\n // 但不管是丟設定到後端查後取資,一開始取全資但顯示還是每頁只抓當頁資料,都可能造成以上問題。\r\n // 因此最佳處理還是一開始就丟出全部到前端顯示。 但如此行為可能導致效能緩慢? \r\n // 單頁全選-可以正常運作\r\n\r\n ngOnInit(): void {\r\n this.query = { searchKey :\"\"} \r\n }\r\n\r\n ngAfterViewInit(){ \r\n this.onOpen(this.info, this.orgData)\r\n }\r\n\r\n\r\n //取得門市清單 API\r\n getStoreList() {//取得門市清單 USP_YOPOSWebGetStoreList\r\n\r\n \r\n\r\n\r\n\r\n this.http.post('api/ORGStore/StoreList', {\r\n\r\n ORG_Company_ID: this.info.ORG_Company_ID,\r\n ORG_Store_ID: this.info.ORG_Store_ID,\r\n }).subscribe({\r\n next: data => {\r\n\r\n this.storeSelectList = [];\r\n\r\n\r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = 0;\r\n Item.content = '總部';\r\n this.storeSelectList.push(Item);\r\n \r\n if(this.info.ORG_Store_ID ){\r\n \r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = this.info.ORG_Store_ID;\r\n Item.content = data.LIST.find(x=>x.ORG_Store_ID == this.info.ORG_Store_ID ).StoreName;\r\n this.storeSelectList.push(Item);\r\n \r\n }else{\r\n\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.storeSelectList.push(selectItem);\r\n });\r\n \r\n \r\n }\r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n // 預設點第一個\r\n if (this.storeSelectList.length > 0) {\r\n this.selectORG_Store_ID = this.storeSelectList[0].value\r\n }\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n}\r\n\r\n\r\n\r\n //打開選擇附加品項\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n onOpen(info,data) {\r\n this.getStoreList()\r\n\r\n if(info){\r\n this.info = info\r\n }\r\n if(data){\r\n this.orgData = data\r\n }\r\n \r\n //初始化查詢資料\r\n this.query.searchKey = \"\"\r\n this.mainDataList = []\r\n this.status= { \r\n isSelectAll : true,\r\n showType:0\r\n }\r\n \r\n //處理已選資料\r\n if(this.orgData && this.orgData.length > 0){ \r\n this.mainDataList = _.cloneDeep(this.orgData) \r\n }else{\r\n this.mainDataList = []\r\n } \r\n \r\n //撈取可選資料 並合成已選資料\r\n this.onQuery() \r\n\r\n //開啟談窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //查詢\r\n onQuery( ) {\r\n \r\n this.getInfoList((data)=>{\r\n \r\n \r\n \r\n //初始化\r\n this.infoList = data\r\n this.showList = data\r\n \r\n\r\n this.showList.forEach(x => {\r\n\r\n let obj = _.find(this.mainDataList, y => this.judgeSame(y,x))\r\n if (obj) {\r\n x.isSelect = true\r\n } else {\r\n x.isSelect = false\r\n }\r\n })\r\n\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n\r\n });\r\n\r\n }\r\n\r\n onShowType(){\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n }\r\n\r\n //選擇\r\n onSelect(isAdd:boolean, item ) {\r\n if(isAdd){\r\n item.isSelect = true\r\n item.Sorting = 0\r\n this.mainDataList.push(item);\r\n\r\n }else{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n } \r\n\r\n this.judgeSelectAll()\r\n }\r\n\r\n //全選\r\n onSelectAll(){\r\n \r\n \r\n if(this.status.isSelectAll){\r\n this.showList.forEach(item=>{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n })\r\n }\r\n else{ \r\n this.showList.forEach(item=>{\r\n item.isSelect = true\r\n item.Sorting = 0\r\n this.mainDataList.push(item);\r\n })\r\n }\r\n \r\n this.status.isSelectAll = !this.status.isSelectAll\r\n }\r\n\r\n //處存\r\n onSave() {\r\n \r\n\r\n this.orgData = [];\r\n let i = 1;\r\n this.mainDataList.forEach(x=>{ \r\n x.Sorting = i;\r\n i++\r\n this.orgData.push(x)\r\n })\r\n\r\n \r\n this.emitList.emit(this.orgData)\r\n this.modalRef.close()\r\n\r\n\r\n \r\n\r\n }\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n //------------------------------------------------------------------------------------------\r\n \r\n\r\n //過濾已選未選等\r\n filterShowType(){\r\n if(this.status.showType==0){\r\n this.showList = _.concat([],this.infoList)\r\n }\r\n else if(this.status.showType==1){\r\n this.showList = _.filter(this.infoList,x=>x.isSelect)\r\n }\r\n else{\r\n this.showList = _.filter(this.infoList,x=> !x.isSelect)\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n //判斷是否全選\r\n judgeSelectAll(){\r\n if(!this.showList || this.showList.length==0){\r\n return true\r\n } \r\n \r\n this.status.isSelectAll = this.showList.every(x=>{\r\n return this.mainDataList.some(y=>this.judgeSame(y,x)) \r\n })\r\n \r\n\r\n }\r\n\r\n\r\n\r\n\r\n //----------------------------------------客製化--------------------------------------------------\r\n\r\n\r\n //比較\r\n judgeSame(y , x){\r\n return y.PRDMenuAttachItemGroupNo == x.PRDMenuAttachItemGroupNo \r\n \r\n }\r\n\r\n\r\n //取得選擇附加品項清單 API\r\n getInfoList( callback) {\r\n //取得含有商品的附加品項\r\n this.info.IsLoding= true\r\n this.http.get(\r\n `api/AttachItemSetting/GetAttachItemListByAll?` + \r\n `ORG_Company_ID=${this.info.ORG_Company_ID}`+\r\n `${this.selectORG_Store_ID !=null ? \"&CreateStore=\" + this.selectORG_Store_ID : ''}`+\r\n ((this.query.searchKey == null || this.query.searchKey == '') ? '' : ('&keyword=' + this.query.searchKey)) +\r\n '&IsDelete=' + false +'&Page=' + 1+'&PerPage=' + 2147483647\r\n ).subscribe({\r\n next: data => {\r\n\r\n if(callback)\r\n callback(data.LIST)\r\n\r\n this.info.IsLoding= false\r\n\r\n },\r\n error: error => {\r\n console.error('取得附加品項群組清單出錯', error);\r\n this.info.IsLoding= false\r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n}\r\n\r\nclass selectData {\r\n value: number;//\r\n content: string;//\r\n info:string\r\n}\r\n","\r\n\r\n \r\n \r\n 選擇複製出單機\r\n \r\n \r\n\r\n
\r\n \r\n {{ e.content }}\r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
出單機名稱
{{ e.PrintMachine_Name }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n ","\r\n import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\n import { HttpClient } from '@angular/common/http';\r\n import { NbDialogService } from '@nebular/theme';\r\n import { CookieService } from 'ngx-cookie-service';\r\n \r\n import * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-select-billmachine-moudle',\r\n templateUrl: './select-billmachine-moudle.component.html',\r\n styleUrls: ['./select-billmachine-moudle.component.scss']\r\n})\r\nexport class SelectBillmachineMoudleComponent implements OnInit {\r\n\r\n USR_AccountInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array; //已選資料_來源\r\n @Input() info: {\r\n PrintMachine_Type:number[],\r\n IsLoding:boolean\r\n ORG_Store_ID: number,\r\n };\r\n\r\n //-----------------------談窗----------------------------\r\n\r\n modalRef = null; //談窗鉤子\r\n PdModalRef = null; //談窗鉤子\r\n\r\n @ViewChild('Modal') Modal: TemplateRef\r\n @ViewChild('PdModal') PdModal: TemplateRef\r\n\r\n //--------------------------------------------------------\r\n\r\n //資料清單\r\n mainDataList: Array; //選單資料\r\n showList: Array; //群組顯示資料 \r\n showListPd: Array; //商品顯示資料 \r\n query = { //查詢選項\r\n searchKey: \"\"\r\n }\r\n status: { //當前狀態\r\n isSelectAll: boolean //是否已全選\r\n showType: number // 顯示有選過的\r\n }\r\n\r\n //查詢的門市\r\n storeSelectList: selectData[];\r\n selectORG_Store_ID: number;\r\n\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null;\r\n \r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID = (cookie_sid && cookie_sid != '') ? parseInt(cookie_sid) : null\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'));\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info)\r\n }\r\n\r\n\r\n //取得門市清單 API\r\n getStoreList(fun) {//取得門市清單 USP_YOPOSWebGetStoreList\r\n this.http.post('api/ORGStore/StoreList', {\r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID: this.ORG_Store_ID,\r\n }).subscribe({\r\n\r\n next: data => {\r\n\r\n this.storeSelectList = [];\r\n\r\n if(this.ORG_Store_ID ){\r\n //門市共用下拉選單\r\n let Item :any= {};\r\n Item.value = this.ORG_Store_ID;\r\n Item.content = data.LIST.find(x=>x.ORG_Store_ID == this.ORG_Store_ID ).StoreName;\r\n this.storeSelectList.push(Item);\r\n }\r\n else\r\n {\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.storeSelectList.push(selectItem);\r\n });\r\n }\r\n \r\n // 預設點第一個\r\n if (this.storeSelectList.length > 0) {\r\n this.selectORG_Store_ID = this.storeSelectList[0].value\r\n }\r\n\r\n if(fun)\r\n fun()\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n }\r\n\r\n\r\n onOpen(info) {\r\n if (info)\r\n this.info = info\r\n\r\n this.getStoreList(()=>{\r\n //api抓資料\r\n this.getPdGroupList();\r\n })\r\n\r\n //開啟談窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n //---------------------------------------------------\r\n\r\n //查詢\r\n onQuery() {\r\n this.getPdGroupList();\r\n }\r\n\r\n\r\n //處存商品群組\r\n onSavePdG() {\r\n let useData = [];\r\n \r\n // 篩選出被選取的資料 (IsOK_Group 為 true 的項目)\r\n if(this.mainDataList) {\r\n useData = this.mainDataList\r\n .filter(item => item.IsOK_Group)\r\n .map(item => ({\r\n SYS_PrintMachine_ID: item.SYS_PrintMachine_ID,\r\n ORG_Store_ID: this.selectORG_Store_ID\r\n }));\r\n }\r\n\r\n this.emitList.emit(useData);\r\n this.modalRef.close();\r\n}\r\n\r\n\r\n //---------------------------------------------------\r\n\r\n\r\n //取得門市出單機\r\n getPdGroupList() {\r\n this.info.IsLoding= true\r\n\r\n this.http.get<{ LIST: BillMachineDTO[] }>('api/BillMachine/GetBillMachineList?' + \r\n `ORG_Store_ID=${this.selectORG_Store_ID}` +\r\n `&IsDelete=${false}` +\r\n `&Page=1&PerPage=2147483647`\r\n ).subscribe({\r\n next: data => {\r\n this.info.IsLoding = false\r\n \r\n data.LIST.forEach(x => {\r\n x.GroupNo = x.SYS_PrintMachine_ID;\r\n x.IsOK_Group = false;\r\n });\r\n \r\n const filteredList = data.LIST.filter((item: BillMachineDTO) =>\r\n this.info.PrintMachine_Type.includes(item.PrintMachine_Type)\r\n );\r\n\r\n this.mainDataList = filteredList\r\n //合併到原始資料\r\n this.orgData = _.cloneDeep(this.mainDataList)\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n this.info.IsLoding = false\r\n }\r\n });\r\n }\r\n}\r\n\r\nclass selectData {\r\n value: number;//\r\n content: string;//\r\n info:string\r\n}\r\n\r\ninterface BillMachineDTO {\r\n SYS_PrintMachine_ID: string;\r\n PrintMachine_Type: number;\r\n PrintMachine_Brand: number;\r\n PrintMachine_Name: string;\r\n PrintMachine_IP: string;\r\n PrintMachine_Port: string;\r\n PaperSize: number;\r\n AlignType: number;\r\n POS_Machine_IDs: string;\r\n KIOSK_Machine_IDs: string;\r\n GroupNo?: string;\r\n IsOK_Group?: boolean;\r\n}","\r\n\r\n \r\n \r\n 選擇會員類型\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
會員類型啟用
{{ e.MemberLevelName }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from'@angular/core';\r\nimport { HttpClient } from'@angular/common/http';\r\nimport { NbDialogService } from'@nebular/theme';\r\nimport { CookieService } from'ngx-cookie-service';\r\nimport * as _ from'lodash';\r\n\r\n@Component({\r\n selector:'app-select-memberType',\r\n templateUrl:'./select-memberType.component.html',\r\n styleUrls: ['./select-memberType.component.scss']\r\n})\r\nexport class SelectMemberTypeComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array;\r\n @Input() USR_MemberLevel_IDList: number[];\r\n @Input() index: number;\r\n \r\n //---------\"與父組件共用,不可改位址------->---------------------\r\n @Input() ProductList: Array; //細項清單\r\n\r\n //-----------------------彈窗----------------------------\r\n\r\n modalRef = null; //彈窗鉤子\r\n PdModalRef = null; //彈窗鉤子\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n @ViewChild('PdModal') PdModal :TemplateRef\r\n\r\n //--------------------------------------------------------\r\n //資料清單\r\n mainDataList: Array; //已選資料\r\n showList: Array;\r\n query = { //查詢選項\r\n searchKey : \"\",\r\n ORG_Company_ID:null\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n isChecked: boolean = false;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) \r\n {\r\n this.query.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n ngAfterViewInit(){ \r\n this.onOpen(this.orgData, this.USR_MemberLevel_IDList)\r\n }\r\n\r\n\r\n onOpen(dataList, USR_MemberLevel_IDList: number[]) {\r\n this.mainDataList = _.cloneDeep(dataList)\r\n\r\n this.mainDataList = this.mainDataList.map(e => ({\r\n ...e,\r\n isChecked: USR_MemberLevel_IDList.includes(e.USR_MemberLevel_ID)\r\n }));\r\n\r\n //開啟彈窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //處存區塊\r\n onSave() {\r\n this.emitList.emit({\r\n filteredList: this.mainDataList.filter(e => e.isChecked === true),\r\n index: this.index\r\n });\r\n this.modalRef.close()\r\n }\r\n\r\n}\r\n"," \r\n \r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n {{title}} \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ e.name }}\r\n \r\n\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
選取群組名稱
\r\n \r\n \r\n \r\n {{item.GroupName}}
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-select-permissionsgroup',\r\n templateUrl: './select-permissionsgroup.component.html',\r\n styleUrls: ['./select-permissionsgroup.component.scss']\r\n})\r\nexport class SelectPermissionsgroupComponent implements OnInit {\r\n \r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array; //已選資料_來源\r\n @Input() title: string; \r\n mainDataList: Array; //已選資料\r\n infoList: Array; //選項資料\r\n showList: Array; //顯示資料\r\n @Input() info : {//其他設定\r\n IsLoding:boolean\r\n ORG_Company_ID: number,\r\n ORG_Store_ID: number,\r\n }; \r\n query : { //查詢選項\r\n searchKey : string\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n list={\r\n showType : [\r\n {name:\"全部\",value:0},\r\n {name:\"已選\",value:1},\r\n {name:\"未選\",value:2}]\r\n }\r\n \r\n \r\n modalRef = null; //談窗鉤子\r\n \r\n \r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n ) { } \r\n \r\n ngOnInit(): void {\r\n this.query = { searchKey :\"\"}\r\n\r\n } \r\n \r\n ngAfterViewInit(){ \r\n this.onOpen(this.info, this.orgData) \r\n }\r\n \r\n //打開選擇附加品項\r\n \r\n @ViewChild('Modal') Modal :TemplateRef\r\n onOpen(info,data) {\r\n \r\n \r\n if(info){\r\n this.info = info\r\n }\r\n if(data){\r\n this.orgData = data\r\n }\r\n \r\n //初始化查詢資料\r\n this.query.searchKey = \"\"\r\n this.mainDataList = []\r\n this.status= { \r\n isSelectAll : true,\r\n showType:0\r\n }\r\n \r\n //處理已選資料\r\n if(this.orgData && this.orgData.length > 0){ \r\n this.mainDataList = _.cloneDeep(this.orgData)\r\n } \r\n \r\n //撈取可選資料 並合成已選資料\r\n this.onQuery() \r\n \r\n //開啟談窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n } \r\n \r\n //查詢\r\n onQuery( ) {\r\n \r\n this.getInfoList((data)=>{\r\n \r\n //初始化\r\n this.infoList = data\r\n this.showList = data\r\n this.showList.forEach(x => {\r\n \r\n let obj = _.find(this.mainDataList, y => this.judgeSame(y,x))\r\n if (obj) {\r\n x.isSelect = true\r\n } else {\r\n x.isSelect = false\r\n }\r\n })\r\n \r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n \r\n });\r\n \r\n }\r\n \r\n onShowType(){\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n }\r\n \r\n //選擇\r\n onSelect(isAdd:boolean, item ) {\r\n if(isAdd){\r\n item.isSelect = true\r\n this.mainDataList.push(item);\r\n \r\n }else{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n } \r\n \r\n this.judgeSelectAll()\r\n }\r\n \r\n //全選\r\n onSelectAll(){\r\n \r\n \r\n if(this.status.isSelectAll){\r\n this.showList.forEach(item=>{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n })\r\n }\r\n else{ \r\n this.showList.forEach(item=>{\r\n item.isSelect = true\r\n this.mainDataList.push(item);\r\n })\r\n }\r\n \r\n this.status.isSelectAll = !this.status.isSelectAll\r\n }\r\n \r\n //處存\r\n onSave() {\r\n \r\n this.orgData.splice(0,this.orgData.length );\r\n let i = 1;\r\n this.mainDataList.forEach(x=>{ \r\n x.Sorting = i;\r\n i++\r\n this.orgData.push(x)\r\n }) \r\n \r\n this.emitList.emit(this.orgData)\r\n this.modalRef.close()\r\n \r\n }\r\n \r\n //---------------------------------------------------------------\r\n \r\n //過濾已選未選等\r\n filterShowType(){\r\n if(this.status.showType==0){\r\n this.showList = _.concat([],this.infoList)\r\n }\r\n else if(this.status.showType==1){\r\n this.showList = _.filter(this.infoList,x=>x.isSelect)\r\n }\r\n else{\r\n this.showList = _.filter(this.infoList,x=> !x.isSelect)\r\n }\r\n }\r\n\r\n //判斷是否全選\r\n judgeSelectAll(){\r\n if(!this.showList || this.showList.length==0){\r\n return true\r\n } \r\n \r\n this.status.isSelectAll = this.showList.every(x=>{\r\n return this.mainDataList.some(y=>this.judgeSame(y,x)) \r\n })\r\n \r\n \r\n }\r\n \r\n\r\n //-------------------------------------客製化區--------------------------------------------------------\r\n\r\n //比較\r\n judgeSame(y , x){\r\n return y.SYS_PermissionGroupID == x.SYS_PermissionGroupID \r\n \r\n }\r\n \r\n \r\n //取得選擇附加品項清單\r\n getInfoList( callback) {\r\n //取得含有商品的附加品項\r\n this.info.IsLoding= true\r\n this.http.get('api/PermissionGroup/GetPermissionGroupList?' +\r\n \"ORG_Store_ID=\"+ this.info.ORG_Store_ID+\r\n '&AuthType=2'+ \r\n '&IsDelete=false'+\r\n '&Page=1' +'&PerPage=2147483647' ).subscribe({\r\n next: data => {\r\n \r\n if(callback)\r\n callback(data.permissionGroups) \r\n \r\n this.info.IsLoding= false\r\n \r\n \r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n this.info.IsLoding= false\r\n\r\n }\r\n });\r\n \r\n }\r\n\r\n \r\n\r\n\r\n\r\n \r\n\r\n \r\n \r\n \r\n }\r\n \r\n \r\n \r\n \r\n \r\n","\r\n\r\n \r\n \r\n 選擇商品種類\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n {{ e.content }}\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
種類名稱建立門市啟用
全選 \r\n \r\n \r\n \r\n 已選{{status.AllSelectCount}}項 \r\n
{{ e.GroupName }}{{e.CreateStoreName}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n 選擇商品\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
建立門市商品名稱原價啟用
{{e.CreateStoreName}} {{ e.Name }}\r\n {{ e.Cash }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\nimport * as _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-select-product',\r\n templateUrl: './select-product.component.html',\r\n styleUrls: ['./select-product.component.scss']\r\n})\r\nexport class SelectProductComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array; //已選資料_來源\r\n @Input() info: {\r\n IsLoding: boolean\r\n ORG_Store_ID: string,\r\n PRD_PlatformType_ID: number,\r\n };\r\n\r\n //---------\"與父組件共用,不可改位址------->---------------------\r\n @Input() ProductList: Array; //商品清單\r\n\r\n //-----------------------談窗----------------------------\r\n\r\n modalRef = null; //談窗鉤子\r\n PdModalRef = null; //談窗鉤子\r\n\r\n @ViewChild('Modal') Modal: TemplateRef\r\n @ViewChild('PdModal') PdModal: TemplateRef\r\n\r\n //--------------------------------------------------------\r\n //資料清單\r\n selectData: Array;//已選資料\r\n mainDataList: Array; //顯示資料 \r\n showList: Array; //群組顯示資料 \r\n showListPd: Array; //商品顯示資料 \r\n query = { //查詢選項\r\n searchKey: \"\",\r\n ORG_Company_ID: null,\r\n ORG_Store_ID: null,\r\n }\r\n status = { //當前狀態\r\n isSelectAll: false, //是否已全選\r\n AllSelectCount: 0, //當前已選總數量\r\n showType: null // 顯示有選過的\r\n }\r\n\r\n\r\n //查詢的門市\r\n storeSelectList: selectData[];\r\n selectORG_Store_ID: number;\r\n PRD_PlatformType_ID: number;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n\r\n ) {\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.query.ORG_Store_ID = (cookie_sid && cookie_sid != '') ? parseInt(cookie_sid) : null\r\n this.query.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n }\r\n\r\n //info 資料來源 = callAPI / 外部丟入\r\n //data 來源 = MainData[ListName]\r\n\r\n //全選功能:\r\n // 撈取全部資料以提供全選 - 那麼分頁將不再重要 : 建議改成設定欄位\r\n // 全選讀取設定,非全選讀取陣列 \r\n // 同上問題,在經過搜尋之後的全選將有所刪減,因此除了\"全選設定欄位\",還要加上查詢欄位,在後端進行查詢\r\n // 同上問題,過程中的其他方的新增,可能導致有額外資料產生。\r\n // 但不管是丟設定到後端查後取資,一開始取全資但顯示還是每頁只抓當頁資料,都可能造成以上問題。\r\n // 因此最佳處理還是一開始就丟出全部到前端顯示。 但如此行為可能導致效能緩慢? \r\n // 單頁全選-可以正常運作\r\n\r\n ngOnInit(): void {\r\n\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info, this.orgData)\r\n }\r\n\r\n\r\n //取得門市清單 API\r\n getStoreList(fun) {//取得門市清單 USP_YOPOSWebGetStoreList\r\n\r\n this.http.post('api/ORGStore/StoreList', {\r\n\r\n ORG_Company_ID: this.query.ORG_Company_ID,\r\n ORG_Store_ID: this.query.ORG_Store_ID,\r\n }).subscribe({\r\n next: data => {\r\n\r\n this.storeSelectList = [];\r\n\r\n\r\n //門市共用下拉選單\r\n let Item: any = {};\r\n Item.value = 0;\r\n Item.content = '總部';\r\n this.storeSelectList.push(Item);\r\n\r\n if (this.query.ORG_Store_ID) {\r\n\r\n //門市共用下拉選單\r\n let Item: any = {};\r\n Item.value = this.query.ORG_Store_ID;\r\n Item.content = data.LIST.find(x => x.ORG_Store_ID == this.query.ORG_Store_ID).StoreName;\r\n this.storeSelectList.push(Item);\r\n\r\n } else {\r\n\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ORG_Store_ID;\r\n selectItem.content = element.StoreName;\r\n this.storeSelectList.push(selectItem);\r\n });\r\n\r\n\r\n }\r\n // 預設點第一個\r\n if (this.storeSelectList.length > 0) {\r\n this.selectORG_Store_ID = this.storeSelectList[0].value\r\n }\r\n\r\n if(fun)\r\n fun()\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n //開啟\r\n onOpen(info, useData) {\r\n \r\n\r\n if (info){\r\n this.info = info\r\n this.PRD_PlatformType_ID = this.info.PRD_PlatformType_ID\r\n }\r\n \r\n\r\n this.mainDataList = []\r\n this.selectData = []\r\n\r\n //存下已選資料\r\n if(useData && useData.length){\r\n this.selectData = _.cloneDeep(useData) \r\n }\r\n\r\n //api抓資料\r\n this.getStoreList(()=>{\r\n this.getProductList((data) => {\r\n this.showData(data, useData) \r\n }) \r\n })\r\n \r\n \r\n\r\n //開啟談窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n // 組資料\r\n showData(data, useData) {\r\n //組合內容\r\n let ProductList = [];\r\n let list = _.groupBy(data.LIST, 'GroupNo');\r\n let key = _.keys(list)\r\n key.forEach(k => {\r\n let obj = new ProductGroup()\r\n obj.CreateStoreName = list[k][0].CreateStoreName\r\n obj.GroupNo = k,\r\n obj.GroupName = list[k][0].GroupName,\r\n obj.PDList = _.concat([], list[k]), //TODO 位址有更新嗎?存疑\r\n obj.IsOK_Group = false\r\n ProductList.push(obj)\r\n });\r\n\r\n console.log('....')\r\n this.mainDataList = ProductList\r\n\r\n\r\n //判斷是否已勾選\r\n if (useData) {\r\n this.mainDataList.forEach(g => {\r\n g.PDList.forEach(p => {\r\n let pd = _.find(useData, a => a.No == p.No)\r\n if (pd) {\r\n pd.GroupNo = p.GroupNo;\r\n p = _.assign(p, pd)\r\n p.IsOK_Product = true\r\n g.IsOK_Group = p.IsOK_Product\r\n }\r\n\r\n\r\n })\r\n\r\n g.IsOK_Product_Count()\r\n this.sumSelect()\r\n })\r\n\r\n }\r\n\r\n // //合併到原始資料\r\n // if (!this.orgData || !this.orgData.length) {\r\n // this.orgData = _.cloneDeep(this.mainDataList)\r\n // }\r\n\r\n\r\n }\r\n\r\n\r\n //查詢\r\n onQuery() {\r\n this.getProductList((data) => {\r\n let useData = []\r\n \r\n // this.mainDataList.forEach(x => {\r\n // x.PDList.forEach(y => {\r\n // if (y.IsOK_Product)\r\n // useData.push({ GroupNo: y.GroupNo, No: y.No })\r\n // })\r\n // })\r\n\r\n this.selectData.forEach(y => {\r\n useData.push({ GroupNo: y.GroupNo, No: y.No })\r\n })\r\n\r\n this.showData(data, useData)\r\n\r\n })\r\n\r\n }\r\n\r\n //加入已選商品\r\n AddSelectData(pd,isSelect){\r\n if(isSelect){\r\n if(!_.find(this.selectData,a=>a.No==pd.No)){\r\n this.selectData.push(pd)\r\n }\r\n }else{\r\n _.remove(this.selectData,x=>x.No==pd.No)\r\n }\r\n }\r\n\r\n //選擇全部資料\r\n onSelectAllG() {\r\n\r\n this.mainDataList.forEach(group => {\r\n group.IsOK_Group = this.status.isSelectAll\r\n _.forEach(group.PDList, p => {\r\n p.IsOK_Group = group.IsOK_Group\r\n p.IsOK_Product = group.IsOK_Group\r\n this.AddSelectData(p,group.IsOK_Group)\r\n });\r\n group.IsOK_Product_Count()\r\n \r\n })\r\n this.sumSelect()\r\n\r\n }\r\n //統計已選數量\r\n sumSelect() {\r\n let selectCount = 0\r\n let allcount = 0\r\n this.mainDataList.forEach(group => {\r\n selectCount += group.CountSum\r\n allcount += group.PDList.length\r\n })\r\n\r\n this.status.AllSelectCount = selectCount\r\n this.status.isSelectAll = (selectCount == allcount)\r\n\r\n }\r\n\r\n\r\n\r\n //商品群組 選擇\r\n onSelectG(GID) {\r\n let group = _.find(this.mainDataList, a => a.GroupNo == GID)\r\n if (group)\r\n _.forEach(group.PDList, p => {\r\n p.IsOK_Group = group.IsOK_Group\r\n p.IsOK_Product = group.IsOK_Group\r\n this.AddSelectData(p,group.IsOK_Group)\r\n });\r\n console.log(group)\r\n group.IsOK_Product_Count()\r\n\r\n\r\n this.sumSelect()\r\n\r\n }\r\n\r\n //處存商品群組 最終存檔!!\r\n onSavePdG() {\r\n if (this.selectData) {\r\n this.selectData.forEach(x => {\r\n x.Sorting = 0\r\n })\r\n }\r\n\r\n this.emitList.emit(this.selectData)\r\n this.modalRef.close()\r\n }\r\n\r\n\r\n\r\n\r\n //商品 打開彈窗\r\n onOpenPd(GID) {\r\n let group = _.find(this.mainDataList, a => a.GroupNo == GID)\r\n this.showListPd = _.cloneDeep(group.PDList)\r\n\r\n //開啟談窗\r\n this.PdModalRef = this.dialogService.open(this.PdModal, {})\r\n }\r\n\r\n //商品 處存\r\n onSavePd() {\r\n let GID = this.showListPd[0].GroupNo\r\n let group = _.find(this.mainDataList, a => a.GroupNo == GID)\r\n console.error(GID);\r\n console.error(this.mainDataList);\r\n console.error(group);\r\n console.error(this.showListPd);\r\n _.assign(group.PDList, this.showListPd)\r\n group.IsOK_Group = _.findIndex(group.PDList, 'IsOK_Product') > -1\r\n group.IsOK_Product_Count()\r\n\r\n if(group.PDList){\r\n group.PDList.forEach(x=>{\r\n this.AddSelectData(x,x.IsOK_Product)\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n this.sumSelect()\r\n\r\n\r\n this.PdModalRef.close()\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n //取得可用商品資料\r\n getProductList(fun) {\r\n this.info.IsLoding = true\r\n this.http.get(`api/ProductSetting/GetAllProductList?` +\r\n `ORG_Company_ID=${this.query.ORG_Company_ID}` +\r\n `${this.selectORG_Store_ID != null ? \"&CreateStore=\" + this.selectORG_Store_ID : ''}` +\r\n `&Keyword=${this.query.searchKey}` +\r\n `${this.PRD_PlatformType_ID != null ? \"&PRD_PlatformType_ID=\" + this.PRD_PlatformType_ID : ''}`\r\n ).subscribe({\r\n next: data => {\r\n \r\n this.info.IsLoding = false\r\n\r\n if (fun)\r\n fun(data)\r\n\r\n \r\n\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n this.info.IsLoding = false\r\n\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n\r\nclass ProductGroup {\r\n CreateStoreName: string\r\n GroupNo: string;\r\n GroupName: string;\r\n IsOK_Group: boolean;\r\n PDList: Product[];\r\n CountStr: string;\r\n CountSum: number;\r\n IsOK_Product_Count() {\r\n // console.log('go')\r\n let use = _.filter(this.PDList, 'IsOK_Product').length\r\n this.CountStr = use == this.PDList.length ? '已全選' : `已選${use}項`\r\n this.CountSum = use\r\n }\r\n\r\n}\r\n\r\nclass Product {\r\n GroupNo: string;\r\n GroupName: string;\r\n No: string;\r\n Name: string;\r\n\r\n IsOK_Group: boolean;\r\n IsOK_Product: boolean;\r\n}\r\n\r\n\r\nclass selectData {\r\n value: number;//\r\n content: string;//\r\n info: string\r\n}\r\n\r\n","\r\n\r\n \r\n \r\n 選擇販售門市\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
門市啟用
{{ e.storeName }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from'@angular/core';\r\nimport { HttpClient } from'@angular/common/http';\r\nimport { NbDialogService } from'@nebular/theme';\r\nimport { CookieService } from'ngx-cookie-service';\r\nimport * as _ from'lodash';\r\n\r\n@Component({\r\n selector:'app-select-salesOutlet',\r\n templateUrl:'./select-salesOutlet.component.html',\r\n styleUrls: ['./select-salesOutlet.component.scss']\r\n})\r\nexport class SelectSalesOutletComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array;\r\n \r\n //---------\"與父組件共用,不可改位址------->---------------------\r\n @Input() ProductList: Array; //細項清單\r\n\r\n //-----------------------彈窗----------------------------\r\n\r\n modalRef = null; //彈窗鉤子\r\n PdModalRef = null; //彈窗鉤子\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n @ViewChild('PdModal') PdModal :TemplateRef\r\n\r\n //--------------------------------------------------------\r\n //資料清單\r\n mainDataList: Array; //已選資料\r\n showList: Array;\r\n query = { //查詢選項\r\n searchKey : \"\",\r\n ORG_Company_ID:null\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n isChecked: boolean = false;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) \r\n {\r\n this.query.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n ngAfterViewInit(){ \r\n this.onOpen(this.orgData)\r\n }\r\n\r\n\r\n onOpen(dataList) {\r\n this.mainDataList = _.cloneDeep(dataList)\r\n\r\n //開啟彈窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //區塊 選擇\r\n onSelect(isChecked: boolean, data) {\r\n let obj = this.mainDataList.find(y => y.storeName == data.storeName)\r\n if (isChecked){\r\n obj.IsSell = true\r\n }\r\n else{\r\n obj.IsSell = false\r\n }\r\n }\r\n\r\n\r\n //處存區塊\r\n onSave() {\r\n this.emitList.emit(this.mainDataList)\r\n this.modalRef.close()\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n \r\n 選擇門市\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
門市啟用
{{ e.storeName }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from'@angular/core';\r\nimport { HttpClient } from'@angular/common/http';\r\nimport { NbDialogService } from'@nebular/theme';\r\nimport { CookieService } from'ngx-cookie-service';\r\nimport * as _ from'lodash';\r\n\r\n@Component({\r\n selector:'app-select-storeSaleCash',\r\n templateUrl:'./select-storeSaleCash.component.html',\r\n styleUrls: ['./select-storeSaleCash.component.scss']\r\n})\r\nexport class SelectStoreSaleCashComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array;\r\n @Input() cash: number;\r\n \r\n //---------\"與父組件共用,不可改位址------->---------------------\r\n @Input() ProductList: Array; //細項清單\r\n\r\n //-----------------------彈窗----------------------------\r\n\r\n modalRef = null; //彈窗鉤子\r\n PdModalRef = null; //彈窗鉤子\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n @ViewChild('PdModal') PdModal :TemplateRef\r\n\r\n //--------------------------------------------------------\r\n //資料清單\r\n mainDataList: Array; //已選資料\r\n showList: Array;\r\n query = { //查詢選項\r\n searchKey : \"\",\r\n ORG_Company_ID:null\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n isChecked: boolean = false;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) \r\n {\r\n this.query.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n ngAfterViewInit(){ \r\n this.onOpen(this.orgData, this.cash)\r\n }\r\n\r\n\r\n onOpen(dataList, cash) {\r\n this.mainDataList = _.cloneDeep(dataList)\r\n\r\n this.mainDataList = this.mainDataList.map(e => ({\r\n ...e,\r\n isChecked: e.SaleCash == cash ? true : false\r\n }));\r\n\r\n //開啟彈窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //區塊 選擇\r\n onSelect(isChecked: boolean, data) {\r\n let obj = this.mainDataList.find(y => y.storeName == data.storeName)\r\n if (isChecked){\r\n obj.isChecked = true\r\n }\r\n else{\r\n obj.isChecked = false\r\n }\r\n }\r\n\r\n\r\n //處存區塊\r\n onSave() {\r\n this.emitList.emit(this.mainDataList)\r\n this.modalRef.close()\r\n }\r\n\r\n}\r\n"," \r\n \r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n {{title}} \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{ e.name }}\r\n \r\n\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
選取店名
\r\n \r\n \r\n \r\n {{item.StoreName}}
\r\n
\r\n\r\n\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","\r\nimport { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport * as _ from 'lodash';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\n@Component({\r\n selector: 'app-select-store',\r\n templateUrl: './select-store.component.html',\r\n styleUrls: ['./select-store.component.scss']\r\n})\r\nexport class SelectStoreComponent implements OnInit {\r\n //基本資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array; //已選資料_來源\r\n @Input() title: string; \r\n mainDataList: Array; //已選資料\r\n infoList: Array; //選項資料\r\n showList: Array; //顯示資料\r\n @Input() info : {//其他設定 \r\n IsLoding:boolean\r\n ORG_Company_ID: number,\r\n ORG_Store_ID: number,\r\n }; \r\n query : { //查詢選項\r\n searchKey : string\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n list={\r\n showType : [\r\n {name:\"全部\",value:0},\r\n {name:\"已選\",value:1},\r\n {name:\"未選\",value:2}]\r\n }\r\n\r\n\r\n modalRef = null; //談窗鉤子\r\n \r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) { \r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null\r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID')\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n \r\n }\r\n\r\n\r\n\r\n ngOnInit(): void {\r\n this.query = { searchKey :\"\"}\r\n \r\n \r\n }\r\n\r\n\r\n ngAfterViewInit(){ console.log('sa',this.info)\r\n this.onOpen(this.info, this.orgData)\r\n\r\n \r\n }\r\n\r\n //打開選擇附加品項\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n onOpen(info,data) {\r\n \r\n\r\n if(info){\r\n this.info = info\r\n }\r\n if(data){\r\n this.orgData = data\r\n }\r\n \r\n //初始化查詢資料\r\n this.query.searchKey = \"\"\r\n this.mainDataList = []\r\n this.status= { \r\n isSelectAll : true,\r\n showType:0\r\n }\r\n \r\n //處理已選資料\r\n if(this.orgData && this.orgData.length > 0){ \r\n this.mainDataList = _.cloneDeep(this.orgData)\r\n // this.orgDataList.forEach(x => {\r\n // let obj = _.assign({}, x)\r\n // this.mainDataList.push(obj)\r\n // })\r\n } \r\n \r\n //撈取可選資料 並合成已選資料\r\n this.onQuery() \r\n\r\n //開啟談窗\r\n this.modalRef = this.dialogService.open(this.Modal, {})\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //查詢\r\n onQuery( ) {\r\n \r\n this.getInfoList((data)=>{\r\n \r\n //初始化\r\n this.infoList = data\r\n this.showList = data\r\n this.showList.forEach(x => {\r\n\r\n let obj = _.find(this.mainDataList, y => this.judgeSame(y,x))\r\n if (obj) {\r\n x.isSelect = true\r\n } else {\r\n x.isSelect = false\r\n }\r\n })\r\n\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n\r\n });\r\n\r\n }\r\n\r\n onShowType(){\r\n this.filterShowType()\r\n this.judgeSelectAll()\r\n }\r\n\r\n //選擇\r\n onSelect(isAdd:boolean, item ) {\r\n if(isAdd){\r\n item.isSelect = true\r\n this.mainDataList.push(item);\r\n\r\n }else{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n } \r\n\r\n this.judgeSelectAll()\r\n }\r\n\r\n //全選\r\n onSelectAll(){\r\n \r\n \r\n if(this.status.isSelectAll){\r\n this.showList.forEach(item=>{\r\n item.isSelect = false\r\n let index = this.mainDataList.findIndex(x=>this.judgeSame(x,item))\r\n this.mainDataList.splice(index, 1);\r\n })\r\n }\r\n else{ \r\n this.showList.forEach(item=>{\r\n item.isSelect = true\r\n this.mainDataList.push(item);\r\n })\r\n }\r\n \r\n this.status.isSelectAll = !this.status.isSelectAll\r\n }\r\n\r\n //處存\r\n onSave() {\r\n \r\n this.orgData.splice(0,this.orgData.length );\r\n let i = 1;\r\n this.mainDataList.forEach(x=>{ \r\n x.Sorting = i;\r\n i++\r\n this.orgData.push(x)\r\n })\r\n\r\n \r\n //TODO 確認附加品項表格中修改後 會影響到此嗎? 應該禁止修改名稱\r\n this.emitList.emit(this.orgData)\r\n this.modalRef.close()\r\n\r\n\r\n //重新計算順序 並且重載列表資料\r\n // var i = 1;\r\n // this.mainDataList.forEach(function (data) {\r\n // data.Sorting = i;\r\n // i++\r\n // });\r\n // this.orgDataList.load(this.mainDataList);\r\n\r\n }\r\n\r\n //-----------------------------------------------------------------\r\n\r\n //過濾已選未選等\r\n filterShowType(){\r\n if(this.status.showType==0){\r\n this.showList = _.concat([],this.infoList)\r\n }\r\n else if(this.status.showType==1){\r\n this.showList = _.filter(this.infoList,x=>x.isSelect)\r\n }\r\n else{\r\n this.showList = _.filter(this.infoList,x=> !x.isSelect)\r\n }\r\n }\r\n\r\n\r\n //判斷是否全選\r\n judgeSelectAll(){\r\n if(!this.showList || this.showList.length==0){\r\n return true\r\n } \r\n \r\n this.status.isSelectAll = this.showList.every(x=>{\r\n return this.mainDataList.some(y=>this.judgeSame(y,x)) \r\n })\r\n \r\n\r\n }\r\n\r\n //---------------------------------------客製化-----------------------------------------\r\n\r\n //比較\r\n judgeSame(y , x){\r\n return y.ORG_Store_ID == x.ORG_Store_ID \r\n \r\n \r\n }\r\n\r\n \r\n //取得選擇附加品項清單\r\n getInfoList( callback) {\r\n //取得含有商品的附加品項\r\n this.info.IsLoding= true\r\n this.http.post('api/ORGStore/StoreList', {\r\n USR_AccountInfo_ID: this.USR_AccountInfo_ID, //建立者,\r\n \r\n ORG_Company_ID: this.ORG_Company_ID,\r\n ORG_Store_ID:\"0\",\r\n }).subscribe({\r\n next: data => {\r\n\r\n if(callback)\r\n callback(data.LIST)\r\n\r\n // selectItem.value = element.ORG_Store_ID;\r\n // selectItem.content = element.StoreName;\r\n this.info.IsLoding= false\r\n\r\n\r\n },\r\n error: error => {\r\n //this.errorMessage = error.message;\r\n console.error('There was an error!', error);\r\n this.info.IsLoding= false\r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","\r\n\r\n \r\n \r\n 選擇分店\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
分店名稱啟用
{{ e.content }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, OnInit, Output, EventEmitter, Input, ViewChild, TemplateRef } from'@angular/core';\r\nimport { HttpClient } from'@angular/common/http';\r\nimport { NbDialogService } from'@nebular/theme';\r\nimport { CookieService } from'ngx-cookie-service';\r\nimport * as _ from'lodash';\r\n\r\n@Component({\r\n selector:'app-select-stores',\r\n templateUrl:'./select-stores.component.html',\r\n styleUrls: ['./select-stores.component.scss']\r\n})\r\nexport class SelectStoresComponent implements OnInit {\r\n @Output() emitClose = new EventEmitter();\r\n @Output() emitList = new EventEmitter();\r\n @Input() orgData: Array;\r\n @Input() StoreList: string;\r\n @Input() index: number;\r\n \r\n //---------\"與父組件共用,不可改位址------->---------------------\r\n @Input() ProductList: Array; //細項清單\r\n\r\n //-----------------------彈窗----------------------------\r\n\r\n modalRef = null; //彈窗鉤子\r\n PdModalRef = null; //彈窗鉤子\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n @ViewChild('PdModal') PdModal :TemplateRef\r\n\r\n //--------------------------------------------------------\r\n //資料清單\r\n mainDataList: Array; //已選資料\r\n showList: Array;\r\n query = { //查詢選項\r\n searchKey : \"\",\r\n ORG_Company_ID:null\r\n } \r\n status: { //當前狀態\r\n isSelectAll : boolean //是否已全選\r\n showType:number // 顯示有選過的\r\n }\r\n isChecked: boolean = false;\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) \r\n {\r\n this.query.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n ngAfterViewInit(){ \r\n this.onOpen(this.orgData, this.StoreList)\r\n }\r\n\r\n\r\n onOpen(dataList: any[], storeListString: string) {\r\n this.mainDataList = _.cloneDeep(dataList);\r\n \r\n const selectedStoreIds = storeListString ? storeListString.split(',').map(Number) : [];\r\n \r\n this.mainDataList = this.mainDataList.map(e => ({\r\n ...e,\r\n isChecked: selectedStoreIds.includes(e.value)\r\n }));\r\n \r\n // 開啟彈窗\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n //處存區塊\r\n onSave() {\r\n const selectedItems = this.mainDataList.filter(e => e.isChecked === true);\r\n this.emitList.emit({\r\n filteredList: selectedItems,\r\n index: this.index\r\n });\r\n this.modalRef.close();\r\n }\r\n \r\n\r\n}\r\n"," \r\n \r\n \r\n 歷程紀錄\r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
操作人員變更狀態更新時間
\r\n {{status.CreateBy}}\r\n \r\n {{status.statusName}}\r\n \r\n {{status.CreateDate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, Input, OnInit, TemplateRef, ViewChild,Output,EventEmitter } from '@angular/core';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { SubscriptService } from '../../service/header.service';\r\nimport { DatePipe } from '@angular/common'\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport { CurrencyPipe} from '@angular/common';\r\nimport * as _ from 'lodash';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-show-data',\r\n templateUrl: './show-data.component.html',\r\n styleUrls: ['./show-data.component.scss']\r\n})\r\nexport class ShowDataComponent implements OnInit {\r\n @Output() emitList = new EventEmitter();\r\n @Output() emitClose = new EventEmitter();\r\n @Input() EOSNo: string; //已選資料_來源\r\n @Input() source: number; //已選資料_來源\r\n\r\n //-----------------------彈窗----------------------------\r\n\r\n modalRef = null; //彈窗鉤子\r\n PdModalRef = null; //彈窗鉤子\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n @ViewChild('PdModal') PdModal :TemplateRef\r\n\r\n //基本資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n authChangeSub:any;\r\n\r\n statusHistory: StatusHistory[] = [\r\n { CreateBy: '1', statusName: '訂單準備中', CreateDate: '2024-04-15' },\r\n { CreateBy: '2', statusName: '訂單完成', CreateDate: '2024-04-15' },\r\n { CreateBy: '3', statusName: '訂單完成', CreateDate: '2024-04-15' },\r\n { CreateBy: '4', statusName: '訂單完成', CreateDate: '2024-04-15' },\r\n { CreateBy: '5', statusName: '訂單完成', CreateDate: '2024-04-15' },\r\n ];\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null;\r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID')\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID= (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen()\r\n\r\n }\r\n\r\n async onOpen(){\r\n await this.get_EOS_Status_History();\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n //取得歷程紀錄\r\n get_EOS_Status_History(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.http.post('api/EOS/OrderManage/WebGetEOSInfoRecord', {\r\n EOSNo: this.EOSNo,\r\n Source: this.source,\r\n Page: 1,\r\n PerPage: 9999,\r\n }).subscribe({\r\n next: data => {\r\n this.statusHistory = [];\r\n data.LIST.forEach(element => {\r\n var item: StatusHistory = { \r\n statusName: element.StatusName, \r\n CreateDate: element.CreateDate, \r\n CreateBy: element.CreateBy\r\n };\r\n this.statusHistory.push(item);\r\n });\r\n resolve(this.statusHistory);\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n reject(error);\r\n }\r\n });\r\n });\r\n }\r\n onClose(){\r\n this.modalRef.close()\r\n }\r\n}\r\n\r\ninterface StatusHistory {\r\n statusName: string;\r\n CreateBy: string;\r\n CreateDate: string;\r\n}"," \r\n \r\n
\r\n \r\n \r\n 編輯狀態\r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
操作人員變更狀態更新時間
\r\n {{status.CreateBy}}\r\n \r\n {{status.statusName}}\r\n \r\n {{status.CreateDate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n","import { Component, Input, OnInit, TemplateRef, ViewChild,Output,EventEmitter } from '@angular/core';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { SubscriptService } from '../../service/header.service';\r\nimport { DatePipe } from '@angular/common'\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbDialogService } from '@nebular/theme';\r\nimport { CurrencyPipe} from '@angular/common';\r\nimport * as _ from 'lodash';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-status-update-modal',\r\n templateUrl: './status-update-modal.component.html',\r\n styleUrls: ['./status-update-modal.component.scss']\r\n})\r\nexport class StatusUpdateModalComponent implements OnInit {\r\n @Output() emitList = new EventEmitter();\r\n @Output() emitClose = new EventEmitter();\r\n @Input() info: {\r\n getURL: string;\r\n updateURL: string;\r\n eosNo: string;\r\n source: number;\r\n };\r\n\r\n //-----------------------彈窗----------------------------\r\n\r\n modalRef = null; //彈窗鉤子\r\n PdModalRef = null; //彈窗鉤子\r\n\r\n @ViewChild('Modal') Modal :TemplateRef\r\n @ViewChild('PdModal') PdModal :TemplateRef\r\n\r\n //基本資料\r\n USR_AccountInfo_ID: string;\r\n USR_EmployeeInfo_ID: string;\r\n ORG_Company_ID: number;\r\n ORG_Store_ID: number;\r\n authChangeSub:any;\r\n\r\n statusList: Status[]=[\r\n { ID:1, statusName: '訂單準備中', CanClick: true },\r\n { ID:2, statusName: '訂單完成', CanClick: false },\r\n ];\r\n\r\n statusHistory: StatusHistory[] = [\r\n { CreateBy: '1', statusName: '訂單準備中', CreateDate: '2024-04-15' },\r\n { CreateBy: '2', statusName: '訂單完成', CreateDate: '2024-04-15' },\r\n { CreateBy: '3', statusName: '訂單完成', CreateDate: '2024-04-15' },\r\n { CreateBy: '4', statusName: '訂單完成', CreateDate: '2024-04-15' },\r\n { CreateBy: '5', statusName: '訂單完成', CreateDate: '2024-04-15' },\r\n ];\r\n\r\n constructor(\r\n private dialogService: NbDialogService,\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n ) {\r\n this.USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID') ? \r\n \"USR_AccountInfo_ID_\"+this.cookieService.get('USR_AccountInfo_ID') :\r\n this.cookieService.get('USR_POSEmployeeInfo_ID') ? \r\n \"USR_POSEmployeeInfo_ID\"+this.cookieService.get('USR_POSEmployeeInfo_ID') : null;\r\n this.USR_EmployeeInfo_ID = this.cookieService.get('USR_EmployeeInfo_ID')\r\n this.ORG_Company_ID = parseInt(this.cookieService.get('ORG_Company_ID'))\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n this.ORG_Store_ID= (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.onOpen(this.info)\r\n\r\n }\r\n\r\n async onOpen(data){\r\n await this.get_EOS_Status_List(data) \r\n await this.get_EOS_Status_History();\r\n this.modalRef = this.dialogService.open(this.Modal, {});\r\n this.modalRef.onClose.subscribe(result => {\r\n this.emitClose.emit(true);\r\n });\r\n }\r\n\r\n\r\n //取得狀態清單\r\n get_EOS_Status_List(data): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.http.get(data.getURL+`EOSNo=${data.eosNo}`,\r\n ).subscribe({\r\n next: data => {\r\n this.statusList = []\r\n data.LIST.forEach(element => {\r\n var item : Status;\r\n\r\n var item: Status = { \r\n statusName: element.Name, \r\n ID: element.ID, \r\n CanClick: element.CanClick\r\n };\r\n this.statusList.push(item);\r\n });\r\n resolve(this.statusHistory);\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n reject(error);\r\n }\r\n });\r\n });\r\n}\r\n\r\n\r\n //更新狀態\r\n onStatusClick(ID: string) {\r\n const data = this.info\r\n this.http.post(data.updateURL, {\r\n // USR_AccountInfo_ID: this.USR_AccountInfo_ID, //建立者, \r\n EOSNo: data.eosNo,\r\n EOS_Status_ID: ID,\r\n LastUpdateBy : \"USR_AccountInfo_ID_\" + this.USR_AccountInfo_ID\r\n }).subscribe({\r\n next: data => {\r\n alert('更新狀態成功')\r\n this.onClose()\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n }\r\n\r\n \r\n //取得歷程紀錄\r\n get_EOS_Status_History(): Promise {\r\n const data = this.info;\r\n return new Promise((resolve, reject) => {\r\n this.http.post('api/EOS/OrderManage/WebGetEOSInfoRecord', {\r\n EOSNo: data.eosNo,\r\n Source: data.source,\r\n Page: 1,\r\n PerPage: 3,\r\n }).subscribe({\r\n next: data => {\r\n this.statusHistory = [];\r\n data.LIST.forEach(element => {\r\n var item: StatusHistory = { \r\n statusName: element.StatusName, \r\n CreateDate: element.CreateDate, \r\n CreateBy: element.CreateBy\r\n };\r\n this.statusHistory.push(item);\r\n });\r\n resolve(this.statusHistory);\r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n reject(error);\r\n }\r\n });\r\n });\r\n }\r\n \r\n\r\n\r\n onClose(){\r\n this.modalRef.close()\r\n }\r\n\r\n\r\n //商品 明細\r\n @ViewChild('ShowDataMo_Tmp',{static:false}) ShowDataMo_Tmp \r\n ShowDataMo = {\r\n EOSNo:null,\r\n source:null,\r\n isShow:false,\r\n onOpen:()=>{ \r\n let my = this.ShowDataMo \r\n my.EOSNo=this.info.eosNo\r\n my.source=this.info.source\r\n my.isShow = true\r\n }, \r\n onClose(v){\r\n this.isShow = false \r\n }\r\n }\r\n\r\n \r\n}\r\n\r\ninterface Status {\r\n statusName: string;\r\n CanClick: boolean;\r\n ID: number;\r\n}\r\n\r\n\r\ninterface StatusHistory {\r\n statusName: string;\r\n CreateBy: string;\r\n CreateDate: string;\r\n}","import { Directive ,ElementRef,Input} from '@angular/core';\r\nimport {NgControl} from '@angular/forms'\r\n\r\n@Directive({\r\n selector: '[InputFormat]',\r\n host: {\r\n // '(keypress)': '_onKeypress($event)',\r\n // '(keydown)': '_onKeyup($event)',\r\n '(input)': 'Show($event)',\r\n \r\n }\r\n})\r\n\r\nexport class InputFormatDirective {\r\n @Input(\"ngModel\") type :string = '' \r\n _input : ElementRef;\r\n _labelDom:any;\r\n _span:any;\r\n\r\n formatType ={\r\n onlyEn : /[^a-zA-Z]/g,\r\n noCH: /[^\\u4E00-\\u9FA5]/g,\r\n email:/[^\\w=@#.]|_/ig\r\n }\r\n \r\n constructor(el: ElementRef) {\r\n this._input = el;\r\n this._labelDom = el.nativeElement.previousElementSibling ;\r\n\r\n \r\n let span = document.createElement(\"span\");\r\n span.style.color=\"red\";\r\n span.classList.add(\"label\");\r\n span.classList.add(\"text-danger\");\r\n span.innerText=\" 不可有中文\";\r\n span.style.display=\"none\";\r\n this._labelDom.appendChild(span);\r\n this._span=span\r\n \r\n\r\n }\r\n\r\n\r\n \r\n Show(e) {\r\n if( this.Judge (e.target.value)){\r\n this._input.nativeElement.classList.remove(\"status-basic\") \r\n this._input.nativeElement.classList.add(\"status-danger\")\r\n this._span.style.display=\"inline\";\r\n } \r\n else{\r\n this._input.nativeElement.classList.remove(\"status-danger\") \r\n this._input.nativeElement.classList.add(\"status-basic\")\r\n this._span.style.display=\"none\";\r\n } \r\n }\r\n\r\n \r\n\r\n Judge (e){\r\n var regu = /[^\\w=@#.]|_/ig ;\r\n return regu.test(e); \r\n }\r\n\r\n\r\n\r\n\r\n \r\n}\r\n\r\n","
\r\n \r\n\r\n \r\n\r\n \r\n \r\n {{ op.content }}\r\n \r\n \r\n\r\n \r\n\r\n \r\n
","import { Component,OnInit,OnChanges ,Input,Output, EventEmitter,ChangeDetectionStrategy} from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\n\r\nimport { FormControl } from '@angular/forms';\r\nimport { map, startWith } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-auto-select',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n templateUrl: './auto-select.component.html',\r\n})\r\nexport class AutoSelectComponent implements OnInit , OnChanges {\r\n\r\n @Output() emitValue = new EventEmitter();\r\n @Input() groupList: Group[]; //選單資料_來源\r\n filteredGroups$: Observable; \r\n inputFormControl: FormControl;\r\n isSelect:boolean = false;\r\n value = \"\"\r\n\r\n ngOnInit() { \r\n\r\n this.filteredGroups$ = of(this.groupList);\r\n this.inputFormControl = new FormControl();\r\n }\r\n\r\n ngOnChanges(){\r\n this.onClick()\r\n this.filteredGroups$ = of(this.groupList);\r\n }\r\n\r\n //失焦時 判斷是否已選並清除資料\r\n onBlur(){\r\n if(!this.isSelect){\r\n //清空資料\r\n this.value = \"\"\r\n }\r\n \r\n \r\n \r\n }\r\n\r\n //初始化資料\r\n onClick(){\r\n this.value=''\r\n this.isSelect = false\r\n this.emitValue.emit(null);\r\n }\r\n\r\n \r\n onSelect(e){\r\n this.emitValue.emit(e.value);\r\n this.isSelect = true\r\n \r\n }\r\n\r\n\r\n //選單過濾方法\r\n filter(value: string): Group[] {\r\n const filterValue = value.toLowerCase();\r\n if(filterValue.trim().length > 0){\r\n let glist = this.groupList.map(group => {\r\n let clist = group.child.filter(op => op.content.toLowerCase().includes(filterValue))\r\n return {\r\n id: group.id,\r\n name: group.name,\r\n child: clist\r\n }\r\n });\r\n let result = glist.filter(group => group.child.length)\r\n\r\n return result\r\n }\r\n else{\r\n return this.groupList\r\n }\r\n \r\n }\r\n //選單變化\r\n onModelChange(value: string) {\r\n this.filteredGroups$ = of(this.filter(value));\r\n }\r\n\r\n}\r\n\r\n\r\ninterface Group {\r\n id: string;\r\n name: string;\r\n child: selectData[];\r\n}\r\n\r\ninterface selectData {\r\n value: any;\r\n content: string;\r\n \r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\nimport * as _ from 'lodash'; \r\n\r\n@Pipe({\r\n name: 'isExist'\r\n})\r\n\r\n//值是否存在於列表某欄位中\r\nexport class IsExistPipe implements PipeTransform {\r\n\r\n transform(value: any,list:[],field:string): boolean {\r\n \r\n if(!field)\r\n return _.findIndex(list, e=> e==value) >-1;\r\n else{\r\n if(!list || list.length<1 )\r\n return false;\r\n var item = _.find(list, e=> e[field]==value);\r\n return item ? true : false;\r\n }\r\n \r\n \r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'isInvaild'\r\n})\r\nexport class IsInvaildPipe implements PipeTransform {\r\n\r\n transform(value: any ,returnT:any,returnF:any): boolean {\r\n let judge = true;\r\n \r\n switch (typeof value) {\r\n case 'string':\r\n if(!value || value.trim().length<1 )\r\n judge = false;\r\n break;\r\n\r\n case 'number':\r\n if(!value || value<0 )\r\n judge = false;\r\n break; \r\n\r\n default : \r\n judge = false;\r\n break; \r\n }\r\n \r\n return judge ? returnT : returnF;\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport * as _ from 'lodash'; \r\n\r\n@Pipe({\r\n name: 'keyword'\r\n})\r\nexport class KeywordPipe implements PipeTransform {\r\n\r\n //isEqual == false 模糊查詢\r\n //getAllStr 符合此特殊字 撈取全部\r\n transform(List: Array, Field: any, Keyword: string , getAllStr : string=null , isEqual:boolean=false): any {\r\n console.log('QQ !')\r\n if(!List || List.length<1) {\r\n console.log('資料筆數少於1 !')\r\n return List;\r\n }\r\n\r\n if(Keyword!=null && Keyword!=undefined){\r\n Keyword = Keyword.toString()\r\n }\r\n if(getAllStr!=null && getAllStr!=undefined){\r\n getAllStr = getAllStr.toString()\r\n } \r\n\r\n if(!Keyword || Keyword.trim().length<1) { \r\n console.log(Field+'關鍵字為空')\r\n return List;\r\n }\r\n //特殊值可取得全部\r\n if(getAllStr && Keyword == getAllStr\r\n ){\r\n return List;\r\n }\r\n // console.log(333)\r\n //欄位只有一個 用字串表示\r\n if(typeof(Field) == 'string'){ \r\n //判斷欄位有效\r\n if(_.keys(List[0]).findIndex(e=>e==Field) == -1 ) {\r\n console.log(`資料沒有${Field}欄位 !`)\r\n return List;\r\n }\r\n //回傳查詢資料\r\n let result = _.filter(List,data => { \r\n if(!isEqual)\r\n return data[Field] && data[Field].toString().indexOf(Keyword) > -1 \r\n else\r\n return data[Field] && data[Field].toString() == Keyword \r\n }); \r\n // console.log(result)\r\n return result\r\n\r\n }\r\n //欄位多個 用陣列表示\r\n else if (Array.isArray(Field)){\r\n //判斷欄位有效\r\n let valid_field = []\r\n let dataKey = _.keys(List[0])\r\n Field.forEach(f=>{\r\n if(dataKey.findIndex(e=>e==f) == -1 ) {\r\n console.log(`資料沒有${f}欄位 !`)\r\n }\r\n else valid_field.push(f) \r\n })\r\n\r\n //回傳查詢資料\r\n return _.filter(List,data=>{ \r\n return valid_field.findIndex(f=>{\r\n if(!isEqual)\r\n return data[f] && data[f].toString().indexOf(Keyword)>-1\r\n else\r\n return data[f] && data[f].toString() == Keyword \r\n }) > -1 \r\n })\r\n }\r\n else \r\n return List;\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport * as _ from 'lodash'; \r\n\r\n@Pipe({\r\n name: 'tranf'\r\n})\r\nexport class TranfPipe implements PipeTransform {\r\n\r\n transform(value: any,list:[],fieldA:string,fieldB:string): any {\r\n \r\n if(!list || list.length<1 || !fieldA || !fieldB)\r\n return value;\r\n var item = _.find(list,e => e[fieldA]==value);\r\n \r\n return item ? item[fieldB] : value;\r\n \r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApiService {\r\n\r\n version = null\r\n\r\n constructor( \r\n private cookieService: CookieService,\r\n private http: HttpClient){\r\n\r\n }\r\n\r\n\r\n checkReload(){\r\n let my = this\r\n this.http.get('api/Version/GetVersion').subscribe({\r\n next: data => {\r\n console.log('當前版本:',data)\r\n\r\n let version = this.version\r\n //this.cookieService.get('appVersion');\r\n \r\n if(!version || version==\"\"){\r\n //this.cookieService.set('appVersion', data,365,'/');\r\n this.version = data\r\n }else{\r\n if(version!=data){\r\n // console.log('try load')\r\n // this.cookieService.set('appVersion', data,365,'/');\r\n this.version = data\r\n location.href = location.href;\r\n }\r\n }\r\n \r\n \r\n },\r\n error: error => {\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n //取得平台\r\n getPlatformTypeList(isHaveAll:number=1){\r\n\r\n let menuTypeList = []\r\n\r\n this.http.post('api/Menu/GetMenuType', {\r\n }).subscribe({\r\n next: data => {\r\n\r\n data.LIST.forEach(element => {\r\n //門市共用下拉選單\r\n var selectItem = new selectData();\r\n selectItem.value = element.ID;\r\n selectItem.content = element.Name;\r\n menuTypeList.push(selectItem);\r\n });\r\n \r\n },\r\n error: error => {\r\n console.error('There was an error!', error);\r\n }\r\n });\r\n\r\n if(isHaveAll){\r\n menuTypeList = [{value:0,content : \"全部\"}].concat(menuTypeList)\r\n }\r\n return menuTypeList \r\n \r\n }\r\n\r\n //取得用餐種類\r\n getOrdTypeList(isHaveAll:number=0){\r\n\r\n let ordTypeList = []\r\n \r\n // {value:0,content : \"全部\"},\r\n // {value:1,content : \"外帶\"},\r\n // {value:2,content : \"外送\"},\r\n // {value:3,content : \"內用\"},\r\n // { value: 5, content: '自取'},\r\n\r\n this.http.get('api/InfoList/GetORDTypeList').subscribe({\r\n next: data => {\r\n \r\n data.LIST.forEach(element => {\r\n var selectItem = new selectData();\r\n selectItem.value = element.ID;\r\n selectItem.content = element.Name;\r\n ordTypeList.push(selectItem);\r\n });\r\n\r\n },\r\n error: error => {\r\n }\r\n })\r\n\r\n\r\n if(isHaveAll){\r\n ordTypeList = [{value:0,content : \"全部\"}].concat(ordTypeList)\r\n }\r\n \r\n return ordTypeList\r\n \r\n \r\n }\r\n\r\n //取得付款方式\r\n getPaymentList(isHaveAll:number=0,StoreID:number,fun:any){\r\n\r\n let paymentList = []\r\n \r\n\r\n this.http.get('api/Payment/GetAllPaymentTypeList?' + \r\n `ORG_Store_ID=${StoreID}`\r\n ).subscribe({\r\n \r\n next: data => {\r\n \r\n data.LIST.forEach(element => {\r\n var selectItem = new selectData();\r\n selectItem.value = element.SYS_PaymentKind_ID;\r\n selectItem.content = element.PaymentKindName;\r\n paymentList.push(selectItem);\r\n });\r\n\r\n if(fun)\r\n fun()\r\n\r\n },\r\n error: error => {\r\n }\r\n })\r\n\r\n\r\n if(isHaveAll){\r\n paymentList = [{value:0,content : \"全部\"}].concat(paymentList)\r\n }\r\n \r\n return paymentList\r\n \r\n \r\n }\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n\r\n\r\n\r\nclass selectData {\r\n value: any;\r\n content: string;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject,Observable } from 'rxjs';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SubscriptService {\r\n\r\n //大權限商店 發生選擇變化\r\n AuthChangeSubject = new Subject();\r\n AuthChange$ = this.AuthChangeSubject.asObservable();\r\n\r\n\r\n //大權限商店 發生更新變化\r\n AuthUpdataSubject = new Subject();\r\n AuthUpdata$ = this.AuthUpdataSubject.asObservable();\r\n\r\n\r\n\r\n constructor() {\r\n console.log('hs 建立')\r\n }\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n}\r\n","\r\n\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NbMenuItem } from '@nebular/theme';\r\n\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { NbIconLibraries } from '@nebular/theme';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MyMenuService {\r\n private link=MENU_LINK; \r\n menu : NbMenuItem[] = [] //NbMenuItem[]\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private cookieService: CookieService,\r\n private _router: Router,\r\n private nbIconLibraries:NbIconLibraries\r\n ) {\r\n\r\n //R: Icon設定\r\n //this.nbIconLibraries.registerFontPack('包名稱', { packClass: '引用的css 字體名稱', iconClassPrefix: '要拿掉的css class前綴' });\r\n //使用時 一般class=\"icon-menu\" 這邊使用 icon: { icon: 'menu', pack: 'icomoon' },\r\n this.nbIconLibraries.registerFontPack('icomoon', { packClass: 'icomoon', iconClassPrefix: 'icon' });\r\n\r\n this.menu = [] \r\n }\r\n\r\n //取得菜單\r\n getMenu(){\r\n console.log('getMenuXD',this.menu)\r\n\r\n \r\n \r\n let USR_AccountInfo_ID = this.cookieService.get('USR_AccountInfo_ID');\r\n let USR_POSEmployeeInfo_ID = this.cookieService.get('USR_POSEmployeeInfo_ID')\r\n\r\n //如果沒有登入就跳轉\r\n if((!USR_AccountInfo_ID||USR_AccountInfo_ID==\"\")&&\r\n (!USR_POSEmployeeInfo_ID||USR_POSEmployeeInfo_ID==\"\"))\r\n {\r\n this._router.navigate(['/user/login']); //WEB首頁\r\n return null \r\n }\r\n\r\n let cookie_sid = this.cookieService.get('ORG_Store_ID')\r\n let sid = (cookie_sid && cookie_sid!='') ? parseInt(cookie_sid) : null \r\n this.http.post('api/Permissions/menu',\r\n {\r\n USR_AccountInfo_ID: this.cookieService.get('USR_AccountInfo_ID') ,\r\n USR_EmployeeInfo_ID: this.cookieService.get('USR_EmployeeInfo_ID'),\r\n USR_POSEmployeeInfo_ID:this.cookieService.get('USR_POSEmployeeInfo_ID'),\r\n ORG_Company_ID:parseInt(this.cookieService.get('ORG_Company_ID')),\r\n ORG_Store_ID: sid == 0 ? null : sid,\r\n }\r\n ).subscribe({\r\n next: data => {\r\n this.menu.splice(0,this.menu.length)\r\n if(this.menu.length>0) return\r\n\r\n let canLink = []\r\n\r\n if( data.list.length == 0){\r\n return null\r\n }\r\n\r\n //menu顯示\r\n data.list.forEach(element => {\r\n //1層menu\r\n var menuItem: NbMenuItem = new NbMenuItem();\r\n menuItem.title = element.ModuleName;\r\n menuItem.data = element.ModuleCode;\r\n menuItem.icon = { icon: element.Path, pack: 'icomoon' },\r\n menuItem.children = [];\r\n\r\n let cid = this.cookieService.get('ORG_Company_ID')\r\n let stag = sid ? 's'+sid : 'c'+cid\r\n\r\n //2層1層menu\r\n element.Child.forEach(childItem => {\r\n var childMenu: NbMenuItem = new NbMenuItem();\r\n childMenu.title = childItem.FunctioningName;\r\n childMenu.data = childItem.FunctioningCode;\r\n childMenu.icon = { icon: childItem.Path, pack: 'icomoon' }\r\n childMenu.link=this.link[childMenu.data];\r\n // childMenu.link=this.link[childMenu.data]+'/'+stag;\r\n \r\n menuItem.children.push(childMenu);\r\n\r\n canLink.push(childMenu.link)\r\n }); \r\n this.menu.push(menuItem)\r\n });\r\n\r\n let all = new Array();\r\n for(let x in MENU_LINK) all[all.length]=x;\r\n\r\n //大權限切換門市時 如果當前處於沒有權限的頁面 要跳轉\r\n if(canLink.findIndex(x=>x== this._router.url) == -1 && \r\n canLink.findIndex(x=>x== all) > -1) {\r\n //預設進入\r\n this._router.navigate(['/Home']);\r\n }\r\n \r\n\r\n // 隱藏版\r\n // Dev.forEach(x=>{\r\n // this.menu.push(x)\r\n // })\r\n\r\n },\r\n error: error => {\r\n }\r\n })\r\n \r\n\r\n \r\n }\r\n\r\n //登出\r\n logout() {\r\n this.cookieService.delete('USR_AccountInfo_ID','/');\r\n this.cookieService.delete('USR_EmployeeInfo_ID','/');\r\n this.cookieService.delete('NickName','/');\r\n this.cookieService.delete('PhotoURL','/');\r\n this.cookieService.delete('ORG_Company_ID','/');\r\n this.cookieService.delete('ORG_Store_ID','/');\r\n this.cookieService.delete('CompanyName','/');\r\n this.cookieService.delete('USR_POSEmployeeInfo_ID','/');\r\n\r\n this._router.navigate(['/user/login']); //登入畫面\r\n }\r\n \r\n\r\n\r\n\r\n\r\n}\r\n\r\n//menuAPI對應路由\r\nexport const MENU_LINK = {\r\n 'POSPermissionManage': '/Auth/EmplyeeGroup',//POS權限設定管理\r\n 'ContractManage': '/Auth/ContractManage',//POS權限設定管理\r\n \r\n 'PermissionGroupManage':'/permissiongroup/list',//權限群組帳號管理\r\n\r\n \r\n 'UsingPOSMenu':'/Product/UsingPosMenu' ,//'商品設定\r\n 'ProductSetting':'/Product/Setting', //商品設定\r\n 'MenuSetting':'/Product/Menu', //菜單設定\r\n 'SaleCloseSetting':'/Product/SaleClose', //停售設定\r\n \r\n //PayFlow\r\n 'DiscountSetting':'/PosOrder/Discount', //優惠設定\r\n 'PaymentManage': '/PosOrder/Payment',//多元支付\r\n 'ServiceFeeManage': '/PosOrder/Servicecharge',//服務費管理\r\n 'CreditMachineManage':'/PosOrder/CreditMachineManage', //信用卡機設定\r\n 'InvoiceSetting':'/Store/InvoiceSetting', //電子發票設定\r\n 'WordTrackManage':'/Store/WordTrack', //字軌設定\r\n\r\n //SysSetting\r\n 'ButtonSetting':'/PosOrder/ButtonSetting', //按鈕設定設定\r\n 'ButtonPermissionManage':'/PosOrder/ButtonAuth', //按鈕設定設定\r\n 'ReasonSetting':'/PosOrder/ReasonSetting', //操作事由\r\n 'POSMachineManage': '/Store/PosMachine',//POS機設定\r\n 'CDSMachineManage': '/Store/CDSMachine',//CDS機設定 \r\n 'KioskMachineManage': '/Store/KioskMachine',//Kiosk設定\r\n 'PrintMachineManage': '/Store/BillMachine',//出單機設定 \r\n 'Platform':'/Store/Platform',//平台設定\r\n 'OPSetting':'/PosOrder/OPSetting', //操作設定\r\n\r\n //StoreSetting\r\n 'TableManage': '/PosOrder/TableSetting',//桌位管理\r\n 'Announcement': '/PosOrder/Announcement',//公告管理\r\n 'SpecialDateManage':'/Store/SpecialDate',//特殊營業時間\r\n 'ERPManage':'/Store/ERPSetting',//特殊營業時間\r\n 'EmailSetting': '/Store/EmailSetting',//公告管理\r\n \r\n \r\n //Report\r\n 'ORDInfoManage': '/Report/OrderReport',//訂單管理\r\n 'TodayBusinessReport':'/Report/TodayBusinessReport' ,//'今日報表\r\n 'BusinessReport':'/Report/BusinessReport' ,//'營業報表\r\n 'BusinessTimesReport':'/Report/BusinessTimesReport' , \r\n 'InvoiceReport':'/Report/InvoiceReport' ,//'發票開立紀錄\r\n 'InvoiceVoidReport':'/Report/InvoiceVoidReport' ,//'發票作廢紀錄\r\n 'TurnoverReport':'/Report/TurnoverReport' ,//'營收報表\r\n 'SquareAccountsReport':'/Report/SquareAccountsReport' ,//'小節與關帳紀錄\r\n 'InvoiceEmptyReport':'/Report/InvoiceEmptyReport' ,//'空白字軌紀錄\r\n 'ProductAnalyzeReport':'/Report/ProductAnalyzeReport' ,//'商品分析報表\r\n 'AttchAnalyzeReport':'/Report/AttchAnalyzeReport' ,//'附加品項分析報表\r\n 'OperateReport':'/Report/OperationReport' ,//'操作紀錄\r\n 'StaffClockinReport':'/Report/StaffClockinReport' ,//'員工打卡紀錄\r\n 'ClientAnalyzeReport':'/Report/ClientAnalyzeReport' ,//'來客分析報表\r\n 'DiscountAnalyzeReport':'/Report/DiscountAnalyzeReport' ,//'折扣分析報表\r\n 'CashBoxReport':'/Report/CashBoxReport' , // 錢櫃記錄報表\r\n \r\n 'ORDOnlineCampaign': '/order/activity',//點餐活動設定 \r\n \r\n 'StoreSettingManage': '/order/store-setting',//門市設定管理\r\n \r\n //EOS\r\n 'EOSProductManage': '/EOS/Setting',//商品管理\r\n 'EOSInfoManage': '/EOS/OrderReport',//訂單管理\r\n 'EOSPermissionManage': '/EOS/EmplyeeGroup',//權限設定管理\r\n\r\n //'key2': 'value2',//商品管理tree\r\n //'key2': 'value2',//折扣碼活動設定\r\n //'key2': 'value2',//門市印花報表管理 \r\n // 'basic-info': '/basic-info/list',//權限群組帳號管理\r\n // 'TableManage': '/Permissions/mylist',//權限管理\r\n};\r\n\r\n//額外\r\nexport const Dev: NbMenuItem[] = [\r\n {\r\n title: '開發中',\r\n icon: 'menu-2-outline',\r\n children: [ \r\n {\r\n title: '營業時段報表',\r\n icon: 'shopping-cart-outline',\r\n link: '/Report/BusinessTimesReport',\r\n home: true,\r\n },\r\n {\r\n title: '信用卡機設定',\r\n icon: 'shopping-cart-outline',\r\n link: '/Store/CreditMachine',\r\n home: true,\r\n },\r\n ]\r\n\r\n }\r\n]\r\n\r\n\r\nexport const EXP: NbMenuItem[] = [\r\n \r\n {\r\n title: '範例',\r\n icon: 'menu-2-outline',\r\n children: [\r\n {\r\n title: 'E-commerce',\r\n icon: 'shopping-cart-outline',\r\n link: '/pages/dashboard',\r\n home: true,\r\n },\r\n {\r\n title: 'IoT Dashboard',\r\n icon: 'home-outline',\r\n link: '/pages/iot-dashboard',\r\n },\r\n {\r\n title: 'FEATURES',\r\n group: true,\r\n },\r\n {\r\n title: 'Layout',\r\n icon: 'layout-outline',\r\n children: [\r\n {\r\n title: 'Stepper',\r\n link: '/pages/layout/stepper',\r\n },\r\n {\r\n title: 'List',\r\n link: '/pages/layout/list',\r\n },\r\n {\r\n title: 'Infinite List',\r\n link: '/pages/layout/infinite-list',\r\n },\r\n {\r\n title: 'Accordion',\r\n link: '/pages/layout/accordion',\r\n },\r\n {\r\n title: 'Tabs',\r\n pathMatch: 'prefix',\r\n link: '/pages/layout/tabs',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Forms',\r\n icon: 'edit-2-outline',\r\n children: [\r\n {\r\n title: 'Form Inputs',\r\n link: '/pages/forms/inputs',\r\n },\r\n {\r\n title: 'Form Layouts',\r\n link: '/pages/forms/layouts',\r\n },\r\n {\r\n title: 'Buttons',\r\n link: '/pages/forms/buttons',\r\n },\r\n {\r\n title: 'Datepicker',\r\n link: '/pages/forms/datepicker',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'UI Features',\r\n icon: 'keypad-outline',\r\n link: '/pages/ui-features',\r\n children: [\r\n {\r\n title: 'Grid',\r\n link: '/pages/ui-features/grid',\r\n },\r\n {\r\n title: 'Icons',\r\n link: '/pages/ui-features/icons',\r\n },\r\n {\r\n title: 'Typography',\r\n link: '/pages/ui-features/typography',\r\n },\r\n {\r\n title: 'Animated Searches',\r\n link: '/pages/ui-features/search-fields',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Modal & Overlays',\r\n icon: 'browser-outline',\r\n children: [\r\n {\r\n title: 'Dialog',\r\n link: '/pages/modal-overlays/dialog',\r\n },\r\n {\r\n title: 'Window',\r\n link: '/pages/modal-overlays/window',\r\n },\r\n {\r\n title: 'Popover',\r\n link: '/pages/modal-overlays/popover',\r\n },\r\n {\r\n title: 'Toastr',\r\n link: '/pages/modal-overlays/toastr',\r\n },\r\n {\r\n title: 'Tooltip',\r\n link: '/pages/modal-overlays/tooltip',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Extra Components',\r\n icon: 'message-circle-outline',\r\n children: [\r\n {\r\n title: 'Calendar',\r\n link: '/pages/extra-components/calendar',\r\n },\r\n {\r\n title: 'Progress Bar',\r\n link: '/pages/extra-components/progress-bar',\r\n },\r\n {\r\n title: 'Spinner',\r\n link: '/pages/extra-components/spinner',\r\n },\r\n {\r\n title: 'Alert',\r\n link: '/pages/extra-components/alert',\r\n },\r\n {\r\n title: 'Calendar Kit',\r\n link: '/pages/extra-components/calendar-kit',\r\n },\r\n {\r\n title: 'Chat',\r\n link: '/pages/extra-components/chat',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Maps',\r\n icon: 'map-outline',\r\n children: [\r\n {\r\n title: 'Google Maps',\r\n link: '/pages/maps/gmaps',\r\n },\r\n {\r\n title: 'Leaflet Maps',\r\n link: '/pages/maps/leaflet',\r\n },\r\n {\r\n title: 'Bubble Maps',\r\n link: '/pages/maps/bubble',\r\n },\r\n {\r\n title: 'Search Maps',\r\n link: '/pages/maps/searchmap',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Charts',\r\n icon: 'pie-chart-outline',\r\n children: [\r\n {\r\n title: 'Echarts',\r\n link: '/pages/charts/echarts',\r\n },\r\n {\r\n title: 'Charts.js',\r\n link: '/pages/charts/chartjs',\r\n },\r\n {\r\n title: 'D3',\r\n link: '/pages/charts/d3',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Editors',\r\n icon: 'text-outline',\r\n children: [\r\n {\r\n title: 'TinyMCE',\r\n link: '/pages/editors/tinymce',\r\n },\r\n {\r\n title: 'CKEditor',\r\n link: '/pages/editors/ckeditor',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Tables & Data',\r\n icon: 'grid-outline',\r\n children: [\r\n {\r\n title: 'Smart Table',\r\n link: '/pages/tables/smart-table',\r\n },\r\n {\r\n title: 'Tree Grid',\r\n link: '/pages/tables/tree-grid',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Miscellaneous',\r\n icon: 'shuffle-2-outline',\r\n children: [\r\n {\r\n title: '404',\r\n link: '/pages/miscellaneous/404',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'Auth',\r\n icon: 'lock-outline',\r\n children: [\r\n {\r\n title: 'Login',\r\n link: '/auth/login',\r\n },\r\n {\r\n title: 'Register',\r\n link: '/auth/register',\r\n },\r\n {\r\n title: 'Request Password',\r\n link: '/auth/request-password',\r\n },\r\n {\r\n title: 'Reset Password',\r\n link: '/auth/reset-password',\r\n },\r\n ],\r\n }, \r\n {\r\n title: 'Example',\r\n icon: '',\r\n children: [\r\n /* {\r\n title: 'edit',\r\n link: '/example/edit',\r\n }, */\r\n {\r\n title: 'list',\r\n link: '/example/list',\r\n }\r\n ],\r\n },\r\n ],\r\n }, \r\n];\r\n","// angular基本\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n// 自訂組件\r\nimport { TranfPipe } from './pipe/tranf.pipe';\r\nimport { IsInvaildPipe } from './pipe/is-invaild.pipe';\r\nimport { IsExistPipe } from './pipe/is-exist.pipe';\r\nimport { KeywordPipe } from './pipe/keyword.pipe';\r\nimport { InputFormatDirective } from './directive/input-email.directive';\r\nimport { CalendarComponent } from './component/calendar/calendar.component';\r\nimport { SelectProductComponent } from './component/select-product/select-product.component';\r\nimport { EditAttachComponent } from './component/edit-attach/edit-attach.component';\r\nimport { SelectStoreComponent } from './component/select-store/select-store.component';\r\nimport { EditProductComponent } from './component/edit-product/edit-product.component';\r\nimport { EditEOSProductComponent } from './component/edit-EOS-product/edit-EOS-product.component';\r\nimport { EditAttachgroupComponent } from './component/edit-attachgroup/edit-attachgroup.component';\r\nimport { SelectattachgroupComponent } from './component/select-attachgroup/select-attachgroup.component';\r\nimport { SelectAttachComponent } from './component/select-attach/select-attach.component';\r\nimport { SelectSalesOutletComponent } from './component/select-salesOutlet/select-salesOutlet.component';\r\nimport { SelectStoreSaleCashComponent } from './component/select-storeSaleCash/select-storeSaleCash.component';\r\nimport { ShowDataComponent } from './component/show-data/show-data.component';\r\nimport { SelectMemberTypeComponent } from './component/select-memberType/select-memberType.component';\r\nimport { EditAnnouncementComponent } from './component/edit-announcement/edit-announcement.component';\r\nimport { SelectAttachPrintComponent } from './component/select-attach-print/select-attach-print.component';\r\nimport { SelectStoresComponent } from './component/select-stores/select-stores.component';\r\nimport { ReportReconciliationComponent } from './component/report-reconciliation/report-reconciliation.component';\r\nimport { SelectBillmachineMoudleComponent } from './component/select-billmachine-moudle/select-billmachine-moudle.component'\r\n\r\nimport { MyPieComponent } from './chart/my-pie.component';\r\nimport { MyLineComponent } from './chart/my-line.component';\r\nimport { MyPointComponent } from './chart/my-point.component';\r\n\r\n\r\n\r\n// 框架的畫面組件\r\nimport { ThemeModule } from '../@theme/theme.module';\r\nimport {\r\n NbCardModule,\r\n NbIconModule,\r\n NbButtonModule,\r\n NbCheckboxModule,\r\n NbInputModule,\r\n NbRadioModule,\r\n NbSelectModule,\r\n NbToggleModule,\r\n NbTreeGridModule,\r\n NbTimepickerModule,\r\n NbDatepickerModule,\r\n NbAutocompleteModule,\r\n NbMenuModule,\r\n NbSpinnerModule,\r\n\r\n} from '@nebular/theme';\r\nimport { NgxDropzoneModule } from 'ngx-dropzone';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { SelectAttachMoudleComponent } from './component/select-attach-moudle/select-attach-moudle.component';\r\nimport { SelectPermissionsgroupComponent } from './component/select-permissionsgroup/select-permissionsgroup.component';\r\nimport { InfoOrdComponent } from './component/info-ord/info-ord.component';\r\nimport { AutoSelectComponent } from './object/auto-select/auto-select.component';\r\nimport { MyBarComponent } from './chart/my-bar.component';\r\nimport { InfoEOSOrdComponent } from './component/info-EOS-ord/info-EOS-ord.component';\r\nimport { InfoEOSDetailComponent } from './component/info-EOS-detail/info-EOS-detail.component';\r\nimport { StatusUpdateModalComponent } from './component/status-update-modal/status-update-modal.component';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n NgxDropzoneModule,\r\n FormsModule, //用於對表單元素做雙向係結\r\n ReactiveFormsModule, //對表單元素驗證用\r\n CommonModule,\r\n ThemeModule,\r\n NbSpinnerModule,\r\n\r\n NbMenuModule,\r\n NbCardModule,\r\n NbIconModule,\r\n NbButtonModule,\r\n NbCheckboxModule,\r\n NbInputModule,\r\n NbRadioModule,\r\n NbSelectModule,\r\n NbToggleModule,\r\n NbTreeGridModule,\r\n NbTimepickerModule,\r\n NbDatepickerModule,\r\n NbAutocompleteModule,\r\n NgxEchartsModule],\r\n declarations: [\r\n TranfPipe,\r\n IsInvaildPipe,\r\n IsExistPipe,\r\n KeywordPipe,\r\n InputFormatDirective,\r\n CalendarComponent,\r\n SelectProductComponent,\r\n EditAttachComponent,\r\n SelectStoreComponent,\r\n EditProductComponent,\r\n EditEOSProductComponent,\r\n EditAttachgroupComponent,\r\n SelectattachgroupComponent,\r\n SelectAttachComponent,\r\n SelectSalesOutletComponent,\r\n SelectStoreSaleCashComponent,\r\n MyPieComponent,\r\n MyLineComponent,\r\n MyPointComponent,\r\n SelectAttachMoudleComponent,\r\n SelectPermissionsgroupComponent,\r\n InfoOrdComponent,\r\n AutoSelectComponent,\r\n MyBarComponent,\r\n InfoEOSOrdComponent,\r\n InfoEOSDetailComponent,\r\n StatusUpdateModalComponent,\r\n ShowDataComponent,\r\n SelectMemberTypeComponent,\r\n EditAnnouncementComponent,\r\n SelectAttachPrintComponent,\r\n SelectStoresComponent,\r\n ReportReconciliationComponent,\r\n SelectBillmachineMoudleComponent\r\n ],\r\n exports: [\r\n TranfPipe,\r\n IsInvaildPipe,\r\n IsExistPipe,\r\n KeywordPipe,\r\n InputFormatDirective,\r\n CalendarComponent,\r\n SelectProductComponent,\r\n EditAttachComponent,\r\n SelectStoreComponent,\r\n EditProductComponent,\r\n EditEOSProductComponent,\r\n EditAttachgroupComponent,\r\n SelectattachgroupComponent,\r\n SelectAttachComponent,\r\n SelectAttachMoudleComponent,\r\n SelectPermissionsgroupComponent,\r\n MyPieComponent,\r\n MyLineComponent,\r\n MyPointComponent,\r\n MyBarComponent,\r\n InfoOrdComponent,\r\n AutoSelectComponent,\r\n InfoEOSOrdComponent,\r\n InfoEOSDetailComponent,\r\n StatusUpdateModalComponent,\r\n ShowDataComponent,\r\n SelectMemberTypeComponent,\r\n EditAnnouncementComponent,\r\n SelectAttachPrintComponent,\r\n SelectStoresComponent,\r\n ReportReconciliationComponent,\r\n SelectBillmachineMoudleComponent\r\n ],\r\n providers: [\r\n\r\n ]\r\n})\r\n\r\nexport class ToolModule {\r\n\r\n static forRoot() {\r\n return {\r\n ngModule: ToolModule,\r\n providers: [],\r\n };\r\n }\r\n} ","/**\r\n * @license\r\n * Copyright Akveo. All Rights Reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n */\r\n// The file contents for the current environment will overwrite these during build.\r\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\r\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\r\n// The list of which env maps to which file can be found in `.angular-cli.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n};\r\n","/**\r\n * @license\r\n * Copyright Akveo. All Rights Reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n */\r\nimport { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"]}