From 36e61236a026fde814a69436282577d1c62286cd Mon Sep 17 00:00:00 2001 From: huliyong <2783385703@qq.com> Date: Mon, 13 Jan 2025 15:43:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/canvas-drag/index.css | 16 + components/canvas-drag/index.vue | 1047 ++++++++++++++++++++++++++ components/canvas-drag/setData.js | 63 ++ mixins/configList.js | 28 +- pages.json | 30 +- pages/index/center.vue | 8 +- pages_order/{mine => contract}/contract.vue | 2 +- pages_order/contract/contractDetail.vue | 195 +++++ pages_order/contract/contractManage.vue | 88 +++ pages_order/contract/contractManageEdit.vue | 153 ++++ pages_order/contract/electronicSignature.vue | 188 +++++ pages_order/mine/contractDetail.vue | 44 -- static/components/canvas-drag/close.png | Bin 0 -> 2695 bytes static/components/canvas-drag/scale.png | Bin 0 -> 2010 bytes 14 files changed, 1795 insertions(+), 67 deletions(-) create mode 100644 components/canvas-drag/index.css create mode 100644 components/canvas-drag/index.vue create mode 100644 components/canvas-drag/setData.js rename pages_order/{mine => contract}/contract.vue (96%) create mode 100644 pages_order/contract/contractDetail.vue create mode 100644 pages_order/contract/contractManage.vue create mode 100644 pages_order/contract/contractManageEdit.vue create mode 100644 pages_order/contract/electronicSignature.vue delete mode 100644 pages_order/mine/contractDetail.vue create mode 100644 static/components/canvas-drag/close.png create mode 100644 static/components/canvas-drag/scale.png diff --git a/components/canvas-drag/index.css b/components/canvas-drag/index.css new file mode 100644 index 0000000..6ae5b16 --- /dev/null +++ b/components/canvas-drag/index.css @@ -0,0 +1,16 @@ +/* components/canvas-drag/index.wxss */ +.movable-label { + margin-top: 300rpx; + width: 750rpx; + height: 400rpx; + background: #eee; +} +.movable-block { + width: 120rpx; + height: 120rpx; + background: #ccc; +} +.movable-block .image-con { + width: 100%; + height: 100%; +} \ No newline at end of file diff --git a/components/canvas-drag/index.vue b/components/canvas-drag/index.vue new file mode 100644 index 0000000..ee4f09b --- /dev/null +++ b/components/canvas-drag/index.vue @@ -0,0 +1,1047 @@ + + + + \ No newline at end of file diff --git a/components/canvas-drag/setData.js b/components/canvas-drag/setData.js new file mode 100644 index 0000000..2126535 --- /dev/null +++ b/components/canvas-drag/setData.js @@ -0,0 +1,63 @@ + + + + +export default { + data() { + return { + } + }, + methods: { + // 设置数据 + setData: function(obj, callback) { + let that = this; + const handleData = (tepData, tepKey, afterKey) => { + tepKey = tepKey.split('.'); + tepKey.forEach(item => { + if (tepData[item] === null || tepData[item] === undefined) { + let reg = /^[0-9]+$/; + tepData[item] = reg.test(afterKey) ? [] : {}; + tepData = tepData[item]; + } else { + tepData = tepData[item]; + } + }); + return tepData; + }; + const isFn = function(value) { + return typeof value == 'function' || false; + }; + Object.keys(obj).forEach(function(key) { + let val = obj[key]; + key = key.replace(/\]/g, '').replace(/\[/g, '.'); + let front, after; + let index_after = key.lastIndexOf('.'); + if (index_after != -1) { + after = key.slice(index_after + 1); + front = handleData(that, key.slice(0, index_after), after); + } else { + after = key; + front = that; + } + if (front.$data && front.$data[after] === undefined) { + Object.defineProperty(front, after, { + get() { + return front.$data[after]; + }, + set(newValue) { + front.$data[after] = newValue; + that.$forceUpdate(); + }, + enumerable: true, + configurable: true + }); + front[after] = val; + } else { + that.$set(front, after, val); + } + }); + // this.$forceUpdate(); + isFn(callback) && this.$nextTick(callback); + }, + } +} \ No newline at end of file diff --git a/mixins/configList.js b/mixins/configList.js index fd8ca93..c972abf 100644 --- a/mixins/configList.js +++ b/mixins/configList.js @@ -1,13 +1,13 @@ - - -import { mapState } from 'vuex' +import { + mapState +} from 'vuex' export default { data() { return { // 默认的全局分享内容 Gshare: { title: '特易招', - path: '/pages/index/index', // 全局分享的路径,比如 首页 + path: '/pages/index/index', // 全局分享的路径,比如 首页 // imageUrl: '/static/image/login/logo.png', // 全局分享的图片(可本地可网络) } } @@ -17,27 +17,27 @@ export default { }, // 定义全局分享 // 1.发送给朋友 - onShareAppMessage(res) { + onShareAppMessage(res) { let o = { ...this.Gshare, - title : this.configList.config_app_name, + title: this.configList.config_app_name, } - if(this.userInfo.id){ + if (this.userInfo.id) { o.path = this.Gshare.path + '?shareId=' + this.userInfo.id } - return o - }, + return o + }, //2.分享到朋友圈 - onShareTimeline(res) { + onShareTimeline(res) { let o = { ...this.Gshare, - title : this.configList.config_app_name, + title: this.configList.config_app_name, } - if(this.userInfo.id){ + if (this.userInfo.id) { o.path = this.Gshare.path + '?shareId=' + this.userInfo.id } - return o - }, + return o + }, methods: { } } \ No newline at end of file diff --git a/pages.json b/pages.json index 371555a..bf1b983 100644 --- a/pages.json +++ b/pages.json @@ -91,12 +91,6 @@ "navigationBarTextStyle": "white" } }, - { - "path": "mine/contract", - "style": { - "enablePullDownRefresh": true - } - }, { "path": "mine/promotion" }, @@ -191,7 +185,29 @@ "path": "work/workTypeList" }, { - "path": "mine/contractDetail" + "path": "contract/contractDetail" + }, + { + "path": "contract/contract", + "style": { + "enablePullDownRefresh": true + } + }, + { + "path": "contract/contractManage", + "style": { + "enablePullDownRefresh": true + } + }, + { + "path": "contract/contractManageEdit", + "style": { + } + }, + { + "path": "contract/electronicSignature", + "style": { + } } ] }], diff --git a/pages/index/center.vue b/pages/index/center.vue index 27d0963..7cf4edb 100644 --- a/pages/index/center.vue +++ b/pages/index/center.vue @@ -192,11 +192,17 @@ 兑换码 - + 电子合同 + + + 合同模板 + + 面对面分享 diff --git a/pages_order/mine/contract.vue b/pages_order/contract/contract.vue similarity index 96% rename from pages_order/mine/contract.vue rename to pages_order/contract/contract.vue index eae3856..0d16439 100644 --- a/pages_order/mine/contract.vue +++ b/pages_order/contract/contract.vue @@ -17,7 +17,7 @@ diff --git a/pages_order/contract/contractDetail.vue b/pages_order/contract/contractDetail.vue new file mode 100644 index 0000000..e60bb0a --- /dev/null +++ b/pages_order/contract/contractDetail.vue @@ -0,0 +1,195 @@ + + + + + diff --git a/pages_order/contract/contractManage.vue b/pages_order/contract/contractManage.vue new file mode 100644 index 0000000..26a7cbb --- /dev/null +++ b/pages_order/contract/contractManage.vue @@ -0,0 +1,88 @@ + + + + + diff --git a/pages_order/contract/contractManageEdit.vue b/pages_order/contract/contractManageEdit.vue new file mode 100644 index 0000000..e8fac5f --- /dev/null +++ b/pages_order/contract/contractManageEdit.vue @@ -0,0 +1,153 @@ + + + + + \ No newline at end of file diff --git a/pages_order/contract/electronicSignature.vue b/pages_order/contract/electronicSignature.vue new file mode 100644 index 0000000..2de378b --- /dev/null +++ b/pages_order/contract/electronicSignature.vue @@ -0,0 +1,188 @@ + + + + + \ No newline at end of file diff --git a/pages_order/mine/contractDetail.vue b/pages_order/mine/contractDetail.vue deleted file mode 100644 index 01b3b5d..0000000 --- a/pages_order/mine/contractDetail.vue +++ /dev/null @@ -1,44 +0,0 @@ - - - - - diff --git a/static/components/canvas-drag/close.png b/static/components/canvas-drag/close.png new file mode 100644 index 0000000000000000000000000000000000000000..15be005da2f50d39030b09a4c1ed9387a00c8203 GIT binary patch literal 2695 zcmaJ@dpwkB8-B-O44WvbAS1-(IbNLl?vIM2vC9u21B`gXXI?tZ6tyl;*8vbXJVK_ zDj3Ffj~9VH@m{{1_y~?e2-4LB;Up!h2za1`jgayp`C_8f8To;isM;@^(MZGx7fFOO z@}H#qm@EWUAOaD1Ya0{?gT*2U1Z%7B5l<}Lxq$-*y zDT*()_{2a1 z#T*e=DB%kDh-F50upnCEj8tX%PYFEXXIj4aW1CbBLrd90G}aokT+$~;CiDNh@_3)U z#S(AuKl%PoVzFxq#L?8|m2oY2t z0%9|h&EfKw4O>1Sm`tJvUo2tsIiLs48L8s1=5j-b_73)B9D&Xt# zR0fqybD-mK)K6HNfD_FF`I1lAkk42K=8M>6G4O<{$TU#IjR8X#A^{Kap=cua%em0L z$oCN&^2J=}^e6d=*gj* zP2)wg<9~F|E;zHUg~vhk7gqDQ_1QjqcECF7YM`&$Y)L*{5c_kGl^N?^ zg+*kpLbTNH@~mEkIHRl|`{npwiLO&X$R4ypE;yYf(xcU3h$&yp06*|c`T}D8~h)vo_zumC?&8do`-iim$ug<^l zJ2ziYZo9e31u3*Dnzjfqv0wNDHs|l-NaXU8rkC9@8Yc9^XZR^Y#UA;tF^QhGWCgy;TvWR{zU^i zwb}+o*DYS`7q+klfESy$#~v`dnq}kHe?R`Qnt9fubsk5TdfaeUYr69iB%iosaNO|kOYmK*$JXA+wv%35>*Q&w_Vnq6uhmi(2hZh@ zX4Y^0F~8$M*~-qygTOc>a(*%jZ#w*b!T;s9jzMVBPWeKEW_~cBaCrWPhp$?a0Ot%kGYWKh=f5iXSZjJ5m*7sx0mPFfu9N+P)%1#J07 z_QY_`bDT6icfKUl1|fuZV<57dcd$0Cd2g~)`*+Wu(bji&-1D_lw??8KrNm#^^vn*f zW?m^=fpRMZvZ`10^rrvY##3&jZ%=t+^Gt8TDbq(*o>KEr^K|RwG=0~fkKp^!iYTOG zVy>o|=2@)*L*7dRPpaM(aP{mbWzrF6L|v7~N6YB)>8b&M=kg5N1OY8aDIonv~m%HNjKQqk?uV&LrJ+ zb^AGmH4{ZC>)RLHUF=s_^Y&q0?W5nmr_ZL%{T?Tn+pBnX)l-u5{fp@J5Pu$G;4yjR z?PF4SeU;4Y_Ss3@<^+yY)>y9ZMNjE>z!2om_R4Bkn_J2Y#TECFM04evbVu#nnLpi| z%{-Kpljp@hcpeD{?>C{RtdQJ1ljKPj61GFwwc&nfy#YdUyQ2#vB zC-0t_9C^fe$CSSQ65n^#-9^lJUiO=qt(Ttx6R0$(0V+25=~9973dq)VRrjy3Dt_){ oHA3KFG1HfC)B!7m?{*|Yfb8O0Y^Sk8zI-+GpnK7(DM8791D}Ot)&Kwi literal 0 HcmV?d00001 diff --git a/static/components/canvas-drag/scale.png b/static/components/canvas-drag/scale.png new file mode 100644 index 0000000000000000000000000000000000000000..173217798242f4878677b91e898cdf709c231c8d GIT binary patch literal 2010 zcmaJ?eOOavA3lr`An_4Md_-|PkSV#1ZEUcOImQMuVKByYWZ4+o0VZr`ZU>p5dyUHNJB`UF5<{Q}Lg+?Tz2}lZ>CD*|KSBWIUpg=88g~hO3 zxpni`a3}y+`>Q00XreHNsX)|3xy6QPP-`(X0EBW3TDc+}M!{q_Ri$A=Gv~S>P^Dx; zQkpPOsO7EviB^poLMMjAWv02#fTe6x7-mv>N^MGGPTH8RS|LnHXqEX~9q^{QstE^$Tk~ zDu!Ri`#*{GlC4^pB!=}!rcQx1F2&E{O3UQwU^$BDBnXnRP(@K1f+G4fL<{l~=->*W zT%pof4pu%x2!%|6Mvuxh3Ru8rLl_59rBX6O7$IB=J(9|$k$GftL`XP;9LWgeMe?|O zMg)z*Tfp)WMW!0opbJ>#OKi}hSc@3cTFf&a)~U9@%19le2A?I(R4pD0c~QRSSmole zP!`3KuwY1**8Z#23rCoKEXxJ>o8%*f5emm06s>*=SmFMe>*6PN{IKl zm^XQ2Fy{S^!GWWdYaOl@&CB!NT0+UbG&Db3De^p4vebXBpwuq=*JXBl_BBndymKT^ zBp8aWkhpxy8Q3qO55mL)9UHS|Zr4o=)AiT3oXNa0I@dii`a?bI(9GjGR+hAgypvCN za{cL5tCz!dB*weW&3hZ374%eQ6J}Su_mfnU&^rFKUqf-gcaW3S_-o@^oecK|D$ej5 zxqZ-Al|@`v^5gaPRlPOI=)T~C{GXAWErV%JPW_o3QGXV3tuh|$RVazJU#C}9Z=5|4 z^~I5MRO2gqp)McOZXHl?#!vj_Fmu~b!*1)lEh(KW+R;BImbMKWQ~bU$h0izDcKa9` zo0%sBwYFeub-cmb;febJ?s(ju_XwNqv=#RP@>?By0=k<%g4$lq@fbGN@zij5I!y!I}=y+uiY}xIW&9XdtNE;XW59u z0T2Aj>D-GM(YN;0PUB4-wn>jC%J)@3occ}H5gW%OW8hhN;ZVqP0=C<%-E9~N=z9&V8 zgYH^QoL$x1W4pW@t+QUSZLYs$*`rCK41a!uW9f36rb};d@SQK+dp_T;o{wi3HX)t%qNKROTN*A$&=QftanbDm&)t>)mOC-{ z;gr#>40eL5d+)}U4GyKf_YT^ zjdt}odzw69rOyx)OtzDKl*i3&lfJ~Z-V2Ti-OQa=cL8I|vl!()Gqp%@9ZLP+-Fn#}A$J;*@#fEW^KjZfO#5+}J9qcyzGP Pa@z_bV)>tjCl&q;jQ