Prechádzať zdrojové kódy

JobList 的 Edit/Detail 的接口添加 is_YY 的判断,需要显示隐藏 RequestType 的布局

liukai 1 mesiac pred
rodič
commit
7d901b98d4

+ 22 - 16
packages/cpt_sg/lib/modules/job/job_list_edit/job_list_edit_page.dart

@@ -335,24 +335,30 @@ class JobListEditPage extends BaseStatelessPage<JobListEditController> {
                       ),
 
                       //Request Type
-                      MyTextView(
-                        "Request Type".tr,
-                        fontSize: 15,
-                        isFontRegular: true,
-                        textColor: Colors.white,
-                        marginTop: 15,
+                      Visibility(
+                        visible: state.editEntity?.isYY == true,
+                        child: MyTextView(
+                          "Request Type".tr,
+                          fontSize: 15,
+                          isFontRegular: true,
+                          textColor: Colors.white,
+                          marginTop: 15,
+                        ),
                       ),
 
                       //Request Type单选
-                      CustomRadioCheck(
-                        options: state.editEntity?.requestType.map((e) => e.txt!).toList() ?? [],
-                        onOptionSelected: (index, text) {
-                          state.selectRequestTypeId = state.editEntity!.requestType[index].value;
-                          controller.update(["position"]);
-                        },
-                        enable: state.isEditType && state.isOtherFormDisEnable,
-                        selectedPosition: state.editEntity == null ? -1 : state.editEntity!.requestType.indexWhere((e) => e.checked == "checked"),
-                      ).marginOnly(top: 10),
+                      Visibility(
+                        visible: state.editEntity?.isYY == true,
+                        child: CustomRadioCheck(
+                          options: state.editEntity?.requestType.map((e) => e.txt!).toList() ?? [],
+                          onOptionSelected: (index, text) {
+                            state.selectRequestTypeId = state.editEntity!.requestType[index].value;
+                            controller.update(["position"]);
+                          },
+                          enable: state.isEditType && state.isOtherFormDisEnable,
+                          selectedPosition: state.editEntity == null ? -1 : state.editEntity!.requestType.indexWhere((e) => e.checked == "checked"),
+                        ).marginOnly(top: 10),
+                      ),
 
                       //当 Request Type 选择 Regular 的时候,需要展示 Position 的下拉选
                       GetBuilder<JobListEditController>(
@@ -360,7 +366,7 @@ class JobListEditPage extends BaseStatelessPage<JobListEditController> {
                           init: controller,
                           builder: (controller) {
                             return Visibility(
-                              visible: state.selectRequestTypeId == "1",
+                              visible:  state.editEntity?.isYY == true && state.selectRequestTypeId == "1",
                               child: Container(
                                 padding: const EdgeInsets.only(left: 16, right: 10),
                                 margin: const EdgeInsets.only(top: 10),

+ 2 - 0
packages/cs_domain/lib/entity/response/job_list_edit_index_s_g_entity.dart

@@ -27,6 +27,8 @@ class JobListEditIndexSGEntity {
 	int needNum = 0;
 	String? remark = null;
 	String? disabled;
+	@JSONField(name: "is_yy")
+	bool? isYY;
 	@JSONField(name: "outlet_list")
 	List<JobListEditIndexOption> outletList = [];
 	@JSONField(name: "request_type")

+ 7 - 0
packages/cs_domain/lib/generated/json/job_list_edit_index_s_g_entity.g.dart

@@ -51,6 +51,10 @@ JobListEditIndexSGEntity $JobListEditIndexSGEntityFromJson(Map<String, dynamic>
   if (disabled != null) {
     jobListEditIndexSGEntity.disabled = disabled;
   }
+  final bool? isYY = jsonConvert.convert<bool>(json['is_yy']);
+  if (isYY != null) {
+    jobListEditIndexSGEntity.isYY = isYY;
+  }
   final List<JobListEditIndexOption>? outletList = (json['outlet_list'] as List<dynamic>?)?.map(
           (e) => jsonConvert.convert<JobListEditIndexOption>(e) as JobListEditIndexOption).toList();
   if (outletList != null) {
@@ -88,6 +92,7 @@ Map<String, dynamic> $JobListEditIndexSGEntityToJson(JobListEditIndexSGEntity en
   data['need_num'] = entity.needNum;
   data['remark'] = entity.remark;
   data['disabled'] = entity.disabled;
+  data['is_yy'] = entity.isYY;
   data['outlet_list'] = entity.outletList.map((v) => v.toJson()).toList();
   data['request_type'] = entity.requestType.map((v) => v.toJson()).toList();
   data['position_list'] = entity.positionList.map((v) => v.toJson()).toList();
@@ -109,6 +114,7 @@ extension JobListEditIndexSGEntityExtension on JobListEditIndexSGEntity {
     int? needNum,
     String? remark,
     String? disabled,
+    bool? isYY,
     List<JobListEditIndexOption>? outletList,
     List<JobListEditIndexOption>? requestType,
     List<JobListEditIndexOption>? positionList,
@@ -127,6 +133,7 @@ extension JobListEditIndexSGEntityExtension on JobListEditIndexSGEntity {
       ..needNum = needNum ?? this.needNum
       ..remark = remark ?? this.remark
       ..disabled = disabled ?? this.disabled
+      ..isYY = isYY ?? this.isYY
       ..outletList = outletList ?? this.outletList
       ..requestType = requestType ?? this.requestType
       ..positionList = positionList ?? this.positionList