liubp
2025-12-26 c08d1c10fbafd7f57eb51c51269a95c281383ae3
public/pages/property/costDetail/add/add.html
@@ -53,7 +53,16 @@
                <label for="committeeSealNo" style="margin-top: 8px;">否</label>
            </div>
            <label class="form-label" for="approveDept">签报部门</label>
            <input type="text" id="approveDept" class="form-input" placeholder="请输入" v-model="costDetailInfo.approvalDepartment" style="width: 120px;">
            <select id="approveDept" class="form-input" v-model="costDetailInfo.approvalDepartment" style="width: 120px;">
                <option value="">请选择</option>
                <option value="电梯部">电梯部</option>
                <option value="工程部">工程部</option>
                <option value="管理处">管理处</option>
                <option value="业委会">业委会</option>
                <option value="智能化">智能化</option>
                <option value="品质部">品质部</option>
                <option value="小区经理">小区经理</option>
            </select>
        </div>
        <!-- 分摊范围 + 维修类型 -->
@@ -78,13 +87,43 @@
            </div>
            <div class="radio-group" style="margin-left: 100px;" v-if="costDetailInfo.fundType === 'repair'">
                <label class="form-label" for="ownerScope">业主大会范围</label>
                <select id="ownerScope" class="form-select">
                    <option value="multi">多选</option>
                </select>
                <div class="multi-select-wrapper">
                    <div class="multi-select-input" @click="toggleOwnerScopeDropdown" :class="{ 'active': ownerScopeDropdownOpen }">
                        <div class="multi-select-tags">
                            <span v-for="(item, index) in (costDetailInfo.ownerScope || [])" :key="'tag-' + index" class="multi-select-tag">
                                {{ item }}
                                <span class="multi-select-tag-close" @click.stop="removeOwnerScopeItem(index)">×</span>
                            </span>
                            <span v-if="!costDetailInfo.ownerScope || costDetailInfo.ownerScope.length === 0" class="multi-select-placeholder">请选择</span>
                        </div>
                        <span class="multi-select-arrow">▼</span>
                    </div>
                    <div class="multi-select-dropdown" v-show="ownerScopeDropdownOpen">
                        <div class="multi-select-option" v-for="(option, index) in ownerScopeOptions" :key="'option-' + index" @click.stop="toggleOwnerScopeOption(option)">
                            <input type="checkbox" :checked="costDetailInfo.ownerScope && costDetailInfo.ownerScope.indexOf(option) !== -1" @click.stop="toggleOwnerScopeOption(option)">
                            <label>{{ option }}</label>
                        </div>
                    </div>
                </div>
                <label class="form-label" for="buildingScope">门牌幢范围</label>
                <select id="buildingScope" class="form-select">
                    <option value="multi">多选</option>
                </select>
                <div class="multi-select-wrapper">
                    <div class="multi-select-input" @click="toggleBuildingScopeDropdown" :class="{ 'active': buildingScopeDropdownOpen }">
                        <div class="multi-select-tags">
                            <span v-for="(item, index) in (costDetailInfo.buildingScope || [])" :key="'building-tag-' + index" class="multi-select-tag">
                                {{ item }}
                                <span class="multi-select-tag-close" @click.stop="removeBuildingScopeItem(index)">×</span>
                            </span>
                            <span v-if="!costDetailInfo.buildingScope || costDetailInfo.buildingScope.length === 0" class="multi-select-placeholder">请选择</span>
                        </div>
                        <span class="multi-select-arrow">▼</span>
                    </div>
                    <div class="multi-select-dropdown" v-show="buildingScopeDropdownOpen">
                        <div class="multi-select-option" v-for="(option, index) in buildingScopeOptions" :key="'building-option-' + index" @click.stop="toggleBuildingScopeOption(option)">
                            <input type="checkbox" :checked="costDetailInfo.buildingScope && costDetailInfo.buildingScope.indexOf(option) !== -1" @click.stop="toggleBuildingScopeOption(option)">
                            <label>{{ option }}</label>
                        </div>
                    </div>
                </div>
            </div>
        </div>