From 94af2c977b91605f8015962ed177034f1499010b Mon Sep 17 00:00:00 2001 From: "LAPTOP-TO0U6FQM\\Hello" <2149ksb@gmail.com> Date: Fri, 14 Aug 2020 02:59:14 +0900 Subject: [PATCH 1/7] temp commit --- DdamiApp/app/.idea/assetWizardSettings.xml | 32 +++ .../app/.idea/caches/build_file_checksums.ser | Bin 547 -> 545 bytes ...m_makeramen_roundedimageview_2_3_0_aar.xml | 8 +- ...okhttp3_logging_interceptor_3_12_1_jar.xml | 13 ++ ...com_squareup_okhttp3_okhttp_3_12_0_jar.xml | 13 -- ...com_squareup_okhttp3_okhttp_3_12_1_jar.xml | 13 ++ ...m_squareup_picasso_picasso_2_71828_aar.xml | 6 +- ...de_hdodenhof_circleimageview_2_1_0_aar.xml | 6 +- ...e__gun0912_ted_tedpermission_2_1_0_aar.xml | 6 +- DdamiApp/app/.idea/modules.xml | 2 + DdamiApp/app/.idea/navEditor.xml | 30 +-- DdamiApp/app/build.gradle | 6 + DdamiApp/app/local.properties | 4 +- DdamiApp/app/src/main/AndroidManifest.xml | 2 +- .../ddamiapp/activity/WritingActivity.java | 165 ++++++++++++++- .../ddamiapp/activity/login/LoginActivity.kt | 8 +- .../ddamiapp/adapter/GetItemAdapter.java | 102 ++++++++++ .../ddamiapp/adapter/LikeAdapter.java | 2 + .../ddamiapp/fragment/GetItemFragment.java | 49 +++++ .../fragment/shop/ShopFirstFragment.java | 4 + .../doubleslash/ddamiapp/model/GetItem.java | 79 ++++++++ .../doubleslash/ddamiapp/model/LikeProduct.kt | 11 + .../com/doubleslash/ddamiapp/model/PieceX.kt | 6 + .../ddamiapp/model/UploadPieceDAO.java | 56 ++++++ .../ddamiapp/network/kotlin/ApiService.kt | 22 +- .../network/kotlin/java/UploadPieceApi.java | 21 ++ .../src/main/res/drawable/btn_temp_save.xml | 14 ++ .../src/main/res/drawable/filter_round.xml | 10 + .../src/main/res/drawable/ic_attach_file.xml | 9 + .../app/src/main/res/drawable/ic_btn_add.xml | 9 + .../src/main/res/drawable/ic_photo_camera.xml | 16 ++ .../app/src/main/res/drawable/img_round.xml | 10 + .../src/main/res/drawable/loading_save.xml | 15 ++ .../src/main/res/layout/activity_writing.xml | 188 +++++++++++++----- .../src/main/res/layout/fragment_get_item.xml | 61 ++++++ .../app/src/main/res/layout/get_list_item.xml | 72 +++++++ .../src/main/res/layout/writing_tool_bar.xml | 54 +++++ .../main/res/menu/menu_drawer_navigation.xml | 13 ++ .../main/res/navigation/mobile_navigation.xml | 11 +- 39 files changed, 1036 insertions(+), 112 deletions(-) create mode 100644 DdamiApp/app/.idea/assetWizardSettings.xml create mode 100644 DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_logging_interceptor_3_12_1_jar.xml delete mode 100644 DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_0_jar.xml create mode 100644 DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_1_jar.xml create mode 100644 DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/adapter/GetItemAdapter.java create mode 100644 DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/GetItemFragment.java create mode 100644 DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/GetItem.java create mode 100644 DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/LikeProduct.kt create mode 100644 DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/PieceX.kt create mode 100644 DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/UploadPieceDAO.java create mode 100644 DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/network/kotlin/java/UploadPieceApi.java create mode 100644 DdamiApp/app/src/main/res/drawable/btn_temp_save.xml create mode 100644 DdamiApp/app/src/main/res/drawable/filter_round.xml create mode 100644 DdamiApp/app/src/main/res/drawable/ic_attach_file.xml create mode 100644 DdamiApp/app/src/main/res/drawable/ic_btn_add.xml create mode 100644 DdamiApp/app/src/main/res/drawable/ic_photo_camera.xml create mode 100644 DdamiApp/app/src/main/res/drawable/img_round.xml create mode 100644 DdamiApp/app/src/main/res/drawable/loading_save.xml create mode 100644 DdamiApp/app/src/main/res/layout/fragment_get_item.xml create mode 100644 DdamiApp/app/src/main/res/layout/get_list_item.xml create mode 100644 DdamiApp/app/src/main/res/layout/writing_tool_bar.xml create mode 100644 DdamiApp/app/src/main/res/menu/menu_drawer_navigation.xml diff --git a/DdamiApp/app/.idea/assetWizardSettings.xml b/DdamiApp/app/.idea/assetWizardSettings.xml new file mode 100644 index 0000000..4c66d0e --- /dev/null +++ b/DdamiApp/app/.idea/assetWizardSettings.xml @@ -0,0 +1,32 @@ + + + + + + \ No newline at end of file diff --git a/DdamiApp/app/.idea/caches/build_file_checksums.ser b/DdamiApp/app/.idea/caches/build_file_checksums.ser index c1c0f46e164d0f307517d6f99fd3fcd81378bcef..423407a06905f913c8642c56bfe2fb24908c8468 100644 GIT binary patch delta 144 zcmZ3?vXEuM43?MG`}ro$@#oiYwu%WYPAw{q@kq_d$)EVsdGZ2AaRKN4)6S1AwwMl8v_G_z_gy&Ra+c;IYS? - + - - - + + + diff --git a/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_logging_interceptor_3_12_1_jar.xml b/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_logging_interceptor_3_12_1_jar.xml new file mode 100644 index 0000000..48f6062 --- /dev/null +++ b/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_logging_interceptor_3_12_1_jar.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_0_jar.xml b/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_0_jar.xml deleted file mode 100644 index 71953a1..0000000 --- a/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_0_jar.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_1_jar.xml b/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_1_jar.xml new file mode 100644 index 0000000..4dc9ed2 --- /dev/null +++ b/DdamiApp/app/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_1_jar.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/DdamiApp/app/.idea/libraries/Gradle__com_squareup_picasso_picasso_2_71828_aar.xml b/DdamiApp/app/.idea/libraries/Gradle__com_squareup_picasso_picasso_2_71828_aar.xml index 0d5acff..ab7809f 100644 --- a/DdamiApp/app/.idea/libraries/Gradle__com_squareup_picasso_picasso_2_71828_aar.xml +++ b/DdamiApp/app/.idea/libraries/Gradle__com_squareup_picasso_picasso_2_71828_aar.xml @@ -1,9 +1,9 @@ - - - + + + diff --git a/DdamiApp/app/.idea/libraries/Gradle__de_hdodenhof_circleimageview_2_1_0_aar.xml b/DdamiApp/app/.idea/libraries/Gradle__de_hdodenhof_circleimageview_2_1_0_aar.xml index 5125ac6..9a05ae2 100644 --- a/DdamiApp/app/.idea/libraries/Gradle__de_hdodenhof_circleimageview_2_1_0_aar.xml +++ b/DdamiApp/app/.idea/libraries/Gradle__de_hdodenhof_circleimageview_2_1_0_aar.xml @@ -1,9 +1,9 @@ - - - + + + diff --git a/DdamiApp/app/.idea/libraries/Gradle__gun0912_ted_tedpermission_2_1_0_aar.xml b/DdamiApp/app/.idea/libraries/Gradle__gun0912_ted_tedpermission_2_1_0_aar.xml index 65bb110..7c76004 100644 --- a/DdamiApp/app/.idea/libraries/Gradle__gun0912_ted_tedpermission_2_1_0_aar.xml +++ b/DdamiApp/app/.idea/libraries/Gradle__gun0912_ted_tedpermission_2_1_0_aar.xml @@ -1,9 +1,9 @@ - - - + + + diff --git a/DdamiApp/app/.idea/modules.xml b/DdamiApp/app/.idea/modules.xml index 26963c3..8cce195 100644 --- a/DdamiApp/app/.idea/modules.xml +++ b/DdamiApp/app/.idea/modules.xml @@ -3,7 +3,9 @@ + + \ No newline at end of file diff --git a/DdamiApp/app/.idea/navEditor.xml b/DdamiApp/app/.idea/navEditor.xml index 592b8ad..a7d0016 100644 --- a/DdamiApp/app/.idea/navEditor.xml +++ b/DdamiApp/app/.idea/navEditor.xml @@ -8,36 +8,36 @@ diff --git a/DdamiApp/app/build.gradle b/DdamiApp/app/build.gradle index 4aa7726..aa95e79 100644 --- a/DdamiApp/app/build.gradle +++ b/DdamiApp/app/build.gradle @@ -96,8 +96,14 @@ dependencies { // implementation 'com.google.firebase:firebase-core:16.0.4' // implementation 'com.google.firebase:firebase-analytics:17.2.2' + //noinspection GradleCompatible implementation 'com.android.support:design:23.2.0' + + //okhttp + implementation 'com.squareup.okhttp3:logging-interceptor:3.12.1' +// implementation 'com.android.support:appcompat-v7:27.1.1' + } repositories { mavenCentral() diff --git a/DdamiApp/app/local.properties b/DdamiApp/app/local.properties index 51b9032..a002008 100644 --- a/DdamiApp/app/local.properties +++ b/DdamiApp/app/local.properties @@ -4,5 +4,5 @@ # Location of the SDK. This is only used by Gradle. # For customization when using a Version Control System, please read the # header note. -#Tue Jul 28 00:12:45 KST 2020 -sdk.dir=C\:\\Users\\USER\\AppData\\Local\\Android\\Sdk +#Wed Aug 12 19:38:15 KST 2020 +sdk.dir=C\:\\Users\\Hello\\AppData\\Local\\Android\\Sdk diff --git a/DdamiApp/app/src/main/AndroidManifest.xml b/DdamiApp/app/src/main/AndroidManifest.xml index feb1231..494a511 100644 --- a/DdamiApp/app/src/main/AndroidManifest.xml +++ b/DdamiApp/app/src/main/AndroidManifest.xml @@ -31,8 +31,8 @@ android:resource="@xml/filepaths" /> - + fileUri; + EditText e_writingContent, e_writingTitle; + Cursor cursor; + String filePath; + int column_index; + Bitmap originalBm; + Uri takePhotoUri; + Fragment filterFragment; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -50,6 +81,8 @@ public void onClick(View view) { takePhoto(); } }); +// filterFragment = getSupportFragmentManager().findFragmentById(R.id.filter_fragment); + findViewById(R.id.btnGallery).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -58,7 +91,15 @@ public void onClick(View view) { goToAlbum(); } }); - + findViewById(R.id.btnReg).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + ImgUpload(); + } + }); + //0이 거래 대기 + //1이 거래중 + //-1 거래완료 } private void tedPermission(){//권한 요청 함수 PermissionListener permissionListener = new PermissionListener() { @@ -87,35 +128,51 @@ private void goToAlbum() { @Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { + fileUri = new ArrayList<>(); super.onActivityResult(requestCode, resultCode, data); if (requestCode == PICK_ALBUM) { Uri photoUri = data.getData(); - Cursor cursor = null; + cursor = null; try { String[] proj = { MediaStore.Images.Media.DATA }; assert photoUri != null; cursor = getContentResolver().query(photoUri, proj, null, null, null); assert cursor != null; - int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); + column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); cursor.moveToFirst(); tempFile = new File(cursor.getString(column_index)); - } finally { if (cursor != null) { cursor.close(); } } setImage(); - - } - else if(requestCode==PICK_ALBUM){ - setImage(); } - if(requestCode==PICK_CAMERA && resultCode==Activity.RESULT_OK){ + else if(requestCode==PICK_CAMERA){ +// Intent takePictyreIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); +// if(takePictyreIntent.resolveActivity(getPackageManager()) != null){ +// File photoFile = null; +// try{ +// photoFile = createImageFile(); +// } catch (IOException e) { +// Toast.makeText(getApplicationContext(), "createImageFile Failed", Toast.LENGTH_LONG).show(); +// e.printStackTrace(); +// } +// if(photoFile != null){ +//// takePhotoUri = Uri.fromFile(photoFile); +// takePhotoUri = FileProvider.getUriForFile(this,"{package_name}.fileprovider",tempFile); +// takePictyreIntent.putExtra(MediaStore.EXTRA_OUTPUT, takePhotoUri); +// startActivityForResult(takePictyreIntent, requestCode); +// } +// } setImage(); + } + fileUri.add(cursor.getString(column_index)); + } + private void setImage(){ int id =0; id = writing_imgLayoutCount; @@ -125,12 +182,33 @@ private void setImage(){ ImageView iv = new ImageView(this); iv.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); BitmapFactory.Options options = new BitmapFactory.Options(); - Bitmap originalBm = BitmapFactory.decodeFile(tempFile.getAbsolutePath(), options); + originalBm = BitmapFactory.decodeFile(tempFile.getAbsolutePath(), options); iv.setImageBitmap(originalBm); + iv.setId(writingImgId); LinearLayout imgLayout = (LinearLayout)findViewById(R.id.writingImgLayout); imgLayout.addView(iv,300,200); - } +// public void uriFile(File file){ +// Uri uri = Uri.parse(file.getAbsolutePath()); +// fileUri = new ArrayList<>(); +// cursor = null; +// try { +// String[] proj = { MediaStore.Images.Media.DATA }; +// assert uri != null; +// cursor = getContentResolver().query(uri, proj, null, null, null); +// assert cursor != null; +// System.out.println(file.getAbsolutePath()+ "ddddddddddddddddddddddddddddddddddddddd"); +// column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); +// +// file = new File(cursor.getString(column_index)); +// fileUri.add(cursor.getString(column_index)); +// } finally { +// if (cursor != null) { +// cursor.close(); +// } +// } +// +// } private void takePhoto(){ Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); @@ -152,11 +230,76 @@ private File createImageFile() throws IOException { String timeStamp = new SimpleDateFormat("HHmmss").format(new Date()); String imageFileName = "ddamiImg01_" + timeStamp + "_"; // 이미지가 저장될 폴더 이름 + filePath = Environment.getExternalStorageDirectory() + "/ddamiImg/"; File storageDir = new File(Environment.getExternalStorageDirectory() + "/ddamiImg/"); if (!storageDir.exists()) storageDir.mkdirs(); // 빈 파일 생성 File image = File.createTempFile(imageFileName, ".jpg", storageDir); return image; } + public void ImgUpload(){ + + e_writingContent = findViewById(R.id.writingContent); + e_writingTitle = findViewById(R.id.writingTitle); + ArrayList imgList = new ArrayList<>(); + for(int i = 0; i < fileUri.size(); i++){ + File file = new File(fileUri.get(i)); + RequestBody requestBody = RequestBody.create(MediaType.parse("image/*"),file); + imgList.add(MultipartBody.Part.createFormData("img", file.getName(), requestBody)); + } + + Intent intent = getIntent(); + String token = intent.getExtras().getString("token"); + RequestBody content = RequestBody.create(MediaType.parse("text/plain"),e_writingContent.getText().toString()); + RequestBody title = RequestBody.create(MediaType.parse("text/plain"), e_writingTitle.getText().toString()); + if(e_writingTitle.getText().toString().equals(null) || e_writingTitle.getText().toString().equals(null) ){ + Toast.makeText(getApplicationContext(),"비어져 있는 칸이 있습니다. ", Toast.LENGTH_LONG).show(); + } + else { + ApiService.INSTANCE.getUploadPieceService().UploadPiece(token, + title, content, imgList).enqueue(new Callback() { + @Override + public void onResponse(Call call, Response response) { + UploadPieceDAO.UploadPieceResponse result = response.body(); + + Toast.makeText(WritingActivity.this, result.getMessage(), Toast.LENGTH_LONG).show(); + if (result.getState() == 0) { + System.out.println("sdfsdfsdfdfdfsfsdfsd"); + finish(); + } + if (response.isSuccessful()) { + + } else { + ResponseBody error = response.errorBody(); + System.out.println(error.toString()); + } + } + + @Override + public void onFailure(Call call, Throwable t) { + Toast.makeText(WritingActivity.this, "회원가입 에러", Toast.LENGTH_LONG).show(); + Log.e("회원가입 에러", t.getMessage()); + t.printStackTrace(); + } + }); + } + } +// public void FilterAdd(View view){ +// getSupportFragmentManager().beginTransaction().replace(R.id.writingView,filterFragment); +// } + +// public File SaveBitmapToFileCache(Bitmap bitmap, String strFilePath) { +// File fileCacheItem = new File(strFilePath); +// OutputStream out = null; +// try { fileCacheItem.createNewFile(); +// out = new FileOutputStream(fileCacheItem); +// bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out); +// +// } +// catch (Exception e) { e.printStackTrace(); } +// finally { try { out.close(); } +// catch (IOException e) { e.printStackTrace(); } } +// return fileCacheItem; +// } } diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/activity/login/LoginActivity.kt b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/activity/login/LoginActivity.kt index f4f555c..83c814b 100644 --- a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/activity/login/LoginActivity.kt +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/activity/login/LoginActivity.kt @@ -10,7 +10,9 @@ import androidx.fragment.app.Fragment import com.doubleslash.ddamiapp.R import com.doubleslash.ddamiapp.activity.DetailActivity import com.doubleslash.ddamiapp.activity.MainActivity + import com.doubleslash.ddamiapp.fragment.LikeFragment +import com.doubleslash.ddamiapp.activity.WritingActivity import com.doubleslash.ddamiapp.network.kotlin.ApiService import com.doubleslash.ddamiapp.network.kotlin.DetailPieceApi import com.doubleslash.ddamiapp.util.KeyboardVisibilityUtils @@ -60,8 +62,10 @@ class LoginActivity : AppCompatActivity() { .subscribe({ Toast.makeText(applicationContext, "로그인 성공", Toast.LENGTH_SHORT).show() val intent = Intent(this@LoginActivity, MainActivity::class.java) + val intent2 = Intent(this,WritingActivity::class.java) intent.putExtra("token", it.token) intent.putExtra("id", input.get("userId").toString()) + intent2.putExtra("token", it.token) startActivity(intent) // val detailintent = Intent(this@LoginActivity, DetailActivity::class.java) @@ -72,8 +76,8 @@ class LoginActivity : AppCompatActivity() { val bundle = Bundle(1) // 파라미터는 전달할 데이터 개수 bundle.putString("token", it.token) // key , value fragment.setArguments(bundle) - - + startActivity(intent2) + finish() }, { Toast.makeText(applicationContext, "$it", Toast.LENGTH_SHORT).show() Log.e("영환", it.toString()) diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/adapter/GetItemAdapter.java b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/adapter/GetItemAdapter.java new file mode 100644 index 0000000..feccbab --- /dev/null +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/adapter/GetItemAdapter.java @@ -0,0 +1,102 @@ +package com.doubleslash.ddamiapp.adapter; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageButton; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.doubleslash.ddamiapp.R; +import com.doubleslash.ddamiapp.model.GetItem; +import com.doubleslash.ddamiapp.model.LikeVO; +import com.makeramen.roundedimageview.RoundedImageView; + +import java.util.ArrayList; + +public class GetItemAdapter extends RecyclerView.Adapter{ + + + private Context mContext; + private ArrayList getItemArrayList; + + public GetItemAdapter.OnItemClickListener mOnItemClickListener = null; + + public interface OnItemClickListener { + void onItemClick(View view, GetItem getItem); + } + + public void setOnItemClickListener(GetItemAdapter.OnItemClickListener listener) { + mOnItemClickListener = listener; + } + + public GetItemAdapter(Context mContext, ArrayList getItemArrayList) { + this.mContext = mContext; + this.getItemArrayList = getItemArrayList; + } + + @Override + public GetItemAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { + View convertView = LayoutInflater.from(mContext).inflate(R.layout.get_list_item, parent, false); + return new GetItemAdapter.ViewHolder(convertView); + } + + @Override + public void onBindViewHolder(@NonNull ViewHolder holder, int position) { + final GetItem getItem = getItemArrayList.get(position); +/* + Glide.with(mContext) + .load(likeVO.getThumb()) + .thumbnail(0.5f) + .into(holder.img_thumb); +*/ + holder.PieceName.setText(getItem.getPiece_name()); + holder.UserUniv.setText(getItem.getUser_univ()); + holder.PiecePrice.setText(getItem.getPiece_price()); + holder.PieceDate.setText(getItem.getPiece_date()); + // holder.likeListImage.setImageResource(Integer.parseInt(likeVO.getImage())); + // holder.likeProfile.setImageResource(Integer.parseInt(likeVO.getProfile())); + + holder.getItemLayout.setOnClickListener(new View.OnClickListener() { + + @Override + public void onClick(View v) { + //작업물 상세로 이동 + mOnItemClickListener.onItemClick(v, getItem); + } + }); + } + + @Override + public int getItemCount() { + return getItemArrayList.size(); + } + + + public class ViewHolder extends RecyclerView.ViewHolder { + + private LinearLayout getItemLayout; + private ImageView PieceImage; + private TextView PieceName,UserUniv, PiecePrice, PieceDate, DealState; + + @SuppressLint("WrongViewCast") + public ViewHolder(View convertView) { + super(convertView); + + getItemLayout = (LinearLayout) convertView.findViewById(R.id.get_item_listLayout); + PieceImage = (RoundedImageView) convertView.findViewById(R.id.get_item_img); + PieceName = (TextView) convertView.findViewById(R.id.piece_name); + UserUniv = (TextView) convertView.findViewById(R.id.heart_piece); + PiecePrice = (TextView) convertView.findViewById(R.id.piece_price); + PieceDate = (TextView) convertView.findViewById(R.id.get_item_date); + DealState = (TextView) convertView.findViewById(R.id.deal_state); + } + } +} + diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/adapter/LikeAdapter.java b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/adapter/LikeAdapter.java index 9610021..93d8817 100644 --- a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/adapter/LikeAdapter.java +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/adapter/LikeAdapter.java @@ -1,5 +1,7 @@ package com.doubleslash.ddamiapp.adapter; + +import android.annotation.SuppressLint; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/GetItemFragment.java b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/GetItemFragment.java new file mode 100644 index 0000000..281d1f4 --- /dev/null +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/GetItemFragment.java @@ -0,0 +1,49 @@ +package com.doubleslash.ddamiapp.fragment; + +import android.os.Bundle; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.GridLayoutManager; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + +import com.doubleslash.ddamiapp.R; +import com.doubleslash.ddamiapp.adapter.GetItemAdapter; +import com.doubleslash.ddamiapp.adapter.LikeAdapter; +import com.doubleslash.ddamiapp.model.GetItem; +import com.doubleslash.ddamiapp.model.LikeVO; +import com.doubleslash.ddamiapp.network.kotlin.ApiService; +import com.google.gson.JsonObject; + +import java.util.ArrayList; + +import io.reactivex.android.schedulers.AndroidSchedulers; +import io.reactivex.schedulers.Schedulers; + +public class GetItemFragment extends Fragment implements GetItemAdapter.OnItemClickListener { + private RecyclerView get_itemRecycle; + private GetItemAdapter getItemAdapter; + private ArrayList getItemArrayList = new ArrayList<>(); + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstaceState) { + View view = inflater.inflate(R.layout.fragment_get_item, container, false); + + get_itemRecycle = (RecyclerView) view.findViewById(R.id.like_recyclerview); + RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(getActivity()); + get_itemRecycle.setLayoutManager(layoutManager); + getItemAdapter = new GetItemAdapter(getActivity(), getItemArrayList); //getLikeList() + getItemAdapter.setOnItemClickListener(this); + get_itemRecycle.setAdapter(getItemAdapter); + return view; + } + + @Override + public void onItemClick(View view, GetItem getItem) { + + } +} diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/shop/ShopFirstFragment.java b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/shop/ShopFirstFragment.java index 465ad77..591b7db 100644 --- a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/shop/ShopFirstFragment.java +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/shop/ShopFirstFragment.java @@ -9,6 +9,7 @@ import com.doubleslash.ddamiapp.R; import com.doubleslash.ddamiapp.activity.shop.ShopWritingActivity1_1; +<<<<<<< HEAD:DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/shop/ShopFirstFragment.java import com.doubleslash.ddamiapp.activity.MainActivity; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -18,6 +19,9 @@ import com.doubleslash.ddamiapp.fragment.FilterFragment; import com.google.android.material.bottomsheet.BottomSheetDialog; import com.google.android.material.bottomsheet.BottomSheetDialogFragment; +======= + +>>>>>>> acdd22c... temp commit:DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/fragment/Shop/ShopFirstFragment.java import com.google.android.material.floatingactionbutton.FloatingActionButton; /** diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/GetItem.java b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/GetItem.java new file mode 100644 index 0000000..a7724b8 --- /dev/null +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/GetItem.java @@ -0,0 +1,79 @@ +package com.doubleslash.ddamiapp.model; + +import java.util.ArrayList; + +public class GetItem { + String image; + String piece_name; + String user_univ; + String piece_price; + String piece_date; + String deal_state; + ArrayList getItemArrayList; + + public String getImage() { + return image; + } + + public void setImage(String image) { + this.image = image; + } + + public String getPiece_name() { + return piece_name; + } + + public void setPiece_name(String piece_name) { + this.piece_name = piece_name; + } + + public String getUser_univ() { + return user_univ; + } + + public void setUser_univ(String user_univ) { + this.user_univ = user_univ; + } + + public String getPiece_price() { + return piece_price; + } + + public void setPiece_price(String piece_price) { + this.piece_price = piece_price; + } + + public String getPiece_date() { + return piece_date; + } + + public void setPiece_date(String piece_date) { + this.piece_date = piece_date; + } + + public String getDeal_state() { + return deal_state; + } + + public void setDeal_state(String deal_state) { + this.deal_state = deal_state; + } + + public ArrayList getGetItemArrayList() { + return getItemArrayList; + } + + public void setGetItemArrayList(ArrayList getItemArrayList) { + this.getItemArrayList = getItemArrayList; + } + + public GetItem(String image, String piece_name, String user_univ, String piece_price, String piece_date, String deal_state + ) { + this.image = image; + this.piece_name = piece_name; + this.user_univ = user_univ; + this.piece_price = piece_price; + this.piece_date = piece_date; + this.deal_state = deal_state; + } +} diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/LikeProduct.kt b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/LikeProduct.kt new file mode 100644 index 0000000..094419b --- /dev/null +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/LikeProduct.kt @@ -0,0 +1,11 @@ +package com.doubleslash.ddamiapp.model + +data class LikeProduct( + val _id: String, + val created: String, + val fileUrl: List, + val locationName: String, + val pieces: List, + val state: Int, + val title: String +) \ No newline at end of file diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/PieceX.kt b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/PieceX.kt new file mode 100644 index 0000000..3eedd40 --- /dev/null +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/PieceX.kt @@ -0,0 +1,6 @@ +package com.doubleslash.ddamiapp.model + +data class PieceX( + val _id: String, + val fileUrl: List +) \ No newline at end of file diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/UploadPieceDAO.java b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/UploadPieceDAO.java new file mode 100644 index 0000000..aa794e0 --- /dev/null +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/model/UploadPieceDAO.java @@ -0,0 +1,56 @@ +package com.doubleslash.ddamiapp.model; + +import java.lang.reflect.Array; +import java.util.ArrayList; + +public class UploadPieceDAO { + String title; + String content; + ArrayList hasField; + + public ArrayList getHshField() { + return hasField; + } + + public void setHshField(ArrayList hasField) { + this.hasField = hasField; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + + public UploadPieceDAO(String title, String content) { + this.title = title; + this.content = content; + } + public UploadPieceDAO(String title, String content, ArrayList hashField) { + this.title = title; + this.content = content; + this.hasField = hashField; + } + public class UploadPieceResponse{ + int state; + String message; + + public int getState() { + return state; + } + + public String getMessage() { + return message; + } + } +} diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/network/kotlin/ApiService.kt b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/network/kotlin/ApiService.kt index a377329..35d2dc7 100644 --- a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/network/kotlin/ApiService.kt +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/network/kotlin/ApiService.kt @@ -1,17 +1,30 @@ package com.doubleslash.ddamiapp.network.kotlin +import com.doubleslash.ddamiapp.network.kotlin.java.UploadPieceApi +import okhttp3.OkHttpClient +import okhttp3.logging.HttpLoggingInterceptor import retrofit2.Retrofit import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory import retrofit2.converter.gson.GsonConverterFactory - +import java.util.concurrent.TimeUnit object ApiService { private const val BASE_URL = "http://222.251.129.150/" private val retrofit: Retrofit by lazy { + val okHttpClient = OkHttpClient.Builder() + .connectTimeout(2, TimeUnit.MINUTES) + .readTimeout(100, TimeUnit.SECONDS) + .writeTimeout(100, TimeUnit.SECONDS) + .build() + val clientBuilder = OkHttpClient.Builder() + val loggingInterceptor = HttpLoggingInterceptor() + loggingInterceptor.level = HttpLoggingInterceptor.Level.BODY + clientBuilder.addInterceptor(loggingInterceptor) Retrofit.Builder() .baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create()) .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) + .client(clientBuilder.build()) .build() } @@ -53,4 +66,9 @@ object ApiService { retrofit.create(MyInfoApi::class.java) } -} \ No newline at end of file + val uploadPieceService : UploadPieceApi by lazy { + retrofit.create(UploadPieceApi::class.java) + } + +} + diff --git a/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/network/kotlin/java/UploadPieceApi.java b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/network/kotlin/java/UploadPieceApi.java new file mode 100644 index 0000000..ecf57b0 --- /dev/null +++ b/DdamiApp/app/src/main/java/com/doubleslash/ddamiapp/network/kotlin/java/UploadPieceApi.java @@ -0,0 +1,21 @@ +package com.doubleslash.ddamiapp.network.kotlin.java; + +import com.doubleslash.ddamiapp.model.UploadPieceDAO; +import com.doubleslash.ddamiapp.model.UploadPieceDAO.UploadPieceResponse; + +import java.util.ArrayList; + +import okhttp3.MultipartBody; +import okhttp3.RequestBody; +import retrofit2.Call; +import retrofit2.http.Header; +import retrofit2.http.Multipart; +import retrofit2.http.POST; +import retrofit2.http.Part; + +public interface UploadPieceApi { + @POST("/user/upload/piece") + @Multipart + Call UploadPiece(@Header("x-access-token") String token, @Part("title") RequestBody title, @Part("description") RequestBody description + , @Part ArrayList imgList); +} diff --git a/DdamiApp/app/src/main/res/drawable/btn_temp_save.xml b/DdamiApp/app/src/main/res/drawable/btn_temp_save.xml new file mode 100644 index 0000000..8bcb0c7 --- /dev/null +++ b/DdamiApp/app/src/main/res/drawable/btn_temp_save.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + diff --git a/DdamiApp/app/src/main/res/drawable/filter_round.xml b/DdamiApp/app/src/main/res/drawable/filter_round.xml new file mode 100644 index 0000000..54c1bb4 --- /dev/null +++ b/DdamiApp/app/src/main/res/drawable/filter_round.xml @@ -0,0 +1,10 @@ + + + + + diff --git a/DdamiApp/app/src/main/res/drawable/ic_attach_file.xml b/DdamiApp/app/src/main/res/drawable/ic_attach_file.xml new file mode 100644 index 0000000..b78a4c6 --- /dev/null +++ b/DdamiApp/app/src/main/res/drawable/ic_attach_file.xml @@ -0,0 +1,9 @@ + + + diff --git a/DdamiApp/app/src/main/res/drawable/ic_btn_add.xml b/DdamiApp/app/src/main/res/drawable/ic_btn_add.xml new file mode 100644 index 0000000..bad68e7 --- /dev/null +++ b/DdamiApp/app/src/main/res/drawable/ic_btn_add.xml @@ -0,0 +1,9 @@ + + + diff --git a/DdamiApp/app/src/main/res/drawable/ic_photo_camera.xml b/DdamiApp/app/src/main/res/drawable/ic_photo_camera.xml new file mode 100644 index 0000000..a6aa500 --- /dev/null +++ b/DdamiApp/app/src/main/res/drawable/ic_photo_camera.xml @@ -0,0 +1,16 @@ + + + + diff --git a/DdamiApp/app/src/main/res/drawable/img_round.xml b/DdamiApp/app/src/main/res/drawable/img_round.xml new file mode 100644 index 0000000..8350c7c --- /dev/null +++ b/DdamiApp/app/src/main/res/drawable/img_round.xml @@ -0,0 +1,10 @@ + + + + + diff --git a/DdamiApp/app/src/main/res/drawable/loading_save.xml b/DdamiApp/app/src/main/res/drawable/loading_save.xml new file mode 100644 index 0000000..7818647 --- /dev/null +++ b/DdamiApp/app/src/main/res/drawable/loading_save.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + diff --git a/DdamiApp/app/src/main/res/layout/activity_writing.xml b/DdamiApp/app/src/main/res/layout/activity_writing.xml index 30d44fe..e23d459 100644 --- a/DdamiApp/app/src/main/res/layout/activity_writing.xml +++ b/DdamiApp/app/src/main/res/layout/activity_writing.xml @@ -1,57 +1,153 @@ - - + + + + + + + + - - + android:layout_height="wrap_content" /> + + + + -