.idea/assetWizardSettings.xml
@@ -18,7 +18,7 @@ <PersistentState> <option name="values"> <map> <entry key="url" value="jar:file:/C:/Program%20Files/Android/Android%20Studio/plugins/android/lib/android.jar!/images/material_design_icons/social/ic_group_black_24dp.xml" /> <entry key="url" value="file:/$PROJECT_DIR$/../../../../androidsdk/sdk_new/icons/material/materialicons/arrow_downward/baseline_arrow_downward_24.xml" /> </map> </option> </PersistentState> @@ -28,7 +28,7 @@ </option> <option name="values"> <map> <entry key="outputName" value="ic_group_black_24dp" /> <entry key="outputName" value="ic_baseline_arrow_downward_24" /> <entry key="sourceFile" value="C:\Users\feiyu" /> </map> </option> .idea/compiler.xml
@@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="CompilerConfiguration"> <bytecodeTargetLevel target="1.8" /> <bytecodeTargetLevel target="11" /> </component> </project> .idea/jarRepositories.xml
@@ -36,5 +36,10 @@ <option name="name" value="MavenRepo" /> <option name="url" value="https://repo.maven.apache.org/maven2/" /> </remote-repository> <remote-repository> <option name="id" value="maven" /> <option name="name" value="maven" /> <option name="url" value="http://maven.aliyun.com/nexus/content/repositories/releases/" /> </remote-repository> </component> </project> .idea/misc.xml
@@ -10,7 +10,7 @@ <option name="myDefaultNotNull" value="android.support.annotation.NonNull" /> <option name="myNullables"> <value> <list size="12"> <list size="15"> <item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" /> <item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" /> <item index="2" class="java.lang.String" itemvalue="javax.annotation.CheckForNull" /> @@ -23,12 +23,15 @@ <item index="9" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NullableType" /> <item index="10" class="java.lang.String" itemvalue="android.annotation.Nullable" /> <item index="11" class="java.lang.String" itemvalue="com.android.annotations.Nullable" /> <item index="12" class="java.lang.String" itemvalue="org.eclipse.jdt.annotation.Nullable" /> <item index="13" class="java.lang.String" itemvalue="io.reactivex.annotations.Nullable" /> <item index="14" class="java.lang.String" itemvalue="io.reactivex.rxjava3.annotations.Nullable" /> </list> </value> </option> <option name="myNotNulls"> <value> <list size="11"> <list size="14"> <item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" /> <item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" /> <item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" /> @@ -40,11 +43,14 @@ <item index="8" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NonNullType" /> <item index="9" class="java.lang.String" itemvalue="android.annotation.NonNull" /> <item index="10" class="java.lang.String" itemvalue="com.android.annotations.NonNull" /> <item index="11" class="java.lang.String" itemvalue="org.eclipse.jdt.annotation.NonNull" /> <item index="12" class="java.lang.String" itemvalue="io.reactivex.annotations.NonNull" /> <item index="13" class="java.lang.String" itemvalue="io.reactivex.rxjava3.annotations.NonNull" /> </list> </value> </option> </component> <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK" /> <component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK" /> <component name="SvnBranchConfigurationManager"> <option name="myConfigurationMap"> <map> .idea/runConfigurations.xml
@@ -3,6 +3,7 @@ <component name="RunConfigurationProducerService"> <option name="ignoredProducers"> <set> <option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" /> <option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" /> <option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" /> <option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" /> app/build.gradle
@@ -14,8 +14,8 @@ applicationId "cn.flightfeather.thirdapp" minSdkVersion 19 targetSdkVersion 28 versionCode 27 versionName "1.1.14.10" versionCode 28 versionName "1.1.14.12" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" renderscriptTargetApi 25 renderscriptSupportModeEnabled true app/src/main/AndroidManifest.xml
@@ -242,6 +242,8 @@ android:theme="@style/TransparentTheme" /> <activity android:name=".module.inspection.MenuChangeCheckActivity" android:theme="@style/TransparentTheme" /> <activity android:name=".module.inspection.MenuSceneAccountActivity" android:theme="@style/TransparentTheme" /> <activity android:name=".module.inspection.ShareProblemActivity" android:theme="@style/AppTheme.NoActionBar" /> <activity android:name=".module.inspection.ShareProblemPreViewActivity" app/src/main/java/cn/flightfeather/thirdapp/CommonApplication.java
@@ -30,18 +30,17 @@ */ public class CommonApplication extends Application { // private final String ROOTURL="http://106.14.187.51:8801/supervision/"; public final String ROOT_URL ="http://192.168.0.200:8080/"; public final String ROOT_URL_IMAGE ="http://192.168.0.200:8080/images/"; // public final String ROOT_URL ="http://192.168.0.200:8080/"; // public final String ROOT_URL_IMAGE ="http://192.168.0.200:8080/images/"; public final String ROOT_URL ="http://192.168.0.146:8080/"; public final String ROOT_URL_IMAGE ="http://192.168.0.146:8080/images/"; public final String ROOT_URL_RELEASE = "http://47.100.191.150:9005/"; public final String ROOT_URL_RELEASE_IMAGE = "http://47.100.191.150:9005/images/"; private Retrofit retrofit; private Retrofit retrofitImage; private DaoSession daoSession; private Userinfo currentUser; private boolean debugMode = false; private boolean released = true; private UserinfoDao userinfoDao; private final boolean released = true; //å¨ç¨åºæå¼æ¶èç½è·åé¢ç½®æ°æ® private boolean loadPreDataWhenOpen = true; @@ -75,8 +74,7 @@ } /** * 2018.11.07 by riku è·åæ°æ®ä¼ è¾æ¥å£è°ç¨çæ ¹å°å * @return * è·åæ°æ®ä¼ è¾æ¥å£è°ç¨çæ ¹å°å */ public Retrofit getRetrofit(){ @@ -104,8 +102,7 @@ } /** * 2018.11.07 by riku è·åå¾çä¼ è¾æ¥å£è°ç¨çæ ¹å°å * @return * è·åå¾çä¼ è¾æ¥å£è°ç¨çæ ¹å°å */ public Retrofit getRetrofitImage(){ @@ -130,13 +127,13 @@ /** * è·åæ°æ®åºSession * @return */ public DaoSession getDaoSession() { if (daoSession ==null) { File path = new File(Environment.getExternalStorageDirectory(), "FlightFeather/third_new.db"); if(!path.exists()) path.getParentFile().mkdirs(); //åå»ºæ°æ®åºshop.db" DaoMaster.DevOpenHelper helper = new DaoMaster.DevOpenHelper(getApplicationContext(), path.getAbsolutePath(), null); //è·åå¯åæ°æ®åº @@ -152,20 +149,14 @@ return daoSession; } public boolean isDebugMode() { return debugMode; } /** * 2018.11.07 by riku è·åå½åç¨æ·å¯¹è±¡ * @return * è·åå½åç¨æ·å¯¹è±¡ */ public Userinfo getCurrentUser() { if (currentUser ==null){ userinfoDao = this.getDaoSession().getUserinfoDao(); String userId = GlobalConfig.Companion.getInstance().getUserId(); if (userId == null) { UserinfoDao userinfoDao = this.getDaoSession().getUserinfoDao(); String userId = GlobalConfig.getInstance().getUserId(); if (userId.equals(GlobalConfig.DEFAULT_USER)) { currentUser = userinfoDao.queryBuilder().unique(); } else { currentUser = userinfoDao.queryBuilder().where(UserinfoDao.Properties.Guid.eq(userId)).unique(); @@ -175,13 +166,12 @@ } public void setCurrentUser(Userinfo currentUser) { GlobalConfig.Companion.getInstance().setUserId(currentUser.getGuid()); GlobalConfig.getInstance().setUserId(currentUser.getGuid()); this.currentUser = currentUser; } /** * 2018.11.07 by riku appå¯å¨æ¶å¤ææ¯å¦å è½½åå§åæ°æ®å®æ * @return * appå¯å¨æ¶å¤ææ¯å¦å è½½åå§åæ°æ®å®æ */ public boolean isLoadPreDataWhenOpen() { return loadPreDataWhenOpen; app/src/main/java/cn/flightfeather/thirdapp/fragment/SettingFragment.java
@@ -60,7 +60,7 @@ tv_userName = (TextView) view.findViewById(R.id.tv_user_name); tv_userName.setText(application.getCurrentUser().getRealname()); text_version = view.findViewById(R.id.text_version); text_version.setText(GlobalConfig.Companion.getInstance().getVersionName()); text_version.setText(GlobalConfig.getInstance().getVersionName()); sc_changePassword = (SettingCommItemView) view.findViewById(R.id.sc_edit_password); sc_logOut = (SettingCommItemView) view.findViewById(R.id.sc_logout); app/src/main/java/cn/flightfeather/thirdapp/httpservice/UserInfoService.java
@@ -5,7 +5,9 @@ import cn.flightfeather.thirdapp.bean.entity.Userinfo; import retrofit2.Call; import retrofit2.http.GET; import retrofit2.http.POST; import retrofit2.http.Path; import retrofit2.http.Query; /** * Created by linli on 2018/1/23. @@ -19,4 +21,9 @@ @GET("userinfo") Call<List<Userinfo>> getAllUser(); @POST("userinfo/create") Call<Userinfo> createAccount(@Query("sceneId") String sceneId); @GET("userinfo/scene/get") Call<Userinfo> getByScene(@Query("sceneId") String sceneId); } app/src/main/java/cn/flightfeather/thirdapp/module/MainActivity.java
@@ -27,7 +27,7 @@ import cn.flightfeather.thirdapp.dataanalysis.AnalysisOverViewFragment; import cn.flightfeather.thirdapp.module.home.HomeFragment; import cn.flightfeather.thirdapp.fragment.SettingFragment; import cn.flightfeather.thirdapp.fragment.TaskFragment; import cn.flightfeather.thirdapp.module.task.TaskFragment; import cn.flightfeather.thirdapp.module.inspection.InspectionFragment; import cn.flightfeather.thirdapp.module.inspectioninfo.InspectionInfoFragment; import cn.flightfeather.thirdapp.module.inspectioninfo.ProblemChangeDetailActivity; app/src/main/java/cn/flightfeather/thirdapp/module/common/UserInfoViewModel.kt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,46 @@ package cn.flightfeather.thirdapp.module.common import android.arch.lifecycle.MutableLiveData import cn.flightfeather.thirdapp.bean.entity.Userinfo import cn.flightfeather.thirdapp.common.net.ResultCallBack import cn.flightfeather.thirdapp.module.base.BaseViewModel import cn.flightfeather.thirdapp.repository.UserInfoRepository /** * @author riku * Date: 2021/7/21 */ class UserInfoViewModel : BaseViewModel() { private val userInfoRepository = UserInfoRepository.instance // ç¨æ·è´¦æ· val aName = MutableLiveData<String>() /** * èªå¨å建æè·ååºæ¯è´¦æ· */ fun createAccount(sceneId: String) { userInfoRepository.createAccount(sceneId, object : ResultCallBack<Userinfo> { override fun onSuccess(result: Userinfo?) { aName.value = result?.acountname } override fun onFailure() { aName.value = null } }) } fun getByScene(sceneId: String) { userInfoRepository.getByScene(sceneId, object : ResultCallBack<Userinfo?> { override fun onSuccess(result: Userinfo?) { aName.value = result?.acountname } override fun onFailure() { aName.value = null } }) } } app/src/main/java/cn/flightfeather/thirdapp/module/inspection/InspectionDetailActivity.kt
@@ -136,6 +136,8 @@ iv_patrol_back.setOnClickListener(this) ll_patrol_task_detail.visibility = View.GONE user_account.setOnClickListener(this) hideMenu() viewModel.inspection.observe(this, Observer { @@ -699,6 +701,14 @@ override fun onClick(v: View?) { when (v?.id) { // æ¥çæè·åç¨æ·è´¦æ·ä¿¡æ¯ R.id.user_account -> { val intent = Intent(this, MenuSceneAccountActivity::class.java).apply { putExtra("sceneId", viewModel.scene.value?.guid) putExtra("sceneName", viewModel.scene.value?.name) } startActivity(intent) } //åºé¨viewPageréè R.id.ll_patrol_hide -> hideMenu() //åºé¨viewPageræ¾ç¤º app/src/main/java/cn/flightfeather/thirdapp/module/inspection/InspectionDetailViewModel.kt
@@ -152,7 +152,14 @@ inspection?.let { inspectionRepository.updateInspection(it, object : ResultCallBack<ResponseBody> { override fun onSuccess(result: ResponseBody?) { result?.let { s() } result?.let {r -> val n = r.string().toIntOrNull() if (n == 1) { s() } else { application.toast("æäº¤å·¡æ¥ä¿¡æ¯å¤±è´¥ï¼è¯·æ£æ¥ç½ç»") } } } override fun onFailure() { app/src/main/java/cn/flightfeather/thirdapp/module/inspection/InspectionFragment.kt
@@ -53,6 +53,9 @@ //æ¥åæ¾ç¤ºæ¨¡å¼ï¼1ï¼å±ç¤ºåä»»å¡å®æç¾åæ¯ï¼0ï¼å±ç¤ºæ´æ¹å®æç¾åæ¯ï¼ private var calendarMode = 1 private val handler = Handler() private val closeLoadingRunnable = Runnable { closeLoading() } override fun getLayoutId(): Int = R.layout.fragment_inspection2 override fun onCreateView() { @@ -322,9 +325,8 @@ } } // Handler().postDelayed({ // closeLoading() // }, 10000) handler.removeCallbacks(closeLoadingRunnable) handler.postDelayed(closeLoadingRunnable, 20000) } private fun closeLoading() { app/src/main/java/cn/flightfeather/thirdapp/module/inspection/MenuSceneAccountActivity.kt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,73 @@ package cn.flightfeather.thirdapp.module.inspection import android.arch.lifecycle.Observer import android.arch.lifecycle.ViewModelProviders import android.os.Bundle import android.view.View import cn.flightfeather.thirdapp.R import cn.flightfeather.thirdapp.module.base.BaseActivity import cn.flightfeather.thirdapp.module.common.UserInfoViewModel import kotlinx.android.synthetic.main.dialog_scene_account.* /** * @author riku * Date: 2021/7/21 * è·åçç®¡åºæ¯è´¦æ·ä¿¡æ¯ */ class MenuSceneAccountActivity : BaseActivity() { private var sceneId: String? = null private var sceneName: String? = null lateinit var viewModel: UserInfoViewModel override fun getLayoutId(): Int = R.layout.dialog_scene_account override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) viewModel = ViewModelProviders.of(this).get(UserInfoViewModel::class.java) sceneId = intent.getStringExtra("sceneId") sceneName = intent.getStringExtra("sceneName") initUI() initObserver() initListener() sceneId?.let { viewModel.getByScene(it) } } private fun initUI() { view_waiting.visibility = View.VISIBLE tv_s_name_c.text = sceneName ?: "æªå½ååºæ¯" group_no_data.visibility = View.GONE group_s_info.visibility = View.GONE } private fun initObserver() { viewModel.aName.observe(this, Observer { view_waiting.visibility = View.GONE if (it == null) { group_no_data.visibility = View.VISIBLE group_s_info.visibility = View.GONE } else { group_no_data.visibility = View.GONE group_s_info.visibility = View.VISIBLE tv_s_account_c.text = it } }) } private fun initListener() { tv_create_account.setOnClickListener { view_waiting.visibility = View.VISIBLE sceneId?.let { viewModel.createAccount(it) } } fab_close.setOnClickListener { this.finish() } } } app/src/main/java/cn/flightfeather/thirdapp/module/inspectioninfo/InspectionInfoFragment.java
@@ -31,11 +31,13 @@ import cn.flightfeather.thirdapp.CommonApplication; import cn.flightfeather.thirdapp.R; import cn.flightfeather.thirdapp.adapter.AllRecyclerViewAdapter; import cn.flightfeather.thirdapp.bean.entity.Domainitem; import cn.flightfeather.thirdapp.bean.entity.Problemtype; import cn.flightfeather.thirdapp.bean.entity.Scense; import cn.flightfeather.thirdapp.bean.vo.ProblemCategoryVo; import cn.flightfeather.thirdapp.bean.vo.ProblemlistVo; import cn.flightfeather.thirdapp.common.net.ResultCallBack; import cn.flightfeather.thirdapp.httpservice.ProblemListService; import cn.flightfeather.thirdapp.repository.ProblemRepository; import cn.flightfeather.thirdapp.util.CommonUtils; import cn.flightfeather.thirdapp.util.Constant; import cn.flightfeather.thirdapp.util.DateFormatter; @@ -51,8 +53,6 @@ */ public class InspectionInfoFragment extends Fragment implements Serializable{ //<editor-fold desc="å ¨å±åé"> private final static String TITLE = "é®é¢"; private static final long serialVersionUID = 6072583863506447855L; @@ -62,9 +62,7 @@ private String sceneType = Constant.SCENE_TYPE_SITE; private Unbinder unbinder; //</editor-fold> //<editor-fold desc="æé 彿°"> public InspectionInfoFragment() { // Required empty public constructor } @@ -75,9 +73,7 @@ // fragment.setArguments(args); return fragment; } //</editor-fold> //<editor-fold desc="çå½å¨æ"> @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -123,9 +119,6 @@ } } //</editor-fold> //<editor-fold desc="æ 颿 "> @BindView(R.id.action_bar) View action_bar; @@ -142,9 +135,6 @@ title.setGravity(Gravity.CENTER_HORIZONTAL); } //</editor-fold> //<editor-fold desc="ç»è®¡ä¿¡æ¯æ "> @BindView(R.id.text_total) TextView text_total; @BindView(R.id.text_changed) TextView text_changed; @BindView(R.id.text_unchanged) TextView text_unchanged; @@ -156,10 +146,9 @@ text_changed.setText(String.valueOf(changed_problems)); text_unchanged.setText(String.valueOf(total_problems-changed_problems)); } //</editor-fold> //<editor-fold desc="åå§ååè¡¨æ°æ®"> private ArrayList<ProblemCategoryVo> problemCategories = new ArrayList<>();//å表ä¸å±ç¤ºçæ°æ®ï¼æé®é¢ç±»ååç±» private ProblemRepository problemRepository = new ProblemRepository(); private DomainitemDao domainitemDao; private ScenseDao scenseDao; @@ -177,31 +166,64 @@ .limit(1).list(); if (scenses != null && !scenses.isEmpty()) { this.sceneType = String.valueOf(scenses.get(0).getTypeid()); } //endregion Scense s = scenses.get(0); //region æ¥è¯¢å½ååºæ¯ç±»åä¸çé®é¢ç±»åå¼å this.domainitemDao = this.application.getDaoSession().getDomainitemDao(); List<Domainitem> domainitems = domainitemDao.queryBuilder() .where( DomainitemDao.Properties.Dcguid.eq( CommonUtils.getProblemTypeGUID(this.sceneType) ) ) .orderAsc(DomainitemDao.Properties.Index).list(); for (Domainitem d : domainitems) { //æ¥è¯¢å½ååºæ¯ç±»åä¸çé®é¢ç±»åå¼å byte b = 1; problemRepository.getProblemType(b, s.getCitycode(), s.getDistrictcode(), s.getTypeid(), new ResultCallBack<ArrayList<Problemtype>>() { @Override public void onCacheSuccess(@Nullable ArrayList<Problemtype> result) { } @Override public void onSuccess(@Nullable ArrayList<Problemtype> result) { if (result != null) { List<String> types = new ArrayList<>(); for (int i = 0; i < result.size(); i++) { Problemtype d = result.get(i); if (!types.contains(d.getTypeid().toString())) { types.add(d.getTypeid().toString()); ProblemCategoryVo p = new ProblemCategoryVo(); p.setProblemTypeId(d.getValue()); p.setProblemTypeName(d.getText()); this.problemCategories.add(p); p.setProblemTypeId(d.getTypeid().toString()); p.setProblemTypeName(d.getTypename()); problemCategories.add(p); } } } } @Override public void onPage(int current, int total) { } @Override public void onFailure() { } }); } //endregion } //</editor-fold> // this.domainitemDao = this.application.getDaoSession().getDomainitemDao(); // List<Domainitem> domainitems = domainitemDao.queryBuilder() // .where( // DomainitemDao.Properties.Dcguid.eq( // CommonUtils.getProblemTypeGUID(this.sceneType) // ) // ) // .orderAsc(DomainitemDao.Properties.Index).list(); // for (Domainitem d : // domainitems) { // ProblemCategoryVo p = new ProblemCategoryVo(); // p.setProblemTypeId(d.getValue()); // p.setProblemTypeName(d.getText()); // this.problemCategories.add(p); // } //<editor-fold desc="initView"> } //é®é¢æåç±»è¿è¡ä¸ªæ°ç»è®¡ @BindView(R.id.rv_problem_type) RecyclerView rv_problem_type; AllRecyclerViewAdapter<ProblemCategoryVo> adapter; @@ -233,9 +255,7 @@ rv_problem_type.setLayoutManager(gl); rv_problem_type.setAdapter(adapter); } //</editor-fold> //<editor-fold desc="èç½å·æ°"> private void refresh(String sceneId, String date) { Call<List<ProblemlistVo>> getProblemByScene = this.application.getRetrofit().create(ProblemListService.class).getProblemByScene(sceneId, date); getProblemByScene.enqueue(new Callback<List<ProblemlistVo>>() { @@ -304,14 +324,11 @@ } } } //</editor-fold> //<editor-fold desc="ç¨æ·æäº¤æ´æ¹å¾ç宿åï¼å¨å å䏿´æ°æ°æ®"> public void updateData() { Date now = new Date(); String date = DateFormatter.dateTimeFormat3.format(now); refresh(application.getCurrentUser().getDguid(), date);//对äºå®¢æ·æ¥è¯´ï¼D_GUIDå°±æ¯åºæ¯id } //</editor-fold> } app/src/main/java/cn/flightfeather/thirdapp/module/inspectioninfo/ProblemChangeFragment.java
@@ -47,7 +47,6 @@ * æ¬fragmentæä¸¤ç§é®é¢ç¶æï¼å·²æ´æ¹{@link Constant#UNCHANGED}åæªæ´æ¹{@link Constant#CHANGED} */ public class ProblemChangeFragment extends Fragment { //<editor-fold desc="å ¨å±åé"> public static final String ARG_PARAM1 = "problems"; public static final String ARG_PARAM2 = "fragmentType"; public static final int REQUEST_CODE_SUBMIT = 11; @@ -57,9 +56,7 @@ private String fragmentType; private MediafileDao mediafileDao; private Unbinder unbinder; //</editor-fold> //<editor-fold desc="constructor"> public ProblemChangeFragment() { // Required empty public constructor } @@ -72,9 +69,7 @@ fragment.setArguments(args); return fragment; } //</editor-fold> //<editor-fold desc="lifecycle"> @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -124,16 +119,14 @@ unbinder.unbind(); } } //</editor-fold> //<editor-fold desc="åå§åæ°æ®åº"> //åå§åæ°æ®åº private void initDataBase() { DaoSession daoSession = application.getDaoSession(); mediafileDao = daoSession.getMediafileDao(); } //</editor-fold> //<editor-fold desc="initView"> //initView @BindView(R.id.rv_content) RecyclerView rv_rank_content; @BindView(R.id.image_problem_complete) ImageView image_problem_complete; AllRecyclerViewAdapter<ProblemlistVo> adapter; @@ -352,9 +345,8 @@ } } //</editor-fold> //<editor-fold desc="ç¹å»äºä»¶"> //ç¹å»äºä»¶ class OnProblemDetailClickListener implements View.OnClickListener { private ProblemlistVo problemlistVo; @@ -391,9 +383,8 @@ startActivityForResult(intent, REQUEST_CODE_SUBMIT, optionsCompat.toBundle()); } } //</editor-fold> //<editor-fold desc="æ´æ°å表"> //æ´æ°å表 public void notifyDataSetChanged() { // this.problemlistVos.clear(); // this.problemlistVos.addAll(p); @@ -404,5 +395,4 @@ } adapter.notifyDataSetChanged(); } //</editor-fold> } app/src/main/java/cn/flightfeather/thirdapp/module/task/NewSubTaskActivity.kt
@@ -252,7 +252,7 @@ text = realName.toString().replace(Constant.CONNECTOR, Constant.CONNECTOR_FOR_VIEW) } viewModel.subTaskExecutor.apply { this.executorGuids = ids.toString() this.executorGuids = id.toString() this.executorUserNames = userName.toString() this.executorRealNames = realName.toString() } app/src/main/java/cn/flightfeather/thirdapp/module/task/TaskFragment.java
ÎļþÃû´Ó app/src/main/java/cn/flightfeather/thirdapp/fragment/TaskFragment.java ÐÞ¸Ä @@ -1,4 +1,4 @@ package cn.flightfeather.thirdapp.fragment; package cn.flightfeather.thirdapp.module.task; import android.app.AlertDialog; import android.content.DialogInterface; @@ -35,14 +35,11 @@ import cn.flightfeather.thirdapp.adapter.TaskListAdapter; import cn.flightfeather.thirdapp.bean.entity.Scense; import cn.flightfeather.thirdapp.bean.entity.Subtask; import cn.flightfeather.thirdapp.bean.vo.TaskPack; import cn.flightfeather.thirdapp.bean.entity.Userinfo; import cn.flightfeather.thirdapp.bean.vo.TaskPack; import cn.flightfeather.thirdapp.bean.vo.TaskVo; import cn.flightfeather.thirdapp.httpservice.SubTaskService; import cn.flightfeather.thirdapp.httpservice.TaskService; import cn.flightfeather.thirdapp.module.task.MonthTaskManagementActivity; import cn.flightfeather.thirdapp.module.task.NewSubTaskActivity; import cn.flightfeather.thirdapp.module.task.SceneDetailActivity; import cn.flightfeather.thirdapp.util.CommonUtils; import cn.flightfeather.thirdapp.util.Constant; import cn.flightfeather.thirdapp.util.DateFormatter; @@ -56,12 +53,12 @@ import retrofit2.Retrofit; /** * A simple {@link Fragment} subclass. * */ public class TaskFragment extends Fragment implements RecyclerItemClickListener.OnItemClickListener , View.OnClickListener { private int taskKindChoice; private int taskKindChoice = 1; private CommonApplication application; private Retrofit mRetrofit; private boolean requestAgain; @@ -315,7 +312,6 @@ } /** * 2018.11.05 by riku * æ´æ¢æ°æ ·å¼çå¼¹åºæ¡ï¼åè½æªä¿®æ¹ * æ¾ç¤ºæ°å¢ä»»å¡ç±»åï¼é¡¶å±ä»»å¡ãåä»»å¡ */ app/src/main/java/cn/flightfeather/thirdapp/repository/TaskRepository.kt
@@ -62,12 +62,12 @@ val resultList = ArrayList<Scense>() val tempList = sceneDao.getSceneByArea(taskVo.provincecode, taskVo.citycode, taskVo.districtcode) movList.forEach {m -> tempList.forEach s@ {s -> for (s in tempList) { if (s.guid == m.sguid) { s.monitorNum = m.monitornum s.inspectedNum = m.extension1?.toInt() ?: 0 resultList.add(s) return@s break } } } app/src/main/java/cn/flightfeather/thirdapp/repository/UserInfoRepository.kt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,39 @@ package cn.flightfeather.thirdapp.repository import cn.flightfeather.thirdapp.bean.entity.Userinfo import cn.flightfeather.thirdapp.common.net.ResponseBodyCallBack import cn.flightfeather.thirdapp.common.net.ResultCallBack import cn.flightfeather.thirdapp.common.net.RetrofitFactory import cn.flightfeather.thirdapp.httpservice.UserInfoService /** * @author riku * Date: 2021/7/21 */ class UserInfoRepository private constructor(){ companion object { @JvmStatic val instance: UserInfoRepository by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { UserInfoRepository()} } private val retrofit = RetrofitFactory.instance.retrofit /** * èªå¨å建çç®¡åºæ¯è´¦æ· * @param sceneId åºæ¯id */ fun createAccount(sceneId: String, resultCallBack: ResultCallBack<Userinfo>) { retrofit.create(UserInfoService::class.java).createAccount(sceneId) .enqueue(ResponseBodyCallBack(resultCallBack)) } /** * è·ååºæ¯å¯¹åºçè´¦æ·ä¿¡æ¯ * @param sceneId åºæ¯id */ fun getByScene(sceneId: String, resultCallBack: ResultCallBack<Userinfo?>) { retrofit.create(UserInfoService::class.java).getByScene(sceneId) .enqueue(ResponseBodyCallBack(resultCallBack)) } } app/src/main/java/cn/flightfeather/thirdapp/task/InitDataTask.java
@@ -36,7 +36,6 @@ import cn.flightfeather.thirdapp.bean.entity.Problemtype; import cn.flightfeather.thirdapp.bean.entity.Province; import cn.flightfeather.thirdapp.bean.entity.Scense; import cn.flightfeather.thirdapp.bean.entity.Site; import cn.flightfeather.thirdapp.bean.entity.Town; import cn.flightfeather.thirdapp.httpservice.InitDataService; import retrofit2.Call; @@ -89,7 +88,7 @@ initDataService = retrofit.create(InitDataService.class); daoSession = application.getDaoSession(); scenseDao = daoSession.getScenseDao(); siteDao = daoSession.getSiteDao(); // siteDao = daoSession.getSiteDao(); domaincatalogDao = daoSession.getDomaincatalogDao(); domainitemDao = daoSession.getDomainitemDao(); evaluationruleDao = daoSession.getEvaluationruleDao(); @@ -125,7 +124,7 @@ scenseDao.insertInTx(scenseList); System.out.println("Scense:Success"); if (firstLoad){ loadSite(); loadDoainCatalog(); } }else if (response.errorBody()!=null){ if (!requestAgain){ @@ -148,46 +147,6 @@ handler.sendEmptyMessage(SplashActivity.SHOW_ERROR); } System.out.println("Scense:"+t.toString()); } }); } //å è½½å ¨é¨å·¥å°è¯¦æ private void loadSite(){ Call<List<Site>> loadAllSite = initDataService.loadAllSite(); loadAllSite.enqueue(new Callback<List<Site>>() { @Override public void onResponse(Call<List<Site>> call, Response<List<Site>> response) { if (response.body()!=null){ requestAgain = false; List<Site> siteList = response.body(); siteDao.deleteAll(); siteDao.insertInTx(siteList); System.out.println("Site:Success"); if (firstLoad){ loadDoainCatalog(); } }else if (response.errorBody()!=null){ if (!requestAgain){ requestAgain = true; loadSite(); }else { handler.sendEmptyMessage(SplashActivity.SHOW_ERROR); Toast.makeText(application, "è·åå·¥å°è¯¦æ æ°æ®å¤±è´¥", Toast.LENGTH_SHORT).show(); } System.out.println("Site:"+response.errorBody().toString()); } } @Override public void onFailure(Call<List<Site>> call, Throwable t) { if (!requestAgain){ requestAgain = true; loadSite(); }else { showNetErrorToast(); handler.sendEmptyMessage(SplashActivity.SHOW_ERROR); } System.out.println("Site:"+t.toString()); } }); } app/src/main/java/cn/flightfeather/thirdapp/util/CommonUtils.java
@@ -426,8 +426,27 @@ return R.drawable.selector_button_problem_sewage; case "8": return R.drawable.selector_button_problem_attitude; case "9": default: return R.drawable.selector_button_problem_others; } } else if (sceneType.equals(Constant.SCENE_TYPE14)) { switch (type) { case "1": return R.drawable.selector_button_problem_road; case "2": return R.drawable.selector_button_problem_vehicle; case "3": return R.drawable.selector_button_problem_bulk_material; case "4": return R.drawable.selector_button_problem_protect; case "5": return R.drawable.selector_button_problem_dust_equipment; case "6": return R.drawable.selector_button_problem_dedusting; case "7": return R.drawable.selector_button_problem_sewage; case "8": return R.drawable.selector_button_problem_attitude; default: return R.drawable.selector_button_problem_others; } app/src/main/java/cn/flightfeather/thirdapp/util/Constant.java
@@ -118,6 +118,7 @@ String SCENE_TYPE11 = "11";//æ²³æµæé¢ String SCENE_TYPE12 = "12";//å·¥ä¸ååº String SCENE_TYPE13 = "13";//æ åºå®åºæ¯ String SCENE_TYPE14 = "14";//æ åºå®åºæ¯ String SCENE_TYPE99 = "99";//å ¶ä» //å±ç¤ºç±»å app/src/main/java/cn/flightfeather/thirdapp/util/GlobalConfig.kt
@@ -8,14 +8,9 @@ var userId: String by MyPreference("userId", "default_customer") companion object { @get:Synchronized var instance: GlobalConfig? = null get() { if (field == null) { field = GlobalConfig() } return field } private set @JvmStatic val instance: GlobalConfig by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { GlobalConfig()} const val DEFAULT_USER = "default_customer" } } app/src/main/java/cn/flightfeather/thirdapp/util/updateApp/UpdateAppUtil.java
@@ -87,8 +87,8 @@ .getPackageInfo(application.getPackageName(), 0); localVersion = packageInfo.versionCode; localVersionName = packageInfo.versionName; GlobalConfig.Companion.getInstance().setVersionCode(localVersion); GlobalConfig.Companion.getInstance().setVersionName(localVersionName); GlobalConfig.getInstance().setVersionCode(localVersion); GlobalConfig.getInstance().setVersionName(localVersionName); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } app/src/main/res/drawable/ic_baseline_arrow_downward_24.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,9 @@ <vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="24dp" android:height="24dp" android:viewportWidth="24" android:viewportHeight="24"> <path android:fillColor="#000000" android:pathData="M20,12l-1.41,-1.41L13,16.17V4h-2v12.17l-5.58,-5.59L4,12l8,8 8,-8z" /> </vector> app/src/main/res/layout/dialog_scene_account.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,140 @@ <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.CardView android:id="@+id/cv_dialog_problem_list_main" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginTop="30dp" android:layout_marginLeft="12dp" android:layout_marginRight="12dp" android:layout_marginBottom="40dp" app:cardCornerRadius="6dp" app:cardElevation="7dp"> <android.support.constraint.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent" android:padding="@dimen/dimen16" android:orientation="vertical"> <TextView android:id="@+id/tv_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="@dimen/textSize_18" android:textColor="@color/primary_text" android:text="ä¼ä¸è´¦æ·" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"/> <android.support.constraint.Group android:id="@+id/group_s_info" android:visibility="visible" android:layout_width="wrap_content" android:layout_height="wrap_content" app:constraint_referenced_ids="tv_s_account, tv_s_account_c"/> <ProgressBar android:id="@+id/view_waiting" android:layout_width="@dimen/fab_margin" android:layout_height="@dimen/fab_margin" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" /> <TextView android:id="@+id/tv_s_name_c" android:layout_width="wrap_content" android:layout_height="wrap_content" tools:text="åºæ¯åç§°åºæ¯åç§°åºæ¯åç§°åºæ¯åç§°åºæ¯åç§°" android:textColor="@color/main_color_2" android:textSize="@dimen/textSize_16" android:paddingTop="@dimen/dimen4" android:paddingBottom="@dimen/dimen4" android:layout_marginTop="@dimen/dimen16" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/tv_title"/> <TextView android:id="@+id/tv_s_account" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="è´¦æ·" android:layout_marginTop="60dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/tv_s_name_c"/> <TextView android:id="@+id/tv_s_account_c" android:layout_width="wrap_content" android:layout_height="wrap_content" tools:text="CJZH" android:textColor="@color/main_color_1" android:textSize="34dp" android:paddingTop="@dimen/dimen4" android:paddingBottom="@dimen/dimen4" android:paddingStart="@dimen/dimen16" android:paddingEnd="@dimen/dimen16" android:background="@drawable/shape_green" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/tv_s_account" tools:ignore="SpUsage" /> <android.support.constraint.Group android:id="@+id/group_no_data" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" app:constraint_referenced_ids="tv_no_data, tv_create_account"/> <TextView android:id="@+id/tv_no_data" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="该çç®¡åºæ¯ææ è´¦æ·ï¼ç¹å»èªå¨å建账æ·" android:drawableBottom="@drawable/ic_baseline_arrow_downward_24" android:layout_marginTop="@dimen/dimen16" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/tv_s_name_c" app:layout_constraintBottom_toTopOf="@id/tv_create_account" app:layout_constraintVertical_chainStyle="packed" app:layout_constraintVertical_bias="0.2"/> <TextView android:id="@+id/tv_create_account" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="è·åè´¦æ·" style="@style/TextButtonStyle.DialogPositive" android:elevation="@dimen/dimen4" android:layout_marginTop="@dimen/dimen16" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/tv_no_data" app:layout_constraintBottom_toBottomOf="parent" tools:ignore="UnusedAttribute" /> </android.support.constraint.ConstraintLayout> </android.support.v7.widget.CardView> <android.support.design.widget.FloatingActionButton android:src="@drawable/icon_close_white" android:id="@+id/fab_close" android:layout_width="wrap_content" android:layout_height="wrap_content" app:fabSize="normal" app:elevation="8dp" app:layout_anchor="@id/cv_dialog_problem_list_main" app:layout_anchorGravity="bottom|center" android:contentDescription="@string/cancel" /> </android.support.design.widget.CoordinatorLayout> app/src/main/res/layout/fragment_inspection_content.xml
@@ -1,5 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="match_parent" android:id="@+id/rl_content" @@ -14,6 +15,24 @@ android:layout_alignParentStart="true"> </com.amap.api.maps.MapView> <TextView android:id="@+id/user_account" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" android:layout_alignParentBottom="true" android:text="ç¨æ·è´¦å·" android:elevation="@dimen/dimen4" android:layout_marginBottom="188dp" android:padding="@dimen/dimen4" android:gravity="center" android:textColor="@color/white" android:background="@drawable/shape_green" android:foreground="?android:attr/selectableItemBackground" android:drawableStart="@drawable/ic_group_black_24dp" android:drawableTint="@color/white" tools:ignore="UnusedAttribute" /> <LinearLayout android:visibility="visible" android:id="@+id/ll_patrol_icons" app/src/main/res/layout/fragment_task.xml
@@ -5,7 +5,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/taskBG" tools:context="cn.flightfeather.thirdapp.fragment.TaskFragment"> tools:context="cn.flightfeather.thirdapp.module.task.TaskFragment"> <FrameLayout android:layout_width="match_parent" build.gradle
@@ -15,6 +15,7 @@ jcenter() mavenCentral() google() maven { url 'http://maven.aliyun.com/nexus/content/repositories/releases/' } } dependencies { classpath 'com.android.tools.build:gradle:3.5.2' @@ -24,6 +25,9 @@ // in the individual module build.gradle files classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.jakewharton:butterknife-gradle-plugin:9.0.0' // æ·»å emas-servicesæä»¶ classpath 'com.aliyun.ams:emas-services:1.0.1' } } @@ -35,6 +39,7 @@ maven { url "https://jitpack.io" } jcenter() google() maven { url 'http://maven.aliyun.com/nexus/content/repositories/releases/' } } // configurations.all {