Android课设报告私厨暮小晨

近些年,美团外卖、饿了么等一些订餐软件席卷而来,订餐似乎成为了人们解决吃饭问题的最重要途径。但是当消费者在不熟悉地区时,订餐的弊端就凸显了出来,消费者难以寻找适合自己的餐馆、还是必须要进入到实体的饭店内点餐,这时,订餐软件就如同一个不太美观的图标用着庞大的内存资料却无用武之地。

二、课设题目

用例分析说明

添加信息:在我的菜谱页面,用户需要添加菜谱名、菜谱详情,这些数据会被存储到SQLite数据库中

查询信息:在我的菜谱页面,用户可以输入菜谱名查询菜谱,这些数据会从数据库中调取出来

删除信息:在我的菜谱页面,用户可以删除已添加的菜谱信息,这些数据会从数据库中删除

三、系统设计

名称

数据类型

长度

约束

id

INTEGER

PRIMARYKEYAUTOINCREMENT

name

VARCHAR

20

Details

Name

1

龙须面

1.和面。面软适度,搋揉光滑、柔韧;

2.溜条、抻条。抓面两头,均匀用力,上下抖动。交叉换位,反复交叉,把面溜“熟”、溜顺;长条上案,两手按条,左手向里、右手向外,搓条上劲,提起两头,一抖一抻,再上案板,对折两根、撒上醭面,条不粘连,以此...

3.油炸。要注意油温不要高、操作要“三轻”即将抻好的面丝轻放油锅,用筷子轻拨面丝,炸至硬挺,呈浅乳黄色,轻捞出锅,制咸的龙须面。面丝均匀,不并条,不断条,香甜脆爽。

2

饺子

1.一般饺1号做法:1.饺子皮摊平放在桌上2.将馅料放入3.将两边的饺子皮从中间捏紧4.两边再捏好即可。

2.一般饺2号做法:1.将饺子皮摊平,放入馅料2.对折,不要黏在一块,用手托着3.然后顺着一边捏出皱纹4.一直到捏好为止。

3.波波饺做法:1.将饺子皮摊平,放入馅料2.将饺子两边对折,按好3.用刮板将饺子压出波纹(还有一种是手压,但刮板更方便一些)4.压好的饺子。

4.蛤蜊饺做法:1.将饺子皮摊平,放入馅料2.将两边的皮对折,并向中间靠拢3.再将两边捏紧了4.再捏成波纹这个饺子花纹的捏法在这里。

5.马蹄饺:做法:1.将饺子皮摊平,放入馅料2.将两边捏好3.将饺子两边弯曲后,向中间靠拢4.再捏紧即可。

3

胡辣汤

起锅烧油放入肉丝翻炒1分钟,再放入酱油和海带翻炒出香味,之后加水烧开,放入千张丝和盐搅拌均匀。最后等锅内再次烧开后,加入调至好的生粉水和蛋液搅拌烧开,倒入盘内撒上葱花和香油,一份美味的胡辣汤就做好了。

编号

输入

处理

输出

账号和密码

与设定值相等

登陆成功进入首页

与设定值不等

登陆失败

首页查看详情

跳转到详情页面

显示详情页面

首页模块:主要用到ImageView组件,LieanerLayout布局嵌套实现词条与底部导航,这一部分是实现点击按钮跳转到对应的页面的功能

我的菜谱模块:使用了SQLite数据库,实现了用户对信息的添加、查询、修改、删除的功能,同时通过Listview显示用户信息时

菜谱详情模块:实现了Activity之间的跳转,显示了菜谱的具体实现步骤

四、系统测试

本次课程设计所用的开发环境为:eclipse

开发技术:Android

数据库:SQLite数据库

添加信息后显示“添加成功”

删除信息,显示“已删除”

AndroidManifest.xml

package="com.example.sichu"

android:versionCode="1"

android:versionName="1.0">

android:minSdkVersion="8"

android:targetSdkVersion="18"/>

android:allowBackup="true"

android:icon="@drawable/ic_launcher"

android:label="@string/app_name"

android:theme="@style/AppTheme">

android:name="com.example.sichu.login"

android:label="@string/login_name">

android:name="com.example.sichu.MainActivity"

android:label="@string/app_name">

android:name="com.example.sichu.upload"

android:label="@string/app_name">

android:name="com.example.sichu.MyActiviity"

btn_shape

//定义一个样式,实现按钮圆角

android:shape="rectangle">

android:color="#eeeeee"/>

android:bottom="3dp"

android:left="3dp"

android:right="3dp"

android:top="3dp"/>

代码:

//相对布局

android:layout_width="match_parent"

android:layout_height="match_parent"

android:paddingBottom="@dimen/activity_vertical_margin"

android:paddingLeft="@dimen/activity_horizontal_margin"

android:paddingRight="@dimen/activity_horizontal_margin"

android:paddingTop="@dimen/activity_vertical_margin"

android:background="@drawable/login">

android:id="@+id/login_icon"

android:src="@drawable/icon"

android:layout_height="70dp"

android:layout_width="70dp"

android:layout_marginTop="100dp"

android:layout_marginLeft="140dp"/>

android:id="@+id/login_et"

android:layout_height="wrap_content"

android:layout_marginTop="190dp"

android:editable="true"

android:hint="请输入账号"/>

android:id="@+id/login_ps"

android:layout_marginTop="250dp"

android:hint="请输入密码"

android:password="true"/>

android:id="@+id/login_bt"

android:layout_width="200dp"

android:layout_height="50dp"

android:layout_marginTop="320dp"

android:background="@drawable/btn_shape"

android:layout_marginLeft="80dp"

android:text="登录"

android:textColor="#ffa54f"

android:textSize="15dp"

/>

2.首页

tools:context=".MainActivity">

android:id="@+id/index_image"

android:layout_height="190dp"

android:layout_below="@+id/tab_title"

android:src="@drawable/index"

android:padding="0dp"

android:layout_margin="0dp"/>

android:id="@+id/wodecaipu"

android:layout_height="35dp"

android:layout_below="@+id/index_image"

android:text="我的传家菜谱"

android:gravity="center"

android:textColor="#ffa54f"/>

android:layout_height="1dp"

android:layout_below="@+id/wodecaipu"

android:background="#eeeeee"/>

android:id="@+id/show"

android:layout_height="80dp"

android:orientation="horizontal"

android:layout_below="@+id/wodecaipu">

android:id="@+id/index_img"

android:layout_width="0dp"

android:layout_height="110dp"

android:layout_weight="2"

android:src="@drawable/ganguo"/>

android:id="@+id/index_tv"

android:layout_width="wrap_content"

android:text="干锅土豆"

android:layout_marginTop="30dp"

android:textSize="22sp"

android:ems="4"

android:layout_weight="3"

/>

android:id="@+id/index_btn"

android:layout_height="30dp"

android:text="查看详情"

android:layout_marginLeft="240dp"

android:layout_below="@+id/show"

android:textSize="10dp"

android:background="@drawable/btn_shape"/>

android:layout_below="@+id/index_btn"

android:layout_height="56dp"

android:layout_alignParentBottom="true">

android:id="@+id/txt_index"

android:layout_weight="1"

android:background="#ffffff"

android:drawablePadding="3dp"

android:text="首页"/>

android:id="@+id/txt_my"

android:textColor="#111111"

android:text="我的菜谱"/>

3.菜谱详情

android:orientation="vertical">

android:id="@+id/upload_null"

android:text="返回"

android:layout_margin="10dp"

android:textSize="20sp"

android:id="@+id/upload_img"

android:layout_width="230dp"

android:layout_height="150dp"

android:layout_gravity="center"

android:text="烹饪步骤"

android:textStyle="bold"/>

android:text="1.把所有的菜洗净用水抄一下沥干水分"

android:textColor="#778899"/>

android:text="2.锅里放油最好多放一些,将喜欢吃的菜倒入锅中加少许水加入豆瓣酱多次翻抄"

android:text="小贴士"

android:text="放入自己喜欢的蔬菜即可没有多大讲究自己喜欢吃什么就放什么"

4.我的菜谱

android:orientation="vertical"

android:layout_marginTop="5dp">

android:layout_height="100dp"

android:orientation="horizontal">

android:layout_margin="5dp"

android:src="@drawable/head_icon"/>

android:layout_height="90dp"

android:text="暮小晨"

android:text="我的菜谱管理"

android:id="@+id/et_name"

android:hint="请输入菜谱名"/>

android:id="@+id/et_details"

android:hint="请输入步骤"/>

android:id="@+id/sql_layout"

android:id="@+id/btn_add"

android:text="添加"/>

android:id="@+id/btn_query"

android:text="查询"/>

android:id="@+id/btn_delect"

android:text="删除"/>

android:id="@+id/lvshow"

android:layout_height="145dp"/>

android:id="@+id/tab_menu"

android:layout_marginTop="180dp">

5.itemListView内容填充

android:id="@+id/itemName"

android:layout_marginLeft="10dp"

android:textSize="18sp"

android:textColor="#444444"

android:textStyle="bold"

android:ems="10"/>

android:id="@+id/itemContent"

android:maxLines="1"

android:ellipsize="end"

一、课设题目

二、技术说明

1.Activity之间的跳转

引用Intent类,实现Activity之间的跳转以及数据的传递与回传

2.Sqlite数据库

导入SQLiteDatabase,SQLiteOpenHelper包,调用安卓内嵌数据库进行数据传递,实现数据的添加,查询,修改,删除功能

3.控件的使用

Textview、Button、Edittext、ImageView、Listview

4.Listview的使用

在使用ListView进行添加数据时,会用到数据适配器,用来搭建数据与视图之间的桥梁,将复杂的数据转换成用户可以接受的方式进行呈现

5.事件的监听

SetOnClickListener()方法监听事件,多用在跳转时

6.页面布局

使用线性布局(LinearLayout)、相对布局(RelativeLayout)

7.Toast弹窗

三、UML类图

四、代码

清单文件(即AndroidManifest.xml)

//设置初始界面

布局文件:

2.Java文件

Java源码

Caipiadapter.java文件设置适配器

//设置listview

packageadapter;

importjava.util.List;

importorg.eclipse.jdt.annotation.NonNull;

importorg.eclipse.jdt.annotation.Nullable;

importcom.example.sichu.R;

importentity.caipu;

importandroid.content.Context;

importandroid.util.Log;

importandroid.view.LayoutInflater;

importandroid.view.View;

importandroid.view.ViewGroup;

importandroid.widget.ArrayAdapter;

importandroid.widget.BaseAdapter;

importandroid.widget.ImageView;

importandroid.widget.TextView;

publicclasscaipiadapterextendsBaseAdapter{

privateListlist;

privateLayoutInflaterlayoutInflater;

publiccaipiadapter(Contextcontext,Listlist){

this.layoutInflater=LayoutInflater.from(context);

this.list=list;

}

@Override

publicintgetCount(){

Log.e("yanwenhua","list.size()--"+list.size());

returnlist.size();

publicObjectgetItem(intposition){

returnnull;

publiclonggetItemId(intposition){

return0;

publicViewgetView(intposition,ViewconvertView,ViewGroupparent){

ViewHolderviewHolder;

if(convertView==null){

convertView=layoutInflater.inflate(R.layout.item,null);

viewHolder=newViewHolder(convertView);

convertView.setTag(viewHolder);

}else{

viewHolder=(ViewHolder)convertView.getTag();

caipucaipu=list.get(position);

viewHolder.tv_name.setText("菜谱:"+caipu.getConName());

viewHolder.tv_details.setText("菜谱详情:"+caipu.getCondetails());

Log.e("yanwenhua","cartBean.getName()-"+caipu.getConName()+""+caipu.getCondetails()+"");

returnconvertView;

classViewHolder{

TextViewtv_name;

TextViewtv_details;

publicViewHolder(Viewview){

tv_name=(TextView)view.findViewById(R.id.itemName);

tv_details=(TextView)view.findViewById(R.id.itemContent);

Caipu.java//设置实体类,用于数据的获取与传递

packageentity;

publicclasscaipu{

privateIntegerconId;

privateStringconName;

privateStringcondetails;

publiccaipu(IntegerconId,StringconName,Stringcondetails){

super();

this.conId=conId;

this.conName=conName;

this.condetails=condetails;

publiccaipu(){

//TODOAuto-generatedconstructorstub

publicIntegergetConId(){

returnconId;

publicvoidsetConId(IntegerconId){

publicStringgetConName(){

returnconName;

publicvoidsetConName(StringconName){

publicStringgetCondetails(){

returncondetails;

publicvoidsetCondetails(Stringcondetails){

packagecom.example.sichu;

importandroid.app.Activity;

importandroid.content.Intent;

importandroid.os.Bundle;

importandroid.widget.Button;

importandroid.widget.EditText;

importandroid.widget.Toast;

publicclassloginextendsActivity{

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_login);

ButtonLogin=(Button)findViewById(R.id.login_bt);

Login.setOnClickListener(newView.OnClickListener(){

publicvoidonClick(Viewview){

//TODOAuto-generatedmethodstub

EditTextadmin=(EditText)findViewById(R.id.login_et);

EditTextpassword=(EditText)findViewById(R.id.login_ps);

Stringadmin1=admin.getText().toString().trim();

Stringpassword1=password.getText().toString().trim();

if("123456".equals(admin1)&&"123".equals(password1)){

Intentintent=newIntent(login.this,MainActivity.class);

startActivity(intent);

});

//Intentintent=newIntent(login.this,MainActivity.class);

//startActivity(intent);

//}

//});

//ButtonLogin=(Button)findViewById(R.id.login_bt);

//Login.setOnClickListener(newView.OnClickListener(){

//TextViewtextView;

//@Override

//publicvoidonClick(Viewview){

MainActivity.java//对应主页

importjava.util.ArrayList;

importadapter.caipiadapter;

importandroid.view.Menu;

importandroid.widget.ListView;

publicclassMainActivityextendsActivity{

setContentView(R.layout.activity_main);

TextViewmy=(TextView)findViewById(R.id.txt_my);

my.setOnClickListener(newView.OnClickListener(){

Intentintent=newIntent(MainActivity.this,MyActiviity.class);

Buttonbtn=(Button)findViewById(R.id.index_btn);

btn.setOnClickListener(newView.OnClickListener(){

Intentintent=newIntent(MainActivity.this,upload.class);

MyActiviity.java//对应我的菜谱页

importandroid.content.ContentValues;

importandroid.database.Cursor;

importandroid.database.sqlite.SQLiteDatabase;

publicclassMyActiviityextendsActivityimplementsView.OnClickListener{

privateListconsList=newArrayList();

MyHelperhelper;

privateEditTextet_name,et_details;

privateListViewlistView;

privateStringname,details;

privateSQLiteDatabasedb;

setContentView(R.layout.my);

et_name=(EditText)findViewById(R.id.et_name);

et_details=(EditText)findViewById(R.id.et_details);

listView=(ListView)findViewById(R.id.lvshow);

Buttonadd=(Button)findViewById(R.id.btn_add);

Buttonquery=(Button)findViewById(R.id.btn_query);

Buttondelete=(Button)findViewById(R.id.btn_delect);

add.setOnClickListener(this);

query.setOnClickListener(this);

delete.setOnClickListener(this);

helper=newMyHelper(this);

TextViewmy=(TextView)findViewById(R.id.txt_index);

Intentintent=newIntent(MyActiviity.this,MainActivity.class);

publicvoidonClick(Viewv){

switch(v.getId()){

caseR.id.btn_add:

db=helper.getWritableDatabase();

name=et_name.getText().toString();

details=et_details.getText().toString();

ContentValuesvalues=newContentValues();//创建ContentValues对象

values.put("name",name);//将数据添加到ContentValues对象

values.put("details",details);

db.insert("info",null,values);

db.close();

Toast.makeText(this,"菜谱已添加",Toast.LENGTH_SHORT).show();

break;

caseR.id.btn_query:

Log.e("yanwenhua","123");

Listlist=newArrayList();

Cursorcursor=db.query("info",null,null,null,null,

null,null);

if(cursor.getCount()==0){

Toast.makeText(this,"还没有编辑无法查看",Toast.LENGTH_SHORT).show();

while(cursor.moveToNext()){

caipucaipu=newcaipu();

intnameIndex=cursor.getColumnIndex("name");

intdetailsIndex=cursor.getColumnIndex("details");

Stringname=cursor.getString(nameIndex);

Stringdetails=cursor.getString(detailsIndex);

Log.e("yanwenhua","cursor.getCount();--"+cursor.getCount()+"name-"+name+""+details+"");

caipu.setConName(name);

caipu.setCondetails(details);

list.add(caipu);

caipiadapteradapter=newcaipiadapter(MyActiviity.this,list);

listView.setAdapter(adapter);

adapter.notifyDataSetChanged();

cursor.close();

caseR.id.btn_delect:

db.delete("info",null,null);

Listlist2=newArrayList();

caipiadapteradapter=newcaipiadapter(MyActiviity.this,list2);

Toast.makeText(this,"菜谱已删除",Toast.LENGTH_SHORT).show();

Upload.java//对应菜谱详情页

publicclassuploadextendsActivity{

setContentView(R.layout.upload);

TextViewcanel=(TextView)findViewById(R.id.upload_null);

canel.setOnClickListener(newView.OnClickListener(){

Intentintent=newIntent(upload.this,MainActivity.class);

MyHelper.java//SQLite数据库实现

importandroid.database.sqlite.SQLiteOpenHelper;

publicclassMyHelperextendsSQLiteOpenHelper{

privateSQLiteDatabasesqLiteDatabase;

publicMyHelper(Contextcontext){

super(context,"caipu.db",null,1);

sqLiteDatabase=this.getWritableDatabase();

publicvoidonCreate(SQLiteDatabasedb){

db.execSQL("createtableinfo(idintegerprimarykeyautoincrement,namevarchar(20),detailsvarchar(300))");

publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){}

类说明

Caipiadapter.java——定义适配器

Caipu.java——封装实体类对象

MainActivity.class——设置首页

MyActiviity.java——设置我的菜谱页面

upload.java——设置菜谱详情页面

MyHelper.java——SQLite数据库的定义以及数据表、字段及类型的创建

THE END
1.菜谱设计模板下载菜谱设计模板高清图片大全熊猫办公精心为用户挑选86张高清精美菜谱图片、支持专业级菜谱设计素材下载,更多风格的菜谱,免抠元素,卡通手绘素材图片、图标图案、免抠矢量图,尽在熊猫办公。https://www.tukuppt.com/speciall/caipu7741.html
2.中国风菜谱图片中国风菜谱设计素材红动中国素材网提供714个中国风菜谱图片、中国风菜谱素材、中国风菜谱背景、中国风菜谱模板、中国风菜谱海报等PS素材下载,包含PSD、AI、PNG、JPG、CDR等格式源文件素材,更多精品中国风菜谱设计素材下载,就来红动中国,最后更新于2024-12-05 15:23:48。https://so.redocn.com/zhongguo/d6d0b9fab7e7b2cbc6d720.htm
3.菜谱设计菜谱设计图片菜谱设计模板觅知网为您找到526个原创菜谱设计图片,包括菜谱设计图片,菜谱设计素材,菜谱设计海报,菜谱设计背景,菜谱设计模板源文件下载服务,包含PSD、PNG、JPG、AI、CDR等格式素材,更多关于菜谱设计素材、图片、海报、背景、插画、配图、矢量、UI、PS、免抠,模板、艺术字、PPT、https://www.51miz.com/so-sucai/149988.html
4.菜谱设计图片菜谱设计素材菜谱设计模板免费下载六图网为您提供2247035张菜谱设计设计作品免费下载服务,您还可以找到菜谱设计图片、菜谱设计素材、菜谱设计模板等设计素材,我们为您提供菜谱设计图片下载,菜谱设计模板下载、菜谱设计素材下载等服务!https://m.16pic.com/sucai/11081.html?from=singlemessage
5.菜谱设计素材网站图片免费下载菜谱设计制作 设计菜谱 菜谱设计公司 菜谱设计制作公司 捷达菜谱设计公司 捷达菜谱设计制作 菜单菜谱设计 美食摄影菜谱设计 美食摄影菜谱设计 美食摄影菜谱设计 中餐菜谱设计 餐厅菜谱设计 酒店菜谱设计 酒店菜谱设计 菜谱设计美食摄影 菜谱设计美食摄影 设计制作菜谱 菜谱菜单设计 酒楼菜谱设计 专业菜谱设计制作 成都菜谱设计https://www.zcool.com.cn/tag/ZNzI0ODA=.html
6.菜谱菜单设计图片免费下载菜谱菜单设计素材菜谱菜单设计模板千图网为您找到3623张菜谱菜单设计相关素材,千图网还提供菜谱菜单设计图片,菜谱菜单设计素材, 菜谱菜单设计模板等免费下载服务,千图网是国内专业创意营销服务交易平台,一站式解决企业营销数字化、协同化,实现营销转化效果增长!https://www.58pic.com/tupian/caipucaidansheji.html
7.毕业设计(论文)Springboot智能菜谱推荐系统设计与实现.docx近些年来,随着科技的飞速发展,互联网的普及逐渐延伸到各行各业中,给人们生活带来了十分的便利,智能菜谱推荐系统利用计算机网络实现信息化管理,使整个智能菜谱推荐管理的发展和服务水平有显著提升。 本文拟采用java技术和Springboot搭建系统框架,后台使用MySQL数据库进行信息管理,设计开发的智能菜谱推荐系统。通过调研和分析,https://m.book118.com/html/2024/0407/7024035162006062.shtm
8.中文版InDesignCS6技术大全第17章 菜谱设计——图片的编辑 17.1 酒楼的菜谱设计 822 17.1.1 移动并缩放对象 823 17.1.2 对齐并分布对象 828 17.2 休闲酒吧的菜谱设计 830 17.2.1 剪切路径的处理 831 17.2.2 图像效果的设置 834 17.2.3 知识拓展 836 模版欣赏 837 第18章 图书版面设计——版式的构成 https://www.epubit.com/bookDetails?id=N26644
9.美食菜谱类APP界面设计4、首页页面设计 5、分类页面 6、详情页设计 7、购物页面 8、产品详情页 这款美食菜谱类不仅有各种菜谱的制作方法,而且内部还增加了购物商城功能。整个APP界面设计非常干净简洁。 上海艾艺是一家专业的APP开发设计公司,提供APP开发、UI设计、微信开发等服务,如果您需要对APP进行UI设计,欢迎咨询。https://www.adinnet.cn/bloginfo/2018_05/blog_3721.html
10.仿香哈菜谱界面设计微信小程序源码在该小程序的公共设置app.json文件配置页面路径以及配置窗口表现 5.在该小程序的公共设置app.json文件的导航标签tabBar下分别设置5个导航,并设置导航栏属性 6.“学做菜”界面中海报轮播的图片,在微信小程序里有专门的swiper滑块视图组件来实现这个效果,并且在swiper滑块视图组件里有一个搜索框 7.宫格导航有菜谱分类https://download.csdn.net/download/qq_36004487/11594864
11.横沥菜牌印刷,桥头菜谱设计,平惠,东坑酒水单印刷,常平点菜单我们销售:横沥点菜牌印刷,桥头菜表设计,平惠,东坑餐馆资料印刷,常平点菜单,,优质质量,超低价格·送货上门,在线QQ:1059102333,手机1355 333 2521于小姐,本公司主要承揽:各类纸质印刷、丝网印刷、防伪印刷、无碳复写、数码印刷、彩色复印、不干胶印刷、无伪布印刷、包装印刷、纸杯、纸抽、广告设计、LED显示屏、闪动灯https://m.makepolo.com/product/100230486837.html
12.北京华夏菜谱有限公司:北京做菜谱,菜谱设计,菜谱制作北京华夏彩印公司经工商局正式注册,是一家专业致力于酒店印刷品加工,配送,服务于一体的企业,北京华夏菜谱有限公司自开业十年以来,致力于餐饮行业设计菜谱制作、产品摄影、宣传页、优惠券、酒水牌等各类印刷品的设计制作。 菜谱制作既是艺术品又是宣传品;能让客人得到视觉、味觉、嗅觉、胃觉上的满足,菜谱制作无疑是https://beijing0761292.11467.com/
13.菜谱册菜谱设计菜谱制作菜谱印刷数百种精美餐厅酒店菜谱模板,马上让您看到实时效果! 选菜图 两百万张高清菜图,可按菜名搜索,总有适合你的菜! 选装订 高中低档,各个价位的都有,皮的封面可以印餐馆标志和名字 高效快捷 明码标价,送货上门 不用出门,轻松搞定 精选菜谱设计模板 高清菜图 https://www.caipuce.com/
14.菜谱印刷制作菜谱设计制作菜谱策划专业菜品摄影西安普智广告文化传播有限公司(https://xalycp.gys.cn)主营产品包括菜谱印刷制作、菜谱设计制作、菜谱策划、专业菜品摄影等,西安普智广告文化传播有限公司负责人崔先生,西安普智广告文化传播有限公司希望能与您成为合作伙伴http://xalycp.cn.china.cn/
15.蚂蚁族菜谱设计/菜单设计/美食摄影公司/深圳高档菜牌设计深圳蚂蚁族创立于2011年,是专业服务餐饮行业的设计策划公司。为餐饮品牌提供品牌全案,VI设计,视频拍摄,美食摄影,菜单设计,物料设计,年度战略服务。http://www.mayiant.com/
16.伙食给养管理系统(物资出入库库存财务报表管理智能电子秤一体菜肴是菜谱计划的基础,所有菜谱计划都是围绕合理营养进行展开的。当菜肴的种类 和营养结构确定以后,给养员就可以根据营养需求总量进行食谱计划的制作和调配 食谱发布流程的设计与开发 操作信息留痕 1.3 食谱计划审核 待审核的食谱计划:食谱制作者提交的待后勤管理人员进行审批的食谱计划。 审核通过的食谱计划:后勤管http://www.bjvvv.com/P0001/product.asp
17.vuespringboot+nodejs厨房达人美食菜谱分享系统与安卓,iOS相比较起来,厨房达人美食分享平台在流畅性,续航能力,等方方面面都有着很大的优势。这就意味着厨房达人美食分享平台的设计可以比其他系统更为出色的能力,可以更高效的完成最新的菜谱信息、菜谱笔记、美食资讯等功能。 此系统设计主要采用的是nodejs语言来进行开发,采用vue框架技术,框架分为三层,分别是控制层https://www.jianshu.com/p/6f3004babb3f
18.淄博快印,淄博菜谱,淄博台历,淄博标书淄博和乐图文设计有限公司,淄博在线自助设计系统,淄博快印,淄博菜谱,淄博台历,淄博印刷,淄博相册,和乐快印,淄博数码印刷,淄博个性DIY设计http://www.zbhola.com/
19.做菜不用再问妈:这7个App换着用,让你从厨房小白变大厨一款设计精美的菜谱 app,推荐大都为异域美食,可以拓展自己美食边界。内置主题菜谱不仅能让人学会怎么做饭,还能教会你为什么要这么做。每个菜谱明确标记了烹饪时间和每份所含营养值,若为烘焙菜谱还会给出静置时间作为参考。在食材方面可以选择为几个人做饭,并根据人数来确定食材的多少。所有菜谱食材均可一键加入购物单,买菜https://36kr.com/p/1390010704837635