| | |
| | | childMenu.put("name", tMenu.getString("menuName")); |
| | | childMenu.put("href", tMenu.getString("url")); |
| | | childMenu.put("seq", tMenu.getString("menuSeq")); |
| | | childMenu.put("seq", tMenu.getString("isShow")); |
| | | childMenu.put("isShow", tMenu.getString("isShow")); |
| | | childs.add(childMenu); |
| | | } |
| | | return new ResponseEntity<String>(tempMenus.toJSONString(), HttpStatus.OK); |
| | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.java110.api.listener.AbstractServiceApiListener; |
| | | import com.java110.common.constant.CommonConstant; |
| | | import com.java110.common.constant.ResponseConstant; |
| | | import com.java110.common.constant.ServiceCodeServiceConstant; |
| | | import com.java110.common.exception.ListenerExecuteException; |
| | | import com.java110.common.util.Assert; |
| | | import com.java110.common.util.BeanConvertUtil; |
| | | import com.java110.common.util.StringUtil; |
| | | import com.java110.core.annotation.Java110Listener; |
| | | import com.java110.core.context.DataFlowContext; |
| | | import com.java110.core.factory.GenerateCodeFactory; |
| | |
| | | |
| | | JSONArray infos = reqJson.getJSONArray("data"); |
| | | |
| | | if(infos == null || infos.size() !=2){ |
| | | throw new IllegalArgumentException("请求参数错误,为包含 应用或服务信息"); |
| | | Assert.hasKeyByFlowData(infos, "addRouteView", "orderTypeCd", "必填,请填写订单类型"); |
| | | Assert.hasKeyByFlowData(infos, "addRouteView", "invokeLimitTimes", "必填,请填写调用次数"); |
| | | Assert.hasKeyByFlowData(infos, "addRouteView", "invokeModel", "可填,请填写消息队列,订单在异步调用时使用"); |
| | | |
| | | if(infos == null || infos.size() !=3){ |
| | | throw new IllegalArgumentException("请求参数错误,为包含 应用,服务或扩展信息"); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | JSONArray infos = reqJson.getJSONArray("data"); |
| | | |
| | | JSONObject appInfo = null; //应用信息 |
| | | JSONObject serviceInfo = null; // 服务信息 |
| | | JSONObject viewAppInfo = getObj(infos, "App"); |
| | | JSONObject viewServiceInfo = getObj(infos, "Service"); |
| | | JSONObject addRouteView = getObj(infos, "addRouteView"); |
| | | |
| | | for(int infoIndex = 0 ; infoIndex < infos.size(); infoIndex ++){ |
| | | |
| | | Assert.hasKeyAndValue(infos.getJSONObject(infoIndex), "flowComponent", "未包含服务流程组件名称"); |
| | | |
| | | if("App".equals(infos.getJSONObject(infoIndex).getString("flowComponent"))){ |
| | | appInfo = infos.getJSONObject(infoIndex); |
| | | } |
| | | if("Service".equals(infos.getJSONObject(infoIndex).getString("flowComponent"))){ |
| | | serviceInfo = infos.getJSONObject(infoIndex); |
| | | } |
| | | } |
| | | |
| | | Assert.notNull(appInfo, "未包含应用信息"); |
| | | Assert.notNull(serviceInfo, "未包含服务信息"); |
| | | Assert.notNull(viewAppInfo, "未包含应用信息"); |
| | | Assert.notNull(viewServiceInfo, "未包含服务信息"); |
| | | Assert.notNull(addRouteView, "未包含扩展信息"); |
| | | |
| | | |
| | | //处理 应用信息 |
| | | if(!appInfo.containsKey("appId") |
| | | || StringUtils.isEmpty(appInfo.getString("appId")) |
| | | || appInfo.getString("appId").startsWith("-")){ |
| | | appInfo.put("appId", saveAppInfo(reqJson, appInfo)); |
| | | if(!hasKey(viewAppInfo, "appId")){ |
| | | viewAppInfo.put("appId", saveAppInfo(reqJson, viewAppInfo)); |
| | | } |
| | | |
| | | //处理 服务信息 |
| | | if(!serviceInfo.containsKey("serviceId") |
| | | || StringUtils.isEmpty(serviceInfo.getString("serviceId")) |
| | | || serviceInfo.getString("serviceId").startsWith("-")){ |
| | | serviceInfo.put("serviceId", saveServiceInfo(reqJson, serviceInfo)); |
| | | if(!hasKey(viewServiceInfo, "serviceId")){ |
| | | viewServiceInfo.put("serviceId", saveServiceInfo(reqJson, viewServiceInfo)); |
| | | } |
| | | |
| | | //处理路由信息 |
| | | |
| | | RouteDto routeDto = new RouteDto(); |
| | | routeDto.setAppId(appInfo.getString("appId")); |
| | | routeDto.setServiceId(serviceInfo.getString("serviceId")); |
| | | routeDto.setInvokeLimitTimes("1000"); |
| | | routeDto.setInvokeModel("S"); |
| | | routeDto.setOrderTypeCd("Q"); |
| | | RouteDto routeDto = BeanConvertUtil.covertBean(addRouteView, RouteDto.class); |
| | | routeDto.setAppId(viewAppInfo.getString("appId")); |
| | | routeDto.setServiceId(viewServiceInfo.getString("serviceId")); |
| | | |
| | | int count = routeInnerServiceSMOImpl.saveRoute(routeDto); |
| | | |
| | |
| | | return serviceDto.getServiceId(); |
| | | } |
| | | |
| | | private JSONObject getObj(JSONArray infos , String flowComponent){ |
| | | |
| | | JSONObject serviceInfo = null; |
| | | |
| | | for(int infoIndex = 0 ; infoIndex < infos.size(); infoIndex ++){ |
| | | |
| | | Assert.hasKeyAndValue(infos.getJSONObject(infoIndex), "flowComponent", "未包含服务流程组件名称"); |
| | | |
| | | if(flowComponent.equals(infos.getJSONObject(infoIndex).getString("flowComponent"))){ |
| | | serviceInfo = infos.getJSONObject(infoIndex); |
| | | Assert.notNull(serviceInfo, "未包含服务信息"); |
| | | return serviceInfo; |
| | | } |
| | | } |
| | | |
| | | throw new IllegalArgumentException("未找到组件编码为【" + flowComponent + "】数据"); |
| | | } |
| | | |
| | | private boolean hasKey(JSONObject info, String key){ |
| | | if(!info.containsKey(key) |
| | | || StringUtil.isEmpty(info.getString(key)) |
| | | || info.getString(key).startsWith("-")){ |
| | | return false; |
| | | } |
| | | return true; |
| | | |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public String getServiceCode() { |
| | | return ServiceCodeServiceConstant.BINDING_SERVICE; |
| New file |
| | |
| | | <div class="row"> |
| | | <div class="col-lg-12"> |
| | | <div class="ibox"> |
| | | <div class="ibox-title"> |
| | | <h5>服务绑定</h5> |
| | | <div class="ibox-tools" style="top:10px;"> |
| | | |
| | | </div> |
| | | </div> |
| | | <div class="ibox-content"> |
| | | |
| | | <div class="form-group row"> |
| | | <label class="col-sm-2 col-form-label">订单类型</label> |
| | | <div class="col-sm-10"> |
| | | <select class="custom-select" v-model="addRouteViewInfo.orderTypeCd"> |
| | | <option selected disabled value="">必填,请选择订单类型</option> |
| | | <option value="Q">查询</option> |
| | | <option value="D">业务受理</option> |
| | | </select> </div> |
| | | </div> |
| | | <div class="form-group row"> |
| | | <label class="col-sm-2 col-form-label">调用次数</label> |
| | | <div class="col-sm-10"> |
| | | <input v-model="addRouteViewInfo.invokeLimitTimes" type="text" placeholder="必填,请填写调用次数" class="form-control"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group row"> |
| | | <label class="col-sm-2 col-form-label">调用方式</label> |
| | | <div class="col-sm-10"> |
| | | <select class="custom-select" v-model="addRouteViewInfo.invokeModel"> |
| | | <option selected disabled value="">必填,请选择调用方式</option> |
| | | <option value="S">同步方式</option> |
| | | <option value="A">异步方式</option> |
| | | </select> </div> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| New file |
| | |
| | | (function(vc){ |
| | | |
| | | vc.extends({ |
| | | propTypes: { |
| | | callBackListener:vc.propTypes.string, //父组件名称 |
| | | callBackFunction:vc.propTypes.string //父组件监听方法 |
| | | }, |
| | | data:{ |
| | | addRouteViewInfo:{ |
| | | flowComponent:'addRouteView', |
| | | orderTypeCd:'', |
| | | invokeLimitTimes:'1000', |
| | | invokeModel:'', |
| | | |
| | | } |
| | | }, |
| | | watch:{ |
| | | addRouteViewInfo:{ |
| | | deep: true, |
| | | handler:function(){ |
| | | vc.component.saveAddRouteInfo(); |
| | | } |
| | | } |
| | | }, |
| | | _initMethod:function(){ |
| | | |
| | | }, |
| | | _initEvent:function(){ |
| | | |
| | | vc.on('addRouteViewInfo', 'onIndex', function(_index){ |
| | | vc.component.addRouteViewInfo.index = _index; |
| | | }); |
| | | }, |
| | | methods:{ |
| | | addRouteValidate(){ |
| | | return vc.validate.validate({ |
| | | addRouteViewInfo:vc.component.addRouteViewInfo |
| | | },{ |
| | | 'addRouteViewInfo.orderTypeCd':[ |
| | | { |
| | | limit:"required", |
| | | param:"", |
| | | errInfo:"订单类型不能为空" |
| | | }, |
| | | { |
| | | limit:"maxin", |
| | | param:"1,4", |
| | | errInfo:"订单类型错误" |
| | | }, |
| | | ], |
| | | 'addRouteViewInfo.invokeLimitTimes':[ |
| | | { |
| | | limit:"required", |
| | | param:"", |
| | | errInfo:"调用次数不能为空" |
| | | }, |
| | | { |
| | | limit:"num", |
| | | param:"", |
| | | errInfo:"调用次数错误" |
| | | }, |
| | | ], |
| | | 'addRouteViewInfo.invokeModel':[ |
| | | { |
| | | limit:"required", |
| | | param:"", |
| | | errInfo:"调用方式不能为空" |
| | | }, |
| | | { |
| | | limit:"maxLength", |
| | | param:"50", |
| | | errInfo:"消息队列不能超过50" |
| | | }, |
| | | ], |
| | | |
| | | }); |
| | | }, |
| | | saveAddRouteInfo:function(){ |
| | | if(vc.component.addRouteValidate()){ |
| | | //侦听回传 |
| | | vc.emit($props.callBackListener,$props.callBackFunction, vc.component.addRouteViewInfo); |
| | | return ; |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | |
| | | })(window.vc); |
| | |
| | | </div> |
| | | |
| | | <!-- 选择 应用信息 --> |
| | | <div v-if="serviceBindingInfo.index == 0 || serviceBindingInfo.index == 2"> |
| | | <div v-if="serviceBindingInfo.index == 0"> |
| | | <vc:create name="viewAppInfo" |
| | | callBackListener="serviceBinding" |
| | | callBackFunction="notify" |
| | | ></vc:create> |
| | | </div> |
| | | |
| | | <!-- 选择 应用信息 --> |
| | | <div v-if="serviceBindingInfo.index == 1 || serviceBindingInfo.index == 2"> |
| | | <div v-if="serviceBindingInfo.index == 1"> |
| | | <vc:create name="viewServiceInfo" |
| | | callBackListener="serviceBinding" |
| | | callBackFunction="notify" |
| | | ></vc:create> |
| | | </div> |
| | | <div v-if="serviceBindingInfo.index == 2"> |
| | | <vc:create name="addRouteView" |
| | | callBackListener="serviceBinding" |
| | | callBackFunction="notify" |
| | | ></vc:create> |
| | | </div> |
| | | |
| | | |
| | | |
| | |
| | | 入驻小区 |
| | | **/ |
| | | (function(vc){ |
| | | var DEFAULT_PAGE = 1; |
| | | var DEFAULT_ROWS = 10; |
| | | vc.extends({ |
| | | data:{ |
| | | serviceBindingInfo:{ |
| | |
| | | vc.component.serviceBindingInfo.$step.step({ |
| | | index: 0, |
| | | time: 500, |
| | | title: ["选择应用", "选择服务", "确认绑定"] |
| | | title: ["选择应用","选择服务","扩展信息"] |
| | | }); |
| | | vc.component.serviceBindingInfo.index = vc.component.serviceBindingInfo.$step.getIndex(); |
| | | }, |
| | |
| | | vc.component.serviceBindingInfo.$step.prevStep(); |
| | | vc.component.serviceBindingInfo.index = vc.component.serviceBindingInfo.$step.getIndex(); |
| | | |
| | | vc.emit('viewAppInfo', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | vc.emit('viewServiceInfo', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | vc.emit('viewAppInfo', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | vc.emit('viewServiceInfo', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | vc.emit('addRouteView', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | |
| | | }, |
| | | _nextStep:function(){ |
| | | var _currentData = vc.component.serviceBindingInfo.infos[vc.component.serviceBindingInfo.index]; |
| | | if( _currentData == null || _currentData == undefined){ |
| | | vc.message("请选择相关信息"); |
| | | vc.message("请选择或填写必选信息"); |
| | | return ; |
| | | } |
| | | vc.component.serviceBindingInfo.$step.nextStep(); |
| | | vc.component.serviceBindingInfo.index = vc.component.serviceBindingInfo.$step.getIndex(); |
| | | |
| | | vc.emit('viewAppInfo', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | vc.emit('viewServiceInfo', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | vc.emit('viewAppInfo', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | vc.emit('viewServiceInfo', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | vc.emit('addRouteView', 'onIndex', vc.component.serviceBindingInfo.index); |
| | | |
| | | }, |
| | | _finishStep:function(){ |
| | | |
| | | |
| | | var _currentData = vc.component.serviceBindingInfo.infos[vc.component.serviceBindingInfo.index]; |
| | | if( _currentData == null || _currentData == undefined){ |
| | | vc.message("请选择或填写必选信息"); |
| | | return ; |
| | | } |
| | | |
| | | var param = { |
| | | data:vc.component.serviceBindingInfo.infos |
| | | } |
| | | |
| | | vc.http.post( |
| | | 'serviceBinding', |
| | | 'serviceBindingBinding', |
| | | 'binding', |
| | | JSON.stringify(param), |
| | | { |
| | |
| | | }, |
| | | function(json,res){ |
| | | if(res.status == 200){ |
| | | |
| | | vc.message('处理成功',true); |
| | | var _jInfo = JSON.parse(json); |
| | | //关闭model |
| | | vc.jumpToPage("/flow/serviceFlow?" + vc.objToGetParam(_jInfo)); |
| | | vc.jumpToPage("/flow/serviceRegisterFlow?" + vc.objToGetParam(JSON.parse(json))); |
| | | return ; |
| | | } |
| | | vc.message(json); |
| | |
| | | } |
| | | } |
| | | }); |
| | | })(window.vc); |
| | | })(window.vc); |
| | |
| | | { |
| | | "templateName":"添加房屋", |
| | | "templateCode":"addRoomBinding", |
| | | "templateKey":"roomId", |
| | | "templateKeyName":"房屋ID", |
| | | "package": "roomPackage", |
| | | "successUrl": "/", |
| | | "templateName":"服务绑定", |
| | | "templateCode":"serviceBinding", |
| | | "templateKey":"id", |
| | | "templateKeyName":"绑定ID", |
| | | "package": "servicePackage", |
| | | "successUrl": "/flow/serviceRegisterFlow", |
| | | "needAffirm": false, |
| | | "flows":[ |
| | | { |
| | | "index": 0, |
| | | "code":"floor", |
| | | "flowKey": "floorId", |
| | | "cnCode":"选择楼", |
| | | "vcName":"viewFloorInfo", |
| | | "businessName": "businessFloor", |
| | | "businessType": "BUSINESS_TYPE_SAVE_FLOOR_INFO", |
| | | "code":"app", |
| | | "flowKey": "appId", |
| | | "cnCode":"选择应用", |
| | | "vcName":"viewAppInfo", |
| | | "businessName": "businessApp", |
| | | "businessType": "BUSINESS_TYPE_SAVE_APP_INFO", |
| | | "existsComponent": true |
| | | }, |
| | | { |
| | | "index": 1, |
| | | "code":"unit", |
| | | "flowKey": "unitId", |
| | | "cnCode":"选择单元", |
| | | "vcName":"viewUnitInfo", |
| | | "businessName": "businessUnit", |
| | | "businessType": "BUSINESS_TYPE_SAVE_UNIT_INFO", |
| | | "code":"service", |
| | | "flowKey": "serviceId", |
| | | "cnCode":"选择服务", |
| | | "vcName":"viewServiceInfo", |
| | | "businessName": "businessService", |
| | | "businessType": "BUSINESS_TYPE_SAVE_SERVICE_INFO", |
| | | "existsComponent": true |
| | | }, |
| | | { |
| | | "index": 2, |
| | | "code":"room", |
| | | "flowKey": "roomId", |
| | | "cnCode":"添加房屋", |
| | | "vcName":"addRoomView", |
| | | "businessName": "businessRoom", |
| | | "businessType": "BUSINESS_TYPE_SAVE_ROOM_INFO", |
| | | "code":"route", |
| | | "flowKey": "id", |
| | | "cnCode":"扩展信息", |
| | | "vcName":"addRouteView", |
| | | "businessName": "businessRoute", |
| | | "businessType": "BUSINESS_TYPE_SAVE_ROUTE_INFO", |
| | | "existsComponent": false |
| | | } |
| | | ], |
| | | "components": { |
| | | "addRoomView": { |
| | | "templateName":"添加房屋", |
| | | "templateCode":"addRoom", |
| | | "package": "roomPackage", |
| | | "addRouteView": { |
| | | "templateName":"扩展信息", |
| | | "templateCode":"addRoute", |
| | | "package": "servicePackage", |
| | | "columns":[ |
| | | { |
| | | "code":"roomNum", |
| | | "cnCode":"房屋编号", |
| | | "desc":"必填,请填写房屋编号", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"maxLength", |
| | | "limitParam":"12", |
| | | "limitErrInfo":"房屋编号长度不能超过12位" |
| | | }, |
| | | { |
| | | "code":"layer", |
| | | "cnCode":"房屋楼层", |
| | | "desc":"必填,请填写房屋楼层", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"num", |
| | | "limitParam":"", |
| | | "limitErrInfo":"房屋楼层高度必须为数字" |
| | | }, |
| | | { |
| | | "code":"section", |
| | | "cnCode":"房间数", |
| | | "desc":"必填,请填写房屋楼层", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"num", |
| | | "limitParam":"", |
| | | "limitErrInfo":"房间数必须为数字" |
| | | }, |
| | | { |
| | | "code":"apartment", |
| | | "cnCode":"房屋户型", |
| | | "desc":"必填,请选择房屋户型", |
| | | "code":"orderTypeCd", |
| | | "cnCode":"订单类型", |
| | | "desc":"必填,请填写订单类型", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"select", |
| | | "selectValue":"一室两厅,两室两厅", |
| | | "selectValueName":"1010,2020", |
| | | "limit":"maxLength", |
| | | "limitParam":"50", |
| | | "limitErrInfo":"房屋户型不能大于50" |
| | | "selectValue":"Q,D", |
| | | "selectValueName":"查询,业务受理", |
| | | "limit":"maxin", |
| | | "limitParam":"1,4", |
| | | "limitErrInfo":"订单类型错误", |
| | | "show": true |
| | | }, |
| | | { |
| | | "code":"builtUpArea", |
| | | "cnCode":"建筑面积", |
| | | "desc":"必填,请填写房屋建筑面积", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"money", |
| | | "limitParam":"", |
| | | "limitErrInfo":"建筑面积错误,如 300.00" |
| | | }, |
| | | { |
| | | "code":"unitPrice", |
| | | "cnCode":"房屋单价", |
| | | "desc":"必填,请填写房屋每平米单价", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"money", |
| | | "limitParam":"", |
| | | "limitErrInfo":"房屋单价错误 如 300.00" |
| | | }, |
| | | { |
| | | "code":"state", |
| | | "cnCode":"房屋状态", |
| | | "desc":"必填,请选择房屋状态", |
| | | "code":"invokeLimitTimes", |
| | | "cnCode":"调用次数", |
| | | "desc":"必填,请填写调用次数", |
| | | "required":true, |
| | | "hasDefaultValue":true, |
| | | "defaultValue":"2002", |
| | | "inputType":"none", |
| | | "limit":"maxLength", |
| | | "limitParam":"12", |
| | | "limitErrInfo":"房屋状态 不能超过12位" |
| | | "defaultValue":"1000", |
| | | "inputType":"input", |
| | | "limit":"num", |
| | | "limitParam":"", |
| | | "limitErrInfo":"调用次数错误", |
| | | "show": false |
| | | }, |
| | | { |
| | | "code":"remark", |
| | | "cnCode":"备注", |
| | | "desc":"可填,请填写备注", |
| | | "required":false, |
| | | "code":"invokeModel", |
| | | "cnCode":"调用方式", |
| | | "desc":"可填,请填写消息队列,订单在异步调用时使用", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "defaultValue":"", |
| | | "inputType":"textarea", |
| | | "inputType":"select", |
| | | "selectValue":"S,A", |
| | | "selectValueName":"同步方式,异步方式", |
| | | "limit":"maxLength", |
| | | "limitParam":"200", |
| | | "limitErrInfo":"备注内容不能超过200" |
| | | "limitParam":"50", |
| | | "limitErrInfo":"消息队列不能超过50", |
| | | "show": false |
| | | } |
| | | ] |
| | | } |
| New file |
| | |
| | | { |
| | | "templateName":"添加房屋", |
| | | "templateCode":"addRoomBinding", |
| | | "templateKey":"roomId", |
| | | "templateKeyName":"房屋ID", |
| | | "package": "roomPackage", |
| | | "successUrl": "/", |
| | | "needAffirm": false, |
| | | "flows":[ |
| | | { |
| | | "index": 0, |
| | | "code":"floor", |
| | | "flowKey": "floorId", |
| | | "cnCode":"选择楼", |
| | | "vcName":"viewFloorInfo", |
| | | "businessName": "businessFloor", |
| | | "businessType": "BUSINESS_TYPE_SAVE_FLOOR_INFO", |
| | | "existsComponent": true |
| | | }, |
| | | { |
| | | "index": 1, |
| | | "code":"unit", |
| | | "flowKey": "unitId", |
| | | "cnCode":"选择单元", |
| | | "vcName":"viewUnitInfo", |
| | | "businessName": "businessUnit", |
| | | "businessType": "BUSINESS_TYPE_SAVE_UNIT_INFO", |
| | | "existsComponent": true |
| | | }, |
| | | { |
| | | "index": 2, |
| | | "code":"room", |
| | | "flowKey": "roomId", |
| | | "cnCode":"添加房屋", |
| | | "vcName":"addRoomView", |
| | | "businessName": "businessRoom", |
| | | "businessType": "BUSINESS_TYPE_SAVE_ROOM_INFO", |
| | | "existsComponent": false |
| | | } |
| | | ], |
| | | "components": { |
| | | "addRoomView": { |
| | | "templateName":"添加房屋", |
| | | "templateCode":"addRoom", |
| | | "package": "roomPackage", |
| | | "columns":[ |
| | | { |
| | | "code":"roomNum", |
| | | "cnCode":"房屋编号", |
| | | "desc":"必填,请填写房屋编号", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"maxLength", |
| | | "limitParam":"12", |
| | | "limitErrInfo":"房屋编号长度不能超过12位" |
| | | }, |
| | | { |
| | | "code":"layer", |
| | | "cnCode":"房屋楼层", |
| | | "desc":"必填,请填写房屋楼层", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"num", |
| | | "limitParam":"", |
| | | "limitErrInfo":"房屋楼层高度必须为数字" |
| | | }, |
| | | { |
| | | "code":"section", |
| | | "cnCode":"房间数", |
| | | "desc":"必填,请填写房屋楼层", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"num", |
| | | "limitParam":"", |
| | | "limitErrInfo":"房间数必须为数字" |
| | | }, |
| | | { |
| | | "code":"apartment", |
| | | "cnCode":"房屋户型", |
| | | "desc":"必填,请选择房屋户型", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"select", |
| | | "selectValue":"一室两厅,两室两厅", |
| | | "selectValueName":"1010,2020", |
| | | "limit":"maxLength", |
| | | "limitParam":"50", |
| | | "limitErrInfo":"房屋户型不能大于50" |
| | | }, |
| | | { |
| | | "code":"builtUpArea", |
| | | "cnCode":"建筑面积", |
| | | "desc":"必填,请填写房屋建筑面积", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"money", |
| | | "limitParam":"", |
| | | "limitErrInfo":"建筑面积错误,如 300.00" |
| | | }, |
| | | { |
| | | "code":"unitPrice", |
| | | "cnCode":"房屋单价", |
| | | "desc":"必填,请填写房屋每平米单价", |
| | | "required":true, |
| | | "hasDefaultValue":false, |
| | | "inputType":"input", |
| | | "limit":"money", |
| | | "limitParam":"", |
| | | "limitErrInfo":"房屋单价错误 如 300.00" |
| | | }, |
| | | { |
| | | "code":"state", |
| | | "cnCode":"房屋状态", |
| | | "desc":"必填,请选择房屋状态", |
| | | "required":true, |
| | | "hasDefaultValue":true, |
| | | "defaultValue":"2002", |
| | | "inputType":"none", |
| | | "limit":"maxLength", |
| | | "limitParam":"12", |
| | | "limitErrInfo":"房屋状态 不能超过12位" |
| | | }, |
| | | { |
| | | "code":"remark", |
| | | "cnCode":"备注", |
| | | "desc":"可填,请填写备注", |
| | | "required":false, |
| | | "hasDefaultValue":false, |
| | | "defaultValue":"", |
| | | "inputType":"textarea", |
| | | "limit":"maxLength", |
| | | "limitParam":"200", |
| | | "limitErrInfo":"备注内容不能超过200" |
| | | } |
| | | ] |
| | | } |
| | | } |
| | | } |