index.wxml 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. <view class="head" hover-class="navigator-hover" bindtap="openFiltrate">
  2. <view class="filter">
  3. <text class="iconfont icon-shaixuan" />
  4. {{language[username]||username}}_{{language[content.where.isleave==1?'在职':content.where.isleave?'离职':'全部']||content.where.isleave==1?'在职':content.where.isleave?'离职':'全部'}}
  5. </view>
  6. <view class="filter">
  7. <text class="iconfont icon-lingyu" />
  8. {{language[content.where.tradefield||'领域']||content.where.tradefield||'领域'}}
  9. </view>
  10. </view>
  11. <Yl_ListBox id='ListBox' pullDown='{{false}}' bind:getlist='getList'>
  12. <view class="analysis" style="padding: 0;margin:0;">
  13. <timeRange id='TimeRange' grading='date' dateTypes='{{dateTypes}}' dateType='{{content.dateType}}'
  14. bind:onChange='changeDate' />
  15. <view style="padding-left: 40rpx;">
  16. <checkbox-group bindchange="onCheckboxChange" style="display: flex; align-items: center;">
  17. <label style="font-size: 12px; display: flex; align-items: center;">
  18. <checkbox value="{{chartDataUnfinish}}" style="transform: scale(0.7);" color="#296DEF" />
  19. {{language['包含失败、结案项目']||'包含失败、结案项目'}}
  20. </label>
  21. </checkbox-group>
  22. </view>
  23. </view>
  24. <view class="funnel">
  25. <ec-canvas id="funnel" canvas-id="funnel" ec="{{ ec }}"></ec-canvas>
  26. </view>
  27. <view class="analysis" style="margin-top: 0;" wx:if="{{isHY}}">
  28. <view class="title">{{language['项目预计成交统计']||'项目预计成交统计'}}</view>
  29. <view class="title1" style="margin-top: 20rpx;">
  30. {{language['前12个月成交项目指标']||'前12个月成交项目指标'}}
  31. </view>
  32. <view class="box">
  33. <view class="row">
  34. <view class="label">{{language['成交项目数']||'成交项目数'}}:</view>
  35. <view class="value">{{firstTwelveMonths.dealTotalCount}}</view>
  36. </view>
  37. <view class="row">
  38. <view class="label">{{language['失败项目数']||'失败项目数'}}:</view>
  39. <view class="value">{{firstTwelveMonths.failTotalCount}}</view>
  40. </view>
  41. <view class="row">
  42. <view class="label">{{language['项目成交率']||'项目成交率'}}:</view>
  43. <view class="value">{{firstTwelveMonths.dealRate}}</view>
  44. </view>
  45. </view>
  46. <view class="box">
  47. <view class="row">
  48. <view class="label">{{language['预计成交正偏差']||'预计成交正偏差'}}:</view>
  49. <view class="value">
  50. <text class="count">
  51. {{firstTwelveMonths.positiveCount}}{{language['个']||'个'}}
  52. </text>
  53. {{firstTwelveMonths.positiveOffsetAmount}}{{language['万']||'万'}}
  54. </view>
  55. </view>
  56. <view class="row">
  57. <view class="label">{{language['预计成交负偏差']||'预计成交负偏差'}}:</view>
  58. <view class="value">
  59. <text class="count">
  60. {{firstTwelveMonths.negativeCount}}{{language['个']||'个'}}
  61. </text>
  62. {{firstTwelveMonths.negativeOffsetAmount}}{{language['万']||'万'}}
  63. </view>
  64. </view>
  65. <view class="row">
  66. <view class="label">{{language['预计成交准确率']||'预计成交准确率'}}:</view>
  67. <view class="value">{{firstTwelveMonths.rightRate}}</view>
  68. </view>
  69. </view>
  70. <view class="box">
  71. <view class="row">
  72. <view class="label">{{language['项目成交金额合计']||'项目成交金额合计'}}:</view>
  73. <view class="value">{{firstTwelveMonths.dealAmount}}{{language['万']||'万'}}</view>
  74. </view>
  75. <view class="row">
  76. <view class="label">{{language['预计签约金额合计']||'预计签约金额合计'}}:</view>
  77. <view class="value">{{firstTwelveMonths.signAmount}}{{language['万']||'万'}}</view>
  78. </view>
  79. </view>
  80. <view style="height: 20rpx;" />
  81. </view>
  82. <view class="analysis" wx:if="{{isHY}}">
  83. <block wx:if="{{comingYear.length}}">
  84. <view class="title1">
  85. {{language['未来12月预计签约金额/预计成交金额分析']||'未来12月预计签约金额/预计成交金额分析'}}({{language['单位']||'单位'}}:{{language['万']||'万'}})
  86. </view>
  87. </block>
  88. </view>
  89. <view class="analysis" style="padding: 0;margin:0;" wx:if="{{isHY}}">
  90. <filtrate id='Filtrate' iconName='icon-xiangmujieduan' list='{{[]}}' title='项目阶段'
  91. bind:clickOpen='openProjectPhases' />
  92. <view style="padding-left: 40rpx;">
  93. <checkbox-group bindchange="onCheckboxChange1" style="display: flex; align-items: center;">
  94. <label style="font-size: 12px; display: flex; align-items: center;">
  95. <checkbox value="{{ComingYearUnfinish}}" style="transform: scale(0.7);" color="#296DEF" />
  96. {{language['包含失败、结案项目']||'包含失败、结案项目'}}
  97. </label>
  98. </checkbox-group>
  99. </view>
  100. <view class="barGraph">
  101. <ec-canvas id="barGraph" canvas-id="barGraph" ec="{{ ec }}"></ec-canvas>
  102. </view>
  103. </view>
  104. <view class="hy-project" wx:if="{{isHY}}">
  105. <view class="top-title">
  106. {{ pageMsg.signdate_due
  107. ?pageMsg.signdate_due+(language['月']||'月'):'全部'}}_{{language['预计成交项目']||'预计成交项目'}}({{list[0].sa_projectid?pageMsg.total:0}})
  108. </view>
  109. <view class="amount-row">
  110. <view>
  111. {{language['预计签约金额']||'预计签约金额'}}:{{pageMsg.sumsignamount_due }}{{language['万元']||'万元'}}
  112. </view>
  113. <view>
  114. {{language['预计成交金额']||'预计成交金额'}}:{{pageMsg.sumdealamount_due }}{{language['万元']||'万元'}}
  115. </view>
  116. </view>
  117. <block wx:if="{{list[0].sa_projectid}}">
  118. <navigator url="/packageA/project/detail?id={{item.sa_projectid}}" class="project-item" wx:for="{{list}}"
  119. wx:key="sa_projectid">
  120. <view class="chart">
  121. <view class="circle">
  122. <view class="circle_left ab" style="{{render.leftRate(item.progress)}}" />
  123. <view class="circle_right ab" style="{{render.rightRate(item.progress)}}" />
  124. <view class="circle_text">
  125. <text class="value">{{item.stage+'/'+item.totalstage}}</text>
  126. <text class="name">{{language['进展']||'阶段进度'}}</text>
  127. </view>
  128. </view>
  129. </view>
  130. <view class="main">
  131. <view class="label">
  132. <view class="title line-1">{{item.projectname}}</view>
  133. <view class="state"
  134. style="background-color: {{item.status == '跟进中' ? '#3874f6' : sColors[item.status]}};">
  135. {{language[item.status]||item.status}}
  136. </view>
  137. </view>
  138. <view class="tag-box">
  139. <view class="systemtag" wx:for="{{item.tag_sys}}" style="background-color: {{sColors[item]}};"
  140. wx:key="item">
  141. {{language[item]||item}}
  142. </view>
  143. <view class="datatag" wx:for="{{item.tag}}" style="background-color: {{sColors[item]}};"
  144. wx:key="item">
  145. {{language[item]||item}}
  146. </view>
  147. </view>
  148. <view class="replenish">
  149. <text style="color: #999;">{{language['项目编号']||'项目编号'}}:</text>
  150. <text>{{item.projectnum}}</text>
  151. </view>
  152. <view class="replenish">
  153. <text style="color: #666; flex-shrink: 0;">{{language['项目地址']||'项目地址'}}:</text><text
  154. style="width: 480rpx;">{{item.province?item.province+item.city+item.county+item.address:'--'}}</text>
  155. </view>
  156. <view class="replenish">
  157. <text style="color: #999;">{{language['预计签约金额']||'预计签约金额'}}:</text>
  158. <text style="color: #3874F6;">{{item.signamount_due}}</text>
  159. </view>
  160. <view class="replenish"><text style="color: #999;">{{language['项目成交金额']||'项目成交金额'}}:</text><text
  161. style="color: #FF3B30;">{{item.dealamount}}</text></view>
  162. <view class="replenish"><text
  163. style="color: #999;">{{language['项目类型']||'项目类型'}}:</text><text>{{language[item.projecttype_remarks]||item.projecttype_remarks}}</text>
  164. </view>
  165. <view class="replenish"><text
  166. style="color: #999;">{{language['负责人']||'负责人'}}:</text><text>{{item.reportby||'--'}}</text>
  167. </view>
  168. </view>
  169. </navigator>
  170. </block>
  171. <wxs module="render">
  172. module.exports = {
  173. rightRate: function(rate) {
  174. if (rate - 0 < 50) {
  175. return 'transform: rotate(' + 3.6 * (rate - 0) + 'deg);';
  176. } else {
  177. return 'transform: rotate(0);border-color: var(--assist);';
  178. }
  179. },
  180. leftRate: function(rate) {
  181. if (rate - 0 >= 50) {
  182. return 'transform: rotate(' + 3.6 * (rate - 50) + 'deg);';
  183. }
  184. }
  185. }
  186. </wxs>
  187. </view>
  188. <block wx:else>
  189. <view class="row-amount">
  190. <view>
  191. {{language['项目总计']||'项目总计'}}:{{statistics.length ? statistics[0].sequence1 : 0}}
  192. </view>
  193. <view>
  194. {{language['预计签约金额']||'预计签约金额'}}:{{statistics.length ? statistics[0].totalsignamount_due :
  195. 0}}{{language['万元']||'万元'}}
  196. </view>
  197. <view>
  198. {{language['项目成交金额']||'项目成交金额'}}:{{statistics.length ? statistics[0].totaldealamount :
  199. 0}}{{language['万元']||'万元'}}
  200. </view>
  201. </view>
  202. <view class="item" wx:for="{{statistics}}" wx:key="stagename">
  203. <view class="label">{{language[item.stagename]||item.stagename}}</view>
  204. <view class="row">
  205. <view>{{language['项目总数']||'项目总数'}}:{{item.sequence1}}</view>
  206. <view>{{language['当前项目数']||'当前项目数'}}:{{item.projectqty}}</view>
  207. </view>
  208. <view class="row">
  209. <view>
  210. {{language['预计签约金额']||'预计签约金额'}}:{{item.signamount_due}}{{language['万元']||'万元'}}
  211. </view>
  212. <view>
  213. {{language['项目成交金额']||'项目成交金额'}}:{{item.dealamount}}{{language['万元']||'万元'}}
  214. </view>
  215. </view>
  216. </view>
  217. </block>
  218. </Yl_ListBox>
  219. <Yl_Filtrate1 id="Yl_Filtrate1" show='{{showFiltrate}}' list="{{filtratelist}}" bindhandle="handleFilter">
  220. <organization slot='head' defaultIsleave='1' dimissionF id='organization' />
  221. </Yl_Filtrate1>
  222. <Yl_Filtrate1 show='{{projectPhasesShow}}' isReset='{{false}}' list="{{projectPhases}}" bindinterrupt='phasesInterrupt'
  223. bindhandle="phasesHandleFilter" />