当前位置:   article > 正文

【EmoGenius Crew —— Sprint Essay 1】

【EmoGenius Crew —— Sprint Essay 1】

EmoGenius Crew —— Sprint Essay 1

Which course does this assignment belong to2301-MUSE Community
Assignment RequirementTeamwork——Alpha Sprint
Team nameEmoGenius Crew
The goal of this assignmentSprint Essay 1.
Topical Collection EssayEmoGenius Crew - Alpha SprintTopical Collection of Essays

Ⅰ. Summary of team member meeting

Yifan Wang

Project Progress:

  1. Complete the connection between the front end and the front end of the login and registration module: successfully realize the basic functions such as login, registration, and password remembering; The docking was successful, and complete front and back end interaction has now been achieved
  2. Complete the portrait recognition function of the login and registration module: take pictures with the mobile phone camera, and successfully convert the photos into Base64 encoding and JSON data format to communicate with the back-end server; The connection is successful, and the portrait recognition function has been realized
  3. Complete the connection between the front end and the front end of the personal information module: successfully modify and save the personal information (nickname, signature, gender, age, profile picture) and automatically obtain and cache when logging in; The docking was successful, and complete front and back end interaction has now been achieved.

Existing problems

When planning the emotional diary module and emotional forum module, the thinking is somewhat unclear

Today’s arrangement

Android front-end development and front - and back-end communication.

Experience

I’m really good, I’m really good, I’m really, really, really good.

Latest Running Images

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Guohua Wu

Project Progress

Agreed and determined the technology selection and database design, determined the use of http protocol, Spring framework and MySQL database. Implement the account password login function in the account related interface.
Part of the code display:

package com.example.project_ee297.DAO;

import com.example.project_ee297.Model.User;
import org.apache.ibatis.annotations.*;

@Mapper
public interface UserDAO {

    @Insert("INSERT INTO user (username, password,nickName,age,gender,headPortraitBase64Code,userIdiograph) VALUES (#{username}, #{password}, #{nickName}, #{age}, #{gender}, #{headPortraitBase64Code},#{userIdiograph})")
    int add(User user);

    @Update("UPDATE user SET  password = #{password}, nickName = #{nickName} ,userIdiograph=#{userIdiograph}, age =#{age}, gender=#{gender} WHERE id = #{id}")
    int update(User user);

    @Update("UPDATE user SET headPortraitBase64Code = #{headPortraitBase64Code} WHERE id = #{id}")
    int updateImg(User user);

    @Select("SELECT * FROM user WHERE id = #{id}")
    User getById(Integer id);

    @Select("SELECT * FROM user WHERE username = #{username}")
    User getByUsername(String username);


}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

Existing problems

Dock with the front end, use the Jakarta. Servlet. HTTP. This bag method, the HttpSession user always can not be assigned in the session, and then failed to judge whether the user to modify the information to the logged in user.

Today’s arrangement

The login requirements of the account password in the account related interface are completed.

Experience

In the task promotion within the database and server group, it is necessary to determine the technology selection and database design in order to better promote the task.

Latest Running Images

在这里插入图片描述

Yuhao Lu

Project Progress

The technical selection and database design were discussed and determined, and the use of http protocol, Spring framework and MySQL database was determined. The code of the account password login part in the account related interface is tested, debugged, modified and standardized.

Existing problems

When writing the database, the request from the front end cannot be accepted normally.

Today’s arrangement

Debug and dock user login code, and write all database and server-related documents.

Experience

During the debugging process, it was found that the data types when sending the request and receiving the request did not match, and the unified data type was unified as string, and then the problem was solved.

Xindan Zhang

Project Progress

Complete the UI design code of the main interface of the diary, and realize the bold and underline functions of the rich text editor.

Existing problems

The diary history interface is not yet coded, and the rich text editor display is often buggy, requiring a computer reboot. The rich text editor is a separate module and has not been merged.

Today’s arrangement

Continue to complete the remaining UI deployment, improve the rich text editor image addition and other functions.

Experience

remain patient

Latest Running Images

在这里插入图片描述
在这里插入图片描述

Binyue Zheng

Project Progress

Download and install Android Studio, learn the basic syntax of page design in Android Studio, and complete the preliminary design of the main page (upload the code activity_home.xml).

Existing problems

Virtual machines run slowly, and attempts to write code often have errors, which is not easy to achieve the expected design effect.

Today’s arrangement

The Android Studio sample code works correctly and learn the basics related to the project.

Experience

When you encounter difficulties, you should try multiple solutions. The aesthetic and ease-of-use of design goals require a lot of effort.

Latest Running Images

Just studying, no results.

Tianjun Shi

Project Progress

Improved the forum’s like function, and added click events for each component.

  public void addmsg(List<String> userAccountList1, List<String> contentList1, List<String> createdAtList1){

        for(int i=0;i<userAccountList1.size();i++){
            NotebookBean notebookBean = new NotebookBean();
            notebookBean.setContent(contentList1.get(i));
            String temp=createdAtList1.get(i);
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
            try {
                if(!temp.equals("null")){
                // 将字符串解析为 Date 对象
                Date date = sdf.parse(temp);
                // 获取毫秒表示的时间
                long millis = date.getTime();
                notebookBean.setEditTime(millis);
                }
                else{
                    notebookBean.setEditTime(System.currentTimeMillis());
                }
            }  catch (ParseException e) {
                throw new RuntimeException(e);
            }
            NotebookBean.setNumber(userAccountList1.size());
            notebookBean.setUsername(userAccountList1.get(i));

            mDBManager.insertNotebook(notebookBean);
            setResult(RESULT_OK);
        }

    }

    private void getNotebookList() {
        mNotebookList.clear();
        mNotebookList.addAll(mDBManager.selectNotebookList());
        mAdapter.notifyDataSetChanged();
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        Log.i("FourmMainAC","destroy suc");
        // 在销毁 Activity 时调用 mDBManager.deleteAllNotebooks()
        mDBManager.deleteAllNotebooks();
    }

    private void initView() {
        recyclerView = findViewById(R.id.recycler_view);
        btnAdd = findViewById(R.id.btn_add);
        btnAdd.setOnClickListener(this);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == REQUEST_CODE && resultCode == RESULT_OK){
            Log.i("rest","res");
            getNotebookList();
        }

    }
    private void initRecyclerView() {
        mNotebookList = new ArrayList<>();
        mAdapter = new NotebookAdapter(mNotebookList);
        mAdapter.setOnDeleteButtonClickListener(this);
        recyclerView.setLayoutManager(new LinearLayoutManager(this));
        recyclerView.setAdapter(mAdapter);
    }

    @Override
    public void onClick(View view) {
        if (view.getId() == R.id.btn_add) {
            Intent intent = new Intent(FourmmainActivity.this, AddNotebookActivity.class);
            intent.putExtra("isAdd", true);
            startActivityForResult(intent, REQUEST_CODE);
        }
    }

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75

Existing problems

Communication with the server is still a problem

Today’s arrangement

Set up http communication and implement the comment function as soon as possible

Experience

Communication needs to continue to be refined and researched

Latest Running Images

在这里插入图片描述

Zhaoyou Wang

Project Progress

Download and install Android Studio, configure the SDK running environment, open the VM running program, learn the relevant code of UI interface design and layout, and upload some materials to the resource library of Android Studio.

Existing problems

I am not familiar enough with the code related to UI design layout

Today’s arrangement

Continue to learn the relevant code of UI interface design layout, upload more relevant materials, and start to layout the interface.

Experience

You need to be able to work with the code you’re working with, and you can use chatgpt for some of it, but you still need to understand what each piece of code does to avoid problems such as backend incompatibility.

Latest Running Images

在这里插入图片描述

Yanbo Wang

Project Progress

Android Studio was configured, the SDK was downloaded, and the project was successfully imported. I had a meeting to discuss the next work and learned some code related to UI design.

Existing problems

I am still not familiar with the use of code required for UI design

Today’s arrangement

Learn the code of UI design and start to contact layout interface

Experience

UI design requires familiarity with the layout of the interface, and you must study hard to keep up.

Latest Running Images

在这里插入图片描述

Yiyang Xue

Project Progress

Download and install Android Studio, learn page design in Android Studio, and learn the relevant code of UI interface design layout.

Existing problems

I am not familiar enough with the relevant code of the design layout, so I have not achieved the expected design effect.

Today’s arrangement

Learn the relevant code of UI interface design layout and the correct operation of sample code.

Experience

It is also necessary to continue to improve and study, try more solutions when encountering difficulties, understand the purpose of each code, and try various collocation schemes according to the needs of the project to maintain the aesthetics and feasibility of the project.

Latest Running Images

Just studying, no results.

Guandong Li

Project Progress

The “like” and “comment” interface of the forum is improved, and a new “comment” interface is realized.

Existing problems

The Like button tends to crash and disappear after adding background

Today’s arrangement

Continue to improve the interface and set up http communication

Experience

Continue to study the communication to ensure that the comment interface is perfectly implemented

Latest Running Images

在这里插入图片描述

Haoyuan Zheng

Project Progress

Rich text editor partial implementation:

public class MainActivity extends AppCompatActivity {

    private final int OPEN_ALBUM_REQUESTCODE = 1; //请求码

    private RichEditText richEditText;
    private Button btn_bold, btn_underline, btn_italic, btn_image;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        richEditText = findViewById(R.id.richEditText);
        btn_bold = findViewById(R.id.btn_bold);
        btn_underline = findViewById(R.id.btn_underline);
        btn_italic = findViewById(R.id.btn_italic);
        btn_image = findViewById(R.id.btn_image);

        initBold();
        initItalic();
        initUnderline();

        btn_image.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                    if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {// 没有权限。
                        if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this, Manifest.permission.READ_CONTACTS)) {
                            // 用户拒绝过这个权限了,应该提示用户,为什么需要这个权限。
                        } else {
                            // 申请授权。
                            ActivityCompat.requestPermissions(MainActivity.this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, 2);
                        }
                    } else {
                        openAlbum();
                    }
                } else {
                    openAlbum();
                }
            }
        });
    }

    /**
     * 粗体
     */
    private void initBold() {
        StyleBtnVm styleBtnVm = new StyleBtnVm.Builder()
                .setType(RichTypeEnum.BOLD)
                .setClickedView(btn_bold)
                .build();

        richEditText.initStyleButton(styleBtnVm);
    }

    /**
     * 斜体
     */
    private void initItalic() {
        StyleBtnVm styleBtnVm = new StyleBtnVm.Builder()
                .setType(RichTypeEnum.ITALIC)
                .setClickedView(btn_italic)
                .build();

        richEditText.initStyleButton(styleBtnVm);
    }

    /**
     * 下划线
     */
    private void initUnderline() {
        StyleBtnVm styleBtnVm = new StyleBtnVm.Builder()
                .setType(RichTypeEnum.UNDERLINE)
                .setClickedView(btn_underline)
                .build();

        richEditText.initStyleButton(styleBtnVm);
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78

Existing problems

The UI diary interface is still incomplete, the layout may need to be adjusted, and some contents of the rich text editor implementation are not perfect and need to be improved.

Today’s arrangement

Continue to complete the deployment of the ui diary page and refine the content of the rich text editor

Experience

Also need to improve the content, improve the layout

Latest Running Images

kale

Team members meeting photos

kale

Project Burn-up Chart

在这里插入图片描述

Check-in Record

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/237619
推荐阅读
相关标签
  

闽ICP备14008679号