apps/cMiniApp/src/app.config.ts
@@ -51,6 +51,8 @@ pages: [ 'authorization/authorization', 'userPolicy/userPolicy', 'mineUserPolicy/mineUserPolicy', 'privacyPolicy/privacyPolicy', 'loginByForm/loginByForm', 'registerForm/registerForm', ], @@ -68,6 +70,18 @@ root: 'subpackages/city', pages: ['citySelect/citySelect'], }, { root: 'subpackages/mine', pages: [ 'mineSign/mineSign', 'mineHire/mineHire', 'mineCancel/mineCancel', 'mineCollectTask/mineCollectTask', 'mineAgreementSign/mineAgreementSign', 'mineAgreementSignDetail/mineAgreementSignDetail', 'setting/setting', ], }, ], // preloadRule: { // 'pages/mine/index': { apps/cMiniApp/src/constants/router.ts
@@ -1,6 +1,8 @@ export enum RouterPath { authorization = '/subpackages/login/authorization/authorization', userPolicy = '/subpackages/login/userPolicy/userPolicy', mineUserPolicy = '/subpackages/login/mineUserPolicy/mineUserPolicy', privacyPolicy = '/subpackages/login/privacyPolicy/privacyPolicy', loginByForm = '/subpackages/login/loginByForm/loginByForm', registerForm = '/subpackages/login/registerForm/registerForm', home = '/pages/home/index', @@ -19,4 +21,12 @@ authenticationFaRen = '/subpackages/authentication/authenticationFaRen/authenticationFaRen', authenticationJBR = '/subpackages/authentication/authenticationJBR/authenticationJBR', citySelect = '/subpackages/city/citySelect/citySelect', mineSign = '/subpackages/mine/mineSign/mineSign', mineHire = '/subpackages/mine/mineHire/mineHire', mineCancel = '/subpackages/mine/mineCancel/mineCancel', mineCollectTask = '/subpackages/mine/mineCollectTask/mineCollectTask', mineAgreementSign = '/subpackages/mine/mineAgreementSign/mineAgreementSign', mineAgreementSignDetail = '/subpackages/mine/mineAgreementSignDetail/mineAgreementSignDetail', setting = '/subpackages/mine/setting/setting', } apps/cMiniApp/src/pages/mine/index.scss
@@ -71,8 +71,8 @@ .mine-go-login { font-size: 40px; color: #fff; line-height: 120px; color: boleGetCssVar('text-color', 'primary'); line-height: 104px; } } apps/cMiniApp/src/pages/mine/index.vue
@@ -60,23 +60,23 @@ <img :src="IconArrow" class="mine-order-list-title-icon" /> </div> <div class="mine-order-list-content"> <nut-badge class="mine-order-list-item" :value="8"> <nut-badge class="mine-order-list-item" top="8" :value="8" @click="goMineSign"> <img :src="IconOrderSign" class="mine-order-list-icon" /> <div class="mine-order-list-text">æçæ¥å</div> </nut-badge> <nut-badge class="mine-order-list-item" :value="8"> <nut-badge class="mine-order-list-item" top="8" :value="8" @click="goMineHire"> <img :src="IconOrderHire" class="mine-order-list-icon" /> <div class="mine-order-list-text">å·²å½ç¨</div> </nut-badge> <nut-badge class="mine-order-list-item" :value="8"> <nut-badge class="mine-order-list-item" top="8" :value="8" @click="goMineCancel"> <img :src="IconOrderCancel" class="mine-order-list-icon" /> <div class="mine-order-list-text">已忶</div> </nut-badge> </div> </List> <List class="mine-list-wrapper mine-setting-list"> <ListItem :icon="IconSetting" title="ææ¶èçä»»å¡" @click="goSetting"></ListItem> <ListItem :icon="IconSetting" title="åè®®ç¾çº¦" @click="goSetting"></ListItem> <ListItem :icon="IconSetting" title="ææ¶èçä»»å¡" @click="goMineCollectTask"></ListItem> <ListItem :icon="IconSetting" title="åè®®ç¾çº¦" @click="goMineAgreementSign"></ListItem> <ListItem :icon="IconSetting" title="设置" @click="goSetting"></ListItem> <ListItem :icon="IconSetting" title="æè¦æäºº/ç¨äºº" @click="goSetting"></ListItem> </List> @@ -120,7 +120,7 @@ } function goSetting() { // goPage(RouterPath.setting); goPage(RouterPath.setting); } Taro.showShareMenu({ @@ -138,6 +138,21 @@ function goAuthentication() { goPage(RouterPath.authenticationHome); } function goMineSign() { goPage(RouterPath.mineSign); } function goMineHire() { goPage(RouterPath.mineHire); } function goMineCancel() { goPage(RouterPath.mineCancel); } function goMineCollectTask() { goPage(RouterPath.mineCollectTask); } function goMineAgreementSign() { goPage(RouterPath.mineAgreementSign); } </script> <style lang="scss"> apps/cMiniApp/src/subpackages/login/mineUserPolicy/index.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/login/mineUserPolicy/mineUserPolicy.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,401 @@ <template> <PageLayout title="ç¨æ·åè®®" :needAuth="false" class="userPolicy-page-wrapper"> <scroll-view style="height: 100%" :scroll-y="true"> <div class="userPolicy-page-scrollview-content"> <div class="userPolicy-page-title">818å¹³å°ç¨æ·æå¡åè®®</div> <UserPolicyCell title="ä¸ãæ¥åæ¡æ¬¾"> <div> 1ãæ¬åè®®ç±æ¨ä¸818å¹³å°çç»è¥è ï¼ä»¥ä¸ç§°âå¹³å°âï¼å ±åç¼ç»ï¼æ¬æå¡åè®®å ·æååæåã </div> <div> 2ãç±äºäºèç½é«éåå±ï¼æ¨ä¸å¹³å°ç¾ç½²çæ¬åè®®åæçæ¡æ¬¾å¹¶ä¸è½å®æ´ç½åå¹¶è¦çæ¨ä¸å¹³å°æææå©ä¸ä¹å¡ï¼ç°æç约å®ä¹ä¸è½ä¿è¯å®å ¨ç¬¦åæªæ¥åå±çéæ±ãå æ¤ï¼ææå¹³å°å·²ç»åå¸çæå°æ¥å¯è½åå¸çåç±»è§åå为æ¬åè®®çè¡¥å åè®®ï¼ä¸æ¬åè®®ä¸å¯åå²ä¸å ·æåçæ³å¾æåã妿¨ç»§ç»ä½¿ç¨å¹³å°æå¡ï¼è§ä¸ºæ¨åæä¸è¿°è¡¥å åè®®ã </div> <div> 3ã卿¬æå¡åè®®ä¸æ²¡æä»¥âè§åâåæ ·è¡¨ç¤ºç龿¥æåææç¤ºçæä»¶ä¸å±äºæ¬æå¡åè®®çç»æé¨åï¼èæ¯å ¶å®å 容çåè®®ææå ³åèæ°æ®ï¼ä¸æ¬åè®®æ²¡ææ³å¾ä¸çç´æ¥å ³ç³»ã </div> <div> 4ãç¨æ·å¨ä½¿ç¨å¹³å°æä¾çå项æå¡çåæ¶ï¼æ¿è¯ºæ¥åå¹¶éµå®å项ç¸å ³è§åçè§å®ãå¹³å°æææ ¹æ®éè¦ä¸æ¶å°å¶å®ãä¿®æ¹æ¬åè®®æåç±»è§åï¼å¦æ¬åè®®æä»»ä½åæ´ï¼å¹³å°å°ä»¥ç½ç«å ¬åçå½¢å¼è¿è¡æ´æ°ï¼ä¸ååç¬éç¥äºæ¨ãå¦ç¨æ·ä¸åæç¸å ³åæ´ï¼å¿ é¡»åæ¢ä½¿ç¨âæå¡âãç»ä¿®è®¢çåè®®ä¸ç»å¨å¹³å°ç½ç«ä¸å ¬å¸åï¼ç«å³èªå¨çæãåç±»è§åä¼å¨åå¸åçæï¼äº¦æä¸ºæ¬åè®®çä¸é¨åãç»å½æç»§ç»ä½¿ç¨âæå¡âå°è¡¨ç¤ºç¨æ·æ¥åç»ä¿®è®¢çåè®®ãé¤å¦è¡æç¡®å£°æå¤ï¼ä»»ä½ä½¿âæå¡âèå´æ©å¤§æåè½å¢å¼ºçæ°å 容å忬å议约æã </div> <div> 5ãç¨æ·ç¡®è®¤æ¬æå¡åè®®åï¼æ¬æå¡åè®®å³å¨ç¨æ·åå¹³å°ä¹é´äº§çæ³å¾æåãè¯·ç¨æ·å¡å¿ 卿³¨åä¹å认çé è¯»å ¨é¨æå¡åè®®å 容ï¼å¦æä»»ä½çé®ï¼å¯åå¹³å°å¨è¯¢ã <div> 1ï¼æ è®ºç¨æ·äºå®ä¸æ¯å¦å¨æ³¨åä¹å认çé è¯»äºæ¬æå¡åè®®ï¼åªè¦ç¨æ·ç¹å»åè®®æ£æ¬ä¸æ¹çâ确认âæé®å¹¶æç §å¹³å°æ³¨åç¨åºæå注åä¸ºç¨æ·ï¼ç¨æ·çè¡ä¸ºä»ç¶è¡¨ç¤ºå ¶åæå¹¶ç¾ç½²äºæ¬æå¡åè®®ã </div> <div>2ï¼æ¬åè®®ä¸æ¶åç¨æ·ä¸å¹³å°å ¶å®ç¨æ·ä¹é´å ç½ä¸äº¤æè产ççæ³å¾å ³ç³»åæ³å¾çº 纷ã</div> </div> </UserPolicyCell> <UserPolicyCell title="äºãå®ä¹"> <div> 1ã818å¹³å°ï¼818平尿ç±818å¹³å°ç»è¥è è¿è¥çç½ç»å¹³å°ï¼å æ¬ä½ä¸éäº818人åèµæºäº§ä¸é¾å¹³å°ï¼åå为www.81812333.comå81812333å°ç¨åºçã </div> <div> 2ã818å¹³å°ç»è¥è ï¼å¹³å°ç»è¥è æ¯ææ³å¾è®¤å¯çç»è¥è¯¥å¹³å°ç½ç«ç责任主ä½ï¼æå ³818å¹³å°ç»è¥è çä¿¡æ¯è¯·æ¥ç818å¹³å°é¦é¡µé¡¶é¨çâå ³äºâ龿¥ã </div> <div> 3ã818平尿å¡ï¼818平尿塿¯æå¹³å°æ³¨åç¨æ·å¯å¨818å¹³å°ä¸åå¸ä¼ä¸ä¿¡æ¯ã交æä¿¡æ¯ãæ¥è¯¢äº§åã产åç¸å ³ä¿¡æ¯åå ¶ä»æå¡ä¿¡æ¯ãè¾¾æäº¤ææåå¹¶è¿è¡äº¤æãå¯¹å ¶ä»æ³¨åç¨æ·è¿è¡è¯ä»·ãåå å¹³å°ç»ç»çæ´»å¨ä»¥å使ç¨å ¶å®ä¿¡æ¯æå¡åææ¯æå¡ã </div> <div> 4ãç¨æ·åç¨æ·è´¦æ·ï¼ <div> 1.ç¨æ·ï¼ç¨æ·å¿ é¡»æ¯å ·å¤å®å ¨æ°äºè¡ä¸ºè½åçèªç¶äººï¼æè æ¯å ·æåæ³ç»è¥èµæ ¼çå®ä½ç»ç»ãæ æ°äºè¡ä¸ºè½å人ãéå¶æ°äºè¡ä¸ºè½åäººä»¥åæ ç»è¥æç¹å®ç»è¥èµæ ¼çç»ç»ä¸å½æ³¨å为平å°ç¨æ·æè¶ è¿å ¶æ°äºæå©æè¡ä¸ºè½åèå´ä»äºäº¤æçï¼å ¶ä¸å¹³å°ä¹é´çæå¡åè®®èªå§æ æï¼å¹³å°ä¸ç»åç°ï¼ææç«å³æ³¨éè¯¥ç¨æ·ï¼å¹¶è¿½ç©¶å ¶ä½¿ç¨å¹³å°âæå¡âçä¸åæ³å¾è´£ä»»ã </div> <div> 2.ç¨æ·æ³¨åï¼ç¨æ·æ³¨åæ¯æç¨æ·ç»éå¹³å°ï¼å¹¶æè¦æ±å¡«åç¸å ³ä¿¡æ¯å¹¶ç¡®è®¤åæå±¥è¡ç¸å ³ç¨æ·åè®®çè¿ç¨ã </div> <div> 3.è´¦æ·è½¬è®©ï¼ç±äºç¨æ·è´¦æ·å ³èç¨æ·ä¿¡ç¨ä¿¡æ¯ï¼ä» 彿æ³å¾ææè§å®ã叿³è£å®æç»å¹³å°åæçæ åµä¸ï¼æ¨å¯è¿è¡è´¦æ·çè½¬è®©ãæ¨çè´¦æ·ä¸ç»è½¬è®©ï¼è¯¥è´¦æ·é¡¹ä¸æå©ä¹å¡ä¸å¹¶è½¬ç§»ã餿¤å¤ï¼æ¨çè´¦æ·ä¸å¾ä»¥ä»»ä½æ¹å¼è½¬è®©ï¼å¦å平尿æè¿½ç©¶æ¨çè¿çº¦è´£ä»»ï¼ä¸ç±æ¤äº§ççä¸å责任åç±æ¨æ¿æ ã </div> <div> 4.å®å认è¯ï¼ä¸ºä½¿æ¨æ´å¥½å°ä½¿ç¨å¹³å°çå项æå¡ï¼ä¿éæ¨çè´¦æ·å®å ¨ï¼å¹³å°å¯è¦æ±æ¨æå½å®¶æ³å¾æ³è§çè§å®å®æå®å认è¯ã </div> <div> 5.䏿´»è·è´¦æ·åæ¶ï¼å¦æ¨çè´¦æ·åæ¶ç¬¦å以䏿¡ä»¶ï¼æ¨çå¹³å°ç»å½è´¦æ·å¯è½è¢«å±è½ï¼ä¸è½åç»éå¹³å°ï¼ææå¹³å°æå¡å°åæ¶ç»æ¢ï¼ </div> <div>5.1.æªéè¿å®å认è¯çå¹³å°è´¦æ·ï¼</div> <div>5.2.è¿ç»180天æªä½¿ç¨æ¨çé®ç®±ãææºæå¹³å°è®¤å¯çå ¶ä»æ¹å¼åå¯ç ç»å½è¿å¹³å°ç½ç«ï¼</div> <div>5.3.ä¸å卿ªå°æçææä¸å¡</div> <div>6.注åä¿¡æ¯ç®¡ç</div> <div> 6.1.å¨å®ææ³¨åææ¿æ´»æµç¨æ¶ï¼æ¨åºå½æå¹³å°ç¸åºé¡µé¢çæç¤ºåç¡®å®æ´å°æä¾å¹¶åæ¶æ´æ°æ¨çä¿¡æ¯ï¼ä»¥ä½¿ä¹çå®ãåæ¶ï¼å®æ´ååç¡®ãå¨å½å®¶æ³å¾æ³è§ææç¡®è§å®è¦æ±å¹³å°ä½ä¸ºå¹³å°æå¡æä¾è å¿ é¡»å¯¹ç¨æ·ï¼å¦äººåèµæºå ¬å¸çï¼çä¿¡æ¯è¿è¡æ ¸å®çæ åµä¸ï¼å¹³å°å°ä¾æ³ä¸æ¶å°å¯¹æ¨çä¿¡æ¯è¿è¡æ£æ¥æ ¸å®ï¼æ¨åºå½é åæä¾ææ°ãçå®ã宿´ãææçä¿¡æ¯ã </div> <div> 6.2.å¦å¹³å°ææ¨æå䏿¬¡æä¾çä¿¡æ¯ä¸æ¨èç³»æªæãæ¨æªæå¹³å°çè¦æ±åæ¶æä¾ä¿¡æ¯ãæ¨æä¾çä¿¡æ¯å卿æ¾ä¸å®æè¡æ¿å¸æ³æºå ³æ ¸å®æ¨æä¾çä¿¡æ¯æ æçï¼æ¨å°æ¿æ å æ¤å¯¹æ¨èªèº«ãä»äººåå¹³å°é æçå ¨é¨æå¤±ä¸ä¸å©åæãå¹³å°å¯åæ¨ååºè¯¢é®æè¦æ±æ´æ¹çéç¥ï¼å¹¶è¦æ±æ¨è¿è¡èµææ´æ°æéæ°è®¤è¯ï¼ç´è³ä¸æ¢ãç»æ¢å¯¹æ¨æä¾é¨åæå ¨é¨å¹³å°æå¡ï¼å¹³å°å¯¹æ¤ä¸æ¿æ 责任ã </div> <div> 6.3.æ¨è®¾ç½®çè´¦æ·ç»å½ååæµç§°ä¸å¾è¿åå½å®¶æ³å¾æ³è§åå¹³å°è§åçç¸åºç®¡çè§å®ï¼å¦åå¹³å°å¯åæ¶æ¨çç»å½ååæµç§°ï¼å¹¶æå¹³å°è§åè¿è¡ç¸åºçå¤çã </div> </div> </UserPolicyCell> <UserPolicyCell title="ä¸ãç¨æ·çæå©åä¹å¡"> <div> 1ãç¨æ·ææä½¿ç¨æ¨è®¾ç½®æç¡®è®¤çé®ç®±ãææºå·ç ï¼ä»¥ä¸ç®ç§°âè´¦æ·åç§°âï¼åæ¨è®¾ç½®çå¯ç ï¼è´¦æ·åç§°åå¯ç åç§°âè´¦æ·âï¼ç»å½å¹³å°ã ç±äºæ¨çå¹³å°ç½è´¦æ·å ³èæ¨ç个人信æ¯åå¹³å°åä¸ä¿¡æ¯ï¼æ¨çå¹³å°ç½è´¦æ·ä» 鿍æ¬äººä½¿ç¨ãæªç»å¹³å°åæï¼æ¨ç´æ¥æé´æ¥ææç¬¬ä¸æ¹ä½¿ç¨æ¨å¹³å°ç½è´¦æ·æè·åæ¨è´¦æ·é¡¹ä¸ä¿¡æ¯çè¡ä¸ºæ æãå¦å¹³å°å¤ææ¨è´¦æ·ç使ç¨å¯è½å±åæ¨çè´¦æ·å®å ¨å/æå¹³å°ä¿¡æ¯å®å ¨çï¼å¹³å°å¯æç»æä¾ç¸åºæå¡æç»æ¢æ¬åè®®ã </div> <div> 2ãç¨æ·åºç§¯æç»´æ¤å¹³å°è¿è¥ç§©åºï¼ä¸å¾éè¿è½¯ä»¶ãç¨åºçæ¹å¼ï¼å¤§æ¹é注åè´¦æ·ï¼å¦¨å®³å¹³å°è¿è¥ç§©åºï¼ä»¥ä¸ç®ç§°âä¸å½æ³¨åâï¼ã对äºå¹³å°ææ¥å°çæ¶å«ä¸å½æ³¨åçä¼åï¼å¹³å°å°è§æ èéåè¦åã身份éªè¯ãéå¶å¼éå±å°ãéå¶è´ä¹°ç½ç«ç¸å ³æå¡ãéå¶åå¸äº§åãéå¶ç½ç«ç»å½çä¸´æ¶æ§ç®¡çæªæ½ã </div> <div> 3ãç¨æ·æææ ¹æ®æ¬æå¡åè®®çè§å®ä»¥åå¹³å°ä¸åå¸çç¸å ³è§åå©ç¨å¹³å°åå¸ä¼ä¸ä¿¡æ¯ã交æä¿¡æ¯ãæ¥è¯¢äº§åã产åç¸å ³ä¿¡æ¯åå ¶ä»æå¡ä¿¡æ¯ãè¾¾æäº¤ææåå¹¶è¿è¡äº¤æãå¯¹å ¶ä»æ³¨åç¨æ·è¿è¡è¯ä»·ãåå å¹³å°ç»ç»çæ´»å¨ä»¥å使ç¨å ¶å®ä¿¡æ¯æå¡åææ¯æå¡ã </div> <div> 4ãç¨æ·å¨å¹³å°ç½ä¸äº¤æè¿ç¨ä¸å¦ä¸å¹³å°å ¶ä»ç¨æ·å 交æäº§ççº çº·ï¼å¯ä»¥è¯·æ±å¹³å°ä»ä¸äºä»¥åè°ãç¨æ·å¦åç°å¹³å°å ¶ä»ç¨æ·æè¿æ³æè¿åæ¬æå¡åè®®çè¡ä¸ºï¼å¯ä»¥åå¹³å°è¿è¡åæ è¦æ±å¤çãå¦ç¨æ·å ç½ä¸äº¤æä¸å ¶ä»ç¨æ·äº§çè¯è®¼çï¼ç¨æ·ææéè¿å¸æ³é¨é¨è¦æ±å¹³å°æä¾ç¸å ³èµæï¼ </div> <div> 5ãç¨æ·æä¹å¡å¨æ³¨åæ¶æä¾èªå·±ççå®èµæï¼å¹¶ä¿è¯è¯¸å¦çµåé®ä»¶å°åãèç³»çµè¯ãèç³»å°åã鮿¿ç¼ç çå å®¹çæææ§åå®å ¨æ§ï¼ä¿è¯å¹³å°åå¹³å°å ¶ä»ç¨æ·å¯ä»¥éè¿ä¸è¿°èç³»æ¹å¼ä¸èªå·±è¿è¡èç³»ãåæ¶ï¼ç¨æ·ä¹æä¹å¡å¨ç¸å ³èµæå®é åæ´æ¶åæ¶æ´æ°æå ³æ³¨åèµæãç¨æ·ä¿è¯ä¸ä»¥ä»äººèµæå¨å¹³å°ä¸è¿è¡æ³¨åæè®¤è¯ï¼å¦ç¨æ·æä¾çä¿¡æ¯ä¸çå®ãä¸åç¡®ãä¸åæ¶æä¸å®å ¨ï¼æå¹³å°æåçççç±æçå ¶ç宿§ãåç¡®æ§ãåæ¶æ§å宿´æ§ï¼å平尿æè§æ åµå¯¹ç¨æ·éåè¦åãè´¦æ·éæéå¶ç´è³è´¦æ·å±è½çç®¡çæªæ½ï¼å¹¶æææç»ç¨æ·ä½¿ç¨ä»»ä½ç°æçæå¡å以åå¯è½æä¾çä»»ä½åè½ææå¡ã </div> <div> 6ãç¨æ·åºå åäºè§£å¹¶åæï¼818人åèµæºäº§ä¸é¾å¹³å°æ¯ä¸ä¸ªè¡ä¸å¹³å°ï¼æ æ¨ç询价ãéè´è¡ä¸ºåºå½åºäºçå®çè¡ä¸éæ±ï¼ä¸å¾åå¨å¯¹äº§åå/ææå¡å®æ½æ¶æè¯¢ä»·ãéè´ãæ¶æç»´æçæ°ä¹±å¹³å°æ£å¸¸äº¤æç§©åºçè¡ä¸ºãåºäºç»´æ¤å¹³å°äº¤æç§©åºå交æå®å ¨çéè¦ï¼å¹³å°åç°ä¸è¿°æ å½¢æ¶å¯ä¸»å¨æ§è¡å ³éç¸å ³äº¤æè®¢åçæä½ã </div> <div>7ãç¨æ·å¨å¹³å°ä¸ä¸å¾åå¸å¦ä¸åç±»è¿æ³æè¿è§ä¿¡æ¯ï¼</div> </UserPolicyCell> <UserPolicyCell title="åãå¹³å°çæå©åä¹å¡"> <div> 1ã平尿ä¹å¡å¨ç°æææ¯ä¸ç»´æ¤æ´ä¸ªå¹³å°çæ£å¸¸è¿è¡ï¼å¹¶åªåæååæ¹è¿ææ¯ï¼ä½¿ç¨æ·ç½ä¸äº¤ææ´»å¨å¾ä»¥é¡ºå©è¿è¡ï¼ </div> <div> 2ãå¯¹ç¨æ·å¨æ³¨å使ç¨å¹³å°ä¸æéå°çä¸äº¤æææ³¨åæå ³çé®é¢ååæ çæ åµï¼å¹³å°åºåæ¶ä½åºåå¤ï¼ </div> <div> 3ã对äºç¨æ·å¨å¹³å°ä¸çä¸å½è¡ä¸ºæå ¶å®ä»»ä½å¹³å°è®¤ä¸ºåºå½ç»æ¢æå¡çæ åµï¼å¹³å°ææéæ¶ä½åºå é¤ç¸å ³ä¿¡æ¯ãç»æ¢æå¡æä¾çå¤çï¼èæ é¡»å¾å¾ç¨æ·çåæï¼ </div> <div> 4ãå ç½ä¸äº¤æå¹³å°çç¹æ®æ§ï¼å¹³å°æ²¡æä¹å¡å¯¹ææç¨æ·çæ³¨åæ°æ®ãææç交æè¡ä¸ºä»¥åä¸äº¤ææå ³çå ¶å®äºé¡¹è¿è¡äºå 审æ¥ï¼ä½å¦åå¨ä¸åæ åµï¼ <div>1ï¼ç¨æ·æå ¶å®ç¬¬ä¸æ¹éç¥å¹³å°ï¼è®¤ä¸ºæä¸ªå ·ä½ç¨æ·æå ·ä½äº¤æäºé¡¹å¯è½åå¨é大é®é¢ï¼</div> <div> 2ï¼ç¨æ·æå ¶å®ç¬¬ä¸æ¹åå¹³å°åç¥å¹³å°ä¸æè¿æ³æä¸å½è¡ä¸ºçï¼å¹³å°ä»¥æ®ééä¸ä¸äº¤æè çç¥è¯æ°´å¹³æ å对ç¸å ³å 容è¿è¡å¤å«ï¼å¯ä»¥ææ¾è®¤ä¸ºè¿äºå 容æè¡ä¸ºå ·æè¿æ³æä¸å½æ§è´¨çï¼ </div> <div> é对ä¸è¿°æ åµï¼å æ¬ä½ä¸éäºï¼ï¼å¹³å°æææ ¹æ®ä¸åæ åµéæ©ä¿çæå é¤ç¸å ³ä¿¡æ¯æç»§ç»ãåæ¢å¯¹è¯¥ç¨æ·æä¾æå¡ï¼å¹¶è¿½ç©¶ç¸å ³æ³å¾è´£ä»»ã </div> </div> <div> 5ãç¨æ·å¨å¹³å°äº¤æè¿ç¨ä¸å¦ä¸å¹³å°å ¶å®ç¨æ·å 交æäº§ççº çº·ï¼è¯·æ±å¹³å°ä»ä¸äºä»¥è°å¤ï¼ç»å¹³å°å®¡æ ¸åï¼å¹³å°ææéè¿çµè¯ãçµåé®ä»¶çèç³»æ¹å¼åçº çº·åæ¹äºè§£æ åµï¼å¹¶å°æäºè§£çæ åµéè¿çµè¯ãçµåé®ä»¶çèç³»æ¹å¼äºç¸éç¥å¯¹æ¹ï¼ </div> <div> 6ãç¨æ·å å¨å¹³å°ä¸äº¤æä¸å ¶å®ç¨æ·äº§çè¯è®¼çï¼ç¨æ·éè¿å¸æ³é¨é¨æè¡æ¿é¨é¨ä¾ç §æ³å®ç¨åºè¦æ±å¹³å°æä¾ç¸å ³æ°æ®ï¼å¹³å°åºç§¯æé åå¹¶æä¾æå ³èµæï¼ </div> <div> 7ã平尿æå¯¹ç¨æ·çæ³¨åæ°æ®å交æè¡ä¸ºè¿è¡æ¥é ï¼åç°æ³¨åæ°æ®æäº¤æè¡ä¸ºä¸åå¨ä»»ä½é®é¢ææçï¼åææåç¨æ·ååºè¯¢é®åè¦æ±æ¹æ£çéç¥æè ç´æ¥ä½åºå é¤çå¤çï¼ </div> <div> 8ãç»å½å®¶çææ³å¾æä¹¦æè¡æ¿å¤ç½å³å®ç¡®è®¤ç¨æ·åå¨è¿æ³è¡ä¸ºï¼æè å¹³å°æè¶³å¤äºå®ä¾æ®å¯ä»¥è®¤å®ç¨æ·åå¨è¿æ³æè¿åæå¡åè®®è¡ä¸ºçï¼å¹³å°ææå¨å¹³å°ä¸ä»¥å ¬ååå¸çå½¢å¼å ¬å¸ç¨æ·çè¿æ³è¡ä¸ºï¼ </div> <div> 9ã对äºç¨æ·å¨å¹³å°åå¸çä¸åå类信æ¯ï¼å¹³å°ææå¨ä¸éç¥ç¨æ·çåæä¸è¿è¡å 餿éåå ¶å®éå¶æ§æªæ½ï¼å æ¬ä½ä¸éäºä»¥è§é¿è´¹ç¨ä¸ºç®ççä¿¡æ¯ï¼ä»¥çä½ä¿¡ç¨ä¸ºç®ççä¿¡æ¯ï¼å¹³å°æçç±ç¸ä¿¡å卿¬ºè¯çæ¶ææèåå 容çä¿¡æ¯ï¼å¹³å°æçç±ç¸ä¿¡ä¸ç½ä¸äº¤ææ å ³æä¸æ¯ä»¥äº¤æä¸ºç®ççä¿¡æ¯ï¼å¹³å°æçç±ç¸ä¿¡å卿¶æç«ä»·æå ¶å®è¯å¾æ°ä¹±æ£å¸¸äº¤æç§©åºå ç´ çä¿¡æ¯ï¼å¹³å°æçç±ç¸ä¿¡è¯¥ä¿¡æ¯è¿åå ¬å ±å©çæå¯è½ä¸¥éæå®³å¹³å°åå ¶å®ç¨æ·åæ³å©ççï¼ </div> <div> 10ãç¨æ·å è¿è¡äº¤æãè·åæå¿æå¡ææ¥è§¦å¹³å°æå¡å¨èåççææåºçº³ç¨èµï¼ä»¥åä¸å硬件ã软件ãæå¡åå ¶å®æ¹é¢çè´¹ç¨åç±ç¨æ·è´è´£æ¯ä»ï¼ </div> <div> 11ãå¹³å°ä» ä½ä¸ºäº¤æå°ç¹ãå¹³å°ä» ä½ä¸ºç¨æ·ç©è²äº¤æå¯¹è±¡ï¼å°±äº§ååæå¡ç交æè¿è¡ååï¼ä»¥åè·ååç±»ç¸å ³çæå¡çå°ç¹ãå¹³å°ä¸è½æ§å¶äº¤æææ¶åçç©åãæå¡çè´¨éãå®å ¨æåæ³æ§ï¼ä¿¡æ¯çç宿§æåç¡®æ§ï¼ä»¥åäº¤ææ¹å±¥è¡å ¶å¨å议项ä¸çå项ä¹å¡çè½åï¼ </div> <div> 12ãå¹³å°å¹¶ä¸ä½ä¸ºä¹°å®¶ææ¯åå®¶ç身份åä¸ä¹°åè¡ä¸ºçæ¬èº«ã平尿éç¨æ·åºè¯¥éè¿èªå·±çè°¨æ å¤æç¡®å®ç¸å ³ä¿¡æ¯çç宿§ãåæ³æ§åæææ§ï¼ </div> <div> 13ã许å¯ä½¿ç¨æã ç¨æ·ä»¥æ¤æäºå¹³å°åå ¶å ³èå ¬å¸ç¬å®¶çãå ¨çéç¨çãæ°¸ä¹ çãå è´¹ç许å¯ä½¿ç¨æå© (å¹¶ææå¨å¤ä¸ªå±é¢å¯¹è¯¥æå©è¿è¡åææ)ï¼ä½¿å¹³å°åå ¶å ³èå ¬å¸ææ(å ¨é¨æé¨ä»½å°) 使ç¨ãå¤å¶ãä¿®è®¢ãæ¹åãåå¸ãç¿»è¯ãååãæ§è¡åå±ç¤ºç¨æ·çå ¨é¨èµææ°æ®ï¼å æ¬ä½ä¸éäºæ³¨åèµæã交æè¡ä¸ºæ°æ®åå ¨é¨å±ç¤ºäºç½ç«çå类信æ¯ï¼æå¶ä½å ¶æ´¾çä½åï¼å/æä»¥ç°å¨å·²ç¥ææ¥åå¼åçä»»ä½å½¢å¼ãåªä½æææ¯ï¼å°ä¸è¿°ä¿¡æ¯çº³å ¥å ¶å®ä½åå ã </div> </UserPolicyCell> <UserPolicyCell title="äºãç¨æ·çè¿çº¦åå¤ç"> <div>1ãè¿çº¦è®¤å®</div> <div>åçå¦ä¸æ å½¢ä¹ä¸çï¼è§ä¸ºæ¨è¿çº¦ï¼</div> <div>1.使ç¨å¹³å°æå¡æ¶è¿åæå ³æ³å¾æ³è§è§å®çï¼</div> <div>2.è¿åæ¬åè®®æå¹³å°å°å¨æªæ¥æ´æ°çå ¶ä»ç±»åçè¡¥å åè®®çï¼</div> <div> 为éåºçµååå¡åå±å满足海éç¨æ·å¯¹é«æä¼è´¨æå¡çéæ±ï¼æ¨ç解并åæï¼å¹³å°å¯å¨å¹³å°è§åä¸çº¦å®è¿çº¦è®¤å®çç¨åºåæ åãå¦ï¼å¹³å°å¯ä¾æ®æ¨çç¨æ·æ°æ®ä¸æµ·éç¨æ·æ°æ®çå ³ç³»æ¥è®¤å®æ¨æ¯å¦ææè¿çº¦ï¼æ¨æä¹å¡å¯¹æ¨çæ°æ®å¼å¸¸ç°è±¡è¿è¡å å举è¯ååçè§£éï¼å¦åå°è¢«è®¤å®ä¸ºè¿çº¦ã </div> <div>2ãè¿çº¦å¤çæªæ½</div> <div> 1.æ¨å¨å¹³å°ä¸åå¸çä¿¡æ¯ææè¿çº¦çï¼å¹³å°å¯æ ¹æ®ç¸åºè§åç«å³å¯¹ç¸åºä¿¡æ¯è¿è¡å é¤ãå±è½å¤çã </div> <div> 2.æ¨å¨å¹³å°ä¸å®æ½çè¡ä¸ºï¼æè½æªå¨å¹³å°ä¸å®æ½ä½å¯¹å¹³å°åå ¶ç¨æ·äº§çå½±åçè¡ä¸ºææè¿çº¦çï¼å¹³å°å¯ä¾æ®ç¸åºè§åå¯¹æ¨æ§è¡è´¦æ·æ©æãéå¶åå æ´»å¨ã䏿¢åæ¨æä¾é¨åæå ¨é¨æå¡ã忣è¿çº¦éçå¤çæªæ½ã妿¨çè¡ä¸ºæææ ¹æ¬è¿çº¦çï¼å¹³å°å¯å ³éæ¨çè´¦æ·ï¼ç»æ¢åæ¨æä¾æå¡ã </div> <div> 3.彿¨è¿çº¦çåæ¶å卿¬ºè¯ãå®åãçç¨ä»äººè´¦æ·çç¹å®æ å½¢ææ¨åå¨å±åä»äººäº¤æå®å ¨æè´¦æ·å®å ¨é£é©æ¶ï¼å¹³å°ä¼ä¾ç §æ¨è¡ä¸ºçé£é©ç¨åº¦å¯¹æ¨çå¹³å°è´¦æ·éååæ¶æ¶æ¬¾ãèµéæ¢ä»çå¼ºå¶æªæ½ã </div> <div> 4.å¹³å°å¯å°å¯¹æ¨ä¸è¿°è¿çº¦è¡ä¸ºå¤çæªæ½ä¿¡æ¯ä»¥åå ¶ä»ç»å½å®¶è¡æ¿æå¸æ³æºå ³çææ³å¾æä¹¦ç¡®è®¤çè¿æ³ä¿¡æ¯å¨å¹³å°ä¸äºä»¥å ¬ç¤ºã </div> <div>3ãèµå¿è´£ä»»</div> <div> 1.妿¨çè¡ä¸ºä½¿å¹³å°éåæå¤±ï¼å æ¬èªèº«çç´æ¥ç»æµæå¤±ãåèªæå¤±å坹夿¯ä»çèµå¿éãå解款ãå¾å¸è´¹ãè¯è®¼è´¹çé´æ¥ç»æµæå¤±ï¼ï¼æ¨åºèµå¿å¹³å°çä¸è¿°å ¨é¨æå¤±ã </div> <div> 2.妿¨çè¡ä¸ºä½¿å¹³å°éå第ä¸äººä¸»å¼ æå©ï¼å¹³å°å¯å¨å¯¹ç¬¬ä¸äººæ¿æ éé±ç»ä»çä¹å¡åå°±å ¨é¨æå¤±åæ¨è¿½å¿ã </div> </UserPolicyCell> <UserPolicyCell title="å ãæå¡ç䏿åç»æ¢"> <div> 1ãç¨æ·åæï¼å¨å¹³å°æªåç¨æ·æ¶åæå¡è´¹çæ åµä¸ï¼å¹³å°å¯èªè¡å ¨æå³å®ä»¥ä»»ä½çç± (å æ¬ä½ä¸éäºå¹³å°è®¤ä¸ºç¨æ·å·²è¿åæ¬åè®®çå颿ä¹åç²¾ç¥ï¼æä»¥ä¸ç¬¦åæ¬åè®®çå颿ä¹åç²¾ç¥çæ¹å¼è¡äºï¼æç¨æ·å¨è¶ è¿180å¤©çæ¶é´å æªä»¥ç¨æ·çè´¦å·åå¯ç ç»å½ç½ç«ç) ç»æ¢ç¨æ·çâæå¡âå¯ç ãè´¦æ· (æå ¶ä»»ä½é¨ä»½) æç¨æ·å¯¹âæå¡âç使ç¨ï¼å¹¶å é¤ï¼ä¸åä¿åï¼ç¨æ·å¨ä½¿ç¨âæå¡âä¸æäº¤çä»»ä½èµæãåæ¶å¹³å°å¯èªè¡å ¨æå³å®ï¼å¨ååºéç¥æä¸ååºéç¥çæ åµä¸ï¼éæ¶åæ¢æä¾âæå¡âæå ¶ä»»ä½é¨ä»½ãè´¦å·ç»æ¢åï¼å¹³å°æ²¡æä¹å¡ä¸ºç¨æ·ä¿çåè´¦å·ä¸æä¸ä¹ç¸å ³çä»»ä½ä¿¡æ¯ï¼æè½¬å任使ªæ¾é 读æåéçä¿¡æ¯ç»ç¨æ·æç¬¬ä¸æ¹ãæ¤å¤ï¼ç¨æ·åæï¼å¹³å°ä¸å°±ç»æ¢ç¨æ·æ¥å ¥âæå¡âèå¯¹ç¨æ·æä»»ä½ç¬¬ä¸è æ¿æ ä»»ä½è´£ä»»ï¼ </div> <div> 2ãå¦ç¨æ·åå¹³å°æåºæ³¨é平尿³¨åç¨æ·èº«ä»½æ¶ï¼ç»å¹³å°å®¡æ ¸åæï¼ç±å¹³å°æ³¨é该注åç¨æ·ï¼ç¨æ·å³è§£é¤ä¸å¹³å°çæå¡åè®®å ³ç³»ã使³¨éè¯¥ç¨æ·è´¦å·åï¼å¹³å°ä»ä¿çä¸åæå©ï¼ </div> <div>1ï¼ç¨æ·æ³¨éåï¼å¹³å°ææä¿çè¯¥ç¨æ·çæ³¨åæ°æ®å以åç交æè¡ä¸ºè®°å½ï¼</div> <div> 2ï¼ç¨æ·æ³¨éåï¼å¦ç¨æ·å¨æ³¨éåå¨å¹³å°äº¤æå¹³å°ä¸åå¨è¿æ³è¡ä¸ºæè¿åååçè¡ä¸ºï¼å¹³å°ä»å¯è¡ä½¿æ¬æå¡åè®®æè§å®çæå©ã </div> <div>3ãå¨ä¸åæ åµä¸ï¼å¹³å°å¯ä»¥éè¿æ³¨éç¨æ·çæ¹å¼ç»æ¢æå¡ï¼</div> <div> 1ï¼å¨ç¨æ·è¿åæ¬æå¡åè®®ç¸å ³è§å®æ¶ï¼å¹³å°ææç»æ¢åè¯¥ç¨æ·æä¾æå¡ãå¹³å°å°å¨ä¸ææå¡æ¶éç¥ç¨æ·ãä½å¦è¯¥ç¨æ·å¨è¢«å¹³å°ç»æ¢æä¾æå¡åï¼å䏿¬¡ç´æ¥æé´æ¥æä»¥ä»äººå乿³¨å为平å°ç¨æ·çï¼å¹³å°ææåæ¬¡åæ¹é¢ç»æ¢åè¯¥ç¨æ·æä¾æå¡ï¼ </div> <div> 2ï¼å¦å¹³å°éè¿ç¨æ·æä¾çä¿¡æ¯ä¸ç¨æ·èç³»æ¶ï¼åç°ç¨æ·å¨æ³¨åæ¶å¡«åçææºå·ç ãçµåé®ç®±å·²ä¸åå¨ææ æ³æ¥å¬çµè¯ææ¥æ¶çµåé®ä»¶çï¼ç»å¹³å°ä»¥å ¶å®èç³»æ¹å¼éç¥ç¨æ·æ´æ¹ï¼èç¨æ·å¨ä¸ä¸ªå·¥ä½æ¥å 仿ªè½æä¾æ°çææºå·ç æçµåé®ç®±å°åçï¼å¹³å°ææç»æ¢åè¯¥ç¨æ·æä¾æå¡ï¼ </div> <div> 3ï¼ä¸æ¦å¹³å°åç°ç¨æ·æ³¨åæ°æ®ä¸ä¸»è¦å 容æ¯èåçï¼å¹³å°ææéæ¶ç»æ¢åè¯¥ç¨æ·æä¾æå¡ï¼ </div> <div> 4ï¼ä¸æ¦å¹³å°åç°ç¨æ·çç¨ä»äººè´¦æ·ãåå¸è¿ç¦ä¿¡æ¯ã欺è¯ãå®åãæ°ä¹±å¸åºç§©åºãéå䏿£å½ææ®µçå©çè¡ä¸ºçï¼å¹³å°ææéæ¶ç»æ¢åè¯¥ç¨æ·æä¾æå¡ï¼ </div> <div> 5ï¼å¹³å°åºäºåççç±ç¸ä¿¡ç¨æ·çè¡ä¸ºå¯è½ä¼ä½¿å¹³å°åå¹³å°ç¨æ·çç¸å ³æ¹åç严éæå®³æäº§çæ³å¾è´£ä»»çï¼å¹³å°ææéæ¶ç»æ¢åè¯¥ç¨æ·æä¾æå¡ï¼ </div> <div>6ï¼å¯¹äºéçå ¶ä»äºåä¸äºèç½æå¡çç¨æ·ï¼å¹³å°ä¸ç»åç°ï¼ææç«å³ç»æ¢æå¡ï¼</div> <div>7ï¼æ¬æå¡åè®®ç»æ¢ææ´æ°æ¶ï¼ç¨æ·æç¤ºä¸æ¿æ¥åæ°çæå¡åè®®çï¼</div> <div>8ï¼å ¶å®å¹³å°è®¤ä¸ºéç»æ¢æå¡çæ åµã</div> <div> 4ãæå¡ä¸æãç»æ¢ä¹åç¨æ·äº¤æè¡ä¸ºçå¤çå ç¨æ·è¿åæ³å¾æ³è§æè è¿åæå¡åè®®è§å®èè´ä½¿å¹³å°ä¸æãç»æ¢å¯¹ç¨æ·æå¡çï¼å¯¹äºæå¡ä¸æãç»æ¢ä¹åç¨æ·äº¤æè¡ä¸ºä¾ä¸åååå¤çï¼ </div> <div> 1ï¼æå¡ä¸æãç»æ¢ä¹åï¼ç¨æ·å·²ç»ä¸ä¼ è³å¹³å°ç产åå°æªäº¤ææå°æªäº¤æå®æçï¼å¹³å°ææå¨ä¸æãç»æ¢æå¡çåæ¶å 餿¤é¡¹äº§åçç¸å ³ä¿¡æ¯ï¼ </div> <div> 2ï¼æå¡ä¸æãç»æ¢ä¹åï¼ç¨æ·å·²ç»å°±å ¶å®ç¨æ·åºå®çå ·ä½äº§åä½åºè¦çº¦ï¼ä½äº¤æå°æªç»æï¼å¹³å°ææå¨ä¸ææç»æ¢æå¡çåæ¶å é¤è¯¥ç¨æ·çç¸å ³è¦çº¦ï¼ </div> <div> 3ï¼æå¡ä¸æãç»æ¢ä¹åï¼ç¨æ·å·²ç»ä¸å¦ä¸ç¨æ·å°±å ·ä½äº¤æè¾¾æä¸è´ï¼å¹³å°å¯ä»¥ä¸å é¤è¯¥é¡¹äº¤æï¼ä½å¹³å°ææå¨ä¸æãç»æ¢æå¡çåæ¶å°ç¨æ·è¢«ä¸ææç»æ¢æå¡çæ åµéç¥ç¨æ·ç交æå¯¹æ¹ã </div> </UserPolicyCell> <UserPolicyCell title="ä¸ãéç§ææ¿ç"> <div>1ãéç¨èå´ï¼</div> <div>1ï¼å¨ç¨æ·æ³¨åå¹³å°è´¦æ·æ¶ï¼ç¨æ·æ ¹æ®å¹³å°è¦æ±æä¾ç个人注åä¿¡æ¯ï¼</div> <div> 2ï¼å¨ç¨æ·ä½¿ç¨å¹³å°æå¡ï¼åå 平尿´»å¨ï¼æè®¿é®å¹³å°ç½ç«æ¶ï¼å¹³å°èªå¨æ¥æ¶å¹¶è®°å½çç¨æ·æµè§å¨ä¸çæå¡å¨æ°å¼ï¼å æ¬ä½ä¸éäºIPå°åçæ°æ®åç¨æ·è¦æ±åç¨çç½é¡µè®°å½ï¼ </div> <div> 3ï¼å¹³å°æ¶éå°çç¨æ·å¨å¹³å°è¿è¡äº¤æçæå ³æ°æ®ï¼å æ¬ä½ä¸éäºåºä»·ãè´ä¹°ã产åç»å½ãä¿¡ç¨è¯ä»·åè¿è§è®°å½ï¼ </div> <div>4ï¼å¹³å°éè¿åæ³éå¾ä»åä¸ä¼ä¼´å¤åå¾çç¨æ·ä¸ªäººæ°æ®ã</div> <div> 5ï¼æä»¬æ¶éæ°æ®æ¯æ ¹æ®æ¨ä¸æä»¬çäºå¨åæ¨æååºçéæ©ï¼å æ¬æ¨çéç§è®¾ç½®ä»¥åæ¨ä½¿ç¨ç产åååè½ãæä»¬æ¶éçæ°æ®å¯è½å æ¬SDK/API/JS代ç çæ¬ãæµè§å¨ãäºèç½æå¡æä¾åãIPå°åãå¹³å°ãæ¶é´æ³ãåºç¨æ è¯ç¬¦ãåºç¨ç¨åºçæ¬ãåºç¨å忏 éãç¬ç«è®¾å¤æ è¯ç¬¦ãiOSå¹¿åæ è¯ç¬¦ï¼IDFA)ãå®å广å主æ è¯ç¬¦ãç½å¡ï¼MACï¼å°åãå½é ç§»å¨è®¾å¤è¯å«ç ï¼IMEIï¼ã设å¤åå·ãç»ç«¯å¶é ååãç»ç«¯è®¾å¤æä½ç³»ç»çæ¬ãä¼è¯å¯å¨/忢æ¶é´ãè¯è¨æå¨å°ãæ¶åºåç½ç»ç¶æï¼WiFiçï¼ã硬çãCPUåçµæ± ä½¿ç¨æ åµçã </div> <div>2ãä¿¡æ¯ä½¿ç¨ï¼</div> <div>1ï¼å¹³å°ä¸ä¼åä»»ä½äººåºå®æåºåç¨æ·ç个人信æ¯ï¼é¤éäºå å¾å°ç¨æ·å¾è®¸å¯ã</div> <div> 2ï¼å¹³å°äº¦ä¸å 许任ä½ç¬¬ä¸æ¹ä»¥ä»»ä½ææ®µæ¶éãç¼è¾ãåºå®æè æ å¿ä¼ æç¨æ·ç个人信æ¯ãä»»ä½ç¨æ·å¦ä»äºä¸è¿°æ´»å¨ï¼ä¸ç»åç°ï¼å¹³å°ææç«å³ç»æ¢ä¸è¯¥ç¨æ·çæå¡åè®®ï¼æ¥å°å ¶è´¦å·ã </div> <div> 3ï¼ä¸ºæå¡ç¨æ·çç®çï¼å¹³å°å¯è½éè¿ä½¿ç¨ç¨æ·ç个人信æ¯ï¼åç¨æ·æä¾æå¡åäº§åæ¹è¿ï¼å æ¬ä½ä¸éäºåç¨æ·ååºäº§ååæå¡ä¿¡æ¯ï¼æè ä¸å¹³å°åä½ä¼ä¼´å ±äº«ä¿¡æ¯ä»¥ä¾¿ä»ä»¬åç¨æ·åéæå ³å ¶äº§ååæå¡çä¿¡æ¯ï¼åè éè¦ç¨æ·çäºå åæï¼ãä¾å¦ï¼æä»¬èè¯·æ¥æä¾æ°æ®åææå¡çå ¬å¸å¯è½éè¦ééå访é®ä¸ªäººæ°æ®ä»¥è¿è¡æ°æ®ç»è®¡ååæãå¨è¿ç§æ åµä¸ï¼è¿äºå ¬å¸å¿ é¡»éµå®æä»¬çæ°æ®éç§åå®å ¨è¦æ±ã </div> <div> 4ï¼æä»¬å·²å¨ä¸æä»ç»äºå¤çä¸ªäººæ°æ®çç®çãæä»¬å¤çä¸ªäººæ°æ®çæ³å¾åºç¡å æ¬ï¼ä¸ºå±¥è¡ä¸æ¨ä¹é´çååï¼ä¾å¦ï¼ä¸ºæ¨æä¾æ¨æè¯·æ±çæå¡ã对æ¨è¿è¡è¯å«å认è¯ï¼ä»¥ä¾¿æ¨å¯ä»¥ä½¿ç¨ç½ç«ï¼ï¼ä¸ºéµå®æ³å¾è¦æ±ï¼ä¾å¦ï¼ä¸ºéµå®éç¨çä¼è®¡è§åï¼å±¥è¡æ§æ³é¨é¨å¼ºå¶æ«é²çè¦æ±ï¼ï¼ä¸ºä¿æ¤æä»¬çæ£å½å©çï¼ä¾å¦ï¼ç®¡çæä»¬ä¸æ¨çå ³ç³»ï¼ä¸ºç¡®ä¿æä»¬æå¡çå®å ¨æ§ï¼ä¸æ¨æ²éæä»¬ç产ååæå¡ï¼ï¼ä»¥ååºäºæä»¬å®¢æ·çåæï¼ä¾å¦ï¼ææ¾cookiesï¼ä¸ºå¹¿åå®£ä¼ ä¹ç®çä¸ç¬¬ä¸æ¹å ±äº«æ¨çä¿¡æ¯ï¼ãå¨æäºæ åµä¸ï¼æ¨å¯è½éè¦ä¸ºæä»¬æä¾ä¸ªäººæ°æ®ä»¥è¿è¡ä¸è¿°çå¤çï¼ä»¥ä¾¿æä»¬è½å¤ä¸ºæ¨æä¾æä»¬çå ¨é¨æå¡ï¼å¹¶æ¹ä¾¿æ¨ä½¿ç¨æä»¬ç½ç«çå ¨é¨åè½ã </div> <div> 5ï¼ä¸ªäººæ°æ®çè·¨å¢ä¼ è¾ãé对欧çæåå½ç¨æ·ï¼æä»¬çä¸å¡å¯è½éè¦æä»¬è½¬ç§»æ¨çä¸ªäººæ°æ®è³æ¬§æ´²ç»æµåºä»¥å¤çå½å®¶ï¼ä¸å½ï¼ãæä»¬ä¼éåéå½çæªæ½ä»¥ç¡®ä¿æ¨ä¸ªäººæ°æ®çæ¥æ¶è å±¥è¡ä¿å¯ä¹å¡ï¼å¹¶ç¡®ä¿å¦æ åååæ¡æ¬¾çæªæ½çæ§è¡ãæ¨å¯ä»¥éè¿èç³»æä»¬ç帮å©ä¸å¿è·å¾è¿äºæ¡æ¬¾ã </div> <div> 6ï¼é对欧çæåå½ç¨æ·ï¼æ ¹æ®éç¨æ³å¾ï¼æ¨ææå对æè¦æ±éå¶å¯¹æ¨ä¸ªäººæ°æ®çå¤çï¼å¹¶è¦æ±æ¨æ¬äººæ°æ®ç访é®ãæ ¡æ£ãå é¤å坿ºå¸¦æãå¨å¯¹æ¨çä¿¡æ¯çä½¿ç¨æ¯åºäºæ¨çåæçæ åµä¸ï¼æ¨ææå¨ä»»ä½æ¶åæ¤å该åæï¼ä½åæçæ¤åä¸å½±åæ¤åååºäºåæè¿è¡çæ°æ®å¤ççåæ³æ§ãæ¨å¯ä»¥éè¿å®¢æçµè¯16505012333åæä»¬æäº¤æ¨çè¦æ±ã妿æ¨åç°æ¨çä¿¡æ¯åçååæä¸åç¡®ï¼è¯·å°è¿äºååéç¥æä»¬ä»¥ä¾¿æä»¬çè®°å½å¯ä»¥è¢«æ´æ°ææ´æ£ã妿æ¨è®¤ä¸ºæä»¬å¯¹æ¨ä¸ªäººæ°æ®çå¤çè¿åäºéç¨æ³å¾ï¼æ¨å¯ä»¥åçç®¡æºææè¯ãæä»¬å¯¹æ¨ä¸ªäººæ°æ®çä¿çæ¶é´è§åæ¨æä¾æå¡æäº§åçéè¦èå®ï¼ææ ¹æ®éç¨æ³å¾å¦ç¨æ³åä¼è®¡æ³çè¦æ±æè®¸å¯ç¡®å®ã </div> <div>3ãä¿¡æ¯æ«é²ï¼ç¨æ·ç个人信æ¯å°å¨ä¸è¿°æ åµä¸é¨åæå ¨é¨è¢«æ«é²ï¼</div> <div>1ï¼ç»ç¨æ·åæï¼åç¬¬ä¸æ¹æ«é²ï¼</div> <div> 2ï¼å¦ç¨æ·æ¯ç¬¦åèµæ ¼çç¥è¯äº§ææè¯äººå¹¶å·²æèµ·æè¯ï¼åºè¢«æè¯äººè¦æ±ï¼å被æè¯äººæ«é²ï¼ä»¥ä¾¿åæ¹å¤çå¯è½çæå©çº çº·ï¼ </div> <div> 3ï¼æ ¹æ®æ³å¾çæå ³è§å®ï¼æè è¡æ¿æå¸æ³æºæçè¦æ±ï¼åç¬¬ä¸æ¹æè è¡æ¿ã叿³æºææ«é²ï¼ </div> <div>4ï¼å¦æç¨æ·åºç°è¿åä¸å½æå ³æ³å¾æè ç½ç«æ¿ççæ åµï¼éè¦åç¬¬ä¸æ¹æ«é²ï¼</div> <div>5ï¼ä¸ºæä¾æ¨æè¦æ±ç产ååæå¡ï¼èå¿ é¡»åç¬¬ä¸æ¹åäº«ç¨æ·ç个人信æ¯ï¼</div> <div> 6ï¼å¨å¹³å°ä¸å建çæä¸äº¤æä¸ï¼å¦äº¤æä»»ä½ä¸æ¹å±¥è¡æé¨åå±¥è¡äºäº¤æä¹å¡å¹¶æåºä¿¡æ¯æ«é²è¯·æ±çï¼å¹³å°æå ¨æå¯ä»¥å³å®åè¯¥ç¨æ·æä¾å ¶äº¤æå¯¹æ¹çèç»æ¹å¼çå¿ è¦ä¿¡æ¯ï¼ä»¥ä¿æäº¤æç宿æçº 纷çè§£å³ï¼ </div> <div>7ï¼å ¶å®å¹³å°æ ¹æ®æ³å¾æè ç½ç«æ¿ç认为åéçæ«é²ã</div> <div>4ãä¿¡æ¯å®å ¨ï¼</div> <div>1ï¼å¹³å°åå¹³å°è´¦æ·åæå®å ¨ä¿æ¤åè½ï¼è¯·å¦¥åä¿ç®¡ç¨æ·çè´¦æ·åå¯ç ä¿¡æ¯ï¼</div> <div> 2ï¼å¨ä½¿ç¨å¹³å°æå¡è¿è¡ç½ä¸äº¤ææ¶ï¼ç¨æ·ä¸å¯é¿å çè¦å交æå¯¹æ¹ææ½å¨ç交æå¯¹æ¹æä¾èªå·±ç个人信æ¯ï¼å¦èç»æ¹å¼æè 鮿¿å°åãè¯·ç¨æ·å¦¥åä¿æ¤èªå·±ç个人信æ¯ï¼ä» å¨å¿ è¦çæ å½¢ä¸åä»äººæä¾ï¼ </div> <div> 3ï¼å¦æç¨æ·åç°èªå·±çä¸ªäººä¿¡æ¯æ³å¯ï¼å°¤å ¶æ¯å¹³å°è´¦æ·åå¯ç åçæ³é²ï¼è¯·ç¨æ·ç«å³èç»å¹³å°å®¢æï¼ä»¥ä¾¿å¹³å°éåç¸åºæªæ½ã </div> </UserPolicyCell> <UserPolicyCell title="å «ã责任èå´å责任éå¶"> <div> 1ãæ¨æç¡®çè§£ååæï¼å¹³å°ä¸å¯¹å ä¸è¿°ä»»ä¸æ åµèåçç任使害èµå¿æ¿æ 责任ï¼å æ¬ä½ä¸éäºå©æ¶¦ãåèªã使ç¨ãæ°æ®çæ¹é¢çæå¤±æå ¶ä»æ å½¢æå¤±çæå®³èµå¿ (æ è®ºå¹³å°æ¯å¦å·²è¢«åç¥è¯¥çæå®³èµå¿çå¯è½æ§)ï¼ </div> <div>1ï¼ä½¿ç¨ææªè½ä½¿ç¨âæå¡ï¼</div> <div>2ï¼ç¬¬ä¸æ¹æªç»æ¹åçæ¥å ¥æç¬¬ä¸æ¹æ´æ¹ç¨æ·çä¼ è¾æ°æ®ææ°æ®ï¼</div> <div> 3ï¼ç¬¬ä¸æ¹å¯¹âæå¡âç声ææå ³äºâæå¡âçè¡ä¸ºï¼æéå å¹³å°çåå èå¼èµ·çä¸âæå¡âæå ³çä»»ä½å ¶å®äºå®ï¼å æ¬ç忽ã </div> <div> 2ãå¹³å°ä¼å°½ä¸ååªå使æ¨å¨ä½¿ç¨å¹³å°çè¿ç¨ä¸å¾å°ä¹è¶£ãéæ¾çæ¯ï¼å¹³å°ä¸è½éæ¶é¢è§å°ä»»ä½ææ¯ä¸çé®é¢æå ¶ä»å°é¾ã该çå°é¾å¯è½ä¼å¯¼è´æ°æ®æå¤±æå ¶ä»æå¡ä¸æã为æ¤ï¼æ¨æç¡®çè§£ååæï¼æ¨ä½¿ç¨âæå¡âçé£é©ç±æ¨èªè¡æ¿æ ï¼ä¸âæå¡â以âæç°ç¶âåâæå¯å¾å° âçç¶ææä¾ãå¹³å°æç¡®å£°æä¸ä½ä»»ä½ç§ç±»çæç¤ºææç¤ºçä¿è¯ï¼å æ¬ä½ä¸éäºå ³äºééæ§ãéç¨äºæä¸ç¹å®ç¨éåæ ä¾µæè¡ä¸ºçæ¹é¢çä¿è¯ãå¹³å°å¯¹ä¸è¿°å 容ä¸ä½ä¿è¯ï¼ </div> <div>1ï¼âæå¡âä¼ç¬¦åæ¨çè¦æ±ï¼</div> <div>2ï¼âæå¡âä¸ä¼ä¸æï¼ä¸éæ¶ãå®å ¨åä¸å¸¦ä»»ä½é误ï¼</div> <div>3ï¼éè¿ä½¿ç¨âæå¡âèå¯è½è·åçç»æå°æ¯åç¡®æå¯ä¿¡èµçï¼</div> <div> 4ï¼æ¨éè¿âæå¡âèè´ä¹°æè·åçä»»ä½äº§åãæå¡ãèµææå ¶ä»ææçè´¨éå°ç¬¦åæ¨ç颿ãéè¿ä½¿ç¨âæå¡âèä¸è½½æä»¥å ¶ä»å½¢å¼è·åä»»ä½æææ¯ç±æ¨èªè¡å ¨æå³å®è¿è¡çï¼ä¸ä¸æ¤æå ³çé£é©ç±æ¨èªè¡æ¿æ ï¼å¯¹äºå æ¨ä¸è½½ä»»ä½è¯¥çææèåççæ¨ççµèç³»ç»çä»»ä½ææ¯æä»»ä½æ°æ®æå¤±ï¼æ¨å°èªè¡æ¿æ è´£ä»»ãæ¨ä»å¹³å°æéè¿æä»âæå¡âè·åçä»»ä½å£å¤´æä¹¦é¢æè§æèµæï¼åä¸äº§çæªå¨æ¬åè®®å æç¡®è½½æçä»»ä½ä¿è¯è´£ä»»ã </div> <div> 3ãä¸è®ºå¨ä½ç§æ åµä¸ï¼å¹³å°åä¸å¯¹ç±äºä¿¡æ¯ç½ç»æ£å¸¸ç设å¤ç»´æ¤ï¼ä¿¡æ¯ç½ç»è¿æ¥æ éï¼çµèãé讯æå ¶ä»ç³»ç»çæ éï¼çµåæ éï¼ç½¢å·¥ï¼å³å¨äºè®®ï¼æ´ä¹±ï¼èµ·ä¹ï¼éªä¹±ï¼ç产åæçäº§èµæä¸è¶³ï¼ç«ç¾ï¼æ´ªæ°´ï¼é£æ´ï¼çç¸ï¼æäºï¼æ¿åºè¡ä¸ºï¼å¸æ³è¡æ¿æºå ³çå½ä»¤æç¬¬ä¸æ¹çä¸ä½ä¸ºèé æçä¸è½æå¡æå»¶è¿æå¡æ¿æ 责任ã </div> <div> 4ãå¹³å°ä» 忍æä¾æ¬å议约å®ä¹æå¡ï¼æ¨äºè§£å¹³å°ä¸çä¿¡æ¯ç³»ç¨æ·èªè¡åå¸ï¼ä¸å¯è½åå¨é£é©åççµãå¹³å°å°éè¿ä¾ç §æ³å¾è§å®å»ºç«ç¸å ³æ£æ¥çæ§å¶åº¦å°½å¯è½ä¿éæ¨å¨å¹³å°ä¸çåæ³æçåè¯å¥½ä½éªãåæ¶ï¼é´äºå¹³å°å ·å¤å卿µ·éä¿¡æ¯åä¿¡æ¯ç½ç»ç¯å¢ä¸ä¿¡æ¯ä¸å®ç©ç¸å离çç¹ç¹ï¼å¹³å°æ æ³éä¸å®¡æ¥äº§åå/ææå¡çä¿¡æ¯ï¼æ æ³éä¸å®¡æ¥äº¤æææ¶åç产åå/ææå¡çè´¨éãå®å ¨ä»¥ååæ³æ§ãç宿§ãåç¡®æ§ï¼å¯¹æ¤æ¨åºè°¨æ 夿ã </div> <div> 5ãæ¨ç解并åæï¼å¨äºè®®è°å¤æå¡ä¸ï¼å¹³å°ç客æå¹¶éä¸ä¸äººå£«ï¼ä» è½ä»¥æ®é人ç认ç¥å¯¹ç¨æ·æäº¤çåè¯è¿è¡å¤æï¼å¹³å°ä¸ä¿è¯äºè®®è°å¤å³å®ä¸å®ç¬¦åæ¨çææï¼é¤å卿 ææé大è¿å¤±å¤ï¼å¹³å°å¯¹äºè®®è°å¤å³å®å è´£ã </div> </UserPolicyCell> <UserPolicyCell title="ä¹ãæ¿çä¿®æ¹ï¼å¹³å°ä¿çå¯¹æ¬æ¿çä½åºä¸æ¶ä¿®æ¹çæå©ã"></UserPolicyCell> <UserPolicyCell title="åãåæ ãç¥è¯äº§æçä¿æ¤"> <div> 1ãå¹³å°ä¸ææå 容ï¼å æ¬ä½ä¸éäºèä½ãå¾çãæ¡£æ¡ãèµè®¯ãèµæãç½ç«æ¶æãç½ç«ç»é¢ç宿ãç½é¡µè®¾è®¡ï¼åç±å¹³å°ä¾æ³æ¥æå ¶ç¥è¯äº§æï¼å æ¬ä½ä¸éäºåæ æãä¸å©æãè使ãåä¸ç§å¯çã </div> <div> 2ãéç»å¹³å°ä¹¦é¢åæï¼ä»»ä½äººä¸å¾æ èªä½¿ç¨ãä¿®æ¹ãå¤å¶ãå ¬å¼ä¼ æãæ¹åãæ£å¸ãåè¡æå ¬å¼å表平å°ç½ç«ç¨åºæå 容ã </div> <div>3ãå°éç¥è¯äº§ææ¯æ¨åºå°½çä¹å¡ï¼å¦æè¿åï¼æ¨åºæ¿æ æå®³èµå¿è´£ä»»ã</div> </UserPolicyCell> <UserPolicyCell title="åä¸ãæ³å¾éç¨ã管è¾åå ¶ä»"> <div> 1ãæ¬åè®®ä¹æåãè§£éãåæ´ãæ§è¡ä¸äºè®®è§£å³åéç¨ä¸å人æ°å ±åå½å¤§éå°åºæ³å¾ï¼å¦æ ç¸å ³æ³å¾è§å®çï¼ååºåç §éç¨å½é å䏿¯ä¾åï¼æï¼è¡ä¸æ¯ä¾ï¼ </div> <div> 2ãæ¨ä¸å¹³å°ä» 为ç¬ç«è®¢çº¦äººå ³ç³»ãæ¬åè®®æ æç»ææå设任ä½ä»£çãåä¼ãåè¥ãéä½£ä¸è¢«éä½£æç¹æ§ææä¸è¢«ææå ³ç³»ï¼ </div> <div> 3ãæ¨åæå¹³å°å ç»è¥ä¸å¡éè¦ææå°æ¬å议项ä¸çæåä¹å¡å°±é¨åæå ¨é¨è¿è¡è½¬è®©ï¼èæ é¡»åéç¥äºæ¨å¹¶å徿¨çåæï¼ </div> <div> 4ãå æ¬åè®®æå¹³å°æå¡æå¼èµ·æä¸å ¶æå ³çä»»ä½äºè®®åºåå¹³å°ç»è¥è æå¨å°äººæ°æ³é¢æèµ·è¯è®¼ï¼ </div> <div> 5ãæ¬åè®®å代æ¨åå¹³å°å åå°±ç¸åäºé¡¹è®¢ç«çä»»ä½ä¹¦é¢æå£å¤´åè®®ãåè¥æ¬åè®®ä»»ä½æ¡æ¬¾è¢«è£å®ä¸ºæ ææä¸å¯å¼ºå¶æ§è¡ï¼è¯¥é¡¹æ¡æ¬¾åºè¢«æ¤éï¼èå ¶ä½æ¡æ¬¾åºäºéµå®åæ§è¡ãæ¡æ¬¾æ é¢ä» 为æ¹ä¾¿åé è设ï¼å¹¶ä¸ä»¥ä»»ä½æ¹å¼çå®ãéå¶ãè§£éææè¿°è¯¥æ¡æ¬¾çèå´æé度ã平尿ªå°±æ¨æå ¶ä»äººå£«çæé¡¹è¿çº¦è¡ä¸ºéåè¡å¨ï¼å¹¶ä¸è¡¨æå¹³å°æ¤å就任ä½ç»§åæç±»ä¼¼çè¿çº¦äºä»¶éåå¨çæå©ã </div> </UserPolicyCell> </div> </scroll-view> </PageLayout> </template> <script setup lang="ts"> import { PageLayout } from '@/components'; import { ScrollView } from '@tarojs/components'; defineOptions({ name: 'mineUserPolicy', }); const UserPolicyCell = defineComponent({ name: 'UserPolicyCell', props: { title: { type: String, }, content: { type: String, }, }, setup(props, { slots }) { return () => { return h('div', { class: 'userPolicy-cell-wrapper' }, [ h('div', { class: 'userPolicy-cell-title' }, [props.title]), h('div', { class: 'userPolicy-cell-content' }, slots.default?.()), ]); }; }, }); </script> <style lang="scss"> @import '@/styles/common.scss'; .userPolicy-page-wrapper { background-color: #fafafa; .userPolicy-page-scrollview { // flex: 1; height: 100%; box-sizing: border-box; } .userPolicy-page-scrollview-content { padding: 42px; .userPolicy-page-title { margin-bottom: 40px; } } .userPolicy-cell-wrapper { margin-bottom: 32px; .userPolicy-cell-title { color: #292929; font-size: 30px; margin-bottom: 22px; font-weight: 500; } .userPolicy-cell-content { div { font-size: 24px; line-height: 40px; text-indent: 28px; color: #888888; } } } } </style> apps/cMiniApp/src/subpackages/login/privacyPolicy/index.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/login/privacyPolicy/privacyPolicy.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,172 @@ <template> <PageLayout title="éç§æ¿ç" :needAuth="false" class="userPolicy-page-wrapper"> <scroll-view style="height: 100%" :scroll-y="true"> <div class="userPolicy-page-scrollview-content"> <div class="userPolicy-page-title">818人åèµæºäº§ä¸é¾å¹³å°ç¨æ·æå¡éç§æ¿ç</div> <UserPolicyCell title="1ãéç¨èå´ï¼"> <div> 1ï¼å¨ç¨æ·æ³¨å818人åèµæºäº§ä¸é¾å¹³å°è´¦æ·æ¶ï¼ä»¥ä¸ç®ç§°âå¹³å°âï¼ï¼ç¨æ·æ ¹æ®å¹³å°è¦æ±æä¾çç¸å ³ä¸ªäººä¿¡æ¯ï¼ </div> <div> 2ï¼å¨ç¨æ·ä½¿ç¨å¹³å°æå¡ï¼åå 平尿´»å¨ï¼æè®¿é®å¹³å°ç½ç«æ¶ï¼å¹³å°å°èªå¨æ¥æ¶å¹¶è®°å½çç¨æ·æµè§å¨ä¸çæå¡å¨æ°å¼ï¼å æ¬ä½ä¸éäºIPå°åçæ°æ®åç¨æ·è¦æ±åç¨çç½é¡µ/客æ·ç«¯è®°å½ï¼ </div> <div> 3ï¼å¹³å°æ¶éå°çç¨æ·å¨å¹³å°è¿è¡äº¤æçæå ³æ°æ®ï¼å æ¬ä½ä¸éäºåºä»·ãè´ä¹°ã产åç»å½ãä¿¡ç¨è¯ä»·åè¿è§è®°å½ï¼ </div> <div>4ï¼å¹³å°éè¿åæ³éå¾ä»åä¸ä¼ä¼´å¤åå¾çç¨æ·ä¸ªäººæ°æ®ã</div> <div> 5ï¼æä»¬æ¶éæ°æ®æ¯æ ¹æ®æ¨ä¸æä»¬çäºå¨åæ¨æååºçéæ©ï¼å æ¬æ¨çéç§è®¾ç½®ä»¥åæ¨ä½¿ç¨ç产åååè½ãæä»¬æ¶éçæ°æ®å¯è½å æ¬SDK/API/JS代ç çæ¬ãæµè§å¨ãäºèç½æå¡æä¾åãIPå°åãå¹³å°ãæ¶é´æ³ãåºç¨æ è¯ç¬¦ãåºç¨ç¨åºçæ¬ãåºç¨å忏 éãç¬ç«è®¾å¤æ è¯ç¬¦ãiOSå¹¿åæ è¯ç¬¦ï¼IDFA)ãå®å广å主æ è¯ç¬¦ãç½å¡ï¼MACï¼å°åãå½é ç§»å¨è®¾å¤è¯å«ç ï¼IMEIï¼ã设å¤åå·ãç»ç«¯å¶é ååãç»ç«¯è®¾å¤æä½ç³»ç»çæ¬ãä¼è¯å¯å¨/忢æ¶é´ãè¯è¨æå¨å°ãæ¶åºåç½ç»ç¶æï¼WiFiçï¼çã </div> </UserPolicyCell> <UserPolicyCell title="2ãä¿¡æ¯ä½¿ç¨ï¼"> <div>1ï¼å¹³å°ä¸ä¼åä»»ä½äººåºå®æåºåç¨æ·ç个人信æ¯ï¼é¤éäºå å¾å°ç¨æ·å¾è®¸å¯ã</div> <div> 2ï¼å¹³å°äº¦ä¸å 许任ä½ç¬¬ä¸æ¹ä»¥ä»»ä½ææ®µæ¶éãç¼è¾ãåºå®æè æ å¿ä¼ æç¨æ·ç个人信æ¯ãä»»ä½ç¨æ·å¦ä»äºä¸è¿°æ´»å¨ï¼ä¸ç»åç°ï¼å¹³å°ææç«å³ç»æ¢ä¸è¯¥ç¨æ·çæå¡åè®®ï¼æ¥å°å ¶è´¦å·ã </div> <div> 3ï¼ä¸ºæå¡ç¨æ·çç®çï¼å¹³å°å¯è½éè¿ä½¿ç¨ç¨æ·ç个人信æ¯ï¼åç¨æ·æä¾æå¡åäº§åæ¹è¿ï¼å æ¬ä½ä¸éäºåç¨æ·ååºäº§ååæå¡ä¿¡æ¯ï¼æè ä¸å¹³å°åä½ä¼ä¼´å ±äº«ä¿¡æ¯ä»¥ä¾¿ä»ä»¬åç¨æ·åéæå ³å ¶äº§ååæå¡çä¿¡æ¯ï¼åè éè¦ç¨æ·çäºå åæï¼ãä¾å¦ï¼æä»¬èè¯·æ¥æä¾æ°æ®åææå¡çå ¬å¸å¯è½éè¦ééå访é®ä¸ªäººæ°æ®ä»¥è¿è¡æ°æ®ç»è®¡ååæãå¨è¿ç§æ åµä¸ï¼è¿äºå ¬å¸å¿ é¡»éµå®æä»¬çæ°æ®éç§åå®å ¨è¦æ±ã </div> <div> 4ï¼æä»¬å·²å¨ä¸æä»ç»äºå¤çä¸ªäººæ°æ®çç®çãæä»¬å¤çä¸ªäººæ°æ®çæ³å¾åºç¡å æ¬ï¼ä¸ºå±¥è¡ä¸æ¨ä¹é´çååï¼ä¾å¦ï¼ä¸ºæ¨æä¾æ¨æè¯·æ±çæå¡ã对æ¨è¿è¡è¯å«å认è¯ï¼ä»¥ä¾¿æ¨å¯ä»¥ä½¿ç¨ç½ç«ï¼ï¼ä¸ºéµå®æ³å¾è¦æ±ï¼ä¾å¦ï¼ä¸ºéµå®éç¨çä¼è®¡è§åï¼å±¥è¡æ§æ³é¨é¨å¼ºå¶æ«é²çè¦æ±ï¼ï¼ä¸ºä¿æ¤æä»¬çæ£å½å©çï¼ä¾å¦ï¼ç®¡çæä»¬ä¸æ¨çå ³ç³»ï¼ä¸ºç¡®ä¿æä»¬æå¡çå®å ¨æ§ï¼ä¸æ¨æ²éæä»¬ç产ååæå¡ï¼ï¼ä»¥ååºäºæä»¬å®¢æ·çåæï¼ä¾å¦ï¼ææ¾cookiesï¼ä¸ºå¹¿åå®£ä¼ ä¹ç®çä¸ç¬¬ä¸æ¹å ±äº«æ¨çä¿¡æ¯ï¼ãå¨æäºæ åµä¸ï¼æ¨å¯è½éè¦ä¸ºæä»¬æä¾ä¸ªäººæ°æ®ä»¥è¿è¡ä¸è¿°çå¤çï¼ä»¥ä¾¿æä»¬è½å¤ä¸ºæ¨æä¾æä»¬çå ¨é¨æå¡ï¼å¹¶æ¹ä¾¿æ¨ä½¿ç¨æä»¬ç½ç«çå ¨é¨åè½ã </div> <div> 5ï¼ä¸ªäººæ°æ®çè·¨å¢ä¼ è¾ãé对欧çæåå½ç¨æ·ï¼æä»¬çä¸å¡å¯è½éè¦æä»¬è½¬ç§»æ¨çä¸ªäººæ°æ®è³æ¬§æ´²ç»æµåºä»¥å¤çå½å®¶ï¼ä¸å½ï¼ãæä»¬ä¼éåéå½çæªæ½ä»¥ç¡®ä¿æ¨ä¸ªäººæ°æ®çæ¥æ¶è å±¥è¡ä¿å¯ä¹å¡ï¼å¹¶ç¡®ä¿å¦æ åååæ¡æ¬¾çæªæ½çæ§è¡ãæ¨å¯ä»¥éè¿èç³»æä»¬ç帮å©ä¸å¿è·å¾è¿äºæ¡æ¬¾ã </div> <div> 6ï¼é对欧çæåå½ç¨æ·ï¼æ ¹æ®éç¨æ³å¾ï¼æ¨ææå对æè¦æ±éå¶å¯¹æ¨ä¸ªäººæ°æ®çå¤çï¼å¹¶è¦æ±æ¨æ¬äººæ°æ®ç访é®ãæ ¡æ£ãå é¤å坿ºå¸¦æãå¨å¯¹æ¨çä¿¡æ¯çä½¿ç¨æ¯åºäºæ¨çåæçæ åµä¸ï¼æ¨ææå¨ä»»ä½æ¶åæ¤å该åæï¼ä½åæçæ¤åä¸å½±åæ¤åååºäºåæè¿è¡çæ°æ®å¤ççåæ³æ§ãæ¨å¯ä»¥éè¿å®¢æçµè¯ï¼16505012333åæä»¬æäº¤æ¨çè¦æ±ã妿æ¨åç°æ¨çä¿¡æ¯åçååæä¸åç¡®ï¼è¯·å°è¿äºååéç¥æä»¬ä»¥ä¾¿æä»¬çè®°å½å¯ä»¥è¢«æ´æ°ææ´æ£ã妿æ¨è®¤ä¸ºæä»¬å¯¹æ¨ä¸ªäººæ°æ®çå¤çè¿åäºéç¨æ³å¾ï¼æ¨å¯ä»¥åçç®¡æºææè¯ãæä»¬å¯¹æ¨ä¸ªäººæ°æ®çä¿çæ¶é´è§åæ¨æä¾æå¡æäº§åçéè¦èå®ï¼ææ ¹æ®éç¨æ³å¾å¦ç¨æ³åä¼è®¡æ³çè¦æ±æè®¸å¯ç¡®å®ã </div> </UserPolicyCell> <UserPolicyCell title="3ãä¿¡æ¯æ«é²ï¼ç¨æ·ç个人信æ¯å°å¨ä¸è¿°æ åµä¸é¨åæå ¨é¨è¢«æ«é²ï¼"> <div>1ï¼ç»ç¨æ·åæï¼åç¬¬ä¸æ¹æ«é²ï¼</div> <div> 2ï¼å¦ç¨æ·æ¯ç¬¦åèµæ ¼çç¥è¯äº§ææè¯äººå¹¶å·²æèµ·æè¯ï¼åºè¢«æè¯äººè¦æ±ï¼å被æè¯äººæ«é²ï¼ä»¥ä¾¿åæ¹å¤çå¯è½çæå©çº çº·ï¼ </div> <div> 3ï¼æ ¹æ®æ³å¾çæå ³è§å®ï¼æè è¡æ¿æå¸æ³æºæçè¦æ±ï¼åç¬¬ä¸æ¹æè è¡æ¿ã叿³æºææ«é²ï¼ </div> <div>4ï¼å¦æç¨æ·åºç°è¿åä¸å½æå ³æ³å¾æè ç½ç«æ¿ççæ åµï¼éè¦åç¬¬ä¸æ¹æ«é²ï¼</div> <div>5ï¼ä¸ºæä¾æ¨æè¦æ±ç产ååæå¡ï¼èå¿ é¡»åç¬¬ä¸æ¹åäº«ç¨æ·ç个人信æ¯ï¼</div> <div> 6ï¼å¨å¹³å°ç½ä¸å建çæä¸äº¤æä¸ï¼å¦äº¤æä»»ä½ä¸æ¹å±¥è¡æé¨åå±¥è¡äºäº¤æä¹å¡å¹¶æåºä¿¡æ¯æ«é²è¯·æ±çï¼å¹³å°æå ¨æå¯ä»¥å³å®åè¯¥ç¨æ·æä¾å ¶äº¤æå¯¹æ¹çèç»æ¹å¼çå¿ è¦ä¿¡æ¯ï¼ä»¥ä¿æäº¤æç宿æçº 纷çè§£å³ï¼ </div> <div>7ï¼å ¶å®å¹³å°æ ¹æ®æ³å¾æè ç½ç«æ¿ç认为åéçæ«é²ã</div> </UserPolicyCell> <UserPolicyCell title="4ãä¿¡æ¯å®å ¨ï¼"> <div>1ï¼å¹³å°åå¹³å°è´¦æ·åæå®å ¨ä¿æ¤åè½ï¼è¯·å¦¥åä¿ç®¡ç¨æ·çè´¦æ·åå¯ç ä¿¡æ¯ï¼</div> <div> 2ï¼å¨ä½¿ç¨å¹³å°æå¡è¿è¡ç½ä¸äº¤ææ¶ï¼ç¨æ·ä¸å¯é¿å çè¦å交æå¯¹æ¹ææ½å¨ç交æå¯¹æ¹æä¾èªå·±ç个人信æ¯ï¼å¦èç»æ¹å¼æè 鮿¿å°åãè¯·ç¨æ·å¦¥åä¿æ¤èªå·±ç个人信æ¯ï¼ä» å¨å¿ è¦çæ å½¢ä¸åä»äººæä¾ï¼ </div> <div> 3ï¼å¦æç¨æ·åç°èªå·±çä¸ªäººä¿¡æ¯æ³å¯ï¼å°¤å ¶æ¯å¹³å°è´¦æ·åå¯ç åçæ³é²ï¼è¯·ç¨æ·ç«å³èç»å¹³å°å®¢æï¼ä»¥ä¾¿å¹³å°éåç¸åºæªæ½ã å¦ç¨æ·å¯¹å¦ä½æ¤åä¿¡æ¯æææçé®ï¼å¯ä»¥å¨å·¥ä½æ¥ï¼å¨ä¸å°å¨äº å æ³å®èåæ¥è°æ´ç工使¥ï¼å·¥ä½æ¶é´ï¼09:00 -- 18:00ï¼ è´çµå¹³å°å®¢æçµè¯ï¼16505012333ï¼è¯·å®¢æäººååå©å¤ç </div> </UserPolicyCell> <UserPolicyCell title="5ãå¦ä½æ³¨é/å é¤è´¦æ·"> <div> 1ï¼ç¨æ·å¯ä»¥å¨å·¥ä½æ¥ï¼å¨ä¸å°å¨äºåæ³å®èåæ¥è°æ´ç工使¥ï¼å·¥ä½æ¶é´ï¼09:00 -- 18:00ï¼ è´çµå¹³å°å®¢æçµè¯ï¼16505012333ï¼åç¥å®¢æäººå注åè´¦æ·ä¿¡æ¯,å¹¶åç¥å®¢æäººåéè¦æ³¨é/å é¤ä¸ªäººç¨æ·ä¿¡æ¯ï¼è´çµç¬¬äºæ¥å¼å§è®¡ç®ï¼ä¸¤ä¸ªå·¥ä½æ¥å åç»å¹¶è´çµ/çä¿¡éç¥ç³è¯·äººã </div> <div> 2ï¼ç¨æ·å¯ä»¥ä»»ä½æ¶é´ï¼è®¿é®å¹³å°åé¦ä¸å¿ç½é¡µï¼www.81812333.comå¨çº¿çè¨ï¼å®¢æå·¥ä½æ¥æ¥æ¶ä¿¡æ¯åï¼ä¼è´çµç³è¯·äººç¡®è®¤ä¿¡æ¯ï¼å¹¶å¨ä¸¤ä¸ªå·¥ä½æ¥å åç»ã </div> </UserPolicyCell> <UserPolicyCell title="6ãAPPææ¶é个人信æ¯çç®çãæ¹å¼åèå´"> <div>1ï¼ã平尿æ¶éçä¿¡æ¯ï¼ä» éäºç¨æ·å¨å¹³å°ç½å¼å±åºç¡ä¸å¡æ´»å¨ã</div> <div>2ï¼ãä¿¡æ¯æ¶éçæ¹å¼åèå´</div> <div>è·åæ¨ç¸åãç¸æºçæéï¼ç¨äºä¼ä¸ä¿¡æ¯ã订ååå¸ã个人头åçå¾çä¸ä¼ ã</div> <div> è·åæ¬å°å卿éï¼æä»¬å°è¯·æ±æ¨çå卿éè·åå¤ç½®åå¨ä¿¡æ¯ï¼SD塿°æ®ï¼ä»¥ä¿åæ¨å¨å¹³å°å询ç使ç¨è¿ç¨ä¸çä¸å¡æ°æ®ã </div> <div> è·åæ¨ç设å¤ä¿¡æ¯ï¼å æ¬IMEIã设å¤åºåå·ãOAIDãMEIDãAndroid IDãIMSIãGUIDãMACå°åãSIMå¡åºåå·ï¼ï¼è®¾å¤ç¹å¾ç åIPå°åï¼å·²å®è£ APPä¿¡æ¯æè¿è¡ä¸çè¿ç¨ä¿¡æ¯ï¼æ¥ä¿è¯æ¨è´¦å·ä½¿ç¨çå¯ä¸æ§ãå®å ¨æ§ã </div> <div> 彿¨ææ¾è§é¢çå 容æ¶ï¼ä¸ºäºéé æ¨ç设å¤ç¶æï¼æä»¬ä¼è°ç¨è®¾å¤çéåãå é度çä¼ æå¨ä¿¡æ¯ï¼ä»¥è¯å«æ¨çè®¾å¤æ¨ªç«å±ç¶æã </div> <div> 卿¨åäº«ææ¥æ¶è¢«å享çä¿¡æ¯æ¶ï¼éè¦å¨æ¬å°è®¿é®æ¨çåªåæ¿ï¼è¯»åå ¶ä¸å å«çå£ä»¤ãå享ç ã龿¥çï¼ä»¥å®ç°è·³è½¬ãåäº«ãæ´»å¨èå¨çåè½ææå¡ã </div> </UserPolicyCell> <UserPolicyCell title="7ãèªå¯å¨åå ³èå¯å¨è¯´æ"> <div> ä¸ºç¡®ä¿æ¬åºç¨å¤äºå ³éæåå°è¿è¡ç¶æä¸å¯æ£å¸¸æ¥æ¶å°å®¢æ·ç«¯æ¨éçå¹¿ææ¶æ¯ï¼æ¬åºç¨é¡»ä½¿ç¨ï¼èªå¯å¨ï¼è½åï¼å°åå¨ä¸å®é¢çéè¿ç³»ç»åé广æå¤éæ¬åºç¨èªå¯å¨æå ³èå¯å¨è¡ä¸ºï¼æ¯å å®ç°åè½åæå¡æå¿ è¦çã </div> </UserPolicyCell> </div> </scroll-view> </PageLayout> </template> <script setup lang="ts"> import { PageLayout } from '@/components'; import { ScrollView } from '@tarojs/components'; defineOptions({ name: 'privacyPolicy', }); const UserPolicyCell = defineComponent({ name: 'UserPolicyCell', props: { title: { type: String, }, content: { type: String, }, }, setup(props, { slots }) { return () => { return h('div', { class: 'userPolicy-cell-wrapper' }, [ h('div', { class: 'userPolicy-cell-title' }, [props.title]), h('div', { class: 'userPolicy-cell-content' }, slots.default?.()), ]); }; }, }); </script> <style lang="scss"> @import '@/styles/common.scss'; .userPolicy-page-wrapper { background-color: #fafafa; .userPolicy-page-scrollview { // flex: 1; height: 100%; box-sizing: border-box; } .userPolicy-page-scrollview-content { padding: 42px; .userPolicy-page-title { margin-bottom: 40px; } } .userPolicy-cell-wrapper { margin-bottom: 32px; .userPolicy-cell-title { color: #292929; font-size: 30px; margin-bottom: 22px; font-weight: 500; } .userPolicy-cell-content { div { font-size: 24px; line-height: 40px; text-indent: 28px; color: #888888; } } } } </style> apps/cMiniApp/src/subpackages/mine/mineAgreementSign/InnerPage.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,93 @@ <template> <ProTabs v-model="queryState.mineAgreementSignType" name="home-tab" :showPaneContent="false" class="home-tabs" isTransparent title-gutter="12" title-scroll > <ProTabPane :title="`å ¨é¨`" :pane-key="MineAgreementSignType.All"></ProTabPane> <ProTabPane :title="`å¾ ç¾çº¦`" :pane-key="MineAgreementSignType.WaitSign"></ProTabPane> <ProTabPane :title="`çæä¸`" :pane-key="MineAgreementSignType.Effect"></ProTabPane> <ProTabPane :title="`å·²ç»æ¢`" :pane-key="MineAgreementSignType.Terminated"></ProTabPane> </ProTabs> <InfiniteLoading scrollViewClassName="common-infinite-scroll-list home-list" v-bind="infiniteLoadingProps" :key="queryState.mineAgreementSignType" > <template #renderItem="{ item }"> <MineAgreementSignCard @click="goDetail"> <template #actions> <div class="task-card-actions-text" :style="{ color: MineAgreementSignTypeColor[10] }"> {{ MineAgreementSignTypeText[10] }} </div> </template> </MineAgreementSignCard> </template> </InfiniteLoading> </template> <script setup lang="ts"> import { MineAgreementSignCard, ProTabs, ProTabPane } from '@12333/components'; import { useUserStore } from '@/stores/modules/user'; import { MineAgreementSignType, MineAgreementSignTypeColor, MineAgreementSignTypeText, } from './constants'; import { useInfiniteLoading } from '@12333/hooks'; import { OrderInputType } from '@12333/constants'; import * as orderServices from '@12333/services/api/Order'; import Taro from '@tarojs/taro'; defineOptions({ name: 'InnerPage', }); const queryState = reactive({ mineAgreementSignType: MineAgreementSignType.All, }); const userStore = useUserStore(); const { infiniteLoadingProps } = useInfiniteLoading( ({ pageParam }) => { let params: API.FrontOrderListInput = { pageModel: { rows: 20, page: pageParam, orderInput: [ queryState.mineAgreementSignType === MineAgreementSignType.All ? { property: 'isRecommend', order: OrderInputType.Desc } : { property: 'lastShelfTime', order: OrderInputType.Desc }, ], }, }; return orderServices.getFrontOrderList(params, { showLoading: false, }); }, { queryKey: ['orderServices/getFrontOrderList', queryState], } ); function goDetail() { Taro.navigateTo({ url: RouterPath.mineAgreementSignDetail, }); } </script> <style lang="scss"> @import '@/styles/common.scss'; .task-card-actions-text { font-size: 24px; line-height: 42px; } </style> apps/cMiniApp/src/subpackages/mine/mineAgreementSign/constants/index.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,19 @@ export enum MineAgreementSignType { All = 0, WaitSign = 10, Effect = 20, Terminated = 30, } export const MineAgreementSignTypeText = { [MineAgreementSignType.All]: 'å ¨é¨', [MineAgreementSignType.WaitSign]: 'å¾ ç¾çº¦', [MineAgreementSignType.Effect]: 'çæä¸', [MineAgreementSignType.Terminated]: 'å·²ç»æ¢', }; export const MineAgreementSignTypeColor = { [MineAgreementSignType.WaitSign]: '#FF7D00', [MineAgreementSignType.Effect]: '#3A71FF', [MineAgreementSignType.Terminated]: '#9FA4AC', }; apps/cMiniApp/src/subpackages/mine/mineAgreementSign/mineAgreementSign.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/mine/mineAgreementSign/mineAgreementSign.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ <template> <PageLayoutWithBg class="index-page-wrapper" :title="'åè®®ç¾çº¦'"> <InnerPage></InnerPage> </PageLayoutWithBg> </template> <script setup lang="ts"> import InnerPage from './InnerPage.vue'; defineOptions({ name: 'mineAgreementSign', }); </script> <style lang="scss"> @import '@/styles/common.scss'; </style> apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,26 @@ <template> <div class="mine-agreement-sign-detail"> <MineAgreementSignDetailCard title="åºæ¬ä¿¡æ¯"></MineAgreementSignDetailCard> </div> </template> <script setup lang="ts"> import { useUserStore } from '@/stores/modules/user'; import MineAgreementSignDetailCard from './MineAgreementSignDetailCard.vue'; defineOptions({ name: 'InnerPage', }); const queryState = reactive({}); const userStore = useUserStore(); </script> <style lang="scss"> @import '@/styles/common.scss'; .mine-agreement-sign-detail { padding: 20px 28px 0; } </style> apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/MineAgreementSignDetailCard.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,39 @@ <template> <div class="mine-agreement-sign-detail-card"> <div class="mine-agreement-sign-detail-card-title"> <slot name="title"> {{ title }} </slot> </div> <div class="mine-agreement-sign-detail-card-content"> <slot name="content"></slot> </div> </div> </template> <script setup lang="ts"> defineOptions({ name: 'MineAgreementSignDetailCard', }); type Props = { title?: string; }; const props = withDefaults(defineProps<Props>(), {}); </script> <style lang="scss"> .mine-agreement-sign-detail-card { background-color: #fff; border-radius: 12px; padding: 24px 34px 34px; .mine-agreement-sign-detail-card-title { font-size: 30px; line-height: 42px; color: boleGetCssVar('text-color', 'primary'); margin-bottom: 36px; } } </style> apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/constants/index.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,19 @@ export enum MineAgreementSignType { All = 0, WaitSign = 10, Effect = 20, Terminated = 30, } export const MineAgreementSignTypeText = { [MineAgreementSignType.All]: 'å ¨é¨', [MineAgreementSignType.WaitSign]: 'å¾ ç¾çº¦', [MineAgreementSignType.Effect]: 'çæä¸', [MineAgreementSignType.Terminated]: 'å·²ç»æ¢', }; export const MineAgreementSignTypeColor = { [MineAgreementSignType.WaitSign]: '#FF7D00', [MineAgreementSignType.Effect]: '#3A71FF', [MineAgreementSignType.Terminated]: '#9FA4AC', }; apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/mineAgreementSignDetail.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/mineAgreementSignDetail.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ <template> <PageLayoutWithBg class="index-page-wrapper" :title="'å议详æ '"> <InnerPage></InnerPage> </PageLayoutWithBg> </template> <script setup lang="ts"> import InnerPage from './InnerPage.vue'; defineOptions({ name: 'mineAgreementSign', }); </script> <style lang="scss"> @import '@/styles/common.scss'; </style> apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/mineAgreementSignDetailItem.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,39 @@ <template> <div class="mine-agreement-sign-detail-item"> <div class="mine-agreement-sign-detail-item-lebel"> <slot name="label"> {{ label }} </slot> </div> <div class="mine-agreement-sign-detail-item-detail"> <slot name="detail"> {{ detail }} </slot> </div> </div> </template> <script setup lang="ts"> defineOptions({ name: 'mineAgreementSignDetailItem', }); type Props = { label: string; detail: string; }; const props = withDefaults(defineProps<Props>(), {}); </script> <style lang="scss"> @use '@/style/common.scss' as *; .mine-agreement-sign-detail-item { margin-bottom: 24px; &:last-child { margin-bottom: 0; } } </style> apps/cMiniApp/src/subpackages/mine/mineCancel/InnerPage.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,57 @@ <template> <InfiniteLoading scrollViewClassName="common-infinite-scroll-list home-list" v-bind="infiniteLoadingProps" > <template #renderItem="{ item }"> <TaskCard> <template #actions> <div class="task-card-actions-text">{{ '已忶' }}</div> </template> </TaskCard> </template> </InfiniteLoading> </template> <script setup lang="ts"> import { TaskCard } from '@12333/components'; import { useUserStore } from '@/stores/modules/user'; import { useInfiniteLoading } from '@12333/hooks'; import { OrderInputType } from '@12333/constants'; import * as orderServices from '@12333/services/api/Order'; defineOptions({ name: 'InnerPage', }); const userStore = useUserStore(); const { infiniteLoadingProps } = useInfiniteLoading( ({ pageParam }) => { let params: API.FrontOrderListInput = { pageModel: { rows: 20, page: pageParam, orderInput: [{ property: 'isRecommend', order: OrderInputType.Desc }], }, }; return orderServices.getFrontOrderList(params, { showLoading: false, }); }, { queryKey: ['orderServices/getFrontOrderList'], } ); </script> <style lang="scss"> @import '@/styles/common.scss'; .task-card-actions-text { font-size: 24px; line-height: 42px; color: #9fa4ac; } </style> apps/cMiniApp/src/subpackages/mine/mineCancel/mineCancel.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/mine/mineCancel/mineCancel.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ <template> <PageLayoutWithBg class="index-page-wrapper" :title="'已忶'"> <InnerPage></InnerPage> </PageLayoutWithBg> </template> <script setup lang="ts"> import InnerPage from './InnerPage.vue'; defineOptions({ name: 'mineCancel', }); </script> <style lang="scss"> @import '@/styles/common.scss'; </style> apps/cMiniApp/src/subpackages/mine/mineCollectTask/InnerPage.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,76 @@ <template> <div class="my-collect-task"> <div class="my-collect-task-title">æ¶èä»»å¡å表</div> <div class="my-collect-task-btn">æ¸ ç©ºå·²å¤±æä»»å¡</div> </div> <InfiniteLoading scrollViewClassName="common-infinite-scroll-list home-list" v-bind="infiniteLoadingProps" > <template #renderItem="{ item }"> <TaskCard> </TaskCard> </template> </InfiniteLoading> </template> <script setup lang="ts"> import { TaskCard } from '@12333/components'; import { useUserStore } from '@/stores/modules/user'; import { useInfiniteLoading } from '@12333/hooks'; import { OrderInputType } from '@12333/constants'; import * as orderServices from '@12333/services/api/Order'; defineOptions({ name: 'InnerPage', }); const userStore = useUserStore(); const { infiniteLoadingProps } = useInfiniteLoading( ({ pageParam }) => { let params: API.FrontOrderListInput = { pageModel: { rows: 20, page: pageParam, orderInput: [{ property: 'isRecommend', order: OrderInputType.Desc }], }, }; return orderServices.getFrontOrderList(params, { showLoading: false, }); }, { queryKey: ['orderServices/getFrontOrderList'], } ); </script> <style lang="scss"> @import '@/styles/common.scss'; .my-collect-task { display: flex; align-items: center; justify-content: space-between; padding: 30px 40px; .my-collect-task-title { font-size: 28px; line-height: 40px; color: boleGetCssVar('text-color', 'primary'); } .my-collect-task-btn { font-size: 24px; line-height: 34px; color: boleGetCssVar('text-color', 'regular'); } } .task-card-actions-text { font-size: 24px; line-height: 42px; color: #9fa4ac; } </style> apps/cMiniApp/src/subpackages/mine/mineCollectTask/mineCollectTask.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/mine/mineCollectTask/mineCollectTask.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ <template> <PageLayoutWithBg class="index-page-wrapper" :title="'ææ¶èçä»»å¡'"> <InnerPage></InnerPage> </PageLayoutWithBg> </template> <script setup lang="ts"> import InnerPage from './InnerPage.vue'; defineOptions({ name: 'mineCollectTask', }); </script> <style lang="scss"> @import '@/styles/common.scss'; </style> apps/cMiniApp/src/subpackages/mine/mineHire/InnerPage.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,82 @@ <template> <ProTabs v-model="queryState.mineHireType" name="home-tab" :showPaneContent="false" class="home-tabs" isTransparent title-gutter="12" title-scroll > <ProTabPane :title="`å ¨é¨`" :pane-key="MineHireType.All"></ProTabPane> <ProTabPane :title="`è¿è¡ä¸`" :pane-key="MineHireType.InProgress"></ProTabPane> <ProTabPane :title="`å¾ éªæ¶`" :pane-key="MineHireType.WaitCheck"></ProTabPane> <ProTabPane :title="`已宿`" :pane-key="MineHireType.Finished"></ProTabPane> </ProTabs> <InfiniteLoading scrollViewClassName="common-infinite-scroll-list home-list" v-bind="infiniteLoadingProps" :key="queryState.mineHireType" > <template #renderItem="{ item }"> <TaskCard> <template #actions> <div class="task-card-actions-text" :style="{ color: MineHireTypeColor[10] }"> {{ MineHireTypeText[10] }} </div> </template> </TaskCard> </template> </InfiniteLoading> </template> <script setup lang="ts"> import { TaskCard, ProTabs, ProTabPane } from '@12333/components'; import { useUserStore } from '@/stores/modules/user'; import { MineHireType, MineHireTypeColor, MineHireTypeText } from './constants'; import { useInfiniteLoading } from '@12333/hooks'; import { OrderInputType } from '@12333/constants'; import * as orderServices from '@12333/services/api/Order'; defineOptions({ name: 'InnerPage', }); const queryState = reactive({ mineHireType: MineHireType.All, }); const userStore = useUserStore(); const { infiniteLoadingProps } = useInfiniteLoading( ({ pageParam }) => { let params: API.FrontOrderListInput = { pageModel: { rows: 20, page: pageParam, orderInput: [ queryState.mineHireType === MineHireType.All ? { property: 'isRecommend', order: OrderInputType.Desc } : { property: 'lastShelfTime', order: OrderInputType.Desc }, ], }, }; return orderServices.getFrontOrderList(params, { showLoading: false, }); }, { queryKey: ['orderServices/getFrontOrderList', queryState], } ); </script> <style lang="scss"> @import '@/styles/common.scss'; .task-card-actions-text { font-size: 24px; line-height: 42px; } </style> apps/cMiniApp/src/subpackages/mine/mineHire/constants/index.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,19 @@ export enum MineHireType { All = 0, InProgress = 10, WaitCheck = 20, Finished = 30, } export const MineHireTypeText = { [MineHireType.All]: 'å ¨é¨', [MineHireType.InProgress]: 'è¿è¡ä¸', [MineHireType.WaitCheck]: 'å¾ éªæ¶', [MineHireType.Finished]: '已宿', }; export const MineHireTypeColor = { [MineHireType.InProgress]: '#3A71FF', [MineHireType.WaitCheck]: '#FF7D00', [MineHireType.Finished]: '#9FA4AC', }; apps/cMiniApp/src/subpackages/mine/mineHire/mineHire.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/mine/mineHire/mineHire.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ <template> <PageLayoutWithBg class="index-page-wrapper" :title="'å·²å½ç¨'"> <InnerPage></InnerPage> </PageLayoutWithBg> </template> <script setup lang="ts"> import InnerPage from './InnerPage.vue'; defineOptions({ name: 'mineHire', }); </script> <style lang="scss"> @import '@/styles/common.scss'; </style> apps/cMiniApp/src/subpackages/mine/mineSign/InnerPage.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,81 @@ <template> <ProTabs v-model="queryState.mineSignType" name="home-tab" :showPaneContent="false" class="home-tabs" isTransparent title-gutter="12" title-scroll > <ProTabPane :title="`å ¨é¨`" :pane-key="MineSignType.All"></ProTabPane> <ProTabPane :title="`å¾ ç¡®è®¤`" :pane-key="MineSignType.WaitConfirm"></ProTabPane> <ProTabPane :title="`å¾ ç¾çº¦`" :pane-key="MineSignType.WaitSign"></ProTabPane> </ProTabs> <InfiniteLoading scrollViewClassName="common-infinite-scroll-list home-list" v-bind="infiniteLoadingProps" :key="queryState.mineSignType" > <template #renderItem="{ item }"> <TaskCard> <template #actions> <div class="task-card-actions-text" :style="{ color: MineSignTypeColor[10] }"> {{ MineSignTypeText[10] }} </div> </template> </TaskCard> </template> </InfiniteLoading> </template> <script setup lang="ts"> import { TaskCard, ProTabs, ProTabPane } from '@12333/components'; import { useUserStore } from '@/stores/modules/user'; import { MineSignType, MineSignTypeColor, MineSignTypeText } from './constants'; import { useInfiniteLoading } from '@12333/hooks'; import { OrderInputType } from '@12333/constants'; import * as orderServices from '@12333/services/api/Order'; defineOptions({ name: 'InnerPage', }); const queryState = reactive({ mineSignType: MineSignType.All, }); const userStore = useUserStore(); const { infiniteLoadingProps } = useInfiniteLoading( ({ pageParam }) => { let params: API.FrontOrderListInput = { pageModel: { rows: 20, page: pageParam, orderInput: [ queryState.mineSignType === MineSignType.All ? { property: 'isRecommend', order: OrderInputType.Desc } : { property: 'lastShelfTime', order: OrderInputType.Desc }, ], }, }; return orderServices.getFrontOrderList(params, { showLoading: false, }); }, { queryKey: ['orderServices/getFrontOrderList', queryState], } ); </script> <style lang="scss"> @import '@/styles/common.scss'; .task-card-actions-text { font-size: 24px; line-height: 42px; } </style> apps/cMiniApp/src/subpackages/mine/mineSign/constants/index.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,16 @@ export enum MineSignType { All = 0, WaitConfirm = 10, WaitSign = 20, } export const MineSignTypeText = { [MineSignType.All]: 'å ¨é¨', [MineSignType.WaitConfirm]: 'å¾ ç¡®è®¤', [MineSignType.WaitSign]: 'å¾ ç¾çº¦', }; export const MineSignTypeColor = { [MineSignType.WaitConfirm]: '#FF7D00', [MineSignType.WaitSign]: '#3A71FF', }; apps/cMiniApp/src/subpackages/mine/mineSign/mineSign.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/mine/mineSign/mineSign.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ <template> <PageLayoutWithBg class="index-page-wrapper" :title="'æçæ¥å'"> <InnerPage></InnerPage> </PageLayoutWithBg> </template> <script setup lang="ts"> import InnerPage from './InnerPage.vue'; defineOptions({ name: 'mineSign', }); </script> <style lang="scss"> @import '@/styles/common.scss'; </style> apps/cMiniApp/src/subpackages/mine/setting/setting.config.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ export default definePageConfig({ disableScroll: true, }); apps/cMiniApp/src/subpackages/mine/setting/setting.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,66 @@ <template> <PageLayout title="设置" class="setting-page-wrapper" hasBorder> <List> <ListItem title="ç»å½è´¦å·"> <template #extra> <div class="user-account"> {{ userAccount }} </div> </template> </ListItem> <ListItem title="ç¨æ·åè®®" @click="goMineUserPolicy"></ListItem> <ListItem title="éç§æ¿ç" @click="goPrivacyPolicy"></ListItem> <ListItem title="éåºç»å½" @click="handleLoginout"></ListItem> </List> </PageLayout> </template> <script setup lang="ts"> import { PageLayout } from '@/components'; import { List, ListItem } from '@12333/components'; import { addStarForString, Message } from '@12333/utils'; import { useUserStore } from '@/stores/modules/user'; import { useQueryClient } from '@tanstack/vue-query'; import Taro from '@tarojs/taro'; defineOptions({ name: 'setting', }); const userStore = useUserStore(); const queryClient = useQueryClient(); const userAccount = computed(() => { return addStarForString(userStore?.userDetail?.userName, 4, 8); }); function goMineUserPolicy() { Taro.navigateTo({ url: RouterPath.mineUserPolicy, }); } function goPrivacyPolicy() { Taro.navigateTo({ url: RouterPath.privacyPolicy, }); } async function handleLoginout() { try { await Message.confirm({ message: 'ç¡®å®è¦éåºç»å½åï¼', }); userStore.logoutAndToHome(); queryClient.removeQueries(); } catch (error) {} } </script> <style lang="scss"> @import '@/styles/common.scss'; .user-account { color: boleGetCssVar('text-color', 'regular'); font-size: 24px; } </style> packages/components/src/Card/MineAgreementSignCard.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,86 @@ <template> <div class="task-card-wrapper"> <div class="task-card-title-wrapper"> <div class="task-card-title">宿³¢äººåæ 忧人åèµæºæéå ¬å¸</div> </div> <div class="task-card-footer"> <div class="task-card-left"> <div class="task-card-time">2024.11.20 - 2025.11.19</div> </div> <div class="task-card-actions"> <slot name="actions"> <nut-button type="primary">æ¥å</nut-button> </slot> </div> </div> </div> </template> <script setup lang="ts"> defineOptions({ name: 'MineAgreementSignCard', }); type Props = { title?: string; }; const props = withDefaults(defineProps<Props>(), {}); </script> <style lang="scss"> @import '@/styles/common.scss'; .task-card-wrapper { padding: 24px 32px; margin-bottom: 24px; background-color: #fff; border-radius: 12px; &:last-child { margin-bottom: 0; } .task-card-title-wrapper { display: flex; align-items: center; margin-bottom: 14px; .task-card-title { flex: 1; min-width: 0; @include ellipsis; font-size: 30px; color: boleGetCssVar('text-color', 'primary'); line-height: 42px; } } .task-card-time { font-size: 24px; color: boleGetCssVar('text-color', 'secondary'); line-height: 36px; margin-bottom: 6px; } .task-card-footer { display: flex; align-items: center; .task-card-left { flex: 1; min-width: 0; display: flex; align-items: center; } .task-card-actions { --nut-button-default-font-size: 24px; .nut-button { height: 26px; } } } } </style> packages/components/src/index.ts
@@ -18,3 +18,4 @@ export { default as AreaTreeSelect } from './AreaTreeSelect/AreaTreeSelect.vue'; export { default as Elevator } from './Elevator/Elevator.vue'; export { default as TaskCard } from './Card/TaskCard.vue'; export { default as MineAgreementSignCard } from './Card/MineAgreementSignCard.vue';