很遗憾,分析整理了一下需求,最终还是没有接到这个项目,说是时间太紧张,但估计是嫌报价高,加加班应20天搞定,那样人要累坏了。把客户信息隐去,把其它信息连报价一起放出来吧,共勉。
这是一个给外国旅游局做的吸引中国旅客去他们国家旅游的网站,移动端优先的响应式布局,有提供线稿,原英文站可供参考,移动端靠脑补。外加一个管理后台,管理后台管理下内容,也不做 RBAC 权限系统。用户端主要为数据展示,管理后主要为数据管理,压缩压缩图片,表格,表单。
以下为正文,很遗憾,高亮部分未能显示为高亮样式。
-
这样高亮的的地方为需求不清楚的地方。
-
每页页顶上那个叫轮播的,会做成独立功能,如,你传一张,那就是静态图,你传多张,那就轮播,下面统一叫了轮播。
-
模块或页面最左侧数字为 方案 1 中预估最快工时,多少天,没写的是因为其它层级包含的其时间,均包含移动端 PC 端所有样式布局,还有对应的后端数据处理。你知道,实际工时为程序员估的2-3倍。
管理后台功能分析
后端的 starter kit 在使用 shadcn/ui 组件,开发过程中几乎不写样式。
-
仪表盘
-
1 页面轮播管理,只传了一个就会显示成单张图片,以下是每行记录,只修改,不增删
-
首页
-
目的地页
-
精彩体验页
-
行程攻略页
-
实用信息页
-
关于某某国家
-
404 页,让能换图片,若是多张,则每次随机放一个 :)
-
-
1 页面文案管理,特定位置的文章,以下是每行记录,只修改,不增删
-
喜欢某某国家的理由
-
天气与气候,文章?是每个区的天气气候信息?看布局可能要独立表放, 也或许可以挂到 区 上?
-
联系我们
-
-
0.5 大区管理,预填数据
-
目的地管理(文章),可标记为推荐,这个是 区 还是 区 的下一级目的地?因为用户端只有一个 “大区目的地详情”
-
古镇管理(文章),可标记为热门
-
-
0.5 精彩体验管理
-
精彩体验管理(文章)
-
精彩体验分类,固定几个,预填数据,可改图片与描述
-
-
0.5 行程攻略管理
-
行程攻略管理 (更多字段的景点图文)
-
精彩体验分类,固定几个,预填数据,可改图片与描述
-
-
1 实用信息管理
-
文章管理,以下是每行记录,只修改,不增删
-
中国游客免签、签证申请
-
机场
-
常用短语
-
医疗信息
-
-
交通管理
-
交通管理(文章)
-
分类,固定几个,预填数据
-
-
1 媒体库
-
微信文章,(图片 + 标题),关联到区,古镇
-
图库,(图片 + 标题 + 搜索标题),点击放大看
-
视频库,(图片 + 标题 + 搜索标题),点击用弹窗显示并播放
-
-
用户端功能分析
这样高亮的为有独立路由的页面
-
2 基础总局,页面内容:
-
移动端优先的响应式, 页顶多级菜单,数据排序做到数据库字段里
-
搜索表单
-
页脚
-
-
3 首页
-
页面内容:
-
轮播,
-
某某国家特色亮点 (特色与亮点两词是否重复?,features),管理后台管理图文
-
探索目的地,取 区(regions) 数据,加轮播,地图高亮,预填数据绘图,移动端将不显示右侧地图
-
精彩体验(experiences),数据驱动轮播, 预填数据
-
行程攻略,标记为推荐的,取最新6个,轮播
-
旅行灵感,标记为推荐的,取最新6个,轮播
-
实用信息,数据驱动,但仍为固定模块
-
-
-
1 目的地页
-
页面内容:
-
轮播
-
热门目的地,轮播 + svg 地图
-
热门城市古镇,轮播
-
-
1 大区目的地详情页
-
页面内容:
-
轮播
-
文章?还是各个区下面的目的地?
-
推荐行程,轮播,同区下最新6个
-
推荐体验,轮播,同区下最新6个
-
诞生灵感,轮播,同区下微信文章
-
-
-
0.5 城市古镇详情页,同上面大区目的地详情页
-
1 精彩体验页
-
页面内容:
-
轮播
-
分类的,固定 flex 布局样式
-
-
1 体验分类页,或叫 体验列表页
-
页面内容:
-
轮播
-
体验分类标签
-
体验文章卡片, 点击加载更多式分页
-
-
1 体验文章详情页
-
页面内容:
-
轮播
-
文章
-
猜你喜欢,随机推荐4个体验
-
-
-
1 行程攻略页
-
页面内容:
-
轮播
-
分类标签
-
行程卡片,数字式分页? 上面有个点击加载更多样的分类, 全局统一下?
-
-
1 攻略详情页
-
页面内容:
-
轮播
-
详情 (标题,元数据[时间,距离,难度,咦叫困难?)一个小描述,分景点的标题描述图片, 图片想要轮播不?那种一张就是一张图,多张就是轮播 :)
-
推荐行程,同分类下其它行程
-
-
-
-
2 实用信息页,即 中国游客免签、签证申请页, layout 顶为轮播,左为导航
-
中国游客免签、签证申请页,单文章,
-
交通页,3 类型 tab, 默认为国际交通页, tab 在 layout
-
国际交通页
-
大区交通
-
当地交通
-
-
机场页,单文章
-
常用短语页,单文章
-
医疗信息页,单文章
-
常见问题页,手风琴,多文章
-
-
1 关于某某国家页,即喜欢某某国家的理由页
-
喜欢某某国家的理由页,单文章
-
0.5 天气与气候页,这页到底是纯文章还是?要按这样3列布局做?
-
1 媒体库页,即微信精选页, 你看要不要把 图片、视频 分开,然后跟这个微信精选并列放在这里?不然又要图库、视频下面可又分两个 tab 哈哈哈。。。过多交互,duck 不必。
-
微信精选页,数据列表,分页样式统一不?
-
图库页,有搜索,分页样式统一不?
-
视频库页,有搜索,分页样式统一不?
-
-
联系我们页,单文章
-
-
1 搜索结果页
-
目的地,精彩体验,行程攻略为未知数量,布局需要再讨论
-
推荐布局:目的地,精彩体验,行程攻略 三项作为分类,一次搜索一类,在对应分类内分页加载
-
-
0.1 404 页
-
-
-
另外
-
页面应都有分享图,如页面被分享到微博等位置时,应有页面标题,页面描述,页面图片这些,开发侧会优先使用页面主体数据中的字段来放在这些位置。
-
有些页顶轮播位置文字是左对齐,有些中左右居中,这个是有意为之还是?要统一不?如统一左右居中,或统一左对齐。
-
页面要不要面包屑导航?要的话我就一起加上,这样方便用户浏览。
-
甲方还要做设计稿吗?可以不做吗?不做的话我参考参考现在的线稿与原始客户的英文站即可。硬要做的话可以不 100% 还原设计稿样式吗?因为要移动端优先的响应式,也要考虑元素间的距离,对齐,统一等各种因素。除非设计稿也考虑了移动端优先的响应式布局。
-
因为移动端也要靠这个英文站脑补布局。
开发流程
-
3+ 先根据需求准备基础框架,数据库迁移,假数据
-
7+ 再开始开发管理后台主要模块
-
20+ 再开发用户端,边开发边补全漏掉的数据库侧字段与管理后台字段
-
边开发边更新进度给甲方,有可以看的就发链接,让甲方同学可以用用试试,及时反馈
验收标准
-
功能齐全无 bug
-
流畅易用不恼火
交付内容
-
项目源码,带完整假数据,部分假数据实际为真实数据,测试完删除假数据时重置新跑 seeder 写入初始真数据
-
管理后台帐号。
-
技术实现视频讲解。
-
交付后,免费的一年期 bug 修复。
技术栈选择与报价
-
用户端为一个仓库,管理后台为一个仓库。
-
数据库为同一 PostgreSQL 数据库,若甲方更喜欢 MySQL 也行吧,开发前早早告知乙方。
-
工时即为合同交付时长,非仅工作日时长,程序员放什么假? 放什么假?不休息的,天天写代码。
-
付款请按4-5-1方式付款,即支付 40% 后开工,交付后 50%,运行一个月后支付 10%。
-
乙方无能力开票,付款请优先考虑支付到乙方提供的支付宝收款码。
方案 | 用户端,独立仓库 | 管理后台,独立仓库 | 优势 | 劣势 | 工时 | 报价 |
---|---|---|---|---|---|---|
方案1 | next.js + prisma 服务端直读数据库 | laravel 官方 react 版 starter kit | - 用户端 SEO 最优,性能最优; - 管理后台操作体验最优; - 前端全程 TypeScript 护航,bug 少; - 用户端纯前端开发; | - 用户端前端需要熟悉数据结构; - 管理后台 同样需要前后端共同开发; | 40人日 | 20k |
方案2 | next.js + http request 从 管理后台 laravel 项目取数据 | laravel 官方 react 版 starter kit | - 用户端 SEO 最优,性能较好; - 管理后台操作体验最优; - 前端全程 TypeScript 护航,bug 少; | - 用户端需要前后端共同开发; - 管理后台同样需要前后端共同开发; | 45人日 | 24k |
方案3 | laravel blade 模版渲染 php 数据 + jQuery + TailwindCSS + 少量 axios, axios 从用户端独立 laravel 项目后端 api 取数据 | 纯 laravel-admin | - 管理后台几乎纯 laravel 开发,后端狂喜; - 用户端 SEO 较好; | - 用户端页面跳转为整页刷新,慢,体验差; - 管理员端页面跳转为整页刷新,慢,体验差; - 用户端需要前后端共同开发; - 开发体验差,改一下都是整页刷新; - laravel-admin 无人维护超两年,难维修;仍在 php 里混入 html, js, css 字符串,特殊功能难以维护; - 用户端静态资源缓存,缓存清除等多项需手动处理,普通开发难处理好; - 用户端前端需熟悉 blade 模版数据渲染,有 js,需更多人力维护,性能与体验差于 next.js 的 ISR 功能; - 前端无 TypeScript,结构不明,bug 难修; - 用户端在部分交互量大的地方引入 react/vue,整体复杂度和代码量远高于其他方案; | 60人日 | 30k |
牛逼,我接活 就看需求方有没有需求文档,没需求文档做个毛线
【苦笑】我不敢对甲方要求太高。。。你看我连设计稿都不想要,做过他们一些项目,设计稿一言难尽。
没有需求文档怎么做,做出来的东西和对方的需求不一致怎么办?
因为之前做过一个,按设计稿做的,没有需求文档,参考线稿设计稿,然后就是需求讨论会的笔记,还有他们的客户的英文站参考。就够了。外国旅游局那些宣传旅游的网站没法直接加个语言给国内这边用,如地图你就不能用谷歌地图,得试试 mapbox 的或直接做成少量的 svg 图啥的。大差不差,无设计稿时只会更像 web 应用,有设计稿时,一切甲方认为奇怪的地方由他们跟设计争去,但设计不合理的地方我这边也更难写,我并不希望与设计争论。
60%留给验收 令人咋舌
一般大家是怎么个比例和时间呢?
本质上先让给钱再做事,最多25%留给尾款。签合同都没什么用更何况线上了, 全是君子协定。满意了再给源码,否则不要提交源码。尾款留的越多 越能卡你
做方案做这么详细再报价没必要,先报个价和日期,要做做,不做就拉倒了。方案人家也不懂
好
老哥每个项目都是这样整理的?你这相当于把整个项目的思路都理好了,然后客户拿着你的方案再去问其他人,其他人都省了需求整理的步骤,直接报个低价,那就没得搞的了啊
欸,没办法,挣钱难呐~
国外的话,方案1挺不错的。一天算多少费用
是的, 可惜甲方也要考虑他们公司的员工会的东西。 他们主要还是希望管理后台用 laravel-admin. 他们前端也不太会 Next.js, 说是更喜欢 laravel blade 模版,但那样我这边开发起来略微不开心, 交互多的地方老要单独引 js,初始化 Vue 或 React 然后做交互,乱乱的。 一天按 1k 算,前期加班加点干,不休假,因为他们有人来测试(我考虑得方方面面的,很少有 bug 【狗头】), 预计 30 天内能完全做完整,但不保不定他们又加功能,而我又不好意思拒绝。
嚯,写的时候预览看到表格有边框,发布后表格没了边框。